|
Knots and Quandles
Sub-package by Cédric FRAGNAUD and Graham ELLIS |
A quandle (Q, ▹)
is a
non-empty set Q equipped with a binary operation ▹ : Q × Q → Q
satisfying the following axioms:
1/ ∀ a ∈ Q, a ▹ a = a.
2/ ∀ a, b ∈ Q, ∃! c ∈ Q such that a = c ▹ b.
3/ ∀ a, b, c ∈ Q, (a ▹ b) ▹ c = (a ▹ c) ▹ (b ▹ c).
One can check that for any group G and n ∈ ℤ, the magma (G, ▹) forms a
quandle with the operation x ▹ y = y-nxyn , ∀ x,
y ∈ G. Such a quandle is called the n-Fold Conjugation Quandle.
A quandle Q is said to be connected if the
inner automorphism
group Inn Q acts transitively on Q. In other words,
Q is connected if and only if for each pair a, b
in Q there are a1, a2, . . . , an
in Q such that a ▹ a1 ▹ˇ ˇ ˇ ▹ an = b.
A quandle Q is said to be latin if ∀ a, b
∈ Q, ∃ c ∈
Q such that a = b ▹ c. |
gap>
Q:=Quandle(5,21);
<magma with 5 generators>
gap> Display(MultiplicationTable(Q));
[ [ 1, 3, 4, 5, 2 ],
[ 3, 2, 5, 1, 4 ],
[ 4, 5, 3, 2, 1 ],
[ 5, 1, 2, 4, 3 ],
[ 2, 4, 1, 3, 5 ] ]
gap> IsConnected(Q);
true
gap> IsLatin(Q);
true
|
gap>
G:=DihedralGroup(64);;
gap> Q:=ConjugationQuandle(G,1);;
<magma with 19 generators>
gap> Size(Q);
64
gap> IsConnected(Q);
false |
Let Q be a set, e an
element in Q, G a permutation group, and stigma an element in G.
Then (Q,G,e,stigma) describes a Quandle Envelope
if :
- G is a transitive group on Q.
- stigma ∈ Z(Ge), the center of the
stabilizer of e.
- ⟨stigmaG⟩ = G (that is, the smallest
normal subgroup of G containing stigma is all of G).
From a Quandle Envelope
(Q,G,e,stigma), we can construct a Quandle (Q, ▹):
for
all
x,y
in
Q,
x
▹
y=(ŷ(stigma))(x)
,
where
ŷ
∈
G
satisfies
ŷ(e)=y.
Such a quandle
is connected. This property is used to construct all the connected
quandles of size n.
|
gap>
Q:=[1..9];; e:=2;; G:=TransitiveGroup(9,15);; st:=(1,8,7,4,9,5,3,6);;
gap> IsQuandleEnvelope(Q,G,e,st);
QE:=QuandleQuandleEnvelope(Q,G,e,st);
true
<magma with 9 generators>
gap> IsQuandle(QE); IsConnectedQuandle(QE);
true
true
gap> ConnectedQuandles(20); time;
[ <magma with 20 generators>, <magma with 20 generators>,
<magma with 20 generators>,
<magma with 20 generators>, <magma with 20
generators>, <magma with 20 generators>,
<magma with 20 generators>, <magma with 20
generators>, <magma with 20 generators>,
<magma with 20 generators> ]
3364296 |
Let's denote Rx
the mapping defined by Rx : Q→Q, y ↦y▹x.
We define the right
multiplication
group G of a quandle Q by G=〈Rx,
x
∈ Q〉.
We also define the automorphism
group Aut(Q)={f:Q→Q} to be the group of bijective quandle
homomorphisms. It can be proven that G is a subgroup of Aut(Q). |
gap>
Q:=ConnectedQuandle(8,2);; q:=Random(Q);
m6
gap> A:=AutomorphismGroupQuandle(Q);; a:=Random(A);;
gap> q^a;
m4
gap> R:=RightMultiplicationGroupOfQuandle(Q);; r:=Random(R);;
gap> q^r;
m3 |
A knot
is an embedding of the circle S1 in ℝ3.
To study these structures, we use knot diagrams,
which are projections
of these knots into ℝ2, defined, for instance, by f : ℝ3
→ ℝ2; (x,y,z) → (x,y) subject to the
constraint that the preimage of any (x, y) ∈ ℝ2 contains at
most two points.
Crossing
points occur when the preimage of a point in ℝ2
contains more than one point.
At these crossing points, we denote the point in the preimage that is
nearer to the ℝ2 plane as the under-crossing
point and the
point farther away as the over-crossing
point. An arc is a line that
connects two crossing points in the knot diagram, with a line break
occurring when an undercrossing point is mapped to the arc.
We may give a knot diagram an orientation,
i.e. a direction of
travelling around the knot. This allows us to categorize crossings as
either positive or negative:
There exists different ways to describe a knot diagram: Planar Diagram,
Gauss Code, Dowker Notation, Conway Notation.
|
Another
way
to
describe
a
knot
is
to
use
quandles.
From
a
knot
K,
we
can construct the knot quandle Q(K), whose generators are the arcs of
K, and relations are associated to the crossings:

This figure gives us "a ▹ b = c" at a negative crossing, and "a ▹ -1
b = c" (or "c ▹ b = a") at a positive one.
|
gap>
K:=PureCubicalKnot(3,1);;
gap> G:=GaussCodeOfPureCubicalKnot(K);;
gap> P:=PresentationKnotQuandle(G);
rec( generators := [ 1 .. 3 ], relators := [ [ [ 3, 2 ], 1 ], [ [ 1, 3
], 2 ], [ [ 2, 1 ], 3 ] ] ) |
From this example, we
see that the generators of the Trefoil Knot Quandle are the arcs 1, 2
and 3; these generators satisfy the relations above.
Nb: [[a1 ,a2 ],a3 ]
means a1 ▹ a2 = a3, no matter if we
consider a positive or negative crossing. |
We
can
also
easily
go
from
a
Planar
Diagram
representation
of
a
knot
to
a
its
Gauss
Code (with orientations of crossings). |
gap>
PD:=PlanarDiagramKnot(3,1);
[ [ 1, 4, 2, 5 ], [ 3, 6, 4, 1 ], [ 5, 2, 6, 3 ] ]
gap> G:=PD2GC(PD);
[ [ [ -1, 3, -2, 1, -3, 2 ] ], [ -1, -1, -1 ] ]
|
Using
a
finite
connected
quandle
Q
we
can
construct
an
invariant
of
a
knot
K:
a certain partition of the
number
of homomorphisms QK ---> Q from the fundamental quandle QK
of K to the quandle Q.
|
gap>
QK:=PresentationKnotQuandleKnot(8,2);
rec( generators := [ 1 .. 8 ], relators := [ [ [ 8, 2 ], 1 ], [ [ 2, 5
], 1 ], [ [ 2, 6 ], 3 ], [ [ 3, 7 ], 4 ], [ [ 4, 8 ], 5 ],
[ [ 6, 1 ], 5 ], [ [ 6, 3 ], 7 ], [ [ 7, 4 ], 8 ] ] )
gap> Q:=ConnectedQuandle(9,5);;
gap> PartitionedNumberOfHomomorphisms(QK,Q); time;
[ 9, 72 ]
4080
gap> NumberOfHomomorphisms(QK,Q); time;
81
3916 |
The following code
shows how a partition of the number of homomorphisms K--->Q from a
knot quandle K to a finite quandle Q can be used to distinguish between
knots. The code establishes that by using only connected quandles Q of
order ≤13, one can distinguish between all prime knots on at most eight
crossings. |
gap>
L:=[];;
gap> for n in [1..8] do
> for i in [1..Length(Cedric_PlanarDiagram[n])] do
> Add(L,PresentationKnotQuandleKnot(n,i));
> od; od;
gap> inv:=function(K,n);
> return
List(ConnectedQuandles(n),x->PartitionedNumberOfHomomorphisms(K,x));
> end;;
gap> C:=Classify(L,K->inv(K,3));; List(C,Size);
[ 11, 23, 1 ]
gap> C4:=RefineClassification(C,K->inv(K,4));; List(C4,Size);
[ 8, 3, 6, 17, 1 ]
gap> C5:=RefineClassification(C4,K->inv(K,5));; List(C5,Size);
[ 5, 2, 1, 1, 1, 1, 1, 1, 4, 3, 12, 1, 1, 1 ]
gap> C6:=RefineClassification(C5,K->inv(K,5));; List(C6,Size);
[ 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 4, 3, 12, 1, 1, 1 ]
gap> C7:=RefineClassification(C6,K->inv(K,7));; List(C7,Size);
[ 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 1, 2, 8, 2, 1, 1, 1 ]
gap> C8:=RefineClassification(C7,K->inv(K,8));; List(C8,Size);
[ 1, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 6, 2, 2, 1, 1, 1 ]
gap> C9:=RefineClassification(C8,K->inv(K,9));; List(C9,Size);
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 3, 2,
1, 1, 1, 1, 1, 1, 1 ]
gap> C10:=RefineClassification(C9,K->inv(K,10));; List(C10,Size);
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 3, 2,
1, 1, 1, 1, 1, 1, 1 ]
gap> C11:=RefineClassification(C10,K->inv(K,11));; List(C11,Size);
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
gap> C12:=RefineClassification(C11,K->inv(K,12));; List(C12,Size);
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ]
gap> C13:=RefineClassification(C12,K->inv(K,13));; List(C13,Size);
[ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ] |
Given a
quandle Q one defines the adjoint group
Adj(Q) to be the group with one generator for each element of Q and
relators
x-1yx= x▹y
for x,y ∈ Q.
|
Q:=ConnectedQuandle(7,1);
<magma with 7 generators>
gap> F:=AdjointGroupOfQuandle(Q);
<fp group on the generators [ f1, f2, f3, f4, f5, f6, f7 ]>
|
The
set of
path
components of a quandle Q is defined to be the set of orbits of
the action of the right multiplication group Inn(Q) on Q. One can
readily see that the rank of the abelianization of Adj(Q) is equal to
the number of path components. The following code illustrates this.
|
gap>
Q:=ConjugationQuandle(SymmetricGroup(5),1);
<magma with 10 generators>
gap> F:=AdjointGroupOfQuandle(Q);
<fp group with 120 generators>
gap> AbelianInvariants(F);
[ 0, 0, 0, 0, 0, 0, 0 ]
gap> P:=PathComponents(Q);;
gap> Size(P);
7
|
For
a connected quandle Q the
group A=Adj(Q) is isomorphic to a semi-direct
product A=Z ⋊ D where D is the derived subgroup of Adj(Q) and Z is the
infinite cylic group. There is a canonical group homomorphism Adj(Q)
--> Inn(Q) to the right multiplication group. Thus Adj(Q) acts
canonically on Q.
For a connected Q and preferred element q ∈ Q the fundamental group
of Q at the base-point
q is defined to be the subgroup of D consisting of those elements that
fix q. Up to isomorphism the fundamental group of Q does not depend on
the choice of base-point.
When Q is finite then so too is D. Thus for finite connected
quandles one can compute the fundamental group directly from the
definition.
|
gap>
Q:=ConnectedQuandle(18,2);
<magma with 18 generators>
gap> F:=FundamentalGroup(Q);
<group with 2 generators>
gap> IdGroup(F);
[ 4, 1 ]
gap> D:=DerivedGroupOfQuandle(Q);
<group with 2 generators>
gap> IdGroup(D);
[ 72, 3 ]
|
A
second example of a fundamental group computation is given below.
|
gap>
Q:=ConjugationQuandle(SymmetricGroup(5),1);
<magma with 10 generators>
gap> P:=PathComponents(Q);;
gap> P:=List(P,x->AsMagma(x));;
gap> List(P,Size);
[ 1, 10, 20, 15, 30, 20, 24 ]
gap> List(P,IsConnected);
[ true, true, true, true, true, true, false ]
gap> Q:=P[5];
<magma with 3 generators>
gap> Size(Q);
30
gap> F:=FundamentalGroup(Q);
<group with 2 generators>
gap> IdGroup(F);
[ 4, 1 ]
gap>
|
|