Documentation

DescriptiveComplexity.Problems.Feedback.Membership

The feedback problems are existential second-order definable #

The membership half of the NP-completeness of both feedback problems: DescriptiveComplexity.feedbackVertexSet_sigmaSODefinable and DescriptiveComplexity.feedbackArcSet_sigmaSODefinable.

Acyclicity is not first-order, but its certificate is (DescriptiveComplexity.acyclicRel_iff_exists_order), so both definitions have the same five-clause shape. A single existential block guesses

and the kernel checks transitivity, irreflexivity, that every surviving arc goes forward in the order, and that the injection is total and injective. The arity-4 atom is the only thing the second definition needs beyond the first, and it costs nothing beyond DescriptiveComplexity.realize_rel₄ (DescriptiveComplexity.Interpretation), Mathlib's Formula.realize_rel₁/ stopping at arity 2.

The single existential block of the Σ₁ definition of Feedback Vertex Set: the removed set (unary), a strict partial order certifying acyclicity (binary), and an injection of the removed set into the marked set (binary).

Equations
Instances For
    Dependency graph
    Dependency graph
    Dependency graph
    Dependency graph
    @[reducible, inline]

    The vocabulary of the kernel: marked graphs together with the three guessed relation variables.

    Equations
    Instances For
      Dependency graph
      @[reducible, inline]

      The adjacency symbol in the kernel's vocabulary.

      Equations
      Instances For
        Dependency graph
        @[reducible, inline]

        The mark symbol in the kernel's vocabulary.

        Equations
        Instances For
          Dependency graph
          @[reducible, inline]

          The removed-set symbol in the kernel's vocabulary.

          Equations
          Instances For
            Dependency graph
            @[reducible, inline]

            The order symbol in the kernel's vocabulary.

            Equations
            Instances For
              Dependency graph
              @[reducible, inline]

              The injection symbol in the kernel's vocabulary.

              Equations
              Instances For
                Dependency graph

                The first-order kernel of the Σ₁ definition of Feedback Vertex Set.

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

                  Feedback Vertex Set is Σ₁-definable: existentially guess the removed set, a strict partial order certifying that the rest is acyclic, and an injection of the removed set into the marked set, then check all five conditions first-order. Since NP is defined as Σ₁-definability, this is the membership half of the NP-completeness of Feedback Vertex Set.

                  Dependency graph

                  Feedback Arc Set #

                  The single existential block of the Σ₁ definition of Feedback Arc Set: the removed set of arcs (binary), a strict partial order certifying acyclicity (binary), and an injection of the removed arcs into the marked relation (quaternary: it maps pairs to pairs).

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

                    The vocabulary of the kernel: arc-marked digraphs together with the three guessed relation variables.

                    Equations
                    Instances For
                      Dependency graph
                      @[reducible, inline]

                      The adjacency symbol in the kernel's vocabulary.

                      Equations
                      Instances For
                        Dependency graph
                        @[reducible, inline]

                        The mark symbol in the kernel's vocabulary.

                        Equations
                        Instances For
                          Dependency graph
                          @[reducible, inline]

                          The removed-arc symbol in the kernel's vocabulary.

                          Equations
                          Instances For
                            Dependency graph
                            @[reducible, inline]

                            The order symbol in the kernel's vocabulary.

                            Equations
                            Instances For
                              Dependency graph
                              @[reducible, inline]

                              The injection symbol in the kernel's vocabulary.

                              Equations
                              Instances For
                                Dependency graph

                                The first-order kernel of the Σ₁ definition of Feedback Arc Set.

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

                                  Feedback Arc Set is Σ₁-definable: existentially guess the removed arcs, a strict partial order certifying that the rest is acyclic, and an injection of the removed arcs into the marked relation – a quaternary relation variable, the threshold being carried by pairs. Since NP is defined as Σ₁-definability, this is the membership half of the NP-completeness of Feedback Arc Set.

                                  Dependency graph