snappy 3.1.1__cp39-cp39-macosx_11_0_arm64.whl → 3.2__cp39-cp39-macosx_11_0_arm64.whl
Sign up to get free protection for your applications and to get access to all the features.
- snappy/CyOpenGL.cpython-39-darwin.so +0 -0
- snappy/SnapPy.cpython-39-darwin.so +0 -0
- snappy/SnapPyHP.cpython-39-darwin.so +0 -0
- snappy/__init__.py +299 -402
- snappy/app.py +70 -20
- snappy/browser.py +18 -17
- snappy/canonical.py +249 -0
- snappy/{verify/cusp_shapes.py → cusps/__init__.py} +8 -18
- snappy/cusps/cusp_area_matrix.py +101 -0
- snappy/{verify/cusp_areas.py → cusps/cusp_areas_from_matrix.py} +23 -39
- snappy/cusps/maximal_cusp_area_matrix.py +136 -0
- snappy/cusps/test.py +21 -0
- snappy/cusps/trig_cusp_area_matrix.py +63 -0
- snappy/database.py +10 -9
- snappy/decorated_isosig.py +337 -114
- snappy/dev/extended_ptolemy/complexVolumesClosed.py +40 -7
- snappy/dev/extended_ptolemy/extended.py +3 -3
- snappy/dev/extended_ptolemy/phc_wrapper.py +10 -10
- snappy/dev/vericlosed/oneVertexTruncatedComplex.py +1 -1
- snappy/doc/_images/m004_paper_plane_on_systole.jpg +0 -0
- snappy/doc/_images/m125_paper_plane.jpg +0 -0
- snappy/doc/_images/o9_00000_systole_paper_plane.jpg +0 -0
- snappy/doc/_images/o9_00000_systole_paper_plane_closer.jpg +0 -0
- snappy/doc/_sources/development.rst.txt +66 -46
- snappy/doc/_sources/index.rst.txt +72 -5
- snappy/doc/_sources/installing.rst.txt +145 -162
- snappy/doc/_sources/news.rst.txt +73 -1
- snappy/doc/_sources/ptolemy_examples1.rst.txt +8 -7
- snappy/doc/_sources/ptolemy_examples3.rst.txt +2 -2
- snappy/doc/_sources/triangulation.rst.txt +2 -2
- snappy/doc/_sources/verify.rst.txt +89 -29
- snappy/doc/_sources/verify_internals.rst.txt +5 -16
- snappy/doc/_static/basic.css +23 -1
- snappy/doc/_static/css/badge_only.css +1 -1
- snappy/doc/_static/css/theme.css +1 -1
- snappy/doc/_static/doctools.js +1 -1
- snappy/doc/_static/documentation_options.js +2 -3
- snappy/doc/_static/fonts/Lato/lato-bold.eot +0 -0
- snappy/doc/_static/fonts/Lato/lato-bold.ttf +0 -0
- snappy/doc/_static/fonts/Lato/lato-bold.woff +0 -0
- snappy/doc/_static/fonts/Lato/lato-bold.woff2 +0 -0
- snappy/doc/_static/fonts/Lato/lato-bolditalic.eot +0 -0
- snappy/doc/_static/fonts/Lato/lato-bolditalic.ttf +0 -0
- snappy/doc/_static/fonts/Lato/lato-bolditalic.woff +0 -0
- snappy/doc/_static/fonts/Lato/lato-bolditalic.woff2 +0 -0
- snappy/doc/_static/fonts/Lato/lato-italic.eot +0 -0
- snappy/doc/_static/fonts/Lato/lato-italic.ttf +0 -0
- snappy/doc/_static/fonts/Lato/lato-italic.woff +0 -0
- snappy/doc/_static/fonts/Lato/lato-italic.woff2 +0 -0
- snappy/doc/_static/fonts/Lato/lato-regular.eot +0 -0
- snappy/doc/_static/fonts/Lato/lato-regular.ttf +0 -0
- snappy/doc/_static/fonts/Lato/lato-regular.woff +0 -0
- snappy/doc/_static/fonts/Lato/lato-regular.woff2 +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.eot +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.ttf +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-bold.woff2 +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.eot +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.ttf +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff +0 -0
- snappy/doc/_static/fonts/RobotoSlab/roboto-slab-v7-regular.woff2 +0 -0
- snappy/doc/_static/js/versions.js +228 -0
- snappy/doc/_static/language_data.js +2 -2
- snappy/doc/_static/pygments.css +1 -0
- snappy/doc/_static/searchtools.js +125 -71
- snappy/doc/_static/sphinx_highlight.js +13 -3
- snappy/doc/additional_classes.html +291 -122
- snappy/doc/bugs.html +17 -20
- snappy/doc/censuses.html +34 -53
- snappy/doc/credits.html +18 -21
- snappy/doc/development.html +88 -68
- snappy/doc/genindex.html +66 -145
- snappy/doc/index.html +86 -31
- snappy/doc/installing.html +164 -182
- snappy/doc/manifold.html +1168 -556
- snappy/doc/manifoldhp.html +18 -21
- snappy/doc/news.html +91 -33
- snappy/doc/objects.inv +0 -0
- snappy/doc/other.html +20 -22
- snappy/doc/platonic_census.html +31 -34
- snappy/doc/plink.html +19 -22
- snappy/doc/ptolemy.html +20 -22
- snappy/doc/ptolemy_classes.html +102 -105
- snappy/doc/ptolemy_examples1.html +34 -36
- snappy/doc/ptolemy_examples2.html +28 -31
- snappy/doc/ptolemy_examples3.html +26 -29
- snappy/doc/ptolemy_examples4.html +20 -23
- snappy/doc/ptolemy_prelim.html +25 -28
- snappy/doc/py-modindex.html +16 -19
- snappy/doc/screenshots.html +22 -24
- snappy/doc/search.html +15 -18
- snappy/doc/searchindex.js +1 -1
- snappy/doc/snap.html +18 -21
- snappy/doc/snappy.html +18 -20
- snappy/doc/spherogram.html +84 -87
- snappy/doc/todo.html +17 -20
- snappy/doc/triangulation.html +324 -215
- snappy/doc/tutorial.html +17 -20
- snappy/doc/verify.html +100 -46
- snappy/doc/verify_internals.html +106 -563
- snappy/drilling/__init__.py +153 -235
- snappy/drilling/barycentric.py +103 -0
- snappy/drilling/constants.py +0 -2
- snappy/drilling/crush.py +56 -130
- snappy/drilling/cusps.py +12 -6
- snappy/drilling/debug.py +2 -1
- snappy/drilling/exceptions.py +7 -40
- snappy/drilling/moves.py +302 -243
- snappy/drilling/perturb.py +63 -37
- snappy/drilling/shorten.py +36 -0
- snappy/drilling/subdivide.py +0 -5
- snappy/drilling/test.py +23 -0
- snappy/drilling/test_cases.py +126 -0
- snappy/drilling/tracing.py +9 -37
- snappy/exceptions.py +18 -5
- snappy/exterior_to_link/barycentric_geometry.py +2 -4
- snappy/exterior_to_link/main.py +8 -7
- snappy/exterior_to_link/mcomplex_with_link.py +2 -2
- snappy/exterior_to_link/rational_linear_algebra.py +1 -1
- snappy/exterior_to_link/rational_linear_algebra_wrapped.py +1 -1
- snappy/exterior_to_link/test.py +21 -33
- snappy/geometric_structure/__init__.py +212 -0
- snappy/geometric_structure/cusp_neighborhood/__init__.py +3 -0
- snappy/geometric_structure/cusp_neighborhood/complex_cusp_cross_section.py +697 -0
- snappy/geometric_structure/cusp_neighborhood/cusp_cross_section_base.py +484 -0
- snappy/geometric_structure/cusp_neighborhood/exceptions.py +42 -0
- snappy/geometric_structure/cusp_neighborhood/real_cusp_cross_section.py +298 -0
- snappy/geometric_structure/cusp_neighborhood/tiles_for_cusp_neighborhood.py +159 -0
- snappy/geometric_structure/cusp_neighborhood/vertices.py +32 -0
- snappy/geometric_structure/geodesic/__init__.py +0 -0
- snappy/geometric_structure/geodesic/add_core_curves.py +152 -0
- snappy/geometric_structure/geodesic/avoid_core_curves.py +369 -0
- snappy/geometric_structure/geodesic/canonical_keys.py +52 -0
- snappy/geometric_structure/geodesic/check_away_from_core_curve.py +60 -0
- snappy/geometric_structure/geodesic/constants.py +6 -0
- snappy/geometric_structure/geodesic/exceptions.py +22 -0
- snappy/{drilling → geometric_structure/geodesic}/fixed_points.py +34 -9
- snappy/{drilling/geodesic_info.py → geometric_structure/geodesic/geodesic_start_point_info.py} +139 -180
- snappy/geometric_structure/geodesic/graph_trace_helper.py +67 -0
- snappy/geometric_structure/geodesic/line.py +30 -0
- snappy/geometric_structure/geodesic/multiplicity.py +127 -0
- snappy/geometric_structure/geodesic/tiles_for_geodesic.py +101 -0
- snappy/geometric_structure/test.py +22 -0
- snappy/gui.py +23 -13
- snappy/horoviewer.py +7 -7
- snappy/hyperboloid/__init__.py +96 -31
- snappy/hyperboloid/distances.py +245 -0
- snappy/hyperboloid/horoball.py +19 -0
- snappy/hyperboloid/line.py +35 -0
- snappy/hyperboloid/point.py +9 -0
- snappy/hyperboloid/triangle.py +29 -0
- snappy/isometry_signature.py +382 -0
- snappy/len_spec/__init__.py +596 -0
- snappy/len_spec/geodesic_info.py +110 -0
- snappy/len_spec/geodesic_key_info_dict.py +117 -0
- snappy/len_spec/geodesic_piece.py +143 -0
- snappy/len_spec/geometric_structure.py +182 -0
- snappy/len_spec/geometry.py +80 -0
- snappy/len_spec/length_spectrum_geodesic_info.py +170 -0
- snappy/len_spec/spine.py +206 -0
- snappy/len_spec/test.py +24 -0
- snappy/len_spec/test_cases.py +69 -0
- snappy/len_spec/tile.py +275 -0
- snappy/len_spec/word.py +86 -0
- snappy/math_basics.py +39 -13
- snappy/matrix.py +52 -9
- snappy/number.py +12 -6
- snappy/numeric_output_checker.py +2 -3
- snappy/pari.py +8 -4
- snappy/phone_home.py +2 -1
- snappy/polyviewer.py +8 -8
- snappy/ptolemy/__init__.py +1 -1
- snappy/ptolemy/component.py +2 -2
- snappy/ptolemy/coordinates.py +25 -25
- snappy/ptolemy/findLoops.py +9 -9
- snappy/ptolemy/manifoldMethods.py +27 -29
- snappy/ptolemy/polynomial.py +50 -57
- snappy/ptolemy/processFileBase.py +60 -0
- snappy/ptolemy/ptolemyVariety.py +109 -41
- snappy/ptolemy/reginaWrapper.py +4 -4
- snappy/ptolemy/rur.py +1 -1
- snappy/ptolemy/solutionsToPrimeIdealGroebnerBasis.py +9 -9
- snappy/ptolemy/test.py +99 -54
- snappy/ptolemy/utilities.py +1 -1
- snappy/raytracing/__init__.py +64 -0
- snappy/raytracing/additional_horospheres.py +64 -0
- snappy/raytracing/additional_len_spec_choices.py +63 -0
- snappy/raytracing/cohomology_fractal.py +0 -3
- snappy/raytracing/eyeball.py +123 -0
- snappy/raytracing/finite_raytracing_data.py +17 -17
- snappy/raytracing/finite_viewer.py +15 -15
- snappy/raytracing/geodesic_tube_info.py +93 -63
- snappy/raytracing/geodesics.py +94 -64
- snappy/raytracing/geodesics_window.py +56 -34
- snappy/raytracing/gui_utilities.py +21 -6
- snappy/raytracing/hyperboloid_navigation.py +29 -4
- snappy/raytracing/hyperboloid_utilities.py +73 -73
- snappy/raytracing/ideal_raytracing_data.py +121 -91
- snappy/raytracing/inside_viewer.py +199 -66
- snappy/raytracing/pack.py +22 -0
- snappy/raytracing/raytracing_data.py +37 -25
- snappy/raytracing/raytracing_view.py +70 -65
- snappy/raytracing/shaders/Eye.png +0 -0
- snappy/raytracing/shaders/NonGeometric.png +0 -0
- snappy/raytracing/shaders/__init__.py +39 -3
- snappy/raytracing/shaders/fragment.glsl +451 -133
- snappy/raytracing/test.py +29 -0
- snappy/raytracing/tooltip.py +146 -0
- snappy/raytracing/upper_halfspace_utilities.py +42 -9
- snappy/sage_helper.py +67 -134
- snappy/settings.py +90 -77
- snappy/shell.py +2 -0
- snappy/snap/character_varieties.py +2 -2
- snappy/snap/find_field.py +4 -3
- snappy/snap/fundamental_polyhedron.py +2 -2
- snappy/snap/kernel_structures.py +5 -1
- snappy/snap/nsagetools.py +9 -8
- snappy/snap/peripheral/dual_cellulation.py +4 -3
- snappy/snap/peripheral/peripheral.py +2 -2
- snappy/snap/peripheral/surface.py +5 -5
- snappy/snap/peripheral/test.py +1 -1
- snappy/snap/polished_reps.py +8 -8
- snappy/snap/slice_obs_HKL.py +16 -14
- snappy/snap/t3mlite/arrow.py +3 -3
- snappy/snap/t3mlite/edge.py +3 -3
- snappy/snap/t3mlite/homology.py +2 -2
- snappy/snap/t3mlite/mcomplex.py +3 -3
- snappy/snap/t3mlite/simplex.py +12 -0
- snappy/snap/t3mlite/spun.py +18 -17
- snappy/snap/t3mlite/test_vs_regina.py +4 -4
- snappy/snap/test.py +37 -53
- snappy/snap/utilities.py +4 -5
- snappy/test.py +121 -138
- snappy/test_cases.py +263 -0
- snappy/testing.py +131 -0
- snappy/tiling/__init__.py +2 -0
- snappy/tiling/canonical_key_dict.py +59 -0
- snappy/tiling/dict_based_set.py +79 -0
- snappy/tiling/floor.py +49 -0
- snappy/tiling/hyperboloid_dict.py +54 -0
- snappy/tiling/iter_utils.py +78 -0
- snappy/tiling/lifted_tetrahedron.py +22 -0
- snappy/tiling/lifted_tetrahedron_set.py +54 -0
- snappy/tiling/real_hash_dict.py +164 -0
- snappy/tiling/test.py +23 -0
- snappy/tiling/tile.py +215 -0
- snappy/tiling/triangle.py +33 -0
- snappy/tkterminal.py +113 -84
- snappy/twister/main.py +1 -7
- snappy/twister/twister_core.cpython-39-darwin.so +0 -0
- snappy/upper_halfspace/__init__.py +78 -17
- snappy/verify/__init__.py +3 -7
- snappy/verify/{verifyCanonical.py → canonical.py} +78 -70
- snappy/verify/complex_volume/adjust_torsion.py +1 -2
- snappy/verify/complex_volume/closed.py +13 -13
- snappy/verify/complex_volume/cusped.py +6 -6
- snappy/verify/complex_volume/extended_bloch.py +5 -8
- snappy/verify/{cuspTranslations.py → cusp_translations.py} +1 -1
- snappy/verify/edge_equations.py +80 -0
- snappy/verify/exceptions.py +0 -55
- snappy/verify/{verifyHyperbolicity.py → hyperbolicity.py} +3 -3
- snappy/verify/interval_newton_shapes_engine.py +7 -5
- snappy/verify/interval_tree.py +5 -5
- snappy/verify/krawczyk_shapes_engine.py +17 -18
- snappy/verify/maximal_cusp_area_matrix/__init__.py +7 -74
- snappy/verify/maximal_cusp_area_matrix/cusp_tiling_engine.py +3 -4
- snappy/verify/maximal_cusp_area_matrix/cusp_translate_engine.py +1 -1
- snappy/verify/{realAlgebra.py → real_algebra.py} +1 -1
- snappy/verify/shapes.py +5 -3
- snappy/verify/short_slopes.py +39 -41
- snappy/verify/{squareExtensions.py → square_extensions.py} +14 -11
- snappy/verify/test.py +57 -60
- snappy/verify/upper_halfspace/extended_matrix.py +1 -1
- snappy/verify/upper_halfspace/finite_point.py +3 -4
- snappy/verify/upper_halfspace/ideal_point.py +9 -9
- snappy/verify/volume.py +2 -2
- snappy/version.py +2 -2
- {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/METADATA +26 -11
- snappy-3.2.dist-info/RECORD +503 -0
- {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/WHEEL +1 -1
- {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/top_level.txt +6 -1
- snappy/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/__pycache__/browser.cpython-39.pyc +0 -0
- snappy/__pycache__/cache.cpython-39.pyc +0 -0
- snappy/__pycache__/database.cpython-39.pyc +0 -0
- snappy/__pycache__/db_utilities.cpython-39.pyc +0 -0
- snappy/__pycache__/decorated_isosig.cpython-39.pyc +0 -0
- snappy/__pycache__/exceptions.cpython-39.pyc +0 -0
- snappy/__pycache__/export_stl.cpython-39.pyc +0 -0
- snappy/__pycache__/filedialog.cpython-39.pyc +0 -0
- snappy/__pycache__/gui.cpython-39.pyc +0 -0
- snappy/__pycache__/horoviewer.cpython-39.pyc +0 -0
- snappy/__pycache__/infowindow.cpython-39.pyc +0 -0
- snappy/__pycache__/math_basics.cpython-39.pyc +0 -0
- snappy/__pycache__/matrix.cpython-39.pyc +0 -0
- snappy/__pycache__/number.cpython-39.pyc +0 -0
- snappy/__pycache__/numeric_output_checker.cpython-39.pyc +0 -0
- snappy/__pycache__/pari.cpython-39.pyc +0 -0
- snappy/__pycache__/polyviewer.cpython-39.pyc +0 -0
- snappy/__pycache__/sage_helper.cpython-39.pyc +0 -0
- snappy/__pycache__/version.cpython-39.pyc +0 -0
- snappy/doc/_sources/verify_canon.rst.txt +0 -90
- snappy/doc/_static/js/html5shiv-printshiv.min.js +0 -4
- snappy/doc/_static/js/html5shiv.min.js +0 -4
- snappy/doc/verify_canon.html +0 -304
- snappy/drilling/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/constants.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/crush.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/cusps.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/debug.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/epsilons.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/exceptions.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/fixed_points.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/geodesic_info.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/geodesic_tube.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/geometric_structure.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/line.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/moves.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/peripheral_curves.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/perturb.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/quotient_space.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/spatial_dict.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/subdivide.cpython-39.pyc +0 -0
- snappy/drilling/__pycache__/tracing.cpython-39.pyc +0 -0
- snappy/drilling/geodesic_tube.py +0 -441
- snappy/drilling/geometric_structure.py +0 -366
- snappy/drilling/line.py +0 -122
- snappy/drilling/quotient_space.py +0 -94
- snappy/drilling/spatial_dict.py +0 -128
- snappy/exterior_to_link/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/barycentric_geometry.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/exceptions.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/hyp_utils.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/link_projection.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/main.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/mcomplex_with_expansion.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/mcomplex_with_link.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/mcomplex_with_memory.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/pl_utils.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/put_in_S3.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/rational_linear_algebra.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/simplify_to_base_tri.cpython-39.pyc +0 -0
- snappy/exterior_to_link/__pycache__/stored_moves.cpython-39.pyc +0 -0
- snappy/hyperboloid/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/manifolds/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/component.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/coordinates.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/fieldExtensions.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/findLoops.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/homology.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/manifoldMethods.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/matrix.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/numericalSolutionsToGroebnerBasis.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/polynomial.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/processComponents.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/processFileBase.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/processFileDispatch.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/processMagmaFile.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/processRurFile.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/ptolemyGeneralizedObstructionClass.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/ptolemyObstructionClass.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/ptolemyVariety.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/ptolemyVarietyPrimeIdealGroebnerBasis.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/rur.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/solutionsToPrimeIdealGroebnerBasis.cpython-39.pyc +0 -0
- snappy/ptolemy/__pycache__/utilities.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/finite_raytracing_data.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/gui_utilities.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/hyperboloid_navigation.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/hyperboloid_utilities.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/ideal_raytracing_data.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/inside_viewer.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/raytracing_data.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/raytracing_view.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/upper_halfspace_utilities.cpython-39.pyc +0 -0
- snappy/raytracing/__pycache__/view_scale_controller.cpython-39.pyc +0 -0
- snappy/raytracing/zoom_slider/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/character_varieties.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/fundamental_polyhedron.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/interval_reps.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/kernel_structures.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/mcomplex_base.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/nsagetools.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/polished_reps.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/shapes.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/slice_obs_HKL.cpython-39.pyc +0 -0
- snappy/snap/__pycache__/utilities.cpython-39.pyc +0 -0
- snappy/snap/peripheral/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/snap/peripheral/__pycache__/dual_cellulation.cpython-39.pyc +0 -0
- snappy/snap/peripheral/__pycache__/link.cpython-39.pyc +0 -0
- snappy/snap/peripheral/__pycache__/peripheral.cpython-39.pyc +0 -0
- snappy/snap/peripheral/__pycache__/surface.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/arrow.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/corner.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/edge.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/face.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/files.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/homology.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/linalg.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/mcomplex.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/perm4.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/simplex.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/spun.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/surface.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/tetrahedron.cpython-39.pyc +0 -0
- snappy/snap/t3mlite/__pycache__/vertex.cpython-39.pyc +0 -0
- snappy/togl/__init__.py +0 -3
- snappy/togl/darwin-tk8.6/Togl2.1/LICENSE +0 -28
- snappy/togl/darwin-tk8.6/Togl2.1/libTogl2.1.dylib +0 -0
- snappy/togl/darwin-tk8.6/Togl2.1/pkgIndex.tcl +0 -5
- snappy/togl/darwin-tk8.7/Togl2.1/LICENSE +0 -28
- snappy/togl/darwin-tk8.7/Togl2.1/libTogl2.1.dylib +0 -0
- snappy/togl/darwin-tk8.7/Togl2.1/pkgIndex.tcl +0 -5
- snappy/togl/linux2-x86_64-tk8.6/Togl2.1/LICENSE +0 -28
- snappy/togl/linux2-x86_64-tk8.6/Togl2.1/libTogl2.1.so +0 -0
- snappy/togl/linux2-x86_64-tk8.6/Togl2.1/pkgIndex.tcl +0 -5
- snappy/togl/win32VC-tk8.6/Togl2.1/LICENSE +0 -28
- snappy/togl/win32VC-tk8.6/Togl2.1/Togl21.dll +0 -0
- snappy/togl/win32VC-tk8.6/Togl2.1/Togl21.lib +0 -0
- snappy/togl/win32VC-tk8.6/Togl2.1/pkgIndex.tcl +0 -6
- snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/LICENSE +0 -28
- snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/Togl21.dll +0 -0
- snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/Togl21.lib +0 -0
- snappy/togl/win32VC-x86_64-tk8.6/Togl2.1/pkgIndex.tcl +0 -6
- snappy/twister/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/twister/__pycache__/main.cpython-39.pyc +0 -0
- snappy/upper_halfspace/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/upper_halfspace/__pycache__/ideal_point.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/cuspCrossSection.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/cuspTranslations.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/cusp_areas.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/cusp_shapes.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/exceptions.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/interval_newton_shapes_engine.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/interval_tree.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/krawczyk_shapes_engine.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/realAlgebra.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/shapes.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/short_slopes.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/squareExtensions.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/verifyCanonical.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/verifyHyperbolicity.cpython-39.pyc +0 -0
- snappy/verify/__pycache__/volume.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/adjust_torsion.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/closed.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/compute_ptolemys.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/cusped.cpython-39.pyc +0 -0
- snappy/verify/complex_volume/__pycache__/extended_bloch.cpython-39.pyc +0 -0
- snappy/verify/cuspCrossSection.py +0 -1422
- snappy/verify/maximal_cusp_area_matrix/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/verify/maximal_cusp_area_matrix/__pycache__/cusp_tiling_engine.cpython-39.pyc +0 -0
- snappy/verify/maximal_cusp_area_matrix/__pycache__/cusp_translate_engine.cpython-39.pyc +0 -0
- snappy/verify/upper_halfspace/__pycache__/__init__.cpython-39.pyc +0 -0
- snappy/verify/upper_halfspace/__pycache__/extended_matrix.cpython-39.pyc +0 -0
- snappy/verify/upper_halfspace/__pycache__/finite_point.cpython-39.pyc +0 -0
- snappy/verify/upper_halfspace/__pycache__/ideal_point.cpython-39.pyc +0 -0
- snappy-3.1.1.dist-info/RECORD +0 -585
- {snappy-3.1.1.dist-info → snappy-3.2.dist-info}/entry_points.txt +0 -0
snappy/doc/spherogram.html
CHANGED
@@ -1,23 +1,23 @@
|
|
1
|
+
|
2
|
+
|
1
3
|
<!DOCTYPE html>
|
2
|
-
<html class="writer-html5" lang="en" >
|
4
|
+
<html class="writer-html5" lang="en" data-content_root="./">
|
3
5
|
<head>
|
4
|
-
<meta charset="utf-8" /><meta name="
|
6
|
+
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
|
5
7
|
|
6
8
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
7
|
-
<title>Links: planar diagrams and invariants — SnapPy 3.
|
8
|
-
<link rel="stylesheet"
|
9
|
-
<link rel="stylesheet" href="_static/css/theme.css
|
10
|
-
<link rel="stylesheet"
|
11
|
-
|
12
|
-
<!--[if lt IE 9]>
|
13
|
-
<script src="_static/js/html5shiv.min.js"></script>
|
14
|
-
<![endif]-->
|
9
|
+
<title>Links: planar diagrams and invariants — SnapPy 3.2 documentation</title>
|
10
|
+
<link rel="stylesheet" type="text/css" href="_static/pygments.css?v=fa44fd50" />
|
11
|
+
<link rel="stylesheet" type="text/css" href="_static/css/theme.css?v=e59714d7" />
|
12
|
+
<link rel="stylesheet" type="text/css" href="_static/snappy_sphinx_rtd_theme.css?v=1b8ec2a8" />
|
13
|
+
|
15
14
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
15
|
+
<link rel="shortcut icon" href="_static/SnapPy.ico"/>
|
16
|
+
<script src="_static/jquery.js?v=5d32c60e"></script>
|
17
|
+
<script src="_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
|
18
|
+
<script src="_static/documentation_options.js?v=828ea960"></script>
|
19
|
+
<script src="_static/doctools.js?v=9a2dae69"></script>
|
20
|
+
<script src="_static/sphinx_highlight.js?v=dc90522c"></script>
|
21
21
|
<script src="_static/js/theme.js"></script>
|
22
22
|
<link rel="index" title="Index" href="genindex.html" />
|
23
23
|
<link rel="search" title="Search" href="search.html" />
|
@@ -37,9 +37,6 @@
|
|
37
37
|
SnapPy
|
38
38
|
<img src="_static/SnapPy-horizontal-128.png" class="logo" alt="Logo"/>
|
39
39
|
</a>
|
40
|
-
<div class="version">
|
41
|
-
3.1.1
|
42
|
-
</div>
|
43
40
|
<div role="search">
|
44
41
|
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
|
45
42
|
<input type="text" name="q" placeholder="Search docs" aria-label="Search docs" />
|
@@ -149,10 +146,10 @@
|
|
149
146
|
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
|
150
147
|
<div itemprop="articleBody">
|
151
148
|
|
152
|
-
<
|
153
|
-
<h1>Links: planar diagrams and invariants<a class="headerlink" href="#links-planar-diagrams-and-invariants" title="
|
149
|
+
<section id="links-planar-diagrams-and-invariants">
|
150
|
+
<span id="module-spherogram"></span><h1>Links: planar diagrams and invariants<a class="headerlink" href="#links-planar-diagrams-and-invariants" title="Link to this heading"></a></h1>
|
154
151
|
<section id="tutorial">
|
155
|
-
<h2>Tutorial<a class="headerlink" href="#tutorial" title="
|
152
|
+
<h2>Tutorial<a class="headerlink" href="#tutorial" title="Link to this heading"></a></h2>
|
156
153
|
<p>SnapPy includes the <a class="reference external" href="https://github.com/3-manifolds/Spherogram">Spherogram</a> module which allows one to
|
157
154
|
create links programmatically. The graphical conventions used are
|
158
155
|
<a class="reference external" href="https://github.com/3-manifolds/Spherogram/raw/master/spherogram_src/links/doc.pdf">summarized here</a>.</p>
|
@@ -217,10 +214,10 @@ basic link invariants, including the Jones polynomial. See the
|
|
217
214
|
complete list of Link methods below.</p>
|
218
215
|
</section>
|
219
216
|
<section id="random-links">
|
220
|
-
<h2>Random Links<a class="headerlink" href="#random-links" title="
|
217
|
+
<h2>Random Links<a class="headerlink" href="#random-links" title="Link to this heading"></a></h2>
|
221
218
|
<dl class="py function">
|
222
219
|
<dt class="sig sig-object py" id="spherogram.random_link">
|
223
|
-
<span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">random_link</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">crossings</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">num_components</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'any'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">initial_map_gives_link</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">alternating</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">consistent_twist_regions</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">simplify</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'basic'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prime_decomposition</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">return_all_pieces</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_tries</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">100</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.random_link" title="
|
220
|
+
<span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">random_link</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">crossings</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">num_components</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'any'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">initial_map_gives_link</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">alternating</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">consistent_twist_regions</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">simplify</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'basic'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prime_decomposition</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">return_all_pieces</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">max_tries</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">100</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.random_link" title="Link to this definition"></a></dt>
|
224
221
|
<dd><p>Generates a random link from a model that starts with a random
|
225
222
|
4-valent planar graph sampled with the uniform distribution by
|
226
223
|
Schaeffer’s <a class="reference external" href="http://www.lix.polytechnique.fr/~schaeffe/PagesWeb/PlanarMap/index-en.html">PlanarMap program.</a></p>
|
@@ -249,12 +246,12 @@ set this argument to <code class="docutils literal notranslate"><span class="pre
|
|
249
246
|
</li>
|
250
247
|
<li><p>The 4-valent vertices of G are turned into crossings by flipping a
|
251
248
|
fair coin. If you want the unique alternating diagram associated to
|
252
|
-
G, pass <code class="docutils literal notranslate"><span class="pre">alternating
|
249
|
+
G, pass <code class="docutils literal notranslate"><span class="pre">alternating=True</span></code>. If you want there to be no
|
253
250
|
obvious Type II Reidemeister moves, pass
|
254
|
-
<code class="docutils literal notranslate"><span class="pre">consistent_twist_regions
|
251
|
+
<code class="docutils literal notranslate"><span class="pre">consistent_twist_regions=True</span></code>.</p></li>
|
255
252
|
<li><p><code class="docutils literal notranslate"><span class="pre">simplify</span></code>: Whether and how to try to reduce the number of
|
256
253
|
crossings of the link via Reidemeister moves using the method
|
257
|
-
<code class="docutils literal notranslate"><span class="pre">Link.simplify</span></code>. For no simplification, set <code class="docutils literal notranslate"><span class="pre">simplify
|
254
|
+
<code class="docutils literal notranslate"><span class="pre">Link.simplify</span></code>. For no simplification, set <code class="docutils literal notranslate"><span class="pre">simplify=None</span></code>;
|
258
255
|
otherwise set <code class="docutils literal notranslate"><span class="pre">simplify</span></code> to be the appropriate mode for
|
259
256
|
<code class="docutils literal notranslate"><span class="pre">Link.simplify</span></code>, for example <code class="docutils literal notranslate"><span class="pre">basic</span></code> (the default), <code class="docutils literal notranslate"><span class="pre">level</span></code>,
|
260
257
|
or <code class="docutils literal notranslate"><span class="pre">global</span></code>.</p></li>
|
@@ -287,10 +284,10 @@ can have fewer components than the link as a whole.</p>
|
|
287
284
|
|
288
285
|
</section>
|
289
286
|
<section id="the-link-class">
|
290
|
-
<h2>The Link class<a class="headerlink" href="#the-link-class" title="
|
287
|
+
<h2>The Link class<a class="headerlink" href="#the-link-class" title="Link to this heading"></a></h2>
|
291
288
|
<dl class="py class">
|
292
289
|
<dt class="sig sig-object py" id="spherogram.Link">
|
293
|
-
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">Link</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">crossings</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">braid_closure</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">check_planarity</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link" title="
|
290
|
+
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">Link</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">crossings</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">braid_closure</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">check_planarity</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">build</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link" title="Link to this definition"></a></dt>
|
294
291
|
<dd><p>Links are made from Crossings. The general model is that of the PD
|
295
292
|
diagrams used in <a class="reference external" href="http://katlas.org/wiki/Planar_Diagrams">KnotTheory</a>.</p>
|
296
293
|
<p>See the file “doc.pdf” for the conventions, which can be accessed
|
@@ -339,7 +336,7 @@ Hoste-Thistlethwaite tables by name.</p>
|
|
339
336
|
see the documentation for the “sage_link” method for details.</p>
|
340
337
|
<dl class="py method">
|
341
338
|
<dt class="sig sig-object py" id="spherogram.Link.DT_code">
|
342
|
-
<span class="sig-name descname"><span class="pre">DT_code</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">DT_alpha</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flips</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.DT_code" title="
|
339
|
+
<span class="sig-name descname"><span class="pre">DT_code</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">DT_alpha</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">flips</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.DT_code" title="Link to this definition"></a></dt>
|
343
340
|
<dd><p>The Dowker-Thistlethwaite code for the link in either numerical or
|
344
341
|
alphabetical form.</p>
|
345
342
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'K8n1'</span><span class="p">)</span>
|
@@ -356,12 +353,12 @@ each component; subsequent letters describe each crossing with
|
|
356
353
|
|
357
354
|
<dl class="py method">
|
358
355
|
<dt class="sig sig-object py" id="spherogram.Link.KLPProjection">
|
359
|
-
<span class="sig-name descname"><span class="pre">KLPProjection</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.KLPProjection" title="
|
356
|
+
<span class="sig-name descname"><span class="pre">KLPProjection</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.KLPProjection" title="Link to this definition"></a></dt>
|
360
357
|
<dd></dd></dl>
|
361
358
|
|
362
359
|
<dl class="py method">
|
363
360
|
<dt class="sig sig-object py" id="spherogram.Link.PD_code">
|
364
|
-
<span class="sig-name descname"><span class="pre">PD_code</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">KnotTheory</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">min_strand_index</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.PD_code" title="
|
361
|
+
<span class="sig-name descname"><span class="pre">PD_code</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">KnotTheory</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">min_strand_index</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.PD_code" title="Link to this definition"></a></dt>
|
365
362
|
<dd><p>The planar diagram code for the link. When reconstructing a link
|
366
363
|
from its PD code, it will not change the ordering of the
|
367
364
|
components, and will preserve their orientation except
|
@@ -378,7 +375,7 @@ possibly for components with only two crossings.</p>
|
|
378
375
|
|
379
376
|
<dl class="py method">
|
380
377
|
<dt class="sig sig-object py" id="spherogram.Link.alexander_matrix">
|
381
|
-
<span class="sig-name descname"><span class="pre">alexander_matrix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mv</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_matrix" title="
|
378
|
+
<span class="sig-name descname"><span class="pre">alexander_matrix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mv</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_matrix" title="Link to this definition"></a></dt>
|
382
379
|
<dd><p>Returns the Alexander matrix of the link:</p>
|
383
380
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'3_1'</span><span class="p">)</span>
|
384
381
|
<span class="n">sage</span><span class="p">:</span> <span class="n">A</span> <span class="o">=</span> <span class="n">L</span><span class="o">.</span><span class="n">alexander_matrix</span><span class="p">()</span>
|
@@ -398,13 +395,13 @@ possibly for components with only two crossings.</p>
|
|
398
395
|
|
399
396
|
<dl class="py method">
|
400
397
|
<dt class="sig sig-object py" id="spherogram.Link.alexander_poly">
|
401
|
-
<span class="sig-name descname"><span class="pre">alexander_poly</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_poly" title="
|
398
|
+
<span class="sig-name descname"><span class="pre">alexander_poly</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_poly" title="Link to this definition"></a></dt>
|
402
399
|
<dd><p>Please use the “alexander_polynomial” method instead.</p>
|
403
400
|
</dd></dl>
|
404
401
|
|
405
402
|
<dl class="py method">
|
406
403
|
<dt class="sig sig-object py" id="spherogram.Link.alexander_polynomial">
|
407
|
-
<span class="sig-name descname"><span class="pre">alexander_polynomial</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">multivar</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">v</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'no'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">method</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'default'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">norm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">factored</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_polynomial" title="
|
404
|
+
<span class="sig-name descname"><span class="pre">alexander_polynomial</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">multivar</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">v</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'no'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">method</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'default'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">norm</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">factored</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alexander_polynomial" title="Link to this definition"></a></dt>
|
408
405
|
<dd><p>Calculates the Alexander polynomial of the link.</p>
|
409
406
|
<p>For links with one component,
|
410
407
|
can evaluate the alexander polynomial at v:</p>
|
@@ -431,12 +428,12 @@ Wirtinger presentation for the link:</p>
|
|
431
428
|
|
432
429
|
<dl class="py method">
|
433
430
|
<dt class="sig sig-object py" id="spherogram.Link.all_crossings_oriented">
|
434
|
-
<span class="sig-name descname"><span class="pre">all_crossings_oriented</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.all_crossings_oriented" title="
|
431
|
+
<span class="sig-name descname"><span class="pre">all_crossings_oriented</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.all_crossings_oriented" title="Link to this definition"></a></dt>
|
435
432
|
<dd></dd></dl>
|
436
433
|
|
437
434
|
<dl class="py method">
|
438
435
|
<dt class="sig sig-object py" id="spherogram.Link.alternating">
|
439
|
-
<span class="sig-name descname"><span class="pre">alternating</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alternating" title="
|
436
|
+
<span class="sig-name descname"><span class="pre">alternating</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.alternating" title="Link to this definition"></a></dt>
|
440
437
|
<dd><p>Returns the alternating link with the same planar graph. No attempt
|
441
438
|
is made to preserve the order of the link components or ensure
|
442
439
|
that the DT code of the result has all positive entries (as
|
@@ -451,7 +448,7 @@ opposed to all negative).</p>
|
|
451
448
|
|
452
449
|
<dl class="py method">
|
453
450
|
<dt class="sig sig-object py" id="spherogram.Link.backtrack">
|
454
|
-
<span class="sig-name descname"><span class="pre">backtrack</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">steps</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prob_type_1</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prob_type_2</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.backtrack" title="
|
451
|
+
<span class="sig-name descname"><span class="pre">backtrack</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">steps</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">10</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prob_type_1</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">prob_type_2</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">0.3</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.backtrack" title="Link to this definition"></a></dt>
|
455
452
|
<dd><p>Performs a sequence of Reidemeister moves which increase or maintain
|
456
453
|
the number of crossings in a diagram. The number of such
|
457
454
|
moves is the parameter steps. The diagram is modified in place.</p>
|
@@ -470,7 +467,7 @@ moves is the parameter steps. The diagram is modified in place.</p>
|
|
470
467
|
|
471
468
|
<dl class="py method">
|
472
469
|
<dt class="sig sig-object py" id="spherogram.Link.black_graph">
|
473
|
-
<span class="sig-name descname"><span class="pre">black_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.black_graph" title="
|
470
|
+
<span class="sig-name descname"><span class="pre">black_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.black_graph" title="Link to this definition"></a></dt>
|
474
471
|
<dd><p>Returns the black graph of K.</p>
|
475
472
|
<p>If the black graph is disconnected (which can only happen for
|
476
473
|
a split link diagram), returns one connected component. The
|
@@ -488,7 +485,7 @@ expected way.</p>
|
|
488
485
|
|
489
486
|
<dl class="py method">
|
490
487
|
<dt class="sig sig-object py" id="spherogram.Link.braid_word">
|
491
|
-
<span class="sig-name descname"><span class="pre">braid_word</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_sage_braid</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.braid_word" title="
|
488
|
+
<span class="sig-name descname"><span class="pre">braid_word</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">as_sage_braid</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.braid_word" title="Link to this definition"></a></dt>
|
492
489
|
<dd><p>Return a list of integers which defines a braid word whose closure is the
|
493
490
|
given link. The natural numbers 1, 2, 3, etc are the generators and the
|
494
491
|
negatives are the inverses.</p>
|
@@ -513,7 +510,7 @@ braids, a new algorithm”.</p>
|
|
513
510
|
|
514
511
|
<dl class="py method">
|
515
512
|
<dt class="sig sig-object py" id="spherogram.Link.connected_sum">
|
516
|
-
<span class="sig-name descname"><span class="pre">connected_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other_knot</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.connected_sum" title="
|
513
|
+
<span class="sig-name descname"><span class="pre">connected_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">other_knot</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.connected_sum" title="Link to this definition"></a></dt>
|
517
514
|
<dd><p>Returns the connected sum of two knots.</p>
|
518
515
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">fig8</span> <span class="o">=</span> <span class="p">[(</span><span class="mi">1</span><span class="p">,</span><span class="mi">7</span><span class="p">,</span><span class="mi">2</span><span class="p">,</span><span class="mi">6</span><span class="p">),</span> <span class="p">(</span><span class="mi">5</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">6</span><span class="p">,</span><span class="mi">2</span><span class="p">),</span> <span class="p">(</span><span class="mi">7</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">5</span><span class="p">),</span> <span class="p">(</span><span class="mi">3</span><span class="p">,</span><span class="mi">0</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">1</span><span class="p">)]</span>
|
519
516
|
<span class="gp">>>> </span><span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="n">fig8</span><span class="p">)</span>
|
@@ -525,7 +522,7 @@ braids, a new algorithm”.</p>
|
|
525
522
|
|
526
523
|
<dl class="py method">
|
527
524
|
<dt class="sig sig-object py" id="spherogram.Link.copy">
|
528
|
-
<span class="sig-name descname"><span class="pre">copy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">recursively</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.copy" title="
|
525
|
+
<span class="sig-name descname"><span class="pre">copy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">recursively</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.copy" title="Link to this definition"></a></dt>
|
529
526
|
<dd><p>Returns a copy of the link.</p>
|
530
527
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'L14n467'</span><span class="p">)</span>
|
531
528
|
<span class="gp">>>> </span><span class="n">copy</span> <span class="o">=</span> <span class="n">K</span><span class="o">.</span><span class="n">copy</span><span class="p">();</span> <span class="n">copy</span>
|
@@ -538,17 +535,17 @@ braids, a new algorithm”.</p>
|
|
538
535
|
|
539
536
|
<dl class="py method">
|
540
537
|
<dt class="sig sig-object py" id="spherogram.Link.crossing_entries">
|
541
|
-
<span class="sig-name descname"><span class="pre">crossing_entries</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.crossing_entries" title="
|
538
|
+
<span class="sig-name descname"><span class="pre">crossing_entries</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.crossing_entries" title="Link to this definition"></a></dt>
|
542
539
|
<dd></dd></dl>
|
543
540
|
|
544
541
|
<dl class="py method">
|
545
542
|
<dt class="sig sig-object py" id="spherogram.Link.crossing_strands">
|
546
|
-
<span class="sig-name descname"><span class="pre">crossing_strands</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.crossing_strands" title="
|
543
|
+
<span class="sig-name descname"><span class="pre">crossing_strands</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.crossing_strands" title="Link to this definition"></a></dt>
|
547
544
|
<dd></dd></dl>
|
548
545
|
|
549
546
|
<dl class="py method">
|
550
547
|
<dt class="sig sig-object py" id="spherogram.Link.deconnect_sum">
|
551
|
-
<span class="sig-name descname"><span class="pre">deconnect_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destroy_original</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.deconnect_sum" title="
|
548
|
+
<span class="sig-name descname"><span class="pre">deconnect_sum</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destroy_original</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.deconnect_sum" title="Link to this definition"></a></dt>
|
552
549
|
<dd><p>Undoes all connect sums that are diagramatically obvious,
|
553
550
|
i.e. those where there is a circle which meets the projection
|
554
551
|
in two points.</p>
|
@@ -564,7 +561,7 @@ in two points.</p>
|
|
564
561
|
|
565
562
|
<dl class="py method">
|
566
563
|
<dt class="sig sig-object py" id="spherogram.Link.determinant">
|
567
|
-
<span class="sig-name descname"><span class="pre">determinant</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">method</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'goeritz'</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.determinant" title="
|
564
|
+
<span class="sig-name descname"><span class="pre">determinant</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">method</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'goeritz'</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.determinant" title="Link to this definition"></a></dt>
|
568
565
|
<dd><p>Returns the determinant of the link, a non-negative integer.</p>
|
569
566
|
<p>Possible methods are ‘wirt’, using the Wirtinger presentation; ‘goeritz’,
|
570
567
|
using the Goeritz matrix, and ‘color’, using the ‘colorability matrix’, or
|
@@ -578,13 +575,13 @@ anything else, to compute the Alexander polynomial at -1. Example:</p>
|
|
578
575
|
|
579
576
|
<dl class="py method">
|
580
577
|
<dt class="sig sig-object py" id="spherogram.Link.digraph">
|
581
|
-
<span class="sig-name descname"><span class="pre">digraph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.digraph" title="
|
578
|
+
<span class="sig-name descname"><span class="pre">digraph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.digraph" title="Link to this definition"></a></dt>
|
582
579
|
<dd><p>The underlying directed graph for the link diagram.</p>
|
583
580
|
</dd></dl>
|
584
581
|
|
585
582
|
<dl class="py method">
|
586
583
|
<dt class="sig sig-object py" id="spherogram.Link.dual_graph">
|
587
|
-
<span class="sig-name descname"><span class="pre">dual_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.dual_graph" title="
|
584
|
+
<span class="sig-name descname"><span class="pre">dual_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.dual_graph" title="Link to this definition"></a></dt>
|
588
585
|
<dd><p>The dual graph to a link diagram D, whose vertices correspond to
|
589
586
|
complementary regions (faces) of D and whose edges are dual to the
|
590
587
|
edges of D.</p>
|
@@ -592,7 +589,7 @@ edges of D.</p>
|
|
592
589
|
|
593
590
|
<dl class="py method">
|
594
591
|
<dt class="sig sig-object py" id="spherogram.Link.exterior">
|
595
|
-
<span class="sig-name descname"><span class="pre">exterior</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">with_hyperbolic_structure</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">remove_finite_vertices</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.exterior" title="
|
592
|
+
<span class="sig-name descname"><span class="pre">exterior</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">with_hyperbolic_structure</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">remove_finite_vertices</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.exterior" title="Link to this definition"></a></dt>
|
596
593
|
<dd><p>The exterior or complement of the link L, that is, S^3 minus L.</p>
|
597
594
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'4_1'</span><span class="p">)</span>
|
598
595
|
<span class="gp">>>> </span><span class="n">M</span> <span class="o">=</span> <span class="n">K</span><span class="o">.</span><span class="n">exterior</span><span class="p">()</span>
|
@@ -614,7 +611,7 @@ projection plane, set the flag remove_finite_vertices to False.</p>
|
|
614
611
|
|
615
612
|
<dl class="py method">
|
616
613
|
<dt class="sig sig-object py" id="spherogram.Link.faces">
|
617
|
-
<span class="sig-name descname"><span class="pre">faces</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.faces" title="
|
614
|
+
<span class="sig-name descname"><span class="pre">faces</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.faces" title="Link to this definition"></a></dt>
|
618
615
|
<dd><p>The faces are the complementary regions of the link diagram. Each face
|
619
616
|
is given as a list of corners of crossings as one goes around
|
620
617
|
<em>clockwise</em>. These corners are recorded as CrossingStrands,
|
@@ -626,7 +623,7 @@ as the <em>heads</em> of the oriented edges of the face.</p>
|
|
626
623
|
|
627
624
|
<dl class="py method">
|
628
625
|
<dt class="sig sig-object py" id="spherogram.Link.goeritz_matrix">
|
629
|
-
<span class="sig-name descname"><span class="pre">goeritz_matrix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">return_graph</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.goeritz_matrix" title="
|
626
|
+
<span class="sig-name descname"><span class="pre">goeritz_matrix</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">return_graph</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.goeritz_matrix" title="Link to this definition"></a></dt>
|
630
627
|
<dd><p>Call self.white_graph() and return the Goeritz matrix of the result.
|
631
628
|
If the return_graph flag is set, also return the graph:</p>
|
632
629
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">K</span><span class="o">=</span><span class="n">Link</span><span class="p">(</span><span class="s1">'4_1'</span><span class="p">)</span>
|
@@ -638,7 +635,7 @@ If the return_graph flag is set, also return the graph:</p>
|
|
638
635
|
|
639
636
|
<dl class="py method">
|
640
637
|
<dt class="sig sig-object py" id="spherogram.Link.is_alternating">
|
641
|
-
<span class="sig-name descname"><span class="pre">is_alternating</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.is_alternating" title="
|
638
|
+
<span class="sig-name descname"><span class="pre">is_alternating</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.is_alternating" title="Link to this definition"></a></dt>
|
642
639
|
<dd><p>Returns whether or not this link diagram is alternating.</p>
|
643
640
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'K9a1'</span><span class="p">)</span>
|
644
641
|
<span class="gp">>>> </span><span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'K10n1'</span><span class="p">)</span>
|
@@ -661,9 +658,9 @@ class. Here is the Hopf link with two silly extra crossings:</p>
|
|
661
658
|
|
662
659
|
<dl class="py method">
|
663
660
|
<dt class="sig sig-object py" id="spherogram.Link.is_planar">
|
664
|
-
<span class="sig-name descname"><span class="pre">is_planar</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.is_planar" title="
|
665
|
-
<dd><p>Whether the 4-valent graph underlying the link projection is planar
|
666
|
-
Should always be True for any actual Link.</p>
|
661
|
+
<span class="sig-name descname"><span class="pre">is_planar</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.is_planar" title="Link to this definition"></a></dt>
|
662
|
+
<dd><p>Whether the 4-valent graph underlying the link projection is planar.</p>
|
663
|
+
<p>Should always be <code class="docutils literal notranslate"><span class="pre">True</span></code> for any actual Link.</p>
|
667
664
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">c</span> <span class="o">=</span> <span class="n">Crossing</span><span class="p">()</span>
|
668
665
|
<span class="gp">>>> </span><span class="n">c</span><span class="p">[</span><span class="mi">0</span><span class="p">],</span> <span class="n">c</span><span class="p">[</span><span class="mi">1</span><span class="p">]</span> <span class="o">=</span> <span class="n">c</span><span class="p">[</span><span class="mi">2</span><span class="p">],</span> <span class="n">c</span><span class="p">[</span><span class="mi">3</span><span class="p">]</span> <span class="c1"># Punctured torus gluing</span>
|
669
666
|
<span class="gp">>>> </span><span class="n">bad</span> <span class="o">=</span> <span class="n">Link</span><span class="p">([</span><span class="n">c</span><span class="p">],</span> <span class="n">check_planarity</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
@@ -695,7 +692,7 @@ False
|
|
695
692
|
|
696
693
|
<dl class="py method">
|
697
694
|
<dt class="sig sig-object py" id="spherogram.Link.jones_polynomial">
|
698
|
-
<span class="sig-name descname"><span class="pre">jones_polynomial</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">variable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_convention</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.jones_polynomial" title="
|
695
|
+
<span class="sig-name descname"><span class="pre">jones_polynomial</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">variable</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">new_convention</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.jones_polynomial" title="Link to this definition"></a></dt>
|
699
696
|
<dd><p>Returns the Jones polynomial of the link, following the
|
700
697
|
conventions of <a class="reference external" href="https://arxiv.org/abs/math/0201043">https://arxiv.org/abs/math/0201043</a></p>
|
701
698
|
<p>In particular, it obeys the oriented skein relation:</p>
|
@@ -729,7 +726,7 @@ can recover the old conventions as illustrated below:</p>
|
|
729
726
|
|
730
727
|
<dl class="py method">
|
731
728
|
<dt class="sig sig-object py" id="spherogram.Link.knot_floer_homology">
|
732
|
-
<span class="sig-name descname"><span class="pre">knot_floer_homology</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">prime</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">complex</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.knot_floer_homology" title="
|
729
|
+
<span class="sig-name descname"><span class="pre">knot_floer_homology</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">prime</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">2</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">complex</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.knot_floer_homology" title="Link to this definition"></a></dt>
|
733
730
|
<dd><p>Uses Zoltán Szabó’s HFK Calculator to compute the knot Floer
|
734
731
|
homology. This also gives the Seifert genus, whether the knot
|
735
732
|
fibers, etc:</p>
|
@@ -783,23 +780,23 @@ is recorded.)</p></li>
|
|
783
780
|
</ul>
|
784
781
|
<p>For example, to compute the vertical differential, whose homology
|
785
782
|
is HFhat(S^3), you can do:</p>
|
786
|
-
<div class="
|
787
|
-
<span class="
|
788
|
-
<span class="
|
789
|
-
<span class="
|
783
|
+
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">data</span> <span class="o">=</span> <span class="n">L</span><span class="o">.</span><span class="n">knot_floer_homology</span><span class="p">(</span><span class="n">prime</span><span class="o">=</span><span class="mi">31991</span><span class="p">,</span> <span class="nb">complex</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
784
|
+
<span class="n">sage</span><span class="p">:</span> <span class="n">gens</span><span class="p">,</span> <span class="n">diff</span> <span class="o">=</span> <span class="n">data</span><span class="p">[</span><span class="s1">'generators'</span><span class="p">],</span> <span class="n">data</span><span class="p">[</span><span class="s1">'differentials'</span><span class="p">]</span>
|
785
|
+
<span class="n">sage</span><span class="p">:</span> <span class="n">vert</span> <span class="o">=</span> <span class="p">{(</span><span class="n">i</span><span class="p">,</span><span class="n">j</span><span class="p">):</span><span class="n">diff</span><span class="p">[</span><span class="n">i</span><span class="p">,</span> <span class="n">j</span><span class="p">]</span> <span class="k">for</span> <span class="n">i</span><span class="p">,</span> <span class="n">j</span> <span class="ow">in</span> <span class="n">diff</span>
|
786
|
+
<span class="o">...</span> <span class="k">if</span> <span class="n">gens</span><span class="p">[</span><span class="n">i</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span> <span class="o">==</span> <span class="n">gens</span><span class="p">[</span><span class="n">j</span><span class="p">][</span><span class="mi">1</span><span class="p">]</span> <span class="o">+</span> <span class="mi">1</span><span class="p">}</span>
|
787
|
+
<span class="n">sage</span><span class="p">:</span> <span class="kn">from</span> <span class="nn">sage.all</span> <span class="kn">import</span> <span class="n">matrix</span><span class="p">,</span> <span class="n">GF</span>
|
788
|
+
<span class="n">sage</span><span class="p">:</span> <span class="n">M</span> <span class="o">=</span> <span class="n">matrix</span><span class="p">(</span><span class="n">GF</span><span class="p">(</span><span class="mi">31991</span><span class="p">),</span> <span class="nb">len</span><span class="p">(</span><span class="n">gens</span><span class="p">),</span> <span class="nb">len</span><span class="p">(</span><span class="n">gens</span><span class="p">),</span> <span class="n">vert</span><span class="p">,</span> <span class="n">sparse</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
|
789
|
+
<span class="n">sage</span><span class="p">:</span> <span class="n">M</span><span class="o">*</span><span class="n">M</span> <span class="o">==</span> <span class="mi">0</span>
|
790
|
+
<span class="kc">True</span>
|
791
|
+
<span class="n">sage</span><span class="p">:</span> <span class="n">M</span><span class="o">.</span><span class="n">right_kernel</span><span class="p">()</span><span class="o">.</span><span class="n">rank</span><span class="p">()</span> <span class="o">-</span> <span class="n">M</span><span class="o">.</span><span class="n">rank</span><span class="p">()</span>
|
792
|
+
<span class="mi">1</span>
|
790
793
|
</pre></div>
|
791
794
|
</div>
|
792
|
-
<p>sage: from sage.all import matrix, GF
|
793
|
-
sage: M = matrix(GF(31991), len(gens), len(gens), vert, sparse=True)
|
794
|
-
sage: M*M == 0
|
795
|
-
True
|
796
|
-
sage: M.right_kernel().rank() - M.rank()
|
797
|
-
1</p>
|
798
795
|
</dd></dl>
|
799
796
|
|
800
797
|
<dl class="py method">
|
801
798
|
<dt class="sig sig-object py" id="spherogram.Link.knot_group">
|
802
|
-
<span class="sig-name descname"><span class="pre">knot_group</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.knot_group" title="
|
799
|
+
<span class="sig-name descname"><span class="pre">knot_group</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.knot_group" title="Link to this definition"></a></dt>
|
803
800
|
<dd><p>Computes the knot group using the Wirtinger presentation.</p>
|
804
801
|
<p>Returns a finitely presented group:</p>
|
805
802
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span>sage: K = Link('3_1')
|
@@ -812,7 +809,7 @@ sage: type(G)
|
|
812
809
|
|
813
810
|
<dl class="py method">
|
814
811
|
<dt class="sig sig-object py" id="spherogram.Link.linking_matrix">
|
815
|
-
<span class="sig-name descname"><span class="pre">linking_matrix</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.linking_matrix" title="
|
812
|
+
<span class="sig-name descname"><span class="pre">linking_matrix</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.linking_matrix" title="Link to this definition"></a></dt>
|
816
813
|
<dd><p>Calculates the linking number for each pair of link components.</p>
|
817
814
|
<p>Returns a linking matrix, in which the (i,j)th component is the
|
818
815
|
linking number of the ith and jth link components.</p>
|
@@ -820,7 +817,7 @@ linking number of the ith and jth link components.</p>
|
|
820
817
|
|
821
818
|
<dl class="py method">
|
822
819
|
<dt class="sig sig-object py" id="spherogram.Link.linking_number">
|
823
|
-
<span class="sig-name descname"><span class="pre">linking_number</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.linking_number" title="
|
820
|
+
<span class="sig-name descname"><span class="pre">linking_number</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.linking_number" title="Link to this definition"></a></dt>
|
824
821
|
<dd><p>Returns the linking number of self if self has two components;
|
825
822
|
or the sum of the linking numbers of all pairs of components
|
826
823
|
in general.</p>
|
@@ -828,14 +825,14 @@ in general.</p>
|
|
828
825
|
|
829
826
|
<dl class="py method">
|
830
827
|
<dt class="sig sig-object py" id="spherogram.Link.mirror">
|
831
|
-
<span class="sig-name descname"><span class="pre">mirror</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.mirror" title="
|
828
|
+
<span class="sig-name descname"><span class="pre">mirror</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.mirror" title="Link to this definition"></a></dt>
|
832
829
|
<dd><p>Returns the mirror image of the link, preserving link orientations and
|
833
830
|
component order.</p>
|
834
831
|
</dd></dl>
|
835
832
|
|
836
833
|
<dl class="py method">
|
837
834
|
<dt class="sig sig-object py" id="spherogram.Link.morse_diagram">
|
838
|
-
<span class="sig-name descname"><span class="pre">morse_diagram</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.morse_diagram" title="
|
835
|
+
<span class="sig-name descname"><span class="pre">morse_diagram</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.morse_diagram" title="Link to this definition"></a></dt>
|
839
836
|
<dd><p>Returns a MorseLinkDiagram of this link diagram, that is a choice
|
840
837
|
of height function which realizes the Morse number:</p>
|
841
838
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'L8n2'</span><span class="p">)</span>
|
@@ -853,7 +850,7 @@ of height function which realizes the Morse number:</p>
|
|
853
850
|
|
854
851
|
<dl class="py method">
|
855
852
|
<dt class="sig sig-object py" id="spherogram.Link.morse_number">
|
856
|
-
<span class="sig-name descname"><span class="pre">morse_number</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">solver</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'GLPK'</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.morse_number" title="
|
853
|
+
<span class="sig-name descname"><span class="pre">morse_number</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">solver</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'GLPK'</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.morse_number" title="Link to this definition"></a></dt>
|
857
854
|
<dd><p>The <em>Morse number</em> of a planar link diagram D is</p>
|
858
855
|
<blockquote>
|
859
856
|
<div><p>m(D) = min { # of maxima of h on D }</p>
|
@@ -873,7 +870,7 @@ traditional bridge number. Examples:</p>
|
|
873
870
|
|
874
871
|
<dl class="py method">
|
875
872
|
<dt class="sig sig-object py" id="spherogram.Link.optimize_overcrossings">
|
876
|
-
<span class="sig-name descname"><span class="pre">optimize_overcrossings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.optimize_overcrossings" title="
|
873
|
+
<span class="sig-name descname"><span class="pre">optimize_overcrossings</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.optimize_overcrossings" title="Link to this definition"></a></dt>
|
877
874
|
<dd><p>Minimizes the number of crossings of a strand which crosses entirely
|
878
875
|
above the diagram by finding the path crossing over the diagram with
|
879
876
|
the least number of overcrossings. It begins with the longest
|
@@ -897,7 +894,7 @@ reduces the number of crossings. Returns number of crossings removed.</p>
|
|
897
894
|
|
898
895
|
<dl class="py method">
|
899
896
|
<dt class="sig sig-object py" id="spherogram.Link.overstrands">
|
900
|
-
<span class="sig-name descname"><span class="pre">overstrands</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.overstrands" title="
|
897
|
+
<span class="sig-name descname"><span class="pre">overstrands</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.overstrands" title="Link to this definition"></a></dt>
|
901
898
|
<dd><p>Returns a list of the sequences of overcrossings (which are lists of
|
902
899
|
CrossingEntryPoints), sorted in descending order of length.</p>
|
903
900
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'L14n1000'</span><span class="p">)</span>
|
@@ -909,12 +906,12 @@ CrossingEntryPoints), sorted in descending order of length.</p>
|
|
909
906
|
|
910
907
|
<dl class="py method">
|
911
908
|
<dt class="sig sig-object py" id="spherogram.Link.peer_code">
|
912
|
-
<span class="sig-name descname"><span class="pre">peer_code</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.peer_code" title="
|
909
|
+
<span class="sig-name descname"><span class="pre">peer_code</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.peer_code" title="Link to this definition"></a></dt>
|
913
910
|
<dd></dd></dl>
|
914
911
|
|
915
912
|
<dl class="py method">
|
916
913
|
<dt class="sig sig-object py" id="spherogram.Link.sage_link">
|
917
|
-
<span class="sig-name descname"><span class="pre">sage_link</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.sage_link" title="
|
914
|
+
<span class="sig-name descname"><span class="pre">sage_link</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.sage_link" title="Link to this definition"></a></dt>
|
918
915
|
<dd><p>Convert to a SageMath Knot or Link:</p>
|
919
916
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'K10n11'</span><span class="p">)</span> <span class="c1"># Spherogram link</span>
|
920
917
|
<span class="n">sage</span><span class="p">:</span> <span class="n">K</span> <span class="o">=</span> <span class="n">L</span><span class="o">.</span><span class="n">sage_link</span><span class="p">();</span> <span class="n">K</span>
|
@@ -949,7 +946,7 @@ sage: Link(S)
|
|
949
946
|
|
950
947
|
<dl class="py method">
|
951
948
|
<dt class="sig sig-object py" id="spherogram.Link.seifert_matrix">
|
952
|
-
<span class="sig-name descname"><span class="pre">seifert_matrix</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.seifert_matrix" title="
|
949
|
+
<span class="sig-name descname"><span class="pre">seifert_matrix</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.seifert_matrix" title="Link to this definition"></a></dt>
|
953
950
|
<dd><p>Returns the Seifert matrix of the link:</p>
|
954
951
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'K10n11'</span><span class="p">)</span>
|
955
952
|
<span class="n">sage</span><span class="p">:</span> <span class="n">A</span> <span class="o">=</span> <span class="n">L</span><span class="o">.</span><span class="n">seifert_matrix</span><span class="p">()</span>
|
@@ -968,7 +965,7 @@ from a braid representation.” (2007).</p>
|
|
968
965
|
|
969
966
|
<dl class="py method">
|
970
967
|
<dt class="sig sig-object py" id="spherogram.Link.signature">
|
971
|
-
<span class="sig-name descname"><span class="pre">signature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">new_convention</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.signature" title="
|
968
|
+
<span class="sig-name descname"><span class="pre">signature</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">new_convention</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">True</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.signature" title="Link to this definition"></a></dt>
|
972
969
|
<dd><p>Returns the signature of the link, computed from the Goeritz matrix using
|
973
970
|
the algorithm of Gordon and Litherland:</p>
|
974
971
|
<div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">sage</span><span class="p">:</span> <span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span><span class="s1">'4a1'</span><span class="p">)</span>
|
@@ -997,7 +994,7 @@ recover the previous default by:</p>
|
|
997
994
|
|
998
995
|
<dl class="py method">
|
999
996
|
<dt class="sig sig-object py" id="spherogram.Link.simplify">
|
1000
|
-
<span class="sig-name descname"><span class="pre">simplify</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'basic'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">type_III_limit</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">100</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.simplify" title="
|
997
|
+
<span class="sig-name descname"><span class="pre">simplify</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">mode</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">'basic'</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">type_III_limit</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">100</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.simplify" title="Link to this definition"></a></dt>
|
1001
998
|
<dd><p>Tries to simplify the link projection. Returns whether it succeeded
|
1002
999
|
in reducing the number of crossings. Modifies the link in
|
1003
1000
|
place, and unknot components which are also unlinked may be
|
@@ -1053,7 +1050,7 @@ overcrossings (or undercrossings); this has the effect of doing
|
|
1053
1050
|
|
1054
1051
|
<dl class="py method">
|
1055
1052
|
<dt class="sig sig-object py" id="spherogram.Link.split_link_diagram">
|
1056
|
-
<span class="sig-name descname"><span class="pre">split_link_diagram</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destroy_original</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.split_link_diagram" title="
|
1053
|
+
<span class="sig-name descname"><span class="pre">split_link_diagram</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">destroy_original</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.split_link_diagram" title="Link to this definition"></a></dt>
|
1057
1054
|
<dd><p>Breaks the given link diagram into pieces, one for each connected
|
1058
1055
|
component of the underlying 4-valent graph.</p>
|
1059
1056
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">L</span> <span class="o">=</span> <span class="n">Link</span><span class="p">([(</span><span class="mi">2</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">2</span><span class="p">),</span> <span class="p">(</span><span class="mi">4</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">4</span><span class="p">)],</span> <span class="n">check_planarity</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
|
@@ -1065,7 +1062,7 @@ component of the underlying 4-valent graph.</p>
|
|
1065
1062
|
|
1066
1063
|
<dl class="py method">
|
1067
1064
|
<dt class="sig sig-object py" id="spherogram.Link.sublink">
|
1068
|
-
<span class="sig-name descname"><span class="pre">sublink</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">components</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.sublink" title="
|
1065
|
+
<span class="sig-name descname"><span class="pre">sublink</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">components</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.sublink" title="Link to this definition"></a></dt>
|
1069
1066
|
<dd><p>Returns the sublink consisting of the specified components; see the
|
1070
1067
|
example below for the various accepted forms.</p>
|
1071
1068
|
<p>Warnings: Components in the sublink that are both unknotted
|
@@ -1098,7 +1095,7 @@ in the original link.</p>
|
|
1098
1095
|
|
1099
1096
|
<dl class="py method">
|
1100
1097
|
<dt class="sig sig-object py" id="spherogram.Link.view">
|
1101
|
-
<span class="sig-name descname"><span class="pre">view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">viewer</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_crossing_labels</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.view" title="
|
1098
|
+
<span class="sig-name descname"><span class="pre">view</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">viewer</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">show_crossing_labels</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">False</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.view" title="Link to this definition"></a></dt>
|
1102
1099
|
<dd><p>Opens a Plink link viewer window displaying the current link.
|
1103
1100
|
The strands of the links are unions of edges in the standard
|
1104
1101
|
integer grid, following the work of <a class="reference external" href="https://dx.doi.org/10.1137/0216030">Tamassia</a> and <a class="reference external" href="ftp://ftp.cs.brown.edu/pub/techreports/99/cs99-04.pdf">Bridgeman
|
@@ -1107,7 +1104,7 @@ et. al.</a></p>
|
|
1107
1104
|
|
1108
1105
|
<dl class="py method">
|
1109
1106
|
<dt class="sig sig-object py" id="spherogram.Link.white_graph">
|
1110
|
-
<span class="sig-name descname"><span class="pre">white_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.white_graph" title="
|
1107
|
+
<span class="sig-name descname"><span class="pre">white_graph</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.white_graph" title="Link to this definition"></a></dt>
|
1111
1108
|
<dd><p>Return the white graph of a non-split link projection.</p>
|
1112
1109
|
<p>This method generates a multigraph whose vertices correspond
|
1113
1110
|
to the faces of the diagram, with an edge joining two
|
@@ -1142,7 +1139,7 @@ expected way.</p>
|
|
1142
1139
|
|
1143
1140
|
<dl class="py method">
|
1144
1141
|
<dt class="sig sig-object py" id="spherogram.Link.writhe">
|
1145
|
-
<span class="sig-name descname"><span class="pre">writhe</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.writhe" title="
|
1142
|
+
<span class="sig-name descname"><span class="pre">writhe</span></span><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.Link.writhe" title="Link to this definition"></a></dt>
|
1146
1143
|
<dd><p>Finds the writhe of a knot.</p>
|
1147
1144
|
<div class="doctest highlight-default notranslate"><div class="highlight"><pre><span></span><span class="gp">>>> </span><span class="n">K</span> <span class="o">=</span> <span class="n">Link</span><span class="p">(</span> <span class="p">[(</span><span class="mi">4</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">2</span><span class="p">),</span> <span class="p">(</span><span class="mi">6</span><span class="p">,</span><span class="mi">4</span><span class="p">,</span><span class="mi">7</span><span class="p">,</span><span class="mi">3</span><span class="p">),</span> <span class="p">(</span><span class="mi">8</span><span class="p">,</span><span class="mi">5</span><span class="p">,</span><span class="mi">1</span><span class="p">,</span><span class="mi">6</span><span class="p">),</span> <span class="p">(</span><span class="mi">2</span><span class="p">,</span><span class="mi">8</span><span class="p">,</span><span class="mi">3</span><span class="p">,</span><span class="mi">7</span><span class="p">)]</span> <span class="p">)</span> <span class="c1"># Figure 8 knot</span>
|
1148
1145
|
<span class="gp">>>> </span><span class="n">K</span><span class="o">.</span><span class="n">writhe</span><span class="p">()</span>
|
@@ -1155,13 +1152,13 @@ expected way.</p>
|
|
1155
1152
|
|
1156
1153
|
</section>
|
1157
1154
|
<section id="the-closedbraid-class">
|
1158
|
-
<h2>The ClosedBraid class<a class="headerlink" href="#the-closedbraid-class" title="
|
1155
|
+
<h2>The ClosedBraid class<a class="headerlink" href="#the-closedbraid-class" title="Link to this heading"></a></h2>
|
1159
1156
|
<p>The ClosedBraid class provides an alternative way to construct links
|
1160
1157
|
as closed braids. It is a subclass of Link, and currently defines
|
1161
1158
|
the same methods and attributes.</p>
|
1162
1159
|
<dl class="py class">
|
1163
1160
|
<dt class="sig sig-object py" id="spherogram.ClosedBraid">
|
1164
|
-
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">ClosedBraid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.ClosedBraid" title="
|
1161
|
+
<em class="property"><span class="pre">class</span><span class="w"> </span></em><span class="sig-prename descclassname"><span class="pre">spherogram.</span></span><span class="sig-name descname"><span class="pre">ClosedBraid</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="o"><span class="pre">*</span></span><span class="n"><span class="pre">args</span></span></em>, <em class="sig-param"><span class="o"><span class="pre">**</span></span><span class="n"><span class="pre">kwargs</span></span></em><span class="sig-paren">)</span><a class="headerlink" href="#spherogram.ClosedBraid" title="Link to this definition"></a></dt>
|
1165
1162
|
<dd><p>This is a convenience class for constructing closed braids.</p>
|
1166
1163
|
<p>The constructor accepts either a single argument, which should be a list of
|
1167
1164
|
integers to be passed to the Link constructor as the braid_closure
|
@@ -1191,7 +1188,7 @@ and used as the braid_closure parameter.</p>
|
|
1191
1188
|
<hr/>
|
1192
1189
|
|
1193
1190
|
<div role="contentinfo">
|
1194
|
-
<p>© Copyright 2009-
|
1191
|
+
<p>© Copyright 2009-2025, by Marc Culler, Nathan Dunfield, Matthias Goerner, Jeffrey Weeks and others.</p>
|
1195
1192
|
</div>
|
1196
1193
|
|
1197
1194
|
Built with <a href="https://www.sphinx-doc.org/">Sphinx</a> using a
|