OAI/RepresentationTheory/YoungSymmetry/Polytabloid.lean
85 declarations, 0 contain sorry, 0 declared as axioms
Elementary polytabloid input for the symmetric-group step of FAC.7. No branching or classification theorem is postulated here.
- abbrev
OAI.CubeShuffle.Specht.Cellline 10Also declared: ComparatorChallenges/OccupiedOverlap.lean:9 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:9 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.card_cellline 12Also declared: ComparatorChallenges/WeightedSweepMoments.lean:217 (same declaration text).
- def
OAI.CubeShuffle.Specht.rowline 15Also declared: ComparatorChallenges/OccupiedOverlap.lean:10 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:10 (same declaration text).
- def
OAI.CubeShuffle.Specht.colline 16Also declared: ComparatorChallenges/OccupiedOverlap.lean:11 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:11 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.row_lt_colLenline 18Also declared: ComparatorChallenges/OccupiedOverlap.lean:13 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:13 (same declaration text).
- def
OAI.CubeShuffle.Specht.columnEquivline 21 - def
OAI.CubeShuffle.Specht.columnValuesline 28 - lemma
OAI.CubeShuffle.Specht.mem_columnValuesline 31 - lemma
OAI.CubeShuffle.Specht.card_columnValuesline 36 - lemma
OAI.CubeShuffle.Specht.strictMono_fin_nat_geline 46 - def
OAI.CubeShuffle.Specht.rankCellline 61Source documentation
Rank inside a column, sorted by an arbitrary column-injective row assignment.
noncomputable def rankCell {μ : YoungDiagram} (f : Cell μ → ℕ) (hf : ∀ x y, col x = col y → f x = f y → x = y) (x : Cell μ) : Cell μ := …Mentions: OAI.CubeShuffle.Specht.Cell, OAI.CubeShuffle.Specht.col
- lemma
OAI.CubeShuffle.Specht.rankCell_colline 67 - lemma
OAI.CubeShuffle.Specht.rankCell_orderEmbline 71 - lemma
OAI.CubeShuffle.Specht.rankCell_injectiveline 80 - def
OAI.CubeShuffle.Specht.rankPermline 94 - lemma
OAI.CubeShuffle.Specht.rankCell_row_leline 98 - theorem
OAI.CubeShuffle.Specht.column_transporterline 106Source documentation
The equal-shape column-transporter lemma. This is the combinatorial rank-one input to the Specht submodule theorem, proved using sorting, not Young's rule.
theorem column_transporter (μ : YoungDiagram) (p : Equiv.Perm (Cell μ)) (hp : ∀ x y, col x = col y → row (p x) = row (p y) → x = y) : ∃ c : Equiv.Perm (Cell μ), (∀ x, col (c x) = col x) ∧ ∀ x, row (c x) = row (p x) := by …Mentions: OAI.CubeShuffle.Specht.Cell, OAI.CubeShuffle.Specht.col, OAI.CubeShuffle.Specht.row
- def
OAI.CubeShuffle.Specht.rowIndexline 122Also declared: ComparatorChallenges/OccupiedOverlap.lean:15 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:15 (same declaration text).
- abbrev
OAI.CubeShuffle.Specht.Tabloidline 125Also declared: ComparatorChallenges/OccupiedOverlap.lean:18 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:18 (same declaration text).
- instance
OAI.CubeShuffle.Specht.(instance at line 128)line 128 - def
OAI.CubeShuffle.Specht.baseTabloidline 130Also declared: ComparatorChallenges/OccupiedOverlap.lean:23 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:23 (same declaration text).
- def
OAI.CubeShuffle.Specht.tabloidActline 132Also declared: ComparatorChallenges/OccupiedOverlap.lean:25 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:25 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidAct_applyline 147Also declared: ComparatorChallenges/OccupiedOverlap.lean:40 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:40 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidAct_oneline 150Also declared: ComparatorChallenges/OccupiedOverlap.lean:43 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:43 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidAct_mulline 154Also declared: ComparatorChallenges/OccupiedOverlap.lean:47 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:47 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidAct_invline 159Also declared: ComparatorChallenges/OccupiedOverlap.lean:52 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:52 (same declaration text).
- def
OAI.CubeShuffle.Specht.tabloidRepline 164Also declared: ComparatorChallenges/OccupiedOverlap.lean:57 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:57 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidRep_applyline 176Also declared: ComparatorChallenges/OccupiedOverlap.lean:69 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:69 (same declaration text).
- def
OAI.CubeShuffle.Specht.deltaline 179Also declared: ComparatorChallenges/OccupiedOverlap.lean:72 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:72 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.tabloidRep_deltaline 182 - def
OAI.CubeShuffle.Specht.colGroupline 190Also declared: ComparatorChallenges/OccupiedOverlap.lean:75 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:75 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.mem_colGroupline 196 - lemma
OAI.CubeShuffle.Specht.colGroup_row_stabilizerline 199 - lemma
OAI.CubeShuffle.Specht.tabloid_column_transporterline 208 - def
OAI.CubeShuffle.Specht.permSignline 229Also declared: ComparatorChallenges/OccupiedOverlap.lean:81 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:81 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.permSign_oneline 232 - lemma
OAI.CubeShuffle.Specht.permSign_mulline 234 - lemma
OAI.CubeShuffle.Specht.permSign_invline 236 - lemma
OAI.CubeShuffle.Specht.permSign_sqline 238 - lemma
OAI.CubeShuffle.Specht.permSign_swapline 243 - lemma
OAI.CubeShuffle.Specht.conj_permSignline 245 - def
OAI.CubeShuffle.Specht.alternatorline 251Also declared: ComparatorChallenges/OccupiedOverlap.lean:86 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:86 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.alternator_mulline 256 - lemma
OAI.CubeShuffle.Specht.mul_alternatorline 271 - lemma
OAI.CubeShuffle.Specht.alternator_apply_actionline 286 - lemma
OAI.CubeShuffle.Specht.action_alternator_applyline 291 - lemma
OAI.CubeShuffle.Specht.alternator_eq_zero_of_odd_stabilizerline 297Source documentation
An odd column stabilizer forces cancellation in the genuine alternating sum.
lemma alternator_eq_zero_of_odd_stabilizer (C : Subgroup (Equiv.Perm α)) (ρ : Representation ℂ (Equiv.Perm α) V) (c : C) (v : V) (hc : permSign (c : Equiv.Perm α) = -1) (hv : ρ c v = v) : alternator C ρ v = 0 := by …Mentions: OAI.CubeShuffle.Specht.permSign, OAI.CubeShuffle.Specht.alternator
- lemma
OAI.CubeShuffle.Specht.swap_mem_colGroupline 314 - lemma
OAI.CubeShuffle.Specht.swap_fixes_tabloidline 324 - def
OAI.CubeShuffle.Specht.polytabloidline 336Also declared: ComparatorChallenges/OccupiedOverlap.lean:93 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:93 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.alternator_delta_rank_oneline 339 - lemma
OAI.CubeShuffle.Specht.polytabloid_formulaline 355 - lemma
OAI.CubeShuffle.Specht.polytabloid_baseline 361 - lemma
OAI.CubeShuffle.Specht.polytabloid_ne_zeroline 374 - lemma
OAI.CubeShuffle.Specht.delta_decompositionline 379 - theorem
OAI.CubeShuffle.Specht.alternator_rank_oneline 387Source documentation
The actual column antisymmetrizer has one-dimensional range.
theorem alternator_rank_one (μ : YoungDiagram) (v : Tabloid μ → ℂ) : ∃ z : ℂ, alternator (colGroup μ) (tabloidRep μ) v = z • polytabloid μ := by …Mentions: OAI.CubeShuffle.Specht.Tabloid, OAI.CubeShuffle.Specht.alternator, OAI.CubeShuffle.Specht.colGroup, OAI.CubeShuffle.Specht.tabloidRep, OAI.CubeShuffle.Specht.polytabloid
- lemma
OAI.CubeShuffle.Specht.alternator_rank_one_exactline 395 - def
OAI.CubeShuffle.Specht.pairingline 406 - lemma
OAI.CubeShuffle.Specht.pairing_deltaline 409 - lemma
OAI.CubeShuffle.Specht.pairing_sum_leftline 414 - lemma
OAI.CubeShuffle.Specht.pairing_smul_leftline 420 - lemma
OAI.CubeShuffle.Specht.pairing_zero_leftline 427 - lemma
OAI.CubeShuffle.Specht.pairing_add_leftline 430 - lemma
OAI.CubeShuffle.Specht.pairing_self_eq_zeroline 434 - lemma
OAI.CubeShuffle.Specht.pairing_actionline 442 - lemma
OAI.CubeShuffle.Specht.alternator_base_pairingline 453 - theorem
OAI.CubeShuffle.Specht.alternator_pairingline 464Source documentation
The column antisymmetrizer is the rank-one form of the polytabloid.
theorem alternator_pairing (μ : YoungDiagram) (v : Tabloid μ → ℂ) : alternator (colGroup μ) (tabloidRep μ) v = pairing (polytabloid μ) v • polytabloid μ := by …Mentions: OAI.CubeShuffle.Specht.Tabloid, OAI.CubeShuffle.Specht.alternator, OAI.CubeShuffle.Specht.colGroup, OAI.CubeShuffle.Specht.tabloidRep, OAI.CubeShuffle.Specht.pairing, OAI.CubeShuffle.Specht.polytabloid
- def
OAI.CubeShuffle.Specht.spaceline 472Also declared: ComparatorChallenges/OccupiedOverlap.lean:96 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:96 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.orbit_mem_spaceline 475Also declared: ComparatorChallenges/OccupiedOverlap.lean:99 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:99 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.polytabloid_mem_spaceline 478 - lemma
OAI.CubeShuffle.Specht.action_mem_spaceline 481Also declared: ComparatorChallenges/OccupiedOverlap.lean:102 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:102 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.alternator_mem_invariantline 493 - theorem
OAI.CubeShuffle.Specht.submodule_theoremline 501Source documentation
The Specht submodule theorem, for the actual complex tabloid module.
theorem submodule_theorem (μ : YoungDiagram) (W : Submodule ℂ (Tabloid μ → ℂ)) (hW : ∀ p v, v ∈ W → tabloidRep μ p v ∈ W) : space μ ≤ W ∨ ∀ v ∈ W, ∀ w ∈ space μ, pairing w v = 0 := by …Mentions: OAI.CubeShuffle.Specht.Tabloid, OAI.CubeShuffle.Specht.tabloidRep, OAI.CubeShuffle.Specht.space, OAI.CubeShuffle.Specht.pairing
- theorem
OAI.CubeShuffle.Specht.space_simpleline 533Source documentation
No proper nonzero invariant complex subspace exists in a Specht space.
theorem space_simple (μ : YoungDiagram) (W : Submodule ℂ (Tabloid μ → ℂ)) (hW : ∀ p v, v ∈ W → tabloidRep μ p v ∈ W) (hWS : W ≤ space μ) : W = ⊥ ∨ W = space μ := by …Mentions: OAI.CubeShuffle.Specht.Tabloid, OAI.CubeShuffle.Specht.tabloidRep, OAI.CubeShuffle.Specht.space
- def
OAI.CubeShuffle.Specht.subrepresentationline 543Also declared: ComparatorChallenges/OccupiedOverlap.lean:114 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:114 (same declaration text).
- def
OAI.CubeShuffle.Specht.representationline 546Also declared: ComparatorChallenges/OccupiedOverlap.lean:117 (same declaration text), ComparatorChallenges/WeightedSweepMoments.lean:117 (same declaration text).
- lemma
OAI.CubeShuffle.Specht.space_ne_botline 554 - theorem
OAI.CubeShuffle.Specht.representation_irreducibleline 561Source documentation
The constructed Specht representation is irreducible over the complex numbers.
theorem representation_irreducible (μ : YoungDiagram) : Representation.IsIrreducible (representation μ) := by …Mentions: OAI.CubeShuffle.Specht.representation
- def
OAI.CubeShuffle.Specht.symmetrizerline 603 - lemma
OAI.CubeShuffle.Specht.symmetrizer_mulline 607 - lemma
OAI.CubeShuffle.Specht.symmetrizer_eq_zero_of_negline 613 - def
OAI.CubeShuffle.Specht.fiberGroupline 625 - lemma
OAI.CubeShuffle.Specht.swap_mem_fiberGroupline 632 - lemma
OAI.CubeShuffle.Specht.swap_polytabloidline 643 - theorem
OAI.CubeShuffle.Specht.tall_column_average_zeroline 652Source documentation
Pigeonhole replaces the cited Pieri support restriction: a column having more cells than fibers is killed by the uniform fiber-preserving subgroup.
theorem tall_column_average_zero (μ : YoungDiagram) {β : Type*} [Fintype β] (f : Cell μ → β) (j : ℕ) (hj : Fintype.card β < μ.colLen j) (v : Tabloid μ → ℂ) (hv : v ∈ space μ) : symmetrizer (fiberGroup f) (tabloidRep μ) v = 0 := by …Mentions: OAI.CubeShuffle.Specht.Cell, OAI.CubeShuffle.Specht.Tabloid, OAI.CubeShuffle.Specht.space, OAI.CubeShuffle.Specht.symmetrizer, OAI.CubeShuffle.Specht.fiberGroup, OAI.CubeShuffle.Specht.tabloidRep