Vcsn  2.0
Be Rational
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
proper.hh File Reference
#include <stdexcept>
#include <type_traits>
#include <unordered_map>
#include <unordered_set>
#include <utility>
#include <vector>
#include <boost/lexical_cast.hpp>
#include <boost/heap/fibonacci_heap.hpp>
#include <vcsn/algos/copy.hh>
#include <vcsn/algos/dot.hh>
#include <vcsn/algos/fwd.hh>
#include <vcsn/algos/is-eps-acyclic.hh>
#include <vcsn/algos/info.hh>
#include <vcsn/algos/is-proper.hh>
#include <vcsn/algos/is-valid.hh>
#include <vcsn/core/kind.hh>
#include <vcsn/misc/attributes.hh>
#include <vcsn/misc/direction.hh>
#include <vcsn/misc/star_status.hh>
Include dependency graph for proper.hh:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  vcsn::detail::properer< Aut, has_one >
 This class contains the core of the proper algorithm. More...
 
struct  vcsn::detail::properer< Aut, has_one >::state_profile
 Data needed to compare the elimination order between states. More...
 
class  vcsn::detail::properer< Aut, false >
 
struct  vcsn::proper_labelset< LabelSet >
 From a labelset, its non-nullable labelset. More...
 
struct  vcsn::proper_labelset< nullableset< LabelSet > >
 

Namespaces

 vcsn
 
 vcsn::detail
 
 vcsn::dyn
 FIXME: duplicate code with determinize.
 
 vcsn::dyn::detail
 

Macros

#define STATS
 

Functions

static int vcsn::detail::debug_level ()
 Debug level set in the user's environment. More...
 
template<typename Aut >
bool vcsn::in_situ_remover (Aut &aut, bool prune)
 Blindly eliminate epsilon transitions without checking for the validity of the automaton. More...
 
template<typename Aut >
void vcsn::proper_here (Aut &aut, direction dir=direction::backward, bool prune=true)
 Eliminate spontaneous transitions in place. More...
 
template<typename LabelSet , typename WeightSet >
auto vcsn::proper_context (const context< LabelSet, WeightSet > &ctx) -> context< typename proper_labelset< LabelSet >::type, WeightSet >
 From a context, its non-nullable context. More...
 
template<typename Aut >
auto vcsn::proper (const Aut &aut, direction dir=direction::backward, bool prune=true) -> mutable_automaton< decltype(proper_context(copy(aut) ->context()))>
 Eliminate spontaneous transitions. More...
 
template<typename Aut , typename Dir , typename Bool >
automaton vcsn::dyn::detail::proper (const automaton &aut, direction dir, bool prune)
 Bridge. More...
 
 vcsn::dyn::detail::REGISTER_DECLARE (proper,(const automaton &aut, direction dir, bool prune) -> automaton)
 

Macro Definition Documentation

#define STATS

Definition at line 26 of file proper.hh.