Documentation

DescriptiveComplexity.Problems.DigraphIso.Bridge

Digraph Isomorphism is the generic isomorphism problem of the graph vocabulary #

DescriptiveComplexity.DigraphIso was stated over the hand-rolled FirstOrder.Language.twoGraphs before the generic FirstOrder.Language.twoCopies existed. The two vocabularies are the same up to renaming – patV/patE against the pattern mark and the pattern copy of adj – and this file proves the problems are FO-interreducible, in both directions, by the interpretation that renames the symbols.

The payoff is DescriptiveComplexity.below_digraphIso_eq_below_twoCopiesIso: the degree of DescriptiveComplexity.DigraphIso is the degree of DescriptiveComplexity.TwoCopiesIso FirstOrder.Language.graph, and hence the GI degree. A problem stated over twoCopies – as every entry added from here on is meant to be – therefore reaches the degree through DescriptiveComplexity.isoReflecting_fo_reduction and this bridge, with no further vocabulary bookkeeping.

Renaming the hand-rolled vocabulary to the generic one #

The interpretation renaming twoGraphs to twoCopies graph: one tag, one dimension, each symbol to its counterpart.

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

    The interpretation renaming twoCopies graph back to twoGraphs.

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

      The one-dimensional universe #

      The unique copy of an element, going to the generic vocabulary.

      Equations
      Instances For
        Dependency graph

        The unique copy of an element, coming back.

        Equations
        Instances For
          Dependency graph

          The image universe is a copy of the original.

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

            The image universe is a copy of the original, coming back.

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

              What the renamings realize #

              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph

              The generic side condition, as a relation isomorphism #

              Dependency graph
              Dependency graph
              Dependency graph
              Dependency graph

              The generic isomorphism condition is the concrete one: an isomorphism of the two sides, over the graph vocabulary, is a bijection of the two marks preserving the two relations. Stated through DescriptiveComplexity.relIsoOn_iff_equiv, whose right-hand side mentions no structure, so the two presentations of a side never have to be identified as instances.

              Dependency graph

              Correctness of the two renamings #

              Dependency graph
              Dependency graph

              The two reductions, and the degree #

              Digraph Isomorphism reduces to the generic isomorphism problem of the graph vocabulary, by renaming the symbols.

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

                And back.

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

                  Digraph Isomorphism and the generic isomorphism problem of the graph vocabulary have the same degree. A problem stated over twoCopies reaches the GI degree through this equality, so DescriptiveComplexity.isoReflecting_fo_reduction – a gadget on single structures – is all a new entry needs.

                  Dependency graph