Documentation

DescriptiveComplexity.Problems.Game.Defs

GAME: alternating reachability #

The natural PTIME-complete problem the catalog was missing. An AND/OR graph is a directed graph whose nodes are split between two players, together with a set of nodes that win outright; a node is winning when

DescriptiveComplexity.GAME asks whether some marked source is winning. Reading the three clauses with the universal player removed gives DescriptiveComplexity.REACH back, so this is alternating reachability in the same sense that DescriptiveComplexity.PSPACE is DescriptiveComplexity.NL with alternation: one operator more, one class up.

The stuck-universal convention #

A universal node with no successor loses. The other convention – vacuous universal quantification, so that a stuck universal node wins – is equally standard; this one is chosen because it is the convention DescriptiveComplexity.ATMData.AltWin already uses, and matching them is what lets the alternating machine's configuration graph be read as an instance of this problem with nothing to adjust. A node that should win vacuously is marked as winning outright instead, which is what the reduction from HORN-SAT does with a clause that has no body.

Winning as an inductive predicate #

DescriptiveComplexity.WinsOn is an inductive predicate, i.e., the least fixed point of the game operator, so an infinite play is a loss for the existential player. That is also the presentation the FO(LFP) membership proof mirrors clause by clause – with one twist, since a Horn rule cannot carry a universally quantified body atom; see DescriptiveComplexity.Problems.Game.Membership.

Dependency graph
@[reducible, inline]

start a: the node a is a marked starting position.

Equations
Instances For
    Dependency graph
    @[reducible, inline]

    univ a: the node a belongs to the universal player.

    Equations
    Instances For
      Dependency graph
      @[reducible, inline]

      won a: the node a wins outright.

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

          The relation symbols of the language.

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

            move a b: the player to move at a may move to b.

            Equations
            Instances For
              Dependency graph

              The relational vocabulary of AND/OR graphs: a move relation, a mark for the nodes of the universal player, a mark for the starting positions and a mark for the positions that win outright.

              Equations
              Instances For
                Dependency graph
                @[reducible, inline]

                The move symbol in the ordered expansion.

                Equations
                Instances For
                  Dependency graph
                  @[reducible, inline]

                  The universal-player symbol in the ordered expansion.

                  Equations
                  Instances For
                    Dependency graph
                    @[reducible, inline]

                    The marked-start symbol in the ordered expansion.

                    Equations
                    Instances For
                      Dependency graph
                      @[reducible, inline]

                      The won-outright symbol in the ordered expansion.

                      Equations
                      Instances For
                        Dependency graph

                        The semantics #

                        Dependency graph
                        Dependency graph
                        Dependency graph
                        Dependency graph

                        The winning positions of an AND/OR graph, as a least fixed point: a position that wins outright, an existential position with a winning successor, or a universal position that has a successor and all of whose successors win.

                        Instances For
                          Dependency graph
                          Dependency graph

                          Without the universal player, the game is reachability #

                          Isomorphism-invariance #

                          Dependency graph

                          GAME, alternating reachability: is some marked starting position of the AND/OR graph winning?

                          Equations
                          Instances For
                            Dependency graph
                            Dependency graph