diff --git a/out/presentation.pdf b/out/presentation.pdf index aeee565..8ecd09e 100644 Binary files a/out/presentation.pdf and b/out/presentation.pdf differ diff --git a/src/presentation.typ b/src/presentation.typ index 6e181c0..2efd4cf 100644 --- a/src/presentation.typ +++ b/src/presentation.typ @@ -4,6 +4,9 @@ #import "@preview/fletcher:0.5.4" as fletcher: edge, node #import "@preview/numbly:0.1.0": numbly +#import "@preview/pinit:0.2.2": * +#import "@preview/fletcher:0.5.1" + #import "skein.typ": * #let cetz-canvas = touying-reducer.with(reduce: cetz.canvas, cover: cetz.draw.hide.with(bounds: true)) @@ -131,7 +134,7 @@ Dimostreremo che per ogni diagramma di link _non orientato_ esiste un polinomio #v(1em) -*Prop.* $F_K$ invariante di isotopia ambiente. +*Prop.* $F_D$ invariante di isotopia ambiente. _Dimostrazione._ @@ -146,11 +149,11 @@ _Dimostrazione._ // stroke: 1pt, [ - $F[ #skein.over-twist-large ] = pause a^(-w(#skein.over-twist)) dot L[ #skein.over-twist-large ]$ + $F[ #skein.over-twist-large ] = a^(-w(#skein.over-twist)) dot L[ #skein.over-twist-large ]$ ], { - show math.equation: set text(size: 15pt) - $pause L[#skein.over-twist] = a L[#skein.strand], quad w(#skein.over-twist) = w(#skein.strand) + 1$ + show math.equation: set text(size: 16pt) + $pause lr((L[#skein.over-twist] = a L[#skein.strand], quad w(#skein.over-twist) = w(#skein.strand) + 1), size: #1.5em)$ }, $pause #h(3.9em) = a^(-w(#skein.strand) - 1) dot a L[ #skein.strand-large ]$, [], @@ -343,7 +346,7 @@ _Dimostrazione._ $ $ - ~> L[K_1 union.sq K_2] = delta L[K_1] L[K_2] + ~> L[D_1 union.sq D_2] = delta L[D_1] L[D_2] $ }, ) @@ -385,7 +388,7 @@ _Dimostrazione._ $ $ - ~> L[K_1 union.sq K_2] = delta L[K_1] L[K_2] + ~> L[D_1 union.sq D_2] = delta L[D_1] L[D_2] $ }, ) @@ -456,7 +459,7 @@ _Dimostrazione._ == Considerazioni preliminari #align(center)[ - Il *nodo banale standard* (o in _forma discendente_) associato $D$ è $hat(D)(cal(U), p)$: + Il *nodo banale standard* (o in _forma discendente_) associato a $D$ è $hat(D)(cal(U), p)$: #alternatives[ #move(dx: -1pt, image("assets/derived/std-unknot-1-cropped.jpg", height: 8cm)) @@ -510,7 +513,7 @@ _Dimostrazione._ #slide({ set align(center) - [$D$ un diagramma di un nodo, $i$ etichetta di uno degli incroci] + [Sia $D$ un diagramma di un nodo, $i$ etichetta di uno degli incroci:] v(1.5em) @@ -548,7 +551,7 @@ _Dimostrazione._ }) }, - $K$, $S_i K$, $E_i K$, $e_i K$, + $D$, $S_i D$, $E_i D$, $e_i D$, ) }) @@ -563,41 +566,41 @@ _Dimostrazione._ { set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] + [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] } - show math.equation: set text(size: 16pt) + show math.equation: set text(size: 18pt) only( "1-4", $ - & 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] ) \ - & pause L[S_1 S_0 K] + L[S_2 S_1 S_0 K] = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K] ) \ + & L[D] + L[S_0 D] = z( L[E_0 D] + L[e_0 D] ) \ + & pause L[S_0 D] + L[S_1 S_0 D] = z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ + & pause L[S_1 S_0 D] + L[S_2 S_1 S_0 D] = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D] ) \ & 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]) + & pause L[S_(n-1) dotss S_0 D] + L [hat(D)(p)] = z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) $, ) only( 5, $ - & 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] ) \ - & L[S_1 S_0 K] + L[S_2 S_1 S_0 K] = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K] ) \ + & L[D] + L[S_0 D] = z( L[E_0 D] + L[e_0 D] ) \ + -( & L[S_0 D] + L[S_1 S_0 D]) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ + & L[S_1 S_0 D] + L[S_2 S_1 S_0 D] = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D] ) \ & 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]) + (-1)^n ( & L[S_(n-1) dotss S_0 D] + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) $, ) only( 6, $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ + & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ + -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ + & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ & space dots.v \ - (-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]) + (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) $, ) @@ -608,193 +611,244 @@ _Dimostrazione._ h(4.4em) $display( - => L[K] + (-1)^n L[hat(K)(p)] = + => L[D] + (-1)^n L[hat(D)(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] + L[E_i S_(i-1) dotss S_0 D] + L[e_i S_(i-1) dotss S_0 D] ) )$ } }, ) - -#import "@preview/pinit:0.2.2": * -#import "@preview/fletcher:0.5.1" - #slide({ { set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] + [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] } - show math.equation: set text(size: 16pt) + show math.equation: set text(size: 18pt) $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ + & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ + -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ + & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ & space dots.v \ - (-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]) + (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) $ v(1.5em) h(4.4em) $display( - => L[K] + (-1)^n L[hat(K)(p)] = + => L[D] + (-1)^n L[hat(D)(p)] = z sum_(i=0)^n (-1)^i lr( ( - L[E_i S_(i-1) dotss S_0 K] + L[e_i S_(i-1) dotss S_0 K] + L[E_i S_(i-1) dotss S_0 D] + L[e_i S_(i-1) dotss S_0 D] ), size: #1em ) )$ }) -#slide({ - { - set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] - } - - show math.equation: set text(size: 16pt) - - $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ - & space dots.v \ - (-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]) - $ +#slide( + repeat: 5, + self => { + let (alternatives,) = utils.methods(self) - v(1.5em) + { + set align(center) + [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] + } - h(4.4em) - $display( - => L[K] + (-1)^n L[hat(K)(p)] = - z #h(-0.125pt) #pin(1) sum_(i=0)^n (-1)^i lr( - ( - L[E_i S_(i-1) dotss S_0 K] + L[e_i S_(i-1) dotss S_0 K] - ), size: #1em - ) #pin(2) - )$ + show math.equation: set text(size: 18pt) - pinit-place( - (1,), - dy: 1.25em, $ - underbrace(#h(21.5em), #move(dy: 0.75em, $display("Notazione: " sum_D (lambda(p)))$)) - $, - ) -}) - -#slide({ - { - set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] - } - - show math.equation: set text(size: 16pt) - - $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ - & space dots.v \ - (-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)(p)] = - z sum_D^text(fill: #white, n) (lambda) - )$ -}) - -#slide({ - { - set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] - } - - show math.equation: set text(size: 16pt) - - $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ - & space dots.v \ - (-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)(p)] - + z sum_D^text(fill: #white, n) (lambda) - )$ -}) - -#slide({ - { - set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] - } - - show math.equation: set text(size: 16pt) - - $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ - & space dots.v \ - (-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]) - $ + & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ + -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ + & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ + & space dots.v \ + (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) + $ - v(1.5em) + v(1.5em) - h(4.4em) - $display( - => L[K] = - (-1)^(abs(lambda(p))+1) L[hat(K)(p)] - + z sum_D^text(fill: #white, n) (lambda) - )$ -}) + h(4.4em) -#slide({ - { - set align(center) - [$p$ punto base direzionato, $lambda$ una sequenza di scambi che porta $K$ a $hat(K)(p)$:] - } + alternatives( + { + show math.equation: set text(size: 18pt) + + $display( + => L[D] + (-1)^n L[hat(D)(p)] = + z #h(-0.125pt) #pin(1) sum_(i=0)^n (-1)^i lr( + ( + L[E_i S_(i-1) dotss S_0 D] + L[e_i S_(i-1) dotss S_0 D] + ), size: #1em + ) #pin(2) + )$ + + pinit-place( + (1,), + dy: 1.25em, + $ + underbrace( + #h(21.5em), #{ + show math.equation: set text(size: 16pt) - show math.equation: set text(size: 16pt) + move(dy: 0.75em, $display("Notazione: " sum_D (lambda(p)))$) + } + ) + $, + ) + }, + { + show math.equation: set text(size: 18pt) - $ - & 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] ) \ - & cancel(L[S_1 S_0 K]) + cancel(L[S_2 S_1 S_0 K]) = z( L[E_1 S_1 S_0 K] + L[e_1 S_1 S_0 K]) \ - & space dots.v \ - (-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]) - $ + $display( + => L[D] + (-1)^n L[hat(D)(p)] = + z sum_D^text(fill: #white, n) (lambda(p)) + )$ + }, + { + show math.equation: set text(size: 18pt) - v(1.5em) + $display( + => L[D] = + (-1)^(n+1) L[hat(D)(p)] + + z sum_D^text(fill: #white, n) (lambda(p)) + )$ + }, + { + show math.equation: set text(size: 18pt) - h(4.4em) - $display( - => L[K] = - #h(-1pt) - #pin(1) - (-1)^(abs(lambda(p))+1) L[hat(K)(p)] - + z sum_D^text(fill: #white, n) (lambda) - #pin(2) - )$ + $display( + => L[D] = + (-1)^(abs(lambda(p))+1) L[hat(D)(p)] + + z sum_D^text(fill: #white, n) (lambda(p)) + )$ + }, + { + show math.equation: set text(size: 18pt) + + $display( + => L[D] = + #h(-1pt) + #pin(1) + (-1)^(abs(lambda(p))+1) L[hat(D)(p)] + + z sum_D^text(fill: #white, n) (lambda(p)) + #pin(2) + )$ + + pinit-highlight(1, 2, dy: -1.75em, dx: 3pt, extended-height: 3em, fill: rgb("#0002")) + }, + ) + }, +) - pinit-highlight(1, 2, dy: -1.75em, dx: 3pt, extended-height: 3em, fill: rgb("#0002")) -}) +// #slide({ +// { +// set align(center) +// [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] +// } + +// show math.equation: set text(size: 18pt) + +// $ +// & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ +// -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ +// & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ +// & space dots.v \ +// (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) +// $ + +// v(1.5em) + +// h(4.4em) + +// }) + +// #slide({ +// { +// set align(center) +// [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] +// } + +// show math.equation: set text(size: 18pt) + +// $ +// & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ +// -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ +// & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ +// & space dots.v \ +// (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) +// $ + +// v(1.5em) + +// h(4.4em) +// $display( +// => L[D] = +// (-1)^(n+1) L[hat(D)(p)] +// + z sum_D^text(fill: #white, n) (lambda(p)) +// )$ +// }) + +// #slide({ +// { +// set align(center) +// [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] +// } + +// show math.equation: set text(size: 18pt) + +// $ +// & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ +// -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ +// & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ +// & space dots.v \ +// (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) +// $ + +// v(1.5em) + +// h(4.4em) +// $display( +// => L[D] = +// (-1)^(abs(lambda(p))+1) L[hat(D)(p)] +// + z sum_D^text(fill: #white, n) (lambda(p)) +// )$ +// }) + +// #slide({ +// { +// set align(center) +// [Sia $p$ punto base direzionato, $lambda = (n, dots, 0)$ una sequenza di scambi che porta $D$ a $hat(D)(p)$:] +// } + +// show math.equation: set text(size: 18pt) + +// $ +// & L[D] + cancel(L[S_0 D]) = z( L[E_0 D] + L[e_0 D] ) \ +// -(& cancel(L[S_0 D]) + cancel(L[S_1 S_0 D])) = -z( L[E_1 S_0 D] + L[e_1 S_0 D] ) \ +// & cancel(L[S_1 S_0 D]) + cancel(L[S_2 S_1 S_0 D]) = z( L[E_1 S_1 S_0 D] + L[e_1 S_1 S_0 D]) \ +// & space dots.v \ +// (-1)^n (& cancel(L[S_(n-1) dotss S_0 D]) + L [hat(D)(p)]) = (-1)^n z (L[E_n S_(n-1) dotss S_0 D] + L[e_n S_(n-1) dotss S_0 D]) +// $ + +// v(1.5em) + +// h(4.4em) +// $display( +// => L[D] = +// #h(-1pt) +// #pin(1) +// (-1)^(abs(lambda(p))+1) L[hat(D)(p)] +// + z sum_D^text(fill: #white, n) (lambda(p)) +// #pin(2) +// )$ + +// pinit-highlight(1, 2, dy: -1.75em, dx: 3pt, extended-height: 3em, fill: rgb("#0002")) +// }) == Definizione induttiva @@ -809,83 +863,83 @@ _Dimostrazione._ #alternatives[ - Definiamo ora il polinomio $L_(K)(a,z)$ induttivamente come segue: + Definiamo ora il polinomio $L_(D)(a,z)$ induttivamente come segue: - 1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$ + 1. Se $D$ è in _forma discendente_: $L_D (a, z) colon.eq a^w(D)$ - 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)$ + 2. Se $D = D_1 union D_2$: $L(D_1 union D_2) colon.eq delta L(D_1) L(D_2)$ #h(1fr) $("con " delta colon.eq (a + 1 slash a) / z - 1)$ - 3. Altrimenti $K = K_1 union dotss union K_n$: + 3. Altrimenti $D = D_1 union dotss union D_n$: #v(0.75em) a) #h(0.35em) Se $n > 1$: $display( - L_K (a, z) colon.eq + L_D (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))) + ((-1)^(abs(lambda(p_i))+1) delta L_(D_i) L_(D - D_i) + z sum_D (lambda(p_i))) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ #v(1.5em) b) #h(0.35em) Se $n=1$: $display( - L_K (a, z) colon.eq - #h(-1pt) #pin(1) (-1)^(abs(lambda(p))+1) L[hat(K)(p)] + z sum_K (lambda(p)) #pin(2) - // display((-1)^(abs(lambda(p))+1) L[hat(K)(p)] + z sum_K (lambda(p))) + L_D (a, z) colon.eq + #h(-1pt) #pin(1) (-1)^(abs(lambda(p))+1) L[hat(D)(p)] + z sum_D (lambda(p)) #pin(2) + // display((-1)^(abs(lambda(p))+1) L[hat(D)(p)] + z sum_D (lambda(p))) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ - #pinit-highlight(1, 2, dy: -2em, dx: 3pt, extended-height: 3.75em, fill: rgb("#0002")) + #pinit-highlight(1, 2, dy: -2em, dx: 3pt, extended-height: 3.5em, fill: rgb("#0002")) ][ - Definiamo ora il polinomio $L_(K)(a,z)$ induttivamente come segue: + Definiamo ora il polinomio $L_(D)(a,z)$ induttivamente come segue: - 1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$ + 1. Se $D$ è in _forma discendente_: $L_D (a, z) colon.eq a^w(D)$ - 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)$ + 2. Se $D = D_1 union D_2$: $L(D_1 union D_2) colon.eq delta L(D_1) L(D_2)$ #h(1fr) $("con " delta colon.eq (a + 1 slash a) / z - 1)$ - 3. Altrimenti $K = K_1 union dotss union K_n$: + 3. Altrimenti $D = D_1 union dotss union D_n$: #v(0.75em) a) #h(0.35em) Se $n > 1$: $display( - L_K (a, z) colon.eq + L_D (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))) + ((-1)^(abs(lambda(p_i))+1) delta L_(D_i) L_(D - D_i) + z sum_D (lambda(p_i))) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ #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_D (lambda(p)) + L_D (a, z) colon.eq + (-1)^(abs(lambda(p))+1) L[hat(D)(p)] + z sum_D (lambda(p)) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ ][ - Definiamo ora il polinomio $L_(K)(a,z)$ induttivamente come segue: + Definiamo ora il polinomio $L_(D)(a,z)$ induttivamente come segue: - 1. Se $K$ è in _forma discendente_: $L_K (a, z) colon.eq a^w(K)$ + 1. Se $D$ è in _forma discendente_: $L_D (a, z) colon.eq a^w(D)$ - 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)$ + 2. Se $D = D_1 union D_2$: $L(D_1 union D_2) colon.eq delta L(D_1) L(D_2)$ #h(1fr) $("con " delta colon.eq (a + 1 slash a) / z - 1)$ - 3. Altrimenti $K = K_1 union dotss union K_n$: + 3. Altrimenti $D = D_1 union dotss union D_n$: #v(0.75em) a) #h(0.35em) Se $n > 1$: $display( - L_K (a, z) colon.eq + L_D (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))) + ((-1)^(abs(lambda(q))+1) delta L_(D_i) L_(D - D_i) + z sum_D (lambda(q))) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ #v(1.5em) b) #h(0.35em) Se $n=1$: $display( - L_K (a, z) colon.eq + L_D (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)^(abs(lambda(q))+1) L_(hat(D)(q)) + z sum_D (lambda(q))) ) #rect(stroke: none, height: 3.5em, width: 1pt)$ ] @@ -902,19 +956,19 @@ _Dimostrazione._ #set list(spacing: 1.5em) #set enum(numbering: "a)", spacing: 1.5em) - *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: + *Ipotesi induttiva.* Dimostreremo induttivamente le seguenti proprietà: per ogni diagramma di link $D$ 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). + 1. $L_D$ è ben definito (non dipende dalla scelta di punto base). - 2. $L_K$ verifica gli assiomi: + 2. $L_D$ verifica gli assiomi: - - $L[K] + L[S_i K] = z ( L[e_i K] + L[E_i K] )$ + - $L[D] + L[S_i D] = z ( L[e_i D] + L[E_i D] )$ - $L[#skein.over-twist-large] = a L [#skein.strand-large]$, $L[#skein.under-twist-large] = a^(-1) L [#skein.strand-large]$ - 3. $L_K$ è invariante per mosse di tipo II e III che non aumentano il numero di incroci. + 3. $L_D$ è invariante per mosse di tipo II e III che non aumentano il numero di incroci. - 4. Per certi diagrammi vale $L_K = a^w(K)$ + 4. Per certi diagrammi vale $L_D = a^w(D)$. ] == Dimostrazione buona definizione @@ -926,9 +980,9 @@ _Dimostrazione._ _Dimostrazione._ - 1. $L_K$ è ben definito (non dipende dalla scelta di punto base) + 1. $L_D$ è ben definito (non dipende dalla scelta di punto base) - - Invarianza $sum_K (lambda)$ per rotazioni + - Invarianza $sum_D (lambda(p))$ per rotazioni - Caso più componenti @@ -936,45 +990,38 @@ _Dimostrazione._ - Splice di un nodo in forma discendente - - Assiomi di $L_K$ per nodi in forma discendente + - Assiomi di $L_D$ per nodi in forma discendente - 2. $L_K$ verifica gli assiomi + 2. $L_D$ verifica gli assiomi - 3. $L_K$ è invariante per mosse di tipo II e III che non aumentano il numero di incroci + 3. $L_D$ è invariante per mosse di tipo II e III che non aumentano il numero di incroci - 4. Per certi diagrammi vale $L_K = a^w(K)$ + 4. Per certi diagrammi vale $L_D = a^w(D)$. ] -== Dimostrazione buona definizione - - - = Laboratorio Computazionale == Implementazione in Python -#show raw: set text(size: 15pt) -#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 \~1990. +- *KnotScape* -- scritto in C, degli anni \~1990 -- *KnotTheory*: ultimo aggiornamento \~2010, per Mathematica. +- *KnotTheory* -- ultimo aggiornamento \~2010, per Wolfram Mathematica #pause -Per il progetto di Lab. Comp. abbiamo scritto una *nuova implementazione* in _Python_ open source: +Per il progetto di Laboratorio Computazionale abbiamo scritto una *nuova implementazione* in *Python* open source: -- Rappresentazione di nodi attraverso *codici PD* e *SG*. +- Strutture dati per la rappresentazione di nodi con *codici P.D.* e *S.G.* -- Algoritmo per il calcolo di $L_K$ e $F_K$. +- Algoritmo per il calcolo di $L_D$ e $F_D$ #pause -- Verifica di tutti i polinomi contenuti nel *database di KnotInfo*. +- Verifica di tutti i polinomi contenuti nel *database di KnotInfo* (\~7K tra nodi e link, \~20min) + +#pause - _Trovato un errore nel nodo_ $10_125$: è presente $F[m(10_125)]$ invece di $F[10_125]$ ovvero $F[10_125](1 slash a, z)$. #h(1fr)