Public Member Functions | Public Attributes
Clasp::ModelEnumerator::BacktrackFinder Class Reference
Inheritance diagram for Clasp::ModelEnumerator::BacktrackFinder:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 BacktrackFinder (Solver &s, MinimizeConstraint *min, VarVec *project, uint32 projOpts)
ConstraintcloneAttach (Solver &s)
 Returns a clone of this and adds necessary watches to the given solver.
void doCommitModel (Enumerator &ctx, Solver &s)
bool doUpdate (Solver &s)
bool hasModel () const
PropResult propagate (Solver &, Literal, uint32 &)
void reason (Solver &s, Literal p, LitVec &x)

Public Attributes

uint32 opts
LitVec solution

Detailed Description

Definition at line 138 of file model_enumerators.cpp.


Constructor & Destructor Documentation

Clasp::ModelEnumerator::BacktrackFinder::BacktrackFinder ( Solver s,
MinimizeConstraint min,
VarVec project,
uint32  projOpts 
) [inline]

Definition at line 140 of file model_enumerators.cpp.


Member Function Documentation

Returns a clone of this and adds necessary watches to the given solver.

The function shall create and return a copy of this constraint to be used in the given solver. Furthermore, it shall add necessary watches to the given solver.

Note:
Return 0 to indicate that cloning is not supported.

Implements Clasp::Constraint.

Definition at line 147 of file model_enumerators.cpp.

Reimplemented from Clasp::EnumerationConstraint.

Definition at line 210 of file model_enumerators.cpp.

Implements Clasp::EnumerationConstraint.

Definition at line 170 of file model_enumerators.cpp.

Definition at line 141 of file model_enumerators.cpp.

Propagate is called for each constraint that watches p. It shall enqueue all consequences of p becoming true.

Precondition:
p is true in s
Parameters:
sThe solver in which p became true.
pA literal watched by this constraint that recently became true.
dataThe data-blob that this constraint passed when the watch for p was registered.

Reimplemented from Clasp::EnumerationConstraint.

Definition at line 158 of file model_enumerators.cpp.

void Clasp::ModelEnumerator::BacktrackFinder::reason ( Solver s,
Literal  p,
LitVec lits 
) [inline, virtual]
Precondition:
This constraint is the reason for p being true in s.
Postcondition:
The literals implying p were added to lits.

Reimplemented from Clasp::EnumerationConstraint.

Definition at line 149 of file model_enumerators.cpp.


Member Data Documentation

Definition at line 155 of file model_enumerators.cpp.

Definition at line 154 of file model_enumerators.cpp.


The documentation for this class was generated from the following file:


clasp
Author(s): Benjamin Kaufmann
autogenerated on Thu Aug 27 2015 12:41:41