DDD 1.9.0.20250409152518
Hom_Basic.hh
Go to the documentation of this file.
1#ifndef __HOM_BASIC__H_
2#define __HOM_BASIC__H_
3
4#include "ddd/DDD.h"
5#include "ddd/Hom.h"
6#include "ddd/SDD.h"
7#include "ddd/SHom.h"
8
9
10// keep paths where variable var is equal to val
11GHom varEqState (int var, int val) ;
12// keep paths where variable var is NOT equal to val
13GHom varNeqState (int var, int val) ;
14// keep paths where variable var is strictly greater than val
15GHom varGtState (int var, int val) ;
16// keep paths where variable var is strictly < val
17GHom varLtState (int var, int val) ;
18// keep paths where variable var is <= to val
19GHom varLeqState (int var, int val) ;
20// keep paths where variable var is >= to val
21GHom varGeqState (int var, int val) ;
22// set a var to a constant
23GHom setVarConst (int var, int val) ;
24// increment or decrement the value of var by val
25GHom incVar (int var, int val) ;
26
27// keep paths where variable var is equal to val
28GHom varEqVar (int var, int var2) ;
29// keep paths where variable var is NOT equal to var2
30GHom varNeqVar (int var, int var2) ;
31// keep paths where variable var is strictly greater than var2
32GHom varGtVar (int var, int var2) ;
33// keep paths where variable var is strictly < var2
34GHom varLtVar (int var, int var2) ;
35// keep paths where variable var is <= to var2
36GHom varLeqVar (int var, int var2) ;
37// keep paths where variable var is >= to var2
38GHom varGeqVar (int var, int var2) ;
39
40#include <functional>
41
43typedef std::vector<DDD::val_t> state_t;
45typedef std::function<void(state_t &)> callback_t;
47void iterate (const GDDD & node, callback_t * cb);
49void iterate (const GSDD & node, callback_t * cb);
50
51
52#endif
GHom incVar(int var, int val)
Definition Hom_Basic.cpp:331
GHom varGtVar(int var, int var2)
Definition Hom_Basic.cpp:463
GHom varNeqVar(int var, int var2)
Definition Hom_Basic.cpp:446
GHom varNeqState(int var, int val)
Definition Hom_Basic.cpp:182
GHom setVarConst(int var, int val)
Definition Hom_Basic.cpp:258
GHom varGeqVar(int var, int var2)
Definition Hom_Basic.cpp:456
GHom varLeqState(int var, int val)
Definition Hom_Basic.cpp:190
std::function< void(state_t &)> callback_t
A visitor callback function.
Definition Hom_Basic.hh:45
GHom varLtVar(int var, int var2)
Definition Hom_Basic.cpp:477
GHom varGtState(int var, int val)
Definition Hom_Basic.cpp:186
GHom varGeqState(int var, int val)
Definition Hom_Basic.cpp:198
void iterate(const GDDD &node, callback_t *cb)
Explicit conversion : visit every path in the DDD (variable ids are removed)
Definition Hom_Basic.cpp:522
GHom varLeqVar(int var, int var2)
Definition Hom_Basic.cpp:470
GHom varLtState(int var, int val)
Definition Hom_Basic.cpp:194
GHom varEqState(int var, int val)
Definition Hom_Basic.cpp:178
GHom varEqVar(int var, int var2)
Definition Hom_Basic.cpp:436
std::vector< DDD::val_t > state_t
an explicit representation of a state
Definition Hom_Basic.hh:43
This class is the base class representing a Data Decision Diagram.
Definition DDD.h:49
This class is the base class representing a homomorphism over DDD.
Definition Hom.h:55
This class is the base class representing a hierarchical Set Decision Diagram.
Definition SDD.h:49

Please comment this page and report errors about it on the RefDocComments page.
Generated on Wed Apr 9 2025 15:27:42 for DDD by doxygen 1.9.8