Skip to content

Commit 4fe5e33

Browse files
Bands (#62)
* Added one file to bands * Protect snappy doctests with +SNAPPY * Added core code of bands * bands: added code for searching for ribbon discs/concordances * Link.linking_matrix does not require Sage * links.bands: add regression test * Fix snappy import issue * links.bands: add user methods to Link * ribbon_concordant_links: add RibbonLink accelerator * Require snappy_manifolds>=1.3 * Fix typos in comments * DTcodec.link: Standardize crossing labels
1 parent 246a0ce commit 4fe5e33

File tree

11 files changed

+1328
-5
lines changed

11 files changed

+1328
-5
lines changed

setup.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -206,15 +206,15 @@ def run(self):
206206
install_requires = ['decorator',
207207
'networkx',
208208
'packaging',
209-
'snappy_manifolds>=1.1.2',
209+
'snappy_manifolds>=1.3',
210210
'knot_floer_homology>=1.2.2']
211211

212212
setup( name = 'spherogram',
213213
version = version,
214214
install_requires = install_requires,
215215
python_requires = '>=3',
216216
dependency_links = [],
217-
packages = ['spherogram', 'spherogram.links',
217+
packages = ['spherogram', 'spherogram.links', 'spherogram.links.bands',
218218
'spherogram.links.test', 'spherogram.codecs',
219219
'spherogram.dev', 'spherogram.dev.dev_jennet'],
220220
package_dir = {'spherogram' : 'spherogram_src', 'spherogram.dev':'dev'},

spherogram_src/codecs/DT.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -949,6 +949,9 @@ def link(self):
949949
link._build_components(component_starts)
950950
if not link.is_planar():
951951
raise ValueError('DT code does not seem to define a *planar* diagram')
952+
# Give the crossings standard names
953+
for i, C in enumerate(link.crossings):
954+
C.label = i
952955
return link
953956

954957
def KLPProjection(self):

spherogram_src/links/__init__.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from .tangles import Tangle, CapTangle, CupTangle, RationalTangle, ZeroTangle, InfinityTangle, MinusOneTangle, OneTangle, IntegerTangle, IdentityBraid, ComponentTangle, join_strands
66
from . import orthogonal
77
from .random_links import random_link
8+
from . import bands
89

910
Link.view = orthogonal.orthogonal_draw
1011

@@ -25,4 +26,4 @@ def pdf_docs():
2526
'Tangle', 'CapTangle', 'CupTangle', 'RationalTangle',
2627
'ZeroTangle', 'InfinityTangle', 'MinusOneTangle', 'OneTangle', 'IntegerTangle',
2728
'IdentityBraid', 'join_strands',
28-
'pdf_docs', 'random_link']
29+
'pdf_docs', 'random_link', 'bands']
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
"""
2+
3+
Submodule for doing band moves to construct ribbon concordances and
4+
search for ribbon disks. Code originally developed by Nathan Dunfield
5+
and Sherry Gong for their paper::
6+
7+
Ribbon concordances and slice obstructions: experiments and examples
8+
https://arXiv.org/abs/FILLIN
9+
10+
"""
11+
12+
from . import merge_links
13+
from . import core
14+
from . import search
15+
from .core import Band, normalize_crossing_labels
16+
from .search import verify_ribbon_to_unknot
17+
18+
19+

0 commit comments

Comments
 (0)