45 lines
1 KiB
Text
45 lines
1 KiB
Text
![]() |
/-
|
|||
|
Copyright (c) 2024 Joseph Tooby-Smith. All rights reserved.
|
|||
|
Released under Apache 2.0 license.
|
|||
|
Authors: Joseph Tooby-Smith
|
|||
|
-/
|
|||
|
import HepLean.AnomalyCancellation.PureU1.Sort
|
|||
|
import Mathlib.Logic.Equiv.Fin
|
|||
|
/-!
|
|||
|
# Vector like charges
|
|||
|
|
|||
|
For the `n`-even case we define the property of a charge assignment being vector like.
|
|||
|
|
|||
|
## TODO
|
|||
|
|
|||
|
The `n`-odd case.
|
|||
|
|
|||
|
-/
|
|||
|
universe v u
|
|||
|
|
|||
|
open Nat
|
|||
|
open Finset
|
|||
|
open BigOperators
|
|||
|
|
|||
|
namespace PureU1
|
|||
|
|
|||
|
variable {n : ℕ}
|
|||
|
|
|||
|
/--
|
|||
|
Given a natural number `n`, this lemma proves that `n + n` is equal to `2 * n`.
|
|||
|
-/
|
|||
|
lemma split_equal (n : ℕ) : n + n = 2 * n := (Nat.two_mul n).symm
|
|||
|
|
|||
|
|
|||
|
lemma split_odd (n : ℕ) : n + 1 + n = 2 * n + 1 := by omega
|
|||
|
|
|||
|
/-- A charge configuration for n even is vector like if when sorted the `i`th element
|
|||
|
is equal to the negative of the `n + i`th element. -/
|
|||
|
@[simp]
|
|||
|
def vectorLikeEven (S : (PureU1 (2 * n)).charges) : Prop :=
|
|||
|
∀ (i : Fin n), (sort S) (Fin.cast (split_equal n) (Fin.castAdd n i))
|
|||
|
= - (sort S) (Fin.cast (split_equal n) (Fin.natAdd n i))
|
|||
|
|
|||
|
|
|||
|
end PureU1
|