mcrl2::process::detail::tarjan_scc_algorithm

Include file:

#include "mcrl2/process/process_variable_strongly_connected_components.h
class mcrl2::process::detail::tarjan_scc_algorithm

Public types

type mcrl2::process::detail::tarjan_scc_algorithm::component

typedef for std::vector< std::size_t >

type mcrl2::process::detail::tarjan_scc_algorithm::edge

typedef for std::pair< std::size_t, std::size_t >

Protected attributes

std::vector<edge> mcrl2::process::detail::tarjan_scc_algorithm::E
std::size_t mcrl2::process::detail::tarjan_scc_algorithm::N
std::vector<component> mcrl2::process::detail::tarjan_scc_algorithm::result
std::vector<vertex> mcrl2::process::detail::tarjan_scc_algorithm::V

Protected static member functions

static std::size_t undefined()

Protected member functions

std::size_t strongconnect(std::size_t v_index, component &S, std::size_t index)

Public member functions

const std::vector<component> &components() const
void run(const std::vector<edge> &E_, std::size_t N_)
tarjan_scc_algorithm()