pub enum Objective {
Satisfaction,
MaxSat,
MinUnsat,
}Expand description
The optimization objective for a SAT/MaxSAT instance.
This determines what the solver should optimize for:
Satisfaction: Find any satisfying assignment (standard SAT)MaxSat: Maximize the number/weight of satisfied clausesMinUnsat: Minimize the number/weight of unsatisfied clauses
Variants§
Satisfaction
Find any satisfying assignment (decision problem).
The solver returns SAT if an assignment exists that satisfies all clauses, or UNSAT if no such assignment exists.
MaxSat
Maximize the total weight of satisfied clauses (optimization).
For unweighted instances, this maximizes the count of satisfied clauses. The solver finds an assignment that maximizes the objective.
MinUnsat
Minimize the total weight of unsatisfied clauses (optimization).
This is equivalent to MaxSAT for complete solvers but may differ for incomplete/approximate solvers.
Trait Implementations§
impl Copy for Objective
impl Eq for Objective
impl StructuralPartialEq for Objective
Auto Trait Implementations§
impl Freeze for Objective
impl RefUnwindSafe for Objective
impl Send for Objective
impl Sync for Objective
impl Unpin for Objective
impl UnsafeUnpin for Objective
impl UnwindSafe for Objective
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more