public class SatFactory extends Object
Modifier and Type | Method and Description |
---|---|
static boolean |
addAtMostNMinusOne(BoolVar[] BOOLVARS)
Add a clause stating that: ∑ BOOLVARSi ≤ n-1
|
static boolean |
addAtMostOne(BoolVar[] BOOLVARS)
Add a clause stating that: ∑ BOOLVARSi ≤ 1
|
static boolean |
addBoolAndArrayEqualFalse(BoolVar[] BOOLVARS)
Add a clause stating that: BOOLVARS1∧BOOLVARS2∧...
|
static boolean |
addBoolAndArrayEqVar(BoolVar[] BOOLVARS,
BoolVar TARGET)
Add a clause stating that: (BOOLVARS1∧BOOLVARS2∧...
|
static boolean |
addBoolAndEqVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT ∧ RIGHT) ⇔ TARGET
|
static boolean |
addBoolEq(BoolVar LEFT,
BoolVar RIGHT)
Add a clause stating that: LEFT == RIGHT
|
static boolean |
addBoolIsEqVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT == RIGHT) ⇔ TARGET
|
static boolean |
addBoolIsLeVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT ≤ RIGHT) ⇔ TARGET
|
static boolean |
addBoolIsLtVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT < RIGHT) ⇔ TARGET
|
static boolean |
addBoolIsNeqVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT ≠ RIGHT) ⇔ TARGET
|
static boolean |
addBoolLe(BoolVar LEFT,
BoolVar RIGHT)
Add a clause stating that: LEFT ≤ RIGHT
|
static boolean |
addBoolLt(BoolVar LEFT,
BoolVar RIGHT)
Add a clause stating that: LEFT < RIGHT
|
static boolean |
addBoolNot(BoolVar LEFT,
BoolVar RIGHT)
Add a clause stating that: LEFT !
|
static boolean |
addBoolOrArrayEqualTrue(BoolVar[] BOOLVARS)
Add a clause stating that: BOOLVARS1∨BOOLVARS2∨...
|
static boolean |
addBoolOrArrayEqVar(BoolVar[] BOOLVARS,
BoolVar TARGET)
Add a clause stating that: (BOOLVARS1∨BOOLVARS2∨...
|
static boolean |
addBoolOrEqVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT ∨ RIGHT) ⇔ TARGET
|
static boolean |
addBoolXorEqVar(BoolVar LEFT,
BoolVar RIGHT,
BoolVar TARGET)
Add a clause stating that: (LEFT ⊕ RIGHT) ⇔ TARGET
|
static boolean |
addClauses(BoolVar[] POSLITS,
BoolVar[] NEGLITS)
Ensures that the clause defined by POSLITS and NEGLITS is satisfied.
|
static boolean |
addClauses(LogOp TREE,
Solver SOLVER)
Ensures that the clauses defined in the Boolean logic formula TREE are satisfied.
|
static boolean |
addFalse(BoolVar BOOLVAR)
Add a unit clause stating that BOOLVAR must be false
|
static boolean |
addMaxBoolArrayLessEqVar(BoolVar[] BOOLVARS,
BoolVar TARGET)
Add a clause stating that: max(BOOLVARSi) ≤ TARGET
|
static boolean |
addSumBoolArrayGreaterEqVar(BoolVar[] BOOLVARS,
BoolVar TARGET)
Add a clause stating that: sum(BOOLVARSi) ≥ TARGET
|
static boolean |
addSumBoolArrayLessEqVar(BoolVar[] BOOLVARS,
BoolVar TARGET)
Add a clause stating that: sum(BOOLVARSi) ≤ TARGET
|
static boolean |
addTrue(BoolVar BOOLVAR)
Add a unit clause stating that BOOLVAR must be true
|
public static boolean addClauses(LogOp TREE, Solver SOLVER)
TREE
- the syntactic treeSOLVER
- solver is required, as the TREE can be declared without any variablespublic static boolean addClauses(BoolVar[] POSLITS, BoolVar[] NEGLITS)
POSLITS
- positive literalsNEGLITS
- negative literalspublic static boolean addTrue(BoolVar BOOLVAR)
BOOLVAR
- a boolean variablepublic static boolean addFalse(BoolVar BOOLVAR)
BOOLVAR
- a boolean variablepublic static boolean addBoolEq(BoolVar LEFT, BoolVar RIGHT)
LEFT
- a boolean variableRIGHT
- another boolean variablepublic static boolean addBoolLe(BoolVar LEFT, BoolVar RIGHT)
LEFT
- a boolean variableRIGHT
- another boolean variablepublic static boolean addBoolLt(BoolVar LEFT, BoolVar RIGHT)
LEFT
- a boolean variableRIGHT
- another boolean variablepublic static boolean addBoolNot(BoolVar LEFT, BoolVar RIGHT)
LEFT
- a boolean variableRIGHT
- another boolean variablepublic static boolean addBoolOrArrayEqVar(BoolVar[] BOOLVARS, BoolVar TARGET)
BOOLVARS
- a list of boolean variablesTARGET
- the reified boolean variablepublic static boolean addBoolAndArrayEqVar(BoolVar[] BOOLVARS, BoolVar TARGET)
BOOLVARS
- a list of boolean variablesTARGET
- the reified boolean variablepublic static boolean addBoolOrEqVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolAndEqVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolXorEqVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolIsEqVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolIsNeqVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolIsLeVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolIsLtVar(BoolVar LEFT, BoolVar RIGHT, BoolVar TARGET)
LEFT
- a boolean variableRIGHT
- another boolean variableTARGET
- the reified boolean variablepublic static boolean addBoolOrArrayEqualTrue(BoolVar[] BOOLVARS)
BOOLVARS
- a list of boolean variablespublic static boolean addBoolAndArrayEqualFalse(BoolVar[] BOOLVARS)
BOOLVARS
- a list of boolean variablespublic static boolean addAtMostOne(BoolVar[] BOOLVARS)
BOOLVARS
- a list of boolean variablespublic static boolean addAtMostNMinusOne(BoolVar[] BOOLVARS)
BOOLVARS
- a list of boolean variablespublic static boolean addSumBoolArrayGreaterEqVar(BoolVar[] BOOLVARS, BoolVar TARGET)
BOOLVARS
- a list of boolean variablespublic static boolean addMaxBoolArrayLessEqVar(BoolVar[] BOOLVARS, BoolVar TARGET)
BOOLVARS
- a list of boolean variablesCopyright © 2015. All rights reserved.