spot  2.11.6
Public Member Functions | Protected Attributes | List of all members
spot::emptiness_check Class Referenceabstract

Common interface to emptiness check algorithms. More...

#include <spot/twaalgos/emptiness.hh>

Inheritance diagram for spot::emptiness_check:
Collaboration diagram for spot::emptiness_check:

Public Member Functions

 emptiness_check (const const_twa_ptr &a, option_map o=option_map())
 
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 emptiness_check_result_ptr check ()=0
 Check whether the automaton contain an accepting run. 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 std::ostream & print_stats (std::ostream &os) const
 Print statistics, if any. More...
 
virtual void options_updated (const option_map &old)
 Notify option updates. More...
 

Protected Attributes

const_twa_ptr a_
 The automaton. More...
 
option_map o_
 The options. More...
 

Detailed Description

Common interface to emptiness check algorithms.

Member Function Documentation

◆ automaton()

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

The automaton that this emptiness-check inspects.

◆ check()

virtual emptiness_check_result_ptr spot::emptiness_check::check ( )
pure virtual

Check whether the automaton contain an accepting run.

Return 0 if the automaton accepts no run. Return an instance of emptiness_check_result otherwise. This instance might allow to obtain one sample acceptance run. The result has to be destroyed before the emptiness_check instance that generated it.

Some emptiness_check algorithms may allow check() to be called several time, but generally you should not assume that.

Some emptiness_check algorithms, especially those using bit state hashing may return 0 even if the automaton is not empty.

See also
safe()

Implemented in spot::couvreur99_check_shy, and spot::couvreur99_check.

◆ emptiness_check_statistics()

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

Return emptiness check statistics, if available.

◆ options()

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

Return the options parametrizing how the emptiness check is realized.

◆ options_updated()

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

Notify option updates.

◆ parse_options()

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

Modify the algorithm options.

◆ print_stats()

virtual std::ostream& spot::emptiness_check::print_stats ( std::ostream &  os) const
virtual

Print statistics, if any.

Reimplemented in spot::couvreur99_check.

◆ safe()

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

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

◆ statistics()

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

Return statistics, if available.

Member Data Documentation

◆ a_

const_twa_ptr spot::emptiness_check::a_
protected

The automaton.

◆ o_

option_map spot::emptiness_check::o_
protected

The options.


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