18#ifndef MCRL2_LTS_PROBABILISTIC_LTS_H
19#define MCRL2_LTS_PROBABILISTIC_LTS_H
45template <
class STATE_LABEL_T,
class ACTION_LABEL_T,
class PROBABILISTIC_STATE_T,
class LTS_BASE >
Read-only balanced binary tree of terms.
A class that contains a labelled transition system.
ACTION_LABEL_T action_label_t
The type of action labels.
void set_initial_state(const states_size_type state)
Sets the initial state number of this LTS.
std::vector< STATE_LABEL_T >::size_type states_size_type
The sort that contains the indices of states.
std::vector< ACTION_LABEL_T >::size_type labels_size_type
The sort that represents the indices of labels.
STATE_LABEL_T state_label_t
The type of state labels.
void clear()
Clear the transitions system.
bool operator==(const lts &other) const
Standard equality operator.
LTS_BASE base_t
The type of the used lts base.
std::vector< transition >::size_type transitions_size_type
The sort that contains indices of transitions.
states_size_type initial_state() const
Gets the initial state number of this LTS.
void swap(lts &l)
Swap this lts with the supplied supplied LTS.
A class that contains a labelled transition system.
probabilistic_lts(probabilistic_lts &&other)=default
Standard move constructor.
void set_initial_probabilistic_state(const PROBABILISTIC_STATE_T &state)
Sets the probabilistic initial state number of this LTS.
const PROBABILISTIC_STATE_T & initial_probabilistic_state() const
Gets the initial state number of this LTS.
super::transitions_size_type transitions_size_type
bool operator==(const probabilistic_lts &other) const
Standard equality operator.
void swap(probabilistic_lts &other)
Swap this lts with the supplied supplied LTS.
super::states_size_type states_size_type
labels_size_type num_probabilistic_states() const
Gets the number of probabilistic states of this LTS.
static constexpr bool is_probabilistic_lts
An indicator that this is a probabilistic lts.
void clear_probabilistic_states()
Clear the probabilistic states in this probabilistic transitions system.
lts< STATE_LABEL_T, ACTION_LABEL_T, LTS_BASE > super
states_size_type add_and_reset_probabilistic_state(PROBABILISTIC_STATE_T &s)
Adds a probabilistic state to this LTS and resets the state to empty.
void set_initial_state(const states_size_type s)
void clear()
Clear the transitions system.
probabilistic_lts & operator=(probabilistic_lts &&other)=default
Standard assignment move operator.
PROBABILISTIC_STATE_T probabilistic_state_t
The type of probabilistic labels.
probabilistic_lts & operator=(const probabilistic_lts &other)=default
Standard assignment operator.
std::vector< PROBABILISTIC_STATE_T > m_probabilistic_states
probabilistic_lts(const probabilistic_lts &other)=default
Standard copy constructor.
states_size_type add_probabilistic_state(const PROBABILISTIC_STATE_T &s)
Adds a probabilistic state to this LTS.
super::state_label_t state_label_t
states_size_type initial_state() const
PROBABILISTIC_STATE_T m_init_probabilistic_state
super::labels_size_type labels_size_type
super::action_label_t action_label_t
const PROBABILISTIC_STATE_T & probabilistic_state(const states_size_type index) const
Gets the probabilistic label of an index.
probabilistic_lts()
Creates an empty LTS.
void set_probabilistic_state(const states_size_type index, const PROBABILISTIC_STATE_T &s)
Sets the probabilistic label corresponding to some index.
The file containing the core class for transition systems.
atermpp::term_balanced_tree< data::data_expression > state
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...