Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does a given normal surface obstruct hyperbolicity? #67

Open
wants to merge 33 commits into
base: 6.0_pre
Choose a base branch
from

Conversation

bobbycyiii
Copy link
Contributor

I have added some tests that determine whether or not a normal surface is an obstruction to hyperbolicity. For instance, essential spheres, Klein bottles, and tori are such obstructions. Also, an annulus that cuts the manifold into solid tori is also such an obstruction.

Implemented T^2xI recognition;
implemented auxiliary routines to simplify boundary;
added unit tests for T^2xI recognition;
added Python bindings for T^2xI recognition.
Implemented CMake and CppUnit scaffolding for fault finding;
implemented naive separation testing for surfaces.
Fixed the tests for separating surfaces in lens spaces.
Finished implementing tests for `isEssentialSphere` member function
of `NormalSurface` class.
Added Python bindings for the member functions `separates`,
`isEssentialSphere`, `isEssentialTorus`, `isEssentialKleinBottle`,
and `isSolidTorusAnnulus` of the `NormalSurface` class.
Added header info for a missing function in `NormalSurface.h`.
Added unit tests and methods for `isEssentialSphere` member function
of `NormalSurface` class.
Implemented tests for `isEssentialKleinBottle` member function of
`NormalSurface` class.
Added `isEssentialKleinBottle` function to `NormalSurface` class.
This depends upon the `isTorusXInterval` function in the
`Triangulation<3>` class.
Add small Seifert fibered spaces to tests for
`isEssentialKleinBottle`.
Add `isEssentialTorus` member function to `NormalSurface` class.
Add unit tests for `isEssentialTorus`.
`isEssentialSphere` is only correct for connected triangulations
with no sphere boundary components.

`isEssentialKleinBottle` and `isEssentialTorus` are only correct
for connected irreducible boundary-incompressible triangulations.
Make `isEssentialKleinBottle` and `isEssentialTorus`
return \c false given a nonseparating compressible K2 (resp. T2).
Add unit tests for the `isSolidTorusAnnulus` member function of
the `NormalSurface` class.
Add `separates`, `isEssentialSphere`, `isEssentialKleinBottle`,
`isEssentialTorus`, and `isSolidTorusAnnulus` member functions to
`NormalSurface` class, with unit tests, Python bindings, and
documentation.
Implemented CMake and CppUnit scaffolding for fault finding;
implemented naive separation testing for surfaces.
Fixed the tests for separating surfaces in lens spaces.
Finished implementing tests for `isEssentialSphere` member function
of `NormalSurface` class.
Added Python bindings for the member functions `separates`,
`isEssentialSphere`, `isEssentialTorus`, `isEssentialKleinBottle`,
and `isSolidTorusAnnulus` of the `NormalSurface` class.
Added header info for a missing function in `NormalSurface.h`.
Added unit tests and methods for `isEssentialSphere` member function
of `NormalSurface` class.
Implemented tests for `isEssentialKleinBottle` member function of
`NormalSurface` class.
Added `isEssentialKleinBottle` function to `NormalSurface` class.
This depends upon the `isTorusXInterval` function in the
`Triangulation<3>` class.
Add small Seifert fibered spaces to tests for
`isEssentialKleinBottle`.
Add `isEssentialTorus` member function to `NormalSurface` class.
Add unit tests for `isEssentialTorus`.
`isEssentialSphere` is only correct for connected triangulations
with no sphere boundary components.

`isEssentialKleinBottle` and `isEssentialTorus` are only correct
for connected irreducible boundary-incompressible triangulations.
Make `isEssentialKleinBottle` and `isEssentialTorus`
return \c false given a nonseparating compressible K2 (resp. T2).
Add unit tests for the `isSolidTorusAnnulus` member function of
the `NormalSurface` class.
Add `separates`, `isEssentialSphere`, `isEssentialKleinBottle`,
`isEssentialTorus`, and `isSolidTorusAnnulus` member functions to
`NormalSurface` class, with unit tests, Python bindings, and
documentation.
Add trivial code for `isHyperbolicHaken` and `knowsHyperbolicHaken`
member functions of `Triangulation<3>` class.

Add Python bindings for these functions.
Apply changes instead to a new branch hyperbolicHaken.

This reverts commit ddccccc.
@bobbycyiii bobbycyiii closed this Mar 8, 2021
@baburton baburton reopened this Apr 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants