DO NOT EDIT OR MODIFY
This is the problem definition vendored from https://github.com/leanprover/lean-eval with the sparse checkout generated/topological_classification_of_surfaces
The final submitted solution will live at https://github.com/leanprover/lean-eval which is a pristine verbatim clone of leanprover/lean-eval/generated/topological_classification_of_surfaces
Benchmark statements for topological classification of compact connected surfaces with boundary.
The representative surface in each homeomorphism class is obtained by gluing certain arcs in the boundary of the unit disc.
Reference: Jean Gallier & Dianna Xu, A Guide to the Classification Theorem for Compact Surfaces, Definition 6.5, Lemma 6.1, Theorem 6.1. https://www.cis.upenn.edu/~jean/surfclassif-root.pdf
The closed unit disc in the complex plane.
Equations
Instances For
The boundary point exp(2πir) on the boundary of the closed unit disc in the complex plane.
Equations
Instances For
The representative orientable surface homeomorphic to a closed orientable genus p
surface with n discs removed, obtained by identifying the boundary of a disc in the pattern
a₁b₁a₁⁻¹b₁⁻¹⋯aₚbₚaₚ⁻¹bₚ⁻¹c₁h₁c₁⁻¹⋯cₙhₙcₙ⁻¹.
- a {p n : ℕ} (x : ↑(Set.Icc 0 1)) (i : Fin p) : OrientableRel p n (Complex.ClosedUnitDisc.bdyPtOfReal ((4 * ↑↑i + ↑x) / (4 * ↑p + 3 * ↑n))) (Complex.ClosedUnitDisc.bdyPtOfReal ((4 * ↑↑i + 3 - ↑x) / (4 * ↑p + 3 * ↑n)))
- b {p n : ℕ} (x : ↑(Set.Icc 0 1)) (i : Fin p) : OrientableRel p n (Complex.ClosedUnitDisc.bdyPtOfReal ((4 * ↑↑i + 1 + ↑x) / (4 * ↑p + 3 * ↑n))) (Complex.ClosedUnitDisc.bdyPtOfReal ((4 * ↑↑i + 4 - ↑x) / (4 * ↑p + 3 * ↑n)))
- c {p n : ℕ} (x : ↑(Set.Icc 0 1)) (i : Fin n) : OrientableRel p n (Complex.ClosedUnitDisc.bdyPtOfReal (-(3 * ↑↑i + ↑x) / (4 * ↑p + 3 * ↑n))) (Complex.ClosedUnitDisc.bdyPtOfReal (-(3 * ↑↑i + 3 - ↑x) / (4 * ↑p + 3 * ↑n)))
Instances For
The representative non-orientable surface homeomorphic to a direct sum of p projective
planes with n discs removed, obtained by identifying the boundary of a disc in the pattern
a₁a₁⋯aₚaₚc₁h₁c₁⁻¹⋯cₙhₙcₙ⁻¹.
- a {p n : ℕ} (x : ↑(Set.Icc 0 1)) (i : Fin p) : NonOrientableRel p n (Complex.ClosedUnitDisc.bdyPtOfReal ((2 * ↑↑i + ↑x) / (2 * ↑p + 3 * ↑n))) (Complex.ClosedUnitDisc.bdyPtOfReal ((2 * ↑↑i + 1 + ↑x) / (2 * ↑p + 3 * ↑n)))
- c {p n : ℕ} (x : ↑(Set.Icc 0 1)) (i : Fin n) : NonOrientableRel p n (Complex.ClosedUnitDisc.bdyPtOfReal (-(3 * ↑↑i + ↑x) / (2 * ↑p + 3 * ↑n))) (Complex.ClosedUnitDisc.bdyPtOfReal (-(3 * ↑↑i + 3 - ↑x) / (2 * ↑p + 3 * ↑n)))