18#ifndef _LIBLTS_COUNTER_EXAMPLE_H
19#define _LIBLTS_COUNTER_EXAMPLE_H
107 template <
class LTS_TYPE >
111 std::stack< index_type > reversed_label_indices;
120 while (!reversed_label_indices.empty())
127 reversed_label_indices.pop();
131 for(
const size_t& a: extra_actions)
141 std::cout <<
m_name <<
": ";
146 std::string filename =
m_name +
".trc";
152 result.
save(filename);
189 template <
class LTS_TYPE >
Term containing a string.
\brief A timed multi-action
A simple class storing the index of a label and an index.
std::size_t previous_entry_index() const
action_index_pair(std::size_t label_index, std::size_t previous_entry_index)
std::size_t m_label_index
std::size_t label_index() const
std::size_t m_previous_entry_index
A class that can be used to store counterexample trees and.
void save_counter_example(index_type index, const LTS_TYPE &l, const std::vector< size_t > &extra_actions=std::vector< size_t >()) const
const std::string m_counter_example_file
static index_type root_index()
Return the index of the root.
std::deque< action_index_pair > m_backward_tree
index_type add_transition(std::size_t label_index, index_type previous_entry)
This function stores a label to the counterexample tree.
const bool m_structured_output
bool is_dummy() const
This function indicates that this is not a dummy counterexample class and that a serious counterexamp...
bool is_structured() const
Returns whether this counter-example is printed in a machine-readable way to stdout If false is retur...
counter_example_constructor(const std::string &name, const std::string &counter_example_file, bool structured_output)
Constructor.
static const index_type m_root_index
A class that can be used to construct counter examples if no.
bool is_dummy() const
This function indicates that this is a dummy counterexample class and that no counterexample is requi...
void save_counter_example(index_type, const LTS_TYPE &, const std::vector< size_t > &=std::vector< size_t >()) const
dummy_counter_example_constructor index_type
static index_type root_index()
index_type add_transition(std::size_t, index_type)
bool is_structured() const
Returns whether this counter-example is printed in a machine-readable way to stdout If false is retur...
This class contains a trace consisting of a sequence of (timed) actions possibly with intermediate st...
void save(const std::string &filename, trace_format tf=tfMcrl2) const
Output the trace into a file with the indicated name.
void add_action(const mcrl2::lps::multi_action &action)
Add an action to the current trace.
#define mCRL2log(LEVEL)
mCRL2log(LEVEL) provides the stream used to log.
This file contains a class that contains labelled transition systems in lts (mcrl2) format.
std::string pp(const abstraction &x)
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...
This class allows to flexibly manipulate traces.