DT (Dowker-Thistlethwaite) Codes: Difference between revisions
No edit summary |
No edit summary |
||
| Line 13: | Line 13: | ||
<!--$$?DTCode$$--> |
<!--$$?DTCode$$--> |
||
<!--Robot Land, no human edits to "END"--> |
|||
<!--The lines to END were generated by WikiSplice: do not edit; see manual.--> |
|||
{{Help1|n=1|s=DTCode}} |
|||
{| width=70% border=1 align=center |
|||
| ⚫ | |||
| |
|||
{{Help2}} |
|||
<font color=blue><tt>In[2]:=</tt></font><font color=red><code> ?DTCode</code></font> |
|||
| ⚫ | |||
|} |
|||
<!--END--> |
<!--END--> |
||
| Line 25: | Line 22: | ||
<!--$$dts = DTCode /@ {Knot[9, 41], Knot[9, 42]}$$--> |
<!--$$dts = DTCode /@ {Knot[9, 41], Knot[9, 42]}$$--> |
||
<!--Robot Land, no human edits to "END"--> |
|||
<!--The lines to END were generated by WikiSplice: do not edit; see manual.--> |
|||
{{InOut1|n=2}} |
|||
{| |
|||
| ⚫ | |||
|<tt><font color=blue>In[3]:=</font></tt> |
|||
| ⚫ | |||
|<code><font color=red> dts = DTCode /@ {Knot[9, 41], Knot[9, 42]}</font></code> |
|||
{{InOut3}} |
|||
|- valign=top |
|||
|<tt><font color=blue>Out[3]=</font></tt> |
|||
| ⚫ | |||
|} |
|||
<!--END--> |
<!--END--> |
||
| Line 40: | Line 34: | ||
<!--$$gcs = GaussCode /@ dts$$--> |
<!--$$gcs = GaussCode /@ dts$$--> |
||
<!--Robot Land, no human edits to "END"--> |
|||
<!--The lines to END were generated by WikiSplice: do not edit; see manual.--> |
|||
{{InOut1|n=3}} |
|||
{| |
|||
<pre style="color: red; border: 0px; padding: 0em"><nowiki>gcs = GaussCode /@ dts</nowiki></pre> |
|||
|<tt><font color=blue>In[4]:=</font></tt> |
|||
| ⚫ | |||
|<code><font color=red> gcs = GaussCode /@ dts</font></code> |
|||
|- valign=top |
|||
|<tt><font color=blue>Out[4]=</font></tt> |
|||
| ⚫ | |||
GaussCode[1, -5, 2, -1, 3, 8, -4, -2, 5, -3, -6, 9, -7, 4, -8, 6, -9, 7]}</pre> |
GaussCode[1, -5, 2, -1, 3, 8, -4, -2, 5, -3, -6, 9, -7, 4, -8, 6, -9, 7]}</nowiki></pre> |
||
{{InOut3}} |
|||
|} |
|||
<!--END--> |
<!--END--> |
||
<!--$$DTCode /@ gcs$$--> |
<!--$$DTCode /@ gcs$$--> |
||
<!--Robot Land, no human edits to "END"--> |
|||
<!--The lines to END were generated by WikiSplice: do not edit; see manual.--> |
|||
{{InOut1|n=4}} |
|||
{| |
|||
<pre style="color: red; border: 0px; padding: 0em"><nowiki>DTCode /@ gcs</nowiki></pre> |
|||
|<tt><font color=blue>In[5]:=</font></tt> |
|||
| ⚫ | |||
|<code><font color=red> DTCode /@ gcs</font></code> |
|||
{{InOut3}} |
|||
|- valign=top |
|||
|<tt><font color=blue>Out[5]=</font></tt> |
|||
| ⚫ | |||
|} |
|||
<!--END--> |
<!--END--> |
||
| Line 66: | Line 54: | ||
<!--$$PD[DTCode[4, 6, 2]]$$--> |
<!--$$PD[DTCode[4, 6, 2]]$$--> |
||
<!--Robot Land, no human edits to "END"--> |
|||
<!--The lines to END were generated by WikiSplice: do not edit; see manual.--> |
|||
{{InOut1|n=5}} |
|||
{| |
|||
<pre style="color: red; border: 0px; padding: 0em"><nowiki>PD[DTCode[4, 6, 2]]</nowiki></pre> |
|||
|<tt><font color=blue>In[6]:=</font></tt> |
|||
{{InOut2|n=5}}<pre style="border: 0px; padding: 0em"><nowiki>PD[X[4, 2, 5, 1], X[6, 4, 1, 3], X[2, 6, 3, 5]]</nowiki></pre> |
|||
|<code><font color=red> PD[DTCode[4, 6, 2]]</font></code> |
|||
{{InOut3}} |
|||
|- valign=top |
|||
|<tt><font color=blue>Out[6]=</font></tt> |
|||
| ⚫ | |||
|} |
|||
<!--END--> |
<!--END--> |
||
Revision as of 20:41, 27 August 2005
The "DT Code" ("DT" after Clifford Hugh Dowker and Morwen Thistlethwaite) of a knot [math]\displaystyle{ K }[/math] is obtained as follows:
- Start "walking" along [math]\displaystyle{ K }[/math] and count every crossing you pass through. If [math]\displaystyle{ K }[/math] has [math]\displaystyle{ n }[/math] crossings and given that every crossing is visited twice, the count ends at [math]\displaystyle{ 2n }[/math]. Label each crossing with the values of the counter when it is visited, though when labeling by an even number, take it with a minus sign if you are walking "under" the crossing.
- Every crossing is now labeled with two integers whose absolute values run from [math]\displaystyle{ 1 }[/math] to [math]\displaystyle{ 2n }[/math]. It is easy to see that each crossing is labeled with one odd integer and one even integer. The DT code of [math]\displaystyle{ K }[/math] is the list of even integers paired with the odd integers 1, 3, 5, ..., taken in this order. See the figure below.
KnotTheory` has some rudimentary support for DT codes:
(For In[1] see Setup)
In[1]:= ?DTCode
DTCode[i1, i2, ...] represents a knot via its DT (Dowker-Thistlethwaite) code. DTCode also acts as a "type caster", so for example, DTCode[K] where K is is a named knot returns the DT code of that knot. |
Thus for example, the DT codes for the last 9 crossing alternating knot 9_41 and the first 9 crossing non alternating knot 9_42 are:
| In[2]:= |
dts = DTCode /@ {Knot[9, 41], Knot[9, 42]}
|
| Out[2]= | {DTCode[6, 10, 14, 12, 16, 2, 18, 4, 8], DTCode[4, 8, 10, -14, 2, -16, -18, -6, -12]}
|
(The DT code of an alternating knot is always a sequence of positive numbers but the DT code of a non alternating knot contains both signs.)
DT codes and Gauss codes carry the same information and are easily convertible:
| In[3]:= |
gcs = GaussCode /@ dts |
| Out[3]= | {GaussCode[1, -6, 2, -8, 3, -1, 4, -9, 5, -2, 6, -4, 7, -3, 8, -5, 9, -7],
GaussCode[1, -5, 2, -1, 3, 8, -4, -2, 5, -3, -6, 9, -7, 4, -8, 6, -9, 7]}
|
| In[4]:= |
DTCode /@ gcs |
| Out[4]= | {DTCode[6, 10, 14, 12, 16, 2, 18, 4, 8], DTCode[4, 8, 10, -14, 2, -16, -18, -6, -12]}
|
Conversion between DT codes and/or Gauss codes and PD codes is more complicated; the harder side, going from DT/Gauss to PD, was written by Siddarth Sankaran at the University of Toronto:
| In[5]:= |
PD[DTCode[4, 6, 2]] |
| Out[5]= | PD[X[4, 2, 5, 1], X[6, 4, 1, 3], X[2, 6, 3, 5]] |
