Module rules

Module rules 

Source
Expand description

Reduction rules between NP-hard problems.

Re-exports§

pub use cost::CustomCost;
pub use cost::Minimize;
pub use cost::MinimizeLexicographic;
pub use cost::MinimizeMax;
pub use cost::MinimizeSteps;
pub use cost::MinimizeWeighted;
pub use cost::PathCostFn;
pub use registry::ReductionEntry;
pub use registry::ReductionOverhead;

Modules§

cost
Cost functions for reduction path optimization.
registry
Automatic reduction registration via inventory.

Structs§

BoolVar
A literal in the SAT problem, representing a variable or its negation.
EdgeJson
An edge in the reduction graph JSON.
LogicGadget
A logic gadget represented as a SpinGlass problem.
NodeJson
A node in the reduction graph JSON.
ReductionCircuitToSG
Result of reducing CircuitSAT to SpinGlass.
ReductionEdge
Edge data for a reduction.
ReductionFactoringToCircuit
Result of reducing Factoring to CircuitSAT.
ReductionGraph
Runtime graph of all registered reductions.
ReductionGraphJson
JSON-serializable representation of the reduction graph.
ReductionISToSP
Result of reducing IndependentSet to SetPacking.
ReductionISToVC
Result of reducing IndependentSet to VertexCovering.
ReductionKSATToSAT
Result of reducing K-SAT to general SAT.
ReductionMatchingToSP
Result of reducing Matching to SetPacking.
ReductionMaxCutToSG
Result of reducing MaxCut to SpinGlass.
ReductionPath
A path through the reduction graph.
ReductionQUBOToSG
Result of reducing QUBO to SpinGlass.
ReductionSATToColoring
Result of reducing Satisfiability to Coloring.
ReductionSATToDS
Result of reducing Satisfiability to DominatingSet.
ReductionSATToIS
Result of reducing Satisfiability to IndependentSet.
ReductionSATToKSAT
Result of reducing general SAT to K-SAT.
ReductionSGToMaxCut
Result of reducing SpinGlass to MaxCut.
ReductionSGToQUBO
Result of reducing SpinGlass to QUBO.
ReductionSPToIS
Result of reducing SetPacking to IndependentSet.
ReductionVCToIS
Result of reducing VertexCovering to IndependentSet.
ReductionVCToSC
Result of reducing VertexCovering to SetCovering.

Traits§

ReduceTo
Trait for problems that can be reduced to target type T.
ReductionResult
Result of reducing a source problem to a target problem.

Functions§

and_gadget
Create an AND gate gadget.
not_gadget
Create a NOT gate gadget.
or_gadget
Create an OR gate gadget.
set0_gadget
Create a SET0 gadget (constant false).
set1_gadget
Create a SET1 gadget (constant true).
xor_gadget
Create an XOR gate gadget.