#Dominating Set is parsimoniously #P-complete #
DescriptiveComplexity.sharpDominatingSet_sharpP_parsimoniousComplete, by a reduction
from #SAT (DescriptiveComplexity.sharpSat_parsimonious_sharpDominatingSet), order-free.
The reduction of DescriptiveComplexity.Problems.DominatingSet.Reduction, from Set
Cover, is not parsimonious, and cannot be made so by adjusting it: a dominating
set may hold element vertices, and a cover smaller than the threshold can be
padded with one. What a count of dominating sets of a given size needs is a
graph in which that size leaves no slack. Here:
- each variable
xof the formula has two literal vertices(lit true, x)and(lit false, x), adjacent, and two private vertices(priv b, x), each adjacent to the two literal vertices ofxand to nothing else; - each clause
chas a vertex(cl, c), adjacent to the literal vertices of its literals; - the threshold is the number of variables.
A private vertex is dominated from within the four vertices of its variable, so
a dominating set meets each such group, and at the threshold size it meets each
exactly once and holds nothing else. The one vertex of a group has to dominate
both private vertices, which are not adjacent: it is a literal vertex
(DescriptiveComplexity.SatToDom.dom_structure). So the dominating sets of the
threshold size are the assignments of the variables of the formula, and
dominating the clause vertices is satisfying the clauses
(DescriptiveComplexity.SatToDom.solEquiv).
Junk – a tagged element that is not a variable, or not a clause – has to be
dominated too, and is made adjacent to every literal vertex. That needs a
literal vertex in the set, which a formula with a clause provides; a formula
with no clause at all has one model, and is sent to the edgeless graph with
everything marked, which has one dominating set of the threshold size
(DescriptiveComplexity.SatToDom.NoCl).
Tags of the reduction.
- lit
(s : Bool)
: SDTag
The vertex of the literal of sign
sof a variable. - priv
(b : Bool)
: SDTag
One of the two private vertices of a variable.
- cl : SDTag
The vertex of a clause.
Instances For
Dependency graph
Equations
- One or more equations did not get rendered due to their size.
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq (DescriptiveComplexity.SatToDom.SDTag.lit s) (DescriptiveComplexity.SatToDom.SDTag.priv b) = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq (DescriptiveComplexity.SatToDom.SDTag.lit s) DescriptiveComplexity.SatToDom.SDTag.cl = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq (DescriptiveComplexity.SatToDom.SDTag.priv b) (DescriptiveComplexity.SatToDom.SDTag.lit s) = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq (DescriptiveComplexity.SatToDom.SDTag.priv b) DescriptiveComplexity.SatToDom.SDTag.cl = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq DescriptiveComplexity.SatToDom.SDTag.cl (DescriptiveComplexity.SatToDom.SDTag.lit s) = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq DescriptiveComplexity.SatToDom.SDTag.cl (DescriptiveComplexity.SatToDom.SDTag.priv b) = isFalse ⋯
- DescriptiveComplexity.SatToDom.instDecidableEqSDTag.decEq DescriptiveComplexity.SatToDom.SDTag.cl DescriptiveComplexity.SatToDom.SDTag.cl = isTrue ⋯
Instances For
Dependency graph
Dependency graph
Equations
- One or more equations did not get rendered due to their size.
Dependency graph
Dependency graph
The semantic side #
The formula has no clause at all.
Equations
Instances For
Dependency graph
The formulas and the interpretation #
DescriptiveComplexity.SatToDom.NoCl, as a formula.
Equations
Instances For
Dependency graph
DescriptiveComplexity.SatToDom.Target, as a formula.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
DescriptiveComplexity.SatToDom.LitDom, as a formula.
Equations
- One or more equations did not get rendered due to their size.
- DescriptiveComplexity.SatToDom.litDomF x✝³ x✝² x✝¹ x✝ = ⊥
Instances For
Dependency graph
The adjacency formulas of the interpretation, by tag.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The mark formulas of the interpretation, by tag.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The interpretation producing, from a CNF structure, the graph whose dominating sets of the threshold size are its models.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The points #
The vertex of tag t over the element x.
Instances For
Dependency graph
Characterization of the two relations #
The two sides of the bijection #
The dominating set of an assignment: the vertices of its true literals – or everything, when there is no clause.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
The assignment of a dominating set: the variables whose positive literal vertex it holds.
Equations
Instances For
Dependency graph
Correctness #
The dominating set of a model is one, of the threshold size.
Dependency graph
A dominating set of the threshold size is an assignment: it consists of literal vertices of variables, one per variable.
Dependency graph
The assignment of a dominating set of the threshold size is a model.
Dependency graph
A dominating set of the threshold size is the dominating set of its assignment.
Dependency graph
A model is the assignment of its dominating set.
Dependency graph
The dominating sets of the threshold size of the interpreted graph are the models of the CNF formula, bijectively.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
#SAT reduces parsimoniously to #Dominating Set, without an order.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Dependency graph
#Dominating Set is parsimoniously #P-hard.
Dependency graph
#Dominating Set is parsimoniously #P-complete, counting the dominating
sets of exactly the threshold size.
Registered in the Lax archive as
Lax280166.DominatingSetComplete.sharpDominatingSet_sharpP_parsimoniousComplete.
Dependency graph
SharpDominatingSet is #P-complete: parsimoniously, hence under subtractive
reductions.