feojfwepjfewpi

main
Antonio De Lucreziis 11 months ago
parent 80f015a1ad
commit 771760632d

Binary file not shown.

@ -40,8 +40,8 @@
#show math.equation: set text(size: 19pt)
#show strong: it => text(weight: 600, it.body)
#set par(leading: 1em, spacing: 1em)
#set list(indent: 0.25em, body-indent: 0.75em, spacing: 1em)
#set enum(indent: 0.25em, body-indent: 0.75em, spacing: 1em, numbering: "i.1.a)")
#set list(indent: 0.6em, body-indent: 0.75em, spacing: 1em)
#set enum(indent: 0.6em, body-indent: 0.75em, spacing: 1em, numbering: "i.1.a)")
#show figure.caption: caption => block(inset: (x: 2em), {
set align(left)
@ -64,13 +64,15 @@
*Def.* $K subset bb(R)^3$ è un *nodo (tame)* se esiste $f : bb(S)^1 arrow.hook bb(R)^3$ embedding loc. piatto con $K = f(bb(S)^1)$.
*Def.* Possiamo generalizzare i nodi $bb(S)^1 arrow bb(R)^3$ a *link* sostituendo con $bb(S)^1 union.sq dots.c union.sq bb(S)^1 arrow bb(R)^3$.
\
*Def.* Nodi $bb(S)^1 arrow bb(R)^3 ~>$ *Link* $bb(S)^1 union.sq dots.c union.sq bb(S)^1 arrow bb(R)^3$.
#pause
*Def.* $K_0, K_1 subset bb(R)^3$ sono *equivalenti* se esiste un'*isotopia ambiente* che porta uno nell'altro, ovvero esiste $H : bb(R)^3 times [0, 1] arrow bb(R)^3$ continua, tale che:
// *Def.* $K_0, K_1 subset bb(R)^3$ sono *equivalenti* se esiste un'*isotopia ambiente* che porta uno nell'altro, ovvero esiste continua, tale che:
#v(0.75em)
*Def.* $K_0, K_1$ sono equivalenti se $exists H : bb(R)^3 times [0, 1] arrow bb(R)^3$ *isotopia ambiente*, ovvero tale che:
- $forall t in [0, 1], H(dot, t)$ è un omeomorfismo
@ -86,52 +88,62 @@ e posta $H_t (x) colon.eq H(x, t)$ si ha:
// *Fatto (Crowell).* Dato un nodo $K subset bb(R)^3$, $K$ è *nodo (tame)* $<=>$ $K$ è *poligonale*.
== Proiezioni e Diagrammi
#pause
*Fatto.* Sia $L subset bb(R)^3$ link poligonale, allora esiste un aperto denso $U subset bb(S)^2$ tale che $forall v in U$ e detta $pi_v : bb(R)^3 arrow v^perp$ la proiezione sul piano $v^perp$ come in figura, abbiamo che:
#v(0.75em)
#grid(
columns: (auto, 1fr),
gutter: 1em,
figure(image("assets/projection-plane.png", height: 6cm)),
[
1. $L$ non ha segmenti paralleli a $v$.
*Esistenza Proiezioni Regolari.* Sia $L subset bb(R)^3$ _link poligonale_, allora esiste un aperto denso $U$ tale che $forall v in U subset SS^2$, la proiezione sul piano $v^perp approx RR^2$ è regolare.
2. Se $x in pi_v (L)$ è tale che $abs(pi^(-1)(x)) > 1$, ovvero è un punto *singolare*, allora:
- $x in pi_v (L) subset v^perp$ tale che $abs(pi^(-1)_v (x)) = 2$ sono detti *incroci*.
- $pi_v^(-1)(x)$ non contiene vertici di $L$
// == Proiezioni e Diagrammi
- $abs(pi^(-1)(x)) = 2$ ovvero è un *punto doppio*, questi sono gli *incroci* della proiezione.
// #grid(
// columns: (auto, 1fr),
// gutter: 1em,
// figure(image("assets/projection-plane.png", height: 6cm)),
// [
// 1. $L$ non ha segmenti paralleli a $v$.
- $x$ è un punto di intersezione trasversa
// 2. Se $x in pi_v (L)$ è tale che $abs(pi^(-1)(x)) > 1$, ovvero è un punto *singolare*, allora:
Gli altri punti sono detti *regolari*.
],
)
// - $pi_v^(-1)(x)$ non contiene vertici di $L$
// - $abs(pi^(-1)(x)) = 2$ ovvero è un *punto doppio*, questi sono gli *incroci* della proiezione.
// - $x$ è un punto di intersezione trasversa
// Gli altri punti sono detti *regolari*.
// ],
// )
== Proiezioni e Diagrammi
*Def.* Un *diagramma* $D subset bb(R)^2$ di un link $L subset bb(R)^3$ è l'immagine di $L$ attraverso una proiezione regolare decorata con l'informazione sopra/sotto ad ogni incrocio.
#pad(
top: 1em,
top: 1.5em,
grid(
columns: (1fr, auto),
gutter: 1em,
align: top,
align: horizon,
[
*Def.* Le mosse I, II, III in figura sono dette *mosse di Reidemeister*.
*Teorema (di Reidemeister).* Due diagrammi di link _equivalenti_ sono collegati da una _successione finita mosse di Reidemeister_ e isotopie planari.
\
*Teorema (di Reidemeister).* Due diagrammi di link _equivalenti_ sono collegati da una _successione finita di mosse di Reidemeister_ e isotopie planari.
],
figure(image("assets/reidemeister-moves.jpg", height: 6.75cm)),
figure(image("assets/reidemeister-moves.jpg", height: 6cm)),
),
)
== Isotopia Regolare
*Def.* $D_1, D_2$ diagrammi di link si dicono equivalenti a meno di *isotopia regolare* se e solo se sono equivalenti a meno di isotopie planari e mosse II e III di Reidemeister.
*Def.* $D_1 tilde D_2$ diagrammi di link si dicono equivalenti a meno di *isotopia regolare* se e solo se sono equivalenti a meno di isotopie planari e mosse II e III di Reidemeister.
#v(1em)
#figure(image("assets/ambient-regular-isotopy-difference.jpg", height: 7cm))
@ -140,77 +152,77 @@ e posta $H_t (x) colon.eq H(x, t)$ si ha:
*Osservazione.* Tutte le mosse di tipo I, quelle che introducono quelli che chiameremo *riccioli*, possono passare sopra o sotto altri fili senza problemi applicando le seguenti mosse
#v(1em)
#figure(image("assets/move-1-factorization.png", width: 75%))
== Comportamento Isotopia Regolare
*Osservazione.* Quando abbiamo una coppia di riccioli con segni opposti abbiamo la seguente proprietà di cancellazione detto _trucco di Whitney_.
#v(1em)
#figure(image("assets/whitney-trick.png", width: 100%))
== Diagrammi in forma discendente
// == Diagrammi in forma discendente
#align(center)[
Dato $K$ il *nodo banale standard* (o in _forma discendente_) associato è $hat(K)(cal(U), p)$:
// #align(center)[
// Dato $K$ il *nodo banale standard* (o in _forma discendente_) associato è $hat(K)(cal(U), p)$:
#v(1em)
// #v(1em)
#image("assets/standard-unlink-construction.png", height: 8cm)
]
// #image("assets/standard-unlink-construction.png", height: 8cm)
// ]
== Comportamento Isotopia Regolare
// == Comportamento Isotopia Regolare
*Lemma.* Sia $K$ un diagramma di un nodo in _forma discendente_, allora o è composto interamente da riccioli o ammette una sequenza di mosse di tipo II e III che portano al diagramma di un nodo formato solo da riccioli.
// *Lemma.* Sia $K$ un diagramma di un nodo in _forma discendente_, allora o è composto interamente da riccioli o ammette una sequenza di mosse di tipo II e III che portano al diagramma di un nodo formato solo da riccioli.
Ovvero un nodo in forma discendente è _equivalente_ ad uno composto solo da riccioli.
// Ovvero un nodo in forma discendente è _equivalente_ ad uno composto solo da riccioli.
\
// \
#pause
// #pause
_Dim._ Consideriamo una successione di mosse $K = D_0 stretch(arrow) dots.c stretch(arrow) D_n = #skein.unit-large$. Modifichiamo le mosse nei seguenti casi:
// _Dim._ Consideriamo una successione di mosse $K = D_0 stretch(arrow) dots.c stretch(arrow) D_n = #skein.unit-large$. Modifichiamo le mosse nei seguenti casi:
- Mosse di tipo I che rimuovono un ricciolo
// - Mosse di tipo I che rimuovono un ricciolo
- Mosse di tipo I che aggiungono un ricciolo
// - Mosse di tipo I che aggiungono un ricciolo
- Mosse di tipo II, III
// - Mosse di tipo II, III
== Comportamento Isotopia Regolare
// == Comportamento Isotopia Regolare
#figure(image("assets/modified-curl-add-before.png", width: 7% * 6.5))
// #figure(image("assets/modified-curl-add-before.png", width: 7% * 6.5))
$ #rotate(90deg, $~>$) $
// $ #rotate(90deg, $~>$) $
#figure(image("assets/modified-curl-add-after.png", width: 7% * 13))
// #figure(image("assets/modified-curl-add-after.png", width: 7% * 13))
#align(center)[Mosse di tipo I che aggiungono un ricciolo]
// #align(center)[Mosse di tipo I che aggiungono un ricciolo]
== Comportamento Isotopia Regolare
// == Comportamento Isotopia Regolare
#v(2em)
// #v(2em)
#figure(image("assets/modified-r2-before.png", width: 8% * 6.5))
// #figure(image("assets/modified-r2-before.png", width: 8% * 6.5))
$ #rotate(90deg, $~>$) $
// $ #rotate(90deg, $~>$) $
#figure(image("assets/modified-r2-after.png", width: 8% * 8.5))
// #figure(image("assets/modified-r2-after.png", width: 8% * 8.5))
#align(center)[Mosse di tipo II, III]
// #align(center)[Mosse di tipo II, III]
== Writhe
*Def.* Definiamo *il segno* di un incrocio di un diagramma come segue:
*Def.* Il *segno* di un incrocio di un diagramma orientato è: $epsilon(#skein-generic(size-factor: 1.5, direction: (+1, +1))) = +1, epsilon(#skein-generic(size-factor: 1.5, direction: (+1, -1))) = -1$
$
epsilon(#skein-generic(size-factor: 1.5, direction: (+1, +1))) = +1
#h(2em)
epsilon(#skein-generic(size-factor: 1.5, direction: (+1, -1))) = -1
$
\
*Def.* $K$ link orientato, definiamo il *writhe* $display(w(K) colon.eq sum_(c "incrocio") epsilon(c))$.
@ -218,25 +230,30 @@ $
\
*Prop.* Se $K$ è il diagramma di un nodo, il _writhe_ non dipende dall'orientazione.
*Prop.* Se $K$ è il diagramma di un nodo, il _writhe_ *non dipende dall'orientazione*.
#pause
*Prop.* Il writhe è un invariante di isotopia regolare, ovvero $K_1 tilde K_2 => w(K_1) = w(K_2)$.
\
*Prop.* Il writhe è un *invariante di isotopia regolare*, ovvero $K_1 tilde K_2 => w(K_1) = w(K_2)$.
= Polinomio di Kauffman
== Assiomi
*Def.* Sia $K$ un diagramma di un link _non orientato_, $L_K in bb(Z)[a, a^(-1), z, z^(-1)]$ e verifica:
*Def.* Per ogni diagramma di link _non orientato_ $K$, il polinomio $L_K in bb(Z)[a, a^(-1), z, z^(-1)]$ verifica i seguenti assiomi:
#set par(spacing: 1.5em)
#set enum(numbering: "i.a)", spacing: 1.5em)
#set par(spacing: 1em)
#set list(spacing: 1em)
#set enum(numbering: "i.a)", spacing: 1em)
1. $K tilde K' => L_K = L_K'$.
2. Valgono le seguenti relazioni:
#set enum(numbering: "i.a)", spacing: 1.25em)
1. $L[#skein.over-large] + L[#skein.under-large] = z (L[#skein.h-large] + L[#skein.v-large])$
2. $L[#skein.unit-large] = 1$
@ -247,9 +264,31 @@ $
#pause
#v(0.5em)
#v(0.25em)
*Osservazione.* A questo punto non sappiamo se $L_K$ _sia ben definito_.
== Normalizzazione a $F_K$
*Def.* $F_K(a, z) colon.eq a^(-w(K)) dot L_K (a, z)$
#pause
#v(0.75em)
*Prop.* $F_K$ invariante di isotopia ambiente.
*Osservazione.* A questo punto non sappiamo se $L_K$ sia ben definito.
#v(0.75em)
_Dim._
$display(
F[ #skein.over-twist-large ]
= pause a^(-w(#skein.over-twist)) dot L[ #skein.over-twist-large ]
= pause a^(-(w(#skein.strand) + 1)) dot a L[ #skein.strand-large ]
= pause a^(-w(#skein.strand)) dot L[ #skein.strand-large ]
= pause F[ #skein.strand-large ]
)$
== Calcoli impliciti
@ -257,7 +296,7 @@ $
// #show image: it => rect(stroke: 1pt + red, inset: 0pt, it)
#slide(repeat: 5, self => [
#slide(repeat: 8, self => [
#let (alternatives,) = utils.methods(self)
#set align(center + top)
@ -324,6 +363,135 @@ $
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
$
& 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-large ]
+
a^(-1) L[ #skein.unit-large ] =
z (
delta
+
L [ #skein.unit-large ]
)
$,
)
][
#grid(
columns: 1,
row-gutter: 1.5em,
column-gutter: 3em,
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
$
& 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-large ]
+
a^(-1) L[ #skein.unit-large ] =
z (
delta
+
L [ #skein.unit-large ]
) \
& => a + a^(-1) = z ( delta + 1 )
$,
)
][
#grid(
columns: 1,
row-gutter: 1.5em,
column-gutter: 3em,
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
$
& 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-large ]
+
a^(-1) L[ #skein.unit-large ] =
z (
delta
+
L [ #skein.unit-large ]
) \
& => a + a^(-1) = z ( delta + 1 ) \
& => delta = (a + 1 slash a) / z - 1
$,
)
][
#grid(
columns: 1,
row-gutter: 1.5em,
column-gutter: 3em,
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
{
$
& 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-large ]
+
a^(-1) L[ #skein.unit-large ] =
z (
delta
+
L [ #skein.unit-large ]
) \
& => a + a^(-1) = z ( delta + 1 ) \
& => delta = (a + 1 slash a) / z - 1
$
$
~> L[K_1 union.sq K_2] = delta L[K_1] L[K_2]
$
},
)
][
#grid(
columns: 2,
gutter: 2em,
align: center + top,
{
grid(
columns: 1,
row-gutter: 1.5em,
column-gutter: 3em,
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
{
$
& L[ #knot-picture("infinity-0.png", height: 2.25em) ]
+
L[ #knot-picture("infinity-1.png", height: 2.25em) ] =
@ -332,7 +500,7 @@ $
+
L[ #knot-picture("infinity-3.png", height: 2.25em) ]
) \
pause & =>
& =>
a L[ #skein.unit-large ]
+
a^(-1) L[ #skein.unit-large ] =
@ -343,107 +511,77 @@ $
) \
& => a + a^(-1) = z ( delta + 1 ) \
& => delta = (a + 1 slash a) / z - 1
$,
)
][
#grid(
columns: 1,
row-gutter: 1.5em,
column-gutter: 3em,
align: center,
[*Link $L[#skein.unit-large #skein.unit-large]$*],
{
$
& 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) ]
) \
#pause & =>
a L[ #skein.unit-large ]
+
a^(-1) L[ #skein.unit-large ] =
z (
delta
+
L [ #skein.unit-large ]
) \
& => a + a^(-1) = z ( delta + 1 ) \
& => delta = (a + 1 slash a) / z - 1
$
$
$
~> L[K_1 union.sq K_2] = delta L[K_1] L[K_2]
$
$
~> L[K_1 union.sq K_2] = delta L[K_1] L[K_2]
$
},
)
},
{
set text(size: 11pt)
show math.equation: set text(size: 13pt)
grid(
columns: 1,
row-gutter: 1.5em,
align: center + horizon,
[ *Link di Hopf*],
$
& 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) ]
) \
& =>
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
delta =
z (
a
+
a^(-1)
) \
& =>
L[ #knot-picture("hopf-0.png", height: 1.75em) ] =
- (a + a^(-1)) z^(-1) + 1 + (a + a^(-1)) z
$,
[ *Nodo trifoglio*],
$
& 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) ]
) \
& =>
L[ #knot-picture("trefoil-0.png", height: 2em) ]
+
a =
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
$,
)
},
)
]
])
== Calcoli impliciti
#slide({
set align(center)
show math.equation: set text(size: 15pt)
grid(
columns: 2,
row-gutter: 1.5em,
column-gutter: 3em,
align: center + top,
[*Link di Hopf*], [*Nodo trifoglio*],
$
& 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) ]
) \
& =>
L[ #knot-picture("hopf-0.png", height: 1.75em) ]
+
delta =
z (
a
+
a^(-1)
) \
& =>
L[ #knot-picture("hopf-0.png", height: 1.75em) ] =
- (a + a^(-1)) z^(-1) + 1 + (a + a^(-1)) z
$,
$
& 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) ]
) \
& =>
L[ #knot-picture("trefoil-0.png", height: 2em) ]
+
a =
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
$,
)
})
// == Invariante di isotopia ambiente associato
// *Def.* Definiamo $F_K in bb(Z)[a, a^(-1), z, z^(-1)]$ per diagrammi di link orientati $K$ come
@ -457,11 +595,21 @@ $
== Considerazioni preliminari
#slide({
[*Def.* Sia $K$ un diagramma di un nodo, $p in K$ un punto di partenza direzionato e sia $lambda = (lambda_n, dots, lambda_0)$ una sequenza di etichette di incroci di $K$:]
#align(center)[
Il *nodo banale standard* (o in _forma discendente_) associato $K$ è $hat(K)(cal(U), p)$:
#v(1em)
#image("assets/standard-unlink-construction.png", height: 8cm)
]
== Considerazioni preliminari
#slide({
set align(center)
[$K$ un diagramma di un nodo, $i$ etichetta di uno degli incroci]
v(1em)
grid(
@ -503,22 +651,21 @@ $
pause
[$lambda = (lambda_n, dots, lambda_0)$ sequenza di etichette di incroci di $K$]
v(1em)
$
A_i^lambda colon.eq E_lambda_i S_lambda_(i-1) dots.c space S_lambda_0
#h(2em)
B_i^lambda colon.eq e_lambda_i S_lambda_(i-1) dots.c space S_lambda_0
$
})
pause
v(1em)
$
sum_K (lambda) colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K])
$
})
== Considerazioni preliminari
@ -531,7 +678,7 @@ $
set align(center)
{
[Sia $lambda$ una sequenza di scambi che porta $K$ a $hat(K)$:]
[$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:]
}
v(1em)
@ -539,20 +686,20 @@ $
only(
"1-3",
$
& L[K] + L[S_0 K] = z( L[E_0 K] + L[e_0 K] ) \
& pause 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 \
& pause L[S_(n-1) dotss S_0 K] + L [hat(K)] = z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
& L[K] + L[S_0 K] = z( L[E_0 K] + L[e_0 K] ) \
& pause 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 \
& pause L[S_(n-1) dotss S_0 K] + L [hat(K)(p)] = z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$,
)
only(
4,
$
& 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 \
(-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])
& 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 \
(-1)^n ( & L[S_(n-1) dotss S_0 K] + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$,
)
@ -562,7 +709,7 @@ $
& 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] ) \
& 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])
(-1)^n (& cancel(L[S_(n-1) dotss S_0 K]) + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$,
)
@ -573,7 +720,7 @@ $
h(4.4em)
$display(
=> L[K] + (-1)^n L[hat(K)] =
=> L[K] + (-1)^n L[hat(K)(p)] =
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]
)
@ -583,7 +730,7 @@ $
)
#slide({
align(center, [Sia $lambda$ una sequenza di scambi che porta $K$ a $hat(K)$:])
align(center, [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:])
v(1em)
@ -591,14 +738,14 @@ $
& 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] ) \
& 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])
(-1)^n (& cancel(L[S_(n-1) dotss S_0 K]) + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$
v(1.5em)
h(4.4em)
$display(
=> L[K] + (-1)^n L[hat(K)] =
=> L[K] + (-1)^n L[hat(K)(p)] =
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]
)
@ -606,7 +753,7 @@ $
})
#slide({
align(center, [Sia $lambda$ una sequenza di scambi che porta $K$ a $hat(K)$:])
align(center, [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:])
v(1em)
@ -614,14 +761,14 @@ $
& 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] ) \
& 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])
(-1)^n (& cancel(L[S_(n-1) dotss S_0 K]) + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$
v(1.5em)
h(4.4em)
$display(
=> L[K] + (-1)^n L[hat(K)] =
=> L[K] + (-1)^n L[hat(K)(p)] =
z sum_(i=0)^n (-1)^i (
L[A_i^lambda K] + L[B_i^lambda K]
)
@ -629,7 +776,7 @@ $
})
#slide({
align(center, [Sia $lambda$ una sequenza di scambi che porta $K$ a $hat(K)$:])
align(center, [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:])
v(1em)
@ -637,14 +784,14 @@ $
& 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] ) \
& 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])
(-1)^n (& cancel(L[S_(n-1) dotss S_0 K]) + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$
v(1.5em)
h(4.4em)
$display(
=> L[K] = (-1)^(n+1) L[hat(K)] +
=> L[K] = (-1)^(n+1) L[hat(K)(p)] +
z sum_(i=0)^n (-1)^i (
L[A_i^lambda K] + L[B_i^lambda K]
)
@ -657,7 +804,7 @@ $
#{
set align(center)
[Sia $lambda$ una sequenza di scambi che porta $K$ a $hat(K)$:]
[$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:]
}
#v(1em)
@ -667,7 +814,7 @@ $
& 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] ) \
& 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])
(-1)^n (& cancel(L[S_(n-1) dotss S_0 K]) + L [hat(K)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 K] + L[e_n S_(n-1) dotss S_0 K])
$
#{
@ -675,41 +822,83 @@ $
h(4.4em)
$display(
=> L[K] = (-1)^(n+1) L[hat(K)] +
=> L[K] = (-1)^(abs(lambda(q))+1) L[hat(K)(p)] +
z sum_K^text(fill: #white, n) (lambda)
)$
show math.equation: set text(size: 14pt)
h(1fr)
$display((sum_K (lambda) colon.eq sum_(i=0)^n (-1)^i (L[A_i^lambda K] + L[B_i^lambda K])))$
}
]
== Definizione induttiva
*Def (induttiva di $L_K$).* Il polinomio $L_(K)(a,z)$ è definito induttivamente come segue:
#slide(
repeat: 2,
self => [
#let (alternatives,) = utils.methods(self)
#alternatives[
// la definizione è sotto perché gli enumerate non vanno d'accordo con le figure
*Def (induttiva di $L_K$).* Il polinomio $L_(K)(a,z)$ è definito induttivamente come segue:
1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$
// la definizione è sotto perché gli enumerate non vanno d'accordo con le figure
2. Se $K = K_1 union K_2$: $L(K_1 union K_2) colon.eq delta L(K_1) L(K_2)$ #h(1fr) (con $delta colon.eq (a + 1 slash a) / z - 1$)
1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$
3. Altrimenti $K = K_1 union dotss union K_n$:
2. Se $K = K_1 union K_2$: $L(K_1 union K_2) colon.eq delta L(K_1) L(K_2)$ #h(1fr) (con $delta colon.eq (a + 1 slash a) / z - 1$)
#v(0.75em)
3. Altrimenti $K = K_1 union dotss union K_n$:
a) #h(0.35em) Se $n > 1$: $display(
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 L_(K_i) L_(K - K_i) + z sum_K (lambda(q)))
)$
#v(0.75em)
#v(1.5em)
a) #h(0.35em) Se $n > 1$: $display(
L_K (a, z) colon.eq
1 / n
sum_(i=1)^n
((-1)^(abs(lambda(p_i))+1) delta L_(K_i) L_(K - K_i) + z sum_K (lambda(p_i)))
)$
b) #h(0.35em) Se $n=1$: $display(
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)))
)$
#v(1.5em)
b) #h(0.35em) Se $n=1$: $display(
L_K (a, z) colon.eq
(-1)^(abs(lambda(p))+1) L[hat(K)(p)] + z sum_K (lambda(p))
)$
][
*Def (induttiva di $L_K$).* Il polinomio $L_(K)(a,z)$ è definito induttivamente come segue:
// la definizione è sotto perché gli enumerate non vanno d'accordo con le figure
1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$
2. Se $K = K_1 union K_2$: $L(K_1 union K_2) colon.eq delta L(K_1) L(K_2)$ #h(1fr) (con $delta colon.eq (a + 1 slash a) / z - 1$)
3. Altrimenti $K = K_1 union dotss union K_n$:
#v(0.75em)
a) #h(0.35em) Se $n > 1$: $display(
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 L_(K_i) L_(K - K_i) + z sum_K (lambda(q)))
)$
#v(1.5em)
b) #h(0.35em) Se $n=1$: $display(
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)))
)$
]
],
)
== Dimostrazione buona definizione
@ -718,13 +907,12 @@ $
#slide[
L'ipotesi induttiva che useremo nel corso della dimostrazione è la seguente:
#set par(spacing: 1.5em)
#set list(spacing: 1.5em)
#set enum(numbering: "a)", spacing: 1.5em)
Per ogni diagramma di link $K$ con $< N$ incroci e per diagrammi contenenti $#skein.over-twist-large$ con $< N$ incroci:
*Def (Ipotesi induttiva).* Dimostreremo induttivamente le seguenti proprietà: per ogni diagramma di link $K$ con $< N$ incroci e per diagrammi contenenti $#skein.over-twist-large$ con $< N$ incroci:
1. $L_K$ è ben definito (non dipende dalla scelta di punto base).
@ -772,21 +960,21 @@ $
== Implementazione in Python
#show raw: set text(size: 15pt)
#set par(spacing: 1.25em)
#set list(spacing: 1.25em)
#set enum(numbering: "a)", spacing: 1.25em)
#set par(spacing: 1.5em)
#set list(spacing: 1.5em)
#set enum(numbering: "a)", spacing: 1.5em)
Implementazioni esistenti:
- *KnotScape*: scritto in C, degli anni '90.
- *KnotScape*: scritto in C, degli anni \~1990.
- *KnotTheory*: ultimo aggiornamento \~2011, per Mathematica.
- *KnotTheory*: ultimo aggiornamento \~2010, per Mathematica.
#pause
Per il progetto di Lab. Comp. abbiamo scritto una *nuova implementazione* in _Python_ open source:
- Rappresentazione di nodi attraverso codici *PD* e *SG*.
- Rappresentazione di nodi attraverso *codici PD* e *SG*.
- Algoritmo per il calcolo di $L_K$ e $F_K$.
@ -798,4 +986,9 @@ Per il progetto di Lab. Comp. abbiamo scritto una *nuova implementazione* in _Py
== Fine
#" "
#slide[
#set align(center)
#set text(size: 42pt)
Grazie per l'attenzione
]

Loading…
Cancel
Save