Detailed Description

The TopoSort class perform a topological sort on states of a given automaton. if s1 is before s2 in the sort then there is no path from s2 to s1. The algorithm can be found in https://en.wikipedia.org/wiki/Topological_sorting under depth-first search, which is considered as first invented by R. Tarjan in 1976.

Definition at line 262 of file cfl_bisimcta.cpp.

Classes

struct  State
 

Public Member Functions

 TopoSort (const Generator &rGen, const EventSet &rEvs)
 
bool Sort (std::list< Idx > &result)
 
bool Visit (State &rNode)
 

Private Attributes

const GeneratormGen
 
Idx nxidx
 
std::vector< StatemStates
 
std::list< IdxmResult
 

Constructor & Destructor Documentation

◆ TopoSort()

faudes::TopoSort::TopoSort ( const Generator rGen,
const EventSet rEvs 
)

Definition at line 374 of file cfl_bisimcta.cpp.

Member Function Documentation

◆ Sort()

bool faudes::TopoSort::Sort ( std::list< Idx > &  result)

Definition at line 394 of file cfl_bisimcta.cpp.

◆ Visit()

bool faudes::TopoSort::Visit ( State rNode)

Definition at line 405 of file cfl_bisimcta.cpp.

Member Data Documentation

◆ mGen

const Generator* faudes::TopoSort::mGen
private

Definition at line 277 of file cfl_bisimcta.cpp.

◆ mResult

std::list<Idx> faudes::TopoSort::mResult
private

Definition at line 280 of file cfl_bisimcta.cpp.

◆ mStates

std::vector<State> faudes::TopoSort::mStates
private

Definition at line 279 of file cfl_bisimcta.cpp.

◆ nxidx

Idx faudes::TopoSort::nxidx
private

Definition at line 278 of file cfl_bisimcta.cpp.


The documentation for this class was generated from the following file:

libFAUDES 2.32b --- 2024.03.01 --- c++ api documentaion by doxygen