11 Commits
Author SHA1 Message Date
aziis98 06766ffa0d finite le slide 2025-07-17 14:29:17 +02:00
aziis98 d85de92c2e fweijpfiewjpe 2025-07-17 03:17:56 +02:00
aziis98 8ad72aa225 finite forse boh 2025-07-17 03:10:35 +02:00
aziis98 bbba00592d fjwfjewifpwe 2025-07-17 01:23:30 +02:00
aziis98 47cf7ae583 prima di cambiare le K in D 2025-07-17 01:15:12 +02:00
aziis98 2e9e072158 fewifjeiwpifpew 2025-07-16 19:58:56 +02:00
aziis98 4b0979893b fewefw 2025-07-16 13:51:54 +02:00
aziis98 771760632d feojfwepjfewpi 2025-07-15 21:01:24 +02:00
aziis98 80f015a1ad presentation, test: ~30min 2025-07-15 01:52:40 +02:00
aziis98 1ef109fcf9 presentation fwjpfejipwfwe 2025-07-14 20:07:29 +02:00
aziis98 a9f262656c reformatted 2025-07-14 15:41:23 +02:00
13 changed files with 1371 additions and 647 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

+242 -259
View File
@@ -7,11 +7,14 @@
#import "@preview/colorful-boxes:1.1.0": stickybox
#set-margin-note-defaults(rect: (..kwargs, content) => rect(..kwargs, {
set text(size: 8pt, font: "Open Sans")
set par(leading: 0.5em, justify: false)
content
}), side: right)
#set-margin-note-defaults(
rect: (..kwargs, content) => rect(..kwargs, {
set text(size: 8pt, font: "Open Sans")
set par(leading: 0.5em, justify: false)
content
}),
side: right,
)
// Prelude
@@ -19,12 +22,14 @@
paper-size: "a4",
title: [Il polinomio di Kauffman: \ un invariante di isotopia regolare],
page-title: [Il polinomio di Kauffman: un invariante di isotopia regolare],
authors: ((
name: "Antonio De Lucreziis",
organization: "Dipartimento di Matematica",
location: "Pisa, Italia",
email: "antonio.delucreziis@gmail.com",
),),
authors: (
(
name: "Antonio De Lucreziis",
organization: "Dipartimento di Matematica",
location: "Pisa, Italia",
email: "antonio.delucreziis@gmail.com",
),
),
abstract: [
In questa tesi tratteremo del polinomio di Kauffman, un invariante di nodi e link di isotopia regolare. Introdurremo dei risultati di fondazione della teoria dei nodi per definire l'isotopia regolare. Infine vedremo la dimostrazione della buona definizione del polinomio di Kauffman a partire dalla forma assiomatica. Per il progetto di Laboratorio Computazionale abbiamo implementato in Python questo polinomio e verificato tutti i valori presenti nel database di KnotInfo e trovato un errore nel calcolo del nodo $10_125$.
],
@@ -78,17 +83,19 @@ Ora introdurremo alcuni risultati fondamentali di teoria dei nodi. Vedremo le de
Dato un embedding $f : X arrow Y$, un punto $p in X$ allora $f$ si dice *localmente piatto* in $p$ se $exists U subset bb(R)^3$ intorno di $p$, tale che
] <locally-flat>
#grid(columns: (1fr, 1fr), gutter: 1em, align: center + horizon, grid(
columns: 3,
#grid(
columns: (1fr, 1fr),
gutter: 1em,
align: center,
$U$,
$approx$,
$bb(D)^2 times [0, 1]$,
$U inter f(X)$,
$<->$,
${ 0 } times [0, 1]$,
), align(center, image("assets/locally-flat-v2.png", width: 4cm)))
align: center + horizon,
grid(
columns: 3,
gutter: 1em,
align: center,
$U$, $approx$, $bb(D)^2 times [0, 1]$,
$U inter f(X)$, $<->$, ${ 0 } times [0, 1]$,
),
align(center, image("assets/locally-flat-v2.png", width: 4cm)),
)
inoltre $f$ si dice embedding *localmente piatto* se lo è in ogni punto di $X$.
@@ -210,9 +217,7 @@ Quindi dato $L subset bb(R)^3$ link poligonale, esiste una proiezione regolare $
#figure(image("assets/reidemeister-moves.jpg", width: 10cm))
#theorem(
name: [di Reidemeister],
)[
#theorem(name: [di Reidemeister])[
Due diagrammi di link equivalenti sono collegati da una successione finita di isotopie planari e mosse di Reidemeister.
]
@@ -293,7 +298,7 @@ Questo sarà importante più avanti quando vedremo invarianti come il polinomio
#definition[
Sia $K$ un diagramma di un nodo, $cal(U)$ la sua ombra planare#footnote[Ovvero per $K subset bb(R)^3$ poniamo $cal(U) colon.eq pi(K) subset bb(R)^2$] e $p in cal(U)$ un punto di partenza direzionato in $cal(U)$.
Il suo *nodo banale standard* (o in _forma discendente_) associato a $K$ detto $hat(K)(cal(U), p)$ è definito come segue: si prende il punto di partenza direzionato e si inizia a percorrere l'ombra planare in quella direzione e si rende ogni incrocio un sopra-incrocio quando ci si passa sopra per la prima volta.
Il *nodo banale standard* (o in _forma discendente_) associato a $K$ detto $hat(K)(cal(U), p)$ è definito come segue: si prende il punto di partenza direzionato e si inizia a percorrere l'ombra planare in quella direzione e si rende ogni incrocio un sopra-incrocio quando ci si passa sopra per la prima volta.
Questa definizione si estende anche a diagrammi di link prendendo un insieme di punti base ordinati come mostrato in figura. In particolare questo induce un ordinamento dall'alto verso il basso delle componenti. #h(1fr)
@@ -452,10 +457,10 @@ Un primo fatto generale che possiamo vedere è che, dato un invariante di isotop
ed usando la proprietà dell'ipotesi otteniamo
$
F(#skein.over-twist) & = a^(-w(#skein.over-twist-small)) dot L(#skein.over-twist) \
& = a^(-w(#skein.strand-small) - 1) dot a dot L(#skein.strand) \
F(#skein.over-twist) & = a^(-w(#skein.over-twist-small)) dot L(#skein.over-twist) \
& = a^(-w(#skein.strand-small) - 1) dot a dot L(#skein.strand) \
& = a^(-w(#skein.strand-small)) dot cancel(a^(-1)) dot cancel(a) dot L(#skein.strand) \
& = a^(-w(#skein.strand-small)) dot L(#skein.strand) = F(#skein.strand) \
& = a^(-w(#skein.strand-small)) dot L(#skein.strand) = F(#skein.strand) \
$
e analogamente segue anche per l'altro ricciolo che $F(#skein.under-twist) = F(#skein.strand)$.
@@ -471,10 +476,7 @@ Vedremo come questi assiomi definiscono un unico invariante di isotopia regolare
*Notazione.* Per rendere alcuni calcoli più leggibili, in questo capitolo utilizzeremo in modo intercambiabile le notazioni $L_K, L[K]$ per indicare il polinomio di Kauffman associato ad un certo diagramma.
#definition(
numbered: true,
name: [Assiomi di $L_K$],
)[
#definition(numbered: true, name: [Assiomi di $L_K$])[
Sia $K$ un diagramma di un link non orientato, e sia $bb(Z)[a, a^(-1), z, z^(-1)]$ l'anello dei polinomi di Laurent sugli interi nelle variabili $a$ e $z$.
Allora $L_K in bb(Z)[a, a^(-1), z, z^(-1)]$, e verifica i seguenti assiomi:
@@ -561,22 +563,22 @@ $
L[ #knot-picture("infinity-0.png", height: 2.25em) ]
+
L[ #knot-picture("infinity-1.png", height: 2.25em) ] & =
z (
L[ #knot-picture("infinity-2.png", height: 2.25em) ]
+
L[ #knot-picture("infinity-3.png", height: 2.25em) ]
) \
=>
a L[ #skein.unit ]
+
a^(-1) L[ #skein.unit ] & =
z (
delta
+
L [ #skein.unit ]
) \
=> a + a^(-1) & = z ( delta + 1 ) \
=> delta & = (a + a^(-1)) slash z - 1
z (
L[ #knot-picture("infinity-2.png", height: 2.25em) ]
+
L[ #knot-picture("infinity-3.png", height: 2.25em) ]
) \
=>
a L[ #skein.unit ]
+
a^(-1) L[ #skein.unit ] & =
z (
delta
+
L [ #skein.unit ]
) \
=> a + a^(-1) & = z ( delta + 1 ) \
=> delta & = (a + a^(-1)) slash z - 1
$
Questo valore $delta = (a + 1 slash a) slash z - 1$ ricomparirà anche in seguito ed è il coefficiente che il polinomio di Kauffman introduce quando abbiamo più componenti disgiunte (ovvero $L[K_1 union.sq K_2] = delta L[K_1] L[K_2]$).
@@ -589,23 +591,23 @@ $
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
L[ #knot-picture("hopf-1.png", height: 1.75em) ] & =
z (
L[ #knot-picture("hopf-2.png", height: 1.75em) ]
+
L[ #knot-picture("hopf-3.png", height: 1.75em) ]
) \
z (
L[ #knot-picture("hopf-2.png", height: 1.75em) ]
+
L[ #knot-picture("hopf-3.png", height: 1.75em) ]
) \
=>
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
delta & =
z (
a
+
a^(-1)
) \
z (
a
+
a^(-1)
) \
=>
L[ #knot-picture("hopf-0.png", height: 1.75em) ] & =
- (a + a^(-1)) z^(-1) + 1 + (a + a^(-1)) z
- (a + a^(-1)) z^(-1) + 1 + (a + a^(-1)) z
$
E ad esempio anche del nodo trifoglio:
@@ -616,23 +618,23 @@ $
L[ #knot-picture("trefoil-0.png", height: 2em) ]
+
L[ #knot-picture("trefoil-1.png", height: 2em) ] & =
z (
L[ #knot-picture("trefoil-2.png", height: 2em) ]
+
L[ #knot-picture("trefoil-3.png", height: 2em) ]
) \
z (
L[ #knot-picture("trefoil-2.png", height: 2em) ]
+
L[ #knot-picture("trefoil-3.png", height: 2em) ]
) \
=>
L[ #knot-picture("trefoil-0.png", height: 2em) ]
+
a & =
z (
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
a^(-2)
) \
z (
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
a^(-2)
) \
=>
L[ #knot-picture("trefoil-0.png", height: 2em) ] & =
-(2a + a^(-1)) + (1 + a^(-2)) z + (a + a^(-1)) z^2
-(2a + a^(-1)) + (1 + a^(-2)) z + (a + a^(-1)) z^2
$
#definition[
@@ -660,10 +662,8 @@ In particolare abbiamo le seguenti identità per i polinomi $L_K$ e $F_K$ in rel
columns: 2,
column-gutter: 2em,
row-gutter: 1em,
$L[K_1 union.sq K_2] = delta L[K_1] L[K_2]$,
$F[K_1 union.sq K_2] = delta F[K_1] F[K_2]$,
$L[K_1 hash K_2] = L[K_1] L[K_2]$,
$F[K_1 hash K_2] = F[K_1] F[K_2]$,
$L[K_1 union.sq K_2] = delta L[K_1] L[K_2]$, $F[K_1 union.sq K_2] = delta F[K_1] F[K_2]$,
$L[K_1 hash K_2] = L[K_1] L[K_2]$, $F[K_1 hash K_2] = F[K_1] F[K_2]$,
)
}
@@ -715,10 +715,8 @@ Prima di descrivere la definizione induttiva diamo alcune definizioni per certe
},
skein.h,
skein.v,
$K$,
$S_i K$,
$E_i K$,
$e_i K$,
$K$, $S_i K$, $E_i K$, $e_i K$,
)
}
@@ -739,8 +737,7 @@ Sia $lambda = (lambda_n, dots, lambda_0)$ una sequenza di etichette di incroci d
- Poniamo $hat(K)(lambda) = S_lambda_n dots.c space S_lambda_0 K$ e definiamo le notazioni compatte per le seguenti somme alternate
$
sum_K (lambda) & colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K]) \
sum_K (lambda) & colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K]) \
Omega_K (lambda) & colon.eq (-1)^(abs(lambda) + 1) L[hat(K)(lambda)] + z sum_K (lambda)
$
@@ -787,9 +784,9 @@ Dato un diagramma di un nodo $K$, l'idea per la costruzione della definizione ri
Questo induce una sequenza di indici $lambda$ che indichiamo con $lambda = (0, dots, n)$. Se applichiamo incrementalmente gli scambi a $K$, ovvero consideriamo $S_i dotss S_0 K$ al variare di $i$, ed applichiamo la relazione skein #link(<kauffman-poly-def>)[ii.a)] a questi diagrammi, otteniamo le seguenti relazioni:
$
L[K] + L[S_0 K] &= z( L[E_0 K] + L[e_0 K] ) \
L[S_0 K] + L[S_1 S_0 K] &= z( L[E_1 S_0 K] + L[e_1 S_0 K] ) \
& space dots.v \
L[K] + L[S_0 K] &= z( L[E_0 K] + L[e_0 K] ) \
L[S_0 K] + L[S_1 S_0 K] &= z( L[E_1 S_0 K] + L[e_1 S_0 K] ) \
& space dots.v \
L[S_(n-1) dotss S_0 K] + L lr([underbrace(S_n dotss S_0 K, hat(K))], size: #1.125em) &= z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$
@@ -803,18 +800,12 @@ Ora, sommando e sottraendo membro a membro queste equazioni otteniamo la seguent
column-gutter: 1em,
row-gutter: 1em,
align: (right, center, left),
$L[K] + L[S_0 K]$,
[],
$z( L[E_0 K] + L[e_0 K] )$,
$-(L[S_0 K] + L[S_1 S_0 K])$,
[],
$-z( L[E_1 S_0 K] + L[e_1 S_0 K] )$,
$dots.v space$,
$=$,
$space dots.v$,
$L[K] + L[S_0 K]$, [], $z( L[E_0 K] + L[e_0 K] )$,
$-(L[S_0 K] + L[S_1 S_0 K])$, [], $-z( L[E_1 S_0 K] + L[e_1 S_0 K] )$,
$dots.v space$, $=$, $space dots.v$,
$+(-1)^n (L[S_(n-1) dotss S_0 K] + L[hat(K)])$,
[],
$ +(-1)^n (z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K]))$,
$+(-1)^n (z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K]))$,
))
}
@@ -828,15 +819,9 @@ notiamo che possiamo cancellare tutti i termini del membro di sinistra che compa
column-gutter: 1em,
row-gutter: 1em,
align: (right, center, left),
$L[K] + cancel(L[S_0 K])$,
[],
$z( L[E_0 K] + L[e_0 K] )$,
$-(cancel(L[S_0 K]) + cancel(L[S_1 S_0 K]))$,
[],
$-z( L[E_1 S_0 K] + L[e_1 S_0 K] )$,
$dots.v space$,
$=$,
$space dots.v$,
$L[K] + cancel(L[S_0 K])$, [], $z( L[E_0 K] + L[e_0 K] )$,
$-(cancel(L[S_0 K]) + cancel(L[S_1 S_0 K]))$, [], $-z( L[E_1 S_0 K] + L[e_1 S_0 K] )$,
$dots.v space$, $=$, $space dots.v$,
$+(-1)^n (cancel(L[S_(n-1) dotss S_0 K]) + L[hat(K)])$,
[],
$+(-1)^n (z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K]))$,
@@ -851,13 +836,13 @@ Da cui otteniamo un'espressione ricorsiva per $L_K$:
$
=>
L_K & =
(-1)^(n+1) L_(hat(K)) + z sum_(i=0)^n (-1)^i (
L[E_i S_(i-1) dotss S_0 K] + L[e_i S_(i-1) dotss S_0 K]
) \
(-1)^(n+1) L_(hat(K)) + z sum_(i=0)^n (-1)^i (
L[E_i S_(i-1) dotss S_0 K] + L[e_i S_(i-1) dotss S_0 K]
) \
& =
(-1)^(n+1) L_(hat(K)) + z sum_(i=0)^n (-1)^i (
L[A_i^lambda K] + L[B_i^lambda K]
)
(-1)^(n+1) L_(hat(K)) + z sum_(i=0)^n (-1)^i (
L[A_i^lambda K] + L[B_i^lambda K]
)
$ <kauffman-rec-inductive>
]))
@@ -937,10 +922,7 @@ Per prima cosa osserviamo che in ogni termine della definizione induttiva per $L
Nel corso della dimostrazione tutti gli argomenti per induzione si baseranno sul numero di incroci. Ometteremo i casi base, ovvero i controlli per diagrammi con pochi incroci che fanno partire l'induzione in quanto sono tutte semplici verifiche.
#definition(
numbered: true,
name: [L'ipotesi induttiva],
)[
#definition(numbered: true, name: [L'ipotesi induttiva])[
L'ipotesi induttiva che useremo nel corso della dimostrazione è la seguente:
#set enum(numbering: "a)")
@@ -983,17 +965,17 @@ Nel corso della dimostrazione tutti gli argomenti per induzione si baseranno sul
ricordiamo ora le definizioni
$
sum_K (lambda) =& sum_(i=0)^n (-1) ( L[A_i^lambda K] + L[B_i^lambda K]) \
= & (L[E_0 K] + L[e_0 K]) + \
& - ( L[E_1 S_0 K] + L[e_1 S_0 K]) + \
& space dots.v \
& + (-1)^n ( L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K] )
sum_K (lambda) = & sum_(i=0)^n (-1) ( L[A_i^lambda K] + L[B_i^lambda K]) \
= & (L[E_0 K] + L[e_0 K]) + \
& - ( L[E_1 S_0 K] + L[e_1 S_0 K]) + \
& space dots.v \
& + (-1)^n ( L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K] )
$
$
sum_K (mu) = & sum_(i=0)^n (-1) (L[A_i^mu K] + L[B_i^mu K]) \
= & (L[E_1 K] + L[e_1 K]) + \
& - ( L[E_2 S_1 K] + L[e_2 S_1 K]) + \
& space dots.v \
sum_K (mu) = & sum_(i=0)^n (-1) (L[A_i^mu K] + L[B_i^mu K]) \
= & (L[E_1 K] + L[e_1 K]) + \
& - ( L[E_2 S_1 K] + L[e_2 S_1 K]) + \
& space dots.v \
& + (-1)^n ( L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
$
@@ -1003,48 +985,48 @@ Nel corso della dimostrazione tutti gli argomenti per induzione si baseranno sul
set text(size: small-size)
$
& & (L[E_0 K] + L[e_0 K]) + #h(2em) & & & \
& & - ( L[E_1 S_0 K] + L[e_1 S_0 K]) + #h(2em) & & & (L[E_1 K] + L[e_1 K]) + \
& & + ( L[E_2 S_1 S_0 K] + L[e_2 S_1 S_0 K]) + #h(2em) & & & - ( L[E_2 S_1 K] + L[e_2 S_1 K]) + \
& & space dots.v space #h(2em) & & & + ( L[E_3 S_2 S_1 K] + L[e_3 S_2 S_1 K]) + \
& & + (-1)^n ( L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K] ) #h(2em) & & & space dots.v \
& & #h(2em) & & & + (-1)^n ( L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] ) \
& & (L[E_0 K] + L[e_0 K]) + #h(2em) & & & \
& & - ( L[E_1 S_0 K] + L[e_1 S_0 K]) + #h(2em) & & & (L[E_1 K] + L[e_1 K]) + \
& & + ( L[E_2 S_1 S_0 K] + L[e_2 S_1 S_0 K]) + #h(2em) & & & - ( L[E_2 S_1 K] + L[e_2 S_1 K]) + \
& & space dots.v space #h(2em) & & & + ( L[E_3 S_2 S_1 K] + L[e_3 S_2 S_1 K]) + \
& & + (-1)^n ( L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K] ) #h(2em) & & & space dots.v \
& & #h(2em) & & & + (-1)^n ( L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] ) \
$
}
A questo punto per come sono allineate le somme alternate possiamo raggruppare ed otteniamo quanto segue:
$
sum_K (lambda) - sum_K (mu) = + ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 S_0 K] + L[e_1 S_0 K] + L[E_1 K] + L[e_1 K]) + \
space dots.v \
+(-1)^n ( & L[E_n S_(n-1) dotss S_1 S_0 K ] + L[e_n S_(n-1) dotss S_1 S_0 K ] + \
& + L[E_n S_(n-1) dotss S_1 K ] + L[e_n S_(n-1) dotss S_1 K] ) + \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
sum_K (lambda) - sum_K (mu) = + ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 S_0 K] + L[e_1 S_0 K] + L[E_1 K] + L[e_1 K]) + \
space dots.v \
+(-1)^n ( & L[E_n S_(n-1) dotss S_1 S_0 K ] + L[e_n S_(n-1) dotss S_1 S_0 K ] + \
& + L[E_n S_(n-1) dotss S_1 K ] + L[e_n S_(n-1) dotss S_1 K] ) + \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
$
Permutando i termini di tutte le righe centrali possiamo ottenere una somma di termini della forma $L[blank K] + L[blank S_0 K]$:
$
sum_K (lambda) - sum_K (mu) =
+ ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 K] + L[E_1 S_0 K] + L[e_1 K] + L[e_1 S_0 K] ) + \
space dots.v \
(-1)^n ( & L[E_n S_(n-1) dotss S_1 K ] + L[E_n S_(n-1) dotss S_1 S_0 K ] + \
& + L[e_n S_(n-1) dotss S_1 K ] + L[e_n S_(n-1) dotss S_1 S_0 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
+ ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 K] + L[E_1 S_0 K] + L[e_1 K] + L[e_1 S_0 K] ) + \
space dots.v \
(-1)^n ( & L[E_n S_(n-1) dotss S_1 K ] + L[E_n S_(n-1) dotss S_1 S_0 K ] + \
& + L[e_n S_(n-1) dotss S_1 K ] + L[e_n S_(n-1) dotss S_1 S_0 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
$
Ora ricordiamo l'@observation-seq-ops-commute, per cui operazioni su indici diversi commutano tra loro, quindi possiamo spostare l'operazione $S_0$ in modo che sia applicata per ultima ed otteniamo:
$
sum_K (lambda) - sum_K (mu) =
+ ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 K] + L[S_0 E_1 K] + L[e_1 K] + L[S_0 e_1 K] ) + \
space dots.v \
(-1)^n ( & L[E_n S_(n-1) dotss S_1 K ] + L[S_0 E_n S_(n-1) dotss S_1 K ] + \
& + L[e_n S_(n-1) dotss S_1 K ] + L[S_0 e_n S_(n-1) dotss S_1 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
+ ( & L[E_0 K] + L[e_0 K]) + \
- ( & L[E_1 K] + L[S_0 E_1 K] + L[e_1 K] + L[S_0 e_1 K] ) + \
space dots.v \
(-1)^n ( & L[E_n S_(n-1) dotss S_1 K ] + L[S_0 E_n S_(n-1) dotss S_1 K ] + \
& + L[e_n S_(n-1) dotss S_1 K ] + L[S_0 e_n S_(n-1) dotss S_1 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
$
A questo punto notiamo che tutti i diagrammi $E_i S_(i-1) dotss S_1 K$ e $e_i S_(i-1) dotss S_1 K$ per $i = 1, dots, n$ hanno applicato uno splice, quindi hanno strettamente meno incroci di $K$. Possiamo dunque applicare l'ipotesi induttiva e sostituire tutti i termini nella forma:
@@ -1055,56 +1037,64 @@ Nel corso della dimostrazione tutti gli argomenti per induzione si baseranno sul
$
=> sum_K (lambda) - sum_K (mu) =
+ ( & L[E_0 K] + L[e_0 K]) + \
- z( & L[E_0 E_1 K] + L[e_0 E_1 K] + L[E_0 e_1 K] + L[e_0 e_1 K] ) + \
space dots.v \
(-1)^n z ( & L[E_0 E_n S_(n-1) dotss S_1 K ] + L[e_0 E_n S_(n-1) dotss S_1 K ] + \
& + L[E_0 e_n S_(n-1) dotss S_1 K ] + L[e_0 e_n S_(n-1) dotss S_1 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
+ ( & L[E_0 K] + L[e_0 K]) + \
- z( & L[E_0 E_1 K] + L[e_0 E_1 K] + L[E_0 e_1 K] + L[e_0 e_1 K] ) + \
space dots.v \
(-1)^n z ( & L[E_0 E_n S_(n-1) dotss S_1 K ] + L[e_0 E_n S_(n-1) dotss S_1 K ] + \
& + L[E_0 e_n S_(n-1) dotss S_1 K ] + L[e_0 e_n S_(n-1) dotss S_1 K ] ) \
+ (-1)^(n+1) ( & L[E_0 S_n dotss S_1 K] + L[e_0 S_n dotss S_1 K] )
$
Riordiniamo ora le operazioni in modo da avere $E_0$ e $e_0$ applicate per prime nelle sequenze di operazioni:
#let hl(c: color.mix((white, 100%), (black, 10%)), content) = box(radius: 2pt, outset: (y: 3pt, x: 1pt), fill: c, content)
#let hl(c: color.mix((white, 100%), (black, 10%)), content) = box(
radius: 2pt,
outset: (y: 3pt, x: 1pt),
fill: c,
content,
)
$
= + ( & L[#hl($E_0 K$)] + L[#hl($e_0 K$)]) + \
- z( & L[ E_1 #hl($E_0 K$)] + L[ E_1 #hl($e_0 K$)] + L[ e_1 #hl($E_0 K$)] + L[ e_1 #hl($e_0 K$)] ) + \
space dots.v \
(-1)^n z ( & L[ E_n S_(n-1) dotss S_1 #hl($E_0 K$) ] + L[ E_n S_(n-1) dotss S_1 #hl($e_0 K$) ] + \
& + L[ e_n S_(n-1) dotss S_1 #hl($E_0 K$) ] + L[ e_n S_(n-1) dotss S_1 #hl($e_0 K$) ] ) \
+ (-1)^(n+1) ( & L[ S_n dotss S_1 #hl($E_0 K$)] + L[ S_n dotss S_1 #hl($e_0 K$)] )
= + ( & L[#hl($E_0 K$)] + L[#hl($e_0 K$)]) + \
- z( & L[ E_1 #hl($E_0 K$)] + L[ E_1 #hl($e_0 K$)] + L[ e_1 #hl($E_0 K$)] + L[ e_1 #hl($e_0 K$)] ) + \
space dots.v \
(-1)^n z ( & L[ E_n S_(n-1) dotss S_1 #hl($E_0 K$) ] + L[ E_n S_(n-1) dotss S_1 #hl($e_0 K$) ] + \
& + L[ e_n S_(n-1) dotss S_1 #hl($E_0 K$) ] + L[ e_n S_(n-1) dotss S_1 #hl($e_0 K$) ] ) \
+ (-1)^(n+1) ( & L[ S_n dotss S_1 #hl($E_0 K$)] + L[ S_n dotss S_1 #hl($e_0 K$)] )
$
Ora distribuiamo e riorganizziamo tutti i termini in modo da avere prima quelli che riguardano $E_0 K$ e poi tutti quelli per $e_0 K$ ed otteniamo quanto segue:
$
= L[ #hl($E_0 K$)] &+ (-1)^(n+1) L[S_n dotss S_1 #hl($E_0 K$)] + \
- z lr(size: #1.5em, ( ( & L[E_1 #hl($E_0 K$)] + L[e_1 #hl($E_0 K$)])+ \
- ( & L[E_2 S_1 #hl($E_0 K$)] + L[e_2 S_1 #hl($E_0 K$)]) +\
& space dots.v \
+( -1)^n ( & L[E_n S_(n-1) dots S_1 #hl($E_0 K$)] + L[e_n S_(n-1) dots S_1 #hl($E_0 K$)]))) \
+ L[ #hl($e_0 K$)] &+ (-1)^(n+1) L[S_n dotss S_1 #hl($e_0 K$)] + \
- z lr(size: #1.5em, ( ( & L[E_1 #hl($e_0 K$)] + L[e_1 #hl($e_0 K$)])+ \
- ( & L[E_2 S_1 #hl($e_0 K$)] + L[e_2 S_1 #hl($e_0 K$)]) +\
& space dots.v \
+( -1)^n ( & L[E_n S_(n-1) dots S_1 #hl($e_0 K$)] + L[e_n S_(n-1) dots S_1 #hl($e_0 K$)])))
= L[ #hl($E_0 K$)] & + (-1)^(n+1) L[S_n dotss S_1 #hl($E_0 K$)] + \
- z lr(
size: #1.5em, ( ( & L[E_1 #hl($E_0 K$)] + L[e_1 #hl($E_0 K$)])+ \
- ( & L[E_2 S_1 #hl($E_0 K$)] + L[e_2 S_1 #hl($E_0 K$)]) +\
& space dots.v \
+( -1)^n ( & L[E_n S_(n-1) dots S_1 #hl($E_0 K$)] + L[e_n S_(n-1) dots S_1 #hl($E_0 K$)]))
) \
+ L[ #hl($e_0 K$)] & + (-1)^(n+1) L[S_n dotss S_1 #hl($e_0 K$)] + \
- z lr(
size: #1.5em, ( ( & L[E_1 #hl($e_0 K$)] + L[e_1 #hl($e_0 K$)])+ \
- ( & L[E_2 S_1 #hl($e_0 K$)] + L[e_2 S_1 #hl($e_0 K$)]) +\
& space dots.v \
+( -1)^n ( & L[E_n S_(n-1) dots S_1 #hl($e_0 K$)] + L[e_n S_(n-1) dots S_1 #hl($e_0 K$)]))
)
$
Infine osserviamo che i termini dentro le parentesi in $z(#blank)$ sono proprio somme della forma $sum_(E_0 K) (gamma)$ e $sum_(e_0 K) (gamma)$ per $gamma = (n, dots, 1)$, dunque possiamo riscrivere l'espressione precedente come
$
= L[ E_0 K] &+ (-1)^(n+1) L[S_n dotss S_1 E_0 K] - z sum_(E_0 K) (gamma) \
+ L[ e_0 K] &+ (-1)^(n+1) L[S_n dotss S_1 e_0 K] - z sum_(e_0 K) (gamma)
= L[ E_0 K] & + (-1)^(n+1) L[S_n dotss S_1 E_0 K] - z sum_(E_0 K) (gamma) \
+ L[ e_0 K] & + (-1)^(n+1) L[S_n dotss S_1 e_0 K] - z sum_(e_0 K) (gamma)
$
Ora possiamo applicare l'ipotesi induttiva in quanto tutti i diagrammi hanno strettamente meno di $N$ incroci. Applicando l'ipotesi induttiva per $gamma$ e osservando che con la convenzione di Kauffman $abs(gamma) + 1 = (n - 1) + 1 = n$, otteniamo che
$
Omega_K(gamma)
&= (-1)^(abs(gamma) + 1) L_(hat(K) (gamma)) + z sum_K (gamma) \
&= (-1)^n L_(hat(K) (gamma)) + z sum_K (gamma) \
=> -Omega_K(gamma) &= (-1)^(n+1) L_(hat(K) (gamma)) - z sum_K (gamma)
Omega_K(gamma) & = (-1)^(abs(gamma) + 1) L_(hat(K) (gamma)) + z sum_K (gamma) \
& = (-1)^n L_(hat(K) (gamma)) + z sum_K (gamma) \
=> -Omega_K(gamma) & = (-1)^(n+1) L_(hat(K) (gamma)) - z sum_K (gamma)
$
infine sostituendo
@@ -1124,8 +1114,8 @@ Nel corso della dimostrazione tutti gli argomenti per induzione si baseranno sul
$
L_K (a, z) colon.eq
1 / (2n) [
sum_(i=1)^n sum_(q=p_i, overline(p)_i)
((-1)^(abs(lambda(q))+1) delta kL_(K_i) kL_(K - K_i) + z sum_K (lambda(q)))
sum_(i=1)^n sum_(q=p_i, overline(p)_i)
((-1)^(abs(lambda(q))+1) delta kL_(K_i) kL_(K - K_i) + z sum_K (lambda(q)))
]
$
@@ -1163,7 +1153,7 @@ Enunciamo ora il seguente enunciato nel caso di aver definito $L_K$ rispetto ad
$
L_K (a, z) & colon.eq
(-1)^(abs(lambda(p))+1) L[hat(K)(lambda(p))] + z sum_K (lambda(p)) \
(-1)^(abs(lambda(p))+1) L[hat(K)(lambda(p))] + z sum_K (lambda(p)) \
& = z (L[E_i K] + L[e_i K]) - L[S_i K]
$
@@ -1224,15 +1214,15 @@ Per una dimostrazione di questo fatto si rimanda a @lickorish1997introduction[pa
#figure(
//
grid(gutter: 0.5em, image("assets/splices-with-untying-function.png", width: 11cm), grid(
//
columns: (1.5em, 1fr, 1fr, 1fr, 2em),
[],
$hat(K)$,
$E_i hat(K)$,
$e_i hat(K)$,
[],
)),
grid(
gutter: 0.5em,
image("assets/splices-with-untying-function.png", width: 11cm),
grid(
//
columns: (1.5em, 1fr, 1fr, 1fr, 2em),
[], $hat(K)$, $E_i hat(K)$, $e_i hat(K)$, [],
),
),
)
Osserviamo che passeremo prima dalla componente $K_2^*$ in verso opposto, questa parte sarà quindi in forma ascendente. Al secondo incontro dello splice dell'incrocio $i$, torneremo sulla componente $K_1$ che percorreremo nel verso originale che sarà quindi in forma discendente.
@@ -1316,8 +1306,8 @@ $
column-gutter: 2em,
image("assets/derived/atlas-crossing-slides-0.png", width: 2.25cm),
image("assets/derived/atlas-crossing-slides-3.png", width: 2.25cm),
$hat(K)(cal(U), p)$,
$hat(K)(cal(U), q)$,
$hat(K)(cal(U), p)$, $hat(K)(cal(U), q)$,
)
}
@@ -1336,17 +1326,17 @@ $
Siano ora $w_1$ e $w_2$ i writhe rispettivamente di $K_1$ e $K_2$. Per il teorema della curva di Jordan, la somma dei segni degli incroci tra componenti diverse ha somma zero poiché una delle due _sovrasta_ l'altra. Segue che $w_1 + w_2 = w$. Ricapitoliamo ora tutti i termini:
$
L[hat(K)] &= a^(w+1) \
L[S_i hat(K)] &= a^(w-1) \
L[e_i hat(K)] &= a^w \
L[E_i hat(K)] &= delta a^(w_1) a^(w_2) = delta a^(w_1 + w_2) = delta a^w = (a^(w+1) + a^(w-1)) slash z - a^w
L[hat(K)] & = a^(w+1) \
L[S_i hat(K)] & = a^(w-1) \
L[e_i hat(K)] & = a^w \
L[E_i hat(K)] & = delta a^(w_1) a^(w_2) = delta a^(w_1 + w_2) = delta a^w = (a^(w+1) + a^(w-1)) slash z - a^w
$
che verifica l'identità infatti:
$
a^(w+1) + a^(w-1) &= cancel(z) ((a^(w+1) + a^(w-1))/cancel(z) - cancel(a^w) + cancel(a^w)) \
=> L[hat(K)] + L[hat(K)'] &= z (L[E_i hat(K)] + L[e_i hat(K)]) \
a^(w+1) + a^(w-1) & = cancel(z) ((a^(w+1) + a^(w-1))/cancel(z) - cancel(a^w) + cancel(a^w)) \
=> L[hat(K)] + L[hat(K)'] & = z (L[E_i hat(K)] + L[e_i hat(K)]) \
$
E questo conclude la dimostrazione delle due proprietà.
@@ -1374,11 +1364,11 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
Ricordiamo come era definito $L_K$ nel caso @kauffman-rec-single-component e notiamo quanto segue
$
L_K (a, z) &colon.eq 1 / 2 [
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L_(hat(K)(q)) + z sum_K (lambda(q)))
] \
&= 1/2 (Omega_K (p) + Omega_K (overline(p)))
L_K (a, z) & colon.eq 1 / 2 [
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L_(hat(K)(q)) + z sum_K (lambda(q)))
] \
& = 1/2 (Omega_K (p) + Omega_K (overline(p)))
$
Dunque ci basta mostrare che $Omega_K (p)$ non dipenda dalla scelta di punto base.
@@ -1401,9 +1391,8 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
oppure
],
image("assets/derived/atlas-crossing-slides-0.png", width: 2.25cm),
$K(p)$,
[],
$K(p)$,
$K(p)$, [], $K(p)$,
)
}
@@ -1418,8 +1407,8 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
column-gutter: 2em,
image("assets/derived/atlas-crossing-slides-1.png", width: 2.25cm),
image("assets/derived/atlas-crossing-slides-0.png", width: 2.25cm),
$K(p)$,
$hat(K)(p)$,
$K(p)$, $hat(K)(p)$,
)
}
@@ -1434,26 +1423,26 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
column-gutter: 2em,
image("assets/derived/atlas-crossing-slides-3.png", width: 2.25cm),
image("assets/derived/atlas-crossing-slides-3.png", width: 2.25cm),
$K(q)$,
$hat(K)(q)$,
$K(q)$, $hat(K)(q)$,
)
}
come già detto prima, l'ultimo incrocio vicino ad esso è un sotto-incrocio dunque $K(q)$ è già in forma di nodo banale standard. Segue che $i$ non appartiene alla sequenza di scambi che sarà $(n-1, dots, 0)$ e quindi $hat(K)(q) = S_(n-1) dotss S_0 K$. Vorremo vedere che $Omega_K (p) = Omega_K (q)$, ovvero che queste due espressioni coincidano:
$
Omega_K (p) &= (-1)^(n+1) L[hat(K)(p)] + z sum_K (lambda(p)) \
Omega_K (q) &= (-1)^((n-1)+1) L[hat(K)(q)] + z sum_K (lambda(q))
Omega_K (p) & = (-1)^(n+1) L[hat(K)(p)] + z sum_K (lambda(p)) \
Omega_K (q) & = (-1)^((n-1)+1) L[hat(K)(q)] + z sum_K (lambda(q))
$
Come in precedenza possiamo studiare la differenza:
$
Omega_K (p) - Omega_K (q)
=& (-1)^(n+1) L[hat(K)(p)] + z sum_K (lambda(p)) \
&+ underbrace((-1)^(n+1), = -(-1)^n) L[hat(K)(q)] - z sum_K (lambda(q)) \
=& (-1)^(n+1) (L[hat(K)(p)] + L[hat(K)(q)]) \
&+ z (-1)^n (L[A_n^lambda K] + L[B_n^lambda K])
= & (-1)^(n+1) L[hat(K)(p)] + z sum_K (lambda(p)) \
& + underbrace((-1)^(n+1), = -(-1)^n) L[hat(K)(q)] - z sum_K (lambda(q)) \
= & (-1)^(n+1) (L[hat(K)(p)] + L[hat(K)(q)]) \
& + z (-1)^n (L[A_n^lambda K] + L[B_n^lambda K])
$
qui abbiamo usato il fatto che tutti i termini in $sum_K (lambda(p)) - sum_K (lambda(q))$ si cancellano tra loro tranne l'ultimo di $sum_K (lambda(p))$.
@@ -1461,9 +1450,9 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
Ora notiamo che
$
A_n^lambda K &= E_n S_(n-1) dotss S_0 K = E_n hat(K)(p) \
B_n^lambda K &= e_n S_(n-1) dotss S_0 K = e_n hat(K)(p) \
// hat(K)(q) &= S_n space.med hat(K)(p)
A_n^lambda K & = E_n S_(n-1) dotss S_0 K = E_n hat(K)(p) \
B_n^lambda K & = e_n S_(n-1) dotss S_0 K = e_n hat(K)(p) \
// hat(K)(q) &= S_n space.med hat(K)(p)
$
inoltre per il @lemma-slide-identities abbiamo anche che
@@ -1475,11 +1464,11 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
Per concludere basta sostituire queste ultime identità
$
Omega_K (p) - Omega_K (q) =& (-1)^(n+1) (L[hat(K)(p)] + L[hat(K)(q)]) \
&+ z (-1)^n (L[A_n^lambda K] + L[B_n^lambda K]) \
= & cancel(z (-1)^(n+1) (L[E_n hat(K)(p)] + L[e_n hat(K)(p)])) \
&+ cancel(z (-1)^n (L[E_n hat(K)(p)] + L[e_n hat(K)(p)])) \
= & 0
Omega_K (p) - Omega_K (q) = & (-1)^(n+1) (L[hat(K)(p)] + L[hat(K)(q)]) \
& + z (-1)^n (L[A_n^lambda K] + L[B_n^lambda K]) \
= & cancel(z (-1)^(n+1) (L[E_n hat(K)(p)] + L[e_n hat(K)(p)])) \
& + cancel(z (-1)^n (L[E_n hat(K)(p)] + L[e_n hat(K)(p)])) \
= & 0
$
Segue quindi che $Omega_K (p) = Omega_K (q)$.
@@ -1494,8 +1483,8 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
column-gutter: 2em,
image("assets/derived/atlas-crossing-slides-0.png", width: 2.25cm),
image("assets/derived/atlas-crossing-slides-0.png", width: 2.25cm),
$K(p)$,
$hat(K)(p)$,
$K(p)$, $hat(K)(p)$,
)
}
@@ -1509,23 +1498,23 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
column-gutter: 2em,
image("assets/derived/atlas-crossing-slides-2.png", width: 2.25cm),
image("assets/derived/atlas-crossing-slides-3.png", width: 2.25cm),
$K(q)$,
$hat(K)(q)$,
$K(q)$, $hat(K)(q)$,
)
}
Questa volta $i$ fa parte della sequenza di scambi per $K(q)$ poiché $i$ compare come ultimo incrocio nella visita e quindi in $hat(K)(q)$ sarà un sotto-incrocio. La situazione è più complessa di prima, $i$ comparirà come sopra-incrocio in mezzo alla sequenza di scambi. Avremo quindi le seguenti sequenze per $p$ e per $q$:
$
lambda(p) &= (n, n-1, dots, i+1, i-1, dots, 1, 0) \
lambda(q) &= (n, n-1, dots, i+1, i, i-1, dots, 1, 0) \
lambda(p) & = (n, n-1, dots, i+1, i-1, dots, 1, 0) \
lambda(q) & = (n, n-1, dots, i+1, i, i-1, dots, 1, 0) \
$
Se ora consideriamo gli scambi da applicare che ci portano a $hat(K)(p)$ e $hat(K)(q)$ abbiamo che
$
hat(K)(p) &= S_n S_(n-1) space.med dots.c space S_(i+1) S_(i-1) space.med dots.c space S_0 K \
hat(K)(q) &= S_n S_(n-1) space.med dots.c space S_(i+1) S_i S_(i-1) space.med dots.c space S_0 K \
hat(K)(p) & = S_n S_(n-1) space.med dots.c space S_(i+1) S_(i-1) space.med dots.c space S_0 K \
hat(K)(q) & = S_n S_(n-1) space.med dots.c space S_(i+1) S_i S_(i-1) space.med dots.c space S_0 K \
$
Dunque riordinando gli scambi ed applicando $S_i$ per ultimo, possiamo notare che $S_i hat(K)(q) = hat(K)(p)$.
@@ -1533,8 +1522,8 @@ Possiamo ora mostrare l'invarianza per scelta di punto base di $Omega_K (p)$.
Con un argomento simile a quello del @lemma-slide-identities, possiamo applicare l'enunciato alla coppia $hat(K)(p), hat(K)(q)$ per l'indice $i$ anche se in questo caso l'indice $i$ è il primo _subito prima_ di $q$. Inoltre per il @lemma-sum-switches-rotation abbiamo che $sum_K (p), sum_K (q)$ sono invarianti a meno di permutazioni cicliche. Possiamo quindi sostituire $lambda(p)$ e $lambda(q)$ con le seguenti sequenze di scambi applicando le giuste rotazioni all'indietro.
$
lambda'(p) &= (i-1, dots, 1, 0, n, n-1, dots, i+1) \
lambda'(q) &= (i, i-1, dots, 1, 0, n, n-1, dots, i+1)
lambda'(p) & = (i-1, dots, 1, 0, n, n-1, dots, i+1) \
lambda'(q) & = (i, i-1, dots, 1, 0, n, n-1, dots, i+1)
$
A questo punto possiamo applicare lo stesso argomento del punto precedente.
@@ -1560,22 +1549,20 @@ A questo punto possiamo vedere che $L_K$ verifica gli assiomi della @kauffman-po
- Se $K$ ha una sola componente ed un incrocio $i$: consideriamo $S_i K$, $E_i K$ e $e_i K$; scegliendo bene $p$ possiamo fare in modo che $i$ sia il primo incrocio nella sequenza di scambi. Ora consideriamo l'espressione del caso @kauffman-rec-single-component, con una singola componente:
$
L_K (a, z) &colon.eq
1 / 2
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L[hat(K)(lambda(q))] + z sum_K (lambda(q)))
\
&= 1 / 2
sum_(q = p, overline(p))
((-1)^(n+1) L[hat(K)(q)] + z sum_K (lambda(q)))
L_K (a, z) & colon.eq
1 / 2
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L[hat(K)(lambda(q))] + z sum_K (lambda(q))) \
& = 1 / 2
sum_(q = p, overline(p))
((-1)^(n+1) L[hat(K)(q)] + z sum_K (lambda(q)))
$
Ricordiamo le definizioni dei termini $Omega_K (p)$ e $sum_K (lambda(q))$:
$
sum_K (lambda(q)) & colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K]) \
Omega_K (q) & colon.eq (-1)^(abs(lambda) + 1) L[hat(K)(lambda)] + z sum_K (lambda)
sum_K (lambda(q)) & colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K]) \
Omega_K (q) & colon.eq (-1)^(abs(lambda) + 1) L[hat(K)(lambda)] + z sum_K (lambda)
$
La tesi segue considerando la differenza nelle espansioni di $Omega_K (p)$ e $Omega_(S_i K) (p)$, in particolare tutti i termini si cancellano tranne il primo:
@@ -1593,8 +1580,8 @@ A questo punto possiamo vedere che $L_K$ verifica gli assiomi della @kauffman-po
$
L_K (a, z) colon.eq
1 / (2n) [
sum_(i=1)^n sum_(q=p_i, overline(p)_i)
((-1)^(abs(lambda(q))+1) delta kL_(K_i) kL_(K - K_i) + z sum_K (lambda(q)))
sum_(i=1)^n sum_(q=p_i, overline(p)_i)
((-1)^(abs(lambda(q))+1) delta kL_(K_i) kL_(K - K_i) + z sum_K (lambda(q)))
]
$
}
@@ -1632,8 +1619,8 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
Vorremo vedere che vale $L[K] = L[S_2 S_1 K]$. Consideriamo le seguenti relazioni:
$
L[K] + L[S_1 K] &= z (L[E_1 K] + L[e_1 K]) \
L[S_1 K] + L[S_2 S_1 K] &= z (L[E_2 S_1 K] + L[e_2 S_1 K]) \
L[K] + L[S_1 K] & = z (L[E_1 K] + L[e_1 K]) \
L[S_1 K] + L[S_2 S_1 K] & = z (L[E_2 S_1 K] + L[e_2 S_1 K]) \
$ <kauffman-moves-2>
i diagrammi associati a queste relazioni sono riportati qui sotto, in particolare possiamo notare che ci sono alcune relazioni tra questi:
@@ -1650,10 +1637,8 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
image("assets/derived/atlas-move-2-K-1.png", width: 1.5cm),
image("assets/derived/atlas-move-2-K-2.png", width: 1.5cm),
image("assets/derived/atlas-move-2-K-3.png", width: 1.5cm),
$K$,
$S_1 K$,
$E_1 K$,
$e_1 K$,
$K$, $S_1 K$, $E_1 K$, $e_1 K$,
)
}
@@ -1669,10 +1654,8 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
image("assets/derived/atlas-move-2-S1K-1.png", width: 1.5cm),
image("assets/derived/atlas-move-2-S1K-2.png", width: 1.5cm),
image("assets/derived/atlas-move-2-S1K-3.png", width: 1.5cm),
$S_1 K$,
$S_2 S_1 K$,
$E_2 S_1 K$,
$e_2 S_1 K$,
$S_1 K$, $S_2 S_1 K$, $E_2 S_1 K$, $e_2 S_1 K$,
)
}
@@ -1691,8 +1674,8 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
#h(8.1em)
#image("assets/derived/atlas-move-2-S1K-2.png", width: 1.25cm)
$,
$L[e_1 K] = L[e_2 S_1 K]$,
$L[E_1 K] = a^(-1) L[#skein.h] = L[E_2 S_1 K]$,
$L[e_1 K] = L[e_2 S_1 K]$, $L[E_1 K] = a^(-1) L[#skein.h] = L[E_2 S_1 K]$,
)
Dunque i due membri di destra di $(3)$ coincidono ed abbiamo quanto cercato:
@@ -1720,9 +1703,9 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
In questo modo due dei tre incroci non compariranno nella sequenza di scambi, per quanto riguarda l'incrocio rimanente $*$, consideriamo la definizione @kauffman-rec-single-component:
$
L_K (a, z) &colon.eq 1 / 2
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L_(hat(K)(lambda(q))) + z sum_K (lambda(q)))
L_K (a, z) & colon.eq 1 / 2
sum_(q = p, overline(p))
((-1)^(abs(lambda(q))+1) L_(hat(K)(lambda(q))) + z sum_K (lambda(q)))
$
l'incrocio $*$ può comparire o scambiato, in tal caso sicuramente comparirà dentro la somma $sum_K (lambda(q))$ dove ci sono già degli splice ovvero diagrammi con un incrocio in meno e possiamo applicare l'ipotesi induttiva. Altrimenti siamo nel caso di splice dell'incrocio $i$, ovvero siamo in uno dei seguenti casi:
@@ -1751,4 +1734,4 @@ Come ultimo risultato vediamo che $L_K$ è un invariante di isotopia regolare.
In questo caso però possiamo applicare un'argomentazione simile a quella della mossa II, possiamo usare $L[K] = L[S_2 S_1 K]$ per semplificare la situazione in modo che non ci siano due incroci consecutivi che appartengano ad una sequenza di rialzo, ed ora procedere come nel caso precedente.
Abbiamo così mostrato che per ogni diagramma di nodi e link, il polinomio $L_K$ è invariante per mosse di tipo III e mosse di tipo II che riducono il numero di incroci. Dunque è anche invariante per mosse di tipo II in entrambe le direzioni e questo completa la dimostrazione.
]
]
+973 -307
View File
File diff suppressed because it is too large Load Diff
+103 -74
View File
@@ -1,23 +1,29 @@
#import "@preview/touying:0.6.1": *
#let _tblock(self: none, title: none, it) = {
grid(columns: 1, row-gutter: 0pt, block(
fill: self.colors.primary-dark,
width: 100%,
radius: (top: 6pt),
inset: (top: 0.4em, bottom: 0.3em, left: 0.5em, right: 0.5em),
text(fill: self.colors.neutral-lightest, weight: "bold", title),
), rect(
fill: gradient.linear(self.colors.primary-dark, self.colors.primary.lighten(90%), angle: 90deg),
width: 100%,
height: 4pt,
), block(
fill: self.colors.primary.lighten(90%),
width: 100%,
radius: (bottom: 6pt),
inset: (top: 0.4em, bottom: 0.5em, left: 0.5em, right: 0.5em),
it,
))
grid(
columns: 1,
row-gutter: 0pt,
block(
fill: self.colors.primary-dark,
width: 100%,
radius: (top: 6pt),
inset: (top: 0.4em, bottom: 0.3em, left: 0.5em, right: 0.5em),
text(fill: self.colors.neutral-lightest, weight: "bold", title),
),
rect(
fill: gradient.linear(self.colors.primary-dark, self.colors.primary.lighten(90%), angle: 90deg),
width: 100%,
height: 4pt,
),
block(
fill: self.colors.primary.lighten(90%),
width: 100%,
radius: (bottom: 6pt),
inset: (top: 0.4em, bottom: 0.5em, left: 0.5em, right: 0.5em),
it,
),
)
}
#let tblock(title: none, it) = touying-fn-wrapper(_tblock.with(title: title, it))
@@ -89,7 +95,7 @@
// institution
if info.institution != none {
parbreak()
text(size: 0.7em, info.institution)
text(size: 0.8em, info.institution)
}
// date
if info.date != none {
@@ -100,29 +106,47 @@
touying-slide(self: self, body)
})
#let outline-slide(config: (:), title: utils.i18n-outline-title, numbered: true, level: none, ..args) = touying-slide-wrapper(self => {
self.store.title = title
touying-slide(self: self, config: config, std.align(self.store.align, components.adaptive-columns({
text(fill: self.colors.primary, weight: 600, components.custom-progressive-outline(
level: level,
alpha: self.store.alpha,
indent: (0em, 1em),
vspace: (.4em,),
numbered: (numbered,),
depth: 1,
..args.named(),
))
}) + args.pos().sum(default: none)))
#let outline-slide(
config: (:),
title: utils.i18n-outline-title,
numbered: true,
level: none,
..args,
) = touying-slide-wrapper(self => {
self.store.title = "Indice"
touying-slide(self: self, config: config, std.align(
self.store.align,
components.adaptive-columns({
text(fill: self.colors.primary, weight: 600, components.custom-progressive-outline(
level: level,
alpha: self.store.alpha,
indent: (0em, 1em),
vspace: (.4em,),
numbered: (numbered,),
depth: 1,
..args.named(),
))
})
+ args.pos().sum(default: none),
))
})
#let new-section-slide(config: (:), title: utils.i18n-outline-title, level: 1, numbered: true, ..args, body) = outline-slide(config: config, title: title, level: level, numbered: numbered, ..args, body)
#let new-section-slide(
config: (:),
title: utils.i18n-outline-title,
level: 1,
numbered: true,
..args,
body,
) = outline-slide(config: config, title: title, level: level, numbered: numbered, ..args, body)
#let focus-slide(config: (:), align: horizon + center, body) = touying-slide-wrapper(self => {
self = utils.merge-dicts(
self,
config-common(freeze-slide-counter: true),
config-page(fill: self.colors.primary, margin: 2em, header: none, footer: none),
)
self = utils.merge-dicts(self, config-common(freeze-slide-counter: true), config-page(
fill: self.colors.primary,
margin: 2em,
header: none,
footer: none,
))
set text(fill: self.colors.neutral-lightest, weight: "bold", size: 1.5em)
touying-slide(self: self, config: config, std.align(align, body))
})
@@ -131,12 +155,11 @@
let content = {
set std.align(center + horizon)
if title != none {
block(
fill: self.colors.tertiary,
inset: (top: 0.7em, bottom: 0.7em, left: 3em, right: 3em),
radius: 0.5em,
text(size: 1.5em, fill: self.colors.neutral-lightest, title),
)
block(fill: self.colors.tertiary, inset: (top: 0.7em, bottom: 0.7em, left: 3em, right: 3em), radius: 0.5em, text(
size: 1.5em,
fill: self.colors.neutral-lightest,
title,
))
}
body
}
@@ -176,7 +199,11 @@
rows: (auto, auto),
utils.call-or-display(self, self.store.footer),
if self.store.progress-bar {
utils.call-or-display(self, components.progress-bar(height: 2pt, self.colors.primary, self.colors.neutral-lightest))
utils.call-or-display(self, components.progress-bar(
height: 2pt,
self.colors.primary,
self.colors.neutral-lightest,
))
},
)
}
@@ -191,26 +218,30 @@
margin: (top: 3.5em, bottom: 2.5em, x: 2.5em),
),
config-common(slide-fn: slide, new-section-slide-fn: new-section-slide),
config-methods(init: (self: none, body) => {
set text(size: 18pt, font: "Open Sans")
set par(leading: 0.75em)
set list(marker: {
place(top + left, dy: 0.2em, circle(fill: self.colors.primary, radius: 3pt))
h(0.25em)
})
show figure.caption: set text(size: 0.6em)
show footnote.entry: set text(size: 0.6em)
show heading: set text(fill: self.colors.primary)
show link: it => if type(it.dest) == str {
set text(fill: self.colors.primary)
it
} else {
it
}
show figure.where(kind: table): set figure.caption(position: top)
config-methods(
init: (self: none, body) => {
set text(size: 18pt, font: "Open Sans")
set par(leading: 0.75em)
set list(marker: {
place(top + left, dy: 0.2em, circle(fill: self.colors.primary, radius: 3pt))
h(0.25em)
})
show figure.caption: set text(size: 0.6em)
show footnote.entry: set text(size: 0.6em)
show heading: set text(fill: self.colors.primary)
show link: it => if type(it.dest) == str {
set text(fill: self.colors.primary)
it
} else {
it
}
show figure.where(kind: table): set figure.caption(position: top)
body
}, alert: utils.alert-with-primary-color, tblock: _tblock),
body
},
alert: utils.alert-with-primary-color,
tblock: _tblock,
),
config-colors(
primary: rgb("#003c71"),
primary-dark: rgb("#005baa"),
@@ -236,16 +267,14 @@
logo: utils.call-or-display(self, self.store.header-right),
),
header: self => if self.store.title != none {
block(
width: 100%,
height: 2em,
fill: self.colors.primary,
place(
left + horizon,
text(fill: self.colors.neutral-lightest, weight: 600, size: 1.2em, utils.call-or-display(self, self.store.title)),
dx: 1.5em,
),
)
block(width: 100%, height: 2em, fill: self.colors.primary, place(
left + horizon,
text(fill: self.colors.neutral-lightest, weight: 600, size: 1.2em, utils.call-or-display(
self,
self.store.title,
)),
dx: 1.5em,
))
},
footer: self => {
let cell(fill: none, it) = rect(
@@ -270,4 +299,4 @@
)
body
}
}
+53 -7
View File
@@ -4,7 +4,10 @@
import cetz.draw: *
// draw the white outline
set-style(..cetz.styles.resolve((stroke: (paint: white, thickness: size-factor * 0.75pt * 8, cap: "butt")), base: style))
set-style(..cetz.styles.resolve(
(stroke: (paint: white, thickness: size-factor * 0.75pt * 8, cap: "butt")),
base: style,
))
polyline
// draw the black line
@@ -81,6 +84,49 @@
draw-strand({ hobby((1.5, +1), (1, +1), (-0.5, 0), (-0.1, -1), (0, -1)) })
}),
//
// Large
//
unit-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
circle((0, 0), radius: 1, stroke: (paint: black, thickness: 0.75pt))
}),
over-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ line((-1, -1), (1, 1)) })
draw-strand({ line((-1, 1), (1, -1)) })
}),
under-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ line((-1, 1), (1, -1)) })
draw-strand({ line((-1, -1), (1, 1)) })
}),
h-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ hobby((-1, -1), (0, -0.61), (1, -1), omega: 1) })
draw-strand({ hobby((-1, 1), (0, +0.61), (1, 1), omega: 1) })
}),
v-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ hobby((-1, -1), (-0.61, 0), (-1, 1), omega: 1) })
draw-strand({ hobby((1, -1), (+0.61, 0), (1, 1), omega: 1) })
}),
strand-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
rect((-1, -1), (1, 1), fill: white, stroke: none)
draw-strand({ hobby((-1, 0), (0, 0.25), (1, 0), omega: 1) })
}),
over-twist-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ hobby((1.5, +1), (1, +1), (-0.5, 0), (-0.1, -1), (0, -1)) })
draw-strand({ hobby((-1.5, +1), (-1, +1), (0.5, 0), (0.1, -1), (0, -1)) })
}),
under-twist-large: skein-canvas(size-factor: 1.5, {
import cetz.draw: *
draw-strand({ hobby((-1.5, +1), (-1, +1), (0.5, 0), (0.1, -1), (0, -1)) })
draw-strand({ hobby((1.5, +1), (1, +1), (-0.5, 0), (-0.1, -1), (0, -1)) })
}),
//
// Medium
//
unit-medium: skein-canvas(size-factor: medium-scale-factor, {
@@ -123,16 +169,16 @@
}),
)
#let skein-generic(kind: "over", direction: (+1, +1), arrows: (true, true), styles: ((:), (:))) = {
skein-canvas({
#let skein-generic(kind: "over", direction: (+1, +1), arrows: (true, true), styles: ((:), (:)), size-factor: 1.0) = {
skein-canvas(size-factor: size-factor, {
import cetz.draw: *
if kind == "over" {
draw-strand({ line((-1, -1), (1, 1)) }, style: styles.at(1))
draw-strand({ line((-1, 1), (1, -1)) }, style: styles.at(0))
draw-strand(size-factor: size-factor, { line((-1, -1), (1, 1)) }, style: styles.at(1))
draw-strand(size-factor: size-factor, { line((-1, 1), (1, -1)) }, style: styles.at(0))
}
if kind == "under" {
draw-strand({ line((-1, 1), (1, -1)) }, style: styles.at(0))
draw-strand({ line((-1, -1), (1, 1)) }, style: styles.at(1))
draw-strand(size-factor: size-factor, { line((-1, 1), (1, -1)) }, style: styles.at(0))
draw-strand(size-factor: size-factor, { line((-1, -1), (1, 1)) }, style: styles.at(1))
}
if arrows.at(0) {