Documentation

TauCeti.Combinatorics.SimpleGraph.RelationalConfiguration

Simple graphs as relational configurations #

The language of graphs, FirstOrder.Language.graph, has a single binary relation symbol adj. A relational configuration of it is a truth value for every atom adj(u, v), including the diagonal atoms adj(v, v). The configurations that are symmetric and false on the diagonal are exactly the simple graphs: this file identifies SimpleGraph V with them as a measurable equivalence, and shows that pulling a graph back along a vertex map corresponds to restricting its configuration. Forgetting the simple-graph conditions, a configuration is just its array of truth values on the adjacency atoms (TauCeti.RelationalConfiguration.adjArrayEquiv), and the array of a simple graph is its adjacency array.

Main definitions #

Main results #

The adjacency atom adj(u, v).

Instances For
    @[simp]
    theorem TauCeti.RelationalConfiguration.adjAtom_map {V : Type u_1} {W : Type u_2} (f : V → W) (u v : V) :
    Atom.map f (adjAtom u v) = adjAtom (f u) (f v)
    theorem TauCeti.RelationalConfiguration.Atom.induction_adjAtom {V : Type u_1} {motive : Atom FirstOrder.Language.graph V → Prop} (h : ∀ (u v : V), motive (adjAtom u v)) (a : Atom FirstOrder.Language.graph V) :
    motive a

    Every atom of the language of graphs is an adjacency atom.

    A configuration of the language of graphs is a simple graph when adjacency is symmetric and false on the diagonal.

    Instances For

      A configuration is a simple graph exactly when adjacency is symmetric and false on the diagonal.

      The simple graph of a symmetric irreflexive configuration.

      Instances For

        Restriction preserves symmetry and irreflexivity. The vertex map need not be injective: a pair of distinct vertices with the same image reads a diagonal atom, which is false.

        On a countable vertex type, the simple-graph configurations form a measurable set: a countable intersection of conditions on one or two atoms.

        Configurations as arrays #

        Configurations of the language of graphs are Bool-valued arrays: a configuration is determined by its truth values on the adjacency atoms adj(u, v), one for each ordered pair of vertices, and these truth values can be prescribed freely.

        Instances For
          @[simp]

          The array of a configuration records its truth value on each adjacency atom.

          @[simp]

          The configuration of an array takes the prescribed truth value on each adjacency atom.

          The configuration of a simple graph, read off its first-order structure.

          Instances For
            @[simp]

            The configuration of a simple graph decodes to the graph's structure.

            Simple graphs are the symmetric irreflexive configurations of the language of graphs, as a measurable equivalence.

            Instances For

              Encoding a simple graph as a configuration is measurable.

              @[simp]

              The configurations of simple graphs are exactly the simple-graph configurations.

              On a countable vertex type, encoding simple graphs as configurations is a measurable embedding, so laws on simple graphs are the laws on configurations concentrated on simple graphs.

              @[simp]

              The array of the configuration of a simple graph is its adjacency array.

              Compatibility with restriction #

              Encoding commutes with restriction: the configuration of a pulled-back graph is the restriction of the configuration.