General-Valued Constraint Satisfaction Problems #
General-Valued CSP is a very broad class of problems in discrete optimization. General-Valued CSP subsumes Min-Cost-Hom (including 3-SAT for example) and Finite-Valued CSP.
Main definitions #
ValuedCSP: A VCSP template; fixes a domain, a codomain, and allowed cost functions.ValuedCSP.Term: One summand in a VCSP instance; calls a concrete function from given template.ValuedCSP.Term.evalSolution: An evaluation of the VCSP term for given solution.ValuedCSP.Instance: An instance of a VCSP problem over given template.ValuedCSP.Instance.evalSolution: An evaluation of the VCSP instance for given solution.ValuedCSP.Instance.IsOptimumSolution: Is given solution a minimum of the VCSP instance?Function.HasMaxCutProperty: Can given binary function express the Max-Cut problem?FractionalOperation: Multiset of operations on given domain of the same arity.FractionalOperation.IsSymmetricFractionalPolymorphismFor: Is given fractional operation a symmetric fractional polymorphism for given VCSP template?
References #
- [D. A. Cohen, M. C. Cooper, P. Creed, P. G. Jeavons, S. Ε½ivnΓ½, An Algebraic Theory of Complexity for Discrete Optimisation][cohen2012]
A template for a valued CSP problem over a domain D with costs in C.
Regarding C we want to support Bool, Nat, ENat, Int, Rat, NNRat,
Real, NNReal, EReal, ENNReal, and tuples made of any of those types.
Instances For
A term in a valued CSP instance over the template Ξ.
- n : β
Arity of the function
- f : (Fin self.n β D) β C
Which cost function is instantiated
The cost function comes from the template
- app : Fin self.n β ΞΉ
Which variables are plugged as arguments to the cost function
Instances For
Evaluation of a Ξ term t for given solution x.
Instances For
A valued CSP instance over the template Ξ with variables indexed by ΞΉ.
Instances For
Evaluation of a Ξ instance I for given solution x.
Instances For
Condition for x being an optimum solution (min) to given Ξ instance I.
Instances For
Function f has Max-Cut property at labels a and b when argmin f is exactly
{ ![a, b], ![b, a] }.
Instances For
Function f has Max-Cut property at some two non-identical labels.
Instances For
Fractional operation is a finite unordered collection of D^m β D possibly with duplicates.
Instances For
Arity of the "output" of the fractional operation.
Instances For
Fractional operation is valid iff nonempty.
Instances For
Valid fractional operation contains an operation.
Fractional operation applied to a transposed table of values.
Instances For
Cost function admits given fractional operation, i.e., Ο improves f in the β€ sense.
Instances For
Fractional operation is a fractional polymorphism for given VCSP template.
Instances For
Fractional operation is symmetric.
Instances For
Fractional operation is a symmetric fractional polymorphism for given VCSP template.