[−][src]Module splr::processor
Crate processor
implements a simplifier: clause subsumption and var elimination.
- private module
eliminate
provides var elimination - private module
subsume
provides clause subsumption
Example
use splr::{processor::EliminateIF, solver::Solver, types::Export}; use std::convert::TryFrom; let mut s = Solver::try_from("tests/sample.cnf").expect("failed to load"); let Solver { ref mut asg, ref mut cdb, ref mut elim, ref mut state, .. } = s; elim.activate(); elim.simplify(asg, cdb, state).expect("panic"); assert_eq!(elim.exports().0, 1); assert!(0 < asg.num_eliminated_vars);
Structs
Eliminator | Literal eliminator |
LitOccurs | Mapping from Literal to Clauses. |
VarOccHeap | Var heap structure based on the number of occurrences |
Traits
EliminateIF | API for Eliminator like |
EliminatorStatIF | API for getting stats about Eliminator's internal data. |