mCRL2
Loading...
Searching...
No Matches
mcrl2::pbes_system::solve_structure_graph_algorithm Class Reference

#include <solve_structure_graph.h>

Inheritance diagram for mcrl2::pbes_system::solve_structure_graph_algorithm:
mcrl2::pbes_system::lps_solve_structure_graph_algorithm mcrl2::pbes_system::lps_to_lts_solve_structure_graph_algorithm mcrl2::pbes_system::lts_solve_structure_graph_algorithm

Public Member Functions

std::pair< vertex_set, vertex_set > solve_recursive (structure_graph &G, const vertex_set &A, std::size_t &calculation_steps)
 
 solve_structure_graph_algorithm (bool check_strategy_=false, bool use_toms_optimization_=false)
 
bool solve (structure_graph &G, std::size_t &calculation_steps)
 Returns the winning player (alpha)
 
bool solve (structure_graph &G)
 
std::pair< vertex_set, vertex_set > solve_partitions (structure_graph &G, std::size_t &calculation_steps)
 Returns the winning partition.
 

Protected Member Functions

std::pair< vertex_set, vertex_set > solve_recursive (structure_graph &G, std::size_t &calculation_steps)
 
std::pair< vertex_set, vertex_set > solve_recursive_extended (structure_graph &G, std::size_t &calculation_steps)
 
void check_solve_recursive_solution (const structure_graph &G, bool is_disjunctive, const vertex_set &Wdisj, const vertex_set &Wconj, std::size_t &calculation_steps)
 
std::pair< bool, std::set< structure_graph::index_type > > extract_evidence (structure_graph &G)
 

Static Protected Member Functions

static structure_graph::index_type succ (const structure_graph &G, structure_graph::index_type u)
 
static structure_graph::index_type succ (const structure_graph &G, structure_graph::index_type u, const vertex_set &U)
 
static void insert_edge (structure_graph::vertex_vector &V, structure_graph::index_type ui, structure_graph::index_type vi)
 

Protected Attributes

bool check_strategy = false
 
bool use_toms_optimization = false
 

Detailed Description

Definition at line 138 of file solve_structure_graph.h.

Constructor & Destructor Documentation

◆ solve_structure_graph_algorithm()

mcrl2::pbes_system::solve_structure_graph_algorithm::solve_structure_graph_algorithm ( bool  check_strategy_ = false,
bool  use_toms_optimization_ = false 
)
inlineexplicit

Definition at line 418 of file solve_structure_graph.h.

Member Function Documentation

◆ check_solve_recursive_solution()

void mcrl2::pbes_system::solve_structure_graph_algorithm::check_solve_recursive_solution ( const structure_graph &  G,
bool  is_disjunctive,
const vertex_set &  Wdisj,
const vertex_set &  Wconj,
std::size_t &  calculation_steps 
)
inlineprotected

Definition at line 336 of file solve_structure_graph.h.

◆ extract_evidence()

std::pair< bool, std::set< structure_graph::index_type > > mcrl2::pbes_system::solve_structure_graph_algorithm::extract_evidence ( structure_graph &  G)
inlineprotected

Definition at line 489 of file solve_structure_graph.h.

◆ insert_edge()

static void mcrl2::pbes_system::solve_structure_graph_algorithm::insert_edge ( structure_graph::vertex_vector &  V,
structure_graph::index_type  ui,
structure_graph::index_type  vi 
)
inlinestaticprotected

Definition at line 324 of file solve_structure_graph.h.

◆ solve() [1/2]

bool mcrl2::pbes_system::solve_structure_graph_algorithm::solve ( structure_graph &  G)
inline

Definition at line 444 of file solve_structure_graph.h.

◆ solve() [2/2]

bool mcrl2::pbes_system::solve_structure_graph_algorithm::solve ( structure_graph &  G,
std::size_t &  calculation_steps 
)
inline

Returns the winning player (alpha)

Definition at line 425 of file solve_structure_graph.h.

◆ solve_partitions()

std::pair< vertex_set, vertex_set > mcrl2::pbes_system::solve_structure_graph_algorithm::solve_partitions ( structure_graph &  G,
std::size_t &  calculation_steps 
)
inline

Returns the winning partition.

Definition at line 452 of file solve_structure_graph.h.

◆ solve_recursive() [1/2]

std::pair< vertex_set, vertex_set > mcrl2::pbes_system::solve_structure_graph_algorithm::solve_recursive ( structure_graph &  G,
const vertex_set &  A,
std::size_t &  calculation_steps 
)
inline

Definition at line 175 of file solve_structure_graph.h.

◆ solve_recursive() [2/2]

std::pair< vertex_set, vertex_set > mcrl2::pbes_system::solve_structure_graph_algorithm::solve_recursive ( structure_graph &  G,
std::size_t &  calculation_steps 
)
inlineprotected

Definition at line 191 of file solve_structure_graph.h.

◆ solve_recursive_extended()

std::pair< vertex_set, vertex_set > mcrl2::pbes_system::solve_structure_graph_algorithm::solve_recursive_extended ( structure_graph &  G,
std::size_t &  calculation_steps 
)
inlineprotected

Definition at line 271 of file solve_structure_graph.h.

◆ succ() [1/2]

static structure_graph::index_type mcrl2::pbes_system::solve_structure_graph_algorithm::succ ( const structure_graph &  G,
structure_graph::index_type  u 
)
inlinestaticprotected

Definition at line 147 of file solve_structure_graph.h.

◆ succ() [2/2]

static structure_graph::index_type mcrl2::pbes_system::solve_structure_graph_algorithm::succ ( const structure_graph &  G,
structure_graph::index_type  u,
const vertex_set &  U 
)
inlinestaticprotected

Definition at line 158 of file solve_structure_graph.h.

Member Data Documentation

◆ check_strategy

bool mcrl2::pbes_system::solve_structure_graph_algorithm::check_strategy = false
protected

Definition at line 142 of file solve_structure_graph.h.

◆ use_toms_optimization

bool mcrl2::pbes_system::solve_structure_graph_algorithm::use_toms_optimization = false
protected

Definition at line 144 of file solve_structure_graph.h.


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