/- Copyright (c) 2024 Joseph Tooby-Smith. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Joseph Tooby-Smith -/ import HepLean.AnomalyCancellation.SMNu.PlusU1.Basic import HepLean.AnomalyCancellation.SMNu.FamilyMaps /-! # Family Maps for SM with RHN We give some propererties of the family maps for the SM with RHN, in particular, we define family universal maps in the case of `LinSols`, `QuadSols`, and `Sols`. -/ universe v u namespace SMRHN namespace PlusU1 open SMνCharges open SMνACCs open BigOperators variable {n : ℕ} /-- The family universal maps on `LinSols`. -/ def familyUniversalLinear (n : ℕ) : (PlusU1 1).LinSols →ₗ[ℚ] (PlusU1 n).LinSols where toFun S := chargeToLinear (familyUniversal n S.val) (by rw [familyUniversal_accGrav, gravSol S, mul_zero]) (by rw [familyUniversal_accSU2, SU2Sol S, mul_zero]) (by rw [familyUniversal_accSU3, SU3Sol S, mul_zero]) (by rw [familyUniversal_accYY, YYsol S, mul_zero]) map_add' S T := rfl map_smul' a S := rfl /-- The family universal maps on `QuadSols`. -/ def familyUniversalQuad (n : ℕ) : (PlusU1 1).QuadSols → (PlusU1 n).QuadSols := fun S => chargeToQuad (familyUniversal n S.val) (by rw [familyUniversal_accGrav, gravSol S.1, mul_zero]) (by rw [familyUniversal_accSU2, SU2Sol S.1, mul_zero]) (by rw [familyUniversal_accSU3, SU3Sol S.1, mul_zero]) (by rw [familyUniversal_accYY, YYsol S.1, mul_zero]) (by rw [familyUniversal_accQuad, quadSol S, mul_zero]) /-- The family universal maps on `Sols`. -/ def familyUniversalAF (n : ℕ) : (PlusU1 1).Sols → (PlusU1 n).Sols := fun S => chargeToAF (familyUniversal n S.val) (by rw [familyUniversal_accGrav, gravSol S.1.1, mul_zero]) (by rw [familyUniversal_accSU2, SU2Sol S.1.1, mul_zero]) (by rw [familyUniversal_accSU3, SU3Sol S.1.1, mul_zero]) (by rw [familyUniversal_accYY, YYsol S.1.1, mul_zero]) (by rw [familyUniversal_accQuad, quadSol S.1, mul_zero]) (by rw [familyUniversal_accCube, cubeSol S, mul_zero]) end PlusU1 end SMRHN