Documentation

DescriptiveComplexity.Problems.DominatingSet.Reduction

Set Cover FO-reduces to Dominating Set #

The classical reduction – ground elements and sets become vertices, the sets form a clique, and a set is joined to its elements – with the two degenerate cases that make it delicate handled by gates rather than by a canonical extra vertex. The reduction is therefore order-free, which a condition ranging over every vertex would not lead one to expect.

The two gates, both first-order:

Outside those two cases every cover is nonempty – it has to cover something – which is exactly what the domination argument needs: a nonempty set of set-vertices dominates the whole clique, and with it every junk vertex, since the junk is made adjacent to all set-vertices. Junk cannot be ignored here: domination constrains every element of the universe, unlike the covering and packing conditions of the set family.

Formula builders over the vocabulary of set systems #

Dependency graph
Dependency graph
Dependency graph
Dependency graph
Dependency graph

Some ground element belongs to no set, as a formula.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Dependency graph
    Dependency graph
    Dependency graph
    @[simp]
    Dependency graph
    @[simp]
    Dependency graph
    @[simp]
    theorem DescriptiveComplexity.DomRed.realize_memF {A : Type} [FirstOrder.Language.setSystem.Structure A] {α : Type} {v : α → A} {x f : α} :
    (memF x f).Realize v ↔ SSMem (v x) (v f)
    Dependency graph
    @[simp]
    Dependency graph
    @[simp]
    theorem DescriptiveComplexity.DomRed.realize_eqF {A : Type} [FirstOrder.Language.setSystem.Structure A] {α : Type} {v : α → A} {x y : α} :
    (eqF x y).Realize v ↔ v x = v y
    Dependency graph

    Some ground element belongs to no set: the input is then a no-instance.

    Equations
    Instances For
      Dependency graph

      There is no ground element at all: the empty cover then works.

      Equations
      Instances For
        Dependency graph
        Dependency graph
        Dependency graph
        Dependency graph

        The interpretation #

        Tags of the reduction: the vertex of a ground element and the vertex of a set.

        • elt : DSTag

          The vertex of a ground element.

        • set : DSTag

          The vertex of a set of the family.

        Instances For
          Dependency graph
          Dependency graph
          @[instance_reducible]
          Equations
          • One or more equations did not get rendered due to their size.
          Dependency graph
          Dependency graph

          Defining formula for adjacency, before the gate: the sets form a clique, and a set is joined to its elements – and to every junk vertex.

          Equations
          Instances For
            Dependency graph

            The interpretation of Dominating Set instances in set systems.

            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.

              Equations
              Instances For
                Dependency graph

                Characterization of the two relations #

                Correctness #

                theorem DescriptiveComplexity.DomRed.ncard_pt_eq {A : Type} (t : DSTag) (P : A → Prop) (Q : dsInterp.Map A → Prop) (hshape : ∀ (p : dsInterp.Map A), Q p → ∃ (v : A), p = dsPt t v) (hP : ∀ (v : A), Q (dsPt t v) ↔ P v) :
                {p : dsInterp.Map A | Q p}.ncard = {v : A | P v}.ncard
                Dependency graph

                Correctness of the reduction: a set system has a small cover iff its incidence graph has a small dominating set.

                Dependency graph

                Set Cover FO-reduces to Dominating Set: elements and sets become vertices, the sets form a clique, and each set is joined to its elements – and to the junk, which domination cannot ignore.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  Dependency graph