SemOpt  $Revision:83+[c2a47fa11ed3+]$
Semantics.h
1 #ifndef SEMANTICS_H_
2 #define SEMANTICS_H_
3 
4 #include "AF.h"
5 #include "Labelling.h"
6 #include "SATFormulae.h"
7 #include <vector>
8 #include <iostream>
9 #include <sstream>
10 
11 extern bool debug;
12 using namespace std;
13 
14 extern int (*SatSolver)(stringstream *, int, int, vector<int> *);
15 
16 class Semantics
17 {
18 protected:
19  AF *af;
20  int encoding;
22  vector<Labelling> labellings;
23  int complete_labelling_SAT_constraints();
24  bool satlab(SATFormulae, Labelling *);
25  void cleanlabs();
26 public:
27  typedef vector<Labelling>::iterator iterator;
28  Semantics(AF *, int);
29  virtual ~Semantics();
30  iterator begin();
31  iterator end();
32 };
33 
34 #endif /* SEMANTICS_H_ */