mcrl2/lps/multi_action.h

Include file:

#include "mcrl2/lps/multi_action.h"

Multi-action class.

Typedefs

type multi_action_list

typedef for atermpp::term_list< multi_action >

list of multi_actions

type multi_action_vector

typedef for std::vector< multi_action >

vector of multi_actions

Functions

data::data_expression mcrl2::lps::equal_multi_actions(const multi_action &a, const multi_action &b)

Returns a data expression that expresses under which conditions the multi actions a and b are equal. The multi actions may contain free variables.

Parameters:

  • a A sequence of actions
  • b A sequence of actions

Returns: Necessary conditions for the equality of a and b

std::set<data::variable> find_all_variables(const lps::multi_action &x)
std::set<data::variable> find_free_variables(const lps::multi_action &x)
bool is_multi_action(const atermpp::aterm_appl &x)

Returns true if the term t is a multi action.

void normalize_sorts(multi_action &x, const data::sort_specification &sortspec)
data::data_expression mcrl2::lps::not_equal_multi_actions(const multi_action &a, const multi_action &b)

Returns a pbes expression that expresses under which conditions the multi actions a and b are not equal. The multi actions may contain free variables.

Parameters:

  • a A sequence of actions
  • b A sequence of actions

Returns: Necessary conditions for the inequality of a and b

std::ostream &mcrl2::lps::operator<<(std::ostream &out, const multi_action &x)

Outputs the object to a stream.

Parameters:

  • out An output stream
  • x Object x

Returns: The output stream

std::string pp(const multi_action &x)
void mcrl2::lps::swap(multi_action &t1, multi_action &t2)

swap overload

void translate_user_notation(lps::multi_action &x)