Skip to main content

ReduceTo

Trait ReduceTo 

Source
pub trait ReduceTo<T: Problem>: Problem {
    type Result: ReductionResult<Source = Self, Target = T>;

    // Required method
    fn reduce_to(&self) -> Self::Result;
}
Expand description

Trait for problems that can be reduced to target type T.

§Example

// Example showing reduction workflow
use problemreductions::prelude::*;
use problemreductions::rules::ReduceTo;

let sat_problem: Satisfiability = Satisfiability::new(
    3,  // 3 variables
    vec![
        CNFClause::new(vec![0, 1]),     // (x0 OR x1)
        CNFClause::new(vec![1, 2]),     // (x1 OR x2)
    ]
);

// Reduce to Independent Set
let reduction = sat_problem.reduce_to();
let is_problem = reduction.target_problem();

// Solve and extract solutions
let solver = BruteForce::new();
let solutions = solver.find_all_witnesses(is_problem);
let sat_solutions: Vec<_> = solutions.iter()
    .map(|s| reduction.extract_solution(s))
    .collect();

Required Associated Types§

Source

type Result: ReductionResult<Source = Self, Target = T>

The reduction result type.

Required Methods§

Source

fn reduce_to(&self) -> Self::Result

Reduce this problem to the target problem type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl ReduceTo<AlgebraicEquationsOverGF2> for ExactCoverBy3Sets

Source§

type Result = ReductionX3CToAlgebraicEquationsOverGF2

Source§

impl ReduceTo<BMF> for BicliqueCover

Source§

type Result = ReductionBicliqueCoverToBMF

Source§

impl ReduceTo<ClosestVectorProblem<i32>> for SubsetSum

Source§

type Result = ReductionSubsetSumToClosestVectorProblem

Source§

impl ReduceTo<ILP> for BMF

Source§

type Result = ReductionBMFToILP

Source§

impl ReduceTo<ILP> for ConsecutiveBlockMinimization

Source§

type Result = ReductionCBMToILP

Source§

impl ReduceTo<ILP> for ConsecutiveOnesMatrixAugmentation

Source§

type Result = ReductionCOMAToILP

Source§

impl ReduceTo<ILP> for ConsecutiveOnesSubmatrix

Source§

type Result = ReductionCOSToILP

Source§

impl ReduceTo<ILP> for ILP<i32>

Source§

type Result = ReductionIntILPToBinaryILP

Source§

impl ReduceTo<ILP> for MinimumMatrixCover

Source§

type Result = ReductionMinimumMatrixCoverToILP

Source§

impl ReduceTo<ILP> for QUBO<f64>

Source§

type Result = ReductionQUBOToILP

Source§

impl ReduceTo<ILP> for QuadraticAssignment

Source§

type Result = ReductionQAPToILP

Source§

impl ReduceTo<ILP> for SparseMatrixCompression

Source§

type Result = ReductionSMCToILP

Source§

impl ReduceTo<ILP> for CircuitSAT

Source§

type Result = ReductionCircuitToILP

Source§

impl ReduceTo<ILP> for Maximum2Satisfiability

Source§

type Result = ReductionMaximum2SatisfiabilityToILP

Source§

impl ReduceTo<ILP> for NAESatisfiability

Source§

type Result = ReductionNAESATToILP

Source§

impl ReduceTo<ILP> for BalancedCompleteBipartiteSubgraph

Source§

type Result = ReductionBCBSToILP

Source§

impl ReduceTo<ILP> for DirectedHamiltonianPath

Source§

type Result = ReductionDirectedHamiltonianPathToILP

Source§

impl ReduceTo<ILP> for DisjointConnectingPaths<SimpleGraph>

Source§

type Result = ReductionDCPToILP

Source§

impl ReduceTo<ILP> for GraphPartitioning<SimpleGraph>

Source§

type Result = ReductionGraphPartitioningToILP

Source§

impl ReduceTo<ILP> for HamiltonianPath<SimpleGraph>

Source§

type Result = ReductionHamiltonianPathToILP

Source§

impl ReduceTo<ILP> for IsomorphicSpanningTree<SimpleGraph>

Source§

type Result = ReductionISTToILP

Source§

impl ReduceTo<ILP> for KClique<SimpleGraph>

Source§

type Result = ReductionKCliqueToILP

Source§

impl ReduceTo<ILP> for KColoring<K1, SimpleGraph>

Source§

type Result = ReductionKColoringToILP<K1, SimpleGraph>

Source§

impl ReduceTo<ILP> for KColoring<K2, SimpleGraph>

Source§

type Result = ReductionKColoringToILP<K2, SimpleGraph>

Source§

impl ReduceTo<ILP> for KColoring<K3, SimpleGraph>

Source§

type Result = ReductionKColoringToILP<K3, SimpleGraph>

Source§

impl ReduceTo<ILP> for KColoring<K4, SimpleGraph>

Source§

type Result = ReductionKColoringToILP<K4, SimpleGraph>

Source§

impl ReduceTo<ILP> for KColoring<KN, SimpleGraph>

Source§

type Result = ReductionKColoringToILP<KN, SimpleGraph>

Source§

impl ReduceTo<ILP> for LengthBoundedDisjointPaths<SimpleGraph>

Source§

type Result = ReductionLBDPToILP

Source§

impl ReduceTo<ILP> for LongestCircuit<SimpleGraph, i32>

Source§

type Result = ReductionLongestCircuitToILP

Source§

impl ReduceTo<ILP> for MaximalIS<SimpleGraph, i32>

Source§

type Result = ReductionMxISToILP

Source§

impl ReduceTo<ILP> for MaximumClique<SimpleGraph, i32>

Source§

type Result = ReductionCliqueToILP

Source§

impl ReduceTo<ILP> for MaximumDomaticNumber<SimpleGraph>

Source§

type Result = ReductionDomaticNumberToILP

Source§

impl ReduceTo<ILP> for MaximumMatching<SimpleGraph, i32>

Source§

type Result = ReductionMatchingToILP

Source§

impl ReduceTo<ILP> for MinimumCoveringByCliques<SimpleGraph>

Source§

type Result = ReductionMinimumCoveringByCliquesToILP

Source§

impl ReduceTo<ILP> for MinimumCutIntoBoundedSets<SimpleGraph, i32>

Source§

type Result = ReductionMinCutBSToILP

Source§

impl ReduceTo<ILP> for MinimumDominatingSet<SimpleGraph, i32>

Source§

type Result = ReductionDSToILP

Source§

impl ReduceTo<ILP> for MinimumMaximalMatching<SimpleGraph>

Source§

type Result = ReductionMMMToILP

Source§

impl ReduceTo<ILP> for MinimumMetricDimension<SimpleGraph>

Source§

type Result = ReductionMDToILP

Source§

impl ReduceTo<ILP> for MinimumMultiwayCut<SimpleGraph, i32>

Source§

type Result = ReductionMMCToILP

Source§

impl ReduceTo<ILP> for MinimumSumMulticenter<SimpleGraph, i32>

Source§

type Result = ReductionMSMCToILP

Source§

impl ReduceTo<ILP> for MonochromaticTriangle<SimpleGraph>

Source§

type Result = ReductionMonochromaticTriangleToILP

Source§

impl ReduceTo<ILP> for MultipleCopyFileAllocation

Source§

type Result = ReductionMCFAToILP

Source§

impl ReduceTo<ILP> for PartitionIntoPathsOfLength2<SimpleGraph>

Source§

type Result = ReductionPIPL2ToILP

Source§

impl ReduceTo<ILP> for PartitionIntoTriangles<SimpleGraph>

Source§

type Result = ReductionPITToILP

Source§

impl ReduceTo<ILP> for SteinerTree<SimpleGraph, i32>

Source§

type Result = ReductionSteinerTreeToILP

Source§

impl ReduceTo<ILP> for SteinerTreeInGraphs<SimpleGraph, i32>

Source§

type Result = ReductionSTIGToILP

Source§

impl ReduceTo<ILP> for SubgraphIsomorphism

Source§

type Result = ReductionSubIsoToILP

Source§

impl ReduceTo<ILP> for TravelingSalesman<SimpleGraph, i32>

Source§

type Result = ReductionTSPToILP

Source§

impl ReduceTo<ILP> for BinPacking<i32>

Source§

type Result = ReductionBPToILP

Source§

impl ReduceTo<ILP> for CapacityAssignment

Source§

type Result = ReductionCAToILP

Source§

impl ReduceTo<ILP> for Clustering

Source§

type Result = ReductionClusteringToILP

Source§

impl ReduceTo<ILP> for ConsistencyOfDatabaseFrequencyTables

Source§

type Result = ReductionCDFTToILP

Source§

impl ReduceTo<ILP> for ExpectedRetrievalCost

Source§

type Result = ReductionERCToILP

Source§

impl ReduceTo<ILP> for Knapsack

Source§

type Result = ReductionKnapsackToILP

Source§

impl ReduceTo<ILP> for LongestCommonSubsequence

Source§

type Result = ReductionLCSToILP

Source§

impl ReduceTo<ILP> for MaximumLikelihoodRanking

Source§

type Result = ReductionMaximumLikelihoodRankingToILP

Source§

impl ReduceTo<ILP> for MinimumExternalMacroDataCompression

Source§

type Result = ReductionEMDCToILP

Source§

impl ReduceTo<ILP> for MinimumFaultDetectionTestSet

Source§

type Result = ReductionMFDTSToILP

Source§

impl ReduceTo<ILP> for MinimumInternalMacroDataCompression

Source§

type Result = ReductionIMDCToILP

Source§

impl ReduceTo<ILP> for MinimumTardinessSequencing<i32>

Source§

type Result = ReductionMTSWeightedToILP

Source§

impl ReduceTo<ILP> for MinimumTardinessSequencing<One>

Source§

type Result = ReductionMTSToILP

Source§

impl ReduceTo<ILP> for MultiprocessorScheduling

Source§

type Result = ReductionMSToILP

Source§

impl ReduceTo<ILP> for NumericalMatchingWithTargetSums

Source§

type Result = ReductionNMTSToILP

Source§

impl ReduceTo<ILP> for OptimumCommunicationSpanningTree

Source§

type Result = ReductionOptimumCommunicationSpanningTreeToILP

Source§

impl ReduceTo<ILP> for PaintShop

Source§

type Result = ReductionPaintShopToILP

Source§

impl ReduceTo<ILP> for PartiallyOrderedKnapsack

Source§

type Result = ReductionPOKToILP

Source§

impl ReduceTo<ILP> for PrecedenceConstrainedScheduling

Source§

type Result = ReductionPCSToILP

Source§

impl ReduceTo<ILP> for RectilinearPictureCompression

Source§

type Result = ReductionRPCToILP

Source§

impl ReduceTo<ILP> for ResourceConstrainedScheduling

Source§

type Result = ReductionRCSToILP

Source§

impl ReduceTo<ILP> for SchedulingWithIndividualDeadlines

Source§

type Result = ReductionSWIDToILP

Source§

impl ReduceTo<ILP> for SequencingToMinimizeTardyTaskWeight

Source§

type Result = ReductionSTMTTWToILP

Source§

impl ReduceTo<ILP> for SequencingWithDeadlinesAndSetUpTimes

Source§

type Result = ReductionSWDSTToILP

Source§

impl ReduceTo<ILP> for SequencingWithReleaseTimesAndDeadlines

Source§

type Result = ReductionSWRTDToILP

Source§

impl ReduceTo<ILP> for SequencingWithinIntervals

Source§

type Result = ReductionSWIToILP

Source§

impl ReduceTo<ILP> for ShortestCommonSupersequence

Source§

type Result = ReductionSCSToILP

Source§

impl ReduceTo<ILP> for StackerCrane

Source§

type Result = ReductionSCToILP

Source§

impl ReduceTo<ILP> for StringToStringCorrection

Source§

type Result = ReductionSTSCToILP

Source§

impl ReduceTo<ILP> for SumOfSquaresPartition

Source§

type Result = ReductionSSPToILP

Source§

impl ReduceTo<ILP> for TimetableDesign

Source§

type Result = ReductionTDToILP

Source§

impl ReduceTo<ILP> for ExactCoverBy3Sets

Source§

type Result = ReductionX3CToILP

Source§

impl ReduceTo<ILP> for MaximumSetPacking<i32>

Source§

type Result = ReductionSPToILP

Source§

impl ReduceTo<ILP> for MinimumHittingSet

Source§

type Result = ReductionHSToILP

Source§

impl ReduceTo<ILP> for MinimumSetCovering<i32>

Source§

type Result = ReductionSCToILP

Source§

impl ReduceTo<ILP> for SetSplitting

Source§

type Result = ReductionSetSplittingToILP

Source§

impl ReduceTo<ILP> for ThreeDimensionalMatching

Source§

type Result = ReductionThreeDimensionalMatchingToILP

Source§

impl ReduceTo<ILP<i32>> for ILP<bool>

Source§

type Result = ReductionBinaryILPToIntILP

Source§

impl ReduceTo<ILP<i32>> for MinimumWeightDecoding

Source§

type Result = ReductionMinimumWeightDecodingToILP

Source§

impl ReduceTo<ILP<i32>> for AcyclicPartition<i32>

Source§

type Result = ReductionAcyclicPartitionToILP

Source§

impl ReduceTo<ILP<i32>> for BiconnectivityAugmentation<SimpleGraph, i32>

Source§

type Result = ReductionBiconnAugToILP

Source§

impl ReduceTo<ILP<i32>> for BottleneckTravelingSalesman

Source§

type Result = ReductionBTSPToILP

Source§

impl ReduceTo<ILP<i32>> for BoundedComponentSpanningForest<SimpleGraph, i32>

Source§

type Result = ReductionBCSFToILP

Source§

impl ReduceTo<ILP<i32>> for DirectedTwoCommodityIntegralFlow

Source§

type Result = ReductionD2CIFToILP

Source§

impl ReduceTo<ILP<i32>> for IntegralFlowBundles

Source§

type Result = ReductionIFBToILP

Source§

impl ReduceTo<ILP<i32>> for IntegralFlowHomologousArcs

Source§

type Result = ReductionIFHAToILP

Source§

impl ReduceTo<ILP<i32>> for IntegralFlowWithMultipliers

Source§

type Result = ReductionIFWMToILP

Source§

impl ReduceTo<ILP<i32>> for LongestPath<SimpleGraph, i32>

Source§

type Result = ReductionLongestPathToILP

Source§

impl ReduceTo<ILP<i32>> for MaximumLeafSpanningTree<SimpleGraph>

Source§

type Result = ReductionMaximumLeafSpanningTreeToILP

Source§

impl ReduceTo<ILP<i32>> for MinMaxMulticenter<SimpleGraph, i32>

Source§

type Result = ReductionMMCToILP

Source§

impl ReduceTo<ILP<i32>> for MinimumCapacitatedSpanningTree<SimpleGraph, i32>

Source§

type Result = ReductionMinimumCapacitatedSpanningTreeToILP

Source§

impl ReduceTo<ILP<i32>> for MinimumEdgeCostFlow

Source§

type Result = ReductionMECFToILP

Source§

impl ReduceTo<ILP<i32>> for MinimumFeedbackArcSet<i32>

Source§

type Result = ReductionFASToILP

Source§

impl ReduceTo<ILP<i32>> for MinimumFeedbackVertexSet<i32>

Source§

type Result = ReductionMFVSToILP

Source§

impl ReduceTo<ILP<i32>> for MinimumGraphBandwidth<SimpleGraph>

Source§

type Result = ReductionMGBToILP

Source§

impl ReduceTo<ILP<i32>> for MixedChinesePostman<i32>

Source§

type Result = ReductionMCPToILP

Source§

impl ReduceTo<ILP<i32>> for OptimalLinearArrangement<SimpleGraph>

Source§

type Result = ReductionOLAToILP

Source§

impl ReduceTo<ILP<i32>> for PathConstrainedNetworkFlow

Source§

type Result = ReductionPCNFToILP

Source§

impl ReduceTo<ILP<i32>> for RuralPostman<SimpleGraph, i32>

Source§

type Result = ReductionRPToILP

Source§

impl ReduceTo<ILP<i32>> for ShortestWeightConstrainedPath<SimpleGraph, i32>

Source§

type Result = ReductionSWCPToILP

Source§

impl ReduceTo<ILP<i32>> for StrongConnectivityAugmentation<i32>

Source§

type Result = ReductionSCAToILP

Source§

impl ReduceTo<ILP<i32>> for UndirectedFlowLowerBounds

Source§

type Result = ReductionUFLBToILP

Source§

impl ReduceTo<ILP<i32>> for UndirectedTwoCommodityIntegralFlow

Source§

type Result = ReductionU2CIFToILP

Source§

impl ReduceTo<ILP<i32>> for Factoring

Source§

type Result = ReductionFactoringToILP

Source§

impl ReduceTo<ILP<i32>> for FeasibleRegisterAssignment

Source§

type Result = ReductionFeasibleRegisterAssignmentToILP

Source§

impl ReduceTo<ILP<i32>> for FlowShopScheduling

Source§

type Result = ReductionFSSToILP

Source§

impl ReduceTo<ILP<i32>> for OpenShopScheduling

Source§

type Result = ReductionOSSToILP

Source§

impl ReduceTo<ILP<i32>> for PreemptiveScheduling

Source§

type Result = ReductionPSToILP

Source§

impl ReduceTo<ILP<i32>> for RegisterSufficiency

Source§

type Result = ReductionRegisterSufficiencyToILP

Source§

impl ReduceTo<ILP<i32>> for SchedulingToMinimizeWeightedCompletionTime

Source§

type Result = ReductionSMWCTToILP

Source§

impl ReduceTo<ILP<i32>> for SequencingToMinimizeMaximumCumulativeCost

Source§

type Result = ReductionSTMMCCToILP

Source§

impl ReduceTo<ILP<i32>> for SequencingToMinimizeWeightedCompletionTime

Source§

type Result = ReductionSTMWCTToILP

Source§

impl ReduceTo<ILP<i32>> for SequencingToMinimizeWeightedTardiness

Source§

type Result = ReductionSTMWTToILP

Source§

impl ReduceTo<ILP<i32>> for IntegerKnapsack

Source§

type Result = ReductionIntegerKnapsackToILP

Source§

impl ReduceTo<ILP<i32>> for RootedTreeStorageAssignment

Source§

type Result = ReductionRTSAToILP

Source§

impl ReduceTo<QUBO> for ClosestVectorProblem<i32>

Source§

type Result = ReductionCVPToQUBO

Source§

impl ReduceTo<QUBO> for ILP<bool>

Source§

type Result = ReductionILPToQUBO

Source§

impl ReduceTo<QUBO> for KSatisfiability<K2>

Source§

type Result = ReductionKSatToQUBO

Source§

impl ReduceTo<QUBO> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToQUBO

Source§

impl ReduceTo<QUBO> for GraphPartitioning<SimpleGraph>

Source§

type Result = ReductionGraphPartitioningToQUBO

Source§

impl ReduceTo<QUBO> for KColoring<K2, SimpleGraph>

Source§

type Result = ReductionKColoringToQUBO<K2>

Source§

impl ReduceTo<QUBO> for KColoring<K3, SimpleGraph>

Source§

type Result = ReductionKColoringToQUBO<K3>

Source§

impl ReduceTo<QUBO> for KColoring<KN, SimpleGraph>

Source§

type Result = ReductionKColoringToQUBO<KN>

Source§

impl ReduceTo<QUBO> for MinimumMultiwayCut<SimpleGraph, i32>

Source§

type Result = ReductionMinimumMultiwayCutToQUBO

Source§

impl ReduceTo<QUBO> for SpinGlass<SimpleGraph, f64>

Source§

type Result = ReductionSGToQUBO

Source§

impl ReduceTo<QUBO> for TravelingSalesman<SimpleGraph, i32>

Source§

type Result = ReductionTravelingSalesmanToQUBO

Source§

impl ReduceTo<QUBO> for Knapsack

Source§

type Result = ReductionKnapsackToQUBO

Source§

impl ReduceTo<QUBO> for PaintShop

Source§

type Result = ReductionPaintShopToQUBO

Source§

impl ReduceTo<QUBO> for MaximumSetPacking<f64>

Source§

type Result = ReductionSPToQUBO

Source§

impl ReduceTo<QuadraticAssignment> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToQuadraticAssignment

Source§

impl ReduceTo<QuadraticCongruences> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToQuadraticCongruences

Source§

impl ReduceTo<QuadraticDiophantineEquations> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToQuadraticDiophantineEquations

Source§

impl ReduceTo<SimultaneousIncongruences> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToSimultaneousIncongruences

Source§

impl ReduceTo<Decision<MinimumVertexCover<SimpleGraph, i32>>> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToDecisionMVC

Source§

impl ReduceTo<CircuitSAT> for Satisfiability

Source§

type Result = ReductionSATToCircuit

Source§

impl ReduceTo<CircuitSAT> for Factoring

Source§

type Result = ReductionFactoringToCircuit

Source§

impl ReduceTo<KSatisfiability<K3>> for Satisfiability

Source§

type Result = ReductionSATToKSAT<K3>

Source§

impl ReduceTo<KSatisfiability<KN>> for KSatisfiability<K2>

Source§

impl ReduceTo<KSatisfiability<KN>> for KSatisfiability<K3>

Source§

impl ReduceTo<Maximum2Satisfiability> for Satisfiability

Source§

type Result = ReductionSatisfiabilityToMaximum2Satisfiability

Source§

impl ReduceTo<NAESatisfiability> for Satisfiability

Source§

type Result = ReductionSATToNAESAT

Source§

impl ReduceTo<NonTautology> for Satisfiability

Source§

type Result = ReductionSATToNonTautology

Source§

impl ReduceTo<OneInThreeSatisfiability> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToOneInThreeSAT

Source§

impl ReduceTo<Satisfiability> for CircuitSAT

Source§

type Result = ReductionCircuitSATToSAT

Source§

impl ReduceTo<Satisfiability> for KSatisfiability<K2>

Source§

type Result = ReductionKSATToSAT<K2>

Source§

impl ReduceTo<Satisfiability> for KSatisfiability<K3>

Source§

type Result = ReductionKSATToSAT<K3>

Source§

impl ReduceTo<Satisfiability> for KSatisfiability<KN>

Source§

type Result = ReductionKSATToSAT<KN>

Source§

impl ReduceTo<AcyclicPartition<i32>> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToAcyclicPartition

Source§

impl ReduceTo<BalancedCompleteBipartiteSubgraph> for KClique<SimpleGraph>

Source§

type Result = ReductionKCliqueToBCBS

Source§

impl ReduceTo<BicliqueCover> for BMF

Source§

type Result = ReductionBMFToBicliqueCover

Source§

impl ReduceTo<BiconnectivityAugmentation<SimpleGraph, i32>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToBiconnectivityAugmentation

Source§

impl ReduceTo<BottleneckTravelingSalesman> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToBottleneckTravelingSalesman

Source§

impl ReduceTo<BoundedComponentSpanningForest<SimpleGraph, i32>> for PartitionIntoPathsOfLength2<SimpleGraph>

Source§

type Result = ReductionPPL2ToBCSF

Source§

impl ReduceTo<DegreeConstrainedSpanningTree<SimpleGraph>> for HamiltonianPath<SimpleGraph>

Source§

type Result = ReductionHamiltonianPathToDegreeConstrainedSpanningTree

Source§

impl ReduceTo<DirectedTwoCommodityIntegralFlow> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToDirectedTwoCommodityIntegralFlow

Source§

impl ReduceTo<HamiltonianCircuit<SimpleGraph>> for Decision<MinimumVertexCover<SimpleGraph, i32>>

Source§

type Result = ReductionDecisionMinimumVertexCoverToHamiltonianCircuit

Source§

impl ReduceTo<HamiltonianPath<SimpleGraph>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToHamiltonianPath

Source§

impl ReduceTo<IntegralFlowBundles> for MaximumIndependentSet<SimpleGraph, i32>

Source§

type Result = ReductionMISToIFB

Source§

impl ReduceTo<IntegralFlowHomologousArcs> for Satisfiability

Source§

type Result = ReductionSATToIntegralFlowHomologousArcs

Source§

impl ReduceTo<IsomorphicSpanningTree<SimpleGraph>> for HamiltonianPath<SimpleGraph>

Source§

type Result = ReductionHPToIST

Source§

impl ReduceTo<KClique<SimpleGraph>> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToKClique

Source§

impl ReduceTo<KColoring<K3, SimpleGraph>> for Satisfiability

Source§

type Result = ReductionSATToColoring

Source§

impl ReduceTo<KColoring<KN, SimpleGraph>> for KColoring<K3, SimpleGraph>

Source§

impl ReduceTo<Kernel> for KSatisfiability<K3>

Source§

type Result = Reduction3SatToKernel

Source§

impl ReduceTo<LongestCircuit<SimpleGraph, i32>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToLongestCircuit

Source§

impl ReduceTo<LongestPath<SimpleGraph, One>> for HamiltonianPathBetweenTwoVertices<SimpleGraph>

Source§

type Result = ReductionHPBTVToLP

Source§

impl ReduceTo<MaxCut<SimpleGraph, i32>> for Maximum2Satisfiability

Source§

type Result = ReductionMaximum2SatisfiabilityToMaxCut

Source§

impl ReduceTo<MaxCut<SimpleGraph, i32>> for NAESatisfiability

Source§

type Result = ReductionNAESATToMaxCut

Source§

impl ReduceTo<MaxCut<SimpleGraph, i32>> for GraphPartitioning<SimpleGraph>

Source§

type Result = ReductionGPToMaxCut

Source§

impl ReduceTo<MaxCut<SimpleGraph, i32>> for SpinGlass<SimpleGraph, i32>

Source§

type Result = ReductionSGToMaxCut<i32>

Source§

impl ReduceTo<MaximumClique<SimpleGraph, i32>> for MaximumIndependentSet<SimpleGraph, i32>

Source§

type Result = ReductionISToClique<i32>

Source§

impl ReduceTo<MaximumClique<SimpleGraph, One>> for MaximumIndependentSet<SimpleGraph, One>

Source§

type Result = ReductionISToClique<One>

Source§

impl ReduceTo<MaximumIndependentSet<KingsSubgraph, i32>> for MaximumIndependentSet<KingsSubgraph, One>

Source§

impl ReduceTo<MaximumIndependentSet<KingsSubgraph, One>> for MaximumIndependentSet<SimpleGraph, One>

Source§

type Result = ReductionISSimpleOneToGridOne

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, i32>> for MaximumClique<SimpleGraph, i32>

Source§

type Result = ReductionCliqueToIS<i32>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, i32>> for MaximumIndependentSet<SimpleGraph, One>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, i32>> for MaximumIndependentSet<UnitDiskGraph, i32>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, i32>> for MinimumVertexCover<SimpleGraph, i32>

Source§

type Result = ReductionVCToIS<i32>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, i32>> for MaximumSetPacking<i32>

Source§

type Result = ReductionSPToIS<i32>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, One>> for Satisfiability

Source§

type Result = ReductionSATToIS

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, One>> for MaximumClique<SimpleGraph, One>

Source§

type Result = ReductionCliqueToIS<One>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, One>> for MaximumIndependentSet<UnitDiskGraph, One>

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, One>> for LongestCommonSubsequence

Source§

type Result = ReductionLCSToIS

Source§

impl ReduceTo<MaximumIndependentSet<SimpleGraph, One>> for MaximumSetPacking<One>

Source§

type Result = ReductionSPToIS<One>

Source§

impl ReduceTo<MaximumIndependentSet<TriangularSubgraph, i32>> for MaximumIndependentSet<SimpleGraph, One>

Source§

type Result = ReductionISSimpleToTriangular

Source§

impl ReduceTo<MaximumIndependentSet<UnitDiskGraph, i32>> for MaximumIndependentSet<KingsSubgraph, i32>

Source§

impl ReduceTo<MaximumIndependentSet<UnitDiskGraph, i32>> for MaximumIndependentSet<TriangularSubgraph, i32>

Source§

impl ReduceTo<MaximumIndependentSet<UnitDiskGraph, i32>> for MaximumIndependentSet<UnitDiskGraph, One>

Source§

impl ReduceTo<MaximumIndependentSet<UnitDiskGraph, One>> for MaximumIndependentSet<KingsSubgraph, One>

Source§

impl ReduceTo<MinMaxMulticenter<SimpleGraph, One>> for Decision<MinimumDominatingSet<SimpleGraph, One>>

Source§

type Result = ReductionDecisionMinimumDominatingSetToMinMaxMulticenter

Source§

impl ReduceTo<MinimumCoveringByCliques<SimpleGraph>> for PartitionIntoCliques<SimpleGraph>

Source§

type Result = ReductionPartitionIntoCliquesToMinimumCoveringByCliques

Source§

impl ReduceTo<MinimumCutIntoBoundedSets<SimpleGraph, i32>> for MaxCut<SimpleGraph, i32>

Source§

type Result = ReductionMaxCutToMinCutBounded

Source§

impl ReduceTo<MinimumDominatingSet<SimpleGraph, i32>> for Satisfiability

Source§

type Result = ReductionSATToDS

Source§

impl ReduceTo<MinimumFeedbackArcSet<i32>> for MinimumVertexCover<SimpleGraph, i32>

Source§

type Result = ReductionVCToFAS

Source§

impl ReduceTo<MinimumFeedbackVertexSet<i32>> for MinimumVertexCover<SimpleGraph, i32>

Source§

type Result = ReductionVCToFVS<i32>

Source§

impl ReduceTo<MinimumSumMulticenter<SimpleGraph, i32>> for Decision<MinimumDominatingSet<SimpleGraph, One>>

Source§

type Result = ReductionDecisionMinimumDominatingSetToMinimumSumMulticenter

Source§

impl ReduceTo<MinimumVertexCover<SimpleGraph, i32>> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToMVC

Source§

impl ReduceTo<MinimumVertexCover<SimpleGraph, i32>> for MaximumIndependentSet<SimpleGraph, i32>

Source§

type Result = ReductionISToVC<i32>

Source§

impl ReduceTo<MonochromaticTriangle<SimpleGraph>> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToMonochromaticTriangle

Source§

impl ReduceTo<PartitionIntoCliques<SimpleGraph>> for KColoring<KN, SimpleGraph>

Source§

type Result = ReductionKColoringToPartitionIntoCliques

Source§

impl ReduceTo<PartitionIntoPerfectMatchings<SimpleGraph>> for NAESatisfiability

Source§

type Result = ReductionNAESATToPartitionIntoPerfectMatchings

Source§

impl ReduceTo<RuralPostman<SimpleGraph, i32>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToRuralPostman

Source§

impl ReduceTo<SpinGlass<SimpleGraph, f64>> for QUBO<f64>

Source§

type Result = ReductionQUBOToSG

Source§

impl ReduceTo<SpinGlass<SimpleGraph, f64>> for SpinGlass<SimpleGraph, i32>

Source§

impl ReduceTo<SpinGlass<SimpleGraph, i32>> for CircuitSAT

Source§

type Result = ReductionCircuitToSG

Source§

impl ReduceTo<SpinGlass<SimpleGraph, i32>> for MaxCut<SimpleGraph, i32>

Source§

type Result = ReductionMaxCutToSG<i32>

Source§

impl ReduceTo<StrongConnectivityAugmentation<i32>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToStrongConnectivityAugmentation

Source§

impl ReduceTo<SubgraphIsomorphism> for KClique<SimpleGraph>

Source§

type Result = ReductionKCliqueToSubIso

Source§

impl ReduceTo<TravelingSalesman<SimpleGraph, i32>> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToTravelingSalesman

Source§

impl ReduceTo<Betweenness> for SetSplitting

Source§

type Result = ReductionSetSplittingToBetweenness

Source§

impl ReduceTo<BinPacking<i32>> for Partition

Source§

type Result = ReductionPartitionToBinPacking

Source§

impl ReduceTo<Clustering> for KColoring<K3, SimpleGraph>

Source§

type Result = ReductionKColoringToClustering

Source§

impl ReduceTo<ConjunctiveBooleanQuery> for KClique<SimpleGraph>

Source§

type Result = ReductionKCliqueToCBQ

Source§

impl ReduceTo<CosineProductIntegration> for Partition

Source§

type Result = ReductionPartitionToCPI

Source§

impl ReduceTo<CyclicOrdering> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToCyclicOrdering

Source§

impl ReduceTo<EnsembleComputation> for MinimumVertexCover<SimpleGraph, One>

Source§

type Result = ReductionVCToEC

Source§

impl ReduceTo<FeasibleRegisterAssignment> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToFeasibleRegisterAssignment

Source§

impl ReduceTo<IntegerExpressionMembership> for SubsetSum

Source§

type Result = ReductionSubsetSumToIntegerExpressionMembership

Source§

impl ReduceTo<Knapsack> for Partition

Source§

type Result = ReductionPartitionToKnapsack

Source§

impl ReduceTo<LongestCommonSubsequence> for MinimumVertexCover<SimpleGraph, One>

Source§

type Result = ReductionVCToLCS

Source§

impl ReduceTo<MaximumLikelihoodRanking> for MinimumFeedbackArcSet<i32>

Source§

type Result = ReductionFASToMLR

Source§

impl ReduceTo<MinimumAxiomSet> for ExactCoverBy3Sets

Source§

type Result = ReductionXC3SToMinimumAxiomSet

Source§

impl ReduceTo<MinimumCodeGenerationUnlimitedRegisters> for MinimumFeedbackVertexSet<i32>

Source§

type Result = ReductionFVSToCodeGen

Source§

impl ReduceTo<MinimumFaultDetectionTestSet> for ExactCoverBy3Sets

Source§

type Result = ReductionXC3SToMinimumFaultDetectionTestSet

Source§

impl ReduceTo<MinimumWeightAndOrGraph> for MinimumVertexCover<SimpleGraph, i32>

Source§

type Result = ReductionVCToAndOrGraph

Source§

impl ReduceTo<MultiprocessorScheduling> for Partition

Source§

type Result = ReductionPartitionToMPS

Source§

impl ReduceTo<OpenShopScheduling> for Partition

Source§

type Result = ReductionPartitionToOpenShopScheduling

Source§

impl ReduceTo<Partition> for SubsetSum

Source§

type Result = ReductionSubsetSumToPartition

Source§

impl ReduceTo<PreemptiveScheduling> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToPreemptiveScheduling

Source§

impl ReduceTo<ProductionPlanning> for Partition

Source§

type Result = ReductionPartitionToProductionPlanning

Source§

impl ReduceTo<RegisterSufficiency> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToRegisterSufficiency

Source§

impl ReduceTo<ResourceConstrainedScheduling> for ThreePartition

Source§

type Result = ReductionThreePartitionToRCS

Source§

impl ReduceTo<SequencingToMinimizeTardyTaskWeight> for Partition

Source§

type Result = ReductionPartitionToSequencingToMinimizeTardyTaskWeight

Source§

impl ReduceTo<SequencingWithReleaseTimesAndDeadlines> for ThreePartition

Source§

type Result = ReductionThreePartitionToSRTD

Source§

impl ReduceTo<StackerCrane> for HamiltonianCircuit<SimpleGraph>

Source§

type Result = ReductionHamiltonianCircuitToStackerCrane

Source§

impl ReduceTo<StaffScheduling> for ExactCoverBy3Sets

Source§

type Result = ReductionXC3SToStaffScheduling

Source§

impl ReduceTo<SubsetProduct> for ExactCoverBy3Sets

Source§

type Result = ReductionX3CToSubsetProduct

Source§

impl ReduceTo<SubsetSum> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToSubsetSum

Source§

impl ReduceTo<SubsetSum> for Partition

Source§

type Result = ReductionPartitionToSubsetSum

Source§

impl ReduceTo<ThreePartition> for ThreeDimensionalMatching

Source§

type Result = ReductionThreeDimensionalMatchingToThreePartition

Source§

impl ReduceTo<TimetableDesign> for KSatisfiability<K3>

Source§

type Result = Reduction3SATToTimetableDesign

Source§

impl ReduceTo<MaximumSetPacking> for MaximumIndependentSet<SimpleGraph, i32>

Source§

type Result = ReductionISToSP<i32>

Source§

impl ReduceTo<MaximumSetPacking> for MaximumMatching<SimpleGraph, i32>

Source§

type Result = ReductionMatchingToSP<SimpleGraph, i32>

Source§

impl ReduceTo<MaximumSetPacking> for MaximumSetPacking<One>

Source§

impl ReduceTo<MaximumSetPacking<f64>> for MaximumSetPacking<i32>

Source§

impl ReduceTo<MaximumSetPacking<One>> for MaximumIndependentSet<SimpleGraph, One>

Source§

type Result = ReductionISToSP<One>

Source§

impl ReduceTo<MaximumSetPacking<One>> for ExactCoverBy3Sets

Source§

type Result = ReductionXC3SToMaximumSetPacking

Source§

impl ReduceTo<MinimumHittingSet> for MinimumVertexCover<SimpleGraph, One>

Source§

type Result = ReductionVCToHS

Source§

impl ReduceTo<MinimumSetCovering> for MinimumVertexCover<SimpleGraph, i32>

Source§

type Result = ReductionVCToSC<i32>

Source§

impl ReduceTo<RootedTreeStorageAssignment> for RootedTreeArrangement<SimpleGraph>

Source§

type Result = ReductionRootedTreeArrangementToRootedTreeStorageAssignment

Source§

impl ReduceTo<SetSplitting> for NAESatisfiability

Source§

type Result = ReductionNAESATToSetSplitting

Source§

impl ReduceTo<TwoDimensionalConsecutiveSets> for KColoring<K3, SimpleGraph>

Source§

type Result = ReductionKColoringToTDCS

Source§

impl<P> ReduceTo<P> for Decision<P>