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

symplectic basis for triangulated 3-manifolds #113

Closed
wants to merge 10 commits into from

Conversation

jchilds0
Copy link
Contributor

An algorithm for constructing oscillating curves on triangulated 3-manifolds with tori boundary components. These oscillating curves are used to extend the Neumann Zagier matrix to one which is symplectic up to factors of 2.

See https://arxiv.org/abs/2208.06969

Since the main file (kernel/kernel_code/symplectic_basis.c) is fairly long, I thought I'd make a draft pr before its finalised. Currently the algorithm works for knot exteriors and most link exteriors, with a small percentage producing non symplectic matrices and a smaller fraction exiting early at fatal error breakpoints.

You can test the algorithm on random link exteriors by running dev/symplectic_basis/test.py. There's also a cmake file in that dir if you want to compile and run just the c portion directly with symplectic_basis_test.c or symplectic_basis_main.c.

@jchilds0
Copy link
Contributor Author

jchilds0 commented Sep 1, 2023

Some more detail on the failures, a previous version of this alg gave correct outputs for the first 60k links in HTLinkExteriors and all Knot complements, but would fail on later links. The current one seems to maintain this correctness on the first 60k, with roughly 20 % incorrect after 60k and 0.1% crash at a uFatalError.

Also, you guys don't need to wait for me to finish to make other repo changes. I can rebase my branch when I'm done.

@jchilds0 jchilds0 closed this Oct 2, 2023
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.

4 participants