mCRL2
Loading...
Searching...
No Matches
lts_utilities.h File Reference

This file contains some utility functions to manipulate lts's. More...

Go to the source code of this file.

Classes

class  mcrl2::lts::detail::indexed_sorted_vector_for_transitions< CONTENT >
 

Namespaces

namespace  mcrl2
 A class that takes a linear process specification and checks all tau-summands of that LPS for confluence.
 
namespace  mcrl2::lts
 The main LTS namespace.
 
namespace  mcrl2::lts::detail
 A base class for the lts_dot labelled transition system.
 

Typedefs

typedef std::pair< transition::size_type, transition::size_typemcrl2::lts::outgoing_pair_t
 Type for exploring transitions per state.
 
typedef detail::indexed_sorted_vector_for_transitions< outgoing_pair_tmcrl2::lts::outgoing_transitions_per_state_t
 
typedef std::multimap< std::pair< transition::size_type, transition::size_type >, transition::size_typemcrl2::lts::outgoing_transitions_per_state_action_t
 Type for exploring transitions per state and action.
 

Functions

void mcrl2::lts::sort_transitions (std::vector< transition > &transitions, const std::set< transition::size_type > &hidden_label_set, transition_sort_style ts=src_lbl_tgt)
 Sorts the transitions using a sort style.
 
std::string mcrl2::lts::ptr (const transition t)
 Sorts the transitions on labels. Action with the tau label are put first.
 
void mcrl2::lts::group_transitions_on_label (const std::vector< transition >::iterator begin, const std::vector< transition >::iterator end, std::function< std::size_t(const transition &)> get_label, const std::size_t tau_label_index, std::vector< std::pair< std::size_t, std::size_t > > &count_sum_transitions_per_action, std::vector< std::size_t > &todo_stack)
 
void mcrl2::lts::group_transitions_on_label (std::vector< transition > &transitions, std::function< std::size_t(const transition &)> get_label, const std::size_t number_of_labels, const std::size_t tau_label_index)
 
void mcrl2::lts::group_transitions_on_label_tgt (std::vector< transition > &transitions, const std::size_t number_of_labels, const std::size_t tau_label_index, const std::size_t number_of_states)
 
void mcrl2::lts::sort_transitions (std::vector< transition > &transitions, transition_sort_style ts=src_lbl_tgt)
 Sorts the transitions using a sort style.
 
std::size_t mcrl2::lts::label (const outgoing_pair_t &p)
 Label of a pair of a label and target state.
 
std::size_t mcrl2::lts::to (const outgoing_pair_t &p)
 Target state of a label state pair.
 
std::size_t mcrl2::lts::from (const outgoing_transitions_per_state_action_t::const_iterator &i)
 From state of an iterator exploring transitions per outgoing state and action.
 
std::size_t mcrl2::lts::label (const outgoing_transitions_per_state_action_t::const_iterator &i)
 Label of an iterator exploring transitions per outgoing state and action.
 
std::size_t mcrl2::lts::to (const outgoing_transitions_per_state_action_t::const_iterator &i)
 To state of an iterator exploring transitions per outgoing state and action.
 
outgoing_transitions_per_state_action_t mcrl2::lts::transitions_per_outgoing_state_action_pair (const std::vector< transition > &trans)
 Provide the transitions as a multimap accessible per from state and label.
 
outgoing_transitions_per_state_action_t mcrl2::lts::transitions_per_outgoing_state_action_pair (const std::vector< transition > &trans, const std::set< transition::size_type > &hide_label_set)
 Provide the transitions as a multimap accessible per from state and label.
 
outgoing_transitions_per_state_action_t mcrl2::lts::transitions_per_outgoing_state_action_pair_reversed (const std::vector< transition > &trans)
 Provide the transitions as a multimap accessible per from state and label, ordered backwardly.
 
outgoing_transitions_per_state_action_t mcrl2::lts::transitions_per_outgoing_state_action_pair_reversed (const std::vector< transition > &trans, const std::set< transition::size_type > &hide_label_set)
 Provide the transitions as a multimap accessible per from state and label, ordered backwardly.
 
template<class LABEL_TYPE >
LABEL_TYPE mcrl2::lts::detail::make_divergence_label (const std::string &s)
 
template<>
mcrl2::lts::action_label_lts mcrl2::lts::detail::make_divergence_label< mcrl2::lts::action_label_lts > (const std::string &s)
 
template<class LTS_TYPE >
std::size_t mcrl2::lts::detail::mark_explicit_divergence_transitions (LTS_TYPE &l)
 
template<class LTS_TYPE >
void mcrl2::lts::detail::unmark_explicit_divergence_transitions (LTS_TYPE &l, const std::size_t divergent_transition_label)
 

Detailed Description

This file contains some utility functions to manipulate lts's.

The function in this file typically allow to present the transitions of a state space differently.

Author
Jan Friso Groote

Definition in file lts_utilities.h.