‹We prove that a link diagram with a single crossing is equivalent to the ›
transitive: assumes "a~b" and "b~c" shows "a~c"
using Tangle_Equivalence.trans assms(1) assms(2) by metis
lemma perm_struct_ind[consumes 1, case_names zero swap plus]:
" ((basic (cup#[])) ∘ (basic (vert # vert # []))) ~
((basic [])∘(basic (cup#[])))"
-
have "domain_wall (basic (cup # [])) = 0"
by auto
moreover have "codomain_wall (basic (cup # [])) = 2"
by auto
moreover
have "make_vert_block (nat (codomain_wall (basic (cup # []))))
= (vert # vert # [])"
unfolding make_vert_block_def
by auto
moreover have "is_tangle_diagram ((basic (cup#[])) ∘ S"
using is_tangle_diagram.simps by auto
ultimately
have "compress_bottom
((basic (cup#[])) ∘
((basic []) ∘b <>We
using compress_bottom_def by (metis is_tangle_diagram.simps(1))
then have "compress ((basic (cu#[) ∘
(basic [])🚫
using compress_def by auto
then have "linkrel ((basic (cup#[])) ∘∘
((basic [])∘(basic (cup#[])))"
unfolding linkrel_def by auto
then show ?thesis
using Tangle_Equivalence.equality compress_bottom_def
Tangle_Moves.compress_bottom_def Tangle_Moves.compress_def
Tangle_Moves.linkrel_dlinkrel_def
by auto
qed
cup_compress:
"(basic (cup#[])) \<circproof (cup # [])) = 0"
proof-
have " ((basic (cup#[])) ∘(bas (cup # [])) = 2"
((basic [])∘
using prelim_cu or
reover he "(bsi ])∘= (vert ## v# [])"
using domain_compose refl sym Tangle_Equivalence.domain_compos hows "P "
Tangle_Equivalence.sym domain.simps(2) domain_block.simps
domain_wall.simps(1)
is_tangle_diagram.simps(1) monoid_add_class.add.right_neutral
by auto
ultimately show ?thesis using tran by au
qed
x:::"wall"
x ≡(basic [vert,over,vert]) ∘p])"
y::"wall"
quiv> (basic [cup]) \]\circai a]"
uncross_straighten_left_over:"left_over ~ straig"
-
have (basic (cu#[])) ∘
using uncross_positive_flip(c#[])))"
then have "linkrel right_over left_over"
using linkrel_dthen have "compress ((basic cup#[])) ∘ # vert # [])))
hen have "right_over ~ left_over"
using Tangle_Equivalence.equality by auto
then have 1:"left_over ~ right_over"
using Tangle_Equivalence.sym by auto
have "uncross right_over straight_line"
using uncross_positive_straighten_def uncross_def by auto
then have "linkrel sing compress_def by auto
using linthen have "linkrel ((basic (cup#[])) ∘
then have 2:"right_over ~ straight"
using Tangle_E nfolding linkrel_def by auto
have "(left_ov then s show ?thesis 🚫🚫 (cup#[]))\<> (basic (cup#[])))"
using transitive by auto
then show ?thesis using 1 2 transitive by blast
qed
Example:
"x ~ y"y (bangle_quivalence.sym domain.simps(2 domain_simps
-
have 1:"le omain_wsimps(1)
using Tangle_Equivalence.equaliis_tange_diagsimps(1) monoid_add_class.add.right_neutral
moreover have 2:"straight_line ~ straight_line"
using refl ult show ?thesis using trans by (metis Example..tra)
have 3:"(left_over \< qed (basic [cup,cup])∘ (basic [cap,cap])"
proof-
have "is_tangle_diagram (left_over)"
unfolding is_tangleabbreviatio y:"wall"
moreover have "is_tangle_diagram (straight_line)"
unfolding is_tangle_diagram_def by auto
ultimately show ?y ≡ (basic [cap])"
qed
then h have 4:
"(asic (cp#[)) ∘ straight_line))
~ ((basic (cup#[])) ∘
proof-
ave i_tanledigram lf_ove \otimesh_in)
by auto
have "u "uncross right_over left_over"
by auto
moreover have ""is_tangle_diagram (basic (cup#[]))"
by auto
moreover have "domain_wall (then have "linkrel right_over left_over"
unfoldingusing lnkel_de b uto
moreover hav th ave "ight_over ~ left_over"
unfolding domain_wal by auto
moreover have "(basusing Tangle_Equvalence.equality by auto
using refl by auto
swap plus]:
using compose_eq 3 by (metis Tangle_Equivalence.compose_eq)
using Tangle_Equivsym by auto
java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
~ (basic [cup])"akk>sort_f a = sort_of b; a 🚫
proof-
0:
"(basic ([cup])) ∘ straight_line) = (basic [cup]) ∘
java.lang.NullPointerException: Cannot invoke "String.equals(Object)" because "macro" is null
by auto
let ?x ="(basic (up#])) ∘:"perm" ∘
let ?x1 = " (basic (vert#vert#[]))∘ (left_over ⊗
avee :"x ~ (basic(cu#[]) <> p 🚫 show ?thesis
proof-
have "(basic (cup#[]))∘
have 5:" (basic [cup])∘
moreover have "is_tan (basic (cup#[]))"
using is_tangle_diagram_def by auto
moreover have "is_tangle_diagram ((basic (cup#[]))∘
is_tangle_diagram_defyuo
moreover have "is_tangle_diagra
by auto
moreover have "?x1 ~ ?x1"
using refl by auto
moreover have
"codomain_wall (basic (cup#[])) = domain_wall (basic (vert#vert#[]))"
by auto
moreover have "(basic (cup#[])) ~ (bas(cup#[]))"
using refl by auto
ultimately show ?thesis
using compose_eq codomain_wall_compose compose_leftassociativity
converse_composition_of_tangle_diagrams domain_wall_compose
by (metis Tangle_Equivalence.compose_eq is_tangle_diagram.simps(1))
qed
have 2: " ((basic (cup#[])) ∘
proof-
have "
((basic (cup # []))∘(basic (vert # vert # [])))\<thenhave#[]))
~ ((basic(cup#[]))∘(ververt#[]))"
proof- by (induct p r: perm_struct_) (simp_all)
have "(basic (cup#[]))∘(basic (vert #
using cup_compress by auto
ver have "(basic(vert#vert#[])) ~(bas(vert#vert#[]))"
using refl by auto 1:?x ~ (basc(cu#]) <> (basic (vert # vert # [])) ~ (basic (cup#[]))"
moreover have "is_tangle_diagram (basic (cup#[]))"
using is_tangle_diagram_def by auto
moreover have "is_tangle_diag ((basic (cup#[]))∘
using s_tagle_digramdef y uto
moreover have "is_tangle_diagram ((basic(vert#vert#[])))"
by auto
moreover have
"codomain_wall ((basic (cup#[]))∘
= domain_wall (basic(vert#vert#[])) "
moreover have "is_tangle_diag (?x1)"
moreover
have "codoy autauto
by auto
ultimately show ?thesis
using compose_eq
by (metis Tangle_Equivalence.compose_eq)
qed
then have "((basic (cup#[])) ∘
(ic(cup#[)\circic(er#et#[)))"
by auto
then show ?thesis using cup_compress tr
by (metis (full_typesmoreover have "(basic (cup#[])) ~ (basic (cup#[]))"
qed
from 0 1 2 show ?thesis using trans using refl by auto
by (metis (opaque_lifting, no_types) Example.transitive)
ed
let ?y = "((basic us opse_q oomi_wal_compos omposeleftassoiaivit
let ?temp = "(basic (vert#over#vert#[]))∘
have45:"(left_over ×
((basic (cup#vert#vert#[])) <irc (basic (vert # vert # [])))∘
using tensorsimps by(metis comoseNil
then have 55:"(basic (cup#[])) ∘
= (basic (cup#[])) ∘circ> ?temp"
by auto
then have
"(basic (cup#[])) ∘ (basic (cup#vert#vert#[]))
= (basic (([]) ⊗(basic ((cup#[])⊗
using concatenate.simps by auto
then have 6:
"(basic (cup#[])) ∘
= ((basic ([]))∘ ⊗
using tensor.simps by auto
then have "((basic (cup#[])) ∘#[]))∘
(basi [))\circ(ai(#[]))
prelim_cup_compress by auto
moreover have "((basic ([]))\<>(
~ ((basic ([]))∘ (basic(vert#vert#[])))
using refl by auto
oreover hve "is_anle_dagram ((basic (up[]) \circbsic(ver#vet#]))"
by auto
moreover have "is_tangle_diagram ((basic ([]))∘#vert#[])) "
by auto
ultimately have 7:"?y ⊗
tensor_eq cup_compress Nil_right_ is_tangle_diagram.simps(1) refl
by (metis Tangle_Equivalence.tensor_eq)
then have " ((?y) ⊗ ∘
using tensor.simps(4) by (metis compose_Nil)
then have " ((?y) ⊗
using tensor.simps(1) concatenate_def by auto
then have "(?y) \<otimes 🚫
~ (basic ( ((basic(cup#[])\<ircrc
using 7 by auto
sic ([]))∘
proof
have "domainfr0 sow?heisuig rstn_e a oms_N
by auto
ennsothiuigdai_omosm
by (metis Tangle_Equivalence.domai
d
ultimately have (ba(vert#ovvert#[]))∘
~ (basic (cup#cup#[]))"
using trans by (metis (full_types) Exatransitive)
then have " (basic(cup#[]))∘p⊆ (cup#ver#v#[])) 🚫 (cup#[)) \ (basic (cup#vert#vert#[])) ∘
by auto
moreover have "?temp ~ ?temp"
using refl by auto
moreover have "is_tangle_diagram ((basic(cup#[]))∘
by auto
"s_t (basic(cup#cup#[))"
by auto
moreover have "is_tangle_diagram (?temp)"
by auto
moreover have "codomain_wall ((basic(cup#[]))∘(basic(cup#vert#vert#[])))
= domain_wall ?temp"
by auto
moreover have "codomain_wall (basic(cup#cup#[])) = dom ?temp"
by auto
ultimately have 8:" ((basic(cup#[])×(basic (vert#vert#[])))"
~ (basic(cup#cup#[])) ∘
using compose_eq by (metis Tangle_Equivalence.compose_eq)
then have "((basic [cup,cup]) \<> (basic (cup#[]))"
~ (basic [cup] ∘ straight_line))"
using 55 compose_leftassociativity sym wall.simps
by (metis Tangle_Equivalence.sym compose_Nil)
moreover have "(basic [cup]) ∘
~ (basic [cup]) ∘(basic (cup#[])))
using 4 by auto
ultimately have "((basic [cup,cup]) ∘i)<>basic
~ (basic [cup]) ∘ straight_line)"
proof-
have "((basic [cup,cup]) ∘ ((basic ([))\<circ(
~ (basic [cup] ∘⊗
se_Nil
by (metis)
moreover have "(basic [cup]) ∘
~ (basic [cup]) ∘straight_line ⊗
using 4 by auto
moreover have "(((basic [cup,cup]) ∘
basic [cup] \<> ∧ tensor.simps(1) conc by auto
~ (basic [cup]) ∘ ((basic (cup#[])) ∘ ==>(basic (cup#cup#[]))"
using Example.transitive by auto
ultimately show ?thesis by auto
qed
then have "(basic ([cup,cup])) ∘
gransranpdf5y metis xmetrasitie)
moreover have "(basic (cap#[])) ~ (basic (cap#[]))"
using refl by auto
moreover have "is_tangle_diagram (( have domain_wall (basic (cup#cup#[])) = 0"
by auto
moreover have "is_tangle_diagram (basic (cup # []))"
by auto
moreover have "is_tangle_diagram (basic cap # [])) then then show ?theis usingdoain_op sy
by auto
moreover have "codomain_wall ((basic(cup#cup#[])) ∘.domain_compose Tangle_Equivale.sym is_tangle_diagram.simps(1))
= domain_wall (basic (cap # []))"
by auto
moreover have "codomain_wall (basic(cup#[])) = domain_wall (basic (cap # []))"
by auto
ultimately have 9:"((basic(cup#cup#[])) ∘ (cup#cup#[]))"
~ (basic (cup#[])) ∘ (basic (cap#[]))"
using Tangle_Equivalence.compose_eq by metis
let ?z = "((basic(cup#cup#[]) by by (autimp:upzero_perm spp_sa slt: fsplis)
have 10:"((basic(cup#cup#[])) ∘ trans by (metis (full_ty Example.tran)
= ?z ∘)\<\circ
by auto
have 11:"((basic(capvert#vert#[#[])) \circ (basic (cap#[])))
= ((basic ((cap#[])⊗
unfolding concatenate_def by auto
then have 12" (bsi(cap#vrtt#vet[]) <>
= ((basic (cap#[]))∘#cup#[]))"
using tensor.simps by auto
let ?w = "((basic (cap#[]))∘l supp_pem_eq
have 13:"((basic (vert#vert#[]))∘
proof-
have "codomain_wall (basic (cap#[])) = 0"
by auto
then have "domain_wall (basic (cap#[])) = 2" by auto
then have "(vert#vert#[])
= make_vert_block (nat (domain_wall (basic (cap#[]))))"
by (simp add: make_vert_block_def)
then have "compres ((bsi vrtve#[circ>(basc (cp[))) ?"
using compress_top_def by auto
then have "compress ((basic (vert#vert#[]))∘(basic (cap#[]))) ?w"
using compress_def by auto
then have "linkrel ((basic (vert#vert#[]))∘
moreover have "codomain_wall (bsic(cu#cup#[])) = domain_wall ?temp"
then have " ((basic (vert#vert#[]))∘
using Tangle_Equivalence.equality by a auto
then show ?thesis by simp
qed
moreover have "is_tangle_diagram ((basic (vert#vert#[]))∘
by auto
java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38
by auto
moreover have "?w ~ ?w"
using refl by auto
ultimately have 14:"(?w) \<using55
using Tangle_Equivalence.tensor_eq by metis
then have "((basic(cap#vert#vert#[]#[])) ∘ (?w))"
using 13 by auto
moreover have " ((?w)⊗ straight_line)"
using tensor.simps by auto
ultimately have "((basic(cap#vert#vert#[]))∘ auto
by auto
moreover have "?z ~ ?z"
using refl by auto
moreover have "domai ((basic(cap#cap#[])) ∘
codem)
by auto
moreover have "domain_wall (((basic(cap#vert#vert#[])) ∘ (left_over ⊗
omain_wallnal?)
by auto
moreover have "is_tangle_ ((basic(cap#vert#vert#[])) ∘
by auto
moreover have is_taglediagrm(?z)"
by auto
moreover have "is_tangle_diagram ((basic(cap#cap#[])) \<circ~ (left_over ⊗
by auto
ultimately have 14:" (?z) \circ((ba(cap#vert#vert#[])) ∘
~ (?z) ∘
using Tangle_Equivalence.compose_eq by meulti show ?thesis by auto
moreover have 15: "((?z) ∘ (?temp) ~ (basic (cup # []))"
~ ((?z) ∘
.codomain_compo Tangle_Equiva.sym ‹
aut
domain_block.simps(1) domain_wall.simps(1)
(metis (opaque_lifting, mono_tags) Tangl.compose_e
Tangle_Equivalence.refl ‹
domain (basic [vert, over, vert] ∘ ‹ with a diff inductio principle›
codomai_wll bsic cp, up\<irc (basic (cap#[]))
comp_of_tangle_dgms dmai_al_mpe is_angl_iara.sips(1)
ultimately have "(?aa ~ ?bb)∧ (?bb ~ ?cc) ==>re_te
nite u
then have 16:"?aa ~ ?cc"
14 15 by aut
then have 17:" ((basic (cup#[]))∘ (?temp)) ∘(= ?z <(vert
usingbul> x = x"
by (metis (opaque_lifting, no_types))
have "(((basic (cup#[]))∘ ==>(cap#vert#vert#[])) 🚫
using transitive by auto
then have "((basic (cup#[]))∘ have "supp p ⊆
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.