spot  2.10.6
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members

An implementation of the Couvreur99 emptiness-check algorithm. More...

#include <spot/twaalgos/gtec/gtec.hh>

Inheritance diagram for spot::couvreur99_check:
Collaboration diagram for spot::couvreur99_check:

Public Types

typedef unsigned(unsigned_statistics::* unsigned_fun) () const
 
typedef std::map< const char *, unsigned_fun, char_ptr_less_thanstats_map
 

Public Member Functions

 couvreur99_check (const const_twa_ptr &a, option_map o=option_map())
 
virtual emptiness_check_result_ptr check () override
 Check whether the automaton's language is empty. More...
 
virtual std::ostream & print_stats (std::ostream &os) const override
 Print statistics, if any. More...
 
std::shared_ptr< const couvreur99_check_statusresult () const
 Return the status of the emptiness-check. 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
 
const const_twa_ptr & automaton () const
 The automaton that this emptiness-check inspects. More...
 
const option_mapoptions () 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_statisticsstatistics () const
 Return statistics, if available. More...
 
virtual const ec_statisticsemptiness_check_statistics () const
 Return emptiness check statistics, if available. More...
 
virtual void options_updated (const option_map &old)
 Notify option updates. More...
 

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

std::shared_ptr< couvreur99_check_statusecs_
 
bool poprem_
 Whether to store the state to be removed. More...
 
unsigned removed_components
 Number of dead SCC removed by the algorithm. More...
 
const_twa_ptr a_
 The automaton. More...
 
option_map o_
 The options. More...
 

Detailed Description

An implementation of the Couvreur99 emptiness-check algorithm.

See the documentation for spot::couvreur99.

Member Function Documentation

◆ automaton()

const const_twa_ptr& spot::emptiness_check::automaton ( ) const
inlineinherited

The automaton that this emptiness-check inspects.

◆ check()

virtual emptiness_check_result_ptr spot::couvreur99_check::check ( )
overridevirtual

Check whether the automaton's language is empty.

Implements spot::emptiness_check.

Reimplemented in spot::couvreur99_check_shy.

◆ emptiness_check_statistics()

virtual const ec_statistics* spot::emptiness_check::emptiness_check_statistics ( ) const
virtualinherited

Return emptiness check statistics, if available.

◆ options()

const option_map& spot::emptiness_check::options ( ) const
inlineinherited

Return the options parametrizing how the emptiness check is realized.

◆ options_updated()

virtual void spot::emptiness_check::options_updated ( const option_map old)
virtualinherited

Notify option updates.

◆ parse_options()

const char* spot::emptiness_check::parse_options ( char *  options)
inherited

Modify the algorithm options.

◆ print_stats()

virtual std::ostream& spot::couvreur99_check::print_stats ( std::ostream &  os) const
overridevirtual

Print statistics, if any.

Reimplemented from spot::emptiness_check.

◆ remove_component()

void spot::couvreur99_check::remove_component ( const state start_delete)
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.

◆ result()

std::shared_ptr<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.

◆ safe()

virtual bool spot::emptiness_check::safe ( ) const
virtualinherited

Return false iff accepting_run() can return 0 for non-empty automata.

◆ statistics()

virtual const unsigned_statistics* spot::emptiness_check::statistics ( ) const
virtualinherited

Return statistics, if available.

Member Data Documentation

◆ a_

const_twa_ptr spot::emptiness_check::a_
protectedinherited

The automaton.

◆ o_

option_map spot::emptiness_check::o_
protectedinherited

The options.

◆ poprem_

bool spot::couvreur99_check::poprem_
protected

Whether to store the state to be removed.

◆ removed_components

unsigned spot::couvreur99_check::removed_components
protected

Number of dead SCC removed by the algorithm.


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

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Fri Feb 27 2015 10:00:07 for spot by doxygen 1.9.1