Relations as structures in the language of graphs #
[UPSTREAM] candidate. Mathlib makes a simple graph a structure in the language of graphs; any
binary relation is one as well, with its pairs as the adjacency relation (graphStructure). A
Lindström quantifier over the language of graphs, a quantifier of type ⟨2⟩, is then a graph
property, an isomorphism-invariant class of binary relations, built from any property of
relations that relabelling along a bijection preserves (LindstromQuantifier.ofGraphProperty).
Its relativization to a set A asks it of A with the relation restricted to A
(inducedGraph).
Main definitions #
FirstOrder.Language.graphStructure r: the structure in the language of graphs whose adjacency relation isr.FirstOrder.Language.graphStructureEquiv: a bijection carrying one relation to another is an isomorphism of these structures.FirstOrder.Language.inducedGraph r A: the setAwithrrestricted to it.FirstOrder.Language.LindstromQuantifier.ofGraphProperty: the type⟨2⟩quantifier of a graph property, a property of relations invariant under relabelling.
References #
The structure in the language of graphs whose adjacency relation is r.
Equations
- One or more equations did not get rendered due to their size.
Instances For
A bijection carrying r to s is an isomorphism of the structures they define.
Equations
- FirstOrder.Language.graphStructureEquiv e h = { toEquiv := e, map_fun' := ⋯, map_rel' := ⋯ }
Instances For
The set A with r restricted to it, as a structure in the language of graphs.
Equations
- FirstOrder.Language.inducedGraph r A = { α := ↑A, str := FirstOrder.Language.graphStructure fun (a b : ↑A) => r ↑a ↑b }
Instances For
The type ⟨2⟩ quantifier of a graph property P, holding of a structure whose adjacency
relation has P; relabelling along a bijection preserves P.
Equations
- One or more equations did not get rendered due to their size.