mCRL2
Loading...
Searching...
No Matches
data_construction.h
Go to the documentation of this file.
1// Author(s): Wieger Wesselink
2// Copyright: see the accompanying file COPYING or copy at
3// https://github.com/mCRL2org/mCRL2/blob/master/COPYING
4//
5// Distributed under the Boost Software License, Version 1.0.
6// (See accompanying file LICENSE_1_0.txt or copy at
7// http://www.boost.org/LICENSE_1_0.txt)
8//
9/// \file mcrl2/data/detail/data_construction.h
10/// \brief add your file description here.
11
12#ifndef MCRL2_DATA_DETAIL_DATA_CONSTRUCTION_H
13#define MCRL2_DATA_DETAIL_DATA_CONSTRUCTION_H
14
15#include "mcrl2/data/lambda.h"
16#include "mcrl2/data/set.h"
17
18namespace mcrl2::data::detail
19{
20
21/// \brief Create the finite set { x }, with x a data expression.
22inline
24{
28 return result;
29}
30
31/// \brief Create the set { x | phi }, with phi a predicate that may depend on the variable x.
32inline
34{
37 return result;
38}
39
40/// \brief Create the predicate 'x in X', with X a set.
41inline
43{
45 return result;
46}
47
48/// \brief Returns the sort s of Set(s).
49/// \param x A set expression
50inline
52{
53 return x.element_sort();
54}
55
56} // namespace mcrl2::data::detail
57
58#endif // MCRL2_DATA_DETAIL_DATA_CONSTRUCTION_H
\brief A container sort
const sort_expression & element_sort() const
data_expression & operator=(data_expression &&) noexcept=default
sort_expression sort() const
Returns the sort of the data expression.
Definition data.cpp:107
function symbol.
Definition lambda.h:24
lambda(const variable &variable, const data_expression &body)
Definition lambda.h:45
\brief A sort expression
\brief A data variable
Definition variable.h:25
const sort_expression & sort() const
Definition variable.h:40
sort_expression get_set_sort(const container_sort &x)
Returns the sort s of Set(s).
data_expression create_finite_set(const data_expression &x)
Create the finite set { x }, with x a data expression.
data_expression create_set_in(const data_expression &x, const data_expression &X)
Create the predicate 'x in X', with X a set.
data_expression create_set_comprehension(const variable &x, const data_expression &phi)
Create the set { x | phi }, with phi a predicate that may depend on the variable x.
Namespace for system defined sort bool_.
Definition bool.h:29
bool is_bool(const sort_expression &e)
Recogniser for sort expression Bool.
Definition bool.h:51
Namespace for system defined sort fset.
Definition fset1.h:32
application insert(const sort_expression &s, const data_expression &arg0, const data_expression &arg1)
Application of function symbol @fset_insert.
Definition fset1.h:129
function_symbol empty(const sort_expression &s)
Constructor for function symbol {}.
Definition fset1.h:72
Namespace for system defined sort set_.
Definition set1.h:33
application set_fset(const sort_expression &s, const data_expression &arg0)
Application of function symbol @setfset.
Definition set1.h:194
application in(const sort_expression &s, const data_expression &arg0, const data_expression &arg1)
Application of function symbol in.
Definition set1.h:319
application constructor(const sort_expression &s, const data_expression &arg0, const data_expression &arg1)
Application of function symbol @set.
Definition set1.h:98