Dominating Set is in NP #
The Σ₁ definition of DescriptiveComplexity.DominatingSet: guess the dominating set
and an injection of it into the marked set, then check first-order that every
vertex is dominated and that the injection is one.
The single existential block of the Σ₁ definition of Dominating Set: the
dominating set (unary) and an injection of it into the marked set (binary).
Equations
- DescriptiveComplexity.dominatingGuessBlock = { ι := Bool, ιFinite := Bool.instFinite, arity := fun (i : Bool) => bif i then 2 else 1 }
Instances For
Dependency graph
The symbol of the dominating-set relation variable.
Instances For
Dependency graph
The symbol of the injection relation variable.
Instances For
Dependency graph
The vocabulary of the kernel.
Equations
Instances For
Dependency graph
The adjacency symbol in the kernel's vocabulary.
Instances For
Dependency graph
The mark symbol in the kernel's vocabulary.
Instances For
Dependency graph
The dominating-set symbol in the kernel's vocabulary.
Instances For
Dependency graph
The injection symbol in the kernel's vocabulary.
Instances For
Dependency graph
The first-order kernel of the Σ₁ definition of Dominating Set.
Equations
Instances For
Dependency graph
Dominating Set is Σ₁-definable: existentially guess the dominating
set and an injection of it into the marked set, then check both first-order.
Since NP is defined as Σ₁-definability, this is the membership half of the
NP-completeness of Dominating Set.