12#ifndef MCRL2_MODAL_FORMULA_PARSE_H
13#define MCRL2_MODAL_FORMULA_PARSE_H
27namespace action_formulas
36template <
typename ActionLabelContainer = std::vector<state_formulas::variable>,
typename VariableContainer = std::vector<data::variable> >
39 const VariableContainer& variables,
40 const ActionLabelContainer& actions
57namespace regular_formulas
67template <
typename ActionLabelContainer = std::vector<state_formulas::variable>,
typename VariableContainer = std::vector<data::variable> >
70 const VariableContainer& variables,
71 const ActionLabelContainer& actions
88namespace state_formulas
114 if (options.translate_regular_formulas)
116 mCRL2log(
log::debug) <<
"formula before translating regular formulas: " << x << std::endl;
118 mCRL2log(
log::debug) <<
"formula after translating regular formulas: " << x << std::endl;
120 if (options.translate_user_notation)
146 const bool formula_is_quantitative,
151 if (options.type_check)
168 const bool formula_is_quantitative,
174 lpsspec = remove_stochastic_operators(stoch_lps_spec);
187 const bool formula_is_quantitative,
204 const bool formula_is_quantitative,
210 lpsspec = remove_stochastic_operators(stoch_lps_spec);
221 const std::string& text,
222 const bool formula_is_quantitative,
227 if (options.type_check)
243 const bool formula_is_quantitative,
260 const bool formula_is_quantitative,
269 if (options.type_check)
293 const bool formula_is_quantitative,
299 lpsspec = remove_stochastic_operators(stoch_lps_spec);
312 const bool formula_is_quantitative,
329 const bool formula_is_quantitative,
335 lpsspec = remove_stochastic_operators(stoch_lps_spec);
const data_equation_vector & user_defined_equations() const
Gets all user defined equations.
void add_context_sorts(const Container &c, typename atermpp::enable_if_container< Container >::type *=nullptr)
Adds the sorts in c to the context sorts.
const std::set< data::variable > & global_variables() const
Returns the declared free variables of the LPS.
const process::action_label_list & action_labels() const
Returns a sequence of action labels. This sequence contains all action labels occurring in the specif...
const data::data_specification & data() const
Returns the data specification.
Linear process specification.
Linear process specification.
Standard exception class for reporting runtime errors.
#define mCRL2log(LEVEL)
mCRL2log(LEVEL) provides the stream used to log.
add your file description here.
add your file description here.
add your file description here.
data_specification merge_data_specifications(const data_specification &dataspec1, const data_specification &dataspec2)
Merges two data specifications. Throws an exception if conflicts are detected.
action_label_list merge_action_specifications(const action_label_list &actspec1, const action_label_list &actspec2)
Merges two action specifications.
std::string read_text(const std::string &filename, bool warn=false)
Read text from a file.
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...