OAI/GroupTheory/RightAngledArtin/TraceWords.lean
188 declarations, 0 contain sorry, 0 declared as axioms
Signed trace normal forms and slowly varying barycentric directions.
- abbrev
OAI.EilenbergGanea.TraceWords.Letterline 16 - abbrev
OAI.EilenbergGanea.TraceWords.Wordline 17 - def
OAI.EilenbergGanea.TraceWords.invLetterline 19 - theorem
OAI.EilenbergGanea.TraceWords.invLetter_invLetterline 20 - def
OAI.EilenbergGanea.TraceWords.Independentline 23 - theorem
OAI.EilenbergGanea.TraceWords.independent_inv_leftline 24 - theorem
OAI.EilenbergGanea.TraceWords.independent_inv_rightline 26 - theorem
OAI.EilenbergGanea.TraceWords.independent_selfline 28 - theorem
OAI.EilenbergGanea.TraceWords.Independent.symmline 29 - inductive
OAI.EilenbergGanea.TraceWords.Swapline 33Source documentation
A single exchange of independent neighboring occurrences.
inductive Swap : Word V → Word V → Prop | head {x y : Letter V} {w : Word V} (h : Independent L x y) : Swap (x :: y :: w) (y :: x :: w) | cons (x : Letter V) {w w' : Word V} (h : Swap w w') : Swap (x :: w) (x :: w') variable {L}Mentions: OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Independent
- theorem
OAI.EilenbergGanea.TraceWords.Swap.symmline 39 - theorem
OAI.EilenbergGanea.TraceWords.Swap.lengthline 44 - abbrev
OAI.EilenbergGanea.TraceWords.Equivalentline 48 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.reflline 51 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.symmline 52 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.transline 54 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.consline 57 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.lengthline 65 - inductive
OAI.EilenbergGanea.TraceWords.Extractline 75Source documentation
Remove an occurrence accessible from the left through independent letters. This retains the actual other occurrences, not merely their group value.
inductive Extract (x : Letter V) : Word V → Word V → Prop | head (w : Word V) : Extract x (x :: w) w | cons {y : Letter V} {w w' : Word V} (h : Independent L x y) (e : Extract x w w') : Extract x (y :: w) (y :: w') variable {L}Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Independent
- theorem
OAI.EilenbergGanea.TraceWords.Extract.lengthline 81 - theorem
OAI.EilenbergGanea.TraceWords.Extract.equivalentline 85 - theorem
OAI.EilenbergGanea.TraceWords.Extract.uniqueline 92 - theorem
OAI.EilenbergGanea.TraceWords.Extract.diamondline 105Source documentation
Independent accessible occurrences may be removed in either order.
theorem Extract.diamond {x y : Letter V} {w v u : Word V} (hxy : Independent L x y) (hx : Extract L x w v) (hy : Extract L y w u) : ∃ t, Extract L y v t ∧ Extract L x u t := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Independent, OAI.EilenbergGanea.TraceWords.Extract
- theorem
OAI.EilenbergGanea.TraceWords.Extract.swapline 121Source documentation
An adjacent commutation does not destroy accessible occurrences.
theorem Extract.swap {x : Letter V} {w w' v : Word V} (hs : Swap L w w') (he : Extract L x w v) : ∃ v', Extract L x w' v' ∧ Equivalent L v v' := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Swap, OAI.EilenbergGanea.TraceWords.Extract, OAI.EilenbergGanea.TraceWords.Equivalent
- inductive
OAI.EilenbergGanea.TraceWords.Stepline 142Source documentation
Delete an inverse pair after commuting its endpoints together.
inductive Step : Word V → Word V → Prop | head {x : Letter V} {w w' : Word V} (h : Extract L (invLetter x) w w') : Step (x :: w) w' | cons (x : Letter V) {w w' : Word V} (h : Step w w') : Step (x :: w) (x :: w') variable {L}Mentions: OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Extract, OAI.EilenbergGanea.TraceWords.invLetter
- theorem
OAI.EilenbergGanea.TraceWords.Step.lengthline 148 - theorem
OAI.EilenbergGanea.TraceWords.Step.swapline 154Source documentation
Lift a cancellation across one independent exchange, tracking its output.
theorem Step.swap {w w' v : Word V} (hs : Swap L w w') (he : Step L w v) : ∃ v', Step L w' v' ∧ Equivalent L v v' := by …Mentions: OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Swap, OAI.EilenbergGanea.TraceWords.Step, OAI.EilenbergGanea.TraceWords.Equivalent
- theorem
OAI.EilenbergGanea.TraceWords.Extract.stepline 178Source documentation
The only overlapping cancellation shares the accessible occurrence. Its two outcomes differ only by exchanges; disjoint deletions commute.
theorem Extract.step {x : Letter V} {w v u : Word V} (hx : Extract L x w v) (hs : Step L w u) : Equivalent L v (invLetter x :: u) ∨ ∃ t, Step L v t ∧ Extract L x u t := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Extract, OAI.EilenbergGanea.TraceWords.Step, OAI.EilenbergGanea.TraceWords.Equivalent, OAI.EilenbergGanea.TraceWords.invLetter
- theorem
OAI.EilenbergGanea.TraceWords.Step.diamondline 198Source documentation
Local confluence modulo independent exchanges.
theorem Step.diamond {w v u : Word V} (hv : Step L w v) (hu : Step L w u) : Equivalent L v u ∨ ∃ t t', Step L v t ∧ Step L u t' ∧ Equivalent L t t' := by …Mentions: OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Step, OAI.EilenbergGanea.TraceWords.Equivalent
- instance
OAI.EilenbergGanea.TraceWords.(instance at line 219)line 219 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.stepline 222 - def
OAI.EilenbergGanea.TraceWords.traceSetoidline 235 - abbrev
OAI.EilenbergGanea.TraceWords.Traceline 239 - def
OAI.EilenbergGanea.TraceWords.ofWordline 240 - def
OAI.EilenbergGanea.TraceWords.traceLengthline 242 - theorem
OAI.EilenbergGanea.TraceWords.traceLength_ofWordline 243 - theorem
OAI.EilenbergGanea.TraceWords.ofWord_eqline 245 - def
OAI.EilenbergGanea.TraceWords.ReductionStepline 249Source documentation
Reduction of traces, not a choice of ordered representative.
def ReductionStep (t t' : Trace L) : Prop := …
Mentions: OAI.EilenbergGanea.TraceWords.Trace
- theorem
OAI.EilenbergGanea.TraceWords.Step.traceline 253 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.representativeline 256 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.lengthline 263 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.diamondline 268 - abbrev
OAI.EilenbergGanea.TraceWords.Reductionline 282 - def
OAI.EilenbergGanea.TraceWords.Reducedline 283 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.length_leline 286 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.confluenceline 292 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.reduction_eqline 301 - theorem
OAI.EilenbergGanea.TraceWords.exists_reducedline 307 - theorem
OAI.EilenbergGanea.TraceWords.reduced_uniqueline 318 - def
OAI.EilenbergGanea.TraceWords.normalTraceline 324 - theorem
OAI.EilenbergGanea.TraceWords.normalTrace_reductionline 326 - theorem
OAI.EilenbergGanea.TraceWords.normalTrace_reducedline 329 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.normalTrace_eqline 333 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.normalTrace_eqline 336 - theorem
OAI.EilenbergGanea.TraceWords.normalTrace_idemline 341 - theorem
OAI.EilenbergGanea.TraceWords.Swap.append_rightline 345 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.append_rightline 351 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.append_leftline 359 - theorem
OAI.EilenbergGanea.TraceWords.Extract.append_rightline 365 - theorem
OAI.EilenbergGanea.TraceWords.Step.append_rightline 371 - theorem
OAI.EilenbergGanea.TraceWords.Step.append_leftline 377 - def
OAI.EilenbergGanea.TraceWords.appendTraceline 384 - theorem
OAI.EilenbergGanea.TraceWords.appendTrace_ofWordline 389 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.append_leftline 393 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.append_rightline 399 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.append_leftline 405 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.append_rightline 411 - theorem
OAI.EilenbergGanea.TraceWords.normalTrace_appendline 417 - def
OAI.EilenbergGanea.TraceWords.normalConline 425Source documentation
Equality of reduced traces is a monoid congruence on signed words.
def normalCon : Con (FreeMonoid (Letter V)) where …
Mentions: OAI.EilenbergGanea.TraceWords.Letter
- abbrev
OAI.EilenbergGanea.TraceWords.WordGroupline 438 - def
OAI.EilenbergGanea.TraceWords.groupWordline 440 - theorem
OAI.EilenbergGanea.TraceWords.groupWord_nilline 442 - theorem
OAI.EilenbergGanea.TraceWords.groupWord_appendline 443 - theorem
OAI.EilenbergGanea.TraceWords.groupWord_eqline 446 - theorem
OAI.EilenbergGanea.TraceWords.Step.groupWordline 450 - theorem
OAI.EilenbergGanea.TraceWords.Swap.groupWordline 453 - theorem
OAI.EilenbergGanea.TraceWords.isUnit_groupWord_singletonline 457 - theorem
OAI.EilenbergGanea.TraceWords.isUnit_groupWordline 464 - instance
OAI.EilenbergGanea.TraceWords.wordGroupGroupline 472 - theorem
OAI.EilenbergGanea.TraceWords.groupWord_inv_singletonline 477 - def
OAI.EilenbergGanea.TraceWords.letterValueline 486 - theorem
OAI.EilenbergGanea.TraceWords.letterValue_positiveline 487 - theorem
OAI.EilenbergGanea.TraceWords.letterValue_negativeline 488 - theorem
OAI.EilenbergGanea.TraceWords.letterValue_inverseline 489 - def
OAI.EilenbergGanea.TraceWords.wordEvalline 493 - theorem
OAI.EilenbergGanea.TraceWords.wordEval_nilline 494 - theorem
OAI.EilenbergGanea.TraceWords.wordEval_consline 495 - theorem
OAI.EilenbergGanea.TraceWords.wordEval_appendline 497 - theorem
OAI.EilenbergGanea.TraceWords.wordEval_singletonline 499 - theorem
OAI.EilenbergGanea.TraceWords.letterValue_commuteline 503 - theorem
OAI.EilenbergGanea.TraceWords.Swap.wordEvalline 513 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.wordEvalline 519 - theorem
OAI.EilenbergGanea.TraceWords.Step.wordEvalline 527 - def
OAI.EilenbergGanea.TraceWords.traceEvalline 536 - theorem
OAI.EilenbergGanea.TraceWords.traceEval_ofWordline 539 - theorem
OAI.EilenbergGanea.TraceWords.ReductionStep.traceEvalline 543 - theorem
OAI.EilenbergGanea.TraceWords.Reduction.traceEvalline 548 - theorem
OAI.EilenbergGanea.TraceWords.traceEval_normalTraceline 554 - def
OAI.EilenbergGanea.TraceWords.groupEvalline 559 - theorem
OAI.EilenbergGanea.TraceWords.groupEval_wordline 567 - def
OAI.EilenbergGanea.TraceWords.toArtinline 576Source documentation
The kernel presentation is compared with the signed trace group, not with an assumed normal-form model.
def toArtin : WordGroup L →* ArtinGroup L := …
Mentions: OAI.EilenbergGanea.TraceWords.WordGroup
- theorem
OAI.EilenbergGanea.TraceWords.groupWord_commuteline 579 - def
OAI.EilenbergGanea.TraceWords.ofArtinline 584 - theorem
OAI.EilenbergGanea.TraceWords.ofArtin_generatorline 587 - theorem
OAI.EilenbergGanea.TraceWords.toArtin_wordline 590 - theorem
OAI.EilenbergGanea.TraceWords.ofArtin_letterline 593 - theorem
OAI.EilenbergGanea.TraceWords.ofArtin_wordline 602 - theorem
OAI.EilenbergGanea.TraceWords.ofArtin_toArtinline 610 - theorem
OAI.EilenbergGanea.TraceWords.toArtin_ofArtinline 616 - def
OAI.EilenbergGanea.TraceWords.artinEquivline 626Source documentation
The actual presented Artin group equals the word group constructed by confluence of individual-occurrence cancellations.
def artinEquiv : ArtinGroup L ≃* WordGroup L where …
Mentions: OAI.EilenbergGanea.TraceWords.WordGroup
- theorem
OAI.EilenbergGanea.TraceWords.artin_word_eq_iffline 635Source documentation
Two words have the same value in the actual Artin group exactly when they have the same reduced trace.
theorem artin_word_eq_iff (w v : Word V) : wordEval (artinGenerator L) w = wordEval (artinGenerator L) v ↔ normalTrace L (ofWord L w) = normalTrace L (ofWord L v) := by …Mentions: OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.wordEval, OAI.EilenbergGanea.artinGenerator, OAI.EilenbergGanea.TraceWords.normalTrace, OAI.EilenbergGanea.TraceWords.ofWord
- theorem
OAI.EilenbergGanea.TraceWords.trace_reduced_minimalline 645 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.of_equivalentline 659 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.of_append_leftline 663 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.of_append_rightline 668 - theorem
OAI.EilenbergGanea.TraceWords.Reduced.tailline 673 - theorem
OAI.EilenbergGanea.TraceWords.Extract.append_singletonline 677 - theorem
OAI.EilenbergGanea.TraceWords.Extract.lastline 698 - theorem
OAI.EilenbergGanea.TraceWords.Step.append_reducedline 708Source documentation
A cancellation in a reduced word with one appended occurrence must cancel that new occurrence. The old inverse occurrence was maximal: it can be moved all the way to the right by independent exchanges.
theorem Step.append_reduced {x : Letter V} {w v : Word V} (hw : Reduced L (ofWord L w)) (h : Step L (w ++ [x]) v) : Equivalent L w (v ++ [invLetter x]) := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Reduced, OAI.EilenbergGanea.TraceWords.ofWord, OAI.EilenbergGanea.TraceWords.Step, OAI.EilenbergGanea.TraceWords.Equivalent, OAI.EilenbergGanea.TraceWords.invLetter
- theorem
OAI.EilenbergGanea.TraceWords.reduced_append_alternativeline 730Source documentation
On an actual reduced trace, a generator step either adds a maximal occurrence or removes a maximal inverse occurrence, with no further reduction.
theorem reduced_append_alternative {x : Letter V} {w : Word V} (hw : Reduced L (ofWord L w)) : Reduced L (ofWord L (w ++ [x])) ∨ ∃ v, Reduced L (ofWord L v) ∧ Equivalent L w (v ++ [invLetter x]) ∧ normalTrace L (ofWord L (w ++ [x])) = ofWord L v := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.Word, OAI.EilenbergGanea.TraceWords.Reduced, OAI.EilenbergGanea.TraceWords.ofWord, OAI.EilenbergGanea.TraceWords.Equivalent, OAI.EilenbergGanea.TraceWords.invLetter, OAI.EilenbergGanea.TraceWords.normalTrace
- def
OAI.EilenbergGanea.TraceWords.predecessorRootsline 754Source documentation
The previously encountered minimal ancestral directions of letters which are dependent on the next direction. Taking the minimum recursively computes the first minimal ancestor in the occurrence poset.
def predecessorRoots (s : Multiset (V × V)) (v : V) : Finset V := by …
- def
OAI.EilenbergGanea.TraceWords.nextRootline 758 - def
OAI.EilenbergGanea.TraceWords.rootInsertline 761 - def
OAI.EilenbergGanea.TraceWords.rootScanline 766Source documentation
Each pair records an occurrence's direction and its assigned minimal ancestral direction. Signs do not change the occurrence dependency relation.
def rootScan (s : Multiset (V × V)) (w : Word V) : Multiset (V × V) := …
Mentions: OAI.EilenbergGanea.TraceWords.Word
- theorem
OAI.EilenbergGanea.TraceWords.rootScan_nilline 769 - theorem
OAI.EilenbergGanea.TraceWords.rootScan_consline 770 - theorem
OAI.EilenbergGanea.TraceWords.rootScan_appendline 773 - theorem
OAI.EilenbergGanea.TraceWords.mem_predecessorRootsline 778 - theorem
OAI.EilenbergGanea.TraceWords.predecessorRoots_cons_independentline 784 - theorem
OAI.EilenbergGanea.TraceWords.nextRoot_cons_independentline 790 - theorem
OAI.EilenbergGanea.TraceWords.rootInsert_commuteline 795 - theorem
OAI.EilenbergGanea.TraceWords.Swap.rootScanline 801 - theorem
OAI.EilenbergGanea.TraceWords.Equivalent.rootScanline 807 - def
OAI.EilenbergGanea.TraceWords.RootInvariantline 818Source documentation
Every assigned root occurs as a minimal occurrence, and the root directions of the whole state form a clique. These assertions simultaneously express support in a simplex and permanence of old assignments.
def RootInvariant (L : SimpleGraph V) (s : Multiset (V × V)) : Prop := …
- theorem
OAI.EilenbergGanea.TraceWords.nextRoot_mem_or_newline 822 - theorem
OAI.EilenbergGanea.TraceWords.RootInvariant.insertline 836 - theorem
OAI.EilenbergGanea.TraceWords.RootInvariant.scanline 867 - theorem
OAI.EilenbergGanea.TraceWords.rootInvariant_wordline 873 - def
OAI.EilenbergGanea.TraceWords.rootCountsline 877 - def
OAI.EilenbergGanea.TraceWords.wordCountsline 880 - def
OAI.EilenbergGanea.TraceWords.traceCountsline 882 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_ofWordline 885 - theorem
OAI.EilenbergGanea.TraceWords.rootCounts_consline 889 - theorem
OAI.EilenbergGanea.TraceWords.rootCounts_zeroline 894 - theorem
OAI.EilenbergGanea.TraceWords.wordCounts_append_singletonline 897 - theorem
OAI.EilenbergGanea.TraceWords.rootCounts_mem_iffline 905 - theorem
OAI.EilenbergGanea.TraceWords.rootCounts_support_cliqueline 916 - theorem
OAI.EilenbergGanea.TraceWords.wordCounts_support_cliqueline 924 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_support_cliqueline 927 - theorem
OAI.EilenbergGanea.TraceWords.rootCounts_sumline 932 - theorem
OAI.EilenbergGanea.TraceWords.rootScan_cardline 940 - theorem
OAI.EilenbergGanea.TraceWords.wordCounts_sumline 946 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_sumline 950 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_append_singletonline 955 - theorem
OAI.EilenbergGanea.TraceWords.support_subset_singleton_addline 961 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_append_supportline 969 - def
OAI.EilenbergGanea.TraceWords.groupNormalTraceline 980Source documentation
The normal trace of an element, obtained from the actual Artin presentation.
def groupNormalTrace : WordGroup L → Trace L := …
Mentions: OAI.EilenbergGanea.TraceWords.WordGroup, OAI.EilenbergGanea.TraceWords.Trace
- def
OAI.EilenbergGanea.TraceWords.artinNormalTraceline 984 - theorem
OAI.EilenbergGanea.TraceWords.artinNormalTrace_wordline 986 - theorem
OAI.EilenbergGanea.TraceWords.artinNormalTrace_reducedline 991 - theorem
OAI.EilenbergGanea.TraceWords.artinNormalTrace_evalline 997 - theorem
OAI.EilenbergGanea.TraceWords.exists_reduced_wordline 1011 - theorem
OAI.EilenbergGanea.TraceWords.artinNormalTrace_right_stepline 1024Source documentation
A right generator step in the actual presented group is addition/removal of exactly one maximal occurrence in its reduced trace.
theorem artinNormalTrace_right_step (g : ArtinGroup L) (x : Letter V) : (artinNormalTrace L (g * letterValue (artinGenerator L) x) = appendTrace L (artinNormalTrace L g) (ofWord L [x])) ∨ (artinNormalTrace L g = appendTrace L (artinNormalTrace L (g * letterValue (artinGenerator L) x)) (ofWord L [invLetter x])) := by …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.artinNormalTrace, OAI.EilenbergGanea.TraceWords.letterValue, OAI.EilenbergGanea.artinGenerator, OAI.EilenbergGanea.TraceWords.appendTrace, OAI.EilenbergGanea.TraceWords.ofWord, OAI.EilenbergGanea.TraceWords.invLetter
- def
OAI.EilenbergGanea.TraceWords.traceDirectionline 1045Source documentation
Barycentric direction, with value zero at the empty trace.
def traceDirection (t : Trace L) (v : V) : ℝ := …
Mentions: OAI.EilenbergGanea.TraceWords.Trace
- def
OAI.EilenbergGanea.TraceWords.artinDirectionline 1048 - theorem
OAI.EilenbergGanea.TraceWords.traceDirection_nonnegline 1052 - theorem
OAI.EilenbergGanea.TraceWords.traceDirection_sumline 1055 - theorem
OAI.EilenbergGanea.TraceWords.traceLength_append_singletonline 1061 - theorem
OAI.EilenbergGanea.TraceWords.count_normalization_boundline 1069Source documentation
The exact finite-coordinate estimate used in the manuscript's direction map.
theorem count_normalization_bound (c : V →₀ ℕ) (r : V) {n : ℕ} (hn : 0 < n) (hs : ∑ v, c v = n) : ∑ v, |((c + Finsupp.single r 1 : V →₀ ℕ) v : ℝ) / (n + 1 : ℝ) - (c v : ℝ) / (n : ℝ)| ≤ 2 / (n + 1 : ℝ) := by … - theorem
OAI.EilenbergGanea.TraceWords.traceDirection_append_boundline 1100 - theorem
OAI.EilenbergGanea.TraceWords.traceCounts_step_common_simplexline 1109 - theorem
OAI.EilenbergGanea.TraceWords.artinDirection_right_stepline 1117Source documentation
Full trace-direction step, for the actual generators of the Artin presentation. The shorter normal trace controls both the common simplex and the uniform l1 bound.
theorem artinDirection_right_step (g : ArtinGroup L) (x : Letter V) (hg : 0 < traceLength L (artinNormalTrace L g)) (hgx : 0 < traceLength L (artinNormalTrace L (g * letterValue (artinGenerator L) x))) : let t := artinNormalTrace L g …Mentions: OAI.EilenbergGanea.TraceWords.Letter, OAI.EilenbergGanea.TraceWords.traceLength, OAI.EilenbergGanea.TraceWords.artinNormalTrace, OAI.EilenbergGanea.TraceWords.letterValue, OAI.EilenbergGanea.artinGenerator
- theorem
OAI.EilenbergGanea.TraceWords.Extract.memline 1153 - theorem
OAI.EilenbergGanea.TraceWords.same_sign_reducedline 1158 - theorem
OAI.EilenbergGanea.TraceWords.nextRoot_selfline 1178 - theorem
OAI.EilenbergGanea.TraceWords.rootScan_cliqueline 1189 - theorem
OAI.EilenbergGanea.TraceWords.wordCounts_cliqueline 1213 - theorem
OAI.EilenbergGanea.TraceWords.counts_negative_commuting_powersline 1219 - theorem
OAI.EilenbergGanea.TraceWords.height_generatorline 1253 - def
OAI.EilenbergGanea.TraceWords.wordHeightline 1256 - theorem
OAI.EilenbergGanea.TraceWords.wordHeight_nilline 1258 - theorem
OAI.EilenbergGanea.TraceWords.wordHeight_consline 1259 - theorem
OAI.EilenbergGanea.TraceWords.height_wordEvalline 1262 - theorem
OAI.EilenbergGanea.TraceWords.wordHeight_abs_leline 1276 - theorem
OAI.EilenbergGanea.TraceWords.height_abs_le_traceLengthline 1286 - theorem
OAI.EilenbergGanea.TraceWords.traceLength_pos_of_height_neline 1292 - theorem
OAI.EilenbergGanea.TraceWords.length_negative_commuting_powersline 1300 - theorem
OAI.EilenbergGanea.TraceWords.direction_negative_commuting_powersline 1306