refactor: Linting substrings
This commit is contained in:
parent
cee38b7be8
commit
ac1132c7ca
40 changed files with 133 additions and 132 deletions
|
@ -76,7 +76,7 @@ def toSMSpecies (i : Fin 6) : MSSMCharges.Charges →ₗ[ℚ] MSSMSpecies.Charge
|
|||
|
||||
lemma toSMSpecies_toSpecies_inv (i : Fin 6) (f : (Fin 6 → Fin 3 → ℚ) × (Fin 2 → ℚ)) :
|
||||
(toSMSpecies i) (toSpecies.symm f) = f.1 i := by
|
||||
change (Prod.fst ∘ toSpecies ∘ toSpecies.symm ) _ i= f.1 i
|
||||
change (Prod.fst ∘ toSpecies ∘ toSpecies.symm) _ i= f.1 i
|
||||
simp
|
||||
|
||||
/-- The `Q` charges as a map `Fin 3 → ℚ`. -/
|
||||
|
|
|
@ -56,7 +56,7 @@ def proj (T : MSSMACC.LinSols) : MSSMACC.AnomalyFreePerp :=
|
|||
|
||||
lemma proj_val (T : MSSMACC.LinSols) :
|
||||
(proj T).val = (dot B₃.val T.val - dot Y₃.val T.val) • Y₃.val +
|
||||
( (dot Y₃.val T.val - 2 * dot B₃.val T.val)) • B₃.val +
|
||||
(dot Y₃.val T.val - 2 * dot B₃.val T.val) • B₃.val +
|
||||
dot Y₃.val B₃.val • T.val := by
|
||||
rfl
|
||||
|
||||
|
@ -110,7 +110,7 @@ lemma quad_self_proj (T : MSSMACC.Sols) :
|
|||
lemma quad_proj (T : MSSMACC.Sols) :
|
||||
quadBiLin (proj T.1.1).val (proj T.1.1).val = 2 * dot Y₃.val B₃.val *
|
||||
((dot B₃.val T.val - dot Y₃.val T.val) * quadBiLin Y₃.val T.val +
|
||||
(dot Y₃.val T.val - 2 * dot B₃.val T.val) * quadBiLin B₃.val T.val ) := by
|
||||
(dot Y₃.val T.val - 2 * dot B₃.val T.val) * quadBiLin B₃.val T.val) := by
|
||||
nth_rewrite 1 [proj_val]
|
||||
repeat rw [quadBiLin.map_add₁]
|
||||
repeat rw [quadBiLin.map_smul₁]
|
||||
|
@ -159,7 +159,7 @@ lemma cube_proj_proj_self (T : MSSMACC.Sols) :
|
|||
cubeTriLin (proj T.1.1).val (proj T.1.1).val T.val =
|
||||
2 * dot Y₃.val B₃.val *
|
||||
((dot B₃.val T.val - dot Y₃.val T.val) * cubeTriLin T.val T.val Y₃.val +
|
||||
( dot Y₃.val T.val- 2 * dot B₃.val T.val) * cubeTriLin T.val T.val B₃.val) := by
|
||||
(dot Y₃.val T.val - 2 * dot B₃.val T.val) * cubeTriLin T.val T.val B₃.val) := by
|
||||
rw [proj_val]
|
||||
rw [cubeTriLin.map_add₁, cubeTriLin.map_add₂]
|
||||
erw [lineY₃B₃_doublePoint]
|
||||
|
|
|
@ -155,23 +155,23 @@ def α₁ (T : MSSMACC.AnomalyFreePerp) : ℚ :=
|
|||
(3 * cubeTriLin T.val T.val B₃.val * quadBiLin T.val T.val -
|
||||
2 * cubeTriLin T.val T.val T.val * quadBiLin B₃.val T.val)
|
||||
|
||||
/-- A helper function to simplify following expressions. -/
|
||||
def α₂ (T : MSSMACC.AnomalyFreePerp) : ℚ :=
|
||||
(2 * cubeTriLin T.val T.val T.val * quadBiLin Y₃.val T.val -
|
||||
3 * cubeTriLin T.val T.val Y₃.val * quadBiLin T.val T.val)
|
||||
/-- A helper function to simplify following expressions. -/
|
||||
def α₂ (T : MSSMACC.AnomalyFreePerp) : ℚ :=
|
||||
(2 * cubeTriLin T.val T.val T.val * quadBiLin Y₃.val T.val -
|
||||
3 * cubeTriLin T.val T.val Y₃.val * quadBiLin T.val T.val)
|
||||
|
||||
/-- A helper function to simplify following expressions. -/
|
||||
def α₃ (T : MSSMACC.AnomalyFreePerp) : ℚ :=
|
||||
6 * ((cubeTriLin T.val T.val Y₃.val) * quadBiLin B₃.val T.val -
|
||||
(cubeTriLin T.val T.val B₃.val) * quadBiLin Y₃.val T.val)
|
||||
/-- A helper function to simplify following expressions. -/
|
||||
def α₃ (T : MSSMACC.AnomalyFreePerp) : ℚ :=
|
||||
6 * ((cubeTriLin T.val T.val Y₃.val) * quadBiLin B₃.val T.val -
|
||||
(cubeTriLin T.val T.val B₃.val) * quadBiLin Y₃.val T.val)
|
||||
|
||||
lemma lineQuad_cube (R : MSSMACC.AnomalyFreePerp) (c₁ c₂ c₃ : ℚ) :
|
||||
accCube (lineQuad R c₁ c₂ c₃).val =
|
||||
- 4 * ( c₁ * quadBiLin B₃.val R.val - c₂ * quadBiLin Y₃.val R.val) ^ 2 *
|
||||
( α₁ R * c₁ + α₂ R * c₂ + α₃ R * c₃ ) := by
|
||||
rw [lineQuad_val]
|
||||
rw [planeY₃B₃_cubic, α₁, α₂, α₃]
|
||||
ring
|
||||
lemma lineQuad_cube (R : MSSMACC.AnomalyFreePerp) (c₁ c₂ c₃ : ℚ) :
|
||||
accCube (lineQuad R c₁ c₂ c₃).val =
|
||||
- 4 * (c₁ * quadBiLin B₃.val R.val - c₂ * quadBiLin Y₃.val R.val) ^ 2 *
|
||||
(α₁ R * c₁ + α₂ R * c₂ + α₃ R * c₃) := by
|
||||
rw [lineQuad_val]
|
||||
rw [planeY₃B₃_cubic, α₁, α₂, α₃]
|
||||
ring
|
||||
|
||||
/-- The line in the plane spanned by `Y₃`, `B₃` and `R` which is in the cubic. -/
|
||||
def lineCube (R : MSSMACC.AnomalyFreePerp) (a₁ a₂ a₃ : ℚ) :
|
||||
|
|
|
@ -147,7 +147,7 @@ def InCubeSolProp (R : MSSMACC.Sols) : Prop :=
|
|||
that solution satisfies `inCubeSolProp`. It appears in the definition of `inLineEqProj`. -/
|
||||
def cubicCoeff (T : MSSMACC.Sols) : ℚ :=
|
||||
3 * (dot Y₃.val B₃.val) ^ 3 * (cubeTriLin T.val T.val Y₃.val ^ 2 +
|
||||
cubeTriLin T.val T.val B₃.val ^ 2 )
|
||||
cubeTriLin T.val T.val B₃.val ^ 2)
|
||||
|
||||
lemma inCubeSolProp_iff_cubicCoeff_zero (T : MSSMACC.Sols) :
|
||||
InCubeSolProp T ↔ cubicCoeff T = 0 := by
|
||||
|
|
|
@ -60,7 +60,7 @@ lemma chargeMap_toSpecies (f : PermGroup) (S : MSSMCharges.Charges) (j : Fin 6)
|
|||
@[simp]
|
||||
def repCharges : Representation ℚ PermGroup (MSSMCharges).Charges where
|
||||
toFun f := chargeMap f⁻¹
|
||||
map_mul' f g :=by
|
||||
map_mul' f g := by
|
||||
simp only [PermGroup, mul_inv_rev]
|
||||
apply LinearMap.ext
|
||||
intro S
|
||||
|
|
|
@ -51,22 +51,19 @@ def accCubeTriLinSymm {n : ℕ} : TriLinearSymm (PureU1Charges n).Charges := Tri
|
|||
rw [← Finset.sum_add_distrib]
|
||||
apply Fintype.sum_congr
|
||||
intro i
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
(by
|
||||
intro S L T
|
||||
simp only [PureU1Charges_numberCharges]
|
||||
apply Fintype.sum_congr
|
||||
intro i
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
(by
|
||||
intro S L T
|
||||
simp only [PureU1Charges_numberCharges]
|
||||
apply Fintype.sum_congr
|
||||
intro i
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
|
||||
/-- The cubic anomaly equation. -/
|
||||
@[simp]
|
||||
|
|
|
@ -117,7 +117,7 @@ def coordinateMap : ((PureU1 n.succ).LinSols) ≃ₗ[ℚ] Fin n →₀ ℚ where
|
|||
exact Rat.mul_zero (f k)
|
||||
simp
|
||||
|
||||
/-- The basis of `LinSols`.-/
|
||||
/-- The basis of `LinSols`. -/
|
||||
noncomputable
|
||||
def asBasis : Basis (Fin n) ℚ ((PureU1 n.succ).LinSols) where
|
||||
repr := coordinateMap
|
||||
|
|
|
@ -191,7 +191,7 @@ lemma AFL_odd_noBoundary {A : (PureU1 (2 * n + 1)).LinSols} (h : ConstAbsSorted
|
|||
lemma AFL_odd_zero {A : (PureU1 (2 * n + 1)).LinSols} (h : ConstAbsSorted A.val) :
|
||||
A.val (0 : Fin (2 * n + 1)) = 0 := by
|
||||
by_contra hn
|
||||
exact (AFL_odd_noBoundary h hn ) (AFL_hasBoundary h hn)
|
||||
exact (AFL_odd_noBoundary h hn) (AFL_hasBoundary h hn)
|
||||
|
||||
theorem AFL_odd (A : (PureU1 (2 * n + 1)).LinSols) (h : ConstAbsSorted A.val) :
|
||||
A = 0 := by
|
||||
|
|
|
@ -689,7 +689,7 @@ lemma P!_in_span (f : Fin n → ℚ) : P! f ∈ Submodule.span ℚ (Set.range ba
|
|||
use f
|
||||
rfl
|
||||
|
||||
lemma smul_basis!AsCharges_in_span (S : (PureU1 (2 * n.succ )).LinSols) (j : Fin n) :
|
||||
lemma smul_basis!AsCharges_in_span (S : (PureU1 (2 * n.succ)).LinSols) (j : Fin n) :
|
||||
(S.val (δ!₂ j) - S.val (δ!₁ j)) • basis!AsCharges j ∈
|
||||
Submodule.span ℚ (Set.range basis!AsCharges) := by
|
||||
apply Submodule.smul_mem
|
||||
|
|
|
@ -69,7 +69,7 @@ lemma line_in_cubic_P_P_P! {S : (PureU1 (2 * n.succ)).LinSols} (h : LineInCubic
|
|||
|
||||
/-- We say a `LinSol` satisfies `lineInCubicPerm` if all its permutations satisfy `lineInCubic`. -/
|
||||
def LineInCubicPerm (S : (PureU1 (2 * n.succ)).LinSols) : Prop :=
|
||||
∀ (M : (FamilyPermutations (2 * n.succ)).group ),
|
||||
∀ (M : (FamilyPermutations (2 * n.succ)).group),
|
||||
LineInCubic ((FamilyPermutations (2 * n.succ)).linSolRep M S)
|
||||
|
||||
/-- If `lineInCubicPerm S` then `lineInCubic S`. -/
|
||||
|
@ -104,7 +104,7 @@ lemma lineInCubicPerm_swap {S : (PureU1 (2 * n.succ)).LinSols}
|
|||
rw [accCubeTriLinSymm.map_add₃, h1, accCubeTriLinSymm.map_smul₃] at h2
|
||||
simpa using h2
|
||||
|
||||
lemma P_P_P!_accCube' {S : (PureU1 (2 * n.succ.succ )).LinSols}
|
||||
lemma P_P_P!_accCube' {S : (PureU1 (2 * n.succ.succ)).LinSols}
|
||||
(f : Fin n.succ.succ → ℚ) (g : Fin n.succ → ℚ) (hS : S.val = Pa f g) :
|
||||
accCubeTriLinSymm (P f) (P f) (basis!AsCharges (Fin.last n)) =
|
||||
- (S.val (δ!₂ (Fin.last n)) + S.val (δ!₁ (Fin.last n))) * (2 * S.val δ!₄ +
|
||||
|
@ -114,12 +114,12 @@ lemma P_P_P!_accCube' {S : (PureU1 (2 * n.succ.succ )).LinSols}
|
|||
have h2 := Pa_δ!₁ f g (Fin.last n)
|
||||
have h3 := Pa_δ!₂ f g (Fin.last n)
|
||||
simp at h1 h2 h3
|
||||
have hl : f (Fin.succ (Fin.last (n ))) = - Pa f g δ!₄ := by
|
||||
have hl : f (Fin.succ (Fin.last n)) = - Pa f g δ!₄ := by
|
||||
simp_all only [Fin.succ_last, neg_neg]
|
||||
erw [hl] at h2
|
||||
have hg : g (Fin.last n) = Pa f g (δ!₁ (Fin.last n)) + Pa f g δ!₄ := by
|
||||
linear_combination -(1 * h2)
|
||||
have hll : f (Fin.castSucc (Fin.last (n ))) =
|
||||
have hll : f (Fin.castSucc (Fin.last n)) =
|
||||
- (Pa f g (δ!₂ (Fin.last n)) + Pa f g (δ!₁ (Fin.last n)) + Pa f g δ!₄) := by
|
||||
linear_combination h3 - 1 * hg
|
||||
rw [← hS] at hl hll
|
||||
|
|
|
@ -93,7 +93,7 @@ lemma genericCase_exists (S : (PureU1 (2 * n.succ)).Sols)
|
|||
rw [hS'.1, hS'.2] at hC
|
||||
exact hC' hC
|
||||
|
||||
/-- A proposition on a solution which is true if `accCubeTriLinSymm (P g, P g, P! f) = 0`.-/
|
||||
/-- A proposition on a solution which is true if `accCubeTriLinSymm (P g, P g, P! f) = 0`. -/
|
||||
def SpecialCase (S : (PureU1 (2 * n.succ)).Sols) : Prop :=
|
||||
∀ (g : Fin n.succ → ℚ) (f : Fin n → ℚ) (_ : S.val = P g + P! f) ,
|
||||
accCubeTriLinSymm (P g) (P g) (P! f) = 0
|
||||
|
@ -125,7 +125,7 @@ theorem generic_case {S : (PureU1 (2 * n.succ)).Sols} (h : GenericCase S) :
|
|||
rw [parameterization]
|
||||
apply ACCSystem.Sols.ext
|
||||
rw [parameterizationAsLinear_val]
|
||||
change S.val = _ • ( _ • P g + _• P! f)
|
||||
change S.val = _ • (_ • P g + _• P! f)
|
||||
rw [anomalyFree_param _ _ hS]
|
||||
rw [neg_neg, ← smul_add, smul_smul, inv_mul_cancel, one_smul]
|
||||
exact hS
|
||||
|
|
|
@ -52,7 +52,7 @@ lemma lineInPlaneCond_perm {S : (PureU1 (n)).LinSols} (hS : LineInPlaneCond S)
|
|||
not_false_eq_true]
|
||||
|
||||
lemma lineInPlaneCond_eq_last' {S : (PureU1 (n.succ.succ)).LinSols} (hS : LineInPlaneCond S)
|
||||
(h : ¬ (S.val ((Fin.last n).castSucc))^2 = (S.val ((Fin.last n).succ))^2 ) :
|
||||
(h : ¬ (S.val ((Fin.last n).castSucc))^2 = (S.val ((Fin.last n).succ))^2) :
|
||||
(2 - n) * S.val (Fin.last (n + 1)) =
|
||||
- (2 - n)* S.val (Fin.castSucc (Fin.last n)) := by
|
||||
erw [sq_eq_sq_iff_eq_or_eq_neg] at h
|
||||
|
|
|
@ -43,7 +43,7 @@ lemma cube_for_linSol (S : (PureU1 3).LinSols) :
|
|||
lemma three_sol_zero (S : (PureU1 3).Sols) : S.val (0 : Fin 3) = 0 ∨ S.val (1 : Fin 3) = 0
|
||||
∨ S.val (2 : Fin 3) = 0 := (cube_for_linSol S.1.1).mpr S.cubicSol
|
||||
|
||||
/-- Given a `LinSol` with a charge equal to zero a `Sol`.-/
|
||||
/-- Given a `LinSol` with a charge equal to zero a `Sol`. -/
|
||||
def solOfLinear (S : (PureU1 3).LinSols)
|
||||
(hS : S.val (0 : Fin 3) = 0 ∨ S.val (1 : Fin 3) = 0 ∨ S.val (2 : Fin 3) = 0) :
|
||||
(PureU1 3).Sols :=
|
||||
|
|
|
@ -58,12 +58,12 @@ lemma line_in_cubic_P_P_P! {S : (PureU1 (2 * n + 1)).LinSols} (h : LineInCubic S
|
|||
∀ (g : Fin n → ℚ) (f : Fin n → ℚ) (_ : S.val = P g + P! f),
|
||||
accCubeTriLinSymm (P g) (P g) (P! f) = 0 := by
|
||||
intro g f hS
|
||||
linear_combination 2 / 3 * (lineInCubic_expand h g f hS 1 1 ) -
|
||||
(lineInCubic_expand h g f hS 1 2 ) / 6
|
||||
linear_combination 2 / 3 * (lineInCubic_expand h g f hS 1 1) -
|
||||
(lineInCubic_expand h g f hS 1 2) / 6
|
||||
|
||||
/-- We say a `LinSol` satisfies `lineInCubicPerm` if all its permutations satisfy `lineInCubic`. -/
|
||||
def LineInCubicPerm (S : (PureU1 (2 * n + 1)).LinSols) : Prop :=
|
||||
∀ (M : (FamilyPermutations (2 * n + 1)).group ),
|
||||
∀ (M : (FamilyPermutations (2 * n + 1)).group),
|
||||
LineInCubic ((FamilyPermutations (2 * n + 1)).linSolRep M S)
|
||||
|
||||
/-- If `lineInCubicPerm S` then `lineInCubic S`. -/
|
||||
|
|
|
@ -124,7 +124,7 @@ theorem generic_case {S : (PureU1 (2 * n.succ + 1)).Sols} (h : GenericCase S) :
|
|||
rw [parameterization]
|
||||
apply ACCSystem.Sols.ext
|
||||
rw [parameterizationAsLinear_val]
|
||||
change S.val = _ • ( _ • P g + _• P! f)
|
||||
change S.val = _ • (_ • P g + _• P! f)
|
||||
rw [anomalyFree_param _ _ hS]
|
||||
rw [neg_neg, ← smul_add, smul_smul, inv_mul_cancel, one_smul]
|
||||
exact hS
|
||||
|
|
|
@ -51,7 +51,7 @@ open PureU1Charges in
|
|||
@[simp]
|
||||
def permCharges {n : ℕ} : Representation ℚ (PermGroup n) (PureU1 n).Charges where
|
||||
toFun f := chargeMap f⁻¹
|
||||
map_mul' f g :=by
|
||||
map_mul' f g := by
|
||||
simp only [PermGroup, mul_inv_rev]
|
||||
apply LinearMap.ext
|
||||
intro S
|
||||
|
@ -214,7 +214,7 @@ lemma permTwo_fst : (permTwo hij hij').toFun i' = i := by
|
|||
lemma permTwo_snd : (permTwo hij hij').toFun j' = j := by
|
||||
rw [permTwo, permOfInjection]
|
||||
have ht := Equiv.extendSubtype_apply_of_mem
|
||||
((permTwoInj hij' ).toEquivRange.symm.trans
|
||||
((permTwoInj hij').toEquivRange.symm.trans
|
||||
(permTwoInj hij).toEquivRange) j' (permTwoInj_snd hij')
|
||||
simp at ht
|
||||
simp [ht, permTwoInj_snd_apply]
|
||||
|
@ -303,16 +303,15 @@ lemma Prop_two (P : ℚ × ℚ → Prop) {S : (PureU1 n).LinSols}
|
|||
{a b : Fin n} (hab : a ≠ b)
|
||||
(h : ∀ (f : (FamilyPermutations n).group),
|
||||
P ((((FamilyPermutations n).linSolRep f S).val a),
|
||||
(((FamilyPermutations n).linSolRep f S).val b)
|
||||
)) : ∀ (i j : Fin n) (_ : i ≠ j),
|
||||
(((FamilyPermutations n).linSolRep f S).val b))) : ∀ (i j : Fin n) (_ : i ≠ j),
|
||||
P (S.val i, S.val j) := by
|
||||
intro i j hij
|
||||
have h1 := h (permTwo hij hab ).symm
|
||||
have h1 := h (permTwo hij hab).symm
|
||||
rw [FamilyPermutations_anomalyFreeLinear_apply, FamilyPermutations_anomalyFreeLinear_apply] at h1
|
||||
simp at h1
|
||||
change P
|
||||
(S.val ((permTwo hij hab ).toFun a),
|
||||
S.val ((permTwo hij hab ).toFun b)) at h1
|
||||
(S.val ((permTwo hij hab).toFun a),
|
||||
S.val ((permTwo hij hab).toFun b)) at h1
|
||||
erw [permTwo_fst,permTwo_snd] at h1
|
||||
exact h1
|
||||
|
||||
|
@ -321,9 +320,8 @@ lemma Prop_three (P : ℚ × ℚ × ℚ → Prop) {S : (PureU1 n).LinSols}
|
|||
(h : ∀ (f : (FamilyPermutations n).group),
|
||||
P ((((FamilyPermutations n).linSolRep f S).val a),(
|
||||
(((FamilyPermutations n).linSolRep f S).val b),
|
||||
(((FamilyPermutations n).linSolRep f S).val c)
|
||||
))) : ∀ (i j k : Fin n) (_ : i ≠ j) (_ : j ≠ k) (_ : i ≠ k),
|
||||
P (S.val i, (S.val j, S.val k)) := by
|
||||
(((FamilyPermutations n).linSolRep f S).val c)))) : ∀ (i j k : Fin n)
|
||||
(_ : i ≠ j) (_ : j ≠ k) (_ : i ≠ k), P (S.val i, (S.val j, S.val k)) := by
|
||||
intro i j k hij hjk hik
|
||||
have h1 := h (permThree hij hjk hik hab hbc hac).symm
|
||||
rw [FamilyPermutations_anomalyFreeLinear_apply, FamilyPermutations_anomalyFreeLinear_apply,
|
||||
|
|
|
@ -54,9 +54,9 @@ lemma charges_eq_toSpecies_eq (S T : (SMCharges n).Charges) :
|
|||
apply toSpeciesEquiv.injective
|
||||
exact (Set.eqOn_univ (toSpeciesEquiv S) (toSpeciesEquiv T)).mp fun ⦃x⦄ _ => h x
|
||||
|
||||
lemma toSMSpecies_toSpecies_inv (i : Fin 5) (f : (Fin 5 → Fin n → ℚ) ) :
|
||||
lemma toSMSpecies_toSpecies_inv (i : Fin 5) (f : Fin 5 → Fin n → ℚ) :
|
||||
(toSpecies i) (toSpeciesEquiv.symm f) = f i := by
|
||||
change (toSpeciesEquiv ∘ toSpeciesEquiv.symm ) _ i= f i
|
||||
change (toSpeciesEquiv ∘ toSpeciesEquiv.symm) _ i= f i
|
||||
simp
|
||||
|
||||
/-- The `Q` charges as a map `Fin n → ℚ`. -/
|
||||
|
@ -272,8 +272,7 @@ def cubeTriLin : TriLinearSymm (SMCharges n).Charges := TriLinearSymm.mk₃
|
|||
intro i
|
||||
repeat erw [map_smul]
|
||||
simp [HSMul.hSMul, SMul.smul]
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
(by
|
||||
intro S T R L
|
||||
simp only
|
||||
|
@ -282,22 +281,19 @@ def cubeTriLin : TriLinearSymm (SMCharges n).Charges := TriLinearSymm.mk₃
|
|||
intro i
|
||||
repeat erw [map_add]
|
||||
simp only [ACCSystemCharges.chargesAddCommMonoid_add, toSpecies_apply, Fin.isValue]
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
(by
|
||||
intro S T L
|
||||
simp only [SMSpecies_numberCharges, toSpecies_apply, Fin.isValue]
|
||||
apply Fintype.sum_congr
|
||||
intro i
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
(by
|
||||
intro S T L
|
||||
simp only [SMSpecies_numberCharges, toSpecies_apply, Fin.isValue]
|
||||
apply Fintype.sum_congr
|
||||
intro i
|
||||
ring
|
||||
)
|
||||
ring)
|
||||
|
||||
/-- The cubic acc. -/
|
||||
@[simp]
|
||||
|
|
|
@ -100,7 +100,7 @@ def speciesFamilyUniversial (n : ℕ) :
|
|||
|
||||
/-- The embedding of the `1`-family charges into the `n`-family charges in
|
||||
a universal manor. -/
|
||||
def familyUniversal ( n : ℕ) : (SMCharges 1).Charges →ₗ[ℚ] (SMCharges n).Charges :=
|
||||
def familyUniversal (n : ℕ) : (SMCharges 1).Charges →ₗ[ℚ] (SMCharges n).Charges :=
|
||||
chargesMapOfSpeciesMap (speciesFamilyUniversial n)
|
||||
|
||||
end SM
|
||||
|
|
|
@ -183,7 +183,8 @@ lemma grav (S : linearParameters) :
|
|||
|
||||
end linearParameters
|
||||
|
||||
/-- The parameters for solutions to the linear ACCs with the condition that Q and E are non-zero.-/
|
||||
/-- The parameters for solutions to the linear ACCs with the condition that Q and E are
|
||||
non-zero. -/
|
||||
structure linearParametersQENeqZero where
|
||||
/-- The parameter `x`. -/
|
||||
x : ℚ
|
||||
|
@ -291,7 +292,7 @@ lemma cubic_v_or_w_zero (S : linearParametersQENeqZero) (h : accCube (bijection
|
|||
exact h2 h
|
||||
|
||||
lemma cubic_v_zero (S : linearParametersQENeqZero) (h : accCube (bijection S).1.val = 0)
|
||||
(hv : S.v = 0 ) : S.w = -1 := by
|
||||
(hv : S.v = 0) : S.w = -1 := by
|
||||
rw [S.cubic, hv] at h
|
||||
simp at h
|
||||
have h' : (S.w + 1) * (1 * S.w * S.w + (-1) * S.w + 1) = 0 := by
|
||||
|
@ -309,7 +310,7 @@ lemma cubic_v_zero (S : linearParametersQENeqZero) (h : accCube (bijection S).1.
|
|||
exact eq_neg_of_add_eq_zero_left h'
|
||||
|
||||
lemma cube_w_zero (S : linearParametersQENeqZero) (h : accCube (bijection S).1.val = 0)
|
||||
(hw : S.w = 0 ) : S.v = -1 := by
|
||||
(hw : S.w = 0) : S.v = -1 := by
|
||||
rw [S.cubic, hw] at h
|
||||
simp at h
|
||||
have h' : (S.v + 1) * (1 * S.v * S.v + (-1) * S.v + 1) = 0 := by
|
||||
|
|
|
@ -36,7 +36,7 @@ instance : Group (PermGroup n) := Pi.group
|
|||
/-- The image of an element of `permGroup n` under the representation on charges. -/
|
||||
@[simps!]
|
||||
def chargeMap (f : PermGroup n) : (SMCharges n).Charges →ₗ[ℚ] (SMCharges n).Charges where
|
||||
toFun S := toSpeciesEquiv.symm (fun i => toSpecies i S ∘ f i )
|
||||
toFun S := toSpeciesEquiv.symm (fun i => toSpecies i S ∘ f i)
|
||||
map_add' _ _ := rfl
|
||||
map_smul' _ _ := rfl
|
||||
|
||||
|
@ -44,7 +44,7 @@ def chargeMap (f : PermGroup n) : (SMCharges n).Charges →ₗ[ℚ] (SMCharges n
|
|||
@[simp]
|
||||
def repCharges {n : ℕ} : Representation ℚ (PermGroup n) (SMCharges n).Charges where
|
||||
toFun f := chargeMap f⁻¹
|
||||
map_mul' f g :=by
|
||||
map_mul' f g := by
|
||||
simp only [PermGroup, mul_inv_rev]
|
||||
apply LinearMap.ext
|
||||
intro S
|
||||
|
|
|
@ -31,7 +31,7 @@ namespace SMνCharges
|
|||
variable {n : ℕ}
|
||||
|
||||
/-- An equivalence between `(SMνCharges n).charges` and `(Fin 6 → Fin n → ℚ)`
|
||||
splitting the charges into species.-/
|
||||
splitting the charges into species. -/
|
||||
@[simps!]
|
||||
def toSpeciesEquiv : (SMνCharges n).Charges ≃ (Fin 6 → Fin n → ℚ) :=
|
||||
((Equiv.curry _ _ _).symm.trans ((@finProdFinEquiv 6 n).arrowCongr (Equiv.refl ℚ))).symm
|
||||
|
@ -54,9 +54,9 @@ lemma charges_eq_toSpecies_eq (S T : (SMνCharges n).Charges) :
|
|||
funext i
|
||||
exact h i
|
||||
|
||||
lemma toSMSpecies_toSpecies_inv (i : Fin 6) (f : (Fin 6 → Fin n → ℚ) ) :
|
||||
lemma toSMSpecies_toSpecies_inv (i : Fin 6) (f : Fin 6 → Fin n → ℚ) :
|
||||
(toSpecies i) (toSpeciesEquiv.symm f) = f i := by
|
||||
change (toSpeciesEquiv ∘ toSpeciesEquiv.symm ) _ i = f i
|
||||
change (toSpeciesEquiv ∘ toSpeciesEquiv.symm) _ i = f i
|
||||
simp
|
||||
|
||||
lemma toSpecies_one (S : (SMνCharges 1).Charges) (j : Fin 6) :
|
||||
|
|
|
@ -24,12 +24,11 @@ open BigOperators
|
|||
namespace PlaneSeven
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₀ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₀ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 0, 0 => 1
|
||||
| 0, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₀_cubic (S T : (SM 3).Charges) : cubeTriLin B₀ S T =
|
||||
6 * (S (0 : Fin 18) * T (0 : Fin 18) - S (1 : Fin 18) * T (1 : Fin 18)) := by
|
||||
|
@ -37,12 +36,11 @@ lemma B₀_cubic (S T : (SM 3).Charges) : cubeTriLin B₀ S T =
|
|||
ring
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₁ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₁ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 1, 0 => 1
|
||||
| 1, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₁_cubic (S T : (SM 3).Charges) : cubeTriLin B₁ S T =
|
||||
3 * (S (3 : Fin 18) * T (3 : Fin 18) - S (4 : Fin 18) * T (4 : Fin 18)) := by
|
||||
|
@ -50,12 +48,11 @@ lemma B₁_cubic (S T : (SM 3).Charges) : cubeTriLin B₁ S T =
|
|||
ring
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₂ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₂ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 2, 0 => 1
|
||||
| 2, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₂_cubic (S T : (SM 3).Charges) : cubeTriLin B₂ S T =
|
||||
3 * (S (6 : Fin 18) * T (6 : Fin 18) - S (7 : Fin 18) * T (7 : Fin 18)) := by
|
||||
|
@ -63,12 +60,11 @@ lemma B₂_cubic (S T : (SM 3).Charges) : cubeTriLin B₂ S T =
|
|||
ring
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₃ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₃ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 3, 0 => 1
|
||||
| 3, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₃_cubic (S T : (SM 3).Charges) : cubeTriLin B₃ S T =
|
||||
2 * (S (9 : Fin 18) * T (9 : Fin 18) - S (10 : Fin 18) * T (10 : Fin 18)) := by
|
||||
|
@ -77,12 +73,11 @@ lemma B₃_cubic (S T : (SM 3).Charges) : cubeTriLin B₃ S T =
|
|||
rfl
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₄ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₄ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 4, 0 => 1
|
||||
| 4, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₄_cubic (S T : (SM 3).Charges) : cubeTriLin B₄ S T =
|
||||
(S (12 : Fin 18) * T (12 : Fin 18) - S (13 : Fin 18) * T (13 : Fin 18)) := by
|
||||
|
@ -91,12 +86,11 @@ lemma B₄_cubic (S T : (SM 3).Charges) : cubeTriLin B₄ S T =
|
|||
rfl
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₅ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₅ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 5, 0 => 1
|
||||
| 5, 1 => - 1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₅_cubic (S T : (SM 3).Charges) : cubeTriLin B₅ S T =
|
||||
(S (15 : Fin 18) * T (15 : Fin 18) - S (16 : Fin 18) * T (16 : Fin 18)) := by
|
||||
|
@ -105,12 +99,11 @@ lemma B₅_cubic (S T : (SM 3).Charges) : cubeTriLin B₅ S T =
|
|||
rfl
|
||||
|
||||
/-- A charge assignment forming one of the basis elements of the plane. -/
|
||||
def B₆ : (SM 3).Charges := toSpeciesEquiv.invFun ( fun s => fun i =>
|
||||
def B₆ : (SM 3).Charges := toSpeciesEquiv.invFun (fun s => fun i =>
|
||||
match s, i with
|
||||
| 1, 2 => 1
|
||||
| 2, 2 => -1
|
||||
| _, _ => 0
|
||||
)
|
||||
| _, _ => 0)
|
||||
|
||||
lemma B₆_cubic (S T : (SM 3).Charges) : cubeTriLin B₆ S T =
|
||||
3 * (S (5 : Fin 18) * T (5 : Fin 18) - S (8 : Fin 18) * T (8 : Fin 18)) := by
|
||||
|
|
|
@ -36,7 +36,7 @@ instance : Group (PermGroup n) := Pi.group
|
|||
/-- The image of an element of `permGroup n` under the representation on charges. -/
|
||||
@[simps!]
|
||||
def chargeMap (f : PermGroup n) : (SMνCharges n).Charges →ₗ[ℚ] (SMνCharges n).Charges where
|
||||
toFun S := toSpeciesEquiv.symm (fun i => toSpecies i S ∘ f i )
|
||||
toFun S := toSpeciesEquiv.symm (fun i => toSpecies i S ∘ f i)
|
||||
map_add' _ _ := rfl
|
||||
map_smul' _ _ := rfl
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue