Documentation

LeanPool.ClassificationOfSurfaces.Moise.GeometricTriangulation

Geometric triangulations #

The faithful statement of "the space S admits a finite triangulation": S is homeomorphic to the geometric realization of a finite two-dimensional simplicial complex.

The realization is concrete: for a finite vertex type V and a finite family F of faces (3-element vertex sets), GeometricRealization V F is the subset of the standard simplex stdSimplexV consisting of points supported on some face. This is the classical geometric realization by barycentric coordinates; it is a compact Hausdorff polyhedron by construction, so the definition cannot be satisfied by junk witnesses (Empty face types, arbitrary realization fields, and so on): the homeomorphism type pins S to an actual finite union of geometric 2-simplexes.

Semantic anchors (see Moise/Countermodels.lean and the Definition Faithfulness section of docs/AUTOFORMALIZATION_GUIDE.md):

theorem IsPreconnected.transGen_of_finite_iUnion {α : Type u_1} {ι : Type u_2} [TopologicalSpace α] [Finite ι] {s : ιSet α} (hs : IsPreconnected (⋃ (n : ι), s n)) (hs' : ∀ (i : ι), IsClosed (s i)) (i j : ι) (hi : (s i).Nonempty) (hj : (s j).Nonempty) :
Relation.TransGen (fun (a b : ι) => (s a s b).Nonempty) i j

A finite closed cover of a preconnected set has a connected intersection graph.

This is the closed-cover counterpart of IsPreconnected.transGen_of_iUnion, whose open-cover hypothesis is not available for the closed simplexes of a geometric realization.

The geometric realization of a finite family F of faces on a finite vertex type V: the points of the standard simplex on V whose support lies inside some face of F. For a face t this carves out the geometric simplex spanned by t, so the realization is the finite union of the geometric simplexes of F, glued along shared barycentric-coordinate faces.

Equations
Instances For

    The geometric simplex carried by one finite set of vertices.

    Equations
    Instances For

      Semantic anchor: two barycentric faces meet in exactly their common face.

      A barycentric face is nonempty exactly when it has a vertex.

      Each barycentric face is closed in the ambient coordinate space.

      The global realization is literally the finite union of its geometric faces.

      @[reducible, inline]

      A listed maximal face of a finite triangle family.

      Equations
      Instances For

        The two-vertex faces occurring in a finite triangle family.

        Equations
        Instances For

          Two listed triangles are dual-adjacent when they share a two-vertex face.

          Equations
          Instances For
            def LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.FaceAdjacentAtVertex {Vertex : Type u_1} (faces : Finset (Finset Vertex)) (v : Vertex) (f g : Face faces) :

            Two listed triangles are adjacent at v when they share a two-vertex face containing v.

            Unlike FaceAdjacent, this relation remembers the vertex star in which the adjacency step occurs.

            Equations
            Instances For

              Two listed triangles meet when their vertex sets have a common vertex.

              Equations
              Instances For
                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceAdjacent_symm {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {f g : Face faces} (h : FaceAdjacent faces f g) :
                FaceAdjacent faces g f
                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceAdjacentAtVertex_symm {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {v : Vertex} {f g : Face faces} (h : FaceAdjacentAtVertex faces v f g) :

                Fixed-vertex face adjacency is symmetric.

                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceAdjacent_of_faceAdjacentAtVertex {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {v : Vertex} {f g : Face faces} (h : FaceAdjacentAtVertex faces v f g) :
                FaceAdjacent faces f g

                A fixed-vertex adjacency step is an ordinary dual-adjacency step.

                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.mem_left_of_faceAdjacentAtVertex {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {v : Vertex} {f g : Face faces} (h : FaceAdjacentAtVertex faces v f g) :
                v f

                The left endpoint of a fixed-vertex adjacency step contains the fixed vertex.

                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.mem_right_of_faceAdjacentAtVertex {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {v : Vertex} {f g : Face faces} (h : FaceAdjacentAtVertex faces v f g) :
                v g

                The right endpoint of a fixed-vertex adjacency step contains the fixed vertex.

                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.card_inter_le_one_of_not_faceAdjacent {Vertex : Type u_1} [DecidableEq Vertex] {faces : Finset (Finset Vertex)} {f g : Face faces} (h : ¬FaceAdjacent faces f g) :
                (f g).card 1

                Faces in different dual components share at most one vertex.

                A chain of fixed-vertex adjacency steps is an ordinary dual-adjacency chain.

                Fixed-vertex adjacency chains can be traversed in reverse.

                theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.mem_of_reflTransGen_faceAdjacentAtVertex {Vertex : Type u_1} {faces : Finset (Finset Vertex)} {v : Vertex} {f g : Face faces} (hvf : v f) (h : Relation.ReflTransGen (FaceAdjacentAtVertex faces v) f g) :
                v g

                Every endpoint reached from a face containing v through fixed-vertex adjacency still contains v.

                Every two listed triangles are connected by a finite chain of shared edges.

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

                  Every pair of triangles incident to one vertex can be joined through shared edges.

                  For a triangulated surface this is the local connectedness assertion carried by the link of the vertex. This compatibility predicate does not require its intermediate faces to remain incident to that vertex; use IsStrongVertexStarConnected when that fixed-star invariant is needed.

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

                    Every pair of triangles incident to one vertex can be joined by a chain whose every adjacency step shares an edge containing that same vertex.

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

                      Strong fixed-star connectivity implies the legacy vertex-star connectivity predicate.

                      theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.geometricFace_inter_nonempty_iff {Vertex : Type u_1} [DecidableEq Vertex] [Fintype Vertex] {faces : Finset (Finset Vertex)} (f g : Face faces) :
                      (GeometricFace Vertex f GeometricFace Vertex g).Nonempty FaceIntersects faces f g

                      Geometric simplexes intersect exactly when their combinatorial faces share a vertex.

                      theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.isFaceIntersectionConnected_of_isPreconnected {Vertex : Type u_1} [DecidableEq Vertex] [Fintype Vertex] {faces : Finset (Finset Vertex)} (hface : ∀ (f : Face faces), (↑f).Nonempty) (hpre : IsPreconnected (GeometricRealization Vertex faces)) (f g : Face faces) :

                      Connectedness of a finite geometric realization connects all maximal faces through nonempty intersections.

                      Connected vertex stars upgrade connectivity through arbitrary face intersections to connectivity through shared edges.

                      def LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceOfSubset {Vertex : Type u_1} {faces faces' : Finset (Finset Vertex)} (h : facesfaces') :
                      Face facesFace faces'

                      Regard a face of a subfamily as a face of a larger family.

                      Equations
                      Instances For
                        @[simp]
                        theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceOfSubset_val {Vertex : Type u_1} {faces faces' : Finset (Finset Vertex)} (h : facesfaces') (f : Face faces) :
                        (faceOfSubset h f) = f
                        theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.faceAdjacent_faceOfSubset {Vertex : Type u_1} {faces faces' : Finset (Finset Vertex)} (h : facesfaces') {f g : Face faces} (hfg : FaceAdjacent faces f g) :
                        theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.isDualConnected_union {Vertex : Type u_1} [DecidableEq Vertex] {left right : Finset (Finset Vertex)} (hleft : IsDualConnected left) (hright : IsDualConnected right) (fleft : Face left) (fright : Face right) (hcross : FaceAdjacent (left right) (faceOfSubset fleft) (faceOfSubset fright)) :
                        IsDualConnected (left right)

                        Two dual-connected face families with a cross-adjacent pair have dual-connected union.

                        A face from each family shares a genuine two-vertex edge in the union family.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.isDualConnected_union_of_hasCrossEdge {Vertex : Type u_1} [DecidableEq Vertex] {left right : Finset (Finset Vertex)} (hleft : IsDualConnected left) (hright : IsDualConnected right) (hcross : HasCrossEdge left right) :
                          IsDualConnected (left right)

                          Two dual-connected face families with a shared cross-edge have dual-connected union.

                          A face family consisting of one triangle is dual-connected.

                          theorem LeanEval.Topology.ClassificationOfSurfaces.TriangleFamily.isDualConnected_insert {Vertex : Type u_1} [DecidableEq Vertex] {faces : Finset (Finset Vertex)} (hfaces : IsDualConnected faces) (face : Finset Vertex) (anchor : Face faces) (hcross : FaceAdjacent (insert face faces) face, (faceOfSubset anchor)) :
                          IsDualConnected (insert face faces)

                          Adding a triangle along an edge of a dual-connected family preserves dual connectivity.

                          Strong fixed-star connectivity supplies dual connectivity whenever the face-intersection graph is connected.

                          Incidence conditions making a finite family of triangles a connected pseudomanifold with boundary: it is nonempty, no edge has valence above two, and its dual graph is connected.

                          Instances For

                            A finite triangulation of the topological space S by geometric 2-simplexes: a finite vertex type, a finite family of 3-element faces, and a homeomorphism from the geometric realization of that family onto S.

                            There is no separate realization field to weaken: the realization is computed from the combinatorial data, so a GeometricTriangulation S exists only when S really is a finite two-dimensional polyhedron.

                            • Vertex : Type

                              The (finite) vertex type of the triangulation.

                            • vertexFintype : Fintype self.Vertex

                              The vertex type is finite.

                            • vertexDecidableEq : DecidableEq self.Vertex

                              Vertices have decidable equality.

                            • faces : Finset (Finset self.Vertex)

                              The faces: each is a set of vertices spanning a geometric 2-simplex.

                            • faces_card (t : Finset self.Vertex) : t self.facest.card = 3

                              Every face has exactly three vertices, so the complex is purely two-dimensional.

                            • homeo : (GeometricRealization self.Vertex self.faces) ≃ₜ S

                              The geometric realization of the face family is homeomorphic to S.

                            Instances For

                              Expanded, independently inspectable form of GeometricTriangulation.

                              This theorem pins the public meaning of the structure: no realization or incidence data is hidden behind an additional field.

                              @[reducible, inline]

                              The realization of the triangulation, as a polyhedron in barycentric coordinates.

                              Equations
                              Instances For

                                Must-imply anchor: a finitely triangulated space is compact. This is what rules out the empty/junk triangulations that satisfied the previous SurfaceTriangulable predicate.

                                Must-imply anchor: a finitely triangulated space is Hausdorff (the realization is a subspace of a finite product of lines).

                                A triangulation of a nonempty space has at least one two-dimensional face.

                                On a connected realization, local edge-connectedness of every vertex star is enough to deduce global dual connectivity.

                                A triangulation of a nonempty space has at least three available vertices.

                                The edges of the triangulation: the 2-element subsets of its faces.

                                Equations
                                Instances For
                                  @[reducible, inline]

                                  The edge type of the triangulation.

                                  Equations
                                  Instances For
                                    @[reducible, inline]

                                    The triangle (face) type of the triangulation.

                                    Equations
                                    Instances For

                                      The chosen first endpoint of an edge.

                                      Equations
                                      Instances For

                                        The chosen second endpoint of an edge.

                                        Equations
                                        Instances For

                                          An edge is a boundary edge when it lies in exactly one face.

                                          Equations
                                          Instances For