Documentation

TauCeti.ModelTheory.RelationalConfiguration.Isomorphism

Isomorphism of relational configurations #

For a relational language L, two configurations on a carrier V are isomorphic when the structures they decode to are isomorphic. This is the equivalence relation whose classes are counted when one counts the models of a sentence on a fixed carrier.

Relabelling a configuration by a permutation of V transports its decoded structure along that permutation, and every isomorphism of decoded structures is such a relabelling. So isomorphism is the orbit relation of the action of Equiv.Perm V, the logic action, on every carrier, finite or infinite. Structures on different carriers, transported to V with Equiv.encodeVia, are isomorphic exactly when their encodings are.

On a finite carrier the permutation group is finite and acts continuously, so the graph of isomorphism is a finite union of graphs of continuous maps. It is therefore closed, and Borel in a countable relational vocabulary. On a countable carrier, in a countable relational vocabulary, the graph of isomorphism is analytic: a permutation is a pair of mutually inverse self-maps of the carrier, these pairs form a closed subset of a Polish space, and relabelling is jointly continuous. Hence the saturation of an analytic set under the logic action is analytic.

A set of configurations is isomorphism invariant when it contains every configuration isomorphic to one of its members. Equivalently, every permutation of the carrier maps it into itself (Mathlib's MulAction.IsInvariantBlock for the logic action), or it equals its saturation Quotient.mk _ ⁻¹' (Quotient.mk _ '' A) under isomorphism.

Main definitions #

Main results #

References #

Isomorphism of decoded structures, as a setoid on the configurations on V: two configurations are related when the structures they decode to are isomorphic.

Instances For

    Two configurations are isomorphic exactly when their decoded structures are.

    Relabelling by σ encodes the decoded structure transported along σ.

    @[simp]

    Relabelling by σ decodes to the structure transported along σ.

    A relabelled configuration is isomorphic to the original one.

    Isomorphism of configurations is relabelling by a permutation of the carrier.

    The logic action. Isomorphism of configurations is the orbit relation of the relabelling action of the permutations of the carrier.

    Structures transported to a common carrier have isomorphic encodings exactly when they are isomorphic, whatever their universes.

    On a finite carrier the graph of isomorphism is closed: it is the union of the graphs of the finitely many relabellings, each continuous.

    On a finite carrier, in a countable relational vocabulary, the graph of isomorphism is Borel.

    On a countable carrier, in a countable relational vocabulary, the graph of isomorphism is analytic.

    Isomorphism-invariant sets #

    A set of configurations is isomorphism invariant when it contains every configuration isomorphic to one of its members.

    Instances For

      Isomorphic configurations lie in the same isomorphism-invariant sets.

      Isomorphism invariance is invariance under the logic action: a set of configurations is isomorphism invariant exactly when every permutation of the carrier maps it into itself.

      The saturation of a set under isomorphism is the union of its images under the logic action.

      The preimage of any set of isomorphism classes is isomorphism invariant.

      A set is isomorphism invariant exactly when it is its own saturation under isomorphism.

      The union of the images of a set under the logic action is isomorphism invariant.

      @[simp]

      The set of all configurations is isomorphism invariant.

      The complement of an isomorphism-invariant set is isomorphism invariant.

      The intersection of two isomorphism-invariant sets is isomorphism invariant.

      The union of two isomorphism-invariant sets is isomorphism invariant.

      theorem TauCeti.RelationalConfiguration.isomorphismInvariant_iInter {L : FirstOrder.Language} [L.IsRelational] {V : Type w} {ι : Sort u_1} {A : ι → Set (RelationalConfiguration L V)} (hA : ∀ (i : ι), IsomorphismInvariant (A i)) :
      IsomorphismInvariant (⋂ (i : ι), A i)

      An intersection of isomorphism-invariant sets is isomorphism invariant.

      theorem TauCeti.RelationalConfiguration.isomorphismInvariant_iUnion {L : FirstOrder.Language} [L.IsRelational] {V : Type w} {ι : Sort u_1} {A : ι → Set (RelationalConfiguration L V)} (hA : ∀ (i : ι), IsomorphismInvariant (A i)) :
      IsomorphismInvariant (⋃ (i : ι), A i)

      A union of isomorphism-invariant sets is isomorphism invariant.

      On a countable carrier, in a countable relational vocabulary, the saturation of an analytic set of configurations under the logic action is analytic.