The infinite digraph space as an R1 instance (directed umbrella #84, D1 / issue #85) #
Directed graphs are the one-sort, single binary relation, ordered-arguments,
diagonal-permitted case of the generic relational carrier (R1). Rather than re-derive the
topology / measurable structure, this file instantiates it: InfiniteDigraph is defined as
the relational structure over digraphSig, so it inherits — with no new proofs — the
compact / Polish / standard-Borel instances, the measurable finite restrictions, the
cylinder π-system, and the finite-restriction measure extensionality of R1b. All topology
lives on InfiniteDigraph; the bridge to Mathlib's Digraph is a plain carrier
equivalence (Prop ≃ Bool classically), generic over the vertex type, so it yields both
the infinite and the finite bridges (the latter for D2).
digraphSig— the one-sort binary signature (arity2,NoNullary);digraphStructureEquiv V— the carrier equivalenceRelStructure digraphSig (fun _ => V) ≃ Digraph V, generic overV;InfiniteDigraph/FiniteDigraph nand the deriveddigraphEquiv/finiteDigraphEquiv;InfiniteDigraph.Adj(Prop, matching Mathlib graph APIs) andInfiniteDigraph.adjBit(Bool), reading adjacency off the ordered-pair coordinate;InfiniteDigraph.restrictFinandInfiniteDigraph.ext_of_map_restrictFin— the R1b finite restriction and measure extensionality, specialized (public statement overn : ℕ).
The projective extension / exchangeable-law theory is not here — that is D2 (#86) and R2.
The one-sort, single binary relation signature: arity 2, ordered arguments, the
diagonal permitted (loops allowed).
Equations
Instances For
The coordinate at an ordered vertex pair (a, b), over any vertex type.
Instances For
Coordinates are ordered vertex pairs (full square, diagonal included).
Equations
- One or more equations did not get rendered due to their size.
Instances For
The carrier equivalence with Mathlib's Digraph V (Prop ≃ Bool classically), a
plain type equivalence — the topology / measurable structure lives on the relational
structure, not on Digraph V. A digraph is exactly an arbitrary Bool assignment to ordered
vertex pairs.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The infinite and finite digraph carriers #
The infinite digraph space: the relational structure over digraphSig with vertex
set ℕ. Inherits the entire R1 topological / measurable structure.
Instances For
The finite digraph space on Fin n.
Equations
- FiniteDigraph n = digraphSig.RelStructure (RelSignature.Vfinite fun (x : digraphSig.Srt) => n)
Instances For
The finite carrier equivalence with Mathlib's Digraph (Fin n) — the bridge D2 uses.
Equations
Instances For
Coordinate naturality: the sortwise action of a vertex map sends the coordinate at an ordered pair to the coordinate at the image pair.
Coordinate extensionality: two digraph structures agree once they agree at every
ordered vertex pair — every relational coordinate of digraphSig is a digraphCoord.
Boolean adjacency: whether the ordered pair (a, b) stands in the relation.
Equations
- G.adjBit a b = G (digraphCoord a b)
Instances For
Adjacency (Prop-valued, matching Mathlib's graph APIs).
Instances For
Inherited finite restriction and measure extensionality #
Finite restriction of an infinite digraph to the first n vertices (the R1b
restrictFin, specialized).
Equations
- InfiniteDigraph.restrictFin n = RelSignature.RelStructure.restrictFin fun (x : digraphSig.Srt) => n
Instances For
Finite-restriction measure extensionality for infinite digraphs (R1b, specialized):
two finite measures agree once their finite-restriction pushforwards agree, quantified over
n : ℕ (the uniform size vector).