83 const std::set<data::sort_expression>& declared_sorts,
84 const std::set<data::variable>& declared_global_variables,
92 const std::set<data::variable>& declared_global_variables,
93 const std::set<data::variable>& occurring_global_variables,
94 const std::set<propositional_variable>& declared_variables,
95 const std::set<propositional_variable_instantiation>& occ,
110 std::set<propositional_variable_instantiation> result;
114 f.
apply(eqn.formula());
126 bool partial_parses =
false;
137 bool partial_parses =
false;
155 bool partial_parses =
false;
164 bool partial_parses =
false;
\brief The and operator for pbes expressions
\brief The existential quantification operator for pbes expressions
\brief The universal quantification operator for pbes expressions
\brief The implication operator for pbes expressions
\brief The not operator for pbes expressions
\brief The or operator for pbes expressions
const pbes_expression & formula() const
Returns the predicate formula on the right hand side of the equation.
bool is_solved() const
Returns true if the predicate formula on the right hand side contains no predicate variables.
parameterized boolean equation system
const data::data_specification & data() const
Returns the data specification.
std::set< propositional_variable_instantiation > occurring_variable_instantiations() const
Returns the set of occurring propositional variable instantiations of the pbes. This is the set of va...
const std::vector< pbes_equation > & equations() const
Returns the equations.
\brief A propositional variable instantiation
\brief A propositional variable declaration
D_ParserTables parser_tables_mcrl2
add your file description here.
MCRL2_EXPORT bool init(rewriter_interface *i, RewriterCompilingJitty *this_rewriter)
void syntax_error_fn(struct D_Parser *ap)
Custom syntax error function that prints both the line number and the column.
struct D_ParseNode * ambiguity_fn(struct D_Parser *, int, struct D_ParseNode **)
Function for resolving ambiguities in the '_ -> _ <> _' operator for process expressions.
void warn_and_or(const parse_node &)
Prints a warning for each occurrence of 'x && y || z' in the parse tree.
void instantiate_global_variables(pbes &p)
Attempts to eliminate the free variables of a PBES, by substituting a constant value for them....
bool is_bes(const pbes &x)
Returns true if a PBES is in BES form.
untyped_pbes parse_pbes_new(const std::string &text)
void complete_pbes(pbes &x)
data::mutable_map_substitution instantiate_global_variables(pbes &p)
Eliminates the global variables of a PBES, by substituting a constant value for them....
bool is_well_typed_pbes(const std::set< data::sort_expression > &declared_sorts, const std::set< data::variable > &declared_global_variables, const std::set< data::variable > &occurring_global_variables, const std::set< propositional_variable > &declared_variables, const std::set< propositional_variable_instantiation > &occ, const propositional_variable_instantiation &init, const data::data_specification &data_spec)
bool has_propositional_variables(const pbes_expression &x)
propositional_variable parse_propositional_variable(const std::string &text)
pbes_expression parse_pbes_expression(const std::string &text)
bool is_well_typed(const pbes_equation &eqn)
Checks if the equation is well typed.
bool is_well_typed_equation(const pbes_equation &eqn, const std::set< data::sort_expression > &declared_sorts, const std::set< data::variable > &declared_global_variables, const data::data_specification &data_spec)
pbes_expression parse_pbes_expression_new(const std::string &text)
bool is_bes(const T &x)
Returns true if a PBES object is in BES form.
void normalize_sorts(T &x, const data::sort_specification &sortspec, typename std::enable_if< !std::is_base_of< atermpp::aterm, T >::value >::type *=nullptr)
std::vector< propositional_variable_instantiation > propositional_variable_instantiation_vector
\brief vector of propositional_variable_instantiations
void find_identifiers(const T &x, OutputIterator o)
std::vector< propositional_variable > propositional_variable_vector
\brief vector of propositional_variables
void find_free_variables(const T &x, OutputIterator o)
bool is_well_typed_pbes(const std::set< data::sort_expression > &declared_sorts, const std::set< data::variable > &declared_global_variables, const std::set< data::variable > &occurring_global_variables, const std::set< propositional_variable > &declared_variables, const std::set< propositional_variable_instantiation > &occ, const propositional_variable_instantiation &init, const data::data_specification &data_spec)
std::vector< pbes_equation > pbes_equation_vector
\brief vector of pbes_equations
void typecheck_pbes(pbes &pbesspec)
Type check a parsed mCRL2 pbes specification. Throws an exception if something went wrong.
bool is_well_typed(const pbes_equation &eqn)
void find_function_symbols(const T &x, OutputIterator o)
void find_sort_expressions(const T &x, OutputIterator o)
bool search_variable(const T &x, const data::variable &v)
Returns true if the term has a given variable as subterm.
std::vector< pbes_expression > pbes_expression_vector
\brief vector of pbes_expressions
void find_all_variables(const T &x, OutputIterator o)
void complete_data_specification(pbes &)
Adds all sorts that appear in the PBES p to the data specification of p.
bool is_well_typed_equation(const pbes_equation &eqn, const std::set< data::sort_expression > &declared_sorts, const std::set< data::variable > &declared_global_variables, const data::data_specification &data_spec)
std::string pp(const fixpoint_symbol &x)
void translate_user_notation(pbes_system::pbes &x)
void find_propositional_variable_instantiations(Container const &container, OutputIterator o)
Returns all data variables that occur in a range of expressions.
A class that takes a linear process specification and checks all tau-summands of that LPS for conflue...
add your file description here.
add your file description here.
add your file description here.
Add your file description here.
add your file description here.
add your file description here.
add your file description here.
Wrapper for D_Parser and its corresponding D_ParserTables.
parse_node parse(const std::string &text, unsigned int start_symbol_index=0, bool partial_parses=false)
Parses a string. N.B. The user is responsible for destruction of the returned value by calling destro...
unsigned int start_symbol_index(const std::string &name) const
std::set< propositional_variable_instantiation > variables
void apply(const propositional_variable_instantiation &x)
pbes_system::propositional_variable parse_PropVarDecl(const core::parse_node &node) const
untyped_pbes parse_PbesSpec(const core::parse_node &node) const
pbes_system::pbes_expression parse_PbesExpr(const core::parse_node &node) const