spot
0.9.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ltlast
formula_tree.hh
Go to the documentation of this file.
1
// Copyright (C) 2009, 2012 Laboratoire de Recherche et Développement
2
// de l'Epita (LRDE).
3
//
4
// This file is part of Spot, a model checking library.
5
//
6
// Spot is free software; you can redistribute it and/or modify it
7
// under the terms of the GNU General Public License as published by
8
// the Free Software Foundation; either version 2 of the License, or
9
// (at your option) any later version.
10
//
11
// Spot is distributed in the hope that it will be useful, but WITHOUT
12
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
14
// License for more details.
15
//
16
// You should have received a copy of the GNU General Public License
17
// along with Spot; see the file COPYING. If not, write to the Free
18
// Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
19
// 02111-1307, USA.
20
23
#ifndef SPOT_LTLAST_FORMULA_TREE_HH
24
# define SPOT_LTLAST_FORMULA_TREE_HH
25
26
# include <vector>
27
# include <boost/shared_ptr.hpp>
28
# include "
formula.hh
"
29
# include "
multop.hh
"
30
# include "
binop.hh
"
31
# include "
unop.hh
"
32
# include "
nfa.hh
"
33
34
namespace
spot
35
{
36
namespace
ltl
37
{
39
namespace
formula_tree
40
{
41
struct
node
42
{
43
virtual
~node
() {};
44
};
46
typedef
boost::shared_ptr<node>
node_ptr
;
47
48
struct
node_unop
:
node
49
{
50
unop::type
op
;
51
node_ptr
child
;
52
};
53
struct
node_binop
:
node
54
{
55
binop::type
op
;
56
node_ptr
lhs
;
57
node_ptr
rhs
;
58
};
59
struct
node_multop
:
node
60
{
61
multop::type
op
;
62
node_ptr
lhs
;
63
node_ptr
rhs
;
64
};
65
struct
node_nfa
:
node
66
{
67
std::vector<node_ptr>
children
;
68
spot::ltl::nfa::ptr
nfa
;
69
};
71
enum
{
True
= -1,
False
= -2 };
72
struct
node_atomic
:
node
73
{
74
int
i
;
75
};
76
79
const
formula
*
instanciate
(
const
node_ptr
np,
80
const
std::vector<const formula*>& v);
81
83
size_t
arity
(
const
node_ptr
np);
84
}
85
}
86
}
87
88
#endif // SPOT_LTLAST_FORMULA_TREE_HH_
Please
comment
this page and
report errors
about it on
the RefDocComments page
.
Generated on Mon Jul 2 2012 17:35:47 for spot by
1.8.1.1