6 #include "inc_solver.h"
7 #include "constraint.h"
14 #include "satelemencoder.h"
15 #include "satorderencoder.h"
16 #include "satfunctableencoder.h"
18 SATEncoder *allocSATEncoder();
19 void deleteSATEncoder(SATEncoder *This);
20 void encodeAllSATEncoder(CSolver *csolver, SATEncoder *This);
21 Edge getNewVarSATEncoder(SATEncoder *This);
22 void getArrayNewVarsSATEncoder(SATEncoder *encoder, uint num, Edge *carray);
23 Edge encodeConstraintSATEncoder(SATEncoder *This, Boolean *constraint);
24 Edge encodeVarSATEncoder(SATEncoder *This, BooleanVar *constraint);
25 Edge encodeLogicSATEncoder(SATEncoder *This, BooleanLogic *constraint);
26 Edge encodePredicateSATEncoder(SATEncoder *This, BooleanPredicate *constraint);
27 Edge encodeTablePredicateSATEncoder(SATEncoder *This, BooleanPredicate *constraint);
31 void encodeElementSATEncoder(SATEncoder *encoder, Element *This);
32 void encodeElementFunctionSATEncoder(SATEncoder *encoder, ElementFunction *This);
33 void encodeTableElementFunctionSATEncoder(SATEncoder *encoder, ElementFunction *This);