spot
1.2.4
|
An implementation of the Couvreur99 emptiness-check algorithm. More...
#include <tgbaalgos/gtec/gtec.hh>
Public Types | |
typedef unsigned(unsigned_statistics::* | unsigned_fun )() const |
typedef std::map< const char *, unsigned_fun, char_ptr_less_than > | stats_map |
Public Member Functions | |
couvreur99_check (const tgba *a, option_map o=option_map(), const numbered_state_heap_factory *nshf=numbered_state_heap_hash_map_factory::instance()) | |
virtual emptiness_check_result * | check () |
Check whether the automaton's language is empty. More... | |
virtual std::ostream & | print_stats (std::ostream &os) const |
Print statistics, if any. More... | |
const couvreur99_check_status * | result () const |
Return the status of the emptiness-check. More... | |
const tgba * | automaton () const |
The automaton that this emptiness-check inspects. More... | |
const option_map & | options () const |
Return the options parametrizing how the emptiness check is realized. More... | |
const char * | parse_options (char *options) |
Modify the algorithm options. More... | |
virtual bool | safe () const |
Return false iff accepting_run() can return 0 for non-empty automata. More... | |
virtual const unsigned_statistics * | statistics () const |
Return statistics, if available. More... | |
virtual void | options_updated (const option_map &old) |
Notify option updates. More... | |
void | set_states (unsigned n) |
void | inc_states () |
void | inc_transitions () |
void | inc_depth (unsigned n=1) |
void | dec_depth (unsigned n=1) |
unsigned | states () const |
unsigned | transitions () const |
unsigned | max_depth () const |
unsigned | depth () const |
unsigned | get (const char *str) const |
Public Attributes | |
stats_map | stats |
Protected Member Functions | |
void | remove_component (const state *start_delete) |
Remove a strongly component from the hash. More... | |
unsigned | get_removed_components () const |
unsigned | get_vmsize () const |
Protected Attributes | |
couvreur99_check_status * | ecs_ |
bool | poprem_ |
Whether to store the state to be removed. More... | |
unsigned | removed_components |
Number of dead SCC removed by the algorithm. More... | |
const tgba * | a_ |
The automaton. More... | |
option_map | o_ |
The options. More... | |
An implementation of the Couvreur99 emptiness-check algorithm.
See the documentation for spot::couvreur99.
|
inlineinherited |
The automaton that this emptiness-check inspects.
|
virtual |
Check whether the automaton's language is empty.
Implements spot::emptiness_check.
Reimplemented in spot::couvreur99_check_shy.
|
inlineinherited |
Return the options parametrizing how the emptiness check is realized.
|
virtualinherited |
Notify option updates.
|
inherited |
Modify the algorithm options.
|
virtual |
Print statistics, if any.
Reimplemented from spot::emptiness_check.
|
protected |
Remove a strongly component from the hash.
This function remove all accessible state from a given state. In other words, it removes the strongly connected component that contains this state.
const couvreur99_check_status* spot::couvreur99_check::result | ( | ) | const |
Return the status of the emptiness-check.
When check() succeed, the status should be passed along to spot::counter_example.
This status should not be deleted, it is a pointer to a member of this class that will be deleted when the couvreur99 object is deleted.
|
virtualinherited |
Return false iff accepting_run() can return 0 for non-empty automata.
|
virtualinherited |
Return statistics, if available.
|
protectedinherited |
The automaton.
|
protectedinherited |
The options.
|
protected |
Whether to store the state to be removed.
|
protected |
Number of dead SCC removed by the algorithm.