/- Copyright (c) 2026 Yawara Ishida. All rights reserved. Released under Apache 2.0 license as described in the file LICENSE. Authors: Yawara Ishida -/ import Lean.Elab.Command import Lean.Util.CollectAxioms import OddOrder.Algebra.PowSubOneDvd import OddOrder.Algebra.AlgInt import OddOrder.Algebra.RootsOfUnitySum import OddOrder.Algebra.SubgroupSum import OddOrder.Algebra.GaloisRationalInteger import OddOrder.Algebra.FixedPointsGalois import OddOrder.Algebra.QuadraticFrobenius import OddOrder.Algebra.FrobeniusExponentPairs import OddOrder.Algebra.QuadraticTraceCorrection import OddOrder.GroupTheory.MaschkeComplement import OddOrder.GroupTheory.RepresentationTheory.SemilinearBilinearLift import OddOrder.Algebra.SemilinearFixedPoint import OddOrder.GroupTheory.SemilinearOrbitFixedPoint import OddOrder.GroupTheory.BrauerSuzuki import OddOrder.GroupTheory.HallWielandt import OddOrder.GroupTheory.TransferIndexTwo import OddOrder.GroupTheory.WeaklyClosed import OddOrder.GroupTheory.BrauerSuzukiSetup import OddOrder.GroupTheory.CentralExtensionAutomorphisms import OddOrder.GroupTheory.RankOneBNPair import OddOrder.GroupTheory.Transvection import OddOrder.GroupTheory.NonzeroVectorAction import OddOrder.GroupTheory.ElementaryAbelianLinear import OddOrder.GroupTheory.LinearGroupSimple import OddOrder.Isaacs.Ch08_PermutationGroups.Problems8C.AbelianAutSimple import OddOrder.Isaacs.Ch08_PermutationGroups.SymmetricNormalSubgroups import OddOrder.Peterfalvi.Appendices.Suzuki.RankOneSetup import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3Preliminary import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3CenterCoordinate import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3OrbitCount import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3SectionFourCoordinate import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3SectionFourSemilinear import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3SectionFourEquations import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3SectionFourEndgame import OddOrder.Peterfalvi.Appendices.Suzuki.StandardModelFGH import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3StepEightKW import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3UnitaryRootEquiv import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3Proposition import OddOrder.Peterfalvi.Appendices.Suzuki.PointCoordinates import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3CorollaryOne import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3PropositionModel import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3FrobeniusD import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3StepEighteen import OddOrder.GroupTheory.ZGroupNormalCyclic import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3SectionFourCorollaryOne import OddOrder.Peterfalvi.Appendices.Suzuki.PSU3TheoremADichotomy import OddOrder.Peterfalvi.Appendices.Suzuki.TheoremANonTrivialV import OddOrder.Peterfalvi.Appendices.Suzuki.TheoremAZassenhausCase import OddOrder.GroupTheory.BrauerSuzukiNormalizer import OddOrder.GroupTheory.BrauerSuzukiTISubset import OddOrder.GroupTheory.BrauerSuzukiCharacter import OddOrder.GroupTheory.UniqueInvolutionSylow import OddOrder.GroupTheory.BrauerSuzukiInvolutions import OddOrder.GroupTheory.BrauerSuzukiCounting import OddOrder.GroupTheory.BrauerSuzukiEndgame import OddOrder.GroupTheory.ChermakDelgado import OddOrder.GroupTheory.CoprimeFixedPoints import OddOrder.Mathlib.QuotientGroup import OddOrder.GroupTheory.FittingHeredity import OddOrder.GroupTheory.NormalHallHeredity import OddOrder.GroupTheory.MinimalInvariantNormal import OddOrder.GroupTheory.PrimeComplementResidual import OddOrder.GroupTheory.SylowTransport import OddOrder.GroupTheory.GroupAction.PerfectQuasiprimitive import OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.RootGroup import OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.RootGroupSylow import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Field import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.StandardGenerators import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.TorusCentralizer import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.GeneratedAction import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroupStructure import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroupSuzukiType import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Borel import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Bruhat import OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Simplicity import OddOrder.GroupTheory.SpecificGroups.Suzuki.Field import OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid import OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup import OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardGenerators import OddOrder.GroupTheory.SpecificGroups.Suzuki.GeneratedAction import OddOrder.GroupTheory.SpecificGroups.Suzuki.Borel import OddOrder.GroupTheory.SpecificGroups.Suzuki.Bruhat import OddOrder.GroupTheory.SpecificGroups.Suzuki.RootSubgroupStructure import OddOrder.GroupTheory.SpecificGroups.Suzuki.RootSubgroupSuzukiType import OddOrder.GroupTheory.SpecificGroups.Suzuki.Simplicity import OddOrder.GroupTheory.WielandtAssembly import OddOrder.GroupTheory.WielandtPerFactorDischarge import OddOrder.GroupTheory.RepresentationTheory.ElemAbelianAutAction import OddOrder.GroupTheory.RepresentationTheory.SingerReducibility import OddOrder.GroupTheory.RepresentationTheory.ProjectiveFreeTwoDim import OddOrder.GroupTheory.RepresentationTheory.FongSwan import OddOrder.GroupTheory.RepresentationTheory.WielandtKernelFPF import OddOrder.GroupTheory.RepresentationTheory.WielandtElabFrobenius import OddOrder.GroupTheory.RepresentationTheory.SingerField import OddOrder.GroupTheory.RepresentationTheory.ConjugationFieldModel import OddOrder.GroupTheory.RepresentationTheory.BlockScalarSylow import OddOrder.GroupTheory.RepresentationTheory.ExtraspecialSinger import OddOrder.GroupTheory.WielandtFixedPoint import OddOrder.GroupTheory.PiElementDecomposition import OddOrder.GroupTheory.RepresentationTheory.CharacterCount import OddOrder.GroupTheory.RepresentationTheory.CharacterCompleteness import OddOrder.GroupTheory.RepresentationTheory.GaloisCharacter import OddOrder.GroupTheory.RepresentationTheory.SchurCenterBound import OddOrder.GroupTheory.RepresentationTheory.SylowTICongruence import OddOrder.GroupTheory.RepresentationTheory.CyclotomicGaloisAction import OddOrder.GroupTheory.RepresentationTheory.ColumnOrthogonality import OddOrder.GroupTheory.RepresentationTheory.BrauerPermutationUnconditional import OddOrder.GroupTheory.RepresentationTheory.ConjugationBrauer import OddOrder.GroupTheory.RepresentationTheory.InducedCharacter import OddOrder.GroupTheory.RepresentationTheory.VirtualCharacter import OddOrder.GroupTheory.RepresentationTheory.CharacterEigenvalues import OddOrder.GroupTheory.RepresentationTheory.VirtualCharacterPairing import OddOrder.GroupTheory.RepresentationTheory.VirtualCharacterInduction import OddOrder.GroupTheory.RepresentationTheory.BrauerInductionIdeal import OddOrder.GroupTheory.RepresentationTheory.Modular.VirtualCharacterSplitting import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerInductionDescent import OddOrder.GroupTheory.RepresentationTheory.Modular.CyclotomicIntegerModP import OddOrder.GroupTheory.RepresentationTheory.Modular.CyclotomicModEq import OddOrder.GroupTheory.RepresentationTheory.Modular.CharacterPClassCongruence import OddOrder.GroupTheory.RepresentationTheory.UnitCharacter import OddOrder.GroupTheory.RepresentationTheory.InducedAdjoinSpan import OddOrder.GroupTheory.RepresentationTheory.PClassIndicator import OddOrder.GroupTheory.RepresentationTheory.DivisibleClassFunction import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerInductionTheorem import OddOrder.GroupTheory.RepresentationTheory.Modular.PRegularPartCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockIntegralCombination import OddOrder.GroupTheory.RepresentationTheory.InducedIndicator import OddOrder.GroupTheory.RepresentationTheory.PRegularCosetCount import OddOrder.GroupTheory.RepresentationTheory.PRegularCosetCharacter import OddOrder.GroupTheory.RepresentationTheory.PRegularCosetInduction import OddOrder.GroupTheory.RepresentationTheory.InducedIrreducible import OddOrder.GroupTheory.RepresentationTheory.LinearCharacter import OddOrder.GroupTheory.RepresentationTheory.ClassSumAlgebra import OddOrder.GroupTheory.RepresentationTheory.ClassSumCoefficientFormula import OddOrder.GroupTheory.RepresentationTheory.RealClassTISubset import OddOrder.GroupTheory.RepresentationTheory.Clifford import OddOrder.GroupTheory.RepresentationTheory.CliffordCorrespondence import OddOrder.GroupTheory.RepresentationTheory.CliffordSingleOrbit import OddOrder.GroupTheory.RepresentationTheory.InflationCharacter import OddOrder.GroupTheory.RepresentationTheory.ExtraspecialThm25Final import OddOrder.GroupTheory.NilpotentAbelianization import OddOrder.Isaacs.Ch02_Subnormality.Main import OddOrder.Isaacs.Ch03_SplitExtensions.Main import OddOrder.Isaacs.Ch04_Commutators.Main import OddOrder.Isaacs.Ch04_Commutators.ForwardFromCh03 import OddOrder.Isaacs.Ch04_Commutators.HartleyTurull import OddOrder.Isaacs.Ch04_Commutators.Mann import OddOrder.Isaacs.Ch05_Transfer.Main import OddOrder.Isaacs.Ch06_FrobeniusActions.Main import OddOrder.Isaacs.Ch06_FrobeniusActions.OddComplement import OddOrder.Isaacs.Ch06_FrobeniusActions.FrobeniusGroupQuotient import OddOrder.Isaacs.Ch06_FrobeniusActions.KernelNilpotent import OddOrder.Isaacs.Ch06_FrobeniusActions.ThompsonPComplement import OddOrder.Isaacs.Ch07_ThompsonSubgroup.Main import OddOrder.Isaacs.Ch07_ThompsonSubgroup.Problems7C import OddOrder.Isaacs.Ch09_MoreSubnormality.Problems9D import OddOrder.Isaacs.Ch09_MoreSubnormality.KegelMinimalCounterexample import OddOrder.Isaacs.Ch09_MoreSubnormality.Quasisimple import OddOrder.Isaacs.Ch09_MoreSubnormality.Components import OddOrder.Isaacs.Ch09_MoreSubnormality.Semisimple import OddOrder.Isaacs.Ch09_MoreSubnormality.Layer import OddOrder.Isaacs.Ch09_MoreSubnormality.GeneralizedFitting import OddOrder.Isaacs.Ch09_MoreSubnormality.ThompsonWielandt import OddOrder.Isaacs.Ch09_MoreSubnormality.OrderBound import OddOrder.Isaacs.Ch09_MoreSubnormality.AutTower import OddOrder.Isaacs.Ch09_MoreSubnormality.SylowSubnormal import OddOrder.Isaacs.Ch09_MoreSubnormality.SubnormalClosure import OddOrder.Isaacs.Ch07_ThompsonSubgroup.ForwardFromCh03 import OddOrder.Isaacs.Ch10_MoreTransfer.Main import OddOrder.Isaacs.Ch10_MoreTransfer.HuppertMetacyclic import OddOrder.Isaacs.Ch10_MoreTransfer.Problems10A import OddOrder.Isaacs.Ch10_MoreTransfer.Problems10B import OddOrder.Isaacs.Ch10_MoreTransfer.Problems10C import OddOrder.GroupTheory.PRegularElement import OddOrder.GroupTheory.PRegularQuotient import OddOrder.GroupTheory.CosetInvariantCard import OddOrder.GroupTheory.PRegularCosetSubgroup import OddOrder.GroupTheory.PRegularProjection import OddOrder.GroupTheory.PRegularElementCount import OddOrder.GroupTheory.RepresentationTheory.Modular.PModularSystem import OddOrder.GroupTheory.RepresentationTheory.Modular.RootsOfUnityLift import OddOrder.GroupTheory.RepresentationTheory.Modular.WittVectorSystem import OddOrder.GroupTheory.RepresentationTheory.Modular.SplittingSystem import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCharacterExponent import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCharacterKernel import OddOrder.Algebra.EigenspaceDecomposition import OddOrder.Algebra.LagrangeInterpolationRing import OddOrder.Algebra.WordExpansion import OddOrder.Algebra.CommutatorSpan import OddOrder.Algebra.MatrixCommutator import OddOrder.Algebra.CommutatorSpanHom import OddOrder.Algebra.MatrixNaturalModule import OddOrder.Algebra.ModuleAlongSurjection import OddOrder.Algebra.BlockIdempotent import OddOrder.Algebra.DefectGroupConjugacy import OddOrder.Algebra.DefectNumber import OddOrder.Algebra.GroupAlgebraDefectGroup import OddOrder.Algebra.GroupAlgebraBlocks import OddOrder.Algebra.BrauerKernel import OddOrder.Algebra.BrauerDefect import OddOrder.Algebra.BrauerFirstMain import OddOrder.Algebra.CentralIdempotentModule import OddOrder.Algebra.PrimitiveIdempotent import OddOrder.Algebra.CentralCharacter import OddOrder.Algebra.BlockOfSimpleModule import OddOrder.Algebra.SeparatingSubalgebra import OddOrder.Algebra.PiMatrixSimpleModules import OddOrder.Algebra.PiSimpleModule import OddOrder.Algebra.SplitSemisimpleCount import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockRepresentation import OddOrder.GroupTheory.RepresentationTheory.Modular.IrreducibleBrauerCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.AsModuleSimple import OddOrder.GroupTheory.RepresentationTheory.Modular.IrreducibleIsBlock import OddOrder.GroupTheory.RepresentationTheory.Modular.MinimalSubrepresentation import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCount import OddOrder.GroupTheory.RepresentationTheory.Modular.PPrimeOrderSemisimple import OddOrder.GroupTheory.RepresentationTheory.Modular.PPrimeOrderCartan import OddOrder.GroupTheory.RepresentationTheory.Modular.PPrimeOrderBrauerOrdinary import OddOrder.GroupTheory.RepresentationTheory.Modular.PPrimeSubgroupRestriction import OddOrder.GroupTheory.RepresentationTheory.Modular.IntegralBasicSetMatrix import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerDecomposition import OddOrder.GroupTheory.RepresentationTheory.Modular.DecompositionMatrix import OddOrder.GroupTheory.RepresentationTheory.Modular.DecompositionNumber import OddOrder.GroupTheory.RepresentationTheory.Modular.PadicComplexSystem import OddOrder.GroupTheory.RepresentationTheory.Modular.LatticeRepresentation import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryIrreducibles import OddOrder.GroupTheory.RepresentationTheory.Modular.CartanMatrix import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryOrthogonality import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryIrrCount import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryColumnOrthogonality import OddOrder.GroupTheory.RepresentationTheory.Modular.ProjectiveCharacterVanishing import OddOrder.GroupTheory.RepresentationTheory.Modular.PRegularClassIndex import OddOrder.GroupTheory.RepresentationTheory.Modular.CartanInverse import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerBasis import OddOrder.GroupTheory.RepresentationTheory.Modular.GeneralizedDecomposition import OddOrder.GroupTheory.RepresentationTheory.Modular.TruncClassSum import OddOrder.Algebra.CentralCharacterBlock import OddOrder.Algebra.ClassSumOffCentralizer import OddOrder.Algebra.JacobsonCentralSubring import OddOrder.Algebra.CornerInverse import OddOrder.Algebra.EigenCornerInverse import OddOrder.Algebra.EigenTraceVanishing import OddOrder.Algebra.GroupAlgebraIdeal import OddOrder.Algebra.BlockCornerInverse import OddOrder.Algebra.BlockCornerLift import OddOrder.Algebra.TraceIsCompl import OddOrder.Algebra.AdicCompletePi import OddOrder.Algebra.CyclotomicAdjoin import OddOrder.Algebra.IdempotentLift import OddOrder.Algebra.CenterGroupAlgebraHenselian import OddOrder.Algebra.CenterIdempotentLift import OddOrder.GroupTheory.RepresentationTheory.Modular.InducedBlock import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCorrespondence import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerTruncation import OddOrder.GroupTheory.RepresentationTheory.Modular.InducedBlockDefined import OddOrder.GroupTheory.RepresentationTheory.Modular.InducedBlockWitness import OddOrder.GroupTheory.RepresentationTheory.Modular.InducedBlockTrace import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockOfLattice import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryDecomposition import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryLatticeCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.SecondMainCore import OddOrder.GroupTheory.RepresentationTheory.Modular.SecondMainTheorem import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockIdempotentLift import OddOrder.GroupTheory.RepresentationTheory.Modular.InducedBlockCentralizer import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockOfIrreducible import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockPartVanishing import OddOrder.GroupTheory.RepresentationTheory.Modular.InvolutionClassBurnside import OddOrder.GroupTheory.RepresentationTheory.Modular.WedderburnKernel import OddOrder.GroupTheory.RepresentationTheory.Modular.AnalysisAtInvolution import OddOrder.GroupTheory.RepresentationTheory.Modular.PadicComplexDatum import OddOrder.GroupTheory.RepresentationTheory.Modular.InvolutionDecompositionIntegral import OddOrder.GroupTheory.RepresentationTheory.Modular.TrivialCharacterBasicSet import OddOrder.Algebra.SubgroupSumBlockAction import OddOrder.Algebra.TraceMulLeft import OddOrder.GroupTheory.SylowContaining import OddOrder.GroupTheory.SylowCosetPairs import OddOrder.GroupTheory.ClassDefect import OddOrder.GroupTheory.PFactorPairCount import OddOrder.GroupTheory.RepresentationTheory.Modular.CentralCharacterTrace import OddOrder.GroupTheory.RepresentationTheory.SumCharacterInvariants import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryIdempotent import OddOrder.GroupTheory.RepresentationTheory.Modular.CentralScalarBridge import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockIdempotentOrdinary import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockSumOverPSubgroup import OddOrder.GroupTheory.RepresentationTheory.Modular.OmegaBurnside import OddOrder.GroupTheory.RepresentationTheory.Modular.OmegaBurnsideReduction import OddOrder.Algebra.PElementSum import OddOrder.Algebra.PElementSumCount import OddOrder.GroupTheory.RepresentationTheory.SylowSumClassCoeff import OddOrder.GroupTheory.RepresentationTheory.Modular.OmegaBurnsideSylowSum import OddOrder.GroupTheory.RepresentationTheory.Modular.CartanBlockDiagonal import OddOrder.GroupTheory.RepresentationTheory.Modular.PRegularSumBlock import OddOrder.GroupTheory.RepresentationTheory.Modular.PRegularSumVanishing import OddOrder.GroupTheory.RepresentationTheory.Modular.PairingZeroBlock import OddOrder.GroupTheory.RepresentationTheory.Modular.PairingZeroDecomposition import OddOrder.GroupTheory.RepresentationTheory.Modular.KulshammerFormula import OddOrder.GroupTheory.RepresentationTheory.Modular.KulshammerThirdMain import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockPartVanishingSupply import OddOrder.GroupTheory.RepresentationTheory.Modular.ThirdMainConverseSupply import OddOrder.GroupTheory.RepresentationTheory.Modular.QuotientBasicSetCartan import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockCharacterOffCentralizer import OddOrder.GroupTheory.RepresentationTheory.Modular.SectionProjectiveCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.GeneralizedDecompositionOrthogonality import OddOrder.GroupTheory.RepresentationTheory.Modular.PSectionSum import OddOrder.GroupTheory.RepresentationTheory.Modular.PSectionClassCount import OddOrder.Algebra.BlockPartitionedMatrix import OddOrder.GroupTheory.RepresentationTheory.Modular.GeneralizedDecompositionMatrix import OddOrder.GroupTheory.KleinFourAutomorphism import OddOrder.GroupTheory.KleinFourSylowFusion import OddOrder.GroupTheory.KleinFourNormalComplement import OddOrder.GroupTheory.RepresentationTheory.CharacterInvolution import OddOrder.GroupTheory.RepresentationTheory.CharacterOrderFour import OddOrder.GroupTheory.CentralSylowComplement import OddOrder.GroupTheory.RepresentationTheory.Modular.SecondMainBlockOfIrr import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockCharacterCount import OddOrder.GroupTheory.RepresentationTheory.Modular.DecompositionBlockDiagonal import OddOrder.GroupTheory.RepresentationTheory.Modular.GeneralizedDecompositionInverse import OddOrder.GroupTheory.RepresentationTheory.Modular.BasicSetDecomposition import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerFromOrdinary import OddOrder.GroupTheory.RepresentationTheory.Modular.GeneralizedDecompositionInvolution import OddOrder.GroupTheory.RepresentationTheory.Modular.SecondMainPrincipalBlock import OddOrder.Algebra.SumSquaresFour import OddOrder.Algebra.ThreeNormColumn import OddOrder.Algebra.HalfSumColumns import OddOrder.Algebra.SignRelationSolution import OddOrder.Algebra.BasicSetColumnShape import OddOrder.Algebra.BrauerSuzukiEndgame import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockInvolution import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockBasicSet import OddOrder.GroupTheory.RepresentationTheory.Modular.QuotientSplitting import OddOrder.GroupTheory.RepresentationTheory.Modular.QuotientPairing import OddOrder.GroupTheory.RepresentationTheory.Modular.QuotientCartan import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockCartanEntry import OddOrder.GroupTheory.RepresentationTheory.Modular.DefectZeroDegree import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockNonvanishing import OddOrder.GroupTheory.RepresentationTheory.Modular.SylowSumReduction import OddOrder.Algebra.SubgroupSumWedderburn import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockKernel import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockCartan import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockKernel import OddOrder.GroupTheory.RepresentationTheory.Modular.ClassCentralizerCount import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockDefect import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockHeight import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlockDefect import OddOrder.GroupTheory.RepresentationTheory.Modular.PrincipalBlock import OddOrder.GroupTheory.RepresentationTheory.Modular.ThirdMainEasy import OddOrder.GroupTheory.RepresentationTheory.Modular.OrdinaryBasis import OddOrder.GroupTheory.RepresentationTheory.Modular.LatticeBaseChange import OddOrder.GroupTheory.RepresentationTheory.Modular.SecondMainBlockForm import OddOrder.GroupTheory.RepresentationTheory.Modular.LatticeBlockIdempotent import OddOrder.GroupTheory.RepresentationTheory.Modular.LatticeCentralCharacter import OddOrder.GroupTheory.RepresentationTheory.Modular.BlockOfRepresentation import OddOrder.GroupTheory.RepresentationTheory.Modular.CenterReduction import OddOrder.GroupTheory.RepresentationTheory.Modular.ConjugationLayers import OddOrder.GroupTheory.RepresentationTheory.Modular.TwistedLayerSum import OddOrder.GroupTheory.RepresentationTheory.Modular.StandardSystem import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerCharacterIndependence import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerIndependence import OddOrder.GroupTheory.RepresentationTheory.Modular.BrauerLinearIndependence import OddOrder.GroupTheory.RepresentationTheory.Modular.PRegularCount import OddOrder.GroupTheory.RepresentationTheory.Modular.LatticeEigenspaces import OddOrder.GroupTheory.RepresentationTheory.Modular.Reduction import OddOrder.GroupTheory.RepresentationTheory.Modular.InvariantLattice import OddOrder.GroupTheory.RepresentationTheory.Modular.CommutatorQuotient import OddOrder.BG.Ch1_Preliminary.PLengthPComplement import OddOrder.BG.Ch1_Preliminary.S01_Solvable import OddOrder.BG.Ch1_Preliminary.S02_Lemma27Group import OddOrder.BG.Ch1_Preliminary.S03_WithoutSolvableKernel import OddOrder.BG.Ch1_Preliminary.S04_Lem45c_Prop46 import OddOrder.BG.Ch1_Preliminary.S04_Prop44b import OddOrder.BG.Ch1_Preliminary.S04d_GorThm415 import OddOrder.BG.Ch1_Preliminary.S04e_GorThm37 import OddOrder.BG.Ch1_Preliminary.S04g_Cor419 import OddOrder.BG.Ch1_Preliminary.S04g_Thm418 import OddOrder.BG.Ch1_Preliminary.S05_NarrowPGroups import OddOrder.BG.Ch1_Preliminary.S05_Thm420b import OddOrder.BG.Ch1_Preliminary.S06_Lem63b import OddOrder.BG.Ch1_Preliminary.S06_Thm61 import OddOrder.BG.Ch1_Preliminary.S06_Thm64 import OddOrder.BG.Ch1_Preliminary.S06_Thm64Case2 import OddOrder.BG.Ch1_Preliminary.S01b_Prop116 import OddOrder.BG.Ch1_Preliminary.S03d_Thm34 import OddOrder.BG.Ch1_Preliminary.S03e_Thm35 import OddOrder.BG.Ch1_Preliminary.S03f_Thm36 import OddOrder.BG.Ch1_Preliminary.S03g_Thm310 import OddOrder.BG.Ch1_Preliminary.S03g_Thm310General import OddOrder.BG.Ch1_Preliminary.S03g_Thm310ElemAbelian import OddOrder.BG.Ch1_Preliminary.S03g_Thm310Nilpotent import OddOrder.BG.Ch1_Preliminary.S03h_Thm38 import OddOrder.BG.Ch2_Uniqueness.S07_Transitivity import OddOrder.BG.Ch2_Uniqueness.S08_FittingOfMaximal import OddOrder.BG.Ch3_MaximalSubgroups.S10_BetaRadical import OddOrder.BG.Ch3_MaximalSubgroups.S10_LocalLemmas import OddOrder.BG.Ch3_MaximalSubgroups.S11_MsigmaANormal import OddOrder.BG.Ch3_MaximalSubgroups.S12_Corollary126 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Corollary129 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Corollary1210 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Lemma1211 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem1212 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem1212b import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem1212c import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem1213 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Proposition1215 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Corollary1214 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Lemma1217 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Corollary1216 import OddOrder.BG.Ch3_MaximalSubgroups.S12_E import OddOrder.BG.Ch3_MaximalSubgroups.S12_ExceptionalBridge import OddOrder.BG.Ch3_MaximalSubgroups.S12_Lemma128 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Lemma128d import OddOrder.BG.Ch3_MaximalSubgroups.S12_Lemma1218 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem125 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem127 import OddOrder.BG.Ch3_MaximalSubgroups.S12_Theorem127d import OddOrder.BG.Ch3_MaximalSubgroups.S13_PrimeAction import OddOrder.BG.Ch3_MaximalSubgroups.S13_PrimeActionTransition import OddOrder.BG.Ch3_MaximalSubgroups.S14_Prop142Support import OddOrder.BG.Ch4_FamilyOfMaximal.S14_TypePCounting import OddOrder.BG.Ch4_FamilyOfMaximal.S15_MF import OddOrder.BG.Ch4_FamilyOfMaximal.S16_PairIntersection import OddOrder.GroupTheory.HallCollection import OddOrder.GroupTheory.CNGroupStructure import OddOrder.BG.AppE_FurtherResults import OddOrder.BG.AppE_RegularOperator import OddOrder.BG.AppE_ExponentP import OddOrder.BG.AppE_SemidirectFrattini import OddOrder.BG.AppE_AbelianCentralizer import OddOrder.BG.AppE_FiliformCounterexample import OddOrder.BG.AppE_FiliformRefutation import OddOrder.BG.AppE_PropE4 import OddOrder.BG.AppE_E5Counting import OddOrder.BG.Ch4_FamilyOfMaximal.S16_MainResults.FittingNonTITrichotomy import OddOrder.BG.Ch4_FamilyOfMaximal.S16_MainResults.TheoremC5 import OddOrder.BG.Ch4_FamilyOfMaximal.S16_MainResults.TheoremIIPackaging import OddOrder.BG.AppA_PStability import OddOrder.BG.AppB_Puig import OddOrder.BG.AppB_PuigB3B4 import OddOrder.BG.AppB_Thm62 import OddOrder.Peterfalvi.S03_PreliminaryCharacter import OddOrder.Peterfalvi.S03b_Vanishing import OddOrder.Peterfalvi.S04_DadeIsometry import OddOrder.Peterfalvi.S05_TICyclic import OddOrder.Peterfalvi.S05_SigmaIsometry import OddOrder.Peterfalvi.S05_IntegralSigma import OddOrder.Peterfalvi.S05_OmegaGrid import OddOrder.Peterfalvi.S05_OmegaSigmaGrid import OddOrder.Peterfalvi.S06_CertainTypeSupport import OddOrder.Peterfalvi.S06_CertainTypeStructure import OddOrder.Peterfalvi.S06_CertainTypeIsometry import OddOrder.Peterfalvi.S06_CertainTypeConjugation import OddOrder.Peterfalvi.S06_MuColumnBridge import OddOrder.Peterfalvi.S06_CertainTypeSubcoherent import OddOrder.Peterfalvi.S13_ColumnFamilyBridge import OddOrder.Peterfalvi.S06_CertainTypeColumnUniqueness import OddOrder.Peterfalvi.S07_Coherence import OddOrder.Peterfalvi.S07_CoherenceConstantDegree import OddOrder.Peterfalvi.S07_CoherenceGalois import OddOrder.Peterfalvi.S08_CoherenceTheorems import OddOrder.Peterfalvi.S08_Theorem62_63_Standalone import OddOrder.Peterfalvi.S08_SixTwoGeneral import OddOrder.Peterfalvi.S08_SixTwoThreeFromImageFamilies import OddOrder.Peterfalvi.S08_SixFiveGeneral import OddOrder.Peterfalvi.S08_SixSixGeneral import OddOrder.Peterfalvi.S13_SixTwoImageData import OddOrder.Peterfalvi.S13_CoreStructure import OddOrder.Peterfalvi.S09_NonexistenceCertain import OddOrder.Peterfalvi.S09_FrobeniusFamilyOrthogonality import OddOrder.Peterfalvi.S09_FrobeniusGammaDecomposition import OddOrder.Peterfalvi.S09_FrobeniusGammaNormEstimate import OddOrder.Peterfalvi.S09_FrobeniusBsumEstimate import OddOrder.Peterfalvi.S09_FrobeniusGoodIndexEstimate import OddOrder.Peterfalvi.S09_FrobeniusSelectedEstimate import OddOrder.Peterfalvi.S09_TwoFamiliesParity import OddOrder.Peterfalvi.S09_FrobeniusParity import OddOrder.Peterfalvi.S10_CoherenceWiring import OddOrder.Peterfalvi.S10_Hypothesis46TypeP import OddOrder.Peterfalvi.S10_SubcoherentTypeP import OddOrder.Peterfalvi.S11_NineElevenSubcoherentBridge import OddOrder.Peterfalvi.S11_NineElevenCaseAResidual import OddOrder.GroupTheory.RepresentationTheory.GaloisInnerTransport import OddOrder.Peterfalvi.S11_ImprimitiveUBound import OddOrder.Peterfalvi.S11_GaloisFieldModel import OddOrder.Peterfalvi.S12_Noncoherence import OddOrder.Peterfalvi.S12_TypeVCaseC import OddOrder.Peterfalvi.S13_TypeIIIGalois import OddOrder.Peterfalvi.S13_NonGaloisExclusion import OddOrder.Peterfalvi.S15_Tau1T import OddOrder.Peterfalvi.S15_CharacterDegreeEnginesSSide import OddOrder.Peterfalvi.S15_CaseBEndgameSupply import OddOrder.FeitThompson import OddOrder.BG.AppC_NormSet import OddOrder.BG.AppC_SL2Example import OddOrder.BG.AppC_FrobeniusClassSum import OddOrder.BG.AppC_LemmaC2 import OddOrder.BG.AppC_GlaubermanNorton import OddOrder.BG.AppD_CNGroups import OddOrder.Peterfalvi.Appendices.SemilinearField import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepTwo import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepThree import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepFive import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepSix import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepSeven import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepEight import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepNine import OddOrder.Peterfalvi.Appendices.Suzuki.FirstCase.StepElevenSemidirect import OddOrder.Peterfalvi.Appendices.Suzuki.SylowDecomposition import OddOrder.Peterfalvi.Appendices.Suzuki.ActualKActor import OddOrder.Peterfalvi.Appendices.Suzuki.SemilinearModel import OddOrder.Peterfalvi.Appendices.Suzuki.SemilinearIdentification import OddOrder.Peterfalvi.Appendices.Suzuki.SemidirectReassociation import OddOrder.Peterfalvi.Appendices.Suzuki.SemilinearRealization import OddOrder.Peterfalvi.Appendices.Suzuki.GaloisCentralizer import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.PSUCentre import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.WielandtOnQ import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.HilbertNinetyOnQ import OddOrder.Peterfalvi.Appendices.Suzuki.InductionHypothesis import OddOrder.Peterfalvi.Appendices.Suzuki.InductionHypothesisPSL import OddOrder.Peterfalvi.Appendices.Suzuki.InductionHypothesisSuzuki import OddOrder.Peterfalvi.Appendices.Suzuki.InductionHypothesisPSU import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerInduction import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerNormalizer import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerResidual import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerQuotient import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerInductionBridge import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerDistinguishedBridge import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerPSLRoot import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerPSLDistinguished import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerSuzukiRoot import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerSuzukiDistinguished import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerPSURoot import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerPSUDistinguished import OddOrder.Peterfalvi.Appendices.Suzuki.CentralizerTrichotomy import OddOrder.Peterfalvi.Appendices.Suzuki.InductionNonSimple import OddOrder.Peterfalvi.Appendices.Suzuki.ConjugacyInV import OddOrder.Peterfalvi.Appendices.Suzuki.StronglyReal import OddOrder.Peterfalvi.Appendices.Suzuki.OrderThreePSL import OddOrder.Peterfalvi.Appendices.Suzuki.OrderThreePSLInduction import OddOrder.Peterfalvi.Appendices.Suzuki.OrderThreeSuzukiCentralizer import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.CoherenceContradiction import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.SquareRootFibres import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.QuotientFieldCoordinate import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.OrderFiveOrbits import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.OrderFivePairing import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.CaseBStructure import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.CaseABConclusion import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.OrderFiveSubgroup import OddOrder.Peterfalvi.Appendices.Suzuki.QuotientKWField import OddOrder.Peterfalvi.Appendices.Suzuki.CenterFieldExponent import OddOrder.Peterfalvi.Appendices.Suzuki.ModelIsomorphism import OddOrder.Peterfalvi.Appendices.Suzuki.ModelAction import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.TConjugateTriple import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.Trichotomy import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.WNeBot import OddOrder.Peterfalvi.Appendices.Suzuki.StructureOfH.TwoKSubgroups import OddOrder.Peterfalvi.Appendices.NearFields import OddOrder.Peterfalvi.Appendices.ExceptionalNearField import OddOrder.Peterfalvi.Appendices.Suzuki2Groups import OddOrder.Higman.Suzuki2Groups.HigmanSquareMap import OddOrder.Higman.Suzuki2Groups.HigmanLowerCentralDegreeThree import OddOrder.GroupTheory.FixedPointFreeOrderThree import OddOrder.Higman.Suzuki2Groups.HigmanLemmaSix import OddOrder.Higman.Suzuki2Groups.HigmanTripleBracketContradiction import OddOrder.Higman.Suzuki2Groups.CenterInvolutions import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtensions import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.HigmanDE import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.KSubgroupOrbit import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.InvariantSummands import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.ActualQuotientAction import OddOrder.Peterfalvi.Appendices.Suzuki2Groups.Types import OddOrder.GroupTheory.RepresentationTheory.CyclotomicCharacterCongruence -- lean-eval 提出候補の登録 (issue 0050, 2026-07-22) import OddOrder.Isaacs.Ch01_Sylow.Basic import OddOrder.Isaacs.Ch08_PermutationGroups.PCycleJordan import OddOrder.Isaacs.Ch08_PermutationGroups.PSLSimple import OddOrder.GroupTheory.CriticalSubgroup import OddOrder.GroupTheory.TransferTransitivity import OddOrder.GroupTheory.RepresentationTheory.AbsolutelyIrreducible import OddOrder.GroupTheory.GlaubermanReplacement import OddOrder.GroupTheory.GlaubermanZJ import OddOrder.GroupTheory.SolvableTwoTransitive import OddOrder.Algebra.AlgClosedIdempotentLift import OddOrder.Algebra.CenterGroupAlgebraAlgClosed import OddOrder.GroupTheory.RepresentationTheory.Modular.OsimaBlockSupport import OddOrder.Peterfalvi.Appendices.FeitSibleyMain import OddOrder.Peterfalvi.S03_InductionRestriction /-! # Axioms check for chapter flagship theorems 本ファイルは, **各 Isaacs 章の代表定理が許可された公理のみに依存していること**を elaboration 時に検査する CI ガード. moore57 プロジェクトの `Moore57/AxiomsCheck.lean` パターンを踏襲. ## 検査対象 (各章 1 つ) | 章 | 定理 | Isaacs 番号 | |---|---|---| | Ch.1 (Sylow Theory) | `Subgroup.chermakDelgado` | Thm 1.41 (Chermak-Delgado) | | Ch.2 (Subnormality) | `OddOrder.Isaacs.Ch02.matsuyama` | Thm 2.13 (Matsuyama involution) | | Ch.2 (Subnormality) | `baerSuzuki_pCore` | Thm 2.12 系 (Baer-Suzuki) | | Ch.2 (Subnormality) | `lucchini_index_normalCore_lt_index` | Thm 2.20 (Lucchini) | | Ch.3 (Split Extensions) | `horosevskii_aut_order_lt` | Thm 3.3 (Horosevskii) | | Ch.3 (Split Extensions) | `OddOrder.Isaacs.Ch03.hall_E_exists` | Thm 3.13 (Hall E for solvable) | | Ch.3 (Split Extensions) | `piLength_le_one_of_abelian_pi_hall` | Thm 3.22 (π-length ≤ 1) | ## 許可公理 * **Lean / mathlib 標準**: `propext`, `Classical.choice`, `Quot.sound`. `sorryAx` (= `sorry` 由来) や本プロジェクトの "暫定 axiom" (`OddOrder.Mathlib.SchurZassenhausConj` の `IsComplement'.exists_conj_of_coprime` 等) に依存する 定理が紛れ込むと elaboration が失敗し, `lake build` も失敗する. これは "**flagship 定理は無条件 (unconditional) である**" という CI 保証. ## 将来追加 Ch.4-Ch.10, BG, Peterfalvi の flagship が完成した順に追記する. -/ -- 機械列挙ファイル (flagship axioms check) のため分割・行長規約の対象外 — CLAUDE.md の明示例外 set_option linter.style.longFile 20800 set_option linter.style.longLine false open Lean Elab Command namespace OddOrder.AxiomsCheck /-- Lean / mathlib 標準の公理. -/ def allowedStandard : List Name := [``propext, ``Classical.choice, ``Quot.sound] /-- 名前 `n` が許可された公理であるかどうかを判定. -/ def isAllowed (n : Name) : Bool := allowedStandard.contains n end OddOrder.AxiomsCheck /-- 指定された定数が allowlist の公理のみに依存していることを assertion. disallow された公理 (`sorryAx`, プロジェクト固有 axiom 等) が依存性閉包に 現れた場合は elaboration が失敗 ⇒ `lake build` が失敗する. -/ elab "#assert_only_allowed_axioms " name:ident : command => do let constName := name.getId let env ← getEnv unless env.contains constName do throwError m!"axioms check: constant `{constName}` not found" let axs ← liftCoreM <| Lean.collectAxioms constName let bad := axs.filter (fun a => !OddOrder.AxiomsCheck.isAllowed a) if bad.isEmpty then logInfo m!"axioms check OK: `{constName}` depends on {axs.size} axiom(s), all in allowlist" else throwError m!"axioms check FAILED: `{constName}` depends on {bad.size} \ disallowed axiom(s):{indentD m!"{bad.toList}"}" /-! ### Per-chapter flagship checks. -/ -- Shared prime-complement residual API used by Peterfalvi Part II, Ch. I, section 3. #assert_only_allowed_axioms Subgroup.normalClosure_eq_iSup_map_conj #assert_only_allowed_axioms Subgroup.primeComplementResidual_eq_normalClosure #assert_only_allowed_axioms Subgroup.primeComplementResidual_le_of_coprime_index #assert_only_allowed_axioms Subgroup.primeComplementResidual_index_coprime #assert_only_allowed_axioms Subgroup.primeComplementResidual_map_of_surjective #assert_only_allowed_axioms Subgroup.primeComplementResidualQuotientEquiv -- Explicit carrier equivalences between Sylow subgroups and across group equivalences. #assert_only_allowed_axioms Sylow.mulEquiv #assert_only_allowed_axioms Sylow.mapEquiv #assert_only_allowed_axioms Sylow.coe_mapEquiv #assert_only_allowed_axioms Sylow.transportMulEquiv /-! Standard upper-unipotent root coordinates and the distinguished order-three product for the PSL(2,q) branch of Peterfalvi Part II, Ch. I section 3, Proposition 1(c). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.rootHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.rootSubgroup_isElementaryAbelian #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.natCard_rootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.canonicalT_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.canonicalS_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.orderOf_canonicalS_mul_T -- The standard upper-unipotent root group is Sylow in PSL(2,q), q even. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.natCard_specialLinearGroup_fin_two #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.center_specialLinearGroup_fin_two_eq_bot #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.natCard_projectiveSpecialLinearGroup_fin_two #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.rootSubgroup_index #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.rootSubgroup_index_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.rootSylow #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveSpecialLinear.coe_rootSylow -- Quadratic finite-field and Hermitian trace infrastructure for the PSU(3,q) target. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_baseField #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_field #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.conjugation_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.conjugation_twice #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.star_eq_conjugation #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.algebraMap_trace_eq_add_star #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.algebraMap_norm_eq_mul_star #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.finrank_trace_ker #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_trace_ker #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_trace_fiber #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.trace_eq_zero_iff_star_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_fixedByConjugation #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.star_algebraMap #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.mem_range_algebraMap_iff_star_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_mul_star_eq_of_star_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_ne_zero_mul_star_eq_of_star_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_unit_mul_star_eq_of_star_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_not_fixed_conjugation #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_add_star_eq_mul_star #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_add_star_eq_mul_star -- Hermitian root group and q^3 + 1 unital for the PSU(3,q) target. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.fst_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.snd_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.fst_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.snd_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.equivSigma #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.natCard #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.isPGroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.affine_ne_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.infinity_ne_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.natCard -- Standard root, determinant-one torus, and Weyl generators for PSU(3,q). #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.rootPermHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.existsUnique_rootPerm_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.specialTorusWeightHom_eq_powMonoidHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.torusScaleHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.torusPerm_mul_rootPerm_mul_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_psuTorus_standard #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.reciprocal_reciprocal #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.snd_inv_eq_star #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.weylReciprocal_weylReciprocal #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.weylReciprocal_scalePoint_weylReciprocal #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.weylPerm_apply_self #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.psuTorusPerm_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.weylPerm_mul_psuTorusPerm_mul_weylPerm -- Concrete PSU-generated subgroup and its doubly transitive unital action. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardPermGroup_le #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.rootHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.rootHom_smul_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusHom_smul_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.weylElement_sq_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusHom_mul_rootHom_mul_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.weylElement_mul_psuTorusHom_mul_weylElement #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardPermGroup_exists_smul_eq_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardPermGroup_infinityStabilizer_isPretransitive #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardPermGroup_isMultiplyPretransitive /-! The central square-one line and distinguished order-three pair in the Hermitian root group for the PSU(3,q) branch of Peterfalvi Part II, Ch. I, section 3, Proposition 1(c). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.sq_eq_one_iff_fst_eq_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.centerLine_le_center #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.natCard_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.not_isMulCommutative #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.centralInvolution_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standard_braid #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standard_st_order /-! The standard PSU root is a Sylow 2-subgroup of order q^3 and an honest Appendix III Suzuki 2-group. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.center_eq_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.natCard_center #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.natCard_center_eq_baseField #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.natCard_eq_baseField_cube #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.rootEquivStandardRoot #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_standardRootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_standardRootSubgroup_eq_baseField_cube #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.baseFieldUnitEmbedding #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.coe_baseFieldUnitEmbedding #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.baseTorusScaleHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.baseTorusScaleHom_fst #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.baseTorusScaleHom_snd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.baseTorusScaleHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootTorus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootTorus_isCyclic #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootTorus_actsRegularlyOnInvolutions #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.RootGroup.isSuzuki2Group #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootOddCofactor #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootOddCofactor_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootSubgroup_index #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootSubgroup_index_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootSylow #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.coe_standardRootSylow #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardRootSubgroup_isSuzuki2Group -- Faithful PSU root--torus semidirect product and its standard Borel range. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.borelHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.borelHom_smul_origin #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.borelHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.mem_standardBorel_iff_existsUnique_root_torus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardBorel_le_infinityStabilizer #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_standardBorel #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.bruhatFullTorus_eq_specialTorusWeight #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.origin_bruhat_identity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.mul_weylReciprocal_eq_one_iff_reciprocal_mul_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.generic_bruhat_identity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.Unital.weylPerm_mul_rootPerm_mul_weylPerm_eq_bruhat #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardBruhatRelations #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardBruhatDecomposition #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardBorel_eq_infinityStabilizer #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_standardPermGroup -- Perfectness, solvable stabilizer, and simplicity of PSU(3,q) for q > 2. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusScale_fixedPointFree_of_torusWeight_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusScale_mul_inv_surjective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.commutator_psuTorusHom_rootHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.bruhatTorus_surjective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.rootHom_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.weylElement_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.psuTorusHom_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.commutator_standardPermGroup_eq_top #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardBorel_isSolvable #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.standardPermGroup_isSimpleGroup -- Shared defining field and Tits twist for the Suzuki target in Peterfalvi Part II. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_field #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.iterateFrobeniusEquiv_period #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_symm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_symm_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_twice #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_sq -- Standard root group in ovoid coordinates for the Suzuki target. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.mul_def #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.one_def #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.inv_def #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.fst_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.snd_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.fst_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.snd_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.fst_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.snd_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.sq_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.sq_eq_one_iff #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.pow_four_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.mem_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.mk_mem_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.centerLine_le_center #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.sq_eq_one_of_mem_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.sq_mem_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.centerLineEquivField #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.centerLineMulEquivField #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.equivProd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.natCard_centerLine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.natCard #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.isPGroup -- Anisotropic norm and q^2 + 1 point carrier for the Suzuki ovoid. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm_zero_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_suzukiNorm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm_eq_zero_iff #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm_reciprocal #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.suzukiNorm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.suzukiNorm_mk #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.suzukiNorm_eq_zero_iff_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affineMk #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affineMk_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affine_inj #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affine_ext #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affine_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affine_ne_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.infinity_ne_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affineMk_ne_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.infinity_ne_affineMk #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.affineMk_inj #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.eq_infinity_or_eq_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.cases #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.equivOptionProd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.equivOptionProd_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.equivOptionProd_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.natCard #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.equivFin -- Standard root, torus, and Weyl permutations of the Suzuki ovoid. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPerm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPerm_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPerm_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPermHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPermHom_apply_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPermHom_apply_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.rootPermHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.existsUnique_rootPerm_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_fst #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_snd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_symm_fst #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_symm_snd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScaleHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScaleHom_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm_affineMk #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.torusPerm_mul_rootPerm_mul_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.origin #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.origin_eq_affineMk_zero_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_fst #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_snd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_suzukiNorm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.suzukiNorm_ne_zero_of_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_weylAffine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun_origin #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun_affine_of_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun_affineMk_of_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.suzukiNorm_ne_zero_of_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylFun_involutive #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_origin #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_affine_of_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_affineMk_of_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_apply_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylPerm_symm -- A perfect quasiprimitive group with a solvable point stabilizer is simple. #assert_only_allowed_axioms OddOrder.GroupTheory.isSimpleGroup_of_isPerfect_of_isQuasiPreprimitive_of_isSolvable_stabilizer -- The generated Suzuki permutation group and its doubly transitive action. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardGeneratorSet #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootPerm_mem_standardPermGroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusPerm_mem_standardPermGroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylPerm_mem_standardPermGroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_le #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_rootHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_torusHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_weylElement #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom_smul_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom_smul_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_smul_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_smul_affine #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_smul_affineMk #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_smul_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_smul_origin #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_smul_affine_of_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_smul_affineMk_of_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_sq_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_mul_rootHom_mul_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_exists_smul_eq_infinity #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_isPretransitive #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_infinityStabilizer_isPretransitive #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_isMultiplyPretransitive -- The faithful root-torus semidirect product and standard Borel subgroup. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.BorelModel #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.borelHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.borelHom_apply #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.borelHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardBorel #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom_mem_standardBorel #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_mem_standardBorel #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.mem_standardBorel_iff_existsUnique_root_torus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardBorel_le_infinityStabilizer #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_standardBorel -- The explicit rank-one Bruhat decomposition and exact Suzuki-group order. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm_torusScale #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.Ovoid.weylAffine_torusScale #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_mul_torusHom_mul_weylElement #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.suzukiNorm_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.bruhatRightRoot #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.bruhatRightRoot_inv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.bruhatTorus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_bruhatTorus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight_bruhatTorus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.bruhatRightRoot_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.suzukiNorm_bruhatRightRoot_mul #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_mul_rootHom_mul_weylElement #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.InStandardBruhatCells #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardBruhatDecomposition #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardBorel_eq_infinityStabilizer #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_standardPermGroup /-! The exact standard root subgroup and distinguished order-five pair for the Suzuki branch of Peterfalvi Part II, Ch. I section 3, Proposition 1(c). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootEquivStandardRoot #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_rootGroup_eq_field_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_standardRootSubgroup_eq_field_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.natCard_standardRootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.centerLine_eq_sq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootInvolution #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootInvolution_mem_standardRootSubgroup #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootInvolution_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootInvolution_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.orderOf_standardRootInvolution_mul_weylElement /-! The standard Suzuki root is a Sylow 2-subgroup and carries the concrete Appendix III type-A Suzuki 2-group structure. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootOddCofactor #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootOddCofactor_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSubgroup_index #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSubgroup_index_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSylow #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_standardRootSylow #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeightUnit #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.coe_torusWeightUnit #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeightUnit_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeightUnit_surjective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootTorus #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootTorus_isCyclic #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScaleHom_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootTorus_actsRegularlyOnInvolutions #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_pow_period #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_orderOf_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.titsTwist_ne_one_of_pos #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.not_isMulCommutative #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardTypeAData #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardTypeAData.twist_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardTypeAData.twist_orderOf_odd #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardTypeAData.map_sq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.standardTypeAData #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSubgroupTypeAData #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.isSuzuki2Group #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.IsSuzuki2Group.of_equiv #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardRootSubgroup_isSuzuki2Group -- Perfectness, solvable Borel stabilizer, and simplicity of the standard Suzuki group. #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusWeight_eq_one_iff #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_fixedPointFree #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusScale_mul_inv_surjective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.commutator_torusHom_rootHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.commutator_weylElement_torusHom #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.torusHom_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.rootHom_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.weylElement_mem_commutator #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardBorel_isSolvable #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.commutator_standardPermGroup_eq_top #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.standardPermGroup_isSimpleGroup -- Ch.1 (Sylow Theory): Thm 1.41 Chermak-Delgado main theorem -- ∃ characteristic abelian N, |G:N| ≤ |G:A|² ∀ abelian A #assert_only_allowed_axioms Subgroup.chermakDelgado #assert_only_allowed_axioms Subgroup.card_quotient_lt_of_ne_bot -- Ch.1 (Sylow Theory): Lem 1.43 の**等号条件節** — `m_G(H)·m_G(K) = m_G(D)·m_G(J)` なら -- `J = HK` かつ `C_G(D) = C_G(H)·C_G(K)` (issue 9153)。Thm 1.44(b) はこの `.1`。 #assert_only_allowed_axioms Subgroup.chermakDelgadoMeasure_mul_eq_conditions #assert_only_allowed_axioms Subgroup.chermakDelgadoLattice_measure_mul_eq #assert_only_allowed_axioms Subgroup.chermakDelgadoLattice_sup_eq_mul #assert_only_allowed_axioms Subgroup.chermakDelgadoLattice_centralizer_inf_eq_mul -- Ch.2 (Subnormality): Thm 2.13 Matsuyama -- 奇素数位数 inversion `x^t = x⁻¹` の存在 (`t ∉ O_2(G)` 下) #assert_only_allowed_axioms OddOrder.Isaacs.Ch02.matsuyama -- Ch.2 (Subnormality): Baer-Suzuki single-element p-core form (lean-eval problem) -- x ∈ O_p(G) ↔ ∀ g, ⟨x, gxg⁻¹⟩ p-group. Isaacs 2.12 iff から導出. #assert_only_allowed_axioms OddOrder.Isaacs.Ch02.baerSuzuki_pCore -- Ch.2 (Subnormality) / Ch.4 forward dependency: Thm 2.20 Lucchini -- A cyclic proper subgroup A, K = core_G(A) ⇒ |A:K| < |G:A|. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.lucchini_index_normalCore_lt_index -- Ch.3 (Split Extensions): Lem 3.1 split extension の同型を除く一意性 -- N ◁ G が H で補われ N₀ ◁ G₀ が H₀ で補われ, 作用と両立する α : N ≃ N₀, β : H ≃ H₀ が -- あれば, それらを延長する同型 G ≃ G₀ が一意に存在する. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.existsUnique_mulEquiv_of_isComplement' -- Ch.3 (Split Extensions): Thm 3.3 Horosevskii -- Every automorphism of a nontrivial finite group G has order < |G|. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.horosevskii_aut_order_lt -- Ch.3 (Split Extensions): Thm 3.13 Hall E (solvable case) -- Hall π-subgroup の存在 (solvable G) #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.hall_E_exists -- Ch.3 (Split Extensions): Thm 3.21 Hall-Higman 1.2.3 ⭐ **FT クリティカル** -- G π-separable + O_{π'}(G) = ⊥ ⇒ C_G(O_π(G)) ≤ O_π(G) #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.hall_higman_1_2_3 -- Ch.3 (Split Extensions): π-core quotient reduction -- Quotienting by O_π(G) kills the π-radical. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.oPiCore_quotient_self_eq_bot -- Ch.3 (Split Extensions): π-separability passes to arbitrary subgroups. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.Subgroup.isPiSeparable_of_isPiSeparable -- Ch.3 (Split Extensions): Thm 3.22 Hall-Higman π-length ≤ 1 -- G π-separable + abelian π-Hall ⇒ [O_{π',π}(G), O_{π',π}(G)] ≤ O_{π'}(G) #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.piLength_le_one_of_abelian_pi_hall -- Ch.4 (Commutators): Lem 4.6 同型節 — A ⊴ G abelian + G/A cyclic ⇒ A/(A ∩ Z(G)) ≅ G'. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.nonempty_quotientInfCenterEquivCommutator -- 同 cardinality 節 (有限性仮定なしの一般形): |G'| · |A ∩ Z(G)| = |A|. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.card_commutator_mul_card_inf_center_eq_card_of_normal_abelian_cyclic_quotient -- Ch.4 (Commutators): Cor 4.12 書籍形 — 任意に括弧付けした重み n の交換子は G^n に含まれる. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.CommutatorTree.eval_le_lowerCentralSeries -- Ch.4 (Commutators): Lem 4.28 ⭐ **= BG Prop 1.6(a), FT クリティカル** -- coprime action + solvability ⇒ `G = C_G(A) · [G,A]`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.fixedPoints_sup_actionCommutator_eq_top -- Ch.4 (Commutators): Lem 4.29 ⭐ **= BG Prop 1.6(b), FT クリティカル** -- coprime action + solvability ⇒ `[G,A,A] = [G,A]` in semidirect-product form. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.iterCommutator_inl_inr_two_eq_one -- Ch.4 (Commutators): Lem 4.29 書籍印刷形 (無条件): coprimality alone ⇒ `[G,A,A] = [G,A]`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.iterCommutator_inl_inr_two_eq_one_of_coprime -- Ch.4 (Commutators): Cor 4.30 -- faithful action + `[G, A, ..., A] = 1` ⇒ every prime divisor of |A| divides |G|. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.prime_dvd_card_of_faithful_iterCommutator_eq_bot -- Ch.4 (Commutators): Thm 4.24 -- finite faithful action + `[G, A, ..., A] = 1` ⇒ `A` is nilpotent. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.isaacs_thm_4_24 -- Ch.4 (Commutators): Thm 4.31 (external direct-product form) -- P p-group, Q p'-group, Q fixes all P-fixed elements ⇒ Q acts trivially. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.isaacs_thm_4_31_external -- Ch.4 (Commutators): Lem 4.32 (両半) P p-群 on G p-群 nontrivial -- 前半: Γ = G ⋊ P 内で ⁅inl(G), inr(P)⁆ < inl(G) (strict) #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.commutator_inl_inr_lt_inl_of_pgroup_action -- 後半: fixedPointsOfMulAut φ > ⊥ (C_G(P) > 1) #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.fixedPoints_ne_bot_of_pgroup_action_pgroup -- Ch.4 (Commutators): Thm 4.33 setup -- Hall-Higman 1.2.3 specialized from `O_π` to the usual p-core `O_p(G)`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.hall_higman_opCore -- Normal p-subgroups commute with normal p'-subgroups in a finite group. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.commute_of_normal_isPGroup_of_normal_isPiCompl -- First 4.33 step: `O_{p'}(N_G(P))` centralizes `O_p(G)`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.oPiCore_compl_normalizer_le_centralizer_opCore -- Reduced 4.33 case after Hall-Higman: `O_{p'}(G)=1` ⇒ `O_{p'}(N_G(P))=1`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.oPiCore_compl_normalizer_eq_bot_of_oPiCore_compl_eq_bot -- Full 4.33: p-local `H` satisfies `O_{p'}(H) ≤ O_{p'}(G)`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.oPiCore_compl_le_oPiCore_compl_of_isPLocal -- Ch.4 (Commutators): Thm 4.34 ⭐ **= BG Prop 1.6(d), FT クリティカル** -- abelian coprime action ⇒ `C_G(A) ∩ [G,A] = 1`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.fixedPoints_inf_actionCommutator_eq_bot_of_abelian -- Ch.4 (Commutators): Cor 4.35 ⭐ **= BG Prop 1.6(e), FT クリティカル** -- abelian p-group + p'-group action fixing all order-p elements ⇒ trivial action. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.actionCommutator_eq_bot_of_abelian_pgroup_of_fixes_order_p -- Ch.4 (Commutators): Thm 4.36 ⭐⭐⭐ **= BG Thm 1.11, FT クリティカル** -- p > 2, G p-群, A p'-群 acts on G, A fixes all order-p elements ⇒ A trivial on G. -- Baer trick (Lem 4.37) + Cor 4.35 + 強帰納法 (Three-subgroups). #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.isaacs_thm_4_36 -- Ch.4 (Commutators): Thm 4.38 -- P p-subgroup, Q normal p'-subgroup, Q fixes all P-fixed elements ⇒ Q acts trivially. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.isaacs_thm_4_38 -- Ch.5 (Transfer): Cor 5.4 quotient form (Z ≤ Γ' ∩ Z(Γ), p ∣ |Z| ⇒ Sylow_p(Γ/Z) noncyclic) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.not_isCyclic_sylow_quotient_of_le_commutator_inf_center -- Ch.5 (Transfer): Thm 5.10 (Dietzmann: finite conjugation-closed bounded-exponent X ⇒ ⟨X⟩ finite) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.dietzmann -- Ch.5 (Transfer): Lem 5.12 (N_G(P) controls C_G(P) fusion) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.normalizer_controls_centralizer_fusion -- Ch.5 (Transfer): Thm 5.13 (Burnside normal p-complement) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.hasNormalPComplement_of_sylow_normalizer_le_centralizer -- Ch.5 (Transfer): Cor 5.19 general form (Sylow 2 with strict-max cyclic direct factor ⇒ not simple) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.not_isSimpleGroup_of_sylow_two_cyclic_strict_max_factor -- Ch.5 (Transfer): Thm 5.20 (focal transfer kernel is A^p(G)) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.APrime_eq_transferFocal_ker -- Ch.5 (Transfer): Thm 5.21 (Focal Subgroup Theorem) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.focalSubgroupTheorem -- Ch.5 (Transfer): Thm 5.24 (nilpotent maximal subgroup of a finite simple group is a p-group) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.exists_isPGroup_of_isCoatom_of_isNilpotent -- Ch.5 (Transfer): Thm 5.25 (normal p-complement iff Sylow controls own fusion) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.hasNormalPComplement_iff_controlsOwnFusion -- Ch.5 (Transfer): Thm 5.26 (Frobenius normal p-complement) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.hasNormalPComplement_iff_isPGroup_normalizer_quotient_centralizer -- Ch.5 (Transfer): Cor 5.29 (prime-divisor obstruction gives normal p-complement) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.hasNormalPComplement_of_no_prime_dvd_pow_sub_one -- Ch.5 (Transfer): Cor 5.30 (odd p, order-p elements central) #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.normal_p_complement_of_order_p_central_odd -- Ch.6 (Frobenius Actions): Thm 6.4 (2)⇒(1) constructor (TI ⇒ Frobenius action) #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.IsFrobeniusGroup.of_trivialIntersection -- Ch.6 (Frobenius Actions): Thm 6.7 (self-centralizing normal subgroup is complemented, -- and is a Frobenius kernel when proper nontrivial) #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_isComplement'_of_centralizer_le -- Ch.6 (Frobenius Actions): Thm 6.9 solvable Frobenius subgroup obstruction #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_frobeniusAction_actorSubgroup_isSolvable_isFrobeniusGroup -- Ch.6 (Frobenius Actions): Thm 6.9 elementary abelian subgroup obstruction #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_frobeniusAction_actorSubgroup_isElementaryAbelian_card_ge_prime_sq -- Ch.6 (Frobenius Actions): Thm 6.9 `p = q` order-`pq` branch #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_frobeniusAction_actorSubgroup_not_isCyclic_card_prime_sq -- Ch.6 (Frobenius Actions): Thm 6.9 full order-`pq` branch #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_frobeniusAction_actorSubgroup_not_isCyclic_card_mul_prime -- Ch.6 (Frobenius Actions): Cor 6.10 Sylow subgroups have unique order-`p` subgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.subgroups_card_prime_unique_of_frobeniusAction_sylow -- Ch.6 route to Thm 6.11: finite commutative p-groups with unique order-`p` -- subgroup are cyclic, and hence commutative Sylow subgroups of Frobenius complements are cyclic. #assert_only_allowed_axioms IsPGroup.isCyclic_of_subgroups_card_prime_unique #assert_only_allowed_axioms IsPGroup.isCyclic_subgroup_of_subgroups_card_prime_unique #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.sylow_isCyclic_of_frobeniusAction_of_isMulCommutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_frobeniusAction_of_isMulCommutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_comm_two_group_unique_involution #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.unique_involution_of_comm_of_involutions_invert_element #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_comm_two_group_involutions_invert_element #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_distinct_subgroups_card_two_of_external_involution -- Ch.6 (Frobenius Actions): Thm 6.23 (Thompson) — normal `p`-complement from the -- normalizers of the nonidentity characteristic subgroups of a Sylow `p`-subgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.hasNormalPComplement_of_forall_characteristic_normalizer -- Ch.6 (Frobenius Actions): Thm 6.24 (Thompson) — Frobenius kernels are nilpotent #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isNilpotent_of_isFrobeniusAction #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.IsFrobeniusGroup.isNilpotent_kernel -- Ch.9 (More on Subnormality): Lem 9.1 — G/Z(G) simple ⇒ G' quasisimple with -- G'/Z(G') ≅ G/Z(G); Lem 9.2 — proper normals of a quasisimple group are central, -- nonidentity quotients are quasisimple. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isQuasisimple_commutator #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.commutatorQuotientCenterEquiv #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsQuasisimple.normal_le_center #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsQuasisimple.quotient -- Ch.9 (More on Subnormality): Lem 9.3 — a component not inside a minimal normal -- subgroup centralizes it; Thm 9.4 — distinct components commute. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.commutator_eq_bot_of_isMinimalNormal_of_isComponent #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsComponent.commutator_eq_bot_of_ne -- Ch.9 (More on Subnormality): Lem 9.5 — a product of nonabelian simple normal subgroups -- is direct (Pi-equiv) and the family is exactly the set of minimal normal subgroups; -- payload: semisimple groups are centerless with nonabelian simple minimal normals and -- no nontrivial solvable normal subgroups. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.piEquivOfSemisimpleFamily #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.mem_semisimpleFamily_of_isMinimalNormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsSemisimpleGroup.isSimpleGroup_of_isMinimalNormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsSemisimpleGroup.eq_bot_of_normal_of_isSolvable -- Ch.9 (More on Subnormality): Lem 9.6 — a minimal normal subgroup of a finite group is -- abelian or semisimple. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isMulCommutative_or_isSemisimpleGroup_of_isMinimalNormal -- Ch.9 (More on Subnormality): the layer E(G) and Theorem 9.7 — (a) E' = E, -- (b) E/Z(E) semisimple, (c) [E,M] = 1 for every solvable normal subgroup M. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.commutator_layer_eq_layer #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSemisimpleGroup_layer_quotient_center #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.commutator_layer_eq_bot_of_normal_isSolvable -- Ch.9 (More on Subnormality): generalized Fitting F*(G) = F(G)E(G); Cor 9.9 (←) — -- F(G) ⊇ C_G(F(G)) implies F*(G) = F(G) (via Thm 9.7(c)). #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.genFitting_eq_fitting_of_centralizer_fitting_le -- Ch.9 §9C (Thompson–Wielandt): Thm 9.24 general form — for distinct H, K with no -- nonidentity subgroup of D = H ∩ K normal in a proper supergroup, U = core_H(E) or -- V = core_K(E) is a p-group; and Thm 9.23 (Thompson) — H corefree maximal, g ∉ H, -- m = |H : H ∩ H^g| gives |H : O_p(H)| ≤ ((m!)^2)! for some prime p. #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.thompsonWielandt #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.thompsonCorefreeBound -- Ch.9 §9B: Thm 9.21 (Schenkman) と Thm 9.13 (order bound) の **subnormal 版** -- (原典どおりの仮説 `S ◁◁ G`; mmd は `⊲⊲` を `⊲` に潰していた — issue 1037/9150). -- 9.13 subnormal 版が Thm 9.10 (automorphism tower) の一様上界を与える。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.centralizer_nilpotentResidual_le_of_isSubnormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.card_normalizer_nilpotentResidual_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.card_le_factorial_of_isSubnormal -- Ch.9 §9B: **Thm 9.10 (Wielandt automorphism tower)** — `Z(G) = 1` の有限群の -- automorphism tower `G_{i+1} = Aut(G_i)` は位数が `i` に依らず有界 -- (上界は `(|Z(G^∞)|·|Aut(G^∞)|)!`)。subnormal 版 9.13 + 9.12 + 9.11 で閉じる。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.card_autTowerType_add_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_card_autTowerType_le -- Ch.9 §9D: **Lem 9.31** — S ◁◁ G (subnormal) と P ∈ Syl_p(G) に対し P ∩ S ∈ Syl_p(S)。 -- (mmd は ⊲⊲ を ⊲ に潰すので PDF p.291 で subnormal を確認済。) #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.not_dvd_relIndex_inf_of_isSubnormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.not_dvd_relIndex_inf_of_normal -- Ch.9 §9D: **Lem 9.29** — strong conjugacy と X^{(G)} の基本性質 (a)-(d)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_le_of_isSubnormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_mono #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_eq_strongClosure -- Ch.9 §9D: **Lem 9.30** — 全射準同型 f に対し f(X^{(G)}) = f(X)^{(image)}。 -- (書籍は N ⊴ G / Ḡ = G/N の形。hard direction は ⟨X, Y⟩ の位数最小性を使う。) #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_map #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_isStronglyConjugate_map_eq -- Ch.9 §9D: 書籍 p.290 の観察 (X^{(G)})^g = (X^g)^{(G)} — 9.28 Bartels の Step 1/3/4 が使う。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_conjAct_smul -- Ch.9 §9D: `X^{(K)}` と ↥K 内で計算した `X^{(G)}` の橋 (9.28 の帰納法が ↥K に降りるのに必要)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_eq_map_strongClosure #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isStronglyConjugate_subgroupOf_iff -- Ch.9 §9D: Lem 9.29 の相対版 (`X^{(K)}` 形) — 9.28 の Step 1-5 が繰り返し使う。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_le_of_isSubnormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_eq_of_le -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 1** — Y^{(H)} = Z^{(H)} かつ Y^{(G)} ≠ G ⇒ Y^{(G)} = Z^{(G)}。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_one_le -- Ch.2 (Subnormality): Thm 2.5 の族版 — subnormal 部分群の集合の sSup は subnormal。 -- (Ch.9 §9D Bartels Step 2 が `⟨Y^{(G)} | Y < X⟩ ◁◁ G` で使う。) #assert_only_allowed_axioms OddOrder.Isaacs.Ch02.isSubnormal_sSup_of_isSubnormal -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 2** — 最小反例の X は p-群。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_two #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.le_sSup_lt_of_forall_not_isPGroup -- Ch.9 §9D: `X^{(K)}` の共役両立性 (Bartels Step 3 が (Y^h)^{(H)} = (Y^{(H)})^h で使う)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosureIn_conjAct_smul -- 有限群の p-部分群は与えられた Sylow の中へ共役で送れる (Bartels Step 3 の部品 2/2)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_conjAct_smul_le_sylow -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 3** — Y ≤ H < G の p-群を H の Sylow の中へ送る。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_three #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.not_dvd_relIndex_inf_of_isSubnormal_in #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_mem_conjAct_smul_le_of_isPGroup -- Ch.9 §9D: Bartels Step 4 の道具 — 集合 𝒦(H) の共役同変性と 𝒦(H) = 𝒦(P)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.mem_kappaSet_conjAct_smul #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.kappaSet_eq_of_sylow -- Ch.9 §9D: Bartels Step 4 の第 1 分岐 — 作用の核が非自明なら X^{(G)} は subnormal。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSubnormal_of_map_quotient #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSubnormal_strongClosure_of_normalizing_kernel -- Z(P) は 𝒦(P) に自明に作用する (Step 4 で作用の核の非自明性を出す部分)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.conjAct_smul_eq_self_of_mem_centralizer_of_mem_kappaSet -- 𝒦(G) への作用の核 (各点固定部分群) と Step 4 第 1 分岐への接続。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.pointwiseStabilizer_normal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSubnormal_strongClosure_of_kappaSetKernel_ne_bot -- 集合としての stabilizer と 𝒦(M) = 𝒦(G) (Step 4 の二分岐の入口)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.le_setwiseStabilizer_kappaSet #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.kappaSet_eq_top_of_setwiseStabilizer_eq_top -- N_G(P) は 𝒦(P) を保ち, C_G(P) は各点固定する (Step 4 の両分岐が使う)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.normalizer_le_setwiseStabilizer_kappaSet #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.centralizer_le_pointwiseStabilizer_kappaSet -- p-群の真部分群は指数が p で割れる (Step 4 の Sylow 結論部の道具)。 #assert_only_allowed_axioms OddOrder.dvd_relIndex_of_lt_of_isPGroup -- P が M の Sylow p で N_G(P) ≤ M なら P は G の Sylow p (Step 4 の結論部)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.not_dvd_index_of_normalizer_le -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 4** — 極大 M ⊇ X と M の Sylow p である P に対し -- P は G の Sylow p (𝒦(M) の stabilizer の二分岐)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.centralizer_ne_bot_of_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.setwiseStabilizer_kappaSet_eq_of_isCoatom -- Step 4 後半: M は P を含む唯一の極大部分群。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_four_unique -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 5** — X を含む極大部分群は一意。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_five #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_sylow_ge_of_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.lt_inf_normalizer_of_lt_of_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.mem_normalizer_of_mem_normalizer_subgroupOf -- Ch.9 §9D: **Thm 9.28 (Bartels) Step 6 と本体** — X^{(G)} は G で subnormal -- (Lem 9.29(a) と合わせて X^{(G)} = X の subnormal closure)。§9D 完了。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.bartels_step_six #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_isSubnormal_of_bartelsIH #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.strongClosure_isSubnormal -- Ch.6 (Frobenius Actions): Cor 6.17 full form — Sylow subgroups of a Frobenius complement -- are cyclic or generalized quaternion. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.sylow_isCyclic_or_two_quaternion_of_frobeniusAction -- Ch.6 (Frobenius Actions): Thm 6.19 — odd Frobenius complement has a unique subgroup of -- order `r` for each prime `r ∣ |A|` (action + subgroup-pair forms). #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.existsUnique_card_prime_of_isFrobeniusAction_of_odd #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.existsUnique_card_prime_of_isFrobeniusGroup_of_odd -- Ch.6 (Frobenius Actions): Huppert V.8.18 b) — odd Frobenius complement is a Z-group, -- its order-`r` subgroups centralize the commutator, and every prime-order subgroup is normal. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isZGroup_of_isFrobeniusAction_of_odd -- Isaacs Cor 6.18 proper: `A'` and `A/A'` cyclic of coprime orders (Cor 6.17 + Thm 5.16). -- Previously each use site re-derived the clause it needed from the `IsZGroup` instance; this -- is the composite the book states. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_commutator_abelianization_coprime_of_isFrobeniusAction_of_odd #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.centralizes_commutator_of_card_prime_coprime #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.normal_of_card_prime_of_isFrobeniusAction_of_odd #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.normal_of_card_prime_of_isFrobeniusGroup_of_odd #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_external_involution -- Lem 6.21 setup: `K = ⟨ C_N(a) | a ≠ 1 ⟩` and its abelian-action invariance. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.actionFixedBy_eq_actionFixedPoints_zpowers #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.nontrivialActionFixedByClosure_le_iff #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.subgroup_le_nontrivialActionFixedByClosure_of_closure_eq_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.actionFixedBy_invariant_of_commute #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.nontrivialActionFixedByClosure_invariant_of_commutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_isFrobeniusAction_of_fixedBy_le -- Group-level companion of the action-quotient above: a Frobenius *group* transports across an -- isomorphism (kernel/complement/normality/complement-relation/Frobenius-condition all carried). -- Used in Peterfalvi (14.9) to move `V ⋊ W₂` onto `T/Q` for the `calT1` inertia `I_T(inflate θ)=QV`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isFrobeniusGroup_map_equiv #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.normal_of_commutator_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.sylow_not_le_of_prime_dvd_index #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_aInvariant_sylow_eq_top_of_prime_dvd_index_of_proper_invariant_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.commutator_le_of_proper_invariant_le_of_isSolvable #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.nontrivialActionFixedByClosure_eq_top_of_proper_invariant_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.nontrivialActionFixedByClosure_eq_top_of_not_isCyclic_of_nontrivial #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.nontrivialActionFixedByClosure_eq_top_of_not_isCyclic #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_faithful_trivial_on_proper_invariant #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_involution_mem_of_nontrivial_two_subgroup set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_external_involution_of_nontrivial_two_subgroup set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_external_involution_of_index_two set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_dihedral_of_not_isCyclic set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_semiDihedral_of_not_isCyclic #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_normal_isMulCommutative_relIndex_prime_of_lt_centralizer #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_maximal_normal_isMulCommutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.centralizer_eq_of_maximal_normal_isMulCommutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_card_le_mulAut_of_self_centralizing #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_commutative_of_isCyclic_of_self_centralizing #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_commutative_of_maximal_normal_isCyclic set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternion_of_self_centralizing_cyclic_card_four set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_normal_noncomm_relIndex_prime_of_maximal_normal_zpowers_lt_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.card_ne_eight_of_relIndex_prime_of_card_ne_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.normal_of_le_of_quotient_commutative set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.center_lt_subgroupOf_of_self_centralizing_of_relIndex_prime_of_not_isMulCommutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.center_index_eq_prime_sq_of_subgroupOf_relIndex_prime #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.center_relIndex_zpowers_eq_prime_of_pow_mem_center set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_isElementaryAbelian_of_self_centralizing_relIndex_prime set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_isElementaryAbelian_of_zpowers_relIndex_pow_mem_center set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.not_exists_characteristic_isElementaryAbelian_card_prime_sq_of_normal_abelian_cyclic set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.pow_not_mem_center_of_zpowers_relIndex_of_normal_abelian_cyclic -- Thm 6.12 conjugation exponent dispatch: `a^p ∈ ⟨c⟩` gives `i^p ≡ 1`, while -- non-fixity of `c^p` excludes `i ≡ 1`, so Lem 6.16 forces the two 2-adic cases. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_exponent_pow_modEq_one_of_pow_mem_zpowers #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_exponent_not_modEq_one_of_pow_conj_ne set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_exponent_two_cases_of_pow_mem_zpowers_of_pow_conj_ne set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_conj_exponent_two_adic_cases_of_zpowers_relIndex_of_normal_abelian_cyclic set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.three_le_exponent_of_zpowers_relIndex_of_normal_abelian_cyclic #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_square_eq_inv_of_pow_mem_zpowers_of_pow_conj_ne set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_square_eq_inv_of_normal_zpowers_of_pow_mem_of_pow_conj_ne set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_involution_comap_card_ne_eight_of_card_ne_four set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_involution_conj_square_eq_inv_of_zpowers set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_isCyclic_of_involutions_invert_zpowers_square #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_eq_inv_or_twist_of_two_adic_cases #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.conj_exponent_modEq_sq_of_quotient_sq_eq #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_sq_eq_of_isCyclic_two_group_involution_of_card_ne_two set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.index_eq_two_of_cyclic_quotient_of_two_adic_conj_cases set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternionOrSemiDihedral_of_cyclic_quotient_two_adic_conj_cases set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternionOrSemiDihedral_of_zpowers_relIndex_cyclic_quotient set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternionOrSemiDihedral_of_zpowers_relIndex_of_quotient_involutions set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternionOrSemiDihedral_of_maximal_normal_zpowers_lt_top set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.dihedralOrQuaternionOrSemiDihedral_of_maximal_normal_zpowers_lt_top_card_ne_four set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_or_two_dihedralOrQuaternionOrSemiDihedral_of_normal_abelian_cyclic set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_subgroups_card_prime_unique_of_prime_ne_two set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_of_subgroups_card_prime_unique_of_odd set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.isCyclic_or_two_quaternion_of_subgroups_card_prime_unique -- Ch.6 (Frobenius Actions): Lem 6.15 p=2 abelian index-two branch -- finite abelian noncyclic 2-group with cyclic index-two subgroup has characteristic -- elementary abelian subgroup of order 4. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_isElementaryAbelian_four_of_noncyclic_abelian_two_group -- Lem 6.15 p=2 setup: `T/T'` is abelian, and it is noncyclic under the center-index -- hypothesis. #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_commutator_commutative #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_commutator_not_isCyclic_of_center_index_prime_sq #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.quotient_commutator_image_cyclic_index_two_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_lift_quotient_commutator_four_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.card_lift_quotient_commutator_eq_eight_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_lift_quotient_commutator_order_eight_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_lift_order_eight_noncyclic_cyclic_index_two_of_center_index_four set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_lift_order_eight_noncyclic_abelian_cyclic_index_two_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_isElementaryAbelian_four_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.exists_characteristic_isElementaryAbelian_of_center_index_prime_sq #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_prime_of_center_index_prime_sq_odd #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_two_of_center_index_four #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.false_of_unique_subgroups_card_prime_of_center_index_prime_sq -- Ch.7 (Thompson Subgroup): Thm 7.5 GL(2,p) bridge for automorphism subgroups. #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.gl2_pSubgroup_card_le_prime #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.opCore_eq_bot_of_sylow_card_le_prime_of_not_normal #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.centralizer_oPiCore_compl_le_of_opCore_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.sylow_eq_bot_of_le_oPiCore_compl #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normal_of_isPGroup_index_le_prime set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.actionCentralizer_inf_normal_of_index_le_prime #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.mulAut_centralizes_of_gl2_image_hypotheses #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.le_centralizer_of_map_le_centralizer_of_injective #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.subgroup_centralizes_of_mulAut_gl2_image_hypotheses #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.map_le_normalizer_map_of_normal #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.not_dvd_card_map_of_isPiGroup_compl_of_injective #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.two_subgroup_abelian_of_le_map_of_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.sylow_normal_of_elementaryAbelian_card_prime_sq_of_faithful #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.subgroup_normal_of_injective_mulAut_of_isCyclic #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotientActionKernel_normal #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotientActionFaithfulHom_injective #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.actionCentralizer_quotient_image_le_quotientActionHom_actionCentralizer set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.actionCentralizer_quotient_image_le_quotientActionFaithful_actionCentralizer #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.actionCentralizer_quotientActionFaithful_index_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normal_of_quotient_image_normal_of_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.sylow_normal_of_quotient_image_normal_of_normal_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_images_ne_of_ne_of_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_sylow_images_ne_of_ne_of_normal_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_sylow_image_not_normal_of_not_normal_of_normal_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_two_subgroup_abelian set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_sylow_normal_of_elementaryAbelian_card_prime_sq_of_actionKernel set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.false_of_quotient_elementaryAbelian_card_prime_sq_of_sylow_not_normal #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_sylow_normal_of_isCyclic_of_actionKernel #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.false_of_quotient_isCyclic_of_sylow_not_normal #assert_only_allowed_axioms IsPGroup.isElementaryAbelian_card_prime_sq_of_card_le_prime_sq_of_not_isCyclic #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_card_le_prime_sq_of_actionCentralizer_inf set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotient_isElementaryAbelian_card_prime_sq_of_actionCentralizer_inf_not_isCyclic -- Ch.7 (Thompson Subgroup): Thm 7.6 ⭐⭐⭐ **FT クリティカル** -- p ≠ 2, G p-solvable, abelian Sylow-2, O_{p'}(G)=1, C_G(Z(P))=P ⇒ J(P) ⊴ G. -- Goldschmidt 帰納 (Steps 1-8) を full discharge; §7B 内に focused axiom 残無し. #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normal_J #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_mulEquiv #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.center_map_subtype_map_of_restrict_injective #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.HasThompsonLocalPComplements.map_mulEquiv #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.HasThompsonLocalPComplements.of_sylow #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasThompsonPComplementHypothesis_iff #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.map_normalizer_le_normalizer_map #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.HasThompsonLocalPComplements.of_subgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normalizerPPart_eq_card_sylow #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.card_le_normalizerPPart_of_isPGroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.exists_isBadNormalizerPSubgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.exists_lexicographically_maximal_badNormalizerPSubgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normalizer_le_normalizer_thompsonJ #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.exists_badNormalizerPSubgroup_of_not_hasThompsonLocalPComplements #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.lt_normalizer_inf_sylow_of_lt #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.maximal_badNormalizer_normalizer_eq_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.maximal_badNormalizer_eq_opCore #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_sylow_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.normalizer_map_quotient_eq_of_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_normalizer_of_maximal_bad_lt #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.maximal_badNormalizer_quotient_hasNormalPComplement #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.isPiSeparable_of_normalPSubgroup_quotient_hasNormalPComplement #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_quotient_of_isPiGroup_compl #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.oPiPrimeCore_eq_bot_of_minimal_counterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.oPiCorePrime_subgroup_eq_bot_of_opCore_le #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_sylow_eq_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.sylow_isCoatom_of_minimal_counterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.centralizer_center_eq_sylow_of_minimal_counterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.quotientComplement_isMulCommutative_of_sylow_isCoatom #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.twoSubgroups_commutative_of_minimal_counterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.thompson_normal_p_complement_of_local_hypotheses #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.center_map_subtype_map_of_coprime_kernel -- Ch.7 (Thompson Subgroup): Thm 7.8 Burnside p^a q^b solvability ⭐⭐⭐ **character-free** -- |G| = p^a q^b ⇒ G solvable. Goldschmidt-Bender-Matsuyama 9-step proof (no character -- theory). Steps 1-9 + Step 3 の faithful-action 分岐まで full discharge; §7D 内に -- sorry / project-axiom 残無し ⇒ 真に unconditional. #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.burnside_p_pow_q_pow -- Ch.3 (Split Extensions): Thm 3.17 Wielandt — H, K, L pairwise coprime index, -- 各 solvable ⇒ G solvable. Burnside 不要 (教科書 p.89 の帰納法そのまま). #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.isSolvable_of_pairwise_coprime_index -- Ch.7 owner の Ch.3 forward dep: Thm 3.15 (converse of Hall E) — 全素数 p の -- p-complement 存在 ⇒ G solvable. Burnside (Thm 7.8) + Wielandt (Thm 3.17) 経由. #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.isSolvable_of_pcomplement_exists -- Ch.3 (Split Extensions): Lemma 3.18 — subnormal π/π' series ⇒ π-separable -- (upper-series 定義への橋; 支配補題 + 拡大閉包 isPiSeparable_of_normal_of_quotient 経由). #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.isPiSeparable_of_subnormal_ladder #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.isPiSeparable_of_normal_of_quotient -- Ch.3 (Split Extensions): Thm 3.22 完全形 — abelian π-Hall ⇒ G/O_{π',π} は π'-群 -- (genuine π-length ≤ 1; Hall-Higman 1.2.3 経由). #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.quotient_oPiPrimePiCore_isPiGroup_compl_of_abelian_pi_hall -- Ch.3 §3E (Ch.4 owner): Thm 3.26 — A-不変共役類 ↔ C_G(A) の類の全単射 (Glauberman 経由). #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aInvariantConjClassesEquiv -- Ch.4 §4B Mann クラスタ: Lem 4.17 計数 / Cor 4.18 / Thm 4.15 / Lem 4.16 (nilpotent 一般化) / -- Thm 4.14 Mann / Thm 4.19 (F(M(G)) class ≤ 4). #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.card_centralizer_lt_card_centralizer_commutator #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.commutator_mannSubgroup_le_center #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.nilpotencyClass_mannSubgroup_le_of_centralizer_eq_self #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.centralizer_eq_self_of_maximal_abelian_normal_of_isNilpotent #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.nilpotencyClass_mannSubgroup_le_of_isNilpotent #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.nilpotencyClass_map_fitting_mannSubgroup_le -- Ch.3 §3E Hartley-Turull クラスタ: Lem 3.32 / Lem 3.33 / Thm 3.31 / Thm 3.34. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.card_inf_fixedSubgroup_of_aInvariant_sylow #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.exists_equivariant_equiv_of_card_fixedPoints_eq #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.exists_abelian_fixedPoint_replacement #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.exists_orbit_card_mul_of_coprime_orbit_card -- Ch.3 (Split Extensions): Thm 3.12 Schur-Zassenhaus conjugacy ⭐⭐⭐ **FT クリティカル** -- N ⊴ G finite, (|N|, |G:N|) = 1, IsSolvable N or IsSolvable (G/N) ⇒ -- any two complements of N are conjugate by an element of N. #assert_only_allowed_axioms Subgroup.IsComplement'.exists_conj_of_coprime -- Ch.3 (Split Extensions): Thm 3.14 Hall-C ⭐⭐⭐ **FT クリティカル** -- G finite solvable, π set of primes, H K both π-Hall ⇒ ∃ g, H^g = K. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.hall_C -- Ch.3 (Split Extensions): Thm 3C.1 Hall-D (Wielandt) — π-subgroup ⊆ Hall π-subgroup. -- G finite solvable, U a π-subgroup ⇒ ∃ Hall π-subgroup H with U ≤ H. (BG Cor 10.9 の前提) #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.hall_D #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.exists_conj_le_of_isComplement'_of_coprime -- Ch.3 (Split Extensions): Hall ∩ normal — H が π-Hall, N ⊴ G ⇒ H ∩ N は N の π-Hall. -- (BG Cor 10.9 で W ∩ M' / W ∩ M_σ が Hall になることに使う; unconditional) #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.isHallSubgroup_subgroupOf_of_normal -- Ch.3 (Split Extensions): Thm 3.36 cyclic extension existence (Phase 4 完成) -- N, m > 0, a ∈ N, σ ∈ Aut(N) で σ a = a かつ σ^m = MulAut.conj a -- ⇒ ∃ G ⊇ N (N ⊴ G), G/N cyclic of order m, generator g, g^m = a, x^g = σ x. #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.cyclic_extension_exists -- Ch.3 (Split Extensions): Thm 3.35 existence 半分 — matching data から拡大同型を構成 -- (uniqueness 半分 cyclic_quotient_extension_unique と合わせて 3.35 完結). #assert_only_allowed_axioms OddOrder.Isaacs.Ch03.cyclic_quotient_extension_iso_exists -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Lemma 3.24(a) Glauberman fixed-point) ⭐ -- A acts on G via auto, A,G finite, (|A|,|G|)=1, A or G solvable. -- A and G act on Ω with compatibility, G transitive ⇒ ∃ A-invariant α ∈ Ω. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.glauberman_fixed_point_exists -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Thm 3.27): A-invariant coset has C_G(A) elem #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aInvariant_coset_mem_centralizer -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Cor 3.28) ⭐⭐⭐ **transitive blocker** -- N ⊴ G A-inv, coprime + solvable, A-fixed coset gN ⇒ ∃ c ∈ C_G(A), cN = gN. -- Ch.4 多数定理 (4.26, 4.28-30, 4.34-36, 4.38) の transitive 前提. #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.coprime_fixedPoints_quotient -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Thm 3.23(a)): A-invariant Sylow ⭐ FT クリティカル #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.exists_aInvariant_sylow -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Cor 3.29): A trivial on G/Φ ⇒ A trivial on G #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aFixed_quotient_frattini -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Cor 3.30 実用形): A faithful + trivial on G/Φ ⇒ trivial #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aFaithful_quotient_frattini -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Lemma 3.24(b) Glauberman conjugacy): C_G(A) で結ぶ #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.glauberman_fixed_points_conj -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Thm 3.23(b)): A-invariant Sylow C_G(A)-conjugate #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aInvariant_sylow_conj -- Ch.4 ForwardFromCh03 (Isaacs Ch.3 §3E Cor 3.25): A-invariant p-subgroup ⊆ A-invariant Sylow ⭐ -- Tier 1 最後の残課題. 極大化 + 3.23(a) + Normalizer-grow-in-p-groups で完成 (2026-05-24). #assert_only_allowed_axioms OddOrder.Isaacs.Ch04.aInvariant_pSubgroup_le_aInvariant_sylow -- RepresentationTheory (Peterfalvi §3 root-bridge): the first orthogonality relation is -- unconditional (discharges the row-orthogonality hypothesis of SecondOrthogonality.lean). #assert_only_allowed_axioms OddOrder.RepresentationTheory.characterTableRowOrthogonality_holds -- RepresentationTheory: `|Irr G| ≤ |ConjClasses G|` (orthonormality ⇒ linear independence). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_irreducibleCharacter_le -- RepresentationTheory: there are finitely many irreducible characters of a finite group. #assert_only_allowed_axioms OddOrder.RepresentationTheory.finite_irreducibleCharacter /-! ### Peterfalvi (1.6) — 誘導と inflation / 誘導と核 **(1.6)(a)** `subsetCharacterKernel_induce_iff`: `A ⊆ Ker θ ↔ A ⊆ Ker Ind_H^G θ`。両半分は以前から 在ったが (順方向 = 任意の類関数、逆方向 = 既約 θ に対する [Is] Lemma 2.21)、**教科書の同値そのもの は述べられていなかった**ので束ねた。 **(1.6)(b)** `induce_eq_compHom_induce_of_inflation`: `θ` が `H/N` 上の `θ₁` の inflation なら `Ind_H^G θ = (Ind_{H/N}^{G/N} θ₁) ∘ mk'`。従来は **自明指標 `θ = 1` の場合だけ**が在り (`induce_one_eq_compHom_induce_one_of_le`、docstring も "(1.6.b)" と引用符付きで自認)、 書籍の一般の `θ` は欠けていた。一般版を証明し、自明指標版はその特殊化に置換した (重複していた ~63 行の証明を削除)。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.subsetCharacterKernel_induce_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_eq_compHom_induce_of_inflation #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_one_eq_compHom_induce_one_of_le /-! ### Peterfalvi (1.7)(c) — 書籍自身の仮説による多重度 1 分解 `exists_induce_eq_sum_distinct_irreducible_of_coprime_card` が書籍 (1.7)(c) そのもの: `T/H` 可換 かつ `gcd(|H|, [T:H]) = 1` ⟹ `Ind_H^L θ = ∑_{φ ∈ S} φ` (相異なる既約指標の 多重度 1 の和)、`|S| = [T:H]`、各 `φ(1) = [L:T]·θ(1)`。 ⚠ **2026-08-07 の番号訂正**: 実体 `exists_extension_induce_eq_sum_distinct_irreducible` は 以前 **(1.7)(b) と誤ラベル**されていた。(1.7)(b) は coprimality を課さず重複度 `e` 付きの `Ind = e·∑ χᵢ` を主張する別物で、**`InducedInvariantConstituent.lean` に landing 済** (2026-08-08 に判明、上記ブロック)。誤ラベルのせいで (1.7)(c) の 番号 grep が 0 hit になり「未形式化」と誤診しかけた。 橋 `coprime_relIndex_orderOf_determinant_mul_of_coprime_card` は書籍の仮説 (`|H|` が inertia 指数 `[T:H]` と互いに素) から既存版が要求する `gcd([T:H], o(det θ)·d) = 1` を出す。既存の橋は `H` が `L` の Hall という強い仮定だった。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.coprime_relIndex_orderOf_determinant_mul_of_coprime_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_induce_eq_sum_distinct_irreducible_of_coprime_card /-! ### Peterfalvi (3.8) — 三分岐の `NC(ψ)` 条項 (issue 0172、2026-08-08) 書籍 (3.8) (p.19) は `w₁ < w₂` かつ `NC(ψ) < 2w₁` の下で 3 分岐を主張し、(b)(c) には **`NC(ψ) = w₁` / `NC(ψ) = w₂`** という**個数の条項**が付く。repo の `S05.sigmaCoeff_trichotomy` は係数形 (「列 `j₀` が定数 `c ≠ 0`、他は 0」) しか述べておらず、 個数条項は §3 監査 (2026-08-07) で **packaging 差として繰延**されていた。その半分を解消: sigmaNC_eq_card_W1_of_column (b) の `NC(ψ) = w₁` (非零係数は列 `Ŵ₁ × {j₀}` ちょうど) sigmaNC_eq_card_W2_of_row (c) の `NC(ψ) = w₂` **残っていた再構成条項 `ψ = a·∑ ω^σ + β` も同日に解消**: exists_sigmaBeta **Hypothesis (3.6) の分解そのもの** — 書籍が *posit* する `ψ = ∑ a_{ij} ω_{ij}^σ + β` (`β ⊥ Im σ`) を定理として証明。 `{ω_{ij}^σ} = {χ_{ij}}` が正規直交 (`chiFam_spec`) なので `β := ψ − ∑ a_{ij} χ_{ij}` は自動的に全 `χ_{rs}` と直交する (Fourier 剰余)。⚠ `ψ` への仮定は不要 — `V` 上消えることと `NC(ψ)` は (3.7)/(3.8) でしか効かない。 exists_sigmaBeta_column (b) の `ψ = a·∑_{0≤i `T/H` 可換 ⟹ `Ind_H^G θ = e·∑_{i=1}^n χᵢ`、`e = e₁`、`n = [T:H]/e²`、 > `χᵢ(1) = [G:T]·e·θ(1)`。 induce_smul_eq_mul_sum_of_invariant `e·Ind_H^K θ = ψ·∑_β Inf(β)` (T レベル分解) induce_invariant_constituent_apply_one_eq 構成要素の次数が共通 (`φ(1) = ψ(1)`) index_eq_card_induce_constituents_mul_sq_of_invariant `[K:H] = n·e²` card_induce_constituents_eq_index_div_sq_of_invariant `n = [T:H]/e²` (**書籍の割り算形**) induce_smul_eq_sum_induce_mul_of_invariant_inertia `e·Ind_N^L θ = ∑_β Ind_T^L(ψ·Inf β)` (**Clifford 対応で全群へ持ち上げた形**) induce_inertia_constituents_apply_one_eq `L` レベルの次数共通性 ⚠ **2026-08-07 の census が (1.7)(b) を「Part I 唯一の未形式化」と誤判定していた**。docstring が `(1.7.b)` と書いており `(1.7)(b)` の番号 grep が 0 hit だったのが原因 (memory `verify-port-state-by-number-not-coq-name` の典型例)。実体は coprimality を使わない一般形として Peterfalvi (12.5) の `H'/H` レベル用に landing 済だった。⟹ **Part I の未形式化はゼロ**。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_smul_eq_mul_sum_of_invariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_invariant_constituent_apply_one_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.index_eq_card_induce_constituents_mul_sq_of_invariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_induce_constituents_eq_index_div_sq_of_invariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_smul_eq_sum_induce_mul_of_invariant_inertia #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_inertia_constituents_apply_one_eq /-! ### Peterfalvi (1.7)(a) — Clifford correspondence, distinctness half `induce_eq_sum_smul_induce_of_inertia_eq` is Peterfalvi (1.7)(a) verbatim: with `H ⊴ G`, `T = I_G(θ)` and `Ind_H^T θ = ∑_{ψ ∈ S} e_ψ • ψ`, each `Ind_T^G ψ` is irreducible, they are **pairwise distinct**, and `Ind_H^G θ = ∑_{ψ ∈ S} e_ψ • Ind_T^G ψ`. No coprimality, `T/H` need not be abelian, the `e_ψ` are unrestricted. The distinctness clause (`eq_of_induce_eq_induce_of_liesOver_of_inertia_eq`) was the one genuinely missing piece of Pf §3 — the irreducibility half already existed, and the `T/H`-abelian distinctness elsewhere is (1.7)(b), not general (a). It is proved by the book's θ-part count: both `ψ, ψ'` occur once in `Res_T χ`, so `⟨Res_H χ, θ⟩ ≥ e + e'`, while the two Clifford degree formulas pin `⟨Res_H χ, θ⟩ = e`, forcing `e' = 0`. `sum_restrictionMultiplicity_mul_le_restrictionMultiplicity` is the family-indexed θ-part bound it runs on (a strict generalization of the pre-existing one-element lemma). All axiom-clean. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_restrictionMultiplicity_mul_le_restrictionMultiplicity #assert_only_allowed_axioms OddOrder.RepresentationTheory.eq_of_induce_eq_induce_of_liesOver_of_inertia_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_eq_sum_smul_induce_of_inertia_eq -- RepresentationTheory (Singer, case-(9.7.b) entry): a faithful irreducible abelian action on an -- `F_p`-module of order `p^q` is realized by multiplication on `GF(p^q)`, with no order -- assumption on the acting group. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_galoisField_repr_of_faithful_irreducible -- RepresentationTheory (Singer, commutativity as a hypothesis): an abelian group acting -- faithfully + irreducibly on a finite 𝔽_p-module is cyclic with order dividing |M| - 1. -- This is the `CommGroup`-instance-free Singer mechanism (Peterfalvi (12.12) / (14.2)(a) core), -- realized via the quotient field `𝔽_p[E] ⧸ I`; it accepts BG Thm 2.6(a)'s commutativity output. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isCyclic_and_card_dvd_of_faithful_irreducible_comm #assert_only_allowed_axioms OddOrder.RepresentationTheory.mul_comm_monoidAlgebra_of_comm -- Peterfalvi (9.7)(b) coprimality core: a finite abelian group acting faithfully + irreducibly on -- a finite 𝔽_p-module, together with a fixed-point-free additive automorphism, has order coprime to -- p - 1 (the 𝔽_p-scalars `𝔽ₚ*` meet the image trivially in the cyclic Singer units). The cyclic -- helper `coprime_card_of_inf_eq_bot_isCyclic` converts trivial intersection to coprime orders. #assert_only_allowed_axioms OddOrder.RepresentationTheory.coprime_card_of_inf_eq_bot_isCyclic #assert_only_allowed_axioms OddOrder.RepresentationTheory.coprime_card_sub_one_of_faithful_irreducible_comm_fpf -- Peterfalvi (12.12) irreducible-case core: an odd group acting faithfully + irreducibly on a -- 2-dimensional 𝔽_p-space is cyclic with order dividing |V| - 1 = p² - 1 (BG Thm 2.6(a) + -- the commutativity-free Singer mechanism). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isCyclic_and_card_dvd_of_odd_two_dim_irreducible -- Peterfalvi (12.12) Case-A core: a group acting faithfully on a 1-dimensional 𝔽_p-space is -- cyclic with order dividing p - 1 (End of a line ≅ 𝔽_p, so E ↪ (ℤ/p)ˣ). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isCyclic_and_card_dvd_of_faithful_one_dim -- Peterfalvi (12.12) rep-theory core (combined): an odd FPF group acting on an 𝔽_p-space of -- dim ≤ 2 is cyclic with |E| ∣ |V| - 1 (dim 1 / dim-2-reducible ⟹ Case A on the invariant line; -- dim-2-irreducible ⟹ Case B). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isCyclic_and_card_dvd_of_fpf_dim_le_two -- Peterfalvi (12.12) rep-theory bridge (MulDistribMulAction form): an odd FPF group acting on an -- elementary abelian p-group of 𝔽_p-dim ≤ 2 is cyclic with |E| ∣ |M| - 1 (lifts the dim≤2 core -- from `Representation` to `MulDistribMulAction` via `Representation.ofDistribMulAction`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isCyclic_and_card_dvd_of_fpf_mulDistribMulAction -- Peterfalvi (12.12) rep-theory bridge (conjugation form): `E ≤ N_G(T)` acting FPF by conjugation -- on an elementary abelian `T` of order `p` or `p²` (|E| odd, coprime to p) is cyclic with -- |E| ∣ p-1 or p²-1. The §8-free structural core (12.12) consumes (before the p+1 refinement). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isCyclic_and_card_dvd_of_fpf_conj_elemAbelian -- Peterfalvi (12.9) centralizer core: a noncyclic abelian group acting coprimely on a finite group -- with nontrivial abelianization has a nonidentity element whose fixed subgroup escapes [K, K] -- (BG Prop 1.16(1) on K/[K,K] + the coprime fixed-point lifting, Isaacs Cor 3.28). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_ne_one_actionFixedBy_not_le_commutator -- Peterfalvi (12.9) centralizer core, conjugation/ambient form: a noncyclic abelian `A ≤ G` -- normalizing a coprime `K` with `⁅K, K⁆ ≠ K` has `x ∈ A^#` with `C_G(x) ⊓ K ⊄ ⁅K, K⁆`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_mem_centralizer_inf_not_le_commutator -- Peterfalvi (12.9) order-p centralizer witness (the §8-free heart of (12.9)): from the -- counterexample data (P₀ abelian, coprime to K = M_F, normalizing K, K not perfect) there is -- an order-p element x ∈ Ω₁(P₀)^# with C_K(x) ⊄ K' (centralizer core + order-p power). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_orderP_centralizer_witness -- General 5-type HasPeterfalviType conjugation-invariance (issue 2015): a maximal subgroup's -- Peterfalvi type and its `M_s = mainSubgroup` are preserved under `MulAut G`. Unblocks the -- Sylow-conjugation step of Pf (8.17.a) `exists_second_maximal`. #assert_only_allowed_axioms OddOrder.GroupTheory.hasPeterfalviType_pointwise_smul #assert_only_allowed_axioms OddOrder.GroupTheory.mainSubgroup_pointwise_smul -- Hall ⟹ contains Sylow: a `p`-Hall subgroup with `p ∣ |H|` contains a Sylow `p`-subgroup of `G` -- (`v_p(|H|) = v_p(|G|)` since `p ∤ [G:H]`; `Sylow.ofCard`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_sylow_le_of_hall -- Pf (12.1)/(12.2.b): the genuine type-I family `S = {Ind_H^L θ}` (`H = L_F`) is closed under -- complex conjugation (`Ind_H^L θ̄ ∈ S`), the `χ̄ ∈ S` input to (12.2.b). Axiom-clean. #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.Sset_closedUnderConjugate -- Pf §3 (1.4) reconciliation core: difference-uniqueness for signed irreducible-character -- differences. `s • (a − b) = t • (c − d)` (a ≠ b, c ≠ d, s ≠ 0) forces the unordered pairs to -- agree with the sign tracking orientation (a=c,b=d,s=t or a=d,b=c,s=−t). Orthonormality + -- left-linearity of `ClassFunction.inner`. Reconciles per-φ `R₁(φ)` with the global (1.4) family -- in (12.4) pin (a) `constituent_diff_tau_mem_span`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.irreducibleCharacter_signed_difference_uniqueness -- Pf (12.4) pin (a) piece 3: the underlying irreducibles `μ_φ, ν_φ` of `R₁(φ)` lie in `ℤ[R(χ)]` -- (`R₁(φ).imageSet = {ε·μ, −ε·ν} ⊆ R(χ)`, `ε = ±1`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.R1cdi_muNu_mem_span_Rset -- Pf (12.4) pin (a) piece 1 (global (1.4) coherence): the conjugate-closed constituent set is a -- single coherent family under the Dade isometry `τ` — uniform sign `ε` + injection `μ` into `Irr G` -- with `τ(α−β)=ε·(μ α−μ β)`. `isometry_difference_pair_structure` on the constant-degree family. #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_uniform_image_of_constituents -- Pf (12.4) pin (a): `(φ₁−φ₂)^τ ∈ ℤ[R(χ)]` for constituents `φ₁,φ₂ ∈ S(χ)`. Reconciles the global -- (1.4) family with the per-φ blocks `R₁(φ)` via difference-uniqueness. Genuine; no longer sorried. #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.constituent_diff_tau_mem_span -- Pf (1.10.b) cyclotomic congruence (field form): in a `p`-th cyclotomic field, an integer `n` with -- `n = (ζ-1)·a` (`a` integral) has `p ∣ n` (norm argument `N(ζ-1)=p`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.int_dvd_of_zeta_sub_one_dvd -- Pf (1.10.b) **ℂ-form** (global algebraic integers, the FT-usable form): for `p` prime, `ε` a -- primitive `p`-th root, an integer `n` with `(n:ℂ) = (1-ε)·z` (`z` any algebraic integer) has -- `p ∣ n`. Via `∏(1-ε^k)=p` + each `(1-ε^k)∣(1-ε)∣n` ⟹ `p∣n^{p-1}`, descend to ℤ. Used by -- (12.16)/(13.5) directly (no specific field needed; matches Coq `Z[η]` formulation). #assert_only_allowed_axioms OddOrder.RepresentationTheory.int_dvd_of_one_sub_primRoot_dvd -- (1.10.b) supporting: `1-ε^k` and `1-ε` are associates (`1-ε = (1-ε^k)·w`, `w` integral). #assert_only_allowed_axioms OddOrder.RepresentationTheory.one_sub_pow_dvd_one_sub -- (1.10.b) supporting: a rational integer `a` with `(a:ℂ)=(b:ℂ)·W` (`W` integral, `b≠0`) has `b∣a`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.int_dvd_of_intCast_eq_mul_isIntegral -- Pf (1.10.a) linear-char core: for a linear character `α` of a finite group, `x^p=1` element `x`, -- `α(xy)-α(y) = (1-ε)·z` with `z` an algebraic integer (`α(x)=ε^k`, `α(y)` a root of unity). #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_integral_linearChar_apply_sub -- Pf (1.10.a) full: for a virtual character `χ ∈ ℤ[Irr A]` of a finite ABELIAN group `A`, an -- `x^p=1` element `x`, `χ(xy)-χ(y) = (1-ε)·z` with `z` an algebraic integer (submodule framing over -- the linear-char core + `exists_linearIrreducibleCharacter_eq_of_isMulCommutative`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_integral_zirr_apply_sub -- Pf (1.10.a) G-form: for a virtual character `ψ ∈ ℤ[Irr G]` of ANY finite group, `x^p=1` and `y` -- COMMUTING with `x`, `ψ(xy)-ψ(y) = (1-ε)·z`. Reduce to the abelian subgroup `A=⟨x,y⟩` via -- `restrict_mem_ZIrr` + `exists_integral_zirr_apply_sub`. Directly usable by (12.16)/(13.5). #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_integral_apply_sub_of_commute -- Pf (1.10) composed (a)+(b) (issue 0106): same setting, and the difference `ψ(xy)-ψ(y)` happens to -- be a rational integer `n` ⟹ `p ∣ n`. The landing form every consumer previously re-glued. #assert_only_allowed_axioms OddOrder.RepresentationTheory.int_dvd_of_apply_sub_of_commute -- [Isaacs] Lemma 3.14 / Pf (13.9.b) ANT core: an algebraic integer `α : ℂ` fixed by every ring -- automorphism `σ : ℂ ≃+* ℂ` is a rational integer (works inside the splitting field `ℚ(rootSet)`, -- Galois correspondence + `ℤ` integrally closed in `ℚ`). Feeds the field-norm-`≥ 1` step of (13.9.b). #assert_only_allowed_axioms OddOrder.Algebra.exists_int_of_isIntegral_of_forall_complexRingEquiv_fixed -- [Isaacs] 3.14 support: every `σ : ℂ ≃+* ℂ` acts as a uniform power `(· ^ k)` (`k` coprime `n`) on -- the `n`-th roots of unity — the converse of `exists_complexRingEquiv_pow_of_rootsOfUnity`. #assert_only_allowed_axioms OddOrder.Algebra.exists_pow_of_complexRingEquiv -- [Isaacs] 3.14 character bridge: for a cyclic-closed `Finset A` (closed under `x ↦ x^k`, `k` coprime -- `|G|`), `∏_{x∈A} χ(x)` is a rational integer (algebraic integer fixed by all `σ`, via (1.9) -- `σ(χ x)=χ(x^k)` + reindex). Its nowhere-zero form gives `∏_{x∈A} ‖χ(x)‖² ≥ 1` (field-norm `≥ 1`). #assert_only_allowed_axioms OddOrder.Algebra.exists_int_prod_character_of_cyclicClosed #assert_only_allowed_axioms OddOrder.Algebra.one_le_prod_normSq_character_of_cyclicClosed -- (13.10) averaging form (issue 0106): `(1/|G|)·∑_{x∈A}‖φ(x)‖²` over a cyclic-closed `Finset` is a -- nonnegative rational (numerator ∈ ℕ via the sum form of [Isaacs] 3.14 / Pf (13.9.b)). #assert_only_allowed_axioms OddOrder.Algebra.exists_rat_inv_card_mul_sum_normSq_of_mem_ZIrr_of_cyclicClosed -- Pf (12.4) pin (b) step 1: general TI-induction self-value — for a TI subset `A` rel. `L` and an -- `A`-supported class function `α`, `Ind_L^G α` agrees with `α` on `A`. Generalizes the TI-cyclic -- `induce_apply_eq_self_of_mem_V` to arbitrary TI subsets (the value-half of "Dade map = Ind"). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.induce_apply_eq_self_of_mem_tiSubset -- Pf (12.4) pin (b) step 2: for a trivial-stabilizer Dade hypothesis (`∀ a, H(a)=⊥`), induction -- `Ind_L^G` IS the Dade map (generalizes `TICyclicHypothesis.isDadeMap_inducedDadeMap`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.isDadeMap_induce_of_forall_H_eq_bot -- Pf (12.4) pin (b) step 3: on functions supported in a trivial-`H` sub-support `A₁ ⊆ A`, the -- abstract Dade map of `hyp` equals `Ind_L^G` (restrict to `A₁` + step 2 + `IsDadeMap.unique`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.dadeMap_eq_induce_of_supported_on_trivial_H -- Pf (12.4) pin (b) type-I bridge: for a type-I maximal `L`, on a function supported in a trivial-`H` -- sub-support `A₁ ⊆ A(L)`, the type-I Dade isometry `τ` acts as `Ind_L^G` (instantiates step 3 at -- `hyp.tau` via `dadeIntegralCharacterMap_apply_of_support`). Axiom-clean (parameterized by A₁). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.typeI_tau_eq_induce_of_supported_trivial_H -- (12.16) `π = ∅` case): a type-F/I maximal whose complement `U` is a Z-group (all Sylow cyclic) -- is Frobenius with kernel `M_F`, via `IsZGroup.exponent_eq_card` + `typeF_frobenius_of_card_eq_exponent`. -- **Peterfalvi (8.2.b)** (issue 0172 §8 audit): the book states this as a *biconditional* — `M` is -- Frobenius with kernel `M_F` **iff** the Sylow subgroups of `U` are cyclic (p. 44). Only the `⟸` -- half existed; `typeF_frobenius_iff_isZGroup` adds the `⟹` half (an odd-order Frobenius complement -- is a Z-group, [BG] Prop 3.9) and packages the equivalence. `typeF_frobenius_of_isZGroup` is the -- `⟸` half in general form (no oddness), now living in §8 with the other (8.2) lemmas — the former -- S14 duplicate of it was removed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeF_frobenius_of_isZGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeF_frobenius_iff_isZGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.typeI_frobenius_of_isZGroup_complement -- Pf (12.8) minimal-counterexample existence: a nonempty prime set `π` yields a -- `CounterexampleHypothesis` at its least element `p = Nat.find` (the `InPi` witness + `Nat.find_min'` -- minimality). The §8-free well-ordering step opening the minimal-counterexample analysis of (12.7). #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.exists_counterexampleHypothesis -- RepresentationTheory: completeness of irreducible characters — `f ⊥ Irr G ⇒ f = 0` -- (regular representation + Maschke + Schur). #assert_only_allowed_axioms OddOrder.RepresentationTheory.classFunction_eq_zero_of_orthogonal -- RepresentationTheory: `|Irr G| = |ConjClasses G|` (completeness ⇒ the reverse inequality). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_irreducibleCharacter_eq -- RepresentationTheory: the irreducible characters span the class functions. #assert_only_allowed_axioms OddOrder.RepresentationTheory.span_irreducibleCharacter_eq_top #assert_only_allowed_axioms OddOrder.RepresentationTheory.irreducibleCharacter_apply_inv #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_inner_irreducibleCharacter_smul -- RepresentationTheory (Peterfalvi §3, [Is] Thm 2.18/6.10): second (column) orthogonality is -- unconditional — the `CharacterTableIndexing` and weighted-row-orthogonality inputs of the -- matrix proof core are discharged for any `[Finite G]` (issue 0027 closed unconditionally). #assert_only_allowed_axioms OddOrder.RepresentationTheory.column_orthogonality_diagonal #assert_only_allowed_axioms OddOrder.RepresentationTheory.column_orthogonality_conjugate #assert_only_allowed_axioms OddOrder.RepresentationTheory.column_orthogonality_not_conjugate -- RepresentationTheory: conjugacy-class representative/cardinality adapters used by -- class-sum character formulae. #assert_only_allowed_axioms OddOrder.RepresentationTheory.conjClass_mk_out #assert_only_allowed_axioms OddOrder.RepresentationTheory.conjClass_carrier_ncard_eq_natCard -- RepresentationTheory: class-sum coefficient character formula used in BG App C. #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_classSumCoeff_mul_irreducibleCharacter_apply #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_mul_centralizer_card_eq_sum_irreducibleCharacter -- RepresentationTheory (Peterfalvi (1.5.d), Burnside degree-sum): the diagonal column relation -- at `g = 1` gives `∑_{χ ∈ Irr G} χ(1)² = |G|` and, restricted to nontrivial characters, -- `∑_{χ ≠ 1} χ(1)² = |G| - 1` (issue 0044 building block for §9 (7.8)). #assert_only_allowed_axioms OddOrder.RepresentationTheory.sumIrreducibleDegreeSq #assert_only_allowed_axioms OddOrder.RepresentationTheory.sumNontrivialIrreducibleDegreeSq -- RepresentationTheory (Peterfalvi (6.7.1), orbit-counting primitive): a finite group acting freely -- (all stabilizers trivial / no non-identity element fixes a point) on a finite set divides its -- cardinality. Free-action decomposition `β ≃ (β/Γ) × Γ`. This is the missing counting primitive -- behind the fixed-point-free `P`-action of (6.7.1). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_of_stabilizer_eq_bot #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_of_no_nontrivial_fixed -- RepresentationTheory (Peterfalvi (6.7.1), orbit-counting half): a subgroup `P ≤ G` acting -- fixed-point-freely by conjugation on the pair set `Ω = {(u,v) ∈ C_i × C_j ∣ u·v ∈ C_s}` has -- `|P| ∣ a_{ijs}|C_s|` (= `classSumCoeff Ci Cj Cs`). The residual content of (6.7.1) is the -- group-theoretic verification of fixed-point-freeness (TI-subset + Sylow-in-`L`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_classSumCoeff_of_fixedPointFree -- RepresentationTheory (Peterfalvi (6.7.1), p-element step): a p-element of `N_G(P)` lies in the -- Sylow p-subgroup `P` (P is normal, hence the unique Sylow p in its normalizer). #assert_only_allowed_axioms OddOrder.RepresentationTheory.mem_sylow_of_mem_normalizer_of_isPGroup -- RepresentationTheory (Peterfalvi (6.7.1), fixed-point-free hypothesis): under (6.7)'s setup -- (P Sylow p in L = N_G(P), P^# TI-subset, Z ≤ P normal in L; C_i, C_j meet Z^#, C_s ∩ Z = ∅), -- `P` acts fixed-point-freely by conjugation on `Ω = {(u,v) ∈ C_i × C_j ∣ u·v ∈ C_s}`. Combined -- with `card_dvd_classSumCoeff_of_fixedPointFree` this gives the full (6.7.1) `|P| ∣ a_{ijs}|C_s|`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.fixedPointFree_classPair_of_isTISubset -- RepresentationTheory (Peterfalvi §3 (1.1), [Is] Thm 6.32): Brauer's permutation lemma is -- unconditional — `# real Irr = # real ConjClasses` for any `[Finite G]`. The conjugation -- involution `χ ↦ χ̄` is discharged via dual-representation irreducibility (issue 0022 closed). #assert_only_allowed_axioms OddOrder.RepresentationTheory.brauer_permutation_lemma' -- RepresentationTheory (Peterfalvi §3 (1.1), pointwise): in a finite group of odd order a -- nontrivial irreducible character is not real (`χ̄ ≠ χ`). Unconditional parity core, the -- common unblocker for §3 (1.1) and §9 (7.9). #assert_only_allowed_axioms OddOrder.RepresentationTheory.not_isReal_of_ne_trivial_of_odd_card' -- Peterfalvi §3 (1.1), conjugate-difference (nondegeneracy) form for §7: in a finite group of -- odd order, the conjugate difference `χ - χ̄` of a nontrivial irreducible character is nonzero. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.conjugateDifference_ne_zero_of_ne_trivial_of_odd_card -- Peterfalvi §3 (1.6.a), forward direction: for `A ⊴ G` with `A ≤ H`, if `A ⊆ Ker θ` (as a -- subgroup of `H`) then `A ⊆ Ker (Ind_H^G θ)`. Elementary from the value formula -- `induce_apply_of_mem_normal_of_const`; the converse is [Is] Lemma 2.21 (not formalised). -- (6.6) uses the contrapositive: `Z ⊄ Ker (Ind_H^G θ)` ⟹ `Z ⊄ Ker θ`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.subsetCharacterKernel_induce_of_subgroupOf -- Peterfalvi §3 (1.6.a), contrapositive form (the (6.6) `X`-characterization consumes this): -- `Z ⊄ Ker (Ind_H^G θ)` ⟹ `Z ⊄ Ker θ`. Literal contrapositive of the forward (1.6.a) lemma. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.not_subsetCharacterKernel_of_not_induce -- Peterfalvi §3 (6.6) `X`-characterization, constituent-existence half (mmd 04.8 L76): every -- `χ ∈ Irr G` is a constituent of `Ind_H^G θ` for some `θ ∈ Irr H` (`⟨Ind_H^G θ, χ⟩ ≠ 0`). -- Frobenius reciprocity via the Clifford `LiesOver` bridge (`exists_liesOver` + -- `inner_induce_ne_zero_iff_liesOver`); unconditional, no reference to a center `Z`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.exists_inner_induce_ne_zero -- Peterfalvi §3 (6.6) G2.2, the keystone-driven residual: a constituent inherits a kernel -- containment. `‖χ(g)‖ ≤ χ(1)` (norm_irreducibleCharacter_le_natDegree, via the keystone bound) -- + the equality case give: if `(∑ mᵢ χᵢ)(g) = (∑ mᵢ χᵢ)(1)` then every `χᵢ` (mᵢ ≠ 0) has -- `g ∈ ker χᵢ`. Closes the `needs-infra` piece flagged in notes/peterfalvi/s03. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.norm_irreducibleCharacter_le_natDegree #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.irreducibleCharacter_mem_characterKernel_of_natSum_value_eq -- Peterfalvi §3 (1.1), set form: in a finite group of odd order the set of nontrivial irreducible -- characters contains no real class function. Discharges the `no_real_characters` field of the §7 -- coherence hypothesis (Hypothesis (5.2)(a)) directly from oddness. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.hasNoRealCharacters_nontrivialIrreducibleClassFunctions -- Peterfalvi §3 (1.2): if `H ⊴ G`, `χ ∈ Irr G` has `H ⊄ Ker χ`, and `C_H(g) = 1`, then `χ(g) = 0`. -- Second (column) orthogonality on `G` and on `G ⧸ H` + the value-preserving inflation bijection -- `Irr(G ⧸ H) ≃ {χ | H ⊆ ker χ}` + the centralizer embedding `|C_G(g)| ≤ |C_{G ⧸ H}(ḡ)|`; the -- resulting squeeze on `∑ |χ(g)|²` forces the `H ⊄ ker` terms to vanish. Feeds Peterfalvi (4.7). #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.irreducibleCharacter_apply_eq_zero_of_centralizerInSubgroup_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.card_centralizer_le_card_centralizer_quotient -- Peterfalvi (4.7), support form (core + induced): for `χ ∈ Irr K` with `H ⊄ Ker χ` (`H ⊴ K` the -- (4.6.c) normal subgroup), `Supp χ ⊆ A ∪ {1}` and `Supp (Ind_K^L χ) ⊆ A ∪ {1}`. (1.2) applied to -- `χ` on `K` + the (4.6.d) `A`-cover (core), then `L`-conjugacy invariance of `A` (induced). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.mem_A_of_apply_ne_zero_of_not_subset_characterKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.apply_eq_zero_of_not_mem_union_of_not_subset_characterKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.induce_apply_eq_zero_of_not_mem_union_of_not_subset_characterKernel -- Character-kernel translation invariance: `g ∈ Ker χ ⟹ χ(x·g) = χ(x)` (diagonalization keystone -- `rep_eq_id_of_character_eq_one` forces `ρ g = id`). Feeds the Peterfalvi (4.7) `j ≥ 1` kernel -- step (and any future use of kernel elements inside character values). #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_mul_eq_of_mem_characterKernel -- Peterfalvi (4.7), `j ≥ 1` half: `H ⊄ Ker χ_j` for a nontrivial column `χ₂ ≠ 1` (the `ω_{0j}` -- argument via the (4.3.c) value identity on `V = W − W₂` + kernel translation invariance), and -- the resulting supports `Supp χ_j, Supp μ_j ⊆ A ∪ {1}`. Completes Theorem (4.7); feeds the -- (5.3.b) R-producer for the reducible certain-type characters (the (6.8.3) break-pair input). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.Hypothesis.not_subset_characterKernel_chiRestrict_of_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.not_subset_characterKernel_chiRestrict #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.chiRestrict_apply_eq_zero_of_not_mem_union #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.induce_chiRestrict_apply_eq_zero_of_not_mem_union -- Peterfalvi (4.8), step (1): equal-degree certain-type characters share their column sign -- (`μ_{ij}(1) = μ_{ik}(1) ⟹ δ_j = δ_k`). Via the (4.3.d) degree congruence `μ(1) ≡ δ (mod w₁)` -- twice and `w₁ ≥ 3` (`W₁ ≠ 1` of odd order): `w₁ ∣ (δ_j − δ_k)` with `|δ_j − δ_k| ≤ 2 < w₁`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_sign_eq_of_degree_eq -- Peterfalvi (4.8), step (2): equal-degree certain-type characters agree on `W₁` -- (`certainType_apply_eq_of_mem_W1`), via the column-independence of `ω` on `W₁` -- (`chiColumn_apply_of_mem_W1`: the `W₂`-projection `wSnd` is trivial on `W₁`) + step (1). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.chiColumn_apply_of_mem_W1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_apply_eq_of_mem_W1 -- Peterfalvi (4.8), conclusion (1): `Supp(μ_{ij} − μ_{ik}) ⊆ A₀ = A ∪ V^L`. `z = 1` excluded by -- equal degree; `z ∈ K` lands in `A` via (4.7) (`μ_{ij}|_K = μ_{ik}|_K = χ` off `A ∪ {1}`); and -- `z ∈ L − K` lands in `V^L` via (2.1) (`mem_compl_conj_into_W`: `z` conjugate to `xy ∈ W − W₂`, -- whose image lies in `tic.V = ↑W \ ↑W₂`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_supp_subset_A0 -- Peterfalvi (4.8) conclusion (3) foundation: the `σ_G` image `ω_{ij}^σ ∈ CF(G)` (`ticVdiff`, -- the `V = W − (W₁ ∪ W₂)` TI-cyclic), its value on `V`, and the certain-type Dade isometry `τ` -- preserving values on `A₀`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_apply_of_mem_V #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.tau_toDadeMap_apply_of_mem -- Peterfalvi (4.8), step (4): the two sides agree on `V` (`(μ_{ij} − μ_{ik})^τ(v) = -- δ_j(ω_{ij}^σ(v) − ω_{ik}^σ(v))` for `v ∈ V`), the `hψ` input to the (3.8) trichotomy endgame. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_apply_eq_of_mem_V -- Peterfalvi (4.8), steps (5)/(6) inputs to the (3.8) trichotomy endgame: `‖φ‖² = 2` (τ isometry + -- (4.1) distinctness), `NC(φ) ≤ 2` (norm-2 ⟹ two constituents, each `≤ 1` against the χ-family), -- and `ω_{ij}^σ = χ_{P_{ij}}` (the σ-image is a χ-family member, identifying the δ-term positions). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_inner_self #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.sigmaNC_dade_le_two #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_eq_chiFam -- Peterfalvi (4.8), step (7) input: the σ-coefficients of φ lie in `{0, ±1}` (norm-2 ⟹ two -- constituents `ε_α·α + ε_β·β`, each χ_{pq} matching at most one). The `|·| ≤ 1` bound (beyond -- NC ≤ 2) excludes the `w₂ = 3` row case in the trichotomy endgame. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.sigmaCoeff_dade_eq_zero_or_one -- Peterfalvi (4.8), assembly: the σ-coefficient grid of `ψ = φ − δ_j(ω_ij^σ − ω_ik^σ)` is -- `⟨φ, χ_pq⟩ − δ_j([P_ij = pq] − [P_ik = pq])` (the δ-part hits exactly the two positions P_ij, P_ik). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.sigmaCoeff_psi_eq -- Peterfalvi (4.8), conclusion (3) from trichotomy case (a): if every σ-coefficient of ψ vanishes -- then ψ = 0, i.e. (μ_ij − μ_ik)^τ = δ_j(ω_ij^σ − ω_ik^σ). ⟨ψ,ω_ij^σ⟩=0 pins ⟨φ,ω_ij^σ⟩=δ_j, -- ⟨φ,ω_ik^σ⟩=−δ_j; then ‖ψ‖² = ⟨ψ,φ⟩ = 2 − 2 = 0 by positive-definiteness. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_eq_of_all_sigmaCoeff_zero -- Peterfalvi (4.8), conclusion (3) — the FT-critical isometry identity: -- (μ_ij − μ_ik)^τ = δ_j(ω_ij^σ − ω_ik^σ). ψ vanishes on V (step 4) ⟹ separable σ-grid with -- NC ≤ 4 < 2·min(w₁,w₂); the (3.8) trichotomy (in the orientation given by coprimality of w₁,w₂) -- leaves only all-zero (constant column/row excluded by grid_no_constant_column/row), whence ψ = 0. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_eq -- Peterfalvi (4.9)(b), summed isometry: the Dade map is additive over finite sums of supported -- class functions (`tau_toDadeMap_sum`, via the (2.5) uniqueness `IsDadeMap.unique` reducing the -- abstract `τ` to the genuine `ℂ`-linear `dadeLinearMap`); summing (4.8) conclusion 3 over the rows -- `0 ≤ i < w₁` gives `(μ_j − μ_k)^τ = δ_j ∑_i (ω_ij^σ − ω_ik^σ)`, the (4.9)(b) τ-agreement on Z[T,A]. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.tau_toDadeMap_sum #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_sum_eq -- Peterfalvi (4.9) degree bridge: every `μ_ij` in column `j` shares the degree `μ_0j(1)` -- (`columnFamily_mu_apply_one_eq`, from `(μ_ij − μ_0j)(1) = 0`), so the column-sum degree equality -- `μ_j(1) = μ_k(1)` (`= ∑_i μ_ij(1) = ∑_i μ_ik(1)`) gives the per-row equalities -- (`forall_columnFamily_mu_apply_one_eq_of_sum_eq`), restating the summed isometry under the `T` -- membership condition (`certainType_diff_dade_sum_eq_of_degree`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.columnFamily_mu_apply_one_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.forall_columnFamily_mu_apply_one_eq_of_sum_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_diff_dade_sum_eq_of_degree -- Peterfalvi (4.9)(b), the isometry property: the σ-image column sums `∑_i ω_ij^σ` (in CF(G)) and -- the certain-type column sums `μ_j = ∑_i μ_ij` (in CF(L)) carry the same Gram matrix `w₁·δ_jk` -- (`certainTypeOmegaSigma_sum_inner` / `columnFamily_mu_sum_inner`, both via per-element -- orthonormality: `certainTypeOmegaSigma_inner` from σ-isometry + ω-orthonormality and grid-index -- distinctness `omegaProdCharTic_eq_iff`; the μ-side from `columnFamily` injectivity/cross-column -- distinctness). Hence `μ_j ↦ δ_k ∑_i ω_ij^σ` is an isometry (δ_k² = 1), which is (4.9)(b). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.omegaProdCharTic_eq_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_sum_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.columnFamily_mu_sum_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_omega_sum_isometry -- Peterfalvi (4.9)(a) conjugation foundation: the complex conjugate of a linear character `ω(χ)` is -- `ω(χ⁻¹)` (`galoisMap_conj_omega`; values are roots of unity, where `z̄ = z⁻¹`), so the conjugate of -- a certain-type σ-image `ω_ij^σ` is the σ-image of the inverse grid character `ω((P_ij)⁻¹)` -- (`certainTypeOmegaSigma_conj`, via the (3.9) Galois commutation `sigma_mapRingEquiv_comm`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.galoisMap_conj_omega #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_conj -- (4.9)(a) grid-index conjugation: the inverse grid character is the grid character at the conjugate -- index (`omegaProdChar_inv` coordinatewise, `omegaProdCharTic_inv` with column `χ₂⁻¹`, row `rowInv`), -- so the conjugate of a σ-image is the σ-image at the conjugate index `(ω_ij^σ)̄ = ω_{i'j'}^σ` -- (`certainTypeOmegaSigma_conj_eq`). This is the σ-side of Peterfalvi's `ω̄_ij = ω_{i'j'}`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.omegaProdChar_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.omegaProdCharTic_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeOmegaSigma_conj_eq -- (4.9)(a) L-side conjugation closure: the column source character conjugates to the conjugate-index -- character (`chiColumn_conj`: χ_{ij}̄ = χ_{i'j'}), and the L-side σ-isometry `σ_L` intertwines it -- (`sigma_chiColumn_conj`: σ_L(ω_ij)̄ = σ_L(ω_{i'j'})). With (4.3.b) `sigma_chiColumn_eq_certainType` -- (σ_L(ω_ij) = δ_j μ_ij) this gives the L-character bridge δ_j μ_ij̄ = δ_{j'} μ_{i'j'} of (4.9)(a). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.chiColumn_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.sigma_chiColumn_conj -- (4.9)(a) the L-character conjugation bridge δ_j·μ_{ij}̄ = δ_{j'}·μ_{i'j'} (`certainType_mu_conj_bridge`): -- complex conjugation of (4.3.b) `σ_L(ω_{ij}) = δ_j·μ_{ij}`, using `sigma_chiColumn_conj` + (4.3.b) on -- the left and `mapRingEquiv_zsmul` on the right (δ_j ∈ ℤ). The heart of (4.9)(a). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_mu_conj_bridge -- (4.9)(a) `μ_ij̄ = μ_{i'j'}` (`certainType_mu_conj_eq`): pairing the bridge δ_j·μ_ij̄ = δ_{j'}·μ_{i'j'} -- with μ_{i'j'} gives δ_j·⟨μ_ij̄, μ_{i'j'}⟩ = δ_{j'} ≠ 0, so the (0/1) inner product of the two -- irreducibles is 1, forcing equality. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_mu_conj_eq -- (4.9)(a) `μ̄_j = μ_{j'}` (`certainType_columnSum_conj`): the conjugate of the column sum -- `μ_j = ∑_i μ_ij` is the conjugate column `μ_{j'} = ∑_i μ_{ij'}` (`j' = χ₂⁻¹`). mapRingEquiv conj is -- additive, each `μ_ij̄ = μ_{i'j'}`, and `i ↦ rowInv i` is a permutation (`rowInvEquiv`, involution). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_columnSum_conj -- (4.9)(a) the conjugate column is a new certain-type character: `χ₂⁻¹ ≠ χ₂` (`column_inv_ne_self`, -- the column character group has odd order `= |W₂|`, no involutions), so `μ̄_k = μ_{k'}` is orthogonal -- to `μ_k` (`columnFamily_mu_sum_inner`), whence `μ̄_k ≠ μ_k` (`certainType_columnSum_conj_ne`) — the -- nonvanishing `0 ≠ μ̄_k − μ_k ∈ Z[T,A]` input to the (4.9)(a) coherence. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.column_inv_ne_self #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainType_columnSum_conj_ne -- Peterfalvi (2.1): the coprime-coset structure lemma. `g` normalizes `H` with `(o(g), |H|) = 1` -- ⟹ every element of `Hg` is `H`-conjugate to an element of `C_H(g)·g`. Proof: a uniform Bézout -- exponent `e` (`≡1 mod o(g)`, `≡0 mod |H|`) collapses `(w·g)^e = g` for `w ∈ C_H(g)`, making the -- conjugation map `(H ⧸ C_H(g)) × C_H(g) → Hg` injective; equal cardinality forces surjectivity. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.coset_conj_into_centralizer_coset -- (2.1) applied to `L = K ⋊ W₁`: every `z ∈ L − K` is `L`-conjugate to `x·y` (`x ∈ W₁^#`, `y ∈ W₂`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.Hypothesis.mem_compl_conj_into_W -- RepresentationTheory ⭐ **KEYSTONE** (Peterfalvi §2 / [Is] Thm 2.8 系): the character of *any* -- finite-dim complex representation of a finite group is a virtual character (`∈ ℤ[Irr G]`). -- Strong `finrank` induction: Maschke splits a reducible rep into smaller summands whose characters -- add (`character_add_of_isCompl` = `trace_conj' + trace_prodMap'`); the irreducible base case is -- `exists_isIrreducibleCharacter_eq`. Unblocks `induce`/`restrict ∈ ℤ[Irr]` ⇒ Dade (2.6.b)/§9. #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_mem_ZIrr -- RepresentationTheory (Peterfalvi (2.6.b) prerequisites): restriction and induction preserve -- virtual characters. `restrict ∈ ℤ[Irr]` reduces (via span induction) to the keystone -- `character_mem_ZIrr` applied to `ρ.comp H.subtype`; `induce ∈ ℤ[Irr]` then follows from -- numerical Frobenius reciprocity (`inner_induce_eq_inner_restrict`) + integer Fourier -- coefficients (`inner_mem_ZIrr_int`) + completeness (`classFunction_eq_zero_of_orthogonal`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.restrict_mem_ZIrr #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_mem_ZIrr -- RepresentationTheory (Peterfalvi §7 (5.4) projection primitive): integral orthogonal projection -- of a virtual character `φ ∈ ZIrr G` onto a finite ZIrr-orthonormal family `R`. Integer -- coefficients `c α = ⟨φ, α⟩` (integral because `R ⊆ ZIrr G`, `inner_mem_ZIrr_int`); residual -- `Y = φ − ∑ c•α ⊥ R` by orthonormal coefficient recovery. Supplies the `X`/`Y`/`coeff` fields of -- `CharacterPsiDecomposition` (the (5.4)/(5.5)/(5.6.1) projection content), consumed by -- `CharacterPsiDecomposition.ofProjection`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.exists_intProjection_of_orthonormal_ZIrr -- RepresentationTheory (Peterfalvi (2.10.3) transversal value): the induction sum at `g` -- collapses to a sum over only those `x` with `x⁻¹ g x ∈ H` (off-support terms vanish via -- `induceTerm_of_not_mem`), in unscaled (`induceSum`) and normalized (`induce`) form. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induceSum_apply_eq_sum_filter #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_apply_eq_sum_filter -- RepresentationTheory (complex conjugation): induction commutes with conjugating values in `ℂ`; -- used to show `Y = S(H')` is closed under complex conjugation in Peterfalvi (6.8). #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induceTerm_conjStar #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induceSum_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_conj -- RepresentationTheory ([Is] Thm 6.34 degree part): the induced class function at `1` is -- `[G : H] · θ(1)`. All `|G|` conjugates `x⁻¹ · 1 · x = 1` lie in `H`, so every summand is -- `θ(1)`; dividing by `|H|` and using `|G| = [G:H]·|H|` (`Subgroup.index_mul_card`) leaves `[G:H]`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_apply_one -- RepresentationTheory (induction support): if H is normal, then conjugates into H are exactly -- elements of H, so Ind_H^G θ vanishes outside H and is supported on H. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.conjugatesInto_eq_of_normal #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_eq_zero_of_not_mem_normal #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.support_induce_subset_of_normal -- RepresentationTheory (Peterfalvi (1.6.a) value core): for a normal subgroup `A ⊴ G` with -- `A ≤ H` on which `θ` is constant `= c`, every term of the induction sum at `a ∈ A` is `c` -- (conjugates `x⁻¹ a x` stay in `A ≤ H` by normality), so `Ind_H^G θ(a) = |G|·c·|H|⁻¹`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_apply_of_mem_normal_of_const -- RepresentationTheory (Peterfalvi §3 (1.6.b)-bridge): `χ` is a constituent of `Ind_H^G θ` -- (`⟨Ind θ, χ⟩ ≠ 0`) iff `χ` lies over `θ`. Numerical Frobenius reciprocity -- (`inner_induce_eq_inner_restrict`) packaged into `LiesOver`; the constituent multiplicity -- `⟨θ, Res χ⟩` is the conjugate of the restriction multiplicity `⟨Res χ, θ⟩`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.IrreducibleCharacter.inner_induce_ne_zero_iff_liesOver -- RepresentationTheory (lies-over existence): every `χ ∈ Irr G` lies over some `θ ∈ Irr H`. -- Completeness: `Res^G_H χ ≠ 0` (value `χ(1) > 0` at `1`), so it is not orthogonal to all -- irreducibles of `H` (`classFunction_eq_zero_of_orthogonal`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.IrreducibleCharacter.exists_liesOver -- RepresentationTheory (Peterfalvi (2.10.1) L-conjugacy invariance): inducing from a conjugate -- subgroup `H^ℓ = H.map (MulAut.conj ℓ)` with the transported class function `transportConj ℓ θ` -- equals inducing from `H`. Re-index the induction sum by `x ↦ x * ℓ` (`induceTerm_transportConj`); -- the `|H^ℓ| = |H|` normalization factors agree by `Subgroup.card_map_of_injective`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induceSum_map_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.induce_map_conj -- RepresentationTheory (Peterfalvi (2.9)): pullback `φ ∘ f` along a group hom `f : H →* G` -- preserves virtual characters (the "Res along a homomorphism" generalization of -- `restrict_mem_ZIrr`). Same span-induction proof via `character_mem_ZIrr (ρ.comp f)`; this -- is the `α_B = α ∘ f_B ∈ ℤ[Irr M(B)]` step of the Dade-map construction. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.compHom_mem_ZIrr -- RepresentationTheory (Peterfalvi (1.5.a), inertia/coset well-definedness): conjugation by an -- element of the normal subgroup `H` acts trivially on class functions of `H` (`θ^g = θ` for -- `g ∈ H`). `conjBy g θ` evaluates `θ` at the `H`-conjugate `⟨g⟩ * h * ⟨g⟩⁻¹`, and class -- functions are `H`-conjugacy invariant. This is what makes `θ^x = θ^y ⇔ y ∈ I(θ)x`, i.e. -- `conjBy w θ` constant on the coset `wH` in the Mackey restriction formula. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.conjBy_eq_self_of_mem -- RepresentationTheory (Peterfalvi §2 orthogonality): class functions with disjoint supports -- are orthogonal (`⟨φ, ψ⟩_G = 0`). Each summand `φ g · star (ψ g)` vanishes since `g` lies -- outside at least one support. Basic vanishing for the Dade isometry / §9 coherence arguments. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.inner_eq_zero_of_disjoint_support -- RepresentationTheory (Isaacs §3 (3.6)/(3.7); Peterfalvi (6.7.2)/(6.7.3)): the class-sum algebra. -- `classSum_mul` expresses `C_i · C_j = ∑_s m_s · C_s` with the per-element factorization counts -- `m_s` (constant on each class), and `centralCharacterOfRep_classSum_mul` transports this through -- the central character `ω_ρ`. The keystone `centralCharacterOfRep_classSum_isIntegral`: `ω_ρ(C)` -- is an algebraic integer (module-finite ℤ-subalgebra of ℂ generated by the `ω_ρ(C_s)`), the -- structure-constant integrality used in the `mod |P|` congruence (6.7.3). #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSum_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_classSum_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_classSum_isIntegral -- Peterfalvi (6.7.2) (product rule mod |P|): `ψ(1)·ω(C_i)·ω(C_j) ≡ ∑_{C_s∩Z≠∅} ψ(1)·a_{ijs}·ω(C_s)`, -- i.e. classes `C_s` disjoint from `Z` drop out modulo `m` once `m ∣ a_{ijs}|C_s|` for those classes -- (the (6.7.1) input, `card_dvd_classSumCoeff_of_fixedPointFree`). Each dropped term equals -- `(a_{ijs}|C_s|)·χ_ρ(C_s.out)` (`character_one_mul_coeff_mul_centralChar`, via the pair-count -- identity `coeff_mul_card_eq_classSumCoeff`), an algebraic-integer multiple of `m`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.coeff_mul_card_eq_classSumCoeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_one_mul_coeff_mul_centralChar #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_classSum_mul_cong -- Peterfalvi (6.7.2) geometric form: the same congruence with the abstract divisibility hypothesis -- discharged from the (6.7) setup (Sylow `P`, `Z ⊴ N_G(P)`, `P^#` TI) via (6.7.1) -- (`fixedPointFree_classPair_of_isTISubset` + `card_dvd_classSumCoeff_of_fixedPointFree`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_classSum_mul_cong_of_isTISubset -- Peterfalvi (6.7.3) structure-constant atoms (the identity-class coefficients `a_{ij0}`): -- `classSumCoeff_one_eq_zero` is `a_{110} = 0` (no pair `(u,u⁻¹)` with both `u, u⁻¹ ∈ C₁` when -- `⟦z⁻¹⟧ ≠ ⟦z⟧`), and `classSumCoeff_one_eq_card` is `a_{120} = |C₁|` (the pairs with product `1` -- in `C₁ × C₁⁻¹` are exactly `(u, u⁻¹)`, `u ∈ C₁`). These discharge two of the (6.7.3) atoms. #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_one_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_one_eq_card -- The `z`-keyed instances consumed by (6.7.3): `classSumCoeff_self_one_eq_zero` (`a_{110} = 0` -- with `C₁ = ⟦z⟧`, sole hypothesis the real-class atom `⟦z⁻¹⟧ ≠ ⟦z⟧`) and -- `classSumCoeff_self_inv_one_eq_card` (`a_{120} = |C₁|` with `C₂ = ⟦z⁻¹⟧`, *unconditional* — the -- inverse-class membership `mk u = ⟦z⟧ → mk u⁻¹ = ⟦z⁻¹⟧` is `mk_inv_eq_of_mk_eq`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.mk_inv_eq_of_mk_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_self_one_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_self_inv_one_eq_card -- Peterfalvi (6.7.3) real-class atom (TI-reduction, `RealClassTISubset.lean`): the sole remaining -- hypothesis of `classSumCoeff_self_one_eq_zero` — `⟦z⁻¹⟧ ≠ ⟦z⟧` — discharged from the (6.7) setup -- (`P ∈ Syl_p`, `L = N_G(P)` of *odd* order, `P^#` TI-subset). `not_isConj_inv_of_isTISubset` -- proves `¬ IsConj z⁻¹ z` (a `G`-conjugator of `z⁻¹` to `z` lands in `L` by TI, so `z` is -- `L`-conjugate to `z⁻¹`, forcing `z = 1` by `eq_one_of_isConj_inv_of_odd_card`); the class form -- `mk_inv_ne_self_of_isTISubset` is what plugs into `classSumCoeff_self_one_eq_zero`. This is -- Peterfalvi's "since `|L|` is odd, `z⁻¹` is not conjugate to `z` in `G`" ((6.7.3), proof opening). #assert_only_allowed_axioms OddOrder.RepresentationTheory.not_isConj_inv_of_isTISubset #assert_only_allowed_axioms OddOrder.RepresentationTheory.mk_inv_ne_self_of_isTISubset -- The `a_{110} = 0` structure constant with its real-class hypothesis discharged from the (6.7) -- setup: `classSumCoeff_self_one_eq_zero_of_isTISubset` feeds `mk_inv_ne_self_of_isTISubset` into -- `classSumCoeff_self_one_eq_zero`, so the `a_{110} = 0` input to (6.7.3) is hypothesis-free under -- `P ∈ Syl_p(G)`, `Odd |N_G(P)|`, `P^#` TI-subset, `z ∈ P ∖ {1}`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSumCoeff_self_one_eq_zero_of_isTISubset -- Peterfalvi (6.7.3) coprimality atom `(|C₁|, p) = 1`: `card_class_eq_index_centralizer` is the -- orbit-stabilizer identity `|⟦z⟧| = [G : C_G(z)]` (conjugation action of `ConjAct G`), and -- `coprime_card_class_card_sylow` derives `IsCoprime |⟦z⟧| |P|` from `P ≤ C_G(z)` (so -- `[G:C_G(z)] ∣ [G:P]`, `p ∤ [G:P]`) and `|P| = p^k`. Discharges the last (6.7.3) atom. #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_class_eq_index_centralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.coprime_card_class_card_sylow -- Peterfalvi (6.7.3) central-character value on the identity class: `ω_ρ(⟦1⟧) = 1` (the identity -- class is the singleton `{1}`, so `ω = 1·χ(1)/χ(1) = 1`). This is the `ω(C₀) = 1` ingredient of -- the right-hand-sum collapse `∑ → ψ(1)(a_{ij0} + a_{ij}α)` in (6.7.2)/(6.7.3). #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_one -- Peterfalvi (6.7.3) (`ψ(z) ≡ ψ(1) (mod |P|)`), the congruence-arithmetic assembly of the two -- (6.7.2) instances at `(1,1)`/`(1,2)`: combine (transitivity) ⟶ substitute `ψ(1)α = |C₁|ψ(z)` and -- cancel the coprime factor `|C₁|` (`Cong.intMul_cancel_left`) ⟶ multiply the `1_G` congruence -- `a₁₁ ≡ 1 + a₁₂` by `ψ(z)` and subtract. The group-theoretic atoms (`a_{110}=0`, `a_{120}=|C₁|`, -- `z⁻¹` not `G`-conjugate to `z`, `ω(C_s)=α` constant) feed in as hypotheses (the (6.7.1) setup). #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_673_combine #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_673_cancel #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_673_final #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_673 -- The explicit character-value form `|C| · χ_ρ(g) / χ_ρ(1) ∈ ℤ̄` (algebraic integer), obtained -- from the keystone via `centralCharacterOfRep_classSum` + `sum_character_eq_card_mul` + `char_one`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIntegral_card_mul_character_div -- RepresentationTheory (Isaacs §3 (3.7) preamble): character values χ_ρ(g) = trace(ρ g) are -- algebraic integers — `ρ g` has finite order (`g^|G| = 1`), the charpoly splits over ℂ, the trace -- is the sum of its roots, and each root μ is a root of unity (μ^|G| = 1, root of `X^|G| - 1`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_isIntegral -- RepresentationTheory: a rational algebraic integer is an integer — `ℤ` is integrally closed (UFD), -- so transferring `IsIntegral ℤ (q : ℂ)` down the injection `ℚ ↪ ℂ` yields `∃ n : ℤ, (q : ℂ) = n`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIntegral_rat_imp_int -- Algebra (Peterfalvi, proof of (6.7), pp. 31–32): the algebraic-integer congruence `α ≡ β (mod n)` -- on ℂ — `(α - β)/n ∈ ℤ̄`. An additive congruence: reflexive/symmetric/transitive, closed under -- addition (`Cong.add`) and under scaling one side by an algebraic integer (`Cong.smul_left`, the -- multiplicative step of (6.7.2)/(6.7.3)). Introduction forms `cong_of_exists_isIntegral`/`.of_int`. #assert_only_allowed_axioms OddOrder.AlgInt.Cong.trans #assert_only_allowed_axioms OddOrder.AlgInt.Cong.add #assert_only_allowed_axioms OddOrder.AlgInt.Cong.smul_left #assert_only_allowed_axioms OddOrder.AlgInt.cong_of_exists_isIntegral #assert_only_allowed_axioms OddOrder.AlgInt.Cong.of_int -- The converse of `Cong.of_int`: an `[ALGMOD n]` congruence between *integers* is an ordinary -- divisibility `n ∣ j − k` (the quotient is rational and integral). Used to state Peterfalvi -- (6.7) with both of its book conclusions (issue 0172 §6 audit). #assert_only_allowed_axioms OddOrder.RepresentationTheory.int_dvd_of_cong_intCast -- The "divide by |C₁|" cancellation of (6.7.3): a congruence `c·a ≡ c·b (mod n)` with `c` coprime -- to `n` and `a`, `b` algebraic integers gives `a ≡ b (mod n)` (Bézout `u·c + v·n = 1`). #assert_only_allowed_axioms OddOrder.AlgInt.Cong.intMul_cancel_left -- RepresentationTheory (Isaacs Thm 3.11): for an irreducible complex representation ρ of a finite -- group G, the degree χ_ρ(1) = dim V divides |G|. The first orthogonality relation regrouped over -- conjugacy classes expresses |G|/χ(1) = ∑_C ω_ρ(C)·χ((g_C)⁻¹) as a sum of products of algebraic -- integers, hence a rational algebraic integer ⇒ integer (the three linked pieces above). #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_centralCharacter_mul_character_inv_mul_character_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.finrank_dvd_card -- ClassFunction-level bridge: an irreducible character's value at 1 is the witnessing -- representation's dimension, and (Isaacs Thm 3.11) that natural number divides |G|. This recasts -- `finrank_dvd_card` through `φ 1`, which is definitionally Peterfalvi's `characterDegree φ`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_finrank_charValue_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_natDegree_charValue_one_dvd_card -- Peterfalvi-side consumer: the same divisibility on the `IrreducibleCharacter G` subtype, phrased -- through `characterDegree` (= `χ 1`), the degree datum used throughout Peterfalvi §6.7. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.exists_natDegree_characterDegree_dvd_card -- Peterfalvi (5.6) degree-ratio integrality ("Set χ(1) = a·χ₁(1)"): when χ₁'s natural degree -- divides χ's, the quotient `a` is a *positive* natural with `characterDegree χ = a·characterDegree χ₁`. -- This is the honest §5.6 opening step — divisibility (hyp (5.6)(b)) is essential, not scaffolding. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.exists_pos_natDegreeRatio_of_dvd #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.exists_pos_natDegreeRatioFamily_of_dvd -- Corollary (Isaacs Cor. 3.12): the degree of an irreducible representation of a finite p-group is -- a power of p. Immediate from `finrank_dvd_card` (`dim V ∣ |G| = p^n`) and `Nat.dvd_prime_pow`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_finrank_eq_prime_pow_of_isPGroup -- ClassFunction-level form of the same corollary: an irreducible character of a finite p-group has -- `χ(1) = p^k`. Routes the witnessing representation's `dim V = p^k` onto `χ 1` via `char_one`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_charValue_one_eq_prime_pow_of_isPGroup -- Peterfalvi-side consumer (the degree datum for (6.6) "θⱼ(1) is a power of p", mmd L80): the same -- prime-power degree on the `IrreducibleCharacter G` subtype, phrased through `characterDegree`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S03.exists_characterDegree_eq_prime_pow_of_isPGroup -- Same datum with a shared natural witness `d`: `characterDegree χ = d`, `d = p^k`, and `0 dim CF(G)`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.retarget_inner_eq_on -- (5.6.3) integral-span keystone (the honest realization of `IsCoherent.extension_inner_eq`): the -- re-targeting preserves `⟨·,·⟩` on all of `ℤ[S₁∪{χ,χ̄}]`, using only the `ℤ[S₁]`-isometry of -- `τ₁ = hS₁.extension` and the lattice orthogonality `X,X̄ ⊥ τ₁ ξ` for `ξ ∈ ℤ[S₁]`. Every -- Gram–Schmidt residual of `φ∈ℤ[S₁∪{χ,χ̄}]` lands in `ℤ[S₁]` (`orthoResidualMap_mem_zSpan`), so the -- block expansion closes with no global-isometry input — directly feeding the weakened `IsCoherent`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.orthoResidualMap_mem_zSpan #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.retarget_inner_eq_on_zSpan_union -- (5.6.1) family bundle: the source-side cross-difference orthogonality -- `⟨χ−aχ₁, χᵢ−aᵢχ₁⟩ = a·aᵢ·‖χ₁‖²`, derived (not posited) from `χ ⊥ S₁` + pairwise orthogonality. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.CharacterFamilyBundle.crossDifference_inner -- (5.6.3) MAIN coherence-union assembly (general (5.6), UNCONDITIONAL): `IsCoherent (S₁ ∪ {χ,χ̄}) A`. -- CONSTRUCTS the extension `τ₂ := retarget τ₁ χ χ̄ X X̄`, proves it a *lattice* isometry on -- `ℤ[S₁∪{χ,χ̄}]` (`retarget_inner_eq_on_zSpan_union`, the weakened `extension_inner_eq` field — no -- global isometry, none exists in FT), and discharges `extends_on_supported` by agreement on the -- three difference generators `{χ−χ̄, χ−a·χ₁} ∪ Z[S₁,L^#]` (`eq_on_zSpan_of_eq_on`). The data -- threaded in are the honest (5.4)/(5.5)/(5.6.2) outputs (orthonormal `{X,X̄}`, `X̄ = X−(χ−χ̄)^τ`, the -- *lattice* (5.5)+(5.2.e) orthogonality `X,X̄ ⊥ τ₁ ξ` for `ξ ∈ ℤ[S₁]`, the (5.6.2) image equation) -- plus the (5.1)-type generation `hgen`. No special-position restriction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent -- (5.6.3) target-pair PRODUCER (G2.7 foundational brick): CONSTRUCTS the orthonormal `{X,X̄}` block -- of `retarget_isCoherent` *from* a (5.5) decomposition `D : CharacterPsiDecomposition τ χ 0` of an -- irreducible `χ` (`‖χ‖²=1`) plus the source-pair orthonormality. `X := D.X`, `X̄ := D.X−(χ−χ̄)^τ`; -- `(5.5)` gives `X = ∑_{E}α` with `|E|=‖χ‖²=1` (single element, ‖X‖²=1), `|R(χ)|=‖χ−χ̄‖²=2` (via -- `tau1_agrees`+τ₁-isometry), so `‖X̄‖²=|R(χ)|−|E|=1`; `⟨X,X̄⟩=0` off the orthonormal family; both -- ∈ℤ[Irr G]. This refutes the Round-20 "missing Gram–Schmidt/basis-extension" claim: for irreducible -- `χ` the target pair is FORCED, no rescaling/orthonormalization primitive is needed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.CharacterPsiDecomposition.retargetTargetPair -- (5.6.3) per-step assembly with target pair constructed from (5.5): `IsCoherent (S₁∪{χ,χ̄}) A` where -- `{X,X̄}` is NOT data but built from `D` via `retargetTargetPair`. Isolates exactly the residual that -- genuinely couples to the running `τ₁ = hS₁.extension`: the (5.2.e) cross-orthogonality `X,X̄ ⊥ τ₁ ξ` -- (`hX_ortho`/`hXbar_ortho`) and the (5.6.2) image equation `(χ−aχ₁)^τ = D.X − a·τ₁χ₁` (`himg`). All -- else (orthonormality + virtual-character membership of `{D.X, X̄}`) comes from `D`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_of_decomposition -- (5.6.2) IMAGE-EQUATION SUPPLIER (G2.7 wiring): CONSTRUCTS the `himg : τ(χ−aχ₁) = X − a·τ₁χ₁` -- hypothesis of `retarget_isCoherent` — the single genuinely running-τ₁-coupled fact — from the -- (5.4)/(5.6.1) decomposition `D : CharacterPsiDecomposition τ χ (a·χ₁)` and three honest textbook -- inputs: `htau1_diff` ((5.4) τ₁'=τ on the supported difference `χ−aχ₁`), `hY` ((5.6.2) `Y=a·χ₁^{τ₁'}` -- after λ=0/Z=0), `htau1_chi1` (τ₁' agrees with the running coherence extension at `χ₁∈S₁`). Chains -- `τ(χ−aχ₁) = D.tau1(χ−aχ₁) = D.X − D.Y = D.X − a·D.tau1 χ₁ = D.X − a·hS₁.extension χ₁` via `tau1_image`. -- This is the precise §4↔§7 coupling: the Dade-isometry side enters as `τ(χ−aχ₁)` (LHS, the §4 Dade -- image of the supported difference via `dadeIntegralCharacterMap_apply_of_support`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.image_eq_of_decomposition -- (5.6.3) COMPLETE per-step adjoining with `himg` discharged internally: the single entry point a -- (6.6)/(6.8) `coherentPairChain` step calls — `IsCoherent τ S₁ A → IsCoherent τ (S₁∪{χ,χ̄}) A`. -- Consumes BOTH (5.5)/(5.6.1) decompositions `D₀`/`Da` and their common `R(χ)`-projection -- (`hX_eq : Da.X = D₀.X`, the (5.6.2) identification), builds the orthonormal pair `{D₀.X, X̄}` via -- `retargetTargetPair` AND discharges `retarget_isCoherent`'s `himg` via `image_eq_of_decomposition`. -- Makes (6.6) `peterfalvi_66_coherence_of_X`'s `hstep` dischargeable from the Dade-isometry targets. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_of_decompositions -- (5.5)+(5.2.e) IMAGE-SIDE coupling `hperElem`, *constructed* not posited (issue 0046, PASS 2). -- `inner_extension_member_orthogonal_imageSet` : for a member `χ'∈S₁` with its `ψ=0` decomposition -- `D'` (so `χ'^{τ₁'}=D'.X` by (5.5)) and `R(χ')⊥R(χ)` (5.2.e) + the running agreement -- `D'.tau1 χ'=hS₁.extension χ'`, the running image `χ'^{τ₁}` is ⊥ `R(χ)` — the per-member mmd L77. -- `inner_extension_orthogonal_imageSet_of_members` : span induction lifts that to all `ξ∈ℤ[S₁]` -- (`ℤ`-linearity of the extension and of `⟨·,α⟩`). These two SUPPLY the `hperElem` of -- `retarget_isCoherent_of_decompositions` from honest per-member data. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.inner_extension_member_orthogonal_imageSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.inner_extension_orthogonal_imageSet_of_members -- (5.6.3) COMPLETE per-step adjoining with ALSO `hperElem` discharged internally (issue 0046, -- PASS 2): the final form where every (5.6.3) input reduces to genuine Dade-map / running-extension -- facts — no image-side coupling remains posited. Replaces `hperElem` by the per-member family of -- `ψ=0` decompositions `Dmem`/orthogonality `hmemOrtho`/agreement `hmemTau1`, deriving `hperElem` -- via the two lemmas above. This makes (6.6) `peterfalvi_66_coherence_of_X`'s `hstep` dischargeable -- from the actual Dade isometry's per-member (5.5)+(5.2.e) data. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_of_decompositions_and_memberFamily -- (5.6.3) PASS 2 (ii) ENTRY POINT: per-step coherence from a SHARED-isometry decomposition pair. -- `retarget_isCoherent_of_sharedDecomposition` takes the shared `(R(χ), τ₁, isom, agrees)` + the two -- `ZIrr`-membership facts, builds `(D₀, Da)` via `decompositionPair`, and discharges the τ₁-agreement -- `htau1_chi : Da.tau1 χ = D₀.tau1 χ` STRUCTURALLY (`decompositionPair_tau1_agree`). The (5.6.3) -- projection identity `Da.X = D₀.X` then follows from the structural agreement. This is the clean -- (6.6) `hstep` shape: a caller supplies the per-step Dade `R(χ)` + global τ₁ + per-member family. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_of_sharedDecomposition -- (5.6.3) supporting bricks: span-agreement (`eq_on_zSpan_of_eq_on`), orthogonality lifts to the -- ℤ-span (`inner_eq_zero_of_mem_zSpan`), and the re-targeting collapses to `τ₁` on the span of any -- set orthogonal to `{χ,χ̄}` (`retarget_eq_on_zSpan_of_orthogonal`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.eq_on_zSpan_of_eq_on #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.inner_eq_zero_of_mem_zSpan #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.retarget_eq_on_zSpan_of_orthogonal -- (5.5)+(5.2.e) orthogonality in sum form: from `X = ∑_{α∈R} c(α)·α` (the (5.5) `X ∈ ℤ[R(χ)]` in -- explicit `X_eq` form) and per-element `⟨η, α⟩ = 0`, conclude `⟨η, X⟩ = 0`. Packages the -- `hX_ortho`/`hXbar_ortho` inputs of `retarget_isCoherent` from the per-`R(χ)`-element (5.2.e) fact. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.inner_eq_zero_of_eq_intCast_sum -- (6.8.1)/(6.8.2) orthogonal coherent union: the two-lattice block identity -- `⟨νX a + νY b, νX a' + νY b'⟩ = ⟨a + b, a' + b'⟩` for `a,a'∈ℤ[X]`, `b,b'∈ℤ[Y]` under source + -- image orthogonality (the algebraic heart of Peterfalvi's `τ₃` gluing of two coherent pieces). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.inner_orthogonal_glued_eq -- (6.8.1)/(6.8.2) the same identity lifted to all of `ℤ[X∪Y]` for any map `ν` agreeing with `νX` on -- `ℤ[X]` and `νY` on `ℤ[Y]` (`Submodule.span_union` decomposition) — the weakened -- `IsCoherent.extension_inner_eq` field for the union `X ∪ Y` once the two coherent pieces exist. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.inner_eq_on_zSpan_union_of_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.image_orthogonal_of_mixed_inner_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.mixed_inner_eq_on_zSpan_of_eq_on -- (6.8.1)/(6.8.2) the `τ₃` assembly into an actual `IsCoherent (X∪Y) A` witness: from two coherence -- witnesses `hX`, `hY`, a glued map `ν` agreeing with `hX.extension`/`hY.extension` on `ℤ[X]`/`ℤ[Y]`, -- and source+image orthogonality, build `IsCoherent τ (X∪Y) A` — `extension_inner_eq` via -- `inner_eq_on_zSpan_union_of_orthogonal`, `extends_on_supported` via `eq_on_zSpan_of_eq_on` on the -- generator `Z[X,A] ∪ Z[Y,A]` and a (5.1)-type generation hypothesis. The two-family analogue of -- `retarget_isCoherent`; carries no character theory (its inputs are supplied by (6.6)/(6.7)/Dade). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentUnion_of_glued set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentUnion_of_glued_of_mixed_inner_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentUnion_of_glued_of_generator_mixed_inner_eq -- (6.6) "repeated use of (5.6)" iteration engine: from a coherent base `S₀` and a per-index -- adjoining step `IsCoherent (pairUnion S₀ pair i) → IsCoherent (pairUnion S₀ pair (i+1))` (each step -- one application of (5.6) = `retarget_isCoherent` with the caller's per-step data), the union after -- `N` adjoinings `pairUnion S₀ pair N` is coherent — the induction is derived, never posited. The -- accumulated-set monotonicity helper is `pairUnion_mono`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentPairChain #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.pairUnion_mono -- (6.6) conclusion "X is coherent" (mmd L84): `coherentOfPairChainCover` assembles it from the -- degree-ordered pair-chain decomposition of `X` (base prefix `S₀` + remaining conjugate pairs, -- certified to recover `X` by `pairUnion_eq_of_cover` via the membership lemma `mem_pairUnion`) -- and the `coherentPairChain` engine. The base coherence `h0` (= (1.1)+(1.4) prefix) and the -- per-step (5.6) adjoining `hstep` are *supplied* (the residual to fill is `hstep`'s per-step -- `{Xᵢ, X̄ᵢ}` target data, needing the Dade-isometry ν basis extension, G2.7); the conclusion -- `IsCoherent τ X A` is derived from them through the chain. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.mem_pairUnion #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.pairUnion_eq_of_cover #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentOfPairChainCover -- (6.6) named conclusion `peterfalvi_66_coherence_of_X : … → IsCoherent τ X A` (mmd L74/L84): -- "X = {χ ∈ Irr L | Z ⊄ Ker χ} is coherent". Assembles the (6.6) proof at the textbook altitude -- by threading the degree-monotone enumeration `e` of `exists_monotoneDegreeEnum` (mmd L76 opening -- "Set X = {χ₁,…,χₙ}, χ₁(1) ≤ ⋯ ≤ χₙ(1)") into the `coherentPairChain` accumulator via -- `pairUnion_eq_of_enumCover`: the enum's *surjectivity* onto `X` reduces the engine's set-level -- cover to the index-level cover `hcoverIdx` (checked along χ₁,…,χₙ), so the accumulator -- `pairUnion S₀ pair N` is identified with `X` and folded coherence (`coherentPairChain`) lands as -- `IsCoherent τ X A`. Base prefix coherence `h0` ((1.1)+(1.4)) and per-step (5.6) adjoining `hstep` -- (degree side already discharged by `two_mul_lt_sq_of_primePow_gap`/`sumInflatedDegreeSq`) are -- supplied; the residual is `hstep`'s per-step `{Xᵢ,X̄ᵢ}` target data (Dade-isometry ν extension, G2.7). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.pairUnion_eq_of_enumCover #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.peterfalvi_66_coherence_of_X -- (6.6) opening "Set X = {χ₁,…,χₙ} where χ₁(1) ≤ ⋯ ≤ χₙ(1)" (mmd L76): the degree-sorted indexing -- of the finite set `X = S − S(Z)`. `exists_monotoneDegreeEnum` produces an injective surjection -- `e : Fin (X.ncard) → X` monotone in the real degree key `χ ↦ (characterDegree χ).re` — the purely -- order-theoretic "sort a finite family by a real key" step (`Tuple.sort`/`Tuple.monotone_sort`), -- stated for an arbitrary finite class-function set (no irreducibility / induced-structure used). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.exists_monotoneDegreeEnum -- (6.6) opening "By (1.1), n ≥ 2" (mmd L76): the count `n = |X|` of the irreducible characters of -- `L` not killing `Z` satisfies `n ≥ 2`. The two consequences of (1.1) used — closure under -- conjugation (`ClosedUnderConjugate`) and no real character (`HasNoRealCharacters`), both §7 -- `Hypothesis` fields inherited by `X ⊆ S` — plus nonemptiness yield, via the conjugation -- involution `χ ↦ χ̄`, a second distinct member, hence `2 ≤ X.ncard` (`Set.one_lt_ncard`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.two_le_ncard_of_conjugate_closed_of_noReal -- (6.6) prime-power degree gap (mmd L82): the strict bound `2·χᵢ(1)·χ₁(1) < ∑_{j dim CF(G)`). `support_subset_of_mem_zSpan_of_supported` is the `ℤ`-submodule closure -- fact (`Submodule.span_le` into `supportedSubmodule.restrictScalars ℤ`); -- `dadeIntegralCharacterMap_inner_eq_on_supported_span` SUPPLIES the weakened form from the Dade -- isometry's `CF(L,A)` inner-preservation (`IsDadeIsometry.inner_eq`, (2.6.a)). -- `decompositionPairFromDade` then PRODUCES the per-step `(D₀, Da)` pair directly from the Dade -- isometry — `htau1_inner_eq` discharged internally — closing Round-24 (ii). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.support_subset_of_mem_zSpan_of_supported -- **Peterfalvi (4.9)(a) / (5.3)(b) の格子同一視 `ℤ[𝒮, L^#] = ℤ[𝒮, A]`** (2026-08-07 補充)。 -- 書籍が 2 度使う橋渡し: (4.9)(a) の "Also, `0 ≠ ℤ[T,L^#] = ℤ[T,A]`" と、(5.3)(b) の証明。 -- 後者が本質的 — Hypothesis (5.2)(b) は書籍では `ℤ[𝒮, L^#]` 上の等長だが、repo の -- `GeneralHypothesis.tau_isometry_diff` は `ℤ[𝒮, A]` 上で与える (FT の Dade 写像に**大域的な -- 等長は存在しない**: `dim CF(L) > dim CF(G)`)。両者が一致する根拠がこの等式で、仮説 -- 「各メンバーの台が `A ∪ {1}`」は (4.7) が供給する。従来は必要な個別の台評価 -- (`inducedNonKernelFamily_conjDiff_support` 等) だけが在り、**格子の等式そのものは無かった**。 -- 併せて generator の台評価を格子全体へ伝播させる ambient 版 `support_subset_of_mem_zSpan` も追加 -- (既存版は subgroup 相対 `supportInSubgroup A L` 専用だった)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.support_subset_of_mem_zSpan #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.zSupportedSpan_ne_one_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_inner_eq_on_supported_span #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.decompositionPairFromDade -- Round B: the Dade `R(χ)` extractor + ZIrr-membership, constructing the per-step (5.6) inputs -- ENTIRELY from the Dade isometry (no opaque `OrthonormalCharacterImageFamily`/`ZIrr` hypotheses). -- `one_notMem_dadeSupport` (S04): `1 ∉ dadeSupport` (from `a ≠ 1` + `centralizer_disjoint`). -- `dadeIntegralCharacterMap_apply_one_eq_zero`: the Dade image vanishes at `1` (vanishes off -- `dadeSupport` via `IsDadeMap.map_eq_zero_of_not_mem_dadeSupport`; `1 ∉ dadeSupport`) — discharges -- the (1.4) `IsometryDifferenceImagesVanishAtOne`. `dadeIntegralCharacterMap_mem_ZIrr_of_supported`: -- supported virtual characters map into `ℤ[Irr G]` ((2.6.b) `PreservesVirtualCharacters`/ -- `maps_virtualCharacter`) — discharges the (1.4) `IsometryDifferenceImagesAreVirtual` and the two -- `htau1_mem0`/`htau1_mema` facts. `dadeOrthonormalCharacterImageFamily` is the R(χ) extractor: it -- discharges the three (1.4) hypotheses of `characterDifferenceImageOfIsometry` for the Dade map on -- `{χ, χ̄}` and lifts via `toOrthonormalImage` to `OrthonormalCharacterImageFamily`. -- `decompositionPairFromDadeOfIrreducible` is the full assembly: from `χ` irreducible non-real + -- supported + `χ₁ ∈ ℤ[Irr L]` it builds BOTH `R(χ)` AND the `ZIrr` facts internally, producing the -- per-step `(D₀, Da)` pair for `retarget_isCoherent_of_sharedDecomposition` from the real Dade τ. #assert_only_allowed_axioms OddOrder.Peterfalvi.S04.Hypothesis.one_notMem_dadeSupport #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_apply_one_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_mem_ZIrr_of_supported #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeOrthonormalCharacterImageFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_inner_conjDifference_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeOrthonormalCharacterImageFamily_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.decompositionPairFromDadeOfIrreducible -- Round C: the running-`τ₁` instantiation. `retarget_isCoherent_fromDade` discharges one (6.6) -- `coherentPairChain` step `IsCoherent τ S₁ A → IsCoherent τ (S₁ ∪ {χ, χ̄}) A` against the (5.1) -- base map `τ = dadeIntegralCharacterMap` AS the running auxiliary isometry `τ₁ = τ` itself. The -- four agreement obligations of `retarget_isCoherent_of_sharedDecomposition` are discharged -- internally: `htau1_agrees`/`htau1_diff` are `rfl` (the decomposition's `tau1` field IS `τ`), and -- `htau1_chi1`/`hmemTau1` (agreement with the running `hS₁.extension` on `χ₁` and on every member -- `x ∈ S₁`) come from `IsCoherent.extends_on_supported` — the running extension agrees with `τ` on -- the supported sublattice `Z[S₁, A]`, where `χ₁` and the members are supported. The `R(χ)` family + -- `ZIrr` facts are Round B; the residual inputs (`hY` (5.6.2) collapse, `hmemOrtho` (5.2.e) image -- orthogonality, source orthogonalities, `hgen`) are the genuine per-step (6.6) character-degree -- content (the (6.6) enumeration's responsibility, not the Dade isometry's). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_fromDade -- Round C assembly: the (6.6) coherence-of-X INSTANTIATED at the real Dade isometry. -- `pairUnion_succ_eq_union_pair`: the set-level bridge `pairUnion S₀ pair (i+1) = pairUnion S₀ pair i -- ∪ {c₁, c₂}` when `(pair i) = (c₁, c₂)` — connects the per-step adjoining engine's `S₁ ∪ {χ, χ̄}` -- conclusion to the `coherentPairChain` accumulator shape. `DadeChainStep` bundles the genuine -- per-step (6.6) character-degree content (the residual after the Dade isometry supplies `R(χ)`, the -- `ZIrr` facts, the inner-preservation, the `τ₁ = τ` agreements); `DadeChainStep.advance` discharges -- one (5.6) step via `retarget_isCoherent_fromDade`, and `DadeChainStep.chainStepAdvance` rewrites it -- into the accumulator shape. `peterfalvi_66_coherence_of_X_from_dade` then folds these over the -- chain: the (6.6) `hstep` is no longer posited but CONSTRUCTED from the Dade isometry + prior -- coherence, so the §5/§6 coherence engine is fully constructive against the real Dade `τ`. The only -- remaining inputs (enumeration `e`, cover `hcoverIdx`, base coherence `h0`, per-step `hstepData`/ -- `hpairχ`) are the genuine (6.6) character content, not the Dade isometry's responsibility. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.pairUnion_succ_eq_union_pair -- `zSupportedSpan_adjoinPair_subset_span`: the (5.6.3) generation containment `ℤ[S₁ ∪ {χ, χ̄}, A] ⊆ -- ℤ[ℤ[S₁, A] ∪ {χ − χ̄, χ − a·χ₁}]`, discharged as pure ℤ-module theory routed through the -- difference generators (no (4.7) `ℤ[S, L^#] = ℤ[S, A]` needed): `χ = (χ − a·χ₁) + a·χ₁`, -- `χ̄ = χ − (χ − χ̄)`, every `s ∈ S₁` a right-hand generator by supportedness. This is what makes -- `DadeChainStep.advance` discharge the (5.1) generation hypothesis internally rather than positing it. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.zSupportedSpan_adjoinPair_subset_span #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.span_subset_span_zSupportedSpan_union_anchor_of_scaledDiffs #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.zSupportedSpan_adjoinPair_subset_span_of_anchorGeneration #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.DadeChainStep.advance #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.DadeChainStep.chainStepAdvance #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.peterfalvi_66_coherence_of_X_from_dade -- Diagonalization keystone (shared gate for Peterfalvi (6.6) G2.2 + G2.5): -- `character g = character 1 ⟹ ρ g = id`. `ρ g` finite-order ⇒ semisimple (squarefree -- `X ^ n - 1`); trace = sum of unit-modulus eigenvalues = degree = count forces every eigenvalue -- to be `1` (triangle-inequality equality case `all_eq_one_of_norm_eq_one_of_sum_eq_card`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.all_eq_one_of_norm_eq_one_of_sum_eq_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.rep_eq_id_of_character_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_eq_one_iff_rep_eq_id -- Peterfalvi (6.7) central-character constancy core: `ω_ρ(⟦z⟧) = |⟦z⟧|·χ_ρ(z)/χ_ρ(1)` depends only -- on `χ_ρ(z)` and `|⟦z⟧|`, so equal class size + equal char value ⟹ equal `ω` (the "α does not -- depend on s" of mmd 04.8 L102). Plus the TI fact `C_G(x) ⊆ L` (`x ∈ A`, `A` TI / normalizer `L`) -- giving `|C_G(z)| = |C_L(z)|`, the source of the class-size constancy from `|C_L(z)|`-constancy. #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_eq_of_card_eq_of_character_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralizer_le_of_mem_isTISubset #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_class_eq_of_inf_centralizer_card_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_eq_of_tiSubset_card_eq_of_character_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_one_mul_centralCharacterOfRep_mk -- Peterfalvi (6.7.2)/(6.7.3) RHS collapse and top wiring: split the `C_s ∩ Z` sum into the -- identity class and the nonidentity `Z^#` classes, then feed the two collapsed congruences into -- the existing (6.7.3) arithmetic assembly to obtain `ψ(z) ≡ ψ(1) (mod |P|)`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.classSum_mul_apply_one_eq_classSumCoeff_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIntegral_sum_classSum_mul_coeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.nonidentityZClassCoeffSum_isIntegral #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_sum_inZ_eq_identity_add_nonidentity #assert_only_allowed_axioms OddOrder.RepresentationTheory.centralCharacterOfRep_classSum_mul_cong_collapse_of_isTISubset #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_67 -- General character-value bound `|χ(g)| ≤ χ(1)` (the inequality the (6.6) G2.2 residual flags as -- needs-infra), via the same root-of-unity / triangle machinery; equality case is the keystone. #assert_only_allowed_axioms OddOrder.RepresentationTheory.norm_character_le_finrank -- Peterfalvi (6.6) G2.2 representation-level constituent-inherits-kernel: `g ∈ ker χ_ρ` (whole-rep -- character = degree) ⟹ `g ∈ ker χ_{ρ'}` for every subrepresentation `ρ'` (keystone: `ρ g = id` -- restricts to `id` on the invariant submodule, so its character = dimension = degree). #assert_only_allowed_axioms OddOrder.RepresentationTheory.subrepresentation_character_eq_one_of_character_eq_one -- Inflation infrastructure ([Isaacs] (2.22), gating Peterfalvi (6.6) G2.5 degree-sum): -- irreducibility is preserved under surjective precomposition, hence the inflation map -- `Irr(G ⧸ N) → Irr G`, `χ̄ ↦ χ̄ ∘ (mk' N)`, is degree-preserving with `N ⊆ ker`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.Representation.isIrreducible_comp_of_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.compHom_of_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.inflate_apply_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.subset_characterKernel_inflate -- Injective half of the inflation bijection: distinct quotient characters inflate to distinct -- characters (surjective precomposition is injective on class functions). #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.compHom_injective_of_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.inflate_injective -- Surjective half (the keystone consumer): every irreducible `χ` with `N ⊆ ker χ` is an inflation -- `inflate N χbar`. `ρ n = id` on `N` (keystone) ⇒ `ρ` descends through `Representation.ofQuotient` -- to an irreducible `σ` on `G ⧸ N` with `χ_σ ∘ mk' = χ`. Completes the inflation bijection (2.22). #assert_only_allowed_axioms OddOrder.RepresentationTheory.Representation.isIrreducible_of_isIrreducible_comp_of_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_inflate_eq_of_subset_characterKernel -- Peterfalvi (6.6) degree-sum (the G2.5 payoff): the inflation bijection transports Burnside on -- `G ⧸ N` to `∑_{χ ∈ Irr G, N ⊆ ker χ} χ(1)² = |G ⧸ N|`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.sumInflatedDegreeSq -- Complement degree-sum (the planned G2.5 payoff): `∑_{χ ∈ Irr G, N ⊄ ker χ} χ(1)² = |G| − |G ⧸ N|`, -- the (6.6)/(6.8) set `X = {χ | Z ⊄ ker χ}` total `|L| − |L:Z|` (mmd 04.8 L78, L234). #assert_only_allowed_axioms OddOrder.RepresentationTheory.sumNonInflatedDegreeSq -- Peterfalvi (6.8.3) degree-sum factored form: `∑_{χ ∈ Irr G, N ⊄ ker χ} χ(1)² = [G:K][K:N](|N|−1)` -- for `N ⊴ G`, `N ≤ K ≤ G` (= `sumNonInflatedDegreeSq` + Lagrange index arithmetic). The mmd -- 04.8 L234 identity `|W₁||H:Z|(|Z|−1)` of the (6.8.3) final inequality (`G = L`, `K = H`, `N = Z`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.sumNonInflatedDegreeSq_eq_index_mul -- Section form of [Is] Cor 2.30 (Peterfalvi (6.2)/(6.6) θ-bound section case): φ trivial on N, -- D/N central in G/N ⟹ φ(1)² ≤ |G:D|, via inflation to G/N + the central degree bound. set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.degree_sq_le_index_of_central_quotient -- An irreducible character trivial on `N ⊴ G` with abelian quotient `G/N` is linear (degree 1), -- via inflation/descent + abelian degree-one. Peterfalvi (9.9.a) `(θλ)(1)=1` (issue 2031/2030). set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_eq_one_of_subset_characterKernel_of_isMulCommutative_quotient -- Constituent transitivity: A ≤ B ≤ G, A ⊄ ker χ ⟹ some constituent ψ of Res_B χ has A ⊄ ker ψ. -- Clifford-correspondent existence for Peterfalvi (9.9.a) (issue 2031/2030). set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_constituent_not_subset_characterKernel -- Coefficientwise Galois transport for class functions, irreducible-character indices, -- virtual-character lattices, and S07 coherence data. Galois conjugates of irreducible -- characters are irreducible (unconditional; witness = the σ-twisted representation -- `galoisTwist`), giving the Galois permutation of Irr(G) and ℤ[Irr G] invariance. #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.mapRingEquiv_inner #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_galoisTwist #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIrreducible_galoisTwist #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.mapRingEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.IrreducibleCharacter.galoisMap #assert_only_allowed_axioms OddOrder.RepresentationTheory.IrreducibleCharacter.galoisPerm #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.mapRingEquiv_mem_irreducibleCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.mapRingEquiv_mem_ZIrr #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.mapRingEquiv_mem_ZIrr_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.ClassFunction.mapRingEquiv_mem_zSpan_image #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.ClassFunction.mapRingEquiv_mem_zSupportedSpan_image #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.galoisTransport #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IsCoherent.galoisTransport -- Peterfalvi (1.9): cyclotomic Galois automorphisms of ℂ and the character value formula -- χ^σ(g) = χ(g^k). Trace of finite-order endomorphisms (eigenvalue decomposition), the -- extension theorem (subfield automorphisms extend to ℂ via a transcendence basis), the -- CRT cyclotomic automorphism (1.9.a), and the uniform virtual-character form (1.9.b). #assert_only_allowed_axioms OddOrder.RepresentationTheory.map_trace_of_pow_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.mapRingEquiv_apply_eq_apply_pow_of_mem_ZIrr #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_complexRingEquiv_extends #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_complexRingEquiv_pow_of_rootsOfUnity #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_complexRingEquiv_pow_and_fixed #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_complexRingEquiv_mapRingEquiv_eq_pow -- Peterfalvi (5.9)(a): coherent isometric extensions of the Dade map commute with -- coefficientwise automorphisms on the coherent set (no star-commutation needed). Inputs: -- the explicit Dade map is pointwise evaluation (commutes with σ) and vanishes at 1; norm-1 -- virtual characters are ± irreducible with a uniform sign. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_zsmul_irreducibleCharacter_of_inner_self_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_mapRingEquiv_comm #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_apply_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.dadeIntegralCharacterMap_apply_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IsCoherent.extension_mapRingEquiv_comm -- Peterfalvi (6.8.2.1), generic forms: the coherent extension takes equal values at x and -- x^k ((1.9.b) + (5.9.a) + Dade value restoration), hence is constant on Z^# for prime Z. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IsCoherent.extension_apply_coe_pow_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IsCoherent.extension_constant_on_sharp_of_prime -- [Is] Lemma 2.27 (central restriction): Res_Z χ = χ(1)·φ with φ a linear character of -- Z ≤ Z(G), via Schur central scalars. Peterfalvi (6.8.2.3) `Res^H_Z θ = a·φ`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIrreducible_complex_rep #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_central_linear_restriction -- Peterfalvi (6.7), odd-order assembly: hreal from |L| odd, the structure-constant -- congruence from the trivial-character specialization of (6.7.2)-(6.7.3). #assert_only_allowed_axioms OddOrder.RepresentationTheory.nonidentityZClassCoeffSum_cong_of_isTISubset #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_67_of_odd -- Peterfalvi (6.7), **first conclusion** `ψ(z) ∈ ℤ` (p. 32, opening line of the proof; issue 0172 -- §6 audit). A character constant on `Z^#` takes an integer value there — no Sylow/TI/odd-order -- hypothesis: `ψ(1) + (|Z|−1)·ψ(z) = ∑_{w∈Z} ψ(w) = |Z|·dim V^Z` exhibits `ψ(z)` as a rational, -- and a rational algebraic integer is an integer. With it the (6.7) congruence sharpens to an -- ordinary `ℤ`-divisibility `|P| ∣ ψ(z) − ψ(1)` (`peterfalvi_67_int_dvd_of_odd`), which is what -- the book's "ψ(z) ∈ ℤ and ψ(z) ≡ ψ(1) (mod |P|)" amounts to. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_int_character_of_constant_on_nonidentity #assert_only_allowed_axioms OddOrder.RepresentationTheory.peterfalvi_67_int_dvd_of_odd -- Peterfalvi (1.1)+(1.4) equal-degree coherence: `range χ` is coherent for an orthonormal, -- equal-degree family, with extension the Fourier-image map `ν φ = ∑ⱼ ⟨φ, χⱼ⟩ • Xⱼ` -- (`coherentImageMap`). The seed for both the (6.6) equal-minimal-degree base prefix and the -- (6.8) set `Y = S(H')`, where the (5.6) degree induction is unavailable. The isometry on -- `ℤ[range χ]` is pure Parseval (`coherentImageMap_inner_eq`); the supported sublattice is -- generated by the differences `χⱼ − χ₀` (`zSupportedSpan_range_subset_span_sub_zero`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.coherentImageMap_inner_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.zSupportedSpan_range_subset_span_sub_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentEqualDegree -- **The weighted (non-orthonormal) equal-degree coherence builder** (issue 0157). Peterfalvi's -- Hypothesis (5.2) gives the members of `S` only *pairwise orthogonality*, not unit norm — a -- reducible member has `||chi||^2 > 1` — so the book's (5.7) does not assume irreducibility and -- neither does this builder. `IsCoherent` asks for an **isometry** on `Z[S]`, not for orthonormal -- images, so the orthonormal normalisation `||chi_j||^2 = 1` can be replaced throughout by a -- per-member weight `w_j = `: the target family need only match the **Gram matrix** -- of the source (` = `), and the extension is the rescaled reconstruction -- `nu(phi) = sum_j * w_j^{-1} • X_j`, which sends `chi_k` to `X_k` and is an isometry -- by weighted Parseval. `coherentEqualDegree` is the `w = 1` construction, kept because its -- `extension` is `coherentImageMap chi X` definitionally (an API several consumers rely on). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.eq_sum_inner_div_norm_smul_of_mem_span #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.inner_eq_sum_inner_mul_conj_div_norm #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IntegralCharacterMap.coherentImageMapW_inner_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentEqualDegreeW -- Dade specialization: equal-degree coherence at the real (5.1) base map `τ = dadeIntegralCharacterMap`. -- The (1.4) signed family `{μⱼ, ε}` is constructed by `isometry_difference_pair_structure` applied to -- `τ` (its three hypotheses discharged from the Dade isometry), giving `Y = S(H')`/(6.6)-prefix -- coherence with no opaque hypotheses — only the genuine equal degree and supports. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentEqualDegree_fromDade -- Peterfalvi S08 T7 X-characterization support layer: restriction preserves characters, -- nonzero constituents force kernel containment, induced characters decompose with natural -- multiplicities, and the resulting `Xset` is exactly the irreducibles not killing `Z`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isCharacter_restrict #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.characterKernel_subset_of_isCharacter_of_inner_ne_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.induce_exists_natFinsupp_eq_sum -- θ-bound a-half: `Ind_C^K φ` of a genuine `φ` is genuine (brick 2), assembled with brick 1 into -- the (6.2) degree bound `θ(1) ≤ |K:C|·φ(1)` for an induced-character constituent `φ` of `θ`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isCharacter_induce #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.theta_degree_le_index_mul_constituent -- full (6.2) θ-bound: a-half × b-half + √ arithmetic ⟹ `θ(1) ≤ |K:C|·√|C:D|` (constituent kernel -- inheritance discharges the b-half's `N ⊆ Ker φ` from `N ⊆ Ker(Res θ)`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.theta_degree_le_index_mul_sqrt_index -- (6.2) step (ii), B2 assembled: the `S(A)` degree-sum `∑_{χ∈S(A)} χ(1)²/‖χ‖² = [G:H]·(|H:A|−1)`, -- combining the orbit-counted `sum_div_normSq_induce_image_eq` with the inflation degree-sum -- `sumInflatedDegreeSq_ntrivial` over the (conjugation-invariant, as `A ⊴ G`) kernel-filter `T`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.sum_div_normSq_induce_kernelFilter_eq -- Standalone general Hypothesis (6.1) coherence theorems (`K` solvable, `H ≤ K` nilpotent, `K ≠ H`), -- the form the §11/§13 maximal-subgroup analysis needs (the Sibley `six_two`/`six_three` have `K = H`). -- `IsCoherent.subset`: coherence is inherited by subsets with a nonzero supported witness (general -- monotonicity of the (5.1) predicate). `six_three_descent`: Peterfalvi (6.3)'s minimal-`A` descent -- (maximal-`B` + nilpotency-forces-centrality + `√`-arithmetic) reduced to the (6.2) index oracle. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.IsCoherent.subset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_three_descent -- (6.3) per-step index bound, general form: tower index multiplicativity (`|K:A| = |H:A|·|K:H|`, -- `|L:H| = |K:H|·|L:K|`) feeding `six_three_HH1_le`; reduces the `six_three_descent` `h62` oracle to -- the general `six_two` (6.2) bound for a solvable `K` (the single remaining deep gate). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_three_index_bound_general -- general `six_two` assembly: `map_mk'_le_center_iff` (image-in-centre ⟺ commutator condition); -- `inducedMember_re_le_general` (the (6.2) θ-degree bound `ψ(1) ≤ |L:H|·√|H:A|` for a member induced -- from the *solvable* kernel `K ⊋ H`, Clifford a-half + b-half via `theta_degree_le_index_mul_sqrt_index`, -- centrality transported across `↥(H.subgroupOf K) ≃* ↥H`); `six_two_general` (Peterfalvi (6.2), general -- (6.1) form: reduces `|K:A|−1 ≤ 2|L:H|·√|H:A|` to the (5.6) coherence oracle `h56` — the cross-lane -- §10–§12 muGrid bound, issue 2022 — by proving everything downstream of it). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.map_mk'_le_center_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedMember_re_le_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_two_general -- `six_three_of_six_two_oracle`: the single-cite (6.3) producer for §11/§13 — bundles -- `six_three_descent ∘ six_three_index_bound_general ∘ six_two_general`, leaving the (5.6) break-member -- oracle `h56` (the §10–§12 muGrid bound) as the only character-theoretic hypothesis. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_three_of_six_two_oracle -- General-kernel (6.1) family `S(X) = {Ind_K^L θ | θ ∈ Irr K, θ ≠ 1, X ⊆ Ker θ}` (the issue-2022 -- `h56` producer layer, Coq `seqIndD K L K X`): the antitone/finite/conjugation-closed suite, the -- degree-`|L:K|` anchor member (Coq `exists_linInd`), and the (6.2) B2 degree-square identity -- `∑_{χ∈S(X)} χ(1)²/‖χ‖² = |L:K|·(|K:X|−1)` in real form (general-kernel form of -- `sum_re_div_normSq_SsubFiltration_eq`; members may be reducible μ-columns). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_inducedKernelFamily_member_degree_index #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.sum_re_div_normSq_inducedKernelFamily_eq -- Break pair for *incomparable* filtrations (Peterfalvi (6.2) assumes no `S(A) ⊆ S(B)`; §11's -- (11.4) instantiates `(A,B) = (H₁, H₀C)` with neither containing the other): the absorption chain -- runs over `Sa ∪ Sb`, and a fully-absorbed chain would make `Sb` coherent by restriction -- (`IsCoherent.subset` + the nonzero supported witness), so a break pair `ψ ∈ Sb` exists. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_coherentBreakPair_union -- General-kernel family structure + the h56 producer chain (issue 2022): pairwise orthogonality / -- real positive norms / real-freeness (odd order) of the possibly-reducible family; K^#-supported -- scaled and conjugate member differences; the norm-weighted (5.6) member-family bound at a break -- (`coherentDegreeSqNormBound_of_not_coherentW_k` fed from the family layer, with the (5.2.d) -- decomposition data `Da`/`datum` as the sole grid-backed inputs); the (6.2) S(A')-sum comparison -- (B2); and the producer `exists_source_index_le_two_psi_of_break` — from `S(A')` coherent, -- `S(B)` not, an anchor, and the decomposition data, a source `θ ∈ Irr K` trivial on `B` with -- `|K:A'| − 1 ≤ 2·(Ind_K^L θ)(1)` — exactly the `h56` oracle of `six_three_of_six_two_oracle`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_pairwise_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_hasNoRealCharacters #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_scaledDiff_support #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_breakChar_fields #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_degreeSqNormReBound_of_break_k #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_SA_sum_le_two_psi_k #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_source_index_le_two_psi_of_break -- **The same chain with an abstract tau** (issue 0154): Peterfalvi Hypothesis (5.2.b) allows *any* -- linear isometry `Z[S, L^#] -> Z[Irr G, G^#]`, so the three break-chain theorems above are -- specializations of `_general` forms that take an arbitrary `tau` plus the two (5.2.b) clauses -- (`hisom` = isometry on the A0-supported sublattice of Z[S], `htauZ` = codomain Z[Irr G]). The -- Feit-Thompson Dade map discharges both by `dadeIntegralCharacterMap_inner_eq_on_supported_span` -- and `dadeIntegralCharacterMap_mem_ZIrr_of_supported`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_degreeSqNormReBound_of_break_k_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_SA_sum_le_two_psi_k_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_source_index_le_two_psi_of_break_general -- The tau-general norm-weighted (5.6) engine those rest on (issue 0154, -- `S08_GeneralAdjoinWeighted`): reducible break + reducible members + weighted degree bound -- `2a < sum deg^2 / ||chi_i||^2`, with the Dade map replaced by the single lattice-isometry -- hypothesis `hisom`. `S08.xAdjoinStepW_k` / `S08.coherentDegreeSqNormBound_of_not_coherentW_k` -- are its instantiations at the ambient family `Samb = univ`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.crux1_of_memberFamilyW_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.retarget_isCoherent_of_extensionImage_k_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.xAdjoinStepW_k_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentDegreeSqNormBound_of_not_coherentW_k_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.xAdjoinStepW_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherentDegreeSqNormBound_of_not_coherentW_general -- h56 hdatum discharge helpers: the per-member (5.2.d) datum for an *irreducible* member -- (`memberExtensionDecomposition` with the coherent extension, coupling definitional), the break -- decomposition `Da` for an *irreducible* break (`decompositionDaFromDadeOfDiff`, `tau1 = τ` -- definitional), both exposing their `R(·)` image families as equations; their composition -- discharges the full `hdatum` clause on the irreducible–irreducible diagonal -- (`dadeOrthonormalCharacterImageFamilyOfDiff_orthogonal` + family orthogonality), leaving only -- pairs involving a reducible μ-column to the §11 grid (issue 2022). Plus the anchor from a -- non-invariant linear source ([Is] 6.34) and the `S(X)`-nonemptiness pin. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_memberDatum_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_breakDa_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_memberDatum_orthogonal_breakDa_of_irr_irr #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_anchor_of_linear_of_inertia_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_nonempty_of_commutator_ne_top -- **(6.2)/(6.3) with the `h56` oracle removed and no Dade dependence** (issues 0153/0154, -- `S08_SixTwoThreeFromImageFamilies`). `InducedFamilyImageData` now carries the *whole* of the -- book's Hypothesis (5.2) data: (5.2.b) as `tau` + `tau_isometry` + `tau_mem_ZIrr`, plus -- (5.2.d)/(5.2.e); the supported set is an arbitrary `A0 : Set L`. -- Peterfalvi's Hypothesis (6.1) reads "assume that Hypothesis (5.2) holds", so the honest -- hypotheses are (5.2.d) (a difference-image family `R(χ)` per member) and (5.2.e) (`φ ⊥ {χ,χ̄}` -- ⟹ `R(φ) ⊥ R(χ)`) — *not* the conclusion-shaped break oracle. `InducedFamilyImageData` bundles -- those two for `𝒮 = S(⊥)`; `.datum` turns them into the `hdatum` clause of -- `exists_source_index_le_two_psi_of_break` (break side `decompositionDaFromDiff_general` with -- `tau1 = τ`, member side `memberExtensionDecomposition_general` with `tau1 = ν`, cross-orthogonality -- straight from (5.2.e)); both break and members may be **reducible**. `six_two_of_imageData` / -- `six_three_of_imageData` are then the book's (6.2)/(6.3) with no oracle, the solvability of `K` -- supplying the degree-`|L:K|` anchor and the `S(B) ≠ ∅` witness through -- `commutator_quotient_ne_top_of_lt`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.commutator_quotient_ne_top_of_lt #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.InducedFamilyImageData.datum -- **The book-faithful Hypothesis (5.2) carrier** (issue 0157). `S07.Hypothesis` stores (5.2.d) -- as the *two-element* signed pair `tau(chi - chibar) = eps*(mu - nu)`; taking norms against the -- (5.2.b) isometry (`||chi - chibar||^2 = 2*||chi||^2`) that forces `||chi||^2 = 1`, i.e. every -- member irreducible — which Peterfalvi's (5.2.d) does **not** require (a reducible member has -- `|R(chi)| = 2*||chi||^2`). `GeneralHypothesis` is the same carrier with `R(chi)` an orthonormal -- family of arbitrary size, and `toGeneralHypothesis` exhibits the existing one as its special -- case through `CharacterDifferenceImage.toOrthonormalImage` — so results proved over the -- general carrier apply to every current consumer unchanged. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.Hypothesis.toGeneralHypothesis -- **Peterfalvi (5.7) at book strength** (issue 0157): "Assume Hypothesis (5.2) and that `chi(1)` -- is independent of `chi`. Then `S` is coherent." — with **no irreducibility of the members**, -- which the book does not assume and which the two-element (5.2.d) carrier had been silently -- forcing. Over `GeneralHypothesis` the only extra input is that each `||chi||^2` is a natural -- number (true for characters; not recorded by the carrier). -- The base case `|S| = 2` is the split of `R(chi)` into halves: the isometry gives -- `|R(chi)| = 2m` for `m = ||chi||^2`, and any `E` with `|E| = m` makes `(sum_E, sum_E - tau(chi - -- chibar))` match the Gram matrix of `(chi, chibar)` — fed to the weighted builder -- `coherentEqualDegreeW`, which asks for Gram agreement rather than orthonormality. -- `coherent_of_constant_degree` (the two-element carrier) is now the `m = 1` specialization. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.isCoherent_pair_of_orthonormalImage #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherent_of_constant_degree_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_source_index_le_two_psi_of_imageData #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_two_of_imageData #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_three_of_imageData -- **(6.3.b) for a general kernel: `𝒮(X)` is coherent when `K/X` is abelian** -- (`S08_SixFiveGeneral`) — the one sentence Peterfalvi's proof of (6.5)(a) opens with -- ("*Since `K/H₁` is abelian and non-trivial, (6.3.b) holds by (5.7)*", p. 31), now available for -- an arbitrary solvable normal `K` instead of only the Sibley `K = H`. -- * `nonempty_characterDifferenceImage_of_irreducible` = Peterfalvi (5.3.a) for an arbitrary -- `τ`: for an irreducible non-real `χ`, `‖τ(χ − χ̄)‖² = 2`, so `τ(χ − χ̄)` is a signed pair of -- distinct irreducibles (`dirr_small_norm`), and evaluating at `1` (the book's (5.2.b) -- codomain `ℤ[Irr G, G^#]`, now carried as the `tau_apply_one` field of -- `InducedFamilyImageData`, discharged for the §11 Dade witness by -- `dadeIntegralCharacterMap_apply_one_eq_zero`) forces the two signs to be **opposite** — -- i.e. the two-element `R(χ) = {μ, −ν}` shape this repository's `S07.Hypothesis` takes. -- * `InducedFamilyTauData.hypothesis` = Hypothesis (5.2) for the sub-family `𝒮(X)`; (5.2.e) -- is *derived* (`tau_conjDiff_inner_eq_zero_of_orthogonal` + Peterfalvi (4.1) at `u = v = 1`) -- rather than transported, exactly as in the book's (5.3.a) proof. -- * `inducedKernelFamily_apply_one_eq_index_of_isMulCommutative_quotient`: a source trivial on -- `X` inflates from the abelian `K/X`, hence is linear, so every member has degree `|L:K|`. -- * `inducedKernelFamily_isCoherent_of_isMulCommutative_quotient` = the (5.7) application. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.nonempty_characterDifferenceImage_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.InducedFamilyTauData.hypothesis #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_apply_one_eq_index_of_isMulCommutative_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_isCoherent_of_isMulCommutative_quotient -- **(6.5)(a) for a general kernel** (`S08_SixFiveGeneral`): the index bound -- `|K:H₁| ≤ 4|L:K|² + 1` is the contrapositive of `six_three_of_imageData` at `H = K`, fed by the -- (6.3.b) coherence above; the chief-factor clause then follows from the already-general -- `isChiefFactor_of_relIndex_le_of_odd_dvd` (odd order + the (6.4.c) Frobenius divisibility). -- ✅ **書籍どおり `K/M` 冪零のみを仮定する** (issue 0173、2026-08-07)。以前は `K` 自体の冪零性を -- 要求していたが、原因は engine でなく **wrapper** だった: `six_three_of_six_two_oracle` は元から -- 書籍形 `[Group.IsNilpotent (↥H ⧸ M.subgroupOf H)]` を取っており、`six_three_of_imageData` が -- `[Group.IsNilpotent ↥H]` を宣言して instance 探索で商の冪零性を導いていただけ -- (= 「threading されている ≠ 依存している」)。wrapper と (6.5)(a) の 2 定理を書籍形へ直した。 -- なお (6.5)(b),(c) の section は書籍の `M = 1` の場合を扱うので、そこの `[Group.IsNilpotent ↥K]` -- は `K/M = K` ゆえ書籍 (6.4)(b) そのもの (特殊化ではない)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.relIndex_le_of_not_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isChiefFactor_of_not_isCoherent -- **(6.5)(b),(c) for a general kernel** (at `M = 1`, the case (6.6) uses). (b) `K` is a -- `p`-group: the group-theoretic core `isPGroup_of_isNilpotent_of_isFrobeniusAction_abelianization` -- was already general, and its one character-theoretic input is the (6.5)(a) bound above; the -- fixed-point-free `R`-action on `Abelianization K = K/H₁` (`|R| = |L:K|`) is what Hypothesis -- (6.4.c) supplies ("`L/H₁` is a Frobenius group with kernel `K/H₁`"). (c) `|L:K| ∤ p − 1`: a -- `p`-group with `|K:K′| < p²` has cyclic abelianization, hence (nilpotent) is abelian -- (`commutator_eq_bot_of_isNilpotent_of_isCyclic_quotient`), so `p² ≤ |K:K′|`, and -- `six_five_c_arith` contradicts the (6.5)(a) bound. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.card_abelianization_eq_relIndex #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_prime_isPGroup_of_not_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.not_dvd_sub_one_of_not_isCoherent -- **(6.6) for a general kernel, first layer** (`S08_SixSixGeneral`). `xSet K Z = 𝒮 − 𝒮(Z)` with -- its (5.2.a)/(5.2.c) suite, and the two per-member arithmetic facts the book's coherence proof -- (p. 32) runs on once (6.5) has made `K` a `p`-group: every member has degree `|L:K|·p^k`, and -- the source obeys [Is] Cor 2.30 against the **central** `Z` (`θ(1)² ≤ |K:Z|` — this is where -- `Z ⊆ Z(K)` is used, and what fails at `Z = [K,K]`). Both Sibley proofs used -- `SibleyDadeHypothesis` only through the family shape `S_eq`, so nothing is lost in the port. -- Hypothesis (5.2) for `𝒳` is the `T = xSet K Z` instance of `hypothesisOfSubfamily`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xSet_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xSet_pairwise_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_index_primePow_degree_of_mem_inducedKernelFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_source_primePow_centralBound_of_mem_xSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.InducedFamilyTauData.hypothesisOfSubfamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.InducedFamilyTauData.xSetHypothesis -- The `(6.6)` degree-square sum `∑_{χ∈𝒳} χ(1)² = |L:K|·(|K| − |K:Z|)` for a general kernel -- (the `total` of the X-chain step data): `Finset.sum_sdiff` against two instances of the general -- weighted identity `sum_re_div_normSq_inducedKernelFamily_eq` (`X = ⊥` and `X = Z`). The `‖χ‖²` -- weights cancel only on the `𝒳` side, where the members are irreducible — reducible members of -- `𝒮` are allowed as long as they lie in `𝒮(Z)` (the Sibley case-B situation). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.coe_xSetFinset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.sum_re_sq_xSet_eq -- The minimal-degree base block `𝒮₀ ⊆ 𝒳` for a general kernel: the equal-degree prefix of -- Peterfalvi (6.6) (p. 32) on which (1.1)+(1.4) gives the base coherence before the (5.6) -- adjoining of the higher-degree conjugate pairs. `2 ≤ |𝒮₀|` comes from a minimal-degree member -- together with its conjugate (`|L|` odd forbids real members, Peterfalvi (1.1)); the anchor-index -- lemma is the X-chain step-data `i₁`/`hanchor`. All of this is pure set/degree reasoning — -- the Sibley versions used no `SibleyDadeHypothesis` field beyond the family itself. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xBaseBlock_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xBaseBlock_degree_re_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.natDegree_le_of_xBaseBlock_anchor #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.two_le_xBaseBlock_ncard #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_xBaseBlock_anchor_index -- **The (6.6) X-chain fold for a general kernel, with an arbitrary `τ`** (issue 0155 step 2): -- sort `𝒳` by degree, start from the equal-minimal-degree block `𝒮₀`, adjoin conjugate pairs of -- strictly larger degree one at a time. **No Dade datum appears** — the conjugate-pair cover -- `exists_conjugatePairCover` is a statement about the *sets* in an abstract group, the -- accumulator fold `S07.coherentOfPairChainCover` is already stated for an arbitrary `τ`, and the -- `𝒳`/`𝒮₀` side conditions are the general-kernel lemmas above. The Sibley -- `Xset_isCoherent_from_adjoinSteps_withCover_of_irreducible_X` is this with `τ` pinned to -- `dadeIntegralCharacterMap`. Per-step adjoining is the caller's, intended to route through the -- `τ`-general (5.6) engine `S07.xAdjoinStepW_general` (issue 0154). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xSet_isCoherent_of_adjoinSteps -- **Base coherence of `𝒮₀` for a general kernel** (issue 0155 step 3). Peterfalvi's "By (1.1) -- and (1.4), `{χ₁,…,χₖ}` is coherent" (p. 32) is, for a general kernel, just the constant-degree -- theorem (5.7) `S07.coherent_of_constant_degree` applied to the subfamily `𝒮₀ ⊆ 𝒮`: Hypothesis -- (5.2) from `hypothesisOfSubfamily`, `≥ 2` members, equal degree by construction (real-part -- equality upgraded to complex values since irreducible degrees are positive naturals), and -- equal degree also makes the member differences `K^#`-supported. The Sibley instance -- `xBaseBlock_isCoherent_of_irreducible_X` instead builds the orthonormal target family from the -- Dade map (`coherentEqualDegree_fromDade`); routing through (5.7) keeps this `τ`-general. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xBaseBlock_isCoherent -- Routine `𝒳`-member facts for the per-step adjoining (issue 0155 step 4): the conjugate pair -- `{χ, χ̄}` of an `𝒳`-member is orthonormal (irreducible by the standing `𝒳 ⊆ Irr L`, non-real -- because `|L|` is odd — Peterfalvi (1.1)), and a break outside an accumulator `S₁ ⊆ 𝒳` is -- orthogonal to it. These are the `hrealχ`/`hχχ`/`hχbarχbar`/`hχbarχ`/`hχχbar`/`hχ_S1`/`hχbar_S1` -- inputs of the `τ`-general (5.6) engine `S07.xAdjoinStepW_general`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xMember_characterFacts #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xMember_inner_eq_zero_of_notMem -- **The (6.6) per-step adjoining for a general kernel, with an arbitrary `τ`** (issue 0155 -- step 4, the last Dade-parameterized layer). Adjoins a conjugate pair `{χ, χ̄}` of an -- `𝒳`-member to a coherent accumulator `S₁ ⊆ 𝒳` from the book's degree bookkeeping (p. 32): -- an anchor `χmem i₁` of relative degree `1`, member ratios `χmem j (1) = deg j · χmem i₁ (1)`, -- the break ratio `χ(1) = a · χmem i₁ (1)`, and the (5.6) inequality `2a < ∑ deg j²`. -- Feeds `S07.xAdjoinStepW_general` (issue 0154) **directly**, so the Sibley -- `XAdjoinStepInput`/`xAdjoinStep` layer — the only genuinely Dade-parameterized one — is -- bypassed rather than ported. Every input is a general-kernel fact: orthonormality from -- `xMember_characterFacts`/`xMember_inner_eq_zero_of_notMem`, supported differences from -- `inducedKernelFamily_scaledDiff_support` (the degree ratios make them vanish off `K^#`), the -- (5.2.d)/(5.2.e) image families **derived from irreducibility** through -- `hypothesisOfSubfamily.difference_image` + `CharacterDifferenceImage.toOrthonormalImage` -- (issue 0156 — the whole (6.6) chain needs only `InducedFamilyTauData`, i.e. (5.2.b)), -- and the per-member decomposition -- from `S07.memberExtensionDecomposition_general` (whose `imageFamily` is definitionally `R(·)` -- and whose `tau1` is the accumulator extension — both discharged by `rfl`). -- The running X-chain accumulator `pairUnion 𝒮₀ pair i`: it lies inside `𝒳` (base block plus -- already-adjoined pairs), is therefore finite, and always contains the base block — hence a -- degree-minimal anchor. These feed the per-step enumeration (`exists_finEnum_irreducible`, -- already stated for an abstract group). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.pairUnion_subset_xSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.pairUnion_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xBaseBlock_subset_pairUnion -- Tail-degree lower bound (`htail_le`): an `𝒳`-member outside the running prefix has degree at -- least the current pair head's. Cover completeness puts it in some pair `j`, and `j ≥ i` because -- pairs below `i` lie in the prefix; degree-monotonicity of the enumeration finishes. Pure -- combinatorics on the pair structure — the Sibley version used no `SibleyDadeHypothesis` field. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.characterDegree_re_le_of_notMem_pairUnion -- The bridge from the book's common-index `p`-power degrees to the *ratio* form the (5.6) engine -- consumes: once `K` is a `p`-group ((6.5)), every `𝒳`-member has degree `|L:K|·p^k`, and a -- base-block anchor has the minimal such degree, so `χ(1) = p^(k−k₁)·χ₁(1)`. Supplies the -- `hratio`/`hχratio` inputs below (and `ha1 : deg i₁ = 1` at `χ = χ₁`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_primePow_degree_ratio_of_xBaseBlock_anchor -- The `hSgen` anchor-generation condition: if every member of `S₁` has degree a natural multiple -- of the anchor's, then `ℤ[S₁] ≤ ℤ⟨ℤ[S₁, A₀] ∪ {χ₁}⟩` — split `φ = (φ − d·χ₁) + d·χ₁`, the -- bracket being `K^#`-supported because the degrees match. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.span_le_span_zSupportedSpan_union_anchor #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xAdjoinStep_of_degreeRatios -- **Peterfalvi (6.6), coherence half, for a general kernel** (issue 0155, final assembly): -- `𝒳 = 𝒮 − 𝒮(Z) ⊆ Irr L` is coherent whenever `K` is a `p`-group for an odd prime `p` coprime to -- `|L:K|` and `Z ⊆ Z(K)` — the (6.4)/(6.5) context, with an **arbitrary** `τ` (no Dade datum). -- The proof is the book's (p. 32): base coherence of the minimal-degree block by (5.7), then one -- (5.6) adjoining per degree-sorted conjugate pair. The per-step gap `2a < ∑ deg²` comes from -- the divisibility argument — member degrees `|L:K|·p^k` make every ratio over the anchor a -- `p`-power, the degree-square sum over `𝒳` is `|L:K|·(|K| − |K:Z|)` with `p`-power divisor -- `|K:Z|`, tail members have degree at least the adjoined one, and [Is] Cor 2.30 against the -- **central** `Z` bounds the source by `θ(1)² ≤ |K:Z|`, whence `χ(1)² ∣ D`. The three structural -- helpers are the accumulator's conjugation closure, nonemptiness of the base block, and the -- strict degree gap for an `𝒳`-member outside it. Sibley's `K = H` version -- (`Xset_isCoherent_of_irreducible_X` in `S08_CoherenceBasic`) is this with `τ` pinned to the -- Dade map, and takes the per-step degree data as a hypothesis instead of deriving it. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.pairUnion_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xBaseBlock_nonempty #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.natDegree_lt_of_xBaseBlock_anchor_of_notMem #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xSet_isCoherent_of_irreducible_X -- **The `InducedFamilyImageData` instance for the §11 family** (issue 0153, `S13_SixTwoImageData`): -- the concrete witness that Hypothesis (6.1) — i.e. (5.2.d)/(5.2.e) — is satisfiable in the -- Feit-Thompson setting, so `six_two_of_imageData`/`six_three_of_imageData` are not scaffolds. -- Peterfalvi (5.3.b) verbatim: irreducible members carry the two-element Dade family -- (`irrRFamily`), reducible ones the mu-grid column family `R(mu_j)` of Theorem (4.9) -- (`colRFamily`, via `columnImageFamilyCohFree`), the canonical column pair being -- `memberColumn`/`memberColumnConj`. `memberRFamily_orthogonal` is (5.2.e) in all four cases -- (irr x irr = (4.1); the two mixed cases via `irrRFamily_inner_alignedOmega_eq_zero`, i.e. -- Peterfalvi's `NC((phi - conj phi)^tau) <= 2` argument through (3.8); col x col from the four -- distinct column indices). `sixTwo_of_hypothesis`/`sixThree_of_hypothesis` are the resulting -- oracle-free (6.2)/(6.3) at `K = M'`, `tau = hyp.tau`, `A0 = hyp.A0`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.eq_columnSum_memberColumn #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.conj_eq_columnSum_memberColumnConj #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.tau_conjDiff_inner_self_eq_two #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.irrRFamily_inner_alignedOmega_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.memberRFamily_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.inducedFamilyImageData #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.sixTwo_of_hypothesis #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.sixThree_of_hypothesis -- §11 routine pins for the h56 producer (S13_SixTwoBridge): Peterfalvi's type-P support is -- exactly `A(M) = (M')^#` (typePA_eq_sharpSubgroup_derivedInG), so `(M')^# ⊆ A₀(M)` (hKsupp); -- `1 ∉ A₀(M)` (h1A, S04.ne_one); `|M|` odd in the minimal-simple-odd ambient (hodd); and the -- pinned §10 family `S12.inducedFamily` IS the general kernel-filter family at `X = ⊥`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.mderivSharp_subset_A0 #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.one_notMem_A0 #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.inducedFamily_eq_inducedKernelFamily_bot -- The h56 producer fully pinned to the §10/§11 context (S12.Hypothesis): genuine Dade data on -- A₀(M), kernel M', routine pins burned in; remaining hypotheses = anchor + S(B)-nonempty + -- the grid-backed (5.2.d) decomposition data. Conclusion = the h56 oracle shape. #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.exists_source_index_le_two_psi -- The anchor prerequisite `coprime_card_W1_derived` (S13_SixTwoBridge). ⚠ The former NOTE here -- ("cites `no_typeV_maximal` ((10.10), currently sorried upstream), NOT registered until that -- chain is axiom-clean") is **stale** (2026-07-27): (10.10) landed as the axiom-clean -- `S12.no_typeV_maximal_unconditional` (registered below), the bare-sorry legacy -- `no_typeV_maximal` was deleted, and the type-III/IV side is the registered -- `S12.isTypeIIIorIV_unconditional` (`S12.Hypothesis.isTypeIIIorIV` no longer exists). #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.coprime_card_W1_derived -- (6.5) chief-factor core + (6.5)(b) reduction: a Frobenius-acted abelian section obeying the (6.3) -- index bound `≤ 4|R|²+1` is a `p`-group (chief-factor argument via the `p`-primary component, -- `card_modEq_one` + `six_five_chief_factor_contradiction`); combined with the nilpotent -- abelianization lemma this yields "`H` is a `p`-group" for the (6.8) capstone. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isPGroup_of_card_le_of_isFrobeniusAction #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isPGroup_of_isNilpotent_of_isFrobeniusAction_abelianization -- (6.5)(b) in the (6.8)(c1) Frobenius case: `IsFrobeniusGroup G N A` + nilpotent kernel + the -- `≤ 4|A|²+1` bound ⟹ `N` is a `p`-group. The FPF `A`-action on `Abelianization N` is supplied -- from the Frobenius group (`toFrobeniusAction` + `IsFrobeniusAction.quotient` through `⁅N,N⁆`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isPGroup_of_isFrobeniusGroup_of_card_le -- (6.5)(b) in the (6.8)(c2) certain-type case: a coprime `W`-action on nilpotent `H` whose -- nonidentity-element fixed points lie in `⁅H,H⁆` (`C_H(x) = W₂ ⊆ ⁅H,H⁆`) + the bound ⟹ `H` is a -- `p`-group. Underlying Frobenius brick: `IsFrobeniusAction.quotient_of_fixedPoints_le` (FPF on -- `N ⧸ M` from the coprime fixed-point lifting Isaacs Cor 3.28, without FPF on `N`). #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.IsFrobeniusAction.quotient_of_fixedPoints_le #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isPGroup_of_isNilpotent_of_coprime_fixedPoints_le_commutator #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.characterKernel_subset_of_inner_induce_ne_zero -- **(6.6) `X`-characterization at a general kernel** (2026-07-27): the Sibley `K = H` form above is -- now the instance of `inducedKernelFamily_sdiff_eq_irreducible_not_subset_characterKernel` -- (`S08_InducedKernelFamily`), which proves `𝒮 − 𝒮(Z) = {χ ∈ Irr L | Z ⊄ Ker χ}` for ANY subgroup -- `K ≤ L` (the book's `K ⊴ L` normality is never used) and any normal `Z ≤ K`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inducedKernelFamily_sdiff_eq_irreducible_not_subset_characterKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_eq_irreducible_not_subset_characterKernel -- Peterfalvi S08 (6.2) `S₁`/`S₂` first-obstruction decomposition + its `S` no-real input. -- `exists_coherentBreakPair`: for `Sa ⊆ Sb` (conj-closed irreducible, `Sb` finite real-free) with -- `Sa` coherent and `Sb` not, the conjugate-pair cover `exists_conjugatePairCover` + the discrete -- first-failure extraction `exists_index_predicate_break` produce the intermediate coherent `S₁` -- and the breaking pair `{ψ, ψ̄}` cited at the start of the (6.2) proof. `S_hasNoRealCharacters` -- (Frobenius case) supplies the real-free input for any `S(A) ⊆ S`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_coherentBreakPair -- (6.8.3)/case-(c2) generalizations: drop the irreducibility hypothesis so the breaking pair `ψ` -- may be reducible (needed where `S` contains the `w₂−1` reducible induced characters). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_conjugatePairCover_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_coherentBreakPair_general #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.S_hasNoRealCharacters #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_hasNoRealCharacters -- (6.2) member-family per-member facts over `S₁ ⊆ S` (Frobenius case): orthonormal conjugate pair -- (`sMember_characterFacts`) and conjugate-difference support on `H^#` (`sMember_diffSupport`). -- These are the per-member `hreal`/`hχχ`/…/`hdiffsupp` fields B1 consumes for each `S`-member. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_characterFacts #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_diffSupport -- (6.2) member-family degree ratio: an `S`-member `χ = Ind θ` against a degree-`|W₁|` anchor `χ₁` -- has integer ratio `χ(1) = θ(1)·χ₁(1)` (the `deg`/`ha1` data feeding the scaled-diff support and -- `htau1_memaχ` fields). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_charValue_one_eq_mul_anchor -- (6.2) member-family core: flat enumeration of a finite conj-closed `S₁ ⊆ S` with the per-member -- orthonormality/non-real/diff-support/membership fields B1 consumes (degree data layered on). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_sMemberOrthonormalFamily -- (6.2) member-family degree data: integer ratios `deg`/`ha1`/`hmemdegdiffsupp` against a -- degree-`|W₁|` anchor, layering on the member-family core. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_sMemberDegreeData -- (6.2) anchor existence: `S(A)` has a degree-`|W₁|` member (degree-1 source of `H/A` inflated and -- induced), discharging the `hanchordeg` of `exists_sMemberDegreeData`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_mem_SsubFiltration_degree_W1 -- (6.2) adjoined-pair fields for the breaking pair `{ψ, ψ̄}`: non-realness, orthonormality, -- conjugate-difference support, and orthogonality to all of `S₁` (the `ψ ∉ S₁` from the -- strengthened `exists_coherentBreakPair`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sBreakPair_fields -- (6.2) member-family → B1 degree-sum bound: the full assembly threading the member-family core, -- degree data, adjoined-pair fields, scaled-diff support/Dade image, and the abstract generation -- bridges into B1 (`coherentDegreeSumBound_of_not_coherent`), yielding `∑ⱼ (degⱼ)² ≤ 2a`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_degreeSumBound_of_not_coherent -- (6.2) range-sum reindex + the degree-square real bound `∑ⱼ χⱼ(1)² ≤ 2ψ(1)χ₁(1)` (B1 rescaled by -- the anchor degree), the form ready to compare with B2 via `S(A) ⊆ S₁`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.sum_toFinset_range_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_degreeSqReBound_of_not_coherent -- (6.2) B2 in real/Frobenius form: `∑_{χ∈S(A)} (χ(1).re)² = |L:H|·(|H:A|−1)` (each S(A) member is -- irreducible so `χ(1)²/‖χ‖² = (χ(1).re)²`), the real-degree-square identity to compare with the -- member-family bound. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sum_re_sq_induce_kernelFilter_eq -- (6.2) core inequality `|K:A|−1 ≤ 2ψ(1)`: the member-family degree-square bound `∑_{S₁} ≤ 2ψ(1)χ₁(1)` -- combined (via `S(A) ⊆ S₁`) with the real B2 identity `∑_{S(A)} = |L:H|(|H:A|−1)`, cancelling |L:H|. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_index_le_two_psi -- (6.2) θ-bound for an induced member `ψ = Ind_H^L θ`: `ψ(1) = |L:H|·θ(1) ≤ |L:H|·|H:C|·√|C:D|` -- (`induce_apply_one` + `theta_degree_le_index_mul_sqrt_index`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.psi_degree_le_of_source -- (6.2) first-obstruction + core wiring: `S(A)` coherent ∧ `S(B)` not ⟹ ∃ ψ∈S(B), `|K:A|−1 ≤ 2ψ(1)` -- (the breaking pair from `exists_coherentBreakPair` fed to the (6.2) core `sMember_index_le_two_psi`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.six_two_index_bound -- (6.2) restriction kernel inheritance: `θ` trivial on `M` ⟹ `Res_C θ` trivial on `M.subgroupOf C` -- (discharges the θ-bound's kernel hypothesis from `ψ = Ind θ ∈ S(B)`, `θ` trivial on `B`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.characterKernel_restrict_subgroupOf -- Peterfalvi (6.2) fully assembled (Frobenius case): under the section hypotheses (S(A) coherent, -- S(B) not, B ⊆ D ⊆ C ⊆ H with D/B central in C/B), `|K:A|−1 ≤ 2|L:C|·√|C:D|`. Threads the -- first-obstruction + core (`six_two_index_bound`) with the θ-bound (`psi_degree_le_of_source`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.six_two -- Peterfalvi (6.2) central case `C = H` (the form (6.3) consumes): θ-bound via the direct b-half -- `degree_sq_le_index_of_central_quotient` (no Clifford restriction), giving `|K:A|−1 ≤ 2|L:H|√|H:D|`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.psi_degree_le_of_source_central #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.six_two_central -- (6.3) per-step index bound: a section `B ⊆ A ⊆ H₁` (A/B central, S(A) coherent, S(B) not) gives -- `|H:H₁| ≤ 4|L:K|²+1` (six_two_central + the arithmetic core six_three_HH1_le). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.six_three_index_bound -- (6.3) `hAcomm` provider: `H` nilpotent ⟹ for normal `A ⊊ H`, `[H/A, H/A] ≠ ⊤` (nontrivial -- nilpotent ⟹ not perfect). Supplies the degree-`|W₁|` anchor hypothesis of six_two/six_three. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.commutator_subgroupOf_quotient_ne_top -- (6.3) THEOREM (Frobenius K=H): `M ≤ H₁ ⊊ H`, `S(H₁)` coherent, `|H:H₁| > 4|L:H|²+1` ⟹ `S(M)` -- coherent. Minimal-A induction: maximal-B + maximality-central + per-step index bound contradiction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.six_three -- (6.5) bridge: `⁅H,H⁆.subgroupOf H = commutator ↥H` (so `|H:⁅H,H⁆| = |Abelianization ↥H|`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.commutator_subgroupOf_self -- (6.5) bridge: `S(⊥) = S` (the bottom filtration is everything; kernel condition is vacuous). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_bot -- (6.5) THEOREM (Frobenius): if `S` is not coherent then `H` is a `p`-group. `six_three` -- contrapositive (M=⊥, H₁=⁅H,H⁆) gives `|Abelianization H| ≤ 4|W₁|²+1`, then the Frobenius/odd -- p-group reduction `isPGroup_of_isFrobeniusGroup_of_card_le`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isPGroup_of_not_coherent -- (6.6) ingredient: for a finite p-group, every irreducible character degree is a power of p -- (degree ∣ |K| = pⁿ). Feeds the `θ = p^m` source-degree fields of the X-chain step data. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_primePow_natDegree_of_isPGroup -- (6.6) ingredient: a nontrivial odd-order p-group has p ≥ 3 (its order pⁿ is odd). The `3 ≤ p` -- field of the X-chain step data. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.three_le_prime_of_isPGroup_of_odd -- (6.6) X degree-sum identity (Frobenius): ∑_{χ∈X=S−S(Z)} (χ 1).re² = |L:H|·(|H| − |H:Z|), -- the difference of the S(A) degree-sum identity at A=⊥ and A=Z. The `total` of the X-chain step. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sum_re_sq_Xset_eq -- (6.6) ingredient: a quotient of a finite p-group has p-power order (so |H:Z| = p^k), the key to -- θχ(1)² ∣ |H:Z| (both p-powers) in the (6.6) divisibility. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_primePow_card_quotient_of_isPGroup -- (6.6) per-member degree shape: every S-member χ = Ind θ has χ(1) = |L:H|·θ(1) = |L:H|·p^k -- (H a p-group). The common-index p-power degree of each X-chain member. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_index_primePow_degree_of_mem_S -- (6.6) vectorized per-member degree data (χmem j (1) = |L:H|·p^(mmem j)) for an X-member family. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_memberDegreeData -- (6.6) htotal factorization: |L:H|·(|H|−|H:Z|) = |H:Z|·(|L:H|·(|Z|−1)) (Lagrange); total=qtot·c. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.index_mul_card_sub_factor -- (6.3) nilpotency central step: in a finite nilpotent group, a nontrivial normal subgroup meets -- the centre (`N ⊓ Z(G) ≠ ⊥`), via the upper central series least-index argument. Discharges the -- `A/B ⊆ Z(H/B)` central condition of the (6.3) minimal-A induction (with maximality of B). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isNilpotent_normal_inf_center_ne_bot -- (6.3) maximal-B step: in a finite group, `M < A` (M normal) has a maximal normal `B` with -- `M ≤ B < A` (any normal `C` with `B ≤ C < A` is `B`). The maximal-B of the (6.3) induction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_maximal_normal_between -- (6.3) maximality forces centrality: with `H ◁ Γ` nilpotent, `B < A ≤ H` and `B` maximal normal -- below `A`, the nilpotency central step + maximality give `A/B ⊆ Z(H/B)`. Discharges the -- `hcentral` hypothesis of `six_three_index_bound` in the (6.3) minimal-A / maximal-B induction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.normal_central_of_maximal_normal_below --- Peterfalvi S08 T8 base-block bridges: the Frobenius-specific X-base coherence helpers --- are factored through the honest abstract hypothesis `X ⊆ Irr L`, and the case-A specialization --- consumes `isIrreducibleCharacter_of_mem_Xset_caseA`. These are assembly bridges only; they do --- not add new hard hypotheses or depend on `sibleySetup_is_coherent`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_characterFacts_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_diffSupport_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.sMember_scaledDiffSupport_of_charValue_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.scaledDiff_dadeImage_mem_ZIrr #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_scaledDiffSupport_of_degreeData #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_scaledDiffSupports_of_degreeData #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_closedUnderConjugate_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_hasNoRealCharacters_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xSet_finite_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.natDegree_le_of_xBaseBlock_anchor #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.natDegree_lt_of_xBaseBlock_anchor_of_not_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_closedUnderConjugate_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.two_le_xBaseBlock_ncard_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_isCoherent_of_irreducible_X -- Frobenius-specialized wrappers used by downstream c1/S09 assembly callers. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_characterFacts #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xMember_diffSupport #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_hasNoRealCharacters #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xSet_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.two_le_xBaseBlock_ncard #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_isCoherent_caseA #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_isCoherent_from_adjoinSteps_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.pairCover_orthogonal_to_prefix #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xPair_stepCoreFacts_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_pairUnion_memberFamily_of_irreducible_X #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_degreeRatios #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.exists_natDegreeData_for_xAdjoinMemberFamily set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.natDegree_pos_of_irreducibleCharacter_apply_one_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.commonIndex_pos_of_natDegree_factor #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.coprime_commonIndex_primePower #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.natDegreeSquareSum_pos_of_memberFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.sq_dvd_natDegreeSquareSum_of_commonIndex #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_natDegreeGap set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_degreeDivisibility_natGap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.natDegreeDvd_of_commonIndex_primePowerData #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.degreeDivisibilityInputs_of_commonIndex_primePowerData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_degreeDivisibility_primePowerSums set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_commonIndexPrimePowerSums set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_pairUnion_commonIndexPrimePowerSums set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_pairUnion_baseAnchor_commonIndexPrimePowerSums set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_isCoherent_from_pairUnionStepData_of_irreducible_X set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_isCoherent_from_anchoredPairUnionStepData_of_irreducible_X set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_commutator_isCoherent_from_pairUnionStepData_of_frobenius set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_commutator_isCoherent_from_anchoredPairUnionStepData_of_frobenius set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.mem_xSetFinset_iff_mem_Xset set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_isCoherent_of_irreducible_X set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_centralCommutator_isCoherent_of_c2_caseA #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.two_mul_lt_sq_of_commonIndex_primePower_gap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.realDegreeBound_of_natDegreeSumCommonIndexPrimePowerGap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.normalizedDegreeGap_of_natDegreeSumCommonIndexPrimePowerGap set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xAdjoinStepInput_of_memberFamily_degreeDivisibility_commonIndexNatGap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.normalizedDegreeGap_of_realDegreeBound #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.realDegreeBound_of_natDegreeSumPrimePowerGap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.normalizedDegreeGap_of_natDegreeSumPrimePowerGap #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.xAdjoinStep set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.coherentDegreeSumBound_of_not_coherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_three_HH1_le #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_five_index_contradiction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_five_chief_factor_contradiction -- Peterfalvi (6.5)(a), chief-factor clause (group-theoretic form) set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.isChiefFactor_of_relIndex_le_of_odd_dvd #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.six_five_c_contradiction #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.XAdjoinStepInput.adjoin #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_eq_ite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_weightedOutput set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.weightedOutput_inner_self_eq_sum_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.weightedOutput_inner_self_re_eq_sum_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.one_le_weightedOutput_inner_self_re #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.ofIsCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_eq_ite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_weightedDifferenceInput #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_eq_one_sub_norm #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_re_eq_one_sub_sum_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_re_nonpos -- [Is] Thm 6.34 (Mackey restriction, normal-subgroup case): `|H| • Res_H (Ind_H^G θ) = ∑_{x∈G} θ^{x⁻¹}`. -- The unnormalized Frobenius/Mackey restriction formula; the heaviest analytic brick of [Is] 6.34, -- feeding Peterfalvi (6.8)'s `Y = S(H')` (induced irreducibles of common degree `|W₁|`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_smul_restrict_induce -- [Is] Thm 6.34 (norm part): `|H| · ‖Ind_H^G θ‖² = |I_G(θ)|` for irreducible `θ` (= `[I_G(θ):H]`), -- via Frobenius reciprocity + the Mackey sum + orthonormality of irreducibles. #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_mul_inner_self_induce #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_mul_inner_self_induce_eq_card_inertia -- **BG Lemma 2.7(a)** (p. 31): `p ≠ q` primes, `Q ≅ (ℤ/q)²` acting faithfully and `𝔽_p`-linearly -- on a 2-dimensional `𝔽_p`-space ⟹ `q ∣ p − 1`. Route: `Q` non-cyclic ⟹ the action is reducible -- (Singer order bound, contrapositive) ⟹ Maschke splits off two invariant lines, each with a -- character `Q →* 𝔽_p`; not both can be trivial (faithfulness), and a nontrivial value is a -- `q`-th root of unity. Issue 0150; part (b) (the power-map `α`) is still open. #assert_only_allowed_axioms OddOrder.RepresentationTheory.prime_dvd_sub_one_of_faithful_rank_two -- **BG Lemma 2.7(b)**: in the same situation some `α ∈ Q^#` acts as a power map `x ↦ r·x` with -- `r^q = 1`, `r ≠ 1`. Route: the quotient character `ψ = χ₁/χ₂ : Q →* 𝔽_p^×` has `q`-th-root -- values, so its range (a subgroup of the cyclic `𝔽_p^×`) has order dividing `q`; with `|Q| = q²` -- the kernel has order ≥ q ≥ 2, and any `α ≠ 1` in it acts by the common scalar on both lines. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_powerMap_of_faithful_rank_two -- Peterfalvi (1.7), constituent count: if `Ind_H^G θ = e·∑_{χ ∈ S} χ` with a single common -- multiplicity `e`, then `e²·|S|·|H| = |I_G(θ)|` — the book's `n = [I_G(θ):H]/e²`, stated -- multiplicatively. Both sides are `|H|·‖Ind θ‖²` (norm part above + orthonormality of `Irr G`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.sq_mul_card_mul_card_eq_card_inertia_of_induce_eq_nsmul_sum -- Cross Mackey inner product + orthogonality of induced characters from non-conjugate irreducibles -- (`⟨Ind θ, Ind ψ⟩ = 0`), used to prove the (6.8) `Y = S(H')` family `j ↦ Ind_H^L θ_j` injective. #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_mul_inner_induce #assert_only_allowed_axioms OddOrder.RepresentationTheory.inner_induce_eq_zero_of_not_conj -- Linear (degree-one) irreducible character from a hom `H →* ℂˣ`: the source characters of the -- (6.8) `Y = S(H')` family are the nontrivial linear characters of `H` (`= Irr(H/H') ∖ {1}`). #assert_only_allowed_axioms OddOrder.RepresentationTheory.linearIrreducibleCharacter set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.compHom_linearIrreducibleCharacter -- Degree-one irreducible characters are multiplicative / kill commutators — lets a linear `θ` of `H` -- inflate from the abelian quotient `H/⁅H,H⁆` (the (6.8)(c2) inertia bridge). #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.map_mul_of_apply_one_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.apply_ne_zero_of_apply_one_eq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_linearIrreducibleCharacter_eq_of_apply_one_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.apply_one_eq_one_of_isMulCommutative set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.exists_linearIrreducibleCharacter_eq_of_isMulCommutative set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsIrreducibleCharacter.apply_commutatorElement_eq_one_of_apply_one_eq_one -- (6.8)(c2) inertia bridge infra: inflation–conjugation equivariance + inertia transfer -- (`g ∈ I_L(inflate θ̄) ↔ ḡ ∈ I_Ḡ(θ̄)`), and the abelian Brauer count (`C_{H̄}(ḡ)=1 ⟹ ḡ` fixes only -- the trivial class). With Isaacs 3.28 these discharge `inertia(θ)=H` for linear `θ` in case c2. #assert_only_allowed_axioms OddOrder.RepresentationTheory.conjBy_compHom_eq_compHom_conjBy #assert_only_allowed_axioms OddOrder.RepresentationTheory.mem_inertia_compHom_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_fixedPoints_conjClassPerm_eq_one_of_commute_of_centralizer_inf_eq_bot #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_compHom_eq_of_subset_characterKernel -- Norm-1 virtual character with positive degree is irreducible (reusable Fourier criterion). #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIrreducibleCharacter_of_inner_self_one_of_apply_one_pos -- Brauer conjugation bridge: if ambient centralizers of nonidentity elements of `H` lie in `H`, -- every `g ∉ H` fixes only the identity conjugacy class, hence nontrivial irreducibles have -- inertia group exactly `H`. This is the free-action input for [Is] Thm 6.34 in Peterfalvi (6.8). #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_fixedPoints_conjClassPerm_eq_one_of_not_mem_of_centralizer_le #assert_only_allowed_axioms OddOrder.RepresentationTheory.inertia_eq_of_freeAction -- Frobenius-group specialization: centralizer-kernel property from Isaacs Ch.6 discharges inertia. #assert_only_allowed_axioms OddOrder.RepresentationTheory.inertia_eq_of_frobeniusGroup -- [Is] Thm 6.34 capstone: H ⊴ G, θ ∈ Irr H, I_G(θ) = H ⟹ Ind_H^G θ ∈ Irr G. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIrreducibleCharacter_induce_of_inertia_eq -- Frobenius-group consumer form of [Is] Thm 6.34, used by Peterfalvi (6.8) case c1. #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIrreducibleCharacter_induce_of_frobeniusGroup -- Degree side of Clifford's theorem: `χ(1) = ∑_θ ⟨Res χ,θ⟩·θ(1)` (Fourier expansion of `Res χ`). -- The degree component of the (9.9.a) Clifford-degree assembly (issue 2031). #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_eq_sum_restrictionMultiplicity_mul -- Clifford single-orbit (module level): two simple `k[H]`-submodules of a `G`-irreducible -- restriction have conjugate characters `χ_{N'}(h) = χ_N(g⁻¹ h g)` — the core of -- `RestrictionConstituentsSingleOrbit` (issue 2031), from `iSup_map_conjSemilinearEnd_eq_top`. #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_conj_of_simpleSubmodule -- Constituent ⟺ submodule bridge (module side): a nonzero `H`-intertwiner `σ → Res^G_H ρ` -- (`σ` irreducible) yields a simple `k[H]`-submodule of `Res^G_H ρ` with character `χ_σ` (Schur + -- `equivLinearMapAsModule` + `LinearEquiv.ofInjective` + `char_iso`); issue 2031 補題4 core. #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_simpleSubmodule_character_eq_of_ne_zero_intertwiner -- **Clifford's theorem, single-orbit (character level)** ([Is] Thm 6.5, first clause): for a -- `G`-irreducible χ and `H ⊴ G`, the constituents of `Res^G_H χ` form a single `G`-conjugation -- orbit. Discharges the `RestrictionConstituentsSingleOrbit` scaffold hypothesis (issue 2031). #assert_only_allowed_axioms OddOrder.RepresentationTheory.restrictionConstituentsSingleOrbit_of_isIrreducible -- **Clifford's theorem, degree formula** ([Is] Thm 6.5): `χ(1) = ⟨Res χ,θ₀⟩·[G:I_G(θ₀)]·θ₀(1)` for a -- constituent `θ₀` (degree expansion + single-orbit + common multiplicity + orbit size). issue 2031. #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_eq_restrictionMultiplicity_mul_index_inertia -- **Clifford correspondence** ([Is] Thm 6.11): an irreducible `χ` lying over `ψ ∈ Irr I` whose -- induction `Ind_I^G ψ` is irreducible equals that induction, so `χ(1) = [G:I]·ψ(1)`. This is the -- (9.9.a) "induced from a linear character of `HC`, degree `u`" route (issue 2031/2030). #assert_only_allowed_axioms OddOrder.RepresentationTheory.coe_eq_induce_of_liesOver_of_isIrreducibleCharacter_induce #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_eq_index_mul_of_liesOver_of_isIrreducibleCharacter_induce -- **Constituent degree bound**: an irreducible `χ` lying over `ψ ∈ Irr I` has degree `χ(1) ≤ -- (Ind_I^G ψ)(1)` (genuine-character Fourier expansion + nonneg multiplicities). Unlike the Clifford -- correspondence it needs no irreducibility of `Ind ψ`; it forces `e = 1` in (9.9.a) (issue 2031). #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_le_induce_apply_one_of_liesOver -- **Clifford correspondence degree (e=1 sandwich)**: `χ` over a linear `θ₀ ∈ Irr H` with inertia `I` -- and over a linear `ψ ∈ Irr I` ⟹ `χ(1) = [G:I]`. Sandwiches the Clifford lower bound `e·[G:I]` -- against the constituent upper bound `[G:I]`, forcing `e = 1`. Abstract core of (9.9.a) (issue 2031). #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_eq_index_of_liesOver_linear_inertia -- Peterfalvi (6.8) T6/Y-family consumer side: degree-one induced families have common degree, -- supported differences on `H#`, irreducibility from c1/c2 inertia, and equal-degree coherence. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.induce_apply_one_eq_card_W1_of_degree_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.support_sub_induce_subset_sharpImage_of_apply_one_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.support_sub_induce_subset_sharpImage_of_degree_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentInducedDegreeOneFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inertia_eq_H_of_c2 #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inertia_eq_H_of_c2_caseA #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isIrreducibleCharacter_induce_of_degree_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentYFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentYFamily_of_pairwiseNonconj #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.induce_linearIrreducibleCharacter_mem_Yset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_linearIrreducibleCharacter_eq_of_YsetSource #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_linear_source_of_mem_Yset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.mem_Yset_iff_exists_linear_source #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_subset_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_subset_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Yset_subset_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.disjoint_Xset_SsubFiltration #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_union_SsubFiltration_eq_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_antitone #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_mono #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_commutator_eq_Xset_union_filtrationDiff #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.disjoint_Xset_Yset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_union_Yset_eq_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.irreducibleCharacter_conj_ne_trivial #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.S_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.S_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Xset_closedUnderConjugate_unconditional #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.xBaseBlock_closedUnderConjugate_unconditional #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_nonempty_of_commutator_quotient_ne_top #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_nonempty_of_nontrivial_solvable_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.SsubFiltration_nonempty_of_subgroupOf_ne_top #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.range_induce_linearIrreducibleCharacter_subset_Yset set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.range_induce_linearIrreducibleCharacter_eq_Yset_of_induce_surjective #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.finite_linearCharacters_of_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Yset_finite #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isIrreducibleCharacter_of_mem_Yset #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inner_eq_zero_of_mem_span_of_disjoint_irreducible set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inner_span_Xset_Yset_eq_zero_of_irreducible_X set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.exists_Yset_linearRepresentativeFamily set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentYset_of_pairwiseNonconj #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentYset_of_two_le_ncard #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Yset_nonempty #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Yset_hasNoRealCharacters #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.Yset_closedUnderConjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.two_le_Yset_ncard #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentYset -- (6.8) capstone X-empty (abelian) branch: `S = Y` ⟹ CoherenceTarget = coherentYset. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherenceTarget_of_Xset_empty set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_irreducible_X set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_irreducible_X_mixed_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_irreducible_X_generator_mixed_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isIrreducibleCharacter_of_mem_S_of_frobenius #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isIrreducibleCharacter_of_mem_Xset_of_frobenius set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inner_span_Xset_Yset_eq_zero_of_frobenius set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_frobenius set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_frobenius_mixed_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_Xset_commutator_Yset_glued_of_frobenius_generator_mixed_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_frobenius_pairUnionStepData_generator_mixed_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.coherentS_of_frobenius_anchoredPairUnionStepData_generator_mixed_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.isIrreducibleCharacter_of_mem_Xset_caseA -- Peterfalvi (4.1) (mmd 04.6 L5): signed irreducibles with orthogonal, degree-`0` signed -- differences are pairwise orthogonal — the lemma promoting difference-orthogonality to full -- image-orthogonality (`X^{τ₂} ⊥ Y^{τ₁}`), the (6.8.1) `himg_ortho` ingredient. Sub-lemmas: -- `eq_inner_smul_of_inner_ne_zero` (`±Irr` equal up to sign) and -- `apply_one_ne_zero_of_mem_ZIrr_of_inner_self_one` (`±Irr` has nonzero degree). #assert_only_allowed_axioms OddOrder.RepresentationTheory.pairwise_inner_eq_zero_of_orthogonal_signedDifference #assert_only_allowed_axioms OddOrder.RepresentationTheory.inner_eq_zero_of_orthogonal_signedDifference #assert_only_allowed_axioms OddOrder.RepresentationTheory.eq_inner_smul_of_inner_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.apply_one_ne_zero_of_mem_ZIrr_of_inner_self_one -- (4.1) inputs for `himg_ortho`: two coherences off the same Dade base map have cross -- inner products (`inner_extension_eq_inner_of_supported`, the difference-orthogonality) and -- degree-`0` values (`extension_apply_one_eq_zero_of_supported`) governed by the Dade isometry on -- supported lattice elements (`extends_on_supported` + the §4 Dade isometry / vanish-at-`1`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inner_extension_eq_inner_of_supported #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.extension_apply_one_eq_zero_of_supported -- (6.8.1) norm-bound forcing (mmd L176): `a ∣ b` (from (6.7)) + the `Y`-part norm bound -- `(b−a)² + (m−1)b² ≤ 1 + a²` (`a,m ≥ 2`) ⟹ `b = 0` (or the relabel-reducible edge `b=a, m=2`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.eq_zero_or_edge_of_dvd_of_normBound -- (6.8.1) Dade reciprocity gateway (TI case `H a = ⊥`): the (2.7) `adjoint_formula` collapses -- (`adjointAverageFun_eq_of_H_eq_bot`) to `⟨α^τ, ψ⟩_G = ⟨α, Res_L ψ⟩_L` for supported `α`, the -- structural input for the `Res_L(η₁^{τ₁})` decomposition. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.adjointAverageFun_eq_of_H_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.inner_dadeIntegralCharacterMap_eq_inner_restrict -- Sibley-carrier reciprocity wrapper (uses the new `dade_H_eq_bot` TI field). #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.inner_tau_eq_inner_restrict -- (6.8)(b) faithfulness (issue 0172 §6 audit): the book says "`τ` is the restriction to -- `ℤ[𝒮, L^#]` of `Ind_L^G`" (p. 33) while the carrier's `tau` is the §4 Dade isometry, and -- `CoherenceTarget` uses `A = H^#` instead of `L^#`. Both gaps are closed: `tau_apply_eq_induce` -- identifies the maps on the supported lattice (TI ⟹ all local subgroups trivial ⟹ both are the -- same pointwise recipe, the §8 analogue of `S15.H_sharp_tau_eq_induce` for (13.2.e)), and -- `zSupportedSpan_ne_one_eq_sharp` identifies the lattices (`Ind_H^L θ` vanishes off the normal -- `H`). `CoherenceTarget.toBookForm` transports the capstone `sibleySetup_is_coherent` to the -- book's `(𝒮, L^#, τ)` statement. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.tau_apply_eq_induce #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.zSupportedSpan_ne_one_eq_sharp #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.CoherenceTarget.toBookForm -- Peterfalvi (7.10) consumer algebra: sum and normalize the weighted Ind equations. #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_weightedDifferenceInput set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_weightedDifferenceInput_eq_weightedOutput_sub_sum_sq_smul_chi_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.image_weightedDifferenceInput_eq_weightedOutput_sub_norm_smul_chi_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_eq_one_sub_norm set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_re_eq_one_sub_sum_sq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.IndChainDecomposition.inner_chi_zero_image_weightedDifferenceInput_re_nonpos set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S08.SibleyDadeHypothesis.indChainDecomposition_of_frobenius_anchoredPairUnionStepData_generator_mixed_inner -- Peterfalvi (7.8) bridge from the S09 `ν` interface to a concrete S07 coherence witness. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_mem_ZIrr_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_mem_ZIrr_of_isCoherent_of_mem -- Peterfalvi (7.8) indexed source set and `ζᵢ` image consumers for the same S07 witness. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zeta_mem_sourceSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaDistinct_mem_sourceSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChainDecomposition_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChainDecomposition_of_coherenceOn set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChainDecomposition_of_sibley_frobenius_anchoredPairUnionStepData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_image_eq_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_image_eq_zero_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_eq_ite_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_weightedOutput_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_image_weightedDifferenceInput_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_image_weightedDifferenceInput_eq_weightedOutput_sub_sum_sq_smul_chi_zero_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_image_weightedDifferenceInput_eq_weightedOutput_sub_norm_smul_chi_zero_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_zero_image_weightedDifferenceInput_eq_one_sub_norm_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_zero_image_weightedDifferenceInput_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_weightedOutput_inner_self_eq_sum_sq_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_weightedOutput_inner_self_re_eq_sum_sq_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_one_le_weightedOutput_inner_self_re_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_zero_image_weightedDifferenceInput_re_eq_one_sub_sum_sq_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.indChain_inner_chi_zero_image_weightedDifferenceInput_re_nonpos_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_zeta_mem_ZIrr_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_zetaDistinct_mem_ZIrr_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_mem_ZIrr_of_sourceDiff_mem_ZIrr set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.sourceDiff_mem_ZIrr_of_ind_mem_ZIrr_of_zeta_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.sourceDiff_mem_ZIrr_of_irreducible set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_mem_ZIrr_of_ind_mem_ZIrr_of_zeta_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_mem_ZIrr_of_irreducible_sourceDiff set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.delta_mem_ZIrr_of_beta_mem_ZIrr_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.delta_mem_ZIrr_of_ind_mem_ZIrr_of_zeta_irreducible_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.delta_mem_ZIrr_of_irreducible_sourceDiff_and_isCoherent -- Peterfalvi (7.8) norm-one and signed-irreducible image bridges for coherent `ζᵢ`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zeta_inner_self_eq_one_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_zeta_inner_self_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_zeta_inner_self_eq_one_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaImage_inner_self_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaImage_inner_self_eq_one_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.exists_zsmul_irreducibleCharacter_nu_zeta_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.exists_zsmul_irreducibleCharacter_zetaImage_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.nu_zeta_isIrreducibleCharacter_of_isCoherent_of_apply_one_pos set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaImage_isIrreducibleCharacter_of_isCoherent_of_apply_one_pos -- Peterfalvi (7.8.b) raw norm-bound consumers from `NormEstimates`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaNuRho_inner_self_re_ge_of_normEstimates #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.gamma_inner_self_re_le_of_normEstimates -- Peterfalvi (7.8.a)/(7.8.b) `BetaDecomp` algebra and norm consumers. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.weightedNuSum_orth_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.constOne_orth_weightedNuSum #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.weightedNuSum_orth_gamma #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.gamma_orth_weightedNuSum #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.delta_eq_weightedNuSum_add_gamma #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.delta_orth_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.constOne_orth_delta #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.betaNormSq_eq_of_weightedNuSum_norm #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.weightedNuSum_inner_zetaImage_eq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.sourceZeta_inner_zetaDistinct_eq_ite_of_irreducible_distinct set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.weightedNuSum_inner_zetaImage_eq_one_of_irreducible_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.weightedNuSum_inner_self_eq_of_source_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.betaNormSq_eq_of_source_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.gammaNormSq_eq_of_source_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.normEstimates_of_source_orthogonal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.normEstimates_of_inner_values_irreducible_source_data_and_uv_formula set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaNuRho_inner_self_re_ge_of_inner_values_irreducible_source_data_and_uv_formula set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.gamma_inner_self_re_le_of_inner_values_irreducible_source_data_and_uv_formula set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_inner_zetaImage_eq_int_sub_one_of_weighted #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_inner_zetaImage_eq_int_sub_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.beta_inner_zetaImage_eq_int_sub_one_of_irreducible_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis78.zetaNuRhoNormSq_eq_kernelRatio_mul_int_sub_one_of_irreducible_source_data -- Peterfalvi (7.9) residual cross-term reduction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.beta_inner_beta_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.zetaImage_cross_eq_zero_of_support_subset #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.zetaImages_mem_ZIrr_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_and_zetaImages_mem_ZIrr_of_ind_mem_ZIrr_of_zeta_irreducible_of_isCoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.beta_inner_beta_expand_delta #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_cross_equation #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_cross_integral_of_ZIrr set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_cross_integral_of_ind_mem_ZIrr_of_zeta_irreducible_of_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_cross_integral_of_irreducible_sourceDiff_and_isCoherent set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_ind_mem_ZIrr_of_zeta_irreducible_of_isCoherent_parity set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_ind_mem_ZIrr_of_zeta_irreducible_of_isCoherent_parity_of_zeta_support set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_irreducible_sourceDiff_and_isCoherent_parity #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_delta_cross_nonzero #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_delta_cross_integral_parity #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.conclusion_of_delta_cross_even_of_ZIrr -- Peterfalvi (7.5) reduced family inequality input for the (7.10) assembly. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.reduced_inequality_of_estimates set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.one_le_G0_norm_sum_of_one_le_norm_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.one_le_norm_sq_apply_one_of_signed_irreducible set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.one_le_G0_norm_sum_of_signed_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.card_kernel_sharp_div_card_L_eq_h_sub_one_div_e_mul_h_real set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.base_estimate_of_family71_reduced_estimates set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family71_reduced_estimates set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.base_estimate_of_family71_reduced_estimates_of_signed_irreducible set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family71_reduced_estimates_of_signed_irreducible -- Peterfalvi (7.10) final assembly sockets for `CharacterEstimateData`. set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family71_signed_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family71_coherent_zeta_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family71_coherent_zeta_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_family71_coherent_zeta_source_data #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.localKernelOrder_eq_h #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.localComplementIndex_eq_e set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.localSmallIndex_of_family_cardinalities set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.zetaNuRho_inner_self_re_ge_of_family_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.gamma_inner_self_re_le_of_family_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.zetaNuRhoNormSq_eq_familyRatio_mul_int_sub_one_of_source_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.Bsum_le_of_orthogonal_integer_decomposition -- Peterfalvi (7.10) lower-bound bridge constructors from the penultimate, -- rational B-sum, and real reduced-inequality inputs. set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.exists_lowerBoundTerm_of_exists_penultimate #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_Bsum_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.exists_lowerBoundTerm_of_exists_Bsum_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.base_estimate_of_real_reduced_family_inequality set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_real_reduced_family_inequality set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_real_Bsum_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.exists_lowerBoundTerm_of_exists_real_Bsum_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_real_reduced_family_inequality_and_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_real_reduced_family_inequality_and_source_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_source_decomposition_of_family_cardinalities #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_family_source_decomposition #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_characterEstimateData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_real_reduced_family_inequality_and_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.lowerBoundTerm_of_family_source_decomposition -- Peterfalvi (7.11) terminal contradiction from the displayed (7.10) lower bound. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_lowerBoundTerm -- Peterfalvi (7.11) terminal contradictions from existential final-assembly inputs. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_exists_penultimate #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_exists_Bsum_bound #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_exists_real_Bsum_bound -- Peterfalvi (7.11) conditional terminal contradiction from the named (7.10) estimate data. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_characterEstimateData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_family71_coherent_zeta_source_data -- Peterfalvi (7.11) consumer from the `𝓑`-sum bound and real reduced family inequality. #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_real_Bsum_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_real_reduced_family_inequality_and_decomposition set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0_of_family_source_decomposition /-! ### Top-level Feit–Thompson reduction (downstream). -/ -- Minimal-counterexample reduction: *if* no minimal simple group of odd order exists, -- *then* every finite group of odd order is solvable. Pure group theory (strong induction -- on `|G|` + `solvable_of_ker_le_range`). The complete downstream chain is guarded again -- at the end of this file after the Section 16 producers. #assert_only_allowed_axioms OddOrder.feitThompson_of_noMinimalSimpleOdd -- Section 16 assembly boundary: -- `sectionSixteenHypothesis_of_inputs` builds `Peterfalvi.S16.Hypothesis` from an explicit -- `Section16Inputs` menu *without* `sorry` (it derives `η = τ₃∘ω`, `m`, oddness, `finiteG`). -- This assertion locks in that the assembly itself remains axiom-clean. #assert_only_allowed_axioms OddOrder.sectionSixteenHypothesis_of_inputs -- Pure T-side ν-grid facts threaded through the named-input carrier and assembled at the same -- axiom-clean boundary; this deliberately excludes the post-(14.9) commutativity of V. #assert_only_allowed_axioms OddOrder.sectionSixteenNuGridSupplyData_of_inputs -- cd producer (POLE-1 charData) building block: the §6 certain-type Hypothesis (4.2) with `W₁ = K` -- the chosen κ-Hall pairing factor, built from the BG §14/§16 type-`P` theory (complement + -- centralizer law). Lets the cd producer index the `ω`/`μ`-grids by `tp.W₁ = mp.K` directly. #assert_only_allowed_axioms OddOrder.certainTypeHypothesis_of_typeP_kappaHall -- The two members' certain-type machinery wired to `mp` (S-side `W₁ = mp.K`, T-side `W₁ = mp.Kstar`). #assert_only_allowed_axioms OddOrder.Section16MaximalPair.certainTypeS #assert_only_allowed_axioms OddOrder.Section16MaximalPair.certainTypeT /-! ### BG Appendix C (finite-field norm-set argument). -/ -- Peterfalvi §15/§16 standalone cyclotomic and growth arithmetic feeding the -- final Section 16 comparison. These are independent of the theorem-level -- Section 15/16 scaffolds that still carry `sorry`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.q_ne_two #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.p_ne_two #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.three_le_q #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.three_le_p #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_odd set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_dvd_of_modEq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_coprime_of_not_modEq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_not_dvd_self_of_not_modEq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_prime_dvd_modEq_one_of_not_modEq_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_quotient_dvd_modEq_one_of_not_modEq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.cyclotomic_divisor_facts #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.m_value_ge_aux #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.m_value_gt_seven_tenths #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.m_value_gt_four_fifths set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.q_not_modEq_one_mod_p set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.tSide_cyclotomic_quotient_odd set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.tSide_cyclotomic_quotient_coprime set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.tSide_cyclotomic_quotient_divisor_modEq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.v_odd #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.v_pos #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.v_ne_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.v_coprime_q_sub_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.divisor_modEq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.pq_lt_v #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForTData.two_p_lt_v #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.q_pow_gt_p_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.q_pow_gt_p_pow set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.cyclotomic_quotient_sub_one_ge_pow_pred set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.gap_coefficients_nonzero_of_delta_parity set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_inner_trivial set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIDifference set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero_with_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero_with_projectionData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero_with_projectionData_galois_and_eq_induce set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero_with_projectionData_and_galois set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIredZero_with_conjugateProjectionData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIDifference_induced_inner_self set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_induced_primeTIDifference_with_norm set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_induced_primeTIDifference_with_norm_and_anchor_orthogonality set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_induced_primeTIDifference_with_norm_anchor_orthogonality_and_galois set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_typeIII_primeTIDifference_with_anchor_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideCoherentExtension_inner_trivial set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.T_typeIII_calT1_family_galois set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.inducedFamily_mapRingEquiv_mem set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.primeTIred_zero_mapRingEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_mapRingEquiv_bridge set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_inner_eq_zero_of_coherent_difference set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_inner_galois_eq_intCast set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_eta_axis_coefficients_constant set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_axis_galois_orbits_of_hypothesis set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_conj_of_support set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideCoherentExtension_conj set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDelta_isReal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.dadeHypothesis_eq_of_H_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_eq_full_typeP1DadeMap_of_support -- ⏳ pending (issue 3004): `escaping_typePA0_eq_empty_of_isTypeP1` / -- `typePA0_isTISubset_of_isTypeP1` は sorried deep inputs に推移依存 (sorryAx) のため -- assert しない — deep inputs が閉じたら再登録 (2026-07-11 hub fix-forward、618a0285 の過剰主張除去)。 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fullTypeP1Dade_H_eq_bot_of_typePA_centralizer_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fullTypeP1Dade_H_eq_bot_of_isTISubset set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_eq_induce_of_full_typeP1_H_eq_bot set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_eq_induce_of_typePA_centralizer_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_eq_induce_of_isTISubset -- ⏳ pending (issue 3004): `tSideDadeMap_eq_induce_of_isTypeP1` は上記 typePA0-TI 系の -- sorried 依存を継承するため assert しない (同上)。 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.disjoint_conjugatesIntoSet_of_prime_order_separator set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.disjoint_conjugatesIntoSet_S_Tderived_of_p_dvd set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.p_dvd_orderOf_of_mem_sharpP_union_typePV set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.disjoint_conjugatesIntoSet_sharpP_union_typePV_Tderived -- ⏳ pending (issues 3004/9084): `S15.betaGrid_support` は仮説なしの局所証明だが、 -- 独立 AxiomsCheck では既存 upstream の `sorryAx` を継承する。これを cite する無条件 endpoint -- `tSideDadeMap_inner_tauSbetaGrid_eq_zero` も同じく `sorryAx` を継承するため assert しない。 -- exact dependency を上流が閉じた時点で両方を再登録する (2026-07-12 lane c 検証)。 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.inner_eq_swap_of_mem_ZIrr set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.gap_cross_inner_identity set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSide_beta_inner_eta_of_zeroColumn_projection set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_etaGrid_intProjection_of_inner_self_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGridProjection_mem_ZIrr set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_projection_residual_ne_zero_of_inner set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSide_etaGridProjection_residual_ne_zero_of_coherent_pair set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSide_etaGridProjection_residual_ne_zero_of_anchor_orthogonal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_projection_sum_sq_le_of_residual_ne_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tSideDadeMap_inner_eta_principal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.axis_coefficients_eq_column_or_row set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_axis_sum_eq_sum_sq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_axis_bound_of_sum_sq_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_coefficients_eq_column_or_row set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_coefficients_eq_column_or_row_of_sum_sq_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_zeroColumn_projection_of_coefficients_eq_column set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGridProjection_inner_eta set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGrid_projection_residual_inner_eta_eq_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.etaGridProjection_eq_zeroRow_of_coefficients_eq_row set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.s12HypothesisOfTypePData set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.s12_muGrid_zeroColumn_sum_eq_induce_trivial set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.s12Tau_zeroColumn_sub_eq_tSideDadeMap set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tau_muColumnSum_sub_zeta_eq_of_grid_alphaImage set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.tau_muColumnZero_sub_zeta_dichotomy_of_grid_orthogonal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.SHC_swap_grid_h114 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.exists_coherent_extension_h114_of_grid_orthogonal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.SHC_residual_eq_grid_diff set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.grid_diff_inner_zeroColumnSum set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.R_sum_inner_grid_zeroColumnSum set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.charParam_a_eq_zero_of_grid_residualEq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.tau_muGridAlpha_apply_eq_of_grid_value_alignment set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.alignedOmegaSourceCharacter set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.alignedOmegaSigmaGrid_apply_eq_sourceCharacter set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_diff_classifier_of_typePV_value set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_column_diff_rigidity set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_column_diff_classifier_of_typePV_value set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_coe set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.monoidHom_eq_of_eq_on_W1_W2 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1Restriction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2Restriction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_bijective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1Restriction_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2Restriction_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1Restriction_bijective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2Restriction_bijective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1RestrictionEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2RestrictionEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1Restriction_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2Restriction_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW1RestrictionEquiv_symm_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaW2RestrictionEquiv_symm_one set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.monoidHomTransportSubgroupEq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.monoidHomTransportSubgroupEq_apply set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHomEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHomEquiv_apply set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacterOnBase set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_alignedOmegaEtaIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacter_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacter_eq_mul_axes set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaIndex_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSigmaGrid_apply_eq_eta_alignedIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacter_zero_row_apply_of_mem_W1 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacter_zero_column_apply_of_mem_W2 set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceW1Restriction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceW2Restriction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_alignedOmegaColumnIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_alignedOmegaRowIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacterOnBase_zero_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnIndex_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowIndex_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnIndex_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowIndex_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnIndex_bijective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowIndex_bijective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowEquiv set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaColumnEquiv_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaRowEquiv_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSourceCharacterOnBase_eq_mul_axes set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaProductIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.omegaMonoidHom_alignedOmegaProductIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaProductIndex_eq_alignedOmegaEtaIndex set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaProductIndex_zero_column set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaProductIndex_zero_row set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaGrid set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaGrid_zero_column set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaGrid_zero_row set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaProductIndex_injective set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaGrid_orthonormal set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSigmaGrid_apply_eq_alignedOmegaEtaGrid set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_pair_diff_rigidity set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_pair_diff_classifier_of_typePV_value set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaEtaGrid_classifier set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.eta_eq_of_norm_one_regular_value_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.alignedOmegaSigmaGrid_eq_alignedOmegaEtaGrid set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_omegaMonoidHom_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.residual_not_orthogonal_of_transposed_reindexing set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.typeIII_induced_source_support set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.typeIII_induced_source_degree set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.u_le_cyclotomicQuotient #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForSData.u_le_full_cyclotomic #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.CaseBForSData.two_q_lt_u set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.cyclotomic_ratio_gt_of_q_lt_p set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.key_ratio_inequality_of_caseB_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.key_inequality_of_caseB_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.key_inequality_of_caseB_outputs set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_error_terms_lt_inv_q set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_T_caseB set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_caseB_data set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_caseB_outputs set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_main_size_bound set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_caseB_data_main_size_bounds set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.norm_cascade_contradiction_of_caseB_outputs_main_size_bounds -- BG App C Theorem C bridge: once Section 16 supplies the field-normalizer data, -- C.1/C.2 plus the carried C.3 generator-relation conclusion force `p ≤ q`. -- **BG Theorem C, p/q-abstract form** (issue 0150 の隣接調査, 2026-07-26): S16 の設定を -- statement から外した形。三つの step lemma は元から p, q で抽象だったので、これはその合成。 -- Hypothesis (B) の寄与は `hrel` (norm set 上の `N(2a−1) = 1`) に集約される。 #assert_only_allowed_axioms OddOrder.BG.AppC.theoremC_abstract -- **BG App.C Remark (V)** ("by (A) one may assume p and q are odd", 2026-07-26): (A) の下では -- p か q が偶数なら Theorem C の結論 p ≤ q が自明に出る (p=2 は即座、q=2 は (A) が -- gcd(p+1, p−1) = 1 を要求するので奇 p では不可能)。FT spine は奇性が ambient なので不要 — -- 書籍完備性のための項目。 #assert_only_allowed_axioms OddOrder.BG.AppC.le_of_conditionA_of_not_odd -- **BG App.C Remark (II)** (T. Peterfalvi の SL(2, 2^q) 例, 2026-07-26): Theorem C の仮説が -- 空でないことの証示。p = 2, G = SL(2, 2^q) で条件 (A) は自明 (gcd(2^q−1, 1) = 1) に成立し、 -- σ(P) = 上三角ユニポテント / σ(U) = 分裂トーラス / y = [[0,1],[1,1]] / Q = ⟨y⟩ (位数 3) が -- 仮説 (B) を満たす。σ は SemidirectProduct.lift で実構成 (単射性も証明済) — carrier は -- 全て具体的で、hoist された仮説は無い。 -- **BG App.C Hypothesis (B) の忠実性証明** (issue 0151 step 2, 2026-07-26): Peterfalvi §16 の -- field-normalizer 構成が書籍 p. 145 の抽象仮説 (B) (`HypothesisBAbstract`) の instance に -- なっていることの証明。Q の有限性 (G が有限)・可換性 (elementary abelian)・p'-性 -- (|Q| = q^n かつ q < p) と 2 つの normalizer 条件を `sigma_P0_eq_W2`/`sigma_U_eq_U` で輸送する。 -- これで `HypothesisBAbstract` が「spine が実際に作る配置の忠実な抽象化」であることが -- 機械検証される (別形の仮説にすり替わっていない)。 #assert_only_allowed_axioms OddOrder.BG.AppC.HypothesisBAbstract.toFieldNormalizerData #assert_only_allowed_axioms OddOrder.BG.AppC.conditionA_two #assert_only_allowed_axioms OddOrder.BG.AppC.sigmaSL2_injective #assert_only_allowed_axioms OddOrder.BG.AppC.map_kernel_sigmaSL2 #assert_only_allowed_axioms OddOrder.BG.AppC.map_primeLine_sigmaSL2 #assert_only_allowed_axioms OddOrder.BG.AppC.map_complement_sigmaSL2 #assert_only_allowed_axioms OddOrder.BG.AppC.hypothesisBAbstract_sl2 #assert_only_allowed_axioms OddOrder.BG.AppC.theoremC #assert_only_allowed_axioms OddOrder.BG.AppC.theoremC_of_hypothesisBAbstract -- **BG App.C Theorem C が (A)+(B) だけから閉じた** (issue 0151 完了, 2026-07-26): -- 欠けていた含意「抽象仮説 (B) ⟹ 生成関係 `∀ a ∈ E, N(2a − 1) = 1`」(= Lemma C.3 の -- 群論的内容) が埋まり、Theorem C の statement から Peterfalvi §16 が消えた。 -- `theoremC_sl2` は書籍 Remark (II) の `SL(2, 2^q)` 例に実際に適用した確認 — -- 仮説 (B) が空虚でなく、Theorem C が §16 のデータを隠れて使っていないことの機械検証。 #assert_only_allowed_axioms OddOrder.BG.AppC.theoremC_of_hypothesisB #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normSetGeneratorRelation_of_hypothesisB #assert_only_allowed_axioms OddOrder.BG.AppC.theoremC_sl2 #assert_only_allowed_axioms OddOrder.BG.AppC.normSetTwistedUnitStep_of_field_step #assert_only_allowed_axioms OddOrder.BG.AppC.normSetGeneratorRelation_of_twisted_unit_step #assert_only_allowed_axioms OddOrder.BG.AppC.normSetGeneratorRelation_of_twisted_normOne_step #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.sigma_eq_left_eq #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.sigma_eq_right_eq #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.sigma_eq_iff_left_right_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerKernel_inf_complement_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P_inf_U_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_mem_W2 #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_ne_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_normalizes_Q -- **BG App.C の `(p, q)`-レベル基本事実** (issue 0151, 2026-07-26): `H = P ⋊ U` とその素体直線 -- `P₀` についての初等的事実。以前は Peterfalvi §16 の `hyp` 経由でしか述べられていなかったが、 -- §16 の設定には一切依存しないので Appendix C 側へ移設した。`P char PU` の半直積的な核 -- (`p`-torsion が `P` に落ちる) はここで `gcd(p, |U|) = 1` から出る。 #assert_only_allowed_axioms OddOrder.BG.AppC.primeLineElement_one #assert_only_allowed_axioms OddOrder.BG.AppC.normOneUnits_card_coprime_p #assert_only_allowed_axioms OddOrder.BG.AppC.normOneFrobeniusKernel_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.normOneFrobeniusGroup_right_eq_one_of_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.normOneFrobeniusGroup_mem_kernel_of_pow_p_eq_one -- **BG App.C Lemma C.3 の輸送された配置** (issue 0151 移設ブロック 1, 2026-07-26): -- 仮説 (B) の単射 `σ : H → G` が作る `G` 内の配置 — 区別された元 `s ∈ σ(P₀)`、同型 -- `U ≅ σ(U)`、分解 `σ(H) = PU` と `P ∩ U = 1`、`P char PU`、`U ≤ X ≤ PU` の既約性ブリッジ。 -- §16 の `hyp` からではなく書籍の抽象仮説 (A)+(B) から述べられている。 #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_eq_primeLineElement #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_orderOf_eq_p #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_eq_zpowers_s #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_le_P #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_isPGroup #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normOneUnitsToU_injective #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normOneUnitsToU_surjective #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.mem_P_of_mem_P_sup_U_of_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normalizer_P_sup_U_le_normalizer_P #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineElement_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineElement_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineElement_neg #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineGenerator_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineGenerator_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerPrimeLineGenerator_pow_p #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerNormOneUnits_card_gt_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.exists_fieldNormalizerNormOneUnit_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerKernel_sup_complement_eq_top #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P_sup_U_eq_sigma_top #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.exists_normOne_primeLine_normOne #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.exists_sigma_normOne_primeLine_normOne_of_mem_PU #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.generatorRelation_step2_primeLine #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.generatorRelation_step2_primeLine_of_sigma_mem_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_not_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_not_le_normalizer_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_mem_P #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_mem_P #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_mem_P_sup_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.subgroup_eq_P_sup_U_of_U_le_of_le_P_sup_U_of_ne_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_pow_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_zpow_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_zpow_conj_sigma_inr_mem_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_mul_t_zpow_conj_sigma_inr_mul_s_zpow_mem_P_sup_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.exists_step4_decomposition_of_zpow_tConj_normOne #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_mul_t_pow_conj_sigma_inr_mul_s_zpow_eq_sigma_inr_tConjNormOneUnitsAut_pow #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_mul_sigma_inr_tConjNormOneUnitsAut_pow_mul_s_zpow_mem_P_sup_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.exists_step4_decomposition_of_zpow_tConjNormOneUnitsAut_pow #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.right_component_of_step4_tConjNormOneUnitsAut_pow_decomposition #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.exists_step4_first_k_three_decomposition #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.right_component_of_step4_first_k_three_decomposition #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_zpow_neg_two_eq_primeLineElement_neg_two #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normN_two_mul_sub_one_of_sigma_first_k_three_decomposition #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normN_two_mul_sub_one_of_step4_first_k_three_decomposition #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.appC_normSet_generator_relation_of_first_k_three_coordinate #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_mem_P1 #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_ne_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P1_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P1_ne_W2 #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_ne_P1 #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P_sup_U_inf_conj_eq_U_or_eq_P_sup_U_of_normalizes_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.P_sup_U_inf_conj_t_pow_eq_U_or_eq_P_sup_U #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normOneUnitsEquivU_twistedInv_tConjNormOneUnitsAut_apply_coe #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.normOneUnitsEquivU_tConjNormOneUnitsAut_pow_apply_coe #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_pow_conj_sigma_inr_eq_sigma_inr_tConjNormOneUnitsAut_pow #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.appC_twisted_normOne_step_of_tConjNormOneUnitsAut -- BG App C Lemma C.3 Step 4: the transported `Q` is commutative, so the -- `s^{-n}t^n` commutator factors used to pass from (C.3) to (C.4) -- can be reordered. #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.Q_mul_comm #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_pow_p_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.W2_inf_Q_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_inv_pow_mul_t_pow_mul_comm #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.t_inv_pow_mul_s_pow_mul_comm set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.FieldNormalizerData.s_inv_pow_mul_t_pow_mul_comm_t_inv_pow_mul_s_pow -- Peterfalvi (14.7) σ-bridge (POLE-2): the ungated transport of the (14.2)(a) field -- model into `G` and its assembly into `FieldNormalizerData`. Takes the field iso as -- *input*, so it is independent of the §13 character theory that supplies it. #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerKernelTransport_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerKernelTransport_range #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerComplementTransport_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerComplementTransport_range #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerComplementTransport_exists #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.fieldNormalizerData_of_repr -- BG App C Remark (I): condition (A) `gcd((p^q-1)/(p-1), p-1)=1` ⟺ `q ∤ (p-1)`. -- Foundation lemma of the finite-field norm-set argument toward BG Theorem C (`p ≤ q`). #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.conditionA_iff_not_dvd -- BG App C Remark (VII): the norm-one subgroup `U ≤ 𝔽_{p^q}ˣ` has order -- `(p^q - 1)/(p - 1)`, the `|U|` used in the `q ≥ 5` branch of Lemma C.2. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.pow_sub_one_le_normOneUnits_card set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.pow_sub_one_add_pow_sub_two_le_normOneUnits_card set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_card_sq_ge_pow_mul_one_add_pow_sub_two -- BG App C Remark (VII): under condition (A), every unit of `𝔽_{p^q}` splits -- as a prime-field unit times a norm-one unit. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.exists_primeFieldUnit_mul_normOne -- BG App C Remark (VII): the prime-field units and `U` meet trivially, giving -- the direct-product side of `𝔽_{p^q}ˣ = 𝔽_pˣ × U` under condition (A). #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.primeFieldUnits_inf_normOneUnits_eq_bot -- BG App C Remark (VII): the carrier-set product `𝔽_pˣ · U` is all of -- `𝔽_{p^q}ˣ` under condition (A). #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.primeFieldUnits_mul_normOneUnits_eq_univ -- BG App C Lemma C.3 Step 1: under condition (A), every field element -- lies in the `U`-orbit of any fixed nonzero prime-field line; equivalently, -- every concrete `P ⋊ U` element has a `u s₁ v` decomposition with -- `s₁ ∈ 𝔽_p s`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.exists_normOne_mul_primeFieldUnit_mul_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.exists_normOne_mul_primeLine_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_exists_inr_primeLine_inr -- BG App C Lemma C.3 Step 3: the norm-one subgroup acts irreducibly on -- the additive `𝔽_p`-space `𝔽_{p^q}` under condition (A), and therefore -- any nonzero `U`-stable subspace or subgroup-kernel preimage generates all of -- `P ⋊ U` together with `U`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_invariant_submodule_eq_top_of_ne_bot #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.mem_normOneFrobeniusSubspaceKernel_inl #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusSubspaceGroup_eq_top_of_ne_bot #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.mem_normOneFrobeniusKernelPreimageSubmodule set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernelPreimageSubmodule_invariant_of_inr_range_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernelPreimageSubmodule_ne_bot_of_exists_inl set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusSubgroup_eq_top_of_inr_range_le_of_exists_inl set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusSubgroup_eq_top_of_inr_range_le_of_ne_inr_range -- BG App C Lemma C.3 Step 2: on a prime-field line, the direct-product -- intersection `U ∩ 𝔽_pˣ = 1` forces the generator-relation alternatives, -- both as a finite-field equation and as a concrete `P ⋊ U` membership test. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_eq_one_of_mem_primeFieldUnits #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_eq_one_of_primeLine_relation #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.generatorRelation_step2_primeLine #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_generatorRelation_step2_primeLine -- BG App C Lemma C.3 Step 4 final paragraph: reading the additive coordinate -- of the first `k = 3` equation in concrete `P ⋊ U` gives `N(2*w-1)=1`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_normN_two_mul_sub_one_of_first_k_three_decomposition -- BG App C Lemma C.3 Step 4: the `p`-power Frobenius preserves the norm-set -- relation `a,b ∈ E` and `a+b=2` used in the generator-relation propagation. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.pow_p_natCast_two #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normN_pow_p #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.two_sub_pow_p #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_pow_p #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_frobenius_pair #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_eq_one_of_pow_sub_one_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.inv_mem_of_twistedInv_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.twisted_unit_step_of_twisted_field_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_eq_inv_of_twisted_unit_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_eq_inv_of_twisted_field_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.forall_normN_two_mul_sub_one_of_normSetE_eq_inv #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.forall_normN_two_mul_sub_one_of_twisted_field_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.forall_normN_two_mul_sub_one_of_twisted_unit_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_eq_inv_of_twisted_normOne_step #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.forall_normN_two_mul_sub_one_of_twisted_normOne_step -- BG App C Lemma C.2 q≥5 setup: the concrete Frobenius group `P ⋊ U` action -- conjugates additive-kernel elements by field multiplication. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_conj_inl -- BG App C Lemma C.2 q≥5 setup: the concrete semidirect product has a -- nontrivial normal additive kernel, a nontrivial norm-one complement, and the -- resulting subgroup pair is a Frobenius group. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_normal #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_isComplement_normOneFrobeniusComplement #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_ne_bot #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnits_card_gt_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusComplement_ne_bot #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_isFrobeniusGroup #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusGroup_card_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_index_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_mul_comm #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_irreducibleCharacter_apply_one_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induce_isIrreducible #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induce_apply_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induced_irreducible_apply_one_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induce_eq_zero_of_not_mem_kernel #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induce_support_subset_kernel #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_induce_apply_inr_eq_zero #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_inl_ne_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_inl_eq_commutator #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_linear_irreducible_apply_inl #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_irreducibleCharacter_apply_inl_of_apply_one_eq_one #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_apply_inl_eq_apply_one_of_kernel_subset #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_sum_kernelCharacter_degree_sq_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_sum_kernelCharacter_column_inl_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_le_centralizer_inl #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_centralizer_inl_le_kernel #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_centralizer_inl_eq_kernel #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusKernel_card_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_centralizer_inl_card_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_column_sq_sum_inl_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_column_sq_sum_two_mul_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_sum_nonKernelCharacter_column_inl_eq -- BG App C Lemma C.2 q≥5 setup: the pair condition `us+vs=2s` is the -- corresponding product equation in the additive kernel of `H = P ⋊ U`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.mem_normOnePairSetAt_iff_inl_mul_inl -- BG App C Lemma C.2 q≥5 class-sum bridge: every `U`-translate `u*s` -- lies in the conjugacy class of `s` in `H = P ⋊ U`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_mul_eq -- BG App C Lemma C.2 q≥5 class-sum bridge: arbitrary conjugation of an -- additive-kernel element is controlled by the `U`-coordinate, and hence the -- conjugacy class of `s` is exactly its `U`-orbit. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_conj_inl_any #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.exists_normOne_mul_of_mem_normOneClass #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_carrier_ncard_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_two_mul_carrier_ncard_eq_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_out_centralizer_card_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_classSumCoeff_one_mul_pow_eq_character_sum #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_out_apply_eq_inl #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneClassAt_out_inv_irreducibleCharacter_apply_eq_star_inl #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_classSumCoeff_one_mul_pow_eq_concrete_character_sum #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_kernelCharacter_concrete_classSumContribution_eq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_classSumCoeff_one_mul_pow_eq_kernelContribution_add_nonKernelContribution #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_sum_nonKernelCharacter_normSq_inl_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_sum_nonKernelCharacter_normSq_inl_le #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.sum_normSq_mul_norm_le_sum_normSq_mul_sqrt_sum_normSq set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusClassSumConcreteTerm_norm_le_of_normOneUnits_card_le_degree set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusNonKernelContribution_norm_le_sum_of_degree_ge set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusNonKernelContribution_norm_le_pow_mul_sqrt_of_degree_ge set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobeniusNonKernelContribution_norm_le_pow_mul_sqrt set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_classSumCoeff_one_gt_normOneUnits_card_of_error_separation set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_error_separation_of_five_le set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_classSumCoeff_one_gt_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_ncard_ge_two_of_five_le -- BG App C Lemma C.2 q≥5 class-sum bridge: the finite-field pair set is the -- fixed-product fiber over `inl (2*s)` before passing to the full product class. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classPairSet_eq_iUnion_fixedProductClassPairSet #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classPairSet_ncard_eq_finsum_fixedProductClassPairSet_ncard #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classPairSet_ncard_eq_classSumCoeff #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classSumCoeff_eq_finsum_fixedProductClassPairSet_ncard #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneFrobenius_mk_conj_eq #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.fixedProductClassPairSet_ncard_eq_of_isConj #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.finsum_fixedProductClassPairSet_ncard_eq_carrier_ncard_mul #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classSumCoeff_eq_carrier_ncard_mul_fixedProductClassPairSet_ncard #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairSetAt_isFixedProductClassPair #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.exists_normOnePairSetAt_of_isFixedProductClassPair #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairSetAt_ncard_eq_fixedProductClassPairSet_ncard set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classSumCoeff_normOneClassAt_self_two_mul_eq_normOneUnits_card_mul_pairSetAt_ncard set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.classSumCoeff_normOneClassAt_self_two_mul_eq_normOneUnits_card_mul_normSetE_ncard #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.two_ne_zero_galoisField #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_ncard_ge_two_of_normOneCoeff_gt_normOneUnits_card #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_ncard_ge_two_of_normOneCoeff_one_gt_normOneUnits_card -- BG App C Lemma C.2 q≥5 class-sum bridge: a finite-field pair counted by -- `normOnePairSetAt` gives a class pair for the class-sum structure constant. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairSetAt_isClassPair -- BG App C Lemma C.2 bridge: `|E|` equals the number of norm-one pairs -- `(u, v) ∈ U × U` satisfying `u + v = 2`, the finite-field structure constant. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairSet_ncard_eq_normSetE_ncard -- BG App C Lemma C.2 bridge in the class-sum form `u*s + v*s = 2*s`. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairSetAt_ncard_eq_normSetE_ncard -- BG App C Lemma C.3 Step 4 finite-field pair API: an element `a ∈ E` gives -- the concrete norm-one pair `(a, 2-a)` in both `u + v = 2` and -- `u*s + v*s = 2*s` forms. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOneUnitOfMemNormSetE_coe #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairOfMemNormSetE_mem_normOnePairSet #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normOnePairOfMemNormSetE_mem_normOnePairSetAt -- BG App C Lemma C.3 note (`p = 3`): characteristic three makes -- `2*a - 1 = 2-a`, so the norm-set inverse closure is purely finite-field. #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_eq_inv_of_p_eq_three -- BG App C Lemma C.1: if the norm set `E = {a | N(a)=N(2-a)=1}` is inverse-closed and -- `|E| ≥ 2`, then `p ≤ q`. The Möbius iterate `aₖ` gives `N((1-a)k+1)=1` for all `k ∈ 𝔽_p`, -- and the degree-`q` Frobenius polynomial `∏_{i do let constName := name.getId let env ← getEnv unless env.contains constName do throwError m!"axioms island: constant `{constName}` not found" let extraNames : List Name := (extra.getElems.toList).map (·.getId) for e in extraNames do unless env.contains e do throwError m!"axioms island: expected forward axiom `{e}` not found" let axs ← liftCoreM <| Lean.collectAxioms constName let allowed := OddOrder.AxiomsCheck.allowedStandard ++ extraNames let bad := axs.filter (fun a => !allowed.contains a) let missing := extraNames.filter (fun e => !axs.contains e) unless missing.isEmpty do throwError m!"axioms island FAILED: `{constName}` does not depend on listed \ axiom(s):{indentD m!"{missing}"} — remove them from the island" if bad.isEmpty then logInfo m!"axioms island OK: `{constName}` ⊆ standard ∪ {extraNames}" else throwError m!"axioms island FAILED: `{constName}` has unexpected \ axiom(s):{indentD m!"{bad.toList}"}" /-! #### BG §13 Lemma 13.1 / Corollary 13.2 (de-axiom 済, issues 8000/0065) Lemma 13.1 と Corollary 13.2 は BG Corollary 12.16(a)(b) を本質的に使う。当初は provisional forward axiom (`cor1216_*`) → S12_E の sorry'd faithful statement (issue 0065) へ差し替えて de-axiom した。 **2026-06-14: Lane F が Cor 12.16 の一般 `σ(M)`-subgroup 形を `S12_Corollary1216` に PROVEN で実装** (`S12.sigma_subgroup_pRank_normalizer_le_one` / `…not_mem_primeFactors_derived_of_tau1`, characteristic `q`-subgroup `O_q(Y)` で `q`-group 形へ reduce; sorry-free・axiom-clean、上で `#assert` 済)し、`S13_Lemma131` の cite 先を S12_E (sorry'd, 削除済) から本一般形へ差し替えた ⟹ **§13 の Cor 12.16 依存は完全に unconditional 化** (もはや sorry に bottom-out しない)。13.1(a) `#assert` を下記に維持。 -/ -- BG Lemma 13.1(a): every `p`-subgroup of `M ⊓ M*` centralizes `M_σ ⊓ M*` -- (S12_E Cor 12.16 に非依存; axiom-clean). #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.pSubgroup_centralizes_Msigma_inf -- BG Theorem 13.5: `E₁ ≠ 1` acts in a prime manner on `M_σ`. Fully unconditional — -- Theorem 13.4 and Corollary 13.3 are axiom-clean now that Lane F's §12 (Prop 12.15 / -- Thm 12.13 / Cor 12.16) is PROVEN, so `E1_actsPrime` bottoms out at the standard axioms only. #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.E1_actsPrime -- BG Lemma 13.6: `1⊂P⊆E₁`, `q∈σ(M)`, `X∈ℰ_q¹(C_{M_σ}(P))`, `S` a Sylow `q` of `M_σ` ⟹ -- `ℳ(C_G(X)) = ℳ(S) = {M}`. Reduction branch (`q∈β ∨ X⊆M_σ'`) = faithful Cor 12.14 + `M_σ`-Sylow -- conjugacy; contradiction branch (`q∉β ∧ X⊄M_σ'`) = conjugate complement `F` (Prop 1.5 + Lemma -- 12.19) with `X⊆C(F')`, then `A∈ℰ_p²(F)` (`p∈τ₂`) centralizes `X` (Thm 13.4 + `⁅A,E₁⁆≤F'`) -- contradicting `C_{M_σ}(A)=1`. Fully unconditional (§12 PROVEN), axiom-clean. #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.maximalContaining_eq_singleton_of_E1 -- BG Lemma 13.8: the forbidden configuration (`M*` non-conjugate to `M`, `p ∈ τ₁(M)∩τ₁(M*)`, -- `P`-invariant Sylow `Q, Q*` with `C_Q(P)=C_{Q*}(P)=1` and `N_G(Q)⊆M*`, `N_G(Q*)⊆M`) is -- impossible. GAP 3 (coprime quotient cover → `R` of order `r` → Theorem 13.4 conjugated to the -- Hall complement `E` → nilpotent `M*'/M*_α` collapse) is fully unconditional and axiom-clean. #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.forbidden_config_impossible -- BG Theorem 10.2, BOOK packaging (issue 0177 §10 監査): `M ∈ ℳ` に対し -- (a) `M_α` は `M` と `G` の Hall `α(M)`-部分群, (b) `M_σ` は `M` と `G` の Hall `σ(M)`-部分群, -- (c) `M_α ⊆ M_σ ⊆ M'`, (d) `r(M/M_α) ≤ 2` かつ `M'/M_α` nilpotent, (e) `M_σ ≠ 1`。 -- 既存の `isHall_Msigma_Malpha` は **(d) を欠いていた** ((d) 自体は形式化済で別宣言に在った)。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.bgThm102 -- BG Proposition 10.11, BOOK packaging (issue 0177 §10 監査): `M ∈ ℳ`, `K` を `M` の -- `σ(M)'`-部分群として (a) `K ∉ 𝒰`, (b) `r(C_K(M_σ)) ≤ 1`, (c) `C_K(M_σ) ⊓ M'` は cyclic normal, -- (d) 追加仮説の下で `⁅K,P⁆` が `M_σ` を中心化し cyclic normal。既存は (a)(b)(c) 束と (d) が別々。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.bgProp1011 -- BG Corollary 11.6, BOOK packaging (issue 0177 §11 監査): Hypothesis 11.1 のもと -- (a) `A = Ω₁(P)`, (b) `C_{M_σ}(A) = 1`, (c) `A = A₁ × A₂` (`A₁ ≠ A₂ ∈ ℰ_p¹(A)`) で -- `C_{M_σ}(A₁) = C_{M_σ}(A₂) = 1`。既存は (a)(b) 束と (c) が別々 (仮説は完全に共有)。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.bgCor116 -- BG Lemma 10.8, BOOK packaging (issue 0177 §13 の一括走査で発見): (a) `M_β` は Hall, -- (b) `M'`/`M_σ` は nilpotent Hall `β(M)'`-部分群を持つ, (c) `p ∈ π(M)−β(M)` で `M'`/`M_σ` が -- normal `p`-complement を持ち **かつ `p` は `|M/O_{p'}(M)|` の最大素因子**。 -- 既存の `isHall_Mbeta` は (c) の最大素因子半分を欠いていた (Thm 10.2 (d) と同型)。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.bgLem108 -- BG §10 (β-radical spine): Theorem 10.6 (every proper subgroup has `p`-length one). -- Originally wired against two forward axioms of `S10_ForwardFromKeystone` -- (BG Thm 3.6 + BG Lem 10.4(b)), both de-axiomatized; see that file. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.proper_hasPLengthOne -- BG §10: Lemma 10.8(c) — for `p ∈ π(M) - β(M)`, `M'` and `M_σ` have normal `p`-complements. -- Forward-conditional via Theorem 10.6 (`proper_hasPLengthOne`), formerly the §10 keystone island (now unconditional). #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.derived_msigma_hasNormalPComplement_of_not_mem_beta -- BG §10: Lemma 10.8(a) — `M_β` is a Hall `β(M)`-subgroup of `G`. The intersection of the -- normal `p`-complements of Lemma 10.8(c) over `p ∈ π(M) - β(M)`, formerly the §10 keystone island (now unconditional). -- (The engine `isHall_oPiCore_of_forall_hasNormalPComplement` is itself unconditional.) #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.Mbeta_isHall -- BG §10: Lemma 10.8 (full bundle): `M_β` Hall, `M'`/`M_σ` have nilpotent Hall `β(M)'`-subgroups, -- and normal `p`-complements for `p ∈ π(M) - β(M)`. Formerly the same keystone island (via Theorem 10.6); now unconditional. -- (The (b)-engines `isNilpotent_of_forall_hasNormalPComplement` / -- `exists_isNilpotent_isHall_compl` are themselves unconditional.) #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.isHall_Mbeta -- BG §10: Lemma 10.8(c) largest-prime part + its "O_{p'}(M) ⊇ all q-elements (q > p)" consequence. -- Formerly the same keystone island (via Theorem 10.6 / Theorem 5.6's first conjunct); now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.largestPrime_quotient_oPiCore_compl_of_not_mem_beta #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.sylow_le_oPiCore_compl_of_lt_of_not_mem_beta -- Cor 10.9 核 (W ∩ M' is nilpotent): M' の任意の β(M)'-部分群は nilpotent。 -- Lemma 10.8(b) (`isHall_Mbeta`) 経由 — 旧 keystone island、現在は unconditional。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.betacompl_subgroup_derived_isNilpotent -- Cor 10.9(a) producer (W nilpotent) と Cor 10.9(a)(1)(2) (`beta_complement_centralizes`): -- `betacompl_subgroup_derived_isNilpotent` / `sylow_le_oPiCore_compl_of_lt_of_not_mem_beta` -- 経由 — 旧 keystone island、現在は unconditional。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.exists_nilpotent_hall_pq #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.beta_complement_centralizes -- M'/M_β nilpotent (Lemma 10.8 系, §13 + Cor 10.9(a)(3)/(b) で使う): isHall_Mbeta 経由 — 旧 island、現在は unconditional。 #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.derivedQuotientMbeta_isNilpotent -- Cor 10.9(a)(3): `N_M(X)'` contains a Sylow `p`-subgroup of `M'` (Frattini + Lemma 6.5(a) + -- the nilpotent Hall `{p,q}`-producer `exists_nilpotent_hall_pq`), formerly the §10 keystone island (now unconditional). #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.beta_complement_normalizer_derived_contains_sylow -- Cor 10.9(b): `N_G(S) ⊆ H ∩ M` (`H ≠ M`) ⟹ `M = (H∩M)·M_β` and `α(M)=β(M)`. Uses the -- Uniqueness Theorem (`q ∉ α(M)` via `S ∈ 𝒰` contradiction), the same Frattini argument as (a)(3) -- (`K = O_{β∪{q}}(M') = M_β·S`), and Cor 10.9(a)(2) (`beta_complement_centralizes`); formerly the same island (now unconditional). #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.beta_factorization_of_sylow_normalizer_in_intersection -- Cor 10.7 (`sylow_structure`, 5 parts a–e): Sylow `p`-structure. All parts route through a maximal -- `M ⊇ N_G(P)` with `p ∈ σ(M)`, where `↥M` has `p`-length one (Theorem 10.6, formerly forward-conditional); -- Lemma 6.6 / 6.3(a) / Theorem 10.1 / Blackburn 4.16 then control `P`. Formerly the same keystone island; now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.sylow_structure -- Prop 10.10 (`normalizer_factorization`): for `A ∈ ℰ_p²(G)∩ℰ_p*(G)` and `Q ∈ ℋ_G*(A;q)`, some -- Sylow `p`-subgroup `P ⊇ A` factors `N_G(P) = O_{p'}(C_G(P))·(N_G(P)∩N_G(Q))` with `P ⊆ N_G(Q)'`. -- Part (a) is the §7 transitivity core (Prop 7.5 + Thm 7.3/7.4, unconditional); parts (b)/(c) use -- Cor 10.7 (`sylow_structure`) and Thm 5.5(a). Formerly the same keystone island; now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.normalizer_factorization -- Prop 10.11(a) (`sigma_complement_not_isUniquelyMaximal`): a `σ(M)'`-subgroup `K ≤ M` is not -- uniquely maximal. Hall `σ'`-overgroup + Theorem 4.20(c) terminal normal Sylow + `q ∉ σ(M)` -- normalizer escape. **Unconditional** (no keystone dependency). #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.sigma_complement_not_isUniquelyMaximal -- Prop 10.11(b) (`rank_centralizer_Msigma_inf_le_one`): `r(C_K(M_σ)) ≤ 1`. Routes through the -- Uniqueness Theorem (contrapositives), Theorem 4.20(a) (`M' ⊆ F(M)`), and Prop 10.10 -- (`normalizer_factorization`). Formerly the same keystone island; now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.rank_centralizer_Msigma_inf_le_one -- Prop 10.11(a)(b)(c) capstone (`sigma_complement_rank_le_one`): part (c) applies (b) to -- `Z = O_{σ'}(F(M))` (cyclic) and pins `C_K(M_σ) ∩ M' ≤ Z` via the Fitting centralizer chain. -- Formerly the same keystone island (via part (b)); now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.sigma_complement_rank_le_one -- Prop 10.11(d) (`sigma_complement_commutator_cyclic_normal`): `[K,P]` centralizes `M_σ` and is -- cyclic normal in `M` (Thm 3.7 fixed-point-free nilpotency + part (c)). Formerly the same island via (c); now unconditional. #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.sigma_complement_commutator_cyclic_normal -- BG §10: Lemma 10.13 (`nonabelian_pSubgroup_rankTwo_elemAbelian_structure`): for a maximal -- rank-two elementary abelian `A` inside a nonabelian `p`-subgroup `P`, `Z₀ = Ω₁(Z(P)) ∈ ℰ¹(A)`, -- `C_P(A) = A₀ × Z` (`Z` cyclic ⊇ `Z₀`), and `N_P(A)` is transitive on `ℰ¹(A) − {Z₀}`. -- Low rank via Cor 10.7(b) (central product), high rank via Thm 5.3(d) -- (`narrow_centralizer_decomp`); part (c) is a multiplicative GL₂(p)-transvection argument. -- **Unconditional** (the §10 island dissolved before this landed). #assert_only_allowed_axioms OddOrder.BG.Ch3.S10.nonabelian_pSubgroup_rankTwo_elemAbelian_structure -- BG §11: Theorem 11.5 (`sylow_p_isCommutative`) and Corollary 11.6 -- (`omega1_eq_and_centralizer_trivial`): under Hypothesis 11.1 the Sylow `p`-subgroups of the -- exceptional maximal `M` are abelian (Thompson-transitivity ideas: Lemma 11.1(b) + Prop 1.16 -- + Lemma 10.13(c) conjugation-transitivity), `A = Ω₁(P)`, and `C_{M_σ}(A) = 1` -- (Corollary 11.2(b)). **Unconditional.** #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.sylow_p_isCommutative #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.omega1_eq_and_centralizer_trivial -- BG §11: Corollary 11.6(c) (`exists_distinct_conj_lines`): two distinct conjugate lines -- `A₁ = A₀^{g₁} ≠ A₂ = A₀^{g₂}` with `A = A₁ × A₂` and trivial `M_σ`-centralizers -- (odd index `|N_G(P) : N_M(P)| ≥ 3`). Input for Theorem 11.7. **Unconditional.** #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.exists_distinct_conj_lines -- BG §11: Theorem 11.7 (`MsigmaA_normal`): `M_σ A ⊴ M` — the climax of §11. The complement -- `E ⊇ A` to `M_σ` carries the descending Hall radicals `K = O_τ(E)`, `W = O_{τ∪{p}}(E)` -- (Thm 4.20(c), `S05b_Thm420Hall`); either `A` centralises `K` and `A = Ω₁(O_p(W))` is -- characteristic in `W ⊴ E`, or an `A`-invariant Sylow `q` of `K` forces `q ∈ σ(M)` via -- Prop 10.10(c) / Prop 1.6(d) + Cor 11.6(c) + Prop 10.11(d). **Unconditional.** #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.MsigmaA_normal /-! ### BG §12: Lemma 12.1 (`subgroupE_basic`) — unconditional Lemma 12.1 (the easy structure of the complement `E = E₁E₂E₃`) is fully grounded: its proof routes Thm 10.2's "`M'/M_σ` nilpotent" through Thm 4.20(a) instead, and the per-prime core replaces BG's Frattini argument with Burnside + the mathlib cyclic-Sylow commutator dichotomy. No keystone forward axiom is involved. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.subgroupE_basic /-! ### BG §12: Lemma 12.2(a) (`prime_mem_sigma_or_tau2`) — unconditional For a nonidentity `p`-subgroup `X` and `M* ∈ ℳ(N_G(X))`, the prime `p` lies in `σ(M*) ∪ τ₂(M*)`. The proof needs no keystone input: `p ∉ σ(M*)` forces `r_p(M*) ≤ 2` (via `α ⊆ σ`), and `r_p(M*) = 1` would make a Sylow `p` of `M*` cyclic with `X` characteristic in it, so `N_G(P) ≤ N_G(X) ≤ M*` and `p ∈ σ(M*)`, a contradiction. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.prime_mem_sigma_or_tau2 /-! ### BG §12: Lemma 12.17 (`Msigma_E_relations`) — unconditional `C_{M_σ}(E) ⊆ M_σ'` and `⁅M_σ, E⁆ = M_σ`. Both are Lemma 6.3(a) applied inside `↥M` (`M_σ` a normal Hall subgroup with complement `E`, `M_σ ⊆ M'`) and transported to `G` along `M.subtype`: the first conclusion gives `⁅M_σ, E⁆ = M_σ`, the second (coprime split) gives `C_{M_σ}(E) ⊆ M_σ'`. No keystone input. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Msigma_E_relations /-! ### BG §12: Lemma 12.17 third clause (`Msigma_inf_conj_isBetaCompl`) — unconditional `M_σ ∩ M^g` is a `β(M)′`-group for `g ∉ M`. For each prime `p`, a rank-one `X ≤ M_σ ∩ M^g` of order `p` has `C_G(X) ⊄ M` (Theorem 10.1(b)), so `ℳ(C_G(X)) ≠ {M}`, and the contrapositive of Corollary 12.14 gives `p ∉ β(M)`. Consumed by Proposition 14.2(g). -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Msigma_inf_conj_isBetaCompl /-! ### BG §12: Lemma 12.17 third clause — σ-uniqueness core + TI part — unconditional `centralizer_not_le_of_isPGroup_le_Msigma_inf_conj`: for a nontrivial `p`-subgroup `X ≤ M_σ ∩ M^g` (`g ∉ M`, `p ∈ σ(M)`), `C_G(X) ⊄ M` (Theorem 10.1(b) σ-fusion transitivity). `Msigma_inf_conj_inf_derived_eq_bot`: `M_σ ∩ M^g ⊓ M_σ' = 1` (the TI part; a nontrivial element yields a rank-one `X ≤ M_σ'`, and Corollary 12.14's `Or.inr` disjunct forces `C_G(X) ≤ M`). -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.centralizer_not_le_of_isPGroup_le_Msigma_inf_conj #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Msigma_inf_conj_inf_derived_eq_bot /-! ### BG §12: Corollary 12.4 (`norm_noncyclic_sigma`) — unconditional A noncyclic `σ(M)`-`p`-subgroup `P ≤ M` has `N_G(P) ≤ M`. A rank-two elementary abelian `A ≤ P` (`exists_isElementaryAbelian_card_prime_sq_of_not_isCyclic`) has `C_G(A) ≤ M` (`centralizer_le_of_elemAb_rank_two`, Prop 12.4(a)), and `σ`-fusion control (`fusion_control_of_mem_sigma`, `N_G(P) = (N_G(P) ⊓ M)·C_G(P)`) plus `C_G(P) ≤ C_G(A) ≤ M` gives `N_G(P) ≤ M`. The `σ`-uniqueness input to BG Lemma `sigma_compl_embedding` / Theorem D(2). -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.norm_noncyclic_sigma /-! ### BG §12: Lemma 12.19 (`derivedE_centralizes_betaComplement`) — unconditional `E'` centralizes a Hall `β(M)'`-subgroup of `M_σ`. The proof consumes Corollary 10.9(a) (`beta_complement_centralizes`, per-prime Sylow centralization) and Prop 1.5(c) (`aInvariant_hall_conj`) to coordinate the per-Sylow data into one `E'`-centralized Hall via the abstract `exists_hall_actsTrivially_of_forall_sylow`. Formerly in the §10 keystone island via Cor 10.9(a); unconditional since the 2026-06-11 de-axiomatization. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.derivedE_centralizes_betaComplement /-! ### BG §12: Lemma 12.18 (`tau1_Malpha_interaction`) — unconditional For `p ∈ τ₁(M)`, `P ∈ ℰ_p¹(M)`, and a nontrivial `P`-invariant `q`-subgroup `Q ≤ M` with `C_Q(P) = 1` and `ℳ(N_G(Q)) ≠ {M}`: (a) if `M_α ≠ 1` and `q ∉ α(M)` then `C_{M_α}(P) ≠ 1` and `C_{M_α}(PQ) = 1`; (b) if `Q` is moreover a Sylow `q`-subgroup of `M` then `α(M) = β(M)` and the conclusions of (a) hold. Part (b) consumes Corollary 10.9(a)(2) — unconditional since the 2026-06-11 de-axiomatization — together with the Uniqueness Theorem 9.6 and the degenerate Theorem 10.2(d) (`isNilpotent_derived_of_Malpha_eq_bot`). -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isNilpotent_derived_of_Malpha_eq_bot #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau1_Malpha_centralizer_PQ_eq_bot #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau1_Malpha_interaction /-! ### BG Lemma 12.3 + Hypothesis 11.1 constructor (`S12_ExceptionalBridge`) **BG Lemma 12.3** (mmd L3101): for `M* ∈ ℳ − {M}`, `A ∈ ℰ_p²(M ∩ M*)`, `A₀ ∈ ℰ¹(A)` with `N_G(A₀) ⊆ M*`: (a) if `p ∉ σ(M)` then `A` centralizes `M_σ ∩ M*` (`elemAb_centralizes_Msigma_meet`); (b) if `p ∈ σ(M) − α(M)` then `A` centralizes `M_α ∩ M*` (`elemAb_centralizes_Malpha_meet`). Root of the §12 τ₂-cascade. Consumes Theorem 11.7 (`MsigmaA_normal`) through the new Hypothesis 11.1 constructor (`Hypothesis111.of_normalizer_le`), Corollary 11.4, Theorem 10.1(b), Lemma 10.12(a), and the Theorem 10.2(d) Sylow closure — all unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S11.Hypothesis111.of_normalizer_le #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.not_conj_of_mem_sigma_of_normalizer_le #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.normalizer_Malpha_sup_sylow_of_mem_sigma #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.commutator_le_inf_Msigma_of_normalizer_le #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.elemAb_centralizes_Msigma_meet #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.elemAb_centralizes_Malpha_meet /-! ### BG Proposition 12.4 (`S12_ExceptionalBridge`) **BG Proposition 12.4** (mmd L3125): for `A ∈ ℰ_p²(M)`: (a) `C_G(A) ≤ M` (`centralizer_le_of_elemAb_rank_two`); (b) if `ℳ(N_G(A₀)) ≠ {M}` for every `A₀ ∈ ℰ¹(A)`, then `p ∈ σ(M)`, `M_α = 1`, `M_σ` is nilpotent, and `C_G(A) ≤ M` (`mem_sigma_and_Malpha_eq_bot_of_forall_normalizer_ne`). Consumes Lemma 12.3, the Uniqueness Theorem (9.6), Proposition 1.16(2) (`cocyclicFixedByClosure`), Proposition 10.11(b), Theorem 10.2 (Hall structure + BB4), and `Ω₁(Z(P))` (`omega1CenterInG`) — all unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.mem_sigma_and_Malpha_eq_bot_of_forall_normalizer_ne #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.centralizer_le_of_elemAb_rank_two /-! ### BG Theorem 12.5 (`S12_Theorem125`) **BG Theorem 12.5** (mmd L3159): for `p ∈ τ₂(M)` and `A ∈ ℰ_p²(M)`: (a) `M_σ` is nilpotent; (b) `M` has abelian Sylow `p`-subgroups and a Sylow `p`-subgroup `P ⊇ A` with `N_G(P) ⊄ M`; (c) `M_σ A ⊴ M`; (d) `C_{M_σ}(A) = 1`; (e) `M_σ ∩ M* = 1` for every `M* ∈ ℳ(A) − {M}`; (f) some `A₁ ∈ ℰ¹(A)` has `C_{M_σ}(A₁) = 1` (`Msigma_nilpotent_of_tau2`). The τ₂-case gateway: Proposition 12.4(b) supplies Hypothesis 11.1, then Theorems 11.3/11.5/11.7, Corollary 11.6, and Lemma 12.3(a) give the conclusions — all unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Msigma_nilpotent_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.omega1_eq_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.not_conj_of_mem_tau1_union_tau3_of_normalizer_le /-! ### BG Corollary 12.6(a)(b) (`S12_Corollary126`) **BG Corollary 12.6(a)(b)** (mmd L3179): for `p ∈ τ₂(M)` and `A ∈ ℰ_p²(E)`: (a) `A ⊴ E` (`E_le_normalizer_of_tau2`) and every line of `E` lies in `A` (`line_le_of_le_E_of_tau2`); (b) `C_G(A) ≤ E`, `N_M(A) = E`, `N_G(A) ⊄ M` (`centralizer_le_E_of_tau2`). Consume Theorem 12.5(b)(c)(d), `omega1_eq_of_tau2`, and Proposition 12.4(a) — all unconditional. (c) `ℳ(C_G(X)) = {M}` for lines with nontrivial `M_σ`-centralizer, (d)(e) `C_{M_σ}(x) = 1` for `(τ₁∪τ₃)`-elements of `E₃` / `C_{E₁}(A)` (via Lemma 12.2(b) and Theorem 12.5(e)), (f) `M_σ ∩ M*_σ = 1` for non-conjugate `M*` (Lemma 10.12(b)); assembled as `elemAb_normal_in_E_of_tau2`. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.E_le_normalizer_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.line_le_of_le_E_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.centralizer_le_E_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.maximalContaining_centralizer_line_eq_singleton #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Msigma_inf_centralizer_eq_bot_of_le_centralizer #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.elemAb_normal_in_E_of_tau2 /-! ### BG Theorem 12.7 (`S12_Theorem127` / `S12_Theorem127d`) **BG Theorem 12.7** (mmd L3201-3251): `p ∈ τ₂(M)`, `A ∈ ℰ_p²(E)`, `G` with nonabelian Sylow `p`-subgroups. (a) `p` is the only prime in `τ₂(M)` (`tau2_prime_eq_of_nonabelianSylow`; faithful 化 = 素数限定形); (b)(c) the canonical line `A₀ = A ⊓ C_G(M_σ)` of order `p` with the dichotomy for other lines (`exists_canonical_line_of_nonabelianSylow`, via Lemma 10.13) and `F(M) = M_σ × A₀` (`fitting_eq_sup_of_canonical_line`); (d) the complement `E₀` of `A₀` in `E` (`exists_complement_of_canonical_line`, via Maschke on `E₂/℧¹(E₂)`); (e) `π(C_{E₀}(x)) ⊆ τ₁(M)` (`primeFactors_centralizer_le_tau1_of_disjoint`); assembled as `tau2_singleton_of_nonabelianSylow`. All unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau2_prime_eq_of_nonabelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_canonical_line_of_nonabelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.fitting_eq_sup_of_canonical_line #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_complement_of_canonical_line #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.primeFactors_centralizer_le_tau1_of_disjoint #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau2_singleton_of_nonabelianSylow /-! ### BG Lemma 12.8(a)(b)(c) (`S12_Lemma128`) **BG Lemma 12.8** (mmd L3253), abelian-Sylow case, parts (a)(b)(c): with `S` an abelian Sylow `p`-subgroup of `G` containing `A ∈ ℰ_p²(E)`, every `τ₂`-prime has abelian Sylow subgroups in `G` (12.7(a) contrapositive), each contributing its full `G`-Sylow inside `E`; the chain `S ⊆ N_G(S)' ⊆ F(E) ⊆ C_G(S) ⊆ E` (`sylow_chain_of_abelianSylow`, via Corollary 10.7(a) `sylow_le_derivedInG_normalizer`, the Fitting chain through `N_G(A)` `derivedInG_normalizer_elemAb_le_fittingInG` [Theorem 4.20(a)], and the `O_q × O_q'`-decomposition `sylow_eq_opiCore_fittingInG_of_tau2`); and `E₂ = O_{τ₂}(F(E))` is abelian, normal in `E`, and Hall `τ₂(M)` in `G` (`E2_abelian_normal_hall_of_abelianSylow`). All unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_le_derivedInG_normalizer #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.derivedInG_normalizer_elemAb_le_fittingInG #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_eq_opiCore_fittingInG_of_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.E2_abelian_normal_hall_of_abelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_chain_of_abelianSylow /-! ### BG Lemma 12.8(d)(e)(f) + assembly (`S12_Lemma128d`) (d) the normalizer chain `N_G(A) = N_G(S) = N_G(E₂) = N_G(E₂E₃) = N_G(F(E))` (`normalizer_chain_of_abelianSylow`; characteristic chain `A = Ω₁(S)`, `S = O_p(E₂)`, `E₂ = O_{τ₂}(E₂E₃)`, `E₂E₃ = O_{τ₂∪τ₃}(F(E))`, closed up by `F(N_G(A)) = F(C_G(A)) = F(E)`); (e) lines of `E₁` with trivial `M_σ`-centralizer are central in `E` (`central_line_of_abelianSylow`; `⁅E₂E₃, X⁆ ⊴ N_G(S)` against Proposition 10.11(d) and `N_G(S) ⊄ M`); (f) `C_S(X), ⁅S,X⁆ ⊴ N_G(S)` (`relative_normality_of_abelianSylow`); assembled as `E2_abelian_of_abelianSylow`. All unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.normalizer_chain_of_abelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.central_line_of_abelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.relative_normality_of_abelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.E2_abelian_of_abelianSylow /-! ### BG Corollary 12.9 (`S12_Corollary129`) For `p ∈ τ₂(M)`, `A ∈ ℰ_p²(E)`, `q ∈ τ₁(M)`, `Q ∈ ℰ_q¹(E)` with `C_{M_σ}(Q) = 1` and `[A,Q] ≠ 1`: (a) `A₀ = [A,Q] ∈ ℰ¹(A)` equals `C_A(M_σ)` and is normal in `M` (Proposition 10.11(d) at `K := A`, `P := Q`, sharpened by the 10.11(b) rank bound); (b) `A₀` is not conjugate to `A₁ = C_A(Q)` in `G` (cyclic Sylow `q` of `M` forces `Q ≤ C_G(A₀)`, collapsing the coprime decomposition `A = A₁ × A₀`); (c) `A₁ ∈ ℰ¹(A)` and `C_G(A₁) ⊄ M` (Theorem 12.7(c) after excluding the abelian-Sylow case via Lemma 12.8(e) and a Hall-`τ₁` conjugation). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.commutator_decomp_of_tau1_action /-! ### BG Corollary 12.10 (`S12_Corollary1210`) (a) every nilpotent `σ(M)'`-subgroup of `M` is abelian (the supporting `sylow_isMulCommutative_of_sigma_compl` gives abelian Sylow `r`-subgroups of `M` for all `r ∉ σ(M)` — cyclic for `r ∈ τ₁ ∪ τ₃` by the rank-1 bound, Theorem 12.5(b) for `r ∈ τ₂` — and `isMulCommutative_of_isNilpotent_of_forall_sylow` assembles the Sylow direct product); (b) `E₂` and `E' = derivedInG E` are abelian; (c) `E₂E₃ ≤ C_E(A) ⊴ E` with `π(E/C_E(A)) ⊆ τ₁(M)`; (d) noncyclic `p`-subgroups for `p ∈ σ(M)` satisfy `N_G(P) ≤ M` (Theorem 10.1(c) + Proposition 12.4(a)); (e) `τ₂`-elements `x` with `C_{M_σ}(x) ≠ 1` have `ℳ(C_G(x)) = {M}` (Hall-conjugate into `E₂`, then Theorem 12.5(e)). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isMulCommutative_of_isNilpotent_of_forall_sylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_isMulCommutative_of_sigma_compl #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.nilpotent_sigmaComplement_abelian /-! ### BG §12 `SubgroupESetup` existence (`S12_Lemma1211`) The §12-preamble existence statement: every `M ∈ ℳ` carries a `SubgroupESetup` (Schur–Zassenhaus complement `E` to `M_σ`, Hall `τᵢ` pieces with `E₁E₂` a subgroup via the Hall-in-Hall transfer `isHallSubgroup_of_isHallSubgroup_of_le`). Required to apply the §12 results on the `M*` side in Lemma 12.11 and later. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isHallSubgroup_of_isHallSubgroup_of_le #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_subgroupESetup /-! ### BG Lemma 12.11(a)(b) (`S12_Lemma1211`) (a) the primes of `τ₂(M)` lie in `σ(M*) − β(M*)` for `M* ∈ ℳ(N_G(A))` (stated for primes — the repo `tau2` does not exclude composites, same faithfulness correction as 12.3/12.10(c)); (b) `π(E/C_E(A)) ⊆ τ₁(M*) ∪ τ₂(M*)`, via the normal `p`-complement of `M*'` (Lemma 10.8(c)) instead of the nilpotent quotient `M*'/M*_β`. Supporting engine: `exists_conj_smul_le_hallPiece` (parametric Hall push-in extracted from 12.10(e)). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_conj_smul_le_hallPiece #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.mem_sigma_of_tau2_of_mem_maximalContaining #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau2_prime_mem_sigma_diff_beta #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.index_primeFactors_subset_tau1_union_tau2 /-! ### BG Lemma 12.11(c) + assembly (`S12_Lemma1211`) (c) `q ∈ π(E/C_E(A)) ∩ π(C_E(A))` forces `q ∈ τ₂(M*)`, a Sylow `p`-subgroup of `G` normal in `M*` (`M*_σ` nilpotent by 12.5(a)), and an abelian Sylow `q`-subgroup of `G` inside `M*` (12.8(c) chain; the nonabelian case is killed by the 12.7(d) complement against the no-complement property of `Ω₁` of the cyclic `q`-Sylow). The maximal `M** ∈ ℳ(N_G(Q₀))` is identified with `M*` via 12.6(f) + Theorem 10.1(b). `tau2_transfer_to_maximal` bundles (a)(b)(c) (scaffold moved from `S12_E`, (a)-conjunct prime-restricted). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau2_normalSylow_abelianSylow_of_mem_index_card #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.tau2_transfer_to_maximal /-! ### BG Theorem 12.12 prep: Proposition 3.9 (`S12_Theorem1212`) Gorenstein 5.3.14: a finite `p`-group (`p` odd) acting coprimely and fixed-point-freely on a nontrivial finite group is cyclic. Via an elementary abelian `p²`-subgroup `B` (when not cyclic), Isaacs 6.21 forces `⟨C_H(b) | b ∈ B^#⟩ = H`, contradicting fixed-point-freeness. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isCyclic_of_coprime_fpf_pgroup_action /-! ### BG Theorem 12.12: Frobenius packaging + case `τ₂(M) = ∅` (`S12_Theorem1212`) `isFrobeniusGroup_of_regular`: a nontrivial complement `E₀ ≤ E` acting regularly on `M_σ` (`M_σ ⊓ C_G(a) = 1` for `a ∈ E₀#`) makes `M_σ E₀` a Frobenius group with kernel `M_σ` (`M_σ ⊴ M`, `M_σ ⊓ E₀ = 1` from the `SubgroupESetup`, `M_σ ≠ 1` by Theorem 10.2(e)). `frobFact_of_regular_all`: when `E = E₁E₃` (the regularity covers all of `E`), `A₀ = 1` and `E₀ = E` discharge both conclusions. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isFrobeniusGroup_of_regular #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.frobFact_of_regular_all #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exponent_eq_of_forall_factorization_le /-! ### BG Theorem 12.12: Case 2 (nonabelian Sylow `p`) (`S12_Theorem1212`) Shared infrastructure (`eq_sup_inf_of_le_normalizer` = Dedekind decomposition under a normalizer condition; `inf_centralizer_bot_symm` = symmetry of centralizer-disjointness) and the exponent machinery (`factorization_exponent_le_of_sylow` = the `p`-part of `exp E` lives in a Sylow; `exists_orderOf_eq_rpow_in_complement` / `exists_factorization_le_at_prime` realise the `r`-part of `exp E` inside the complement `E₀` for `r ≠ p` resp. `r = p`). The capstone `frobFact_of_nonabelianSylow` assembles `FrobFactConclusion M E` for the nonabelian-Sylow case via the canonical line `A₀` (Theorem 12.7) and its complement `E₀`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.eq_sup_inf_of_le_normalizer #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.inf_centralizer_bot_symm #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.factorization_exponent_le_of_sylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_orderOf_eq_rpow_in_complement #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_factorization_le_at_prime #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.frobFact_of_nonabelianSylow /-! ### BG Theorem 12.12: Case 3 (abelian Sylow `p`) building blocks (`S12_Theorem1212b`) `sylow_maximal_in_M_of_le`: a Sylow `p`-subgroup of `G` inside `M` is also Sylow in `M`. `inf_centralizer_line_eq_bot_of_invariant` (key fact, BG L3345-3347): since `N_G(S) ⊄ M`, an `N_G(S)`-invariant line `L ≤ S` has `C_{M_σ}(L) = 1` (`L ≤ Ω₁(S) = A`, then Corollary 12.6(c) forces `N_G(L) ⊆ M ⊇ N_G(S)`, contradiction). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_maximal_in_M_of_le #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.inf_centralizer_line_eq_bot_of_invariant /-! ### BG Theorem 12.12: Case 3 cyclic-`Z` regularity bridge (`S12_Theorem1212b`) `line_le_zpowers_in_cyclic`: in a finite cyclic `p`-group the order-`p` subgroup is the unique minimal one, contained in `⟨a⟩` for every `a ≠ 1` (generator + `orderOf_pow` gcd + Bézout). `inf_centralizer_eq_bot_of_line_le_cyclic`: transfers `N ⊓ C_G(L) = 1` (for a line `L ≤ Z`, `Z` cyclic) to `N ⊓ C_G(a) = 1` for all `a ∈ Z#`, since `L ≤ ⟨a⟩` gives `C_G(a) ≤ C_G(L)`. This connects the key fact to the per-element Frobenius regularity. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.line_le_zpowers_in_cyclic #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.inf_centralizer_eq_bot_of_line_le_cyclic /-! ### BG Theorem 12.12: Case 3 φ̄ quotient action wrapper (`S12_Theorem1212b`) `conjActionHom_ker`: the kernel of the conjugation action `Q →* MulAut S` (`Q ≤ N_G(S)`) is `C_Q(S) = C_G(S) ⊓ Q`, via `Subgroup.normalizerMonoidHom_ker`. `isCyclic_quotient_of_conjugation_fpf`: a `q`-group `Q ≤ N_G(S)` acting on a `p`-group `S ≠ 1` (`p ≠ q`) fixed-point-freely outside its kernel `C_Q(S)` has cyclic quotient `Q ⧸ C_Q(S)`; the lifted action is FPF, so Proposition 3.9 (`isCyclic_of_coprime_fpf_pgroup_action`) applies. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.conjActionHom_ker #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isCyclic_quotient_of_conjugation_fpf /-! ### BG Theorem 12.12: Case 3 back-half — rank-2 abelian split ⟹ factors cyclic (`S12_Theorem1212b`) `isCyclic_of_inf_eq_bot_of_pRank_le_two`: in a finite abelian `p`-group `T` (`p` odd) of `p`-rank `≤ 2`, a subgroup `T₀` disjoint from a nontrivial `T₁` is cyclic (else `T₀ ⊇ B₀` elem-ab order `p²`, with `y ∈ T₁` order `p` the join `B₀ ⊔ ⟨y⟩` is elem-ab order `p³`, so `pRank T ≥ 3`). For `S = C_S(X) × [S,X]` in Case 3: both factors cyclic since `r(S) = 2`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isCyclic_of_inf_eq_bot_of_pRank_le_two /-! ### BG Theorem 12.12: Case 3 back-half — exponent of internal product (`S12_Theorem1212b`) `exponent_eq_of_sup_eq_top_of_exponent_dvd`: in a finite abelian `T = T₀ ⊔ T₁ = ⊤`, if `exp(T₁) ∣ exp(T₀)` then `exp(T) = exp(T₀)` (each `g = a·b` factors, `ord g ∣ lcm(ord a, ord b) ∣ exp T₀`). For `Z` = the larger cyclic factor of `S = C_S(X) × [S,X]`: `exp(Z) = exp(S)`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exponent_eq_of_sup_eq_top_of_exponent_dvd /-! ### BG Theorem 12.12: Case 3 back-half — invariant cyclic `Z` acts regularly (`S12_Theorem1212b`) `inf_centralizer_eq_bot_of_invariant_cyclic`: an `N_G(S)`-invariant nonidentity cyclic `Z ≤ S` has `M_σ ⊓ C_G(z) = 1` for every `z ∈ Z#`. Its order-`p` subgroup `L = Ω₁(Z)` is a line (`|Ω₁(Z)| = p` via cyclic exponent), `N_G(S)`-invariant (`Ω₁` characteristic in `Z`), so the key fact `inf_centralizer_line_eq_bot_of_invariant` gives `M_σ ⊓ C_G(L) = 1` and the cyclic bridge `inf_centralizer_eq_bot_of_line_le_cyclic` spreads it to all of `Z#`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.inf_centralizer_eq_bot_of_invariant_cyclic /-! ### BG Theorem 12.12: Case 3 back-half — the `Z`-construction assembly (`S12_Theorem1212b`) `isCyclic_of_le_of_inf_eq_bot_of_pRank_le_two` / `exponent_eq_of_le_of_sup_eq_of_exponent_dvd`: `subgroupOf` casts of the two abstract back-half primitives to subgroups of `G` inside an abelian Sylow `S`. `exists_invariant_cyclic_sameExponent_regular`: in the abelian-Sylow regime, `X ≤ N_G(S)` (coprime to `S`) with `1 ⊊ C_S(X) ⊊ S` yields a cyclic `N_G(S)`-invariant `Z ≤ S` with `exp(Z) = exp(S)` acting regularly on `M_σ`. `S = C_S(X) × [S,X]` (`fitting_coprime_abelian_-` `decomp`), both factors cyclic (`r(S) = 2`) and invariant (Lemma 12.8(f)); `Z` is the larger. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isCyclic_of_le_of_inf_eq_bot_of_pRank_le_two #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exponent_eq_of_le_of_sup_eq_of_exponent_dvd #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_invariant_cyclic_sameExponent_regular /-! ### BG Theorem 12.12: Case 3 front-half — `Ω₁`-rank reasoning (`S12_Theorem1212b`) `omega_le_of_ne_bot_in_cyclic`: in a finite cyclic `q`-group the order-`q` subgroup `Ω₁` lies in every nontrivial subgroup (`|Ω₁| = q` + `line_le_zpowers_in_cyclic`). `pRank_le_one_of_cyclic_quotient`: the `r(Q) = 1` side of the Case 3 rank contradiction — a finite `q`-group `Q` with cyclic quotient `Q ⧸ Q₀` and `Q₀ ⊊ Q₁ ≤ Q` (`Q₁` cyclic) has `pRank Q q ≤ 1`, since `Ω₁(Q) ≤ Q₁` (via `Ω₁(Q ⧸ Q₀) ≤ Q₁ ⧸ Q₀`) and every elem-ab `B ≤ Ω₁(Q) ≤ Q₁` is cyclic of order `≤ q`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.omega_le_of_ne_bot_in_cyclic #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.pRank_le_one_of_cyclic_quotient /-! ### BG Theorem 12.12: Case 3 front-half setup — `E ≤ N_G(S)` (`S12_Theorem1212b`) `E_le_normalizer_sylow_of_abelianSylow`: in the abelian-Sylow regime `E ≤ N_G(S)`. `S ≤ F(E)` (Sylow chain), `S` is the Sylow `p`-subgroup of the nilpotent `F(E)` hence characteristic in it, and `E` normalizes `F(E)`, so `E ≤ N_G(F(E)) ≤ N_G(S)`. Lets the Sylow `q`-subgroups of `E` sit inside `N_G(S)` for the front-half rank argument. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.E_le_normalizer_sylow_of_abelianSylow /-! ### BG Proposition 1.6(e): `Ω₁`-centralizing coprime action is trivial (`S12_Theorem1212b`) `centralizer_le_of_omega1_le_centralizer`: an abelian `p`-group `S` with a coprime operator `Q ≤ N_G(S)` that centralizes `Ω₁(S)` is centralized by `Q` entirely. Via the coprime split `S = C_S(Q) × [S, Q]` (`fitting_coprime_abelian_decomp`): a nontrivial `[S, Q]` would contain an order-`p` element of `Ω₁(S) ⊆ C_S(Q)`, contradicting `C_S(Q) ⊓ [S, Q] = 1`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.centralizer_le_of_omega1_le_centralizer /-! ### BG Theorem 12.12: Case 3 front-half — the `r_q = 2` side (`S12_Theorem1212b`) `sylow_eq_of_le_normalizer`: two Sylow `p`-subgroups, one normalizing the other, coincide (`P` is the unique Sylow `p` of `N_G(P)`). `pRank_normalizer_eq_two_of_index_card`: in the abelian-Sylow regime, `q ∣ [E : C_E(A)]` and `q ∣ |C_E(A)|` force `r_q(N_G(S)) = 2`. Lemma 12.11(c) gives `M* ∈ ℳ(N_G(A))` with `q ∈ τ₂(M*)` and a Sylow `p`-subgroup `P` of `G` normal in `M*`; `S ≤ N_G(S) = N_G(A) ≤ M* ≤ N_G(P)` and `S = P` make `M* = N_G(S)`, so `pRank (N_G(S)) q = pRank M* q = 2`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sylow_eq_of_le_normalizer #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.pRank_normalizer_eq_two_of_index_card /-! ### Prime divides index of normal subgroup missing a Sylow (`S12_Theorem1212b`) `prime_dvd_index_of_sylow_not_le_of_normal`: if `H ⊴ K` does not contain the Sylow `q`-subgroup `P`, then `q ∣ [K : H]` (the image of `P` in `K ⧸ H` is a nontrivial `q`-group). Front-half setup tool: feeds `q ∈ π(E/C_E(A))` from `Q₁ ⊄ C_E(A)` with `C_E(A) ⊴ E`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.prime_dvd_index_of_sylow_not_le_of_normal /-! ### BG Theorem 12.12: Case 3 front-half — setup + `X` existence (`S12_Theorem1212b`) `exists_sylow_tau1_cyclic_notCentralizing`: in the abelian-Sylow regime with the regularity hypothesis, `C_E(S) ≠ E` yields a prime `q ≠ p` and a cyclic Sylow `q`-subgroup `Q₁` of `E` with `q ∈ τ₁(M)`, `Q₁ ⊄ C(S)`, and `q ∈ π(E/C_E(A)) ∩ π(C_E(A))` (the data for the `r_q = 2` lemma). `exists_partial_centralizer_of_abelianSylow`: hence some `X ≤ N_G(S)` has `1 ⊊ C_S(X) ⊊ S` — otherwise `Q ⧸ C_Q(S)` is cyclic (`pRank Q q ≤ 1`) yet `pRank Q q = r_q(N_G(S)) = 2`. Feeds the `Z`-construction `exists_invariant_cyclic_sameExponent_regular`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_sylow_tau1_cyclic_notCentralizing #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_partial_centralizer_of_abelianSylow /-! ### Agemo of an abelian group is the set of `pⁿ`-th powers `agemo_eq_range_powMonoidHom` / `mem_agemo_iff_of_comm`: in a commutative group `℧ⁿ(H)` equals the range of the `pⁿ`-th power map, so `x ∈ ℧ⁿ(H) ↔ ∃ y, x = y^(pⁿ)`. Tool for the Case 3 `C_E(S) = E` branch (`Z = ⟨s⟩` with `Ωₐ₋₁(S) = ⟨s^{p^{a-1}}⟩` the good line). Unconditional. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.agemo_eq_range_powMonoidHom #assert_only_allowed_axioms OddOrder.GroupTheory.mem_agemo_iff_of_comm /-! ### BG Theorem 12.12: Case 3 — the `C_E(S) = E` branch (`S12_Theorem1212b`) `exists_generator_of_card_prime`: a subgroup of order `p` is `⟨w⟩` for any nonidentity `w`. `exists_cyclic_Enormal_regular_of_CES_eq`: in the abelian-Sylow regime with the regularity hypothesis, `C_E(S) = E` yields a cyclic `Z ≤ S` of exponent `exp(S)`, normalized by `E`, acting regularly on `M_σ`. Built from a good line `L = ⟨w⟩ ≤ ℧^{a-1}(S)` (`℧^{a-1}(S) = A` → Theorem 12.5(f); else `℧^{a-1}(S)` is a characteristic line via the key fact) with `w = s^{p^{a-1}}`, `Z = ⟨s⟩`. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_generator_of_card_prime #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_cyclic_Enormal_regular_of_CES_eq /-! ### BG Theorem 12.12: Case 3 per-prime `Z`-construction (both branches) (`S12_Theorem1212b`) `exists_cyclic_Enormal_regular_of_abelianSylow`: in the abelian-Sylow regime with the regularity hypothesis, `S` has a cyclic `Z ≤ S` of exponent `exp(S)`, normalized by `E`, regular on `M_σ`. Splits on `C_E(S) = E`: `= E` uses the agemo construction; `≠ E` produces `X` (front-half) then the invariant `Z` (back-half). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_cyclic_Enormal_regular_of_abelianSylow /-! ### Frobenius complement: prime-order regularity propagates (`S12_Theorem1212b`) `inf_centralizer_eq_bot_of_forall_prime_order`: if every prime-order element of `H` acts fixed-point-freely on `N`, so does every nonidentity element (`C(h) ⊆ C(h^{|h|/r})` for a prime `r ∣ |h|`). The reduction for "`E₀ = E₁E₃·∏Z_p` is a Frobenius complement". Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.inf_centralizer_eq_bot_of_forall_prime_order /-! ### BG Theorem 12.12: three-case assembly building blocks (`S12_Theorem1212c`) `exists_regular_cyclic_of_mem_tau2`: per-prime `Z_p` extraction for `p ∈ τ₂(M)` in the abelian Sylow case — a cyclic `p`-subgroup `Z ≤ E`, normalized by `E`, of the same exponent as a Sylow `p`-subgroup `S ≤ E`, regular on `M_σ` (wires `exists_elemAb_rank_two_le_E_of_tau2`, the Sylow extension, `sylow_chain_of_abelianSylow` giving `S ≤ E`, and the per-prime capstone). Unconditional. `isPiSubgroup_le_of_normal_isHall`: a `π`-subgroup is contained in any *normal* Hall `π`-subgroup (companion to `Subgroup.IsPiGroup.normal_le_hall`). `frobFact_partA_of_abelianSylow`: part (a) of Theorem 12.12 in the abelian-Sylow case — `A₀ = E₂` is abelian normal with `C_E(x) ⊆ E₂` for `x ∈ M_σ#` (`C_E(x)` is a `τ₂`-group by `hreg`, then in the normal Hall `E₂`). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_regular_cyclic_of_mem_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.isPiSubgroup_le_of_normal_isHall #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.frobFact_partA_of_abelianSylow /-! `⨆_{p ∈ T} Z_p` internal direct product (for the `E₀ = ∏ Z_p` aggregation, part (b)): `le_normalizer_finsetSup` (`H` normalizes each `Z p` ⟹ normalizes `T.sup Z`), `card_finsetSup_eq_prod` (`|T.sup Z| = ∏ |Z p|` for a `Finset` of primes, `Z p` a normalized `p`-group — via `card_sup_eq_mul_of_le_normalizer_of_disjoint` + coprimality), `mem_Z_of_orderOf_prime_mem` (an element of `T.sup Z` of prime order `r ∈ T` lies in `Z r`, by the `r'`-cofactor quotient-order argument). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.le_normalizer_finsetSup #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.card_finsetSup_eq_prod #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.mem_Z_of_orderOf_prime_mem /-! `exists_tau2_product`: the `τ₂`-product `ZZ = ∏_{p ∈ τ₂(M) ∩ π(E)} Z_p` for the abelian-Sylow case — `≤ E`, nontrivial, `E`-normalized, a `τ₂(M)`-group, fully regular on `M_σ`, realizing the `τ₂`-part of `exp(E)`. Bundles the per-prime choice (`exists_regular_cyclic_of_mem_tau2`) with the direct-product lemmas (`card_finsetSup_eq_prod` / `mem_Z_of_orderOf_prime_mem`). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_tau2_product /-! **BG Theorem 12.12** (`frobenius_factorization_of_regular`, `frobFact_of_abelianSylow`): the abelian-Sylow Case 3 aggregation `E₀ = ZZ ⊔ K` (`ZZ` the `τ₂`-product, `K` a Hall `τ₂'`-subgroup) realizes `exp(E₀) = exp(E)` and is regular on `M_σ`, so `M_σ E₀` is a Frobenius group; with the three-case glue this completes Theorem 12.12. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.frobFact_of_abelianSylow #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.frobenius_factorization_of_regular /-! **BG Theorem 12.13** reduction (`S12_Theorem1213`): `mem_sigma_normalizer_le_of_two_maximals` — a nonabelian `p`-subgroup `P ≤ M` (maximal) has `p ∈ σ(M)` (Cor 12.10(a) contrapositive: a `σ'`-`p`-subgroup is nilpotent hence abelian) and `N_G(P) ⊆ M` (Cor 12.10(d), `P` noncyclic). Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.mem_sigma_normalizer_le_of_two_maximals /-! **BG Theorem 12.13** Heisenberg piece (`S12_Theorem1213`): `exists_conj_eq_center_mul_of_expPExtraspecial` — in an exponent-`p` extraspecial group, the conjugates of a noncentral `a₀` cover its central coset `Z(Q)·a₀`. The map `q ↦ ⁅q,a₀⁆` is a homomorphism onto the order-`p` center (commutators central), nontrivial as `a₀ ∉ Z(Q)`, hence surjective. The conjugacy half of the 12.13 line-conjugacy argument. Unconditional. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.exists_conj_eq_center_mul_of_expPExtraspecial /-! **BG Theorem 12.13** (`S12_Theorem1213`, σ-side keystone): a nonabelian `p`-subgroup `P` contained in two distinct maximals `M ≠ M⋆` is impossible — equivalently, any maximal `M` containing a nonabelian Sylow-type `p`-subgroup is the *unique* maximal subgroup containing it (`nonabelian_pgroup_isUniquelyMaximal`). Proof: `P` → Sylow of `M ∩ M⋆` → Sylow of `G` forces `r(P) = 2`; Cor 10.7(b) extracts an exponent-`p` extraspecial `Q` (order `p³`); `Q/Z(Q)` acts coprimely and noncyclically on `K = C_{Mα}(Z)`, so Prop 1.16 writes `K = ⟨C_K(Ā) | Ā cocyclic⟩`, each generator centralized by a rank-2 `A ∈ ℰ²(Q)` hence inside `M⋆` by 12.4(a); with Cor 10.9(b) + Lem 6.5(b) this puts `N_M(Z) ⊆ M⋆`, and 12.4(b) produces `A₀, A₀⋆ ∈ ℰ¹(A) − {Z}` realizing `M, M⋆`, contradicting line-conjugacy + ℳ-uniqueness. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.nonabelian_pgroup_isUniquelyMaximal /-! **BG Proposition 12.15** (`S12_Proposition1215`, σ-prime ↔ maximal interaction): for `q ∈ σ(M)`, a nonidentity `q`-subgroup `X ⊆ M`, and `M⋆ ∈ ℳ(N_G(X)) − {M}`, with `S = Syl_q(M ∩ M⋆) ⊇ X`, the five conclusions (`sigma_subgroup_maximal_interaction`): (a) `M⋆` not `G`-conjugate to `M`; (b) `N_G(S) ⊆ M`; (c) `S` is the unique Sylow-`q` of `G` in `M⋆`; (d) if `q ∈ σ(M⋆)` then the `M⋆=(M∩M⋆)M⋆_β` factorization, the prime-guarded τ₁-transfer `∀ r prime, r∈τ₁(M⋆) → r∈τ₁(M)∪α(M)` (shared Sylow `Syl_r(M∩M⋆)` of both `M`, `M⋆` via the `M_β`/`M⋆_β` diamonds), and `M_β=M_α≠1`; (e) if `q ∉ σ(M⋆)` then `q∈τ₂(M⋆)`, `π(M)∩σ(M⋆)⊆β(M⋆)`, and `M∩M⋆` is an `M⋆_σ`-complement. The τ₁ inclusion is prime-restricted (BG's `τᵢ ⊆ π(M)` are sets of primes; the repo's `pRank`-based `tau1` ranges over `ℕ`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sigma_subgroup_maximal_interaction /-! **BG Corollary 12.14** (`S12_Corollary1214`, `maximalContaining_centralizer_eq_singleton`): for `p ∈ σ(M)`, `X ∈ ℰ_p¹(M)`, and `p ∈ β(M)` or `X ⊆ M_σ'`, `ℳ(C_G(X)) = {M}`. Proof: `X ⊆ M_σ` and a Sylow `p` `S ⊇ X` of `M_σ` (`= Sylow p` of `G`); a uniquely-maximal `U ≤ C_G(X) ∩ M` suffices. If `r(C_P(X)) ≥ 3`, take `U = C_P(X)` (Uniqueness Theorem); else `p ∉ idealPrime`, `X ⊆ S'` (Lemma 10.8(c) normal-`p`-complement), `r(S) ≤ 2` (Cor 5.4 + Thm 5.3(d)), Cor 10.7(b) gives `S = P₁ * P₂` central product with `P₁` extraspecial, and `U = P₁` (nonabelian, `X ⊆ Z(P₁)`, Theorem 12.13). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Cor1214.maximalContaining_centralizer_eq_singleton /-! **BG Corollary 12.14, faithful form** (`S12_Corollary1214`, `maximalContaining_centralizer_and_someSylow_eq_singleton`): strengthens the above to also conclude `ℳ(S₀) = {M}` for some Sylow `p`-subgroup `S₀ ⊇ X` of `M_σ`, matching the textbook `ℳ(C_G(X)) = ℳ(P) = {M}`. Same witness `U`: it satisfies `U ≤ S₀` in every branch (`P₁ ≤ S₀`, resp. `C_P(X) ≤ S₀`), so threading `U ≤ S₀` through the unified engine yields the second conjunct. Needed by BG Lemma 13.6 (issue 8002). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Cor1214.maximalContaining_centralizer_and_someSylow_eq_singleton /-! **BG Corollary 12.16** (`S12_Corollary1216`, σ-subgroup ↔ maximal interaction, `q`-group form): for a nonidentity `q`-group `Y` (`q ∈ σ(M)`), every `p ∈ π(E) ∩ β(G)'`, and every `H ∈ ℳ(Y)` not conjugate to `M`: (a) `r_p(N_H(Y)) ≤ 1` (`pRank_normalizer_le_one`); (b) if `p ∈ τ₁(M)` then `p ∉ π(N_H(Y)')` (`not_mem_primeFactors_derived_of_tau1`). Proof: conjugate `Y` into `M_σ`, then in the core either `N_G(Y) ⊆ M` (direct) or `M* ∈ ℳ(N_G(Y))` with `M* = (M ∩ M*)K` (Prop 12.15(d)/(e), `K` a `p'`-group); a rank-2 `A ∈ ℰ_p²` forces `p ∈ τ₂(M)` + Thm 12.5(e) `M_σ ∩ M* = ⊥` (contra (a)), and `deriv ≤ (M ∩ M*)'⊔K` is `p'` (for (b)). Lane G (S13_Lemma131) re-points to these. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Cor1216.pRank_normalizer_le_one #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.Cor1216.not_mem_primeFactors_derived_of_tau1 /-! **BG Corollary 12.16** (general `σ(M)`-subgroup form, `S12_Corollary1216`): the `q`-group forms above lift to an arbitrary nonidentity `σ(M)`-subgroup `Y` via a characteristic `q`-subgroup `O_q(Y)` (`N_G(Y) ≤ N_G(O_q(Y))`, `pRank`/`derivedInG` monotone). These are what `S13_Lemma131` now cites (replacing the former S12_E `sorry`'d forward-decls); fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sigma_subgroup_pRank_normalizer_le_one #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sigma_subgroup_not_mem_primeFactors_derived_of_tau1 /-! **BG Corollary 12.16(a)**, *headline form* (`S12_Corollary1216`, `sigma_subgroup_conj_into_Msigma_general`): a nonidentity `σ(M)`-subgroup `Y < ⊤` of `G` is `G`-conjugate into `M_σ` (BG's `ℓ_σ ≤ 1` tool, mmd L3801). Proof: a characteristic `q`-subgroup `X ⊆ Y` conjugates into `M_σ`; either `N_G(X) ⊆ M` (so `Y ⊆ M ⟹ Y ⊆ M_σ`) or `M* = (M ∩ M*)K` (Prop 12.15) with `K` a `σ(M)'`-group, and `hall_D` pushes `Y` into `M ∩ M* ⊆ M`. The `σ`-disjointness gate (Theorem 13.9, downstream) is a hypothesis `hσdisj` to avoid an import cycle; §14 callers discharge it with `sigma_disjoint_of_nonconjugate`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S12.sigma_subgroup_conj_into_Msigma_general /-! ### BG §14 (`S14_TypePCounting`) -/ /-! **Derived subgroup of a split extension** (`S14_TypePCounting`, `commutator_eq_sup_commutator_of_isComplement'`): general group theory — if `N ⊴ H` has a complement `E` and `N ≤ H'`, then `H' = N ⊔ ⁅E,E⁆`. Used to reduce Theorem 14.7(h) (`M' = M_σ ⊔ E'`, so `M'` complements `K` iff `E = K ⋉ E'` inside the `σ(M)'`-complement). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.commutator_eq_sup_commutator_of_isComplement' /-! **BG Lemma 14.1** (`S14_TypePCounting`): for `M ∈ 𝓜` and a prime `p ∈ π(M) - (σ(M) ∪ κ(M))` with `A ∈ ℰ_p^{r_p(M)}(M)`, one has `|A| ≤ p²`, `C_{M_σ}(A) = 1`, and `M_σ` is nilpotent. The `r_p = 2` case is Theorem 12.5(a)(d); the `r_p = 1` case uses `p ∉ κ(M)` and the fixed-point-free criterion of Theorem 3.7. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.msigma_structure_of_notMem_sigma_kappa /-! **BG Lemma 14.5(b)** (`S14_TypePCounting`): for nonconjugate maximal `M`, `N`, the conjugacy saturations `𝒞_G(M_σ^#)`, `𝒞_G(N_σ^#)` are disjoint. Proved citing Theorem 13.9 (`sigma_disjoint_of_nonconjugate`), which landed in §13 (Lane F) on 2026-06-15, so this is now fully unconditional and axiom-clean. (Lean uses the `M_σ^#` restriction of BG's `M̃`, which makes 13.9 alone sufficient — no `R(x)` / `M̃` machinery needed.) -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigmaConjugacy_disjoint_of_nonconjugate /-! **BG Lemma 14.5(a)** (`S14_TypePCounting`, `xRsub_disjoint`): for distinct σ-length-one `x`, `y`, the cosets `x R(x)`, `y R(y)` are disjoint. Proven via the σ-class partition + the two-block decomposition (`isPiElement_mul_unique`) + Theorem 14.4(e); no §15/§16 needed. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.xRsub_disjoint -- **BG Lemma 14.5(b)** (faithful `M̃` form): nonconjugate `M₁`, `M₂` have disjoint `M̃₁`, `M̃₂`. #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.Mtilde_disjoint /-! **BG Lemma 14.5(c), Part A** (`S14_TypePCounting`, `sigmaSaturation_Rsub_count`): the double count `∑_{x ∈ 𝒞_G(M_σ^#)} |R(x)| = |M_σ^#|·[G : M]`, counting incidence pairs `(x, Mᵍ)` two ways via sharp transitivity (Theorem 14.4). -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigmaSaturation_Rsub_count /-! **BG Lemma 14.5(c)** (`S14_TypePCounting`, `sigmaConjugacySaturation_Mtilde_ncard`): `|𝒞_G(M̃)| = (|M_σ| − 1)·[G : M]`. Part B (the disjoint cover `𝒞_G(M̃) = ⊔ₓ x R(x)` via the `R`-equivariance `Rsub_conj`) combined with Part A. The type-`P` counting bound for Theorem 14.7. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigmaConjugacySaturation_Mtilde_ncard /-! **BG Lemma 14.11** (`S14_TypePCounting`, `exists_maximal_of_typeF_notMem_fitting`): for `M ∈ 𝓜_F`, `E` an `M_σ`-complement, `Q ∈ ℰ_q¹(E)` with `Q ⊄ F(E)`, there is `M* ∈ 𝓜` with either `q ∈ τ₂(M*) ∧ 𝓜(C_G(Q)) = {M*}` or `q ∈ κ(M*) ∧ M* ∈ 𝓜_{P₁}`. Sorry-free + axiom-clean. The supporting `exists_typeF_complement_cyclic_commutator` (cyclic-commutator bundle with `C_{K'}(Q)=1`) and `exists_elemAb_rank_two_le_E_containing_line` (the A-choice) are registered below. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_maximal_of_typeF_notMem_fitting #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_typeF_complement_cyclic_commutator #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_elemAb_rank_two_le_E_containing_line /-! **σ-decomposition keystone** (`S14_TypePCounting`, `length_one_of_isPiElement_sigma`): a nonidentity `σ(M)`-element `x` has `ℓ_σ(x) = 1`. Existence half of the σ-decomposition (BG §1): `⟨x⟩` is conjugate into `M_σ` (Cor 12.16(a)), so `𝓜_σ(x) ≠ ∅`. Foundation for Lemma 14.6. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.length_one_of_isPiElement_sigma /-! **Every prime divides some `σ(M)`** (`S14_TypePCounting`, `exists_mem_sigma_of_prime_dvd_card`): for `p ∣ |G|` there is a maximal `M` with `p ∈ σ(M)` (BG §1, via a non-normal Sylow `p`-subgroup). -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_mem_sigma_of_prime_dvd_card /-! **σ-decomposition factor extraction** (`S14_TypePCounting`, `exists_length_one_factor`): every `g ≠ 1` factors `g = x·x'` with `ℓ_σ(x) = 1`, `x'` a `σ(M)′`-element (commuting, both in `⟨g⟩`). -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_length_one_factor /-! **Coq `cent1_sub_uniq_sigma_mmax`** (`S14_TypePCounting`, `centralizer_le_of_maximalSigma_ncard_eq_one`): if `𝓜_σ(x)` is a singleton, its unique element `M` contains `C_G(x)` (`y ∈ C_G(x)` permutes `𝓜_σ(x)`, fixing `M`, so `y ∈ N_G(M) = M`). The linchpin of the `|𝓜_σ(x')| > 1` step of BG Lemma 14.6. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.centralizer_le_of_maximalSigma_ncard_eq_one /-! **BG Lemma 14.6 core** (`S14_TypePCounting`, `signalizer_coset_or_kappa_of_sigmaSharp`, Coq `s'g`): for `x ∈ M_σ^#` and a nonidentity `σ(M)′`-element `x'` of `M` centralizing `x`, the product `g = x·x'` lands in either the signalizer branch (`∃ y, ℓ_σ(y)=1 ∧ y⁻¹g ∈ R(y)`, witnessed by `y = x'`) or the κ branch (`ℓ_σ(x)=1`, `M ∈ 𝓜_σ(x)`, `x' ∈ (C_M[x])^#`, `x'` a `κ(M)`-element). Direct consumer of `sigma_diagnostic` (Cor 14.3); the τ₂ branch uses `centralizer_le_of_maximalSigma_ncard_eq_one` + `exists_neighbor_eq_Rsub`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.signalizer_coset_or_kappa_of_sigmaSharp /-! **σ-element of `M` lies in `M_σ`** (`S14_TypePCounting`, `mem_Msigma_of_isPiElement_sigma_of_mem`, Coq `mem_Hall_pcore (Msigma_Hall maxM)`): the converse of `isPiElement_sigma_of_mem_Msigma` — the image of a `σ(M)`-element `x ∈ M` in the `σ(M)′`-quotient `M / M_σ` is trivial. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.mem_Msigma_of_isPiElement_sigma_of_mem /-! **BG Lemma 14.6 core, `g ∈ M` corollary** (`S14_TypePCounting`, `branchA_or_branchB_of_mem_maximal`): for `g` in a maximal `M` with nontrivial `σ(M)`-part, `g` lands in the signalizer branch or the κ branch. Combines `mem_Msigma_of_isPiElement_sigma_of_mem` with `signalizer_coset_or_kappa_of_sigmaSharp`. The form consumed by the full Lemma 14.6 assembly. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.branchA_or_branchB_of_mem_maximal /-! **Hall conjugacy** (`S14_TypePCounting`, `exists_conj_smul_le_of_isHall`, Coq `Hall_subJ`): in a maximal `M`, every `π`-subgroup `X ≤ M` conjugates by an element of `M` into any Hall `π`-subgroup `K` of `M`. The general-`π` form of `exists_conj_smul_le_isHall_kappa`; the tool for the `g ∉ M` case of the full Lemma 14.6 dichotomy. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_conj_smul_le_of_isHall /-! **`σ` conjugation-invariant** (`S14_TypePCounting`, `sigma_conj_smul_eq`, Coq `sigmaJ`): `σ(Mᵍ) = σ(M)` as sets. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigma_conj_smul_eq /-! **BG Lemma 14.6** (`S14_TypePCounting`, `sigma_decomposition_dichotomy`, Coq `BGsection14`:1189): every `g ≠ 1` lands in the signalizer branch (`∃ y, ℓ_σ(y)=1 ∧ y⁻¹g ∈ R(y)`) or the κ branch (`∃ y, ℓ_σ(y)=1 ∧ ∃ N ∈ 𝓜_σ(y), y⁻¹g ∈ (C_N[y])^#` with `y⁻¹g` a `κ(N)`-element). Proof = Coq's second half: `branchA_or_branchB_of_mem_maximal` gives `s'g`, then the σ-decomposition factor, WLOG `x ∈ M_σ`, the neighbour `N = N(x)` of Theorem 14.4, and Hall conjugacy of `⟨g⟩` into the `σ(N)′`-Hall `M ∩ N` force the σ-part `x = 1`, a contradiction. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigma_decomposition_dichotomy /-! **BG Corollary 14.9, type-I cover** (`S14_TypePCounting`, `exists_mem_conjClassSet_Mtilde_of_ne_one`): under all-type-`F`, every `g ≠ 1` lies in some `𝒞_G(M̃)`. Immediate from `sigma_decomposition_dichotomy` (the κ branch is empty since `κ(N) = ∅`). **Gate 2 of the BG Theorem E cover is now sorry-free.** Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_mem_conjClassSet_Mtilde_of_ne_one /-! **BG Corollary 14.9, the `G#` cover under all-type-`F`** (`S14_TypePCounting`, `sharpSubgroup_top_eq_iUnion_conjClassSet_Mtilde_of_typeF`): under all-type-`F`, `G# = ⋃_M 𝒞_G(M̃)`. `⊆` is the discharged cover identity (BG Lemma 14.6), `⊇` is `1 ∉ M̃`. This is the `cover_nonidentity` field of `BGTheoremETypeICovering` (modulo reps-vs-all-maximals). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sharpSubgroup_top_eq_iUnion_conjClassSet_Mtilde_of_typeF /-! **κ→Ẑ identification** (`S14_TypePCounting`, the Coq `mFT_partition` part 2 core): for a type-`P` `M`, a `σ(M)`-element `y` centralizing a nonidentity `κ(M)`-element `y'∈M` has product `y·y' ∈ 𝒞_G(Ẑ)`. `typeP_sigmaElement_mem_Kstar` (`y∈K*` via `Z=K⊔K*` cyclic) → `kappa_branch_mem_zTilde` (`y·y'∈Ẑ` for `y'∈K`) → `kappa_branch_mem_conjClassSet_zTilde` (general, via conjugation). All axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_sigmaElement_mem_Kstar #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.kappa_branch_mem_conjClassSet_zTilde /-! **`G^#` cover dichotomy** (`S14_TypePCounting`, `exists_mem_conjClassSet_Mtilde_or_zTilde_of_ne_one`): every `g ≠ 1` lies in `𝒞_G(M̃)` for some maximal `M`, or in `𝒞_G(Ẑ)` for some exceptional `(K,K*)` — the `⊆` of BG Cor 14.9's `G^#` partition (both cases), from `sigma_decomposition_dichotomy` (signalizer→M̃, κ→Ẑ via `kappa_branch_dichotomy_mem_conjClassSet_zTilde`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.kappa_branch_dichotomy_mem_conjClassSet_zTilde #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_mem_conjClassSet_Mtilde_or_zTilde_of_ne_one /-! **BG Lemma 14.6, exclusivity** (`S14_TypePCounting`, `not_type1_of_type2`): a type-2 element (`g = y·y'`, `y'` a nonidentity `κ(M)`-element of `C_M(y)`, `y ∈ M_σ^#`) is not of type-1 (`g = x·x'`, `ℓ_σ(x)=1`, `x' ∈ R(x)`). The `T ∩ H̃ = ∅` input to Theorem 14.7. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.not_type1_of_type2 /-! **TI-subset saturation count** (`S14_TypePCounting`, `ncard_conjClassSet_of_isTISubset`): for a TI-subset `A` stabilised by its normalizer-bound `L`, `|𝒞_G(A)| = |A|·[G:L]`. The disjoint-conjugate count feeding Theorem 14.7 step 5 (`|𝒞_G(T)| = |T|·[G:Z]`). -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ncard_conjClassSet_of_isTISubset /-! **BG Proposition 14.2** (`S14_TypePCounting`): the full structure theorem for a type-`P` maximal subgroup `M` — `K` (Hall `κ(M)`) is prime on `M_σ`, `K* = C_{M_σ}(K) ≠ 1`, the normalizer identity `N_M(X) = K ⊔ K*`, the `(d)` clause `K* ∩ M^g = 1`, and (for type `P₂`) `σ(M) = β(M)`, `|K|` prime, and `M_σ` a TI-subset of `G`. Both cases `κ ∩ τ₃ ≠ ∅` (`K = E`, Corollary 13.11) and `κ ⊆ τ₁` (`K = E₁`, the Frobenius core via Theorem 3.10(a) + Lemma 12.17 + Lemma 12.19) are discharged. Sorry-free and axiom-clean — the §14 funnel keystone. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_structure -- BG Proposition 14.2(g), the `M_σ`-nilpotency clause (issue 0178, 2026-08-08): for a type-`P₂` -- maximal subgroup `M` (`U ≠ 1`), `M_σ` is nilpotent. `typeP_structure` carries the other three -- conjuncts of (g) (`σ = β`, `|K|` prime, TI) but not this one. BG's route: `U ≠ 1` ⟹ `E` is -- Frobenius with kernel `U` ⟹ Lemma 14.1 gives `C_{M_σ}(U) = 1` and `M_σ` nilpotent. The -- `κ ∩ τ₃ ≠ ∅` case cannot occur (it forces type `P₁`). Consumed by BG Theorem C(9). -- ⚠ This does **not** discharge the `hMσnil` hypotheses of `AppE_*`: those sit in the -- Corollary 15.9 situation where `M` is type `F` and Frobenius (so `M_σ` is a Frobenius kernel), -- a different route from the type-`P₂` clause proved here. #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP2_Msigma_isNilpotent /-! **BG Proposition 14.2(b2)** (`S14_TypePCounting`, `typeP_elemAbelian_le_neighbor_Msigma`): the clause of Prop 14.2(b) that `typeP_structure` omits — for `X ∈ ℰ_p¹(K)` (`K` Hall `κ(M)`) with `C_{M_σ}(X) ≠ 1`, every `M* ∈ ℳ(N_G(X))` has `X ⊆ M*_σ`. Proof: `p ∈ κ(M) ⊆ τ₁ ∪ τ₃`, Lemma 13.13 gives `p ∈ σ(M*)`, and `X ≤ M*` is a `σ(M*)`-subgroup. Pre-positioned for Theorem 14.7's neighbour analysis (`Z ⊆ M_i`, `X_i ⊆ M_{iσ}`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_elemAbelian_le_neighbor_Msigma /-! **BG Theorem 14.7 neighbour-embedding** (`S14_TypePCounting`, `typeP_neighbor_embed`), step 1 of the §16-independent pre-position: every `M_i ∈ ℳ(N_G(X))` (`X ∈ ℰ¹(K)`) is not conjugate to `M`, contains `Z = K ⊔ K*`, and has `X ⊆ M_{iσ}`. Uses Prop 14.2(b1)/(b2) + `σ`-conjugation-invariance (`sigma_conj`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_neighbor_embed /-! **BG Theorem 14.7 neighbour `κ`-transfer** (`S14_TypePCounting`, `typeP_neighbor_kappa`), step 1b of the §16-independent pre-position: every prime `q ∈ π(K*)` lies in `κ(M_i)` for a neighbour `M_i ∈ ℳ(N_G(X))`. Proof: Cauchy gives `⟨x'⟩ ∈ ℰ_q¹(K*)`; Cor 14.3 (`sigma_diagnostic`) on `(M_i, x, x')` must land in branch 1 (`π(⟨x'⟩) ⊆ κ(M_i)`) since branch 2 would give `ℳ(C_G(x')) = {M_i}`, contradicting Prop 14.2(c)'s `{M}` (`M ≠ M_i`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_neighbor_kappa /-! **BG Theorem 14.7 partner existence** (`S14_TypePCounting`, `exists_typeP_partner`), the §16-independent core assembling steps 1a/1b (`typeP_neighbor_embed` + `typeP_neighbor_kappa`): for a type-`P` maximal `M` with Hall `κ(M)`-subgroup `K`, `K* = C_{M_σ}(K) ≠ 1`, and a line `X ∈ ℰ_p¹(K)`, the maximal subgroup `M* ∈ ℳ(N_G(X))` (which exists, `N_G(X)` proper) is type-`P`, nonconjugate to `M`, contains `K ⊔ K*` with `X ≤ M*_σ`, and has `π(K*) ⊆ κ(M*)`. This is the nonconjugate partner `M*` of Theorem 14.7 with its basic neighbour data; cyclicity of `Z`, the TI property, type-`P₂`, and the §16-gated covering/uniqueness layer on top. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_typeP_partner /-! **BG Theorem 14.7 swap argument** (`S14_TypePCounting`): the neighbour-`Z` machinery. `typeP_normalizer_inf_eq` packages Proposition 14.2(b1) for a neighbour `Mi` (producing its Hall `(κ∪σ)'`-subgroup internally), giving `N_G(X) ⊓ Mi = Ki ⊔ C_{Mi_σ}(Ki)` for a Hall `κ(Mi)`-subgroup `Ki ∋ X`. `typeP_swap_Z_le` is direction `⊆` of the swap (mmd L3999): `K ⊔ K* ≤ Ki ⊔ Ki*`, the `K*`-part using Hall conjugacy (`K* ⊆` some Hall `κ(Mi)`-subgroup `Ki'`, with `N_G(X) ⊓ Mi` independent of the Hall choice). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_normalizer_inf_eq #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_swap_Z_le /-! **BG 14.7, `M ⊇ N_G(X)` from a unique centralizer-maximal** (`S14_TypePCounting`, `normalizer_le_of_maximalSubgroupsContaining_centralizer`, mmd L3992): if `ℳ(C_G(X)) = {M}` then `N_G(X) ≤ M`. General fact (conjugation fixes `C_G(X)`, uniqueness forces `Mᵍ = M`, `M` self-normalizing); supplies the swap argument's reverse direction. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.normalizer_le_of_maximalSubgroupsContaining_centralizer /-! **BG 14.7, swap argument — the `Z`-coincidence** (`S14_TypePCounting`, mmd L3999-4001). `le_centralizerFactor_of_le_sup_of_le_Msigma` is the `σ`-projection: a `σ(Mi)`-group inside an internal direct product `Ki × Ki*` (`Ki` a `σ'`-group) lands in the `σ`-factor `Ki*`. `typeP_swap_Z_eq` is the full coincidence `Z = K ⊔ K* = Ki ⊔ Ki*`: direction `⊆` from `typeP_swap_Z_le`, direction `⊇` from the role-exchanged swap using `M ⊇ N_G(X*)`, `π(Ki*) ⊆ κ(M)`, and `Xi ⊆ Ki*`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.le_centralizerFactor_of_le_sup_of_le_Msigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_swap_Z_eq /-! **BG 14.7, `K_i*` pairwise disjoint** (`S14_TypePCounting`, mmd L4005). `typeP_centralizer_singleton` packages Proposition 14.2(c) for a neighbour (`ℳ(C_G(Y)) = {M}` for `Y ∈ ℰ¹(K*)`). `typeP_neighbor_Kstar_inf_eq_bot`: distinct type-`P` maximals `Mi ≠ Mj` have `C_{Mi_σ}(Ki) ⊓ C_{Mj_σ}(Kj) = ⊥` (a common line would force `{Mi} = {Mj}`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_centralizer_singleton #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_neighbor_Kstar_inf_eq_bot /-! **BG 14.7 density backbone — inclusion–exclusion** (`S14_TypePCounting`, `ncard_biUnion_subgroup_add_card`, mmd L4031): for a nonempty finite family of subgroups pairwise meeting at `⊥`, `|⋃ Sᵢ| + |s| = (∑ |Sᵢ|) + 1` (each contributes `|Sᵢ| − 1` non-identity elements, disjoint, plus the shared identity). Gives `|T| = |Z| + n − ∑ kᵢ*` for the TI-set `T = Z − ⋃ Kᵢ*`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ncard_biUnion_subgroup_add_card #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ncard_sdiff_biUnion_subgroup /-! **BG 14.7 internal direct product cardinality** (`S14_TypePCounting`, `card_iSup_of_pairwise_commute_coprime`, mmd L4009): a finite family of pairwise-commuting subgroups with pairwise-coprime orders is an internal direct product, so `|⨆ Hᵢ| = ∏ |Hᵢ|` (independence from `Subgroup.independent_of_coprime_order`, then `noncommPiCoprod` injective with range `⨆ Hᵢ`). Gives `z = ∏ kᵢ*` for the `Kᵢ*`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.card_iSup_of_pairwise_commute_coprime /-! **BG 14.7, canonical `Kᵢ*`** (`S14_TypePCounting`, `typeP_neighbor_Kstar_eq_Z_inf_Msigma`, mmd L4009): given the swap `Z = Kₙ ⊔ Kₙ*`, the factor `Kₙ* = C_{Nσ}(Kₙ)` equals `Z ⊓ M_σ(N)` — the `σ(N)`-part of `Z`, independent of the chosen Hall `κ(N)`-subgroup `Kₙ`. Lets the family `{Kᵢ*}` be defined choice-free as `N ↦ Z ⊓ M_σ(N)`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_neighbor_Kstar_eq_Z_inf_Msigma /-! **BG 14.7, per-neighbour swap package** (`S14_TypePCounting`, `exists_neighbor_kappaHall_swap`, mmd L3997-4009): for a type-`P` maximal `M` and a maximal `N ⊇ N_G(X)` (`X ∈ ℰ¹(K)`), there is a Hall `κ(N)`-subgroup `K_N` realising the swap `Z = K_N ⊔ K_N*` with canonical `K_N* = Z ⊓ M_σ(N)`. The per-neighbour foundation the `M_i` family iterates over. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_neighbor_kappaHall_swap /-! **BG 14.7, coverage of `κ(M)`-primes** (`S14_TypePCounting`, `exists_typeP_neighbor_mem_sigma`, mmd L4007): every prime `p ∣ |K|` lies in `σ(N)` for a nonconjugate type-`P` neighbour `N ⊇ Z` (via a line `X ∈ ℰ_p¹(K)` and its partner). With `M` (covering `σ(M) ⊇ π(K*)`) this gives the coverage `⋃ σ(Mᵢ) ⊇ π(Z)` forcing `⨆ Kᵢ* = Z`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_typeP_neighbor_mem_sigma /-! **BG 14.7, internal-direct-product factor normality** (`S14_TypePCounting`, `sup_le_normalizer_inf_of_commute`): in `A ⊔ B` with `B ≤ C_G(A)`, both factors are normal, `A ⊔ B ≤ N_G(A) ⊓ N_G(B)`. Applied to the swap `Z = K_N ⊔ K_N*` it makes `K_N`, `K_N*` normal in `Z` (input to pairwise commutativity, pairwise nonconjugacy, and the `n = 1` collapse). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sup_le_normalizer_inf_of_commute /-! **BG 14.7, internal-product cardinality + commute helpers** (`S14_TypePCounting`): `card_sup_of_commute_of_disjoint` — for commuting `H`, `K` with `H ⊓ K = ⊥`, `|H ⊔ K| = |H|·|K|` (via `noncommCoprod`). `commute_of_le_normalizer_of_disjoint` — subgroups `A, B ≤ Z` normal in `Z` with `A ⊓ B = ⊥` commute elementwise (`[x,y] ∈ A ⊓ B = ⊥`). Used for `|Kᵢ* ⊔ Kⱼ*| = kᵢ*·kⱼ*` in the pairwise-nonconjugacy argument. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.card_sup_of_commute_of_disjoint #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.commute_of_le_normalizer_of_disjoint /-! **BG 14.7, pairwise nonconjugacy of the family** (`S14_TypePCounting`, `typeP_family_nonconjugate`, mmd L4015): maximal subgroups whose swap factors `Zₖ = M_σ(Mₖ) ⊓ C(Kₖ)` meet trivially (with `Z₂ ≠ ⊥`) are nonconjugate — else `σ(M₁) = σ(M₂)` makes `Z₁`, `Z₂` disjoint normal `τ`-Halls of `Z` with `z₁ z₂ ∣ z = k₁ z₁`, so `z₂ ∣ k₁` (a `τ`-number divides a `τ'`-number), forcing `Z₂ = ⊥`. Feeds Lemma 14.5(b). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_family_nonconjugate /-! **BG 14.7, per-neighbour swap package with normality** (`S14_TypePCounting`, `exists_neighbor_kappaHall_swap_normal`): the per-neighbour swap restated with canonical factor `K_N* = Z ⊓ M_σ(N)` folded in and `K_N* ◁ Z` added — the exact per-member data the `M_i` family consumes. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_neighbor_kappaHall_swap_normal /-! **BG 14.7, full per-neighbour data** (`S14_TypePCounting`, `exists_neighbor_full`): the complete per-member package the `M_i` family consumes — Hall `κ(N)`-subgroup `K_N`, swap `Z = K_N ⊔ K_N*` (canonical `K_N* = Z ⊓ M_σ(N)`), `K_N* ◁ Z`, `N` type-`P`, and `K_N* ≠ ⊥` (`X ≤ K_N*`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_neighbor_full /-! **BG 14.7, two family members nonconjugate** (`S14_TypePCounting`, `neighbor_pair_nonconjugate`, mmd L4015): distinct type-`P` maximals `N₁ ≠ N₂` with their swaps are nonconjugate — Proposition 14.2(c) (swap factors meet trivially) + `typeP_family_nonconjugate`. The per-pair input to the family's pairwise nonconjugacy. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.neighbor_pair_nonconjugate /-! **BG 14.7, the base member `M` (`i = 0`)** (`S14_TypePCounting`, `typeP_self_member`, mmd L4003): `M`'s own data in the family's canonical shape — `K_M* = Z ⊓ M_σ(M) = Kstar`, trivial swap `Z = K ⊔ K_M*`, `K_M* ◁ Z`, `K_M* ≠ ⊥`. Aligns `M` with the neighbours. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_self_member /-! **BG 14.7 `n=1` collapse helper** (`S14_TypePCounting`, `le_of_coprime_index`, mmd L4043): if `N ◁ G` and `|H|` is coprime to `[G : N]`, then `H ≤ N` (the image of `H` in `G/N` has order `1`). Applied with `N = Kᵢ` (normal `σ(Mᵢ)'`-Hall of `Z`) and `H = Kⱼ*` gives `Kⱼ* ≤ Kᵢ`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.le_of_coprime_index /-! **BG 14.7, unified per-neighbour data** (`S14_TypePCounting`, `exists_neighbor_data`): the single per-member source for the family — raw swap factor `K_N* = M_σ(N) ⊓ C(K_N)`, canonical identity `K_N* = Z ⊓ M_σ(N)`, `N` type-`P`, `K_N* ≠ ⊥`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_neighbor_data /-! **BG 14.7, uniform per-member family data** (`S14_TypePCounting`, `typeP_family_member_data`, mmd L4003): every member `N` of the type-`P` family (`IsZFamilyMember`: `N = M` or a maximal over `N_G(X)` for a line `X ∈ ℰ_p¹(K)`) is a type-`P` maximal containing `Z`, with Hall `κ(N)`-subgroup `K_N` realising the swap (raw + canonical `K_N* = Z ⊓ M_σ(N)`, `K_N* ≠ ⊥`). Case-split `typeP_self_member`/`exists_neighbor_data`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_family_member_data /-! **BG 14.7, family pairwise nonconjugate** (`S14_TypePCounting`, `typeP_family_pairwise_nonconjugate`, mmd L4015): any two distinct `IsZFamilyMember`s are nonconjugate (per-member data + `neighbor_pair_nonconjugate`). Feeds Lemma 14.5(b). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_family_pairwise_nonconjugate /-! **BG 14.7, family `Kᵢ*` pairwise disjoint** (`S14_TypePCounting`, `typeP_family_Kstar_disjoint`, mmd L4005): for distinct members `N₁ ≠ N₂`, `(Z ⊓ M_σ(N₁)) ⊓ (Z ⊓ M_σ(N₂)) = ⊥` (nonconjugate ⟹ `σ` disjoint by Thm 13.9 ⟹ `M_σ(N₁) ⊓ M_σ(N₂) = ⊥`). Pairwise-`⊥` input to the `|T|` count. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_family_Kstar_disjoint /-! **BG 14.7, type-`P` family as a `Finset`** (`S14_TypePCounting`, `ZFamilyFinset` + `mem_`/ `_nonempty`): `{N | IsZFamilyMember M K N}` as a `Finset` (`M` always a member). The index for the `|T|` count and density sum. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.mem_ZFamilyFinset #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ZFamilyFinset_nonempty /-! **BG Proposition 14.2 support** (`S14_Prop142Support`, Lane F, issue 7000): generic `κ`-free conjugation-transport utilities that Proposition 14.2 cites. `actsPrimeOn_conj` transports a prime action `ActsPrimeOn N X` along conjugacy by a normalizer element of `N` (case `κ ⊆ τ₁`: WLOG `K = E₁`); `smul_centralizer_singleton` / `smul_centralizer_subgroup` are the element- and subgroup-centralizer conjugation identities it rests on. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.actsPrimeOn_conj #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.smul_centralizer_singleton #assert_only_allowed_axioms OddOrder.BG.Ch3.S13.smul_centralizer_subgroup /-! **BG Corollary 14.3** (`S14_TypePCounting`, `sigma_diagnostic`): for `x ∈ M_σ^#` and a nonidentity `σ(M)'`-element `x'` of `C_M(x)`, either `π(⟨x'⟩) ⊆ κ(M)` with `C_G(x) ⊆ M`, or `π(⟨x'⟩) ⊆ τ₂(M)` with `ℓ_σ(x') = 1` and `𝓜(C_G(x')) = {M}`. Branch 1 uses Prop 14.2(b1)/(c) + Lemma 14.1(b); branch 2's `ℓ_σ = 1` uses Lemma 12.11(a) + the general Corollary 12.16(a) (`sigma_subgroup_conj_into_Msigma_general`, discharging its `σ`-disjointness gate with Theorem 13.9) + `M_σ` conjugation-equivariance. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigma_diagnostic /-! **BG Theorem 14.4** (`S14_TypePCounting`, `sigmaLength_one_centralizer_structure`): if `ℓ_σ(x) = 1` and `|𝓜_σ(x)| > 1`, then `C_G(x)` lies in a unique `N ∈ 𝓜` with `R(x) = N_σ ∩ C_G(x) ⊋ 1` a Hall `σ(N)`-subgroup of `C_G(x)`, `π(⟨x⟩) ⊆ τ₂(N)`, `N ∈ 𝓜_F ∪ 𝓜_{P₂}`, and for every `M ∈ 𝓜_σ(x)`: `τ₂(N) ∩ π(N) ⊆ σ(M)`, `σ(N) ∩ π(M) ⊆ β(N)`, and `M ∩ N` complements `N_σ` in `N`. (The `§16`-circular sharply-transitive headline and part (b) are deferred to §16's `RData`.) Proof: Theorems 13.9 + 10.1(b) give `N ≠ M`; Proposition 12.15(e) gives `(d)`, `(e)`, `q ∈ τ₂(N)`; Corollary 14.3 (`sigma_diagnostic`) gives `π(⟨x⟩) ⊆ τ₂(N)` and the uniqueness `𝓜(C_G(x)) = {N}`; Corollary 12.6 + `exists_subgroupESetup_with_le` give `(c)`. The `(c)` clause uses `∩ piSet N` (BG's `τ₂(N) ⊆ π(N)`) since the repo `tau2` predicate is not prime-restricted. Fully unconditional, axiom-clean. Helper `Msigma_inf_normalizer_eq_bot_of_tau2` (`N_G(A) ⊓ M_σ = 1` for `A ∈ ℰ_p²(E)`, `p ∈ τ₂(M)`, the crux of `(c)`) is also axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.sigmaLength_one_centralizer_structure #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.Msigma_inf_normalizer_eq_bot_of_tau2 /-! **BG Theorem 14.4, `C_G(x)`-witness sharp transitivity + Cor 15.3(b) `hconj` input** (`S14_TypePCounting`): `exists_conj_centralizer_of_mem_maximalSigma` strengthens the `isConjugateSubgroup` transitivity to keep the conjugator in `C_G(x)`; `mf_hall_conj_realized_in_M` is the §14.4 half of BG Corollary 15.3(b) — for `H ≤ M_σ`, `G`-conjugate elements of `H` are `M`-conjugate (via `N_G(M) = M`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_conj_centralizer_of_mem_maximalSigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.mf_hall_conj_realized_in_M /-! **BG Theorem 14.7, type-`P₁` Hall complement card** (`S14_TypePCounting`, `typeP1_card_eq`): for a type-`P₁` maximal `N` with Hall `κ(N)`-subgroup `K_N`, `|N| = |N_σ|·|K_N|` (the σ-part uniqueness; `K_N` Hall `σ(N)′` complements the normal Hall `σ(N)`-subgroup `N_σ`). Feeds the density inequality of Theorem 14.7(e). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP1_card_eq /-! **BG Theorem 14.7, the density inequality** (`S14_TypePCounting`, `exists_typeP2_member`): some member of the type-`P` family `{M} ∪ {neighbours}` has type `P₂`. Proof = the BG density count: if all members were type `P₁`, the pairwise-disjoint conjugacy pieces `𝒞_G(T)`, `{𝒞_G(M̃ᵢ)}` would cover more than `G^#`. Entirely a `ℕ` computation (`omega`) over the landed counts. Supporting lemmas (`typeP1_member_Msigma_index_eq`, `typeP_member_two_mul_index_le`, `ZFamilyFinset_one_lt_card`, `one_not_mem_Mtilde`, `density_pieces_ncard_le`) registered alongside. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.one_not_mem_Mtilde #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP1_member_Msigma_index_eq #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_member_two_mul_index_le #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ZFamilyFinset_one_lt_card #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.density_pieces_ncard_le #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_typeP2_member /-! **BG Theorem 14.7, the `n = 1` collapse** (`S14_TypePCounting`, `family_card_eq_two`): the type-`P` family has exactly two members. The type-`P₂` member's Hall `κ`-subgroup has prime order (Prop 14.2(g)); every other member's canonical factor `Kⱼ*` is a nontrivial `σ(Mᵢ)′`-subgroup of `Z` (`isPiSubgroup_le_left_of_commute`), forced equal to it, but pairwise disjoint, so at most one neighbour. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isPiSubgroup_le_left_of_commute #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.family_card_eq_two /-! **BG Theorem 14.7, the unique partner `M*`** (`S14_TypePCounting`, `exists_partner`): from `|family| = 2` and `M ∈ family`, the unique other member `M*` is the nonconjugate type-`P` partner; every family member is `M` or `M*`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_partner /-! **BG Theorem 14.7(f), the type-`P₂` dichotomy** (`S14_TypePCounting`, `isTypeP2_or_isTypeP2_partner`): one of `M`, `M*` is type `P₂` (the density inequality's type-`P₂` member is `M` or `M*`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isTypeP2_or_isTypeP2_partner /-! **BG Theorem 14.7, the partner canonical factor** (`S14_TypePCounting`, `partner_canonical_eq`): `Z ⊓ M*_σ = K`. The partner's canonical family factor equals `M`'s Hall `κ`-subgroup — a `σ(M)′`- subgroup of `Z = K × K*` lying in the `σ(M)′`-Hall `K` (`isPiSubgroup_le_left_of_commute`), and `K ≤ M*_σ` since every prime of `K` lies in `σ(M*)` (`kappaHall_primes_subset_sigma_partner`, the line→partner argument). This is the structural keystone turning `T = Z − ⋃ Kᵢ*` into `Ẑ = Z − (K ∪ K*)`. Both registered. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.kappaHall_primes_subset_sigma_partner #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.partner_canonical_eq /-! **BG Theorem 14.7(e), `Ẑ` is a TI-subset** (`S14_TypePCounting`, `typeP_zTilde_isTI`): with the family `{M, M*}` the union `⋃ (Z ⊓ N_σ)` collapses to `K ∪ K*` (via `partner_canonical_eq` and `typeP_self_member`), so `Ẑ = Z − (K ∪ K*)` equals the family TI-set and inherits TI-ness from `typeP_family_T_isTI`. A conjunct of the `∃! Mstar`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_zTilde_isTI /-! **BG Theorem 14.7, `|Ẑ| = (k − 1)(k* − 1)`** (`S14_TypePCounting`, `zTilde_ncard_eq`): the TI-set `Ẑ = Z − (K ∪ K*)` has `(|K| − 1)(|K*| − 1)` elements (`|Z| = |K|·|K*|`, `K ∩ K* = 1`). The count underlying the density bound `|𝒞_G(Ẑ)| > ½|G|`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.zTilde_ncard_eq /-! **BG Theorem 14.7(e), family `Z ⊓ N_σ` collapse** (`S14_TypePCounting`, `family_inf_msigma_union_eq`): for the type-`P` family `{M, M*}`, `⋃_{N} (Z ⊓ N_σ) = K ∪ K*` (`Z ⊓ M_σ = K*` via `typeP_self_member`, `Z ⊓ M*_σ = K` via `partner_canonical_eq`). Factored out of `typeP_zTilde_isTI`; identifies `Ẑ = Z − (K ∪ K*)` with the family TI-set in the density count. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.family_inf_msigma_union_eq /-! **BG Theorem 14.7, the density bound `|𝒞_G(Ẑ)| > ½|G|`** (`S14_TypePCounting`, `typeP_zTilde_conjClass_gt_half`): the conjugacy saturation of `Ẑ` covers more than half of `G`. `|𝒞_G(Ẑ)| = |Ẑ|·[G:Z] = (k−1)(k*−1)·[G:Z]` (TI count + `zTilde_ncard_eq`) and `|G| = k·k*·[G:Z]` (`card_kappaHall_sup_Kstar`), reducing to `k·k* < 2(k−1)(k*−1)` for coprime odd `k = |K|`, `k* = |K*| > 1`. The counting heart of the `∃! M*` covering. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_zTilde_conjClass_gt_half /-! **Two `> ½|G|` subsets intersect** (`S14_TypePCounting`, `ncard_inter_nonempty_of_two_mul_gt`): in a finite group, `2·|A| > |G|` and `2·|B| > |G|` force `A ∩ B ≠ ∅` (inclusion–exclusion). The combinatorial core of the covering step of Theorem 14.7 (`𝒞_G(Ẑ) ∩ 𝒞_G(S) ≠ ∅`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.ncard_inter_nonempty_of_two_mul_gt /-! **BG Theorem 14.7, the density bound for every type-`P` maximal** (`S14_TypePCounting`, `exists_zTilde_conjClass_gt_half_of_isTypeP`): every `H ∈ 𝓜_𝓟` has a Hall `κ(H)`-subgroup `L`, `L* = C_{Hσ}(L)`, and `|𝒞_G(Ẑ_H)| > ½|G|` — the same density count run for an arbitrary type-`P` member (BG's "we also have `|𝒞_G(S)| > ½|G|`"), with `H`'s partner data produced internally via `exists_partner` fed `dummySigmaDecomposition`. The covering step applies this to both `M` and the arbitrary `H`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_zTilde_conjClass_gt_half_of_isTypeP /-! **BG Theorem 14.7 covering, the `σ`-part matching** (`S14_TypePCounting`, `exists_inf_ne_bot_of_mem_zTilde_inter`, with helper `isPiElement_mem_right_of_commute`): if `t` lies in both `Ẑ_M = (K ⊔ K*) − (K ∪ K*)` and `L ⊔ L*` but not in `L` (the two coprime direct-product `σ`-structures), then `L*` meets one of `K`, `K*` nontrivially — BG's "`T ∩ S ≠ ∅ ⟹ L* ∩ Kᵢ* ≠ 1`". The `σ(H)`-part of `t` lands in `L*`, and its `σ(M)`- and `σ(M)′`-parts (powers of it, so in `L*`) lie in `K*` and `K`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isPiElement_mem_right_of_commute #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_inf_ne_bot_of_mem_zTilde_inter /-! **BG Proposition 14.2(f)** (`S14_TypePCounting`, `typeP_sigma_subgroup_le_Msigma`): every `σ(M)`-subgroup `Y < ⊤` of `G` meeting `K*` nontrivially lies in `M_σ`. Not packaged in `typeP_structure`; derived from Corollary 12.16 (`sigma_subgroup_conj_into_Msigma_general`, the `σ`-disjointness gate discharged by Theorem 13.9) and Proposition 14.2(d) (the conjugator fixes a nontrivial element of `K*`, so lies in `M`). A step of the Theorem 14.7 partner-symmetry argument. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_sigma_subgroup_le_Msigma /-! **BG Theorem 14.7(2)(3), partner symmetry** (`S14_TypePCounting`, `typeP_partner_structure`): the partner `M*` carries the dual Hall structure — `K*` is a Hall `κ(M*)`-subgroup of `M*` and `K = C_{M*_σ}(K*)`. Short via the family machinery: `typeP_family_member_data` produced `M*`'s Hall `κ(M*)`-subgroup `KN` with `Z = KN ⊔ C_{M*_σ}(KN)` and `partner_canonical_eq` gives `Z ⊓ M*_σ = K`; two applications of `isPiSubgroup_le_left_of_commute` (π = σ(M*)) give `KN = K*`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_partner_structure /-! **BG Theorem 14.7(1)** (`S14_TypePCounting`, `typeP_partner_centralizer_singleton`): `ℳ(C_G(Y)) = {M*}` for every `Y ∈ ℰ¹(K)`. Proposition 14.2(c) applied to the partner `M*` (whose `K*`-role is `K`, by `typeP_partner_structure`); the `K`-side companion of `14.2(c)`, used by the covering step to conjugate a type-`P` subgroup to `M*`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_partner_centralizer_singleton /-! **BG Theorem 14.7(7), the covering** (`S14_TypePCounting`, `typeP_covering`): every type-`P` maximal subgroup `H` is conjugate to `M` or to its partner `M*`. The capstone of the `∃! M*` bundle: both `Ẑ_M` and `Ẑ_H` cover `> ½|G|` (`exists_zTilde_conjClass_gt_half_of_isTypeP`), so the saturations meet (`ncard_inter_nonempty_of_two_mul_gt`); the `σ`-part matching (`exists_inf_ne_bot_of_mem_zTilde_inter`) lands a line `Y` meeting `K` or `K*`, and the double `14.2(c)` / `14.7(1)` singleton (`typeP_partner_centralizer_singleton`) forces `c·H = M` or `M*`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_covering /-! **Type-`P` data constructor** (`S14_TypePCounting`, `exists_typeP_data`): every maximal `M` carries a Hall `κ(M)`-subgroup `K ≤ M`, the swap `K* = M_σ ∩ C_G(K)`, and a Hall `(κ∪σ)ᶜ`-subgroup `U` (Hall's theorem in the solvable `↥M`). The missing constructor feeding `exists_partner` / `typeP_covering` from a bare `M ∈ maximalTypePFamily` (used by Cor 14.8 part 2). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.exists_typeP_data /-! **BG Corollary 14.8** (`S14_TypePCounting`, `typeP1_conjugate_and_typeP_twoClasses`): the type-`P₁` maximal subgroups are all conjugate, and the type-`P` family is exactly two conjugacy classes (`M` and its Theorem 14.7 partner `M*`). Part 1 uses `isTypeP2_or_isTypeP2_partner` (the partner is type-`P₂`, so `N ~ M*` would make `N` non-`P₁`); part 2 is `exists_partner` + `typeP_covering`. Both via the `exists_typeP_data` constructor. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP1_conjugate_and_typeP_twoClasses /-! **Hall `κ`-subgroup inside a nilpotent group is cyclic** (`S14_TypePCounting`, `isCyclic_kappaHall_of_le_nilpotent`): a Hall `κ(N)`-subgroup `K' ≤ N` contained in a nilpotent `W` is cyclic. `κ(N) ⊆ τ₁(N) ∪ τ₃(N)` bounds `pRank K' p ≤ 1` at every prime, and `K' ≤ W` nilpotent makes `K'` nilpotent; `isCyclic_of_odd_of_isNilpotent_of_forall_pRank_le_one` concludes. The cyclicity engine for both Hall factors of `Z` in Theorem 14.7(d). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isCyclic_kappaHall_of_le_nilpotent /-! **BG Theorem 14.7(d), `M_σ` nilpotent for type-`P₂`** (`S14_TypePCounting`, `msigma_isNilpotent_of_isTypeP2`): for a type-`P₂` maximal `M`, `M_σ` is nilpotent. `IsTypeP2` makes `κ(M) ⊊ π(M) ∖ σ(M)` proper, yielding `p ∈ π(M) ∖ (σ(M) ∪ κ(M))`; a maximal-rank elementary abelian `p`-subgroup `A ≤ M` feeds Lemma 14.1, whose third conclusion is `IsNilpotent M_σ`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.msigma_isNilpotent_of_isTypeP2 /-! **BG Theorem 14.7(d), cyclicity of `Z = K ⊔ K*`** (`S14_TypePCounting`, `typeP_Z_isCyclic`): `Z = K ⊔ K*` is cyclic. One of `M`, `M*` is type-`P₂` (`isTypeP2_or_isTypeP2_partner`); the `P₂` member's Hall `κ`-factor is prime-order (cyclic), the other factor is a Hall `κ`-subgroup of the partner inside the nilpotent `σ`-core of the `P₂` member (`msigma_isNilpotent_of_isTypeP2` + `isCyclic_kappaHall_of_le_nilpotent`); two coprime cyclic factors give `Z` cyclic. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_Z_isCyclic /-! **BG Theorem 14.7, unique nonconjugate partner `M*`** (`S14_TypePCounting`, `typeP_partner_existsUnique`): the `∃!` heart of Theorem 14.7 — there is a unique maximal `M*` that is type-P, nonconjugate to `M`, has `K*` Hall `κ(M*)` with `K = C_{M*_σ}(K*)`, makes `Z = K ⊔ K*` cyclic with `Ẑ` a TI-set, has `M` or `M*` type-P₂, and covers every type-P maximal up to conjugacy. Existence from `exists_partner` + `typeP_partner_structure` + `typeP_Z_isCyclic` + `typeP_zTilde_isTI` + `isTypeP2_or_isTypeP2_partner` + `typeP_covering`; uniqueness from the partner symmetry `K = C_{M*_σ}(K*)` pinning `ℳ(C_G(X)) = {M*}` for `X ∈ ℰ¹(K)`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_partner_existsUnique /-! **Derived subgroup via a `σ`-complement** (`S14_TypePCounting`, `derivedInG_eq_Msigma_sup_derivedInG_complement`): for a §12 `E`-setup of `M`, `M' = M_σ ⊔ E'`. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.derivedInG_eq_Msigma_sup_derivedInG_complement /-! **BG Theorem 14.7(h) core** (`S14_TypePCounting`, `typeP_derivedInG_isComplement_kappaHall`): for a type-P maximal `M` with Hall `κ(M)`-subgroup `K` cyclic, `M' = [M,M]` complements `K` in `M` (Proposition 14.2(a): `M' = U M_σ`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_derivedInG_complement_of_eq_complement #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_derivedInG_isComplement_kappaHall /-! **BG Theorem 14.7, type-P duality** (`S14_TypePCounting`, `typeP_duality`): the full Theorem 14.7 for a type-P maximal `M` — `M' = [M,M]` complements `K` with coprime orders (part (h)), and the unique nonconjugate type-P partner `M*` with cyclic `Z`, TI `Ẑ`, type-P₂ side, and covering. Fully unconditional, axiom-clean — completes the §14 long pole feeding §15/§16. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_duality /-! **BG Theorem 14.7(4) / Theorem C(6) / Theorem I(2)**, the type-P dual pair intersection (`S16_PairIntersection`, `typeP_pair_inf_eq`): for a type-P maximal `M` with Hall `κ`-factor `K`, canonical `K* = M_σ ⊓ C_G(K)`, and the `typeP_duality` partner `M*` (with `K = M*_σ ⊓ C_G(K*)`), the pair intersects in the cyclic `Z`: `M ⊓ M* = K ⊔ K*`. This is the reverse inclusion `M ⊓ M* ≤ K ⊔ K*` — the genuine missing §16 structure restating `S ∩ T = W` — proved via the σ-decomposition (Step 1: `M_σ ⊓ M* = K*`) and Proposition 14.2(b1) (Step 2). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP_pair_inf_eq /-! **BG Theorem E, the `π(G)` partition core** (`S16_MainResults`): the two unconditional conjuncts of BG Theorem E (issue 8019) — the partition of `π(G)` by the `σ(Mᵢ)` of a system of conjugacy-class representatives of the maximal subgroups. * `sigma_reps_pairwise_disjoint` (clause (a2)): distinct representatives have disjoint `σ`-sets, from BG Theorem 13.9 (`sigma_disjoint_of_nonconjugate`, landed sorry-free) via the `∃!` non-conjugacy of distinct representatives. * `sigma_reps_prime_cover` (clause (a1)): a prime `p` divides `|G|` iff it is a `σ`-prime of some representative — forward from `exists_mem_sigma_of_prime_dvd_card` (every prime of `G` is a `σ`-prime of some maximal) + `sigma_conj`, reverse from `σ ⊆ π` + Lagrange. Together they give `π(G) = ⨆ᵢ σ(Mᵢ)`. `exists_maximal_conjugacy_reps` constructs the system `reps` itself (a conjugacy transversal of the maximal subgroups, via the `IsConjugateSubgroup` setoid and `Quotient.out`), so `exists_reps_sigma_partition` is the **unconditional** `π(G)` partition (no `reps` hypothesis). The remaining BG Theorem E content (the thickened-support cardinality, tilde-disjointness, and `G#` covering) stays gated on §13–14 (`theoremE_…`, issue 8019). All fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.sigma_reps_pairwise_disjoint #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.sigma_reps_prime_cover #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_maximal_conjugacy_reps #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_reps_sigma_partition #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.primeFactors_Msigma_eq_sigma /-! **BG Theorem D(1), `M_σ`-fusion control** (`S16_MainResults`, `msigma_fusion_control`): two elements of `M_σ` conjugate in `G` are conjugate in `M`. The one unconditional Theorem-D conjunct, from Corollary 15.3(b) (`mf_hall_centralizer_control`, axiom-clean) at the trivial Hall subgroup `H := M_σ` plus `N_G(M_σ) = M` (`normalizer_Msigma_eq_self`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.msigma_fusion_control /-! **BG Theorem D(2), `M_σ ∩ M^g` cyclic** (`S15_MF/PisetBetaDisjoint`, `Msigma_inf_conj_isCyclic`; moved up from `S16_MainResults` on 2026-07-18 so that Theorem 15.7(b) can consume it): for `g ∉ M`, `M_σ ∩ M^g` is cyclic (BG Lemma 12.17 third clause). Abelian (TI part `Msigma_inf_conj_inf_derived_eq_bot`), odd, and rank ≤ 1 (a noncyclic elementary abelian subgroup would give `C_G(A) ≤ N_G(A) ≤ M` via `norm_noncyclic_sigma`, contradicting the σ-uniqueness core), hence cyclic (`isCyclic_of_isMulCommutative_of_rank_le_one`). Supplies Theorem D's `hD2`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S15.Msigma_inf_conj_isCyclic /-! **BG Theorem B(1)** (`S16_MainResults`, `theoremB_U_sylow_abelian_rank_le_two`): every Sylow subgroup of `U` is abelian of rank ≤ 2. Standalone, faithful (explicit `U ≤ M`; restricted to prime `p`) form of the first conjunct of `theoremB_U_and_A_tame`, derived cite-only over §12 (`exists_subgroupESetup_with_le` + `SubgroupESetup.rank_le_two` + `nilpotent_sigmaComplement_abelian`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremB_U_sylow_abelian_rank_le_two /-! **BG Theorem A — ungated conjuncts** (`S16_MainResults`, `theoremA_ungated_conjuncts`): `M_σ` is a `σ`-Hall, `Kstar ≠ ⊥`, and `M_F ≤ M_σ ≤ M'`. Standalone bundle of the four conjuncts of the faithful Theorem A whose upstreams are all proved transitively; the genuinely new content is `Kstar ≠ ⊥`, unblocked once Proposition 14.2 (`S14.typeP_structure`) landed sorry-free. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremA_ungated_conjuncts /-! **BG Theorem A(5), element form** (`S14_TypePCounting`, `typeP_centralizer_kappaElement_eq`): for a type-`P` `M` with cyclic Hall `κ`-subgroup `K`, the `M`-centralizer of every `k ∈ K#` is `K ⊔ K*` (BG's `C_M(k) = K × K*`). Sharpens Proposition 14.2(b1) (rank-one normalizer) to the element-wise centralizer via the order-`p` subgroup of `⟨k⟩` and `C_G(k) ≤ C_G(X) ≤ N_G(X)`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_centralizer_kappaElement_eq /-! **BG Theorem A(4)** (`S14_TypePCounting`, `typeP_hall_inf_centralizer_kappaElement_eq_bot`): `C_U(k) = 1` for `k ∈ K#`. Faithfulness resolution (issue 8017): the conclusion holds for **every** `(κ ∪ σ)'`-Hall `U ≤ M`, not just the `K`-invariant complement, because it reduces (via `typeP_centralizer_kappaElement_eq`) to the `U`-independent `C_M(k) = K ⊔ K*` plus coprimality of `|U|` with `|K ⊔ K*| = |K|·|K*|`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP_hall_inf_centralizer_kappaElement_eq_bot /-! **BG `defUK`** (`S14_TypePCounting`, `typeP2_kappaHall_commutator_eq_self`): for a type-`P₂` maximal `M` with cyclic Hall `κ`-subgroup `K` and abelian `(κ∪σ)'`-Hall complement `U` normalized by `K`, `⁅U, K⁆ = U`. The coprime decomposition `U = (C(K)⊓U) ⊔ ⁅U,K⁆` (`fitting_coprime_abelian_decomp`) collapses because `C_U(K) = ⊥` (Theorem A(4) at any `k ∈ K#`). A signalizer-functor prerequisite for BG Cor 14.12 (`typeP2_neighbor_is_typeF`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP2_kappaHall_commutator_eq_self /-! **BG `kappaJ` / type conjugation-invariance** (`S14_TypePCounting`): `κ(M^g) = κ(M)` (`kappa_conj_smul`) and the type predicates `IsTypeP`/`IsTypeP1`/`IsTypeP2` transfer under conjugation (`isTypeP{,1,2}_conj_smul`). Each `κ`-condition (`τ₁∪τ₃ = {p ∉ σ ∧ r_p=1}`, the rank-one centralizer witness) is conjugation-stable via `σ`/`M_σ`/`pRank`/`ℰ_p¹`/centralizer equivariance. Prerequisite for BG Cor 14.12 (`sK_FD`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.kappa_conj_smul #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isTypeP1_conj_smul #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.isTypeP2_conj_smul /-! **BG Corollary 14.12** (`S14_TypePCounting`, `typeP2_neighbor_is_typeF`): for `M ∈ 𝓜_{P₂}`, the κ-Hall `K`, abelian `(κ∪σ)'`-Hall `U` (Prop 14.2(a)) normalized by `K`, `r ∈ π(U)`, `R` the Sylow `r`-subgroup of `U`, and `H ∈ 𝓜(N_G(R))`: then `H ∈ 𝓜_F`, `U ≤ M_σ(H)`, `M ⊓ H = U ⊔ K`, and `N_H(U) ⊄ M` (the FT-path clause for BG Theorem C(1)). Translates Coq `P2type_signalizer` (BGsection14.v L2243): `H` type-`F` (no covering partner is conjugate to `H`); `U ⊆ M_σ(H)` via the `HsDq = M_σ(H)·O_q(F(E))` machinery; conjunct 3 via the σ-decomposition `M = M_σ ⋊ (U⊔K)`, `C_{M_σ}(U) = 1` (Lemma 14.1), and BG 6.5(b) `N_M(U) = U⊔K`; conjunct 4 via the normalizer condition in the nilpotent `Fu = O_{(κ∪σ)'}(F(H))`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.typeP2_neighbor_is_typeF /-! **Matched `κ`-Hall / `(κ∪σ)'`-Hall pair for type-`P₂`** (`S16_MainResults`, `typeP2_exists_matched_kappa_hall_pair`): the BG `kappa_complement` Frobenius factorisation `E = K ⋉ U` of Proposition 14.2(a), giving a `κ(M)`-Hall `K₀` and a nontrivial abelian `(κ(M)∪σ(M))'`-Hall `U₀` (both `≤ M`) with `K₀ ≤ N_G(U₀)` — since `U₀ = E₂E₃ ◁ E ∋ K₀`. Type-`P₂` excludes the degenerate `κ`-group cases of the `E`-setup; `U₀` is identified as `[E:E₁]` and shown `(κ∪σ)'`-Hall via the index of the `κ`-Hall `E₁`, abelian by Lemma 15.1(b). The matched pair that Corollary 14.12 consumes via its `K ≤ N(U)` hypothesis. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP2_exists_matched_kappa_hall_pair /-! **`TypePData M` for a type-`P₂` maximal subgroup** (`S16_MainResults`, `typePData_of_isTypeP2`, issue 7007): every type-`P₂` maximal subgroup carries a Peterfalvi type-`P` datum, `sorry`-free. The carrier-constructibility milestone for Proposition 16.1's forward bridges: the matched pair `typeP2_exists_matched_kappa_hall_pair` (abelian `U`, `K ≤ N(U)`) and the `M_F`-internal Fitting decomposition `typeP2_mf_internal_fitting_decomposition` (the three deep `M'`-complement/Fitting fields) together fully discharge the gated-endpoint constructor `typePData_of_isTypeP_of_inputs`. This closes the deep `M_F`-internal residuals gating all three (`hP2II`/`hP1neIIIIV`/`hP1eqV`) forward bridges; `hP2II` now reduces to the type-`II` last mile (`isTypeII_of_typePData`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_of_isTypeP2 /-! **Type-`P₁` structure: `M' = M_σ`, `F(M) = M_F`, and the type-V `TypePData`** (`S16_MainResults`, issue 8015, the FT-critical `hP1eqV` forward bridge). For a type-`P₁` maximal subgroup the Hall `(κ ∪ σ)'`-complement is trivial, so Lemma 15.1(b) collapses to `M' = M_σ` (`isTypeP1_derivedInG_eq_Msigma`); when additionally `M_F = M_σ`, Corollary 15.5(d) (`F(M) ≤ M'`) plus `M_F ≤ F(M)` give the type-V Fitting collapse `F(M) = M_F` (`fittingInAmbient_eq_maxNilpotentNormalHall_of_isTypeP1_mf_eq_msigma`). Together these fully construct the type-V Peterfalvi datum `typePData_of_isTypeP1_mf_eq_msigma` (`U = ⊥`), the carrier-constructibility milestone reducing `hP1eqV` to the lone Peterfalvi (8.8) trichotomy residual. All three axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP1_derivedInG_eq_Msigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.fittingInAmbient_eq_maxNilpotentNormalHall_of_isTypeP1_mf_eq_msigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_of_isTypeP1_mf_eq_msigma /-! **Type-V trichotomy common part** (`S16_MainResults`, issue 8015, the `hP1eqV` (8.8) residual): the two proved building blocks of the Peterfalvi (8.8) `(e2)/(e3)` disjunction. `M_F` is non-abelian for any type-V maximal (`not_isMulCommutative_mf_of_isTypeP1_mf_eq_msigma`: the datum's `W₂ ⊆ M'' = (M_F)'` is nontrivial, the Coq abelian-`H` exclusion), and `¬FittingIsTI` yields a witness prime `p ∈ π(M_F)` with cyclic `O_{p'}(M_F)` (`exists_prime_cyclic_opiCore_compl_of_isTypeV`: the shared non-TI witness `exists_inf_conj_fitting_orderP_witness` fed to the `cycHp'` block). These reduce the `hP1eqV` trichotomy to the lone `|W₁| ∣ p ∓ 1` `W₁`-action divisibility. Both axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isMulCommutative_mf_of_isTypeP1_mf_eq_msigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_prime_cyclic_opiCore_compl_of_isTypeV /-! **Type-V trichotomy disjunct (e2) — the `|W₁| ∣ p − 1` Frobenius divisibility** (`S16_MainResults`, issue 8015): the two engines that close disjunct 2 of the Peterfalvi (8.8) `(e2)/(e3)` dichotomy. `C_{M_σ}(k) = K*` for `k ∈ K#` (`centralizer_msigma_kappaElement_eq_kstar`: `K` acts primely on `M_σ`, Proposition 14.2, so the fixed points are constant `= K*`), and a `κ`-Hall `K` normalizing an `M`-normal order-`p` subgroup `Z ≤ M_σ` with `Z ⊓ K* = ⊥` acts on `Z` as a Frobenius group, giving `|K| ∣ p − 1` (`kappaHall_card_dvd_sub_one_of_inf_kstar_eq_bot`, via `card_dvd_sub_one_of_isFrobeniusAction`). These reduce the `hP1eqV` trichotomy residual to the lone deep `(e3)` Singer/`SL₂(p)` case `Z ≤ K*` (`|O_p(M_F)| = p³`, `|W₁| ∣ p + 1`). Both axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.centralizer_msigma_kappaElement_eq_kstar #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.kappaHall_card_dvd_sub_one_of_inf_kstar_eq_bot /-! **Type-V disjunct-3 faithfulness brick** (`S16_MainResults`, `kappaHall_inf_centralizer_opiCore_eq_bot`, issue 8015): in the Singer `(e3)` case the cyclic `κ`-Hall `K` acts *faithfully* on `P = O_p(M_F)`, i.e. `K ⊓ C_G(P) = ⊥` (Coq `tiKcP`/`defKs`). A nonidentity `x ∈ K ⊓ C_G(P)` would centralize `P ⊇ X₁`, forcing `X₁ ≤ M_σ ⊓ C_G(x) = K* = Z` (`centralizer_msigma_kappaElement_eq_kstar` + `kstar_card_prime_of_inputs`, `|K*| = p = |Z|`), contradicting `X₁ ⊄ Z`. This is the faithfulness input to `pRank_opiCore_le_two_of_kappaHall` (`rPle2`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.kappaHall_inf_centralizer_opiCore_eq_bot /-! **Type-V disjunct-3 Sylow input** (`S16_MainResults`, `exists_sylow_eq_opiCore_of_mf_eq_msigma`, issue 8015): for `M_F = M_σ` and `p ∈ σ(M)`, `P = O_p(M_F)` is a Sylow `p`-subgroup of `G` (Coq `sylP_G`). `P` is a `{p}`-Hall (Sylow) of the nilpotent `M_F = M_σ`, so `|P| = p^{v_p(|M_σ|)}`; as `M_σ` is the `σ`-Hall with `p ∈ σ`, this is `p^{v_p(|G|)}`, and `Sylow.ofCard` exhibits the Sylow. This is the Sylow input to `mFT_rank2_Sylow_cprod` (`card_opiCore_eq_prime_cube_singer`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S15.exists_sylow_eq_opiCore_of_mf_eq_msigma /-! **Type-V disjunct-3 centre order** (`S16_MainResults`, `card_center_opiCore_eq_prime_of_omega1Center_le_kstar`, issue 8015): `|Z(O_p(M_F))| = p` (Coq `defZP`/`oZ0`). The cyclic `κ`-Hall `K` centralizes `Ω₁(Z(P)) = K*`, so by **BG Theorem 1.11** (`actsTrivially_on_of_fixes_omega1`, coprime `Ω₁`-rigidity, Gorenstein 5.3.10 — already ported) `K` centralizes all of `Z(P)`; then `Z(P) ≤ M_σ ⊓ C(K) = K* = Ω₁(Z(P)) ≤ Z(P)`, so `Z(P) = Ω₁(Z(P))` has order `p`. This is the `|Z(P)| = p` input collapsing the `mFT_rank2_Sylow_cprod` central product to `|P| = p³` (`card_opiCore_eq_prime_cube_singer`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.card_center_opiCore_eq_prime_of_omega1Center_le_kstar /-! **Type-V disjunct-3 `|O_p(M_F)| = p³`** (`S16_MainResults`, `card_opiCore_eq_prime_cube_singer`, issue 8015): the order of `P = O_p(M_F)` in the Singer case (BG Theorem 15.7(e), Coq `dimP`/`oP`). All four inputs are discharged — `r(P) ≤ 2` (`pRank_opiCore_le_two_of_kappaHall`), `P` non-abelian, `P` Sylow of `G` (`exists_sylow_eq_opiCore_of_mf_eq_msigma`), `|Z(P)| = p` (`card_center_opiCore_eq_prime_of_omega1Center_le_kstar`) — and the **Blackburn rank-2 Sylow central-product structure** (`S10.sylow_structure`, Cor 10.7(b)) gives `P = P₁ ∘ P₂` with `P₁` extraspecial of order `p³` and `P₂` cyclic; `|Z(P)| = p` collapses the cyclic factor `P₂ = Z(P₁)` into `P₁`, leaving `|P| = |P₁| = p³`. This closes the first of the two type-V `(e3)` residuals. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.card_opiCore_eq_prime_cube_singer /-! **Type-V disjunct-3 route-B final arithmetic (L5)** (`S16_MainResults`, `card_dvd_of_injective_to_cyclic_forall_pow`, issue 8015): if a finite group `K` embeds into a finite cyclic group `C` with every image an `n`-th root of unity, then `|K| ∣ n`. In the Singer application `C = 𝔽_{p²}ˣ` and `μ k ^ (p+1) = 1` is the determinant-one (`= N(μ k) = μ(k)^{p+1}`) symplectic condition, giving `|W₁| = |K| ∣ p+1`. The reusable last step of the `(e3)` Singer divisibility; axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.card_dvd_of_injective_to_cyclic_forall_pow /-! **Type-`P₁` `M_F`-internal complement** (`S16_MainResults`, `exists_typeP1_mf_complement`, the construction core of the FT-critical `hP1neIIIIV` bridge): `M_F` has a `K`-invariant complement `U` inside `M' = M_σ` (`M_F ⊔ U = M'`, `K ≤ N_G(U)`, `M_F ⊓ U = ⊥`). The `K`-invariant Schur–Zassenhaus complement (`exists_aInvariant_complement_within_normal`) applied to the `σ`-Hall `M' = M_σ`, with `M_F ◁ M` Hall in `M'` (index-divisibility transfer) and `K` (`σ'`-group) acting coprimely. Discharges the `hUle`/`hKnorm`/`hDcompl`/`U ≠ ⊥` `TypePData` fields; the residual fields (`U` nilpotent `= M'/M_F` nilpotent, the `F(M)` decomposition) and `N_G(U) ⊆ M` are the deep Coq `Fcore_structure` content. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_typeP1_mf_complement /-! **Type-`P₁` (`M_F ≠ M_σ`) `M_F`-complement is nilpotent** (`S16_MainResults`, `isNilpotent_complement_of_isTypeP1_mf_ne_msigma`): any complement `U` of `M_F` inside `M' = M_σ` (`M_F ⊔ U = M'`, `M_F ⊓ U = ⊥`) is nilpotent. Theorem 15.2 (`mf_ne_msigma_typeP1_structure`) supplies `Q ⋊ D = M_σ` with `Q ≤ M_F` and `D` nilpotent, so `M_σ/M_F` is the nilpotent image of `D` (`Group.nilpotent_of_surjective`); the restricted quotient map `Ū → M_σ/M_F` is bijective, so `U` is nilpotent. Discharges the `U` nilpotent residual `TypePData` field deferred by `exists_typeP1_mf_complement` (the deferred half of Corollary 15.5(c)) for the `hP1neIIIIV` bridge. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isNilpotent_complement_of_isTypeP1_mf_ne_msigma /-! **Type-`F` `M_F`-complement is nilpotent** (`S16_MainResults`, `isNilpotent_complement_of_isTypeF`): for a type-`F` maximal `M`, any complement `U` of `M_F` inside `M' = M_σ` (`M_F ⊔ U = M'`, `M_F ⊓ U = ⊥`) is nilpotent. For type `F`, `M_F = M_σ` (Theorem 15.2(a) contrapositive), so `M'' ≤ M_σ = M_F` (`derivedDerived_le_Msigma`, Lemma 15.1(a)) makes `M'/M_F` abelian, a fortiori nilpotent, and `U ≅ M'/M_F` via the complement iso. Together with the type-`P` (`TypePData.U_nilpotent`) and type-`P₁` (`isNilpotent_complement_of_isTypeP1_mf_ne_msigma`) cases this completes the `M'/M_F` nilpotent (T2) content of Corollary 15.5(c) across all classified maximals. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isNilpotent_complement_of_isTypeF /-! **`M_F`-complement is a genuine `M'`-complement** (`S16_MainResults`, `isComplement'_mf_complement_of_sup_inf`): `M_F ⊔ U = M'` and `M_F ⊓ U = ⊥` give `IsComplement' (M_F.subgroupOf M') (U.subgroupOf M')`. `M_F.subgroupOf M'` is normal in `↥M'` (`M' ≤ M ≤ N_G(M_F)`); the second isomorphism theorem (`relIndex_sup_right`) plus disjointness give `[M':M_F] = |U.subgroupOf M'|`, hence `|M_F.subgroupOf M'|·|U.subgroupOf M'| = |M'|`, and `isComplement'_of_card_mul_and_disjoint` concludes. Discharges the deepest non-Fitting `U`-field (`hDcompl`) of the type-`P₁` (`M_F ≠ M_σ`) `TypePData` gated by `exists_typeP1_mf_complement`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isComplement'_mf_complement_of_sup_inf /-! **Coprime inner-induced conjugation is trivial** (`S16_MainResults`, `mem_centralizer_of_inner_conj_of_coprime`): if `x` normalizes `N`, `orderOf x` is coprime to `|N|`, and conjugation by `x` agrees on `N` with conjugation by some `n ∈ N` (inner), then `x ∈ C_G(N)`. The induced automorphism `φ(x) = φ(n) ∈ Inn(N)` (via `normalizerMonoidHom`) has order dividing both `orderOf x` and `|N|`; coprimality forces `φ(x) = 1`, i.e. `x ∈ ker = C_G(N)`. Reusable coprime-action core of the type-`P₁` `M_F`-internal Fitting decomposition. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.mem_centralizer_of_inner_conj_of_coprime /-! **Type-`P₁` (`M_F ≠ M_σ`) `M_F`-internal Fitting decomposition** (`S16_MainResults`, `fittingInAmbient_eq_mf_sup_inf_of_isTypeP1_mf_ne_msigma`, BG Corollary 15.5): for a type-`P₁` maximal `M` with `M_F`-complement `U` in `M' = M_σ`, `F(M) = M_F ⊔ (U ⊓ C_M(M_F))`. `F(M)` is nilpotent with `M_F` normal Hall (so `F(M) = M_F ⊔ (U ⊓ F(M))` by the Dedekind law); the crux `U ⊓ F(M) ⊆ C(M_F)` is the coprime-action core (`mem_centralizer_of_inner_conj_of_coprime`) applied to the `F(M) = C_M(M_F)·M_F` factorisation. Discharges the `hFiteq`/`hSDfit` residuals. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.fittingInAmbient_eq_mf_sup_inf_of_isTypeP1_mf_ne_msigma /-! **`TypePData M` for a type-`P₁` maximal subgroup with `M_F ≠ M_σ`** (`S16_MainResults`, `typePData_of_isTypeP1_mf_ne_msigma`): the type III/IV carrier-constructibility milestone — every such maximal subgroup carries a Peterfalvi type-`P` datum, `sorry`-free. The `K`-invariant `M_F`-complement `U` (`exists_typeP1_mf_complement`) is fed to `typePData_of_isTypeP_of_inputs` with the four deep `U`/Fitting fields discharged by the new BG Corollary 15.5 lemmas (`isNilpotent_complement_…`, `isComplement'_mf_complement_…`, `fittingInAmbient_eq_mf_sup_inf_…`). Mirrors `typePData_of_isTypeP2`; together they construct the type-`P` datum for every non-type-V type-`P` maximal, leaving the `hP1neIIIIV` bridge gated only on the type III/IV last mile `N_G(U) ⊆ M`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_of_isTypeP1_mf_ne_msigma /-! **Type-`P₁` (`M_F ≠ M_σ`) `TypePNontrivialCore`** (`S16_MainResults`, `typePData_nontrivialCore_of_isTypeP1_mf_ne_msigma`): the common type II--IV hypotheses (`U ≠ ⊥`, `|W₁|` prime, `M_F#` `TI`) of a type-`P₁` (`M_F ≠ M_σ`) `TypePData` with `U ≠ ⊥`. `|W₁| = [M:M'] = |K| = p` prime from Theorem A(8) (`theoremA8_structure`); `M_F#`-`TI` from the `FittingIsTI M` clause (`fitting_isTI_of_mf_ne_msigma`). Discharges the `hcommon` input of the type III/IV last mile `isTypeIII_or_IV_of_typePData`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_nontrivialCore_of_isTypeP1_mf_ne_msigma /-! **`hP1neIIIIV` bridge COMPLETE** (`S16_MainResults`, issue 8015): *every* type-`P₁` maximal subgroup with `M_F ≠ M_σ` is of type III or IV — `isTypeIII_or_IV_of_isTypeP1_mf_ne_msigma` is now fully `sorry`-free and axiom-clean. The former Peterfalvi (8.7) / Coq `Fcore_structure` residual `N_G(U) ⊆ M` is discharged via the Coq `typePfacts` argument: a prime `p ∣ |U|`, the unique Sylow `p`-subgroup `P̄` of the nilpotent complement `U` (so `N_G(U) ≤ N_G(P̄)`, `normalizer_le_normalizer_map_sylow_of_isNilpotent`), and the fact that `P̄` is a `σ`-Sylow of `M` (`typeP1_complement_mem_sigma_and_factorization`), whence `N_G(P̄) ≤ M` (`normalizer_sylow_map_le_of_mem_sigma`). Two reusable axiom-clean helpers plus the bridge. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.normalizer_le_normalizer_map_sylow_of_isNilpotent #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP1_complement_mem_sigma_and_factorization #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeIII_or_IV_of_isTypeP1_mf_ne_msigma /-! **`hP2II` reduced to the `M'`-type-`F` residual** (`S16_MainResults`, `isTypeII_of_isTypeP2_of_derived_typeF`, issue 7007): a type-`P₂` maximal subgroup whose derived subgroup `M'` is type `F` (with `F(M') = M_F`) is type II. Discharges every `isTypeII_of_typePData` input that is BG-local for type `P₂` — the whole `TypePNontrivialCore` (`U ≠ ⊥`; `|W₁|` prime and the `M_σ`-`TI` both from Proposition 14.2(g), since `M_F = M_σ`), `U` abelian, and `N_G(U) ⊄ M` (Corollary 14.12) — leaving exactly the deep `M'`-type-`F` structure as hypotheses. Corrects the stale belief that `|W₁|` prime is lane-b (10.11)-gated: that is the *partner* primality, not the type-`P₂` `κ`-Hall's. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeII_of_isTypeP2_of_derived_typeF /-! **`hderF` complete + `hP2II` COMPLETE** (`S16_MainResults`, issue 7007 cont.¹¹): `M'` is type `F` for every type-`P₂` maximal `M` (`isTypeF_derivedInG_of_isTypeP2`), assembling the *same* type-`F` data as the type-`F` maximal (`M' = M_σ ⋊ U` mirrors `M = M_σ ⋊ U`): the `M_σ ⋊ U` complement (`typeP2_mf_internal_fitting_decomposition`), abelian inertia `U₁` and Frobenius factor `M_σ ⋊ U₀` (Lemma 15.1(d)(e)), and `(M')_F = M_σ = M_F` (`maxNilpotentNormalHall_derivedInG_eq_Msigma_of_isTypeP2`). Hence *every* type-`P₂` maximal is type II (`isTypeII_of_isTypeP2`), with **no** `τ₂(M) = ∅` / Theorem 15.8 gate. Both axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeF_derivedInG_of_isTypeP2 #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeII_of_isTypeP2 /-! **BG Theorem C** (`S16_MainResults`, `theoremC_paired_structure`): for `K ≠ 1`, a type-`P` maximal `M` has the full paired structure — `U` abelian; `N_G(U) ⊄ M` (conjunct 2 = BG C(1) / Corollary 14.12, via the matched `(K₀,U₀)` pair `typeP2_exists_matched_kappa_hall_pair` and the `M`-conjugacy transport of `(κ∪σ)'`-Hall subgroups); `K*` cyclic, `1 ⊂ K* ≤ M_F ≤ M''`, `M_F` not cyclic; `M' = U M_σ`; the unique non-conjugate type-`P` partner `M*` (Theorem 14.7); the `A_0(M)−A(M)` TI-set (conjunct 10); and the prime-order / `F(M)`-TI clauses (conjuncts 11, 12). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremC_paired_structure /-! **BG Theorem C(5)** (`S16_MainResults.TheoremC5`, `theoremC_5_overgroup_unique`): the one conjunct of Theorem C not carried by `theoremC_paired_structure` — for prime-order `X ≤ K*`, `𝓜(C_G(X)) = {M}`, and (for the Thm 14.7 partner `M*`, exposed via the verbatim C(4) `∃!` predicate) for prime-order `Y ≤ K`, `𝓜(C_G(Y)) = {M*}`. Both halves reduce to Proposition 14.2(c) (`typeP_structure` conjunct 6) applied to `M` resp. the dual partner from `typeP_duality`. Completes Theorem C's conjuncts C(1)–C(11). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremC_5_overgroup_unique /-! **BG Theorem A(3) decomposition** (`S16_MainResults`, `typeP_maximal_eq_kappaHall_sup_U_sup_Msigma`): `M = K U M_σ` for a maximal `M` with Hall `κ`-subgroup `K ≤ M` and Hall `(κ∪σ)'`-subgroup `U ≤ M`. Type-F via the `K = ⊥` `SubgroupESetup`; type-P via the `M' = U M_σ`/`M'`-complements-`K` structure (`typeP_auxiliary_structure`), pushed from `M` to `G` by `subgroupOf_sup`/`subgroupOf_eq_top`. Standalone form of conjunct 3 of `theoremA_maximal_structure_faithful`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP_maximal_eq_kappaHall_sup_U_sup_Msigma /-! **BG Theorem A(7), first clause** (`S16_MainResults`, `derivedDerived_le_fittingInAmbient`): `M'' ⊆ F(M)` for any maximal `M`. No longer `M_F ≠ M_σ`-gated (issue 8012): the `M_F = M_σ` branch runs `M'' ≤ M_σ ≤ M_F ≤ F(M)` (`derivedDerived_le_Msigma` + `M_σ` nilpotent), the type-`P₁` branch cites Theorem 15.2 (`mf_ne_msigma_typeP1_structure`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.derivedDerived_le_fittingInAmbient /-! **BG Theorem A — faithful monolith** (`S16_MainResults`, `theoremA_maximal_structure_faithful`): all 11 conjuncts of BG Theorem A, `sorry`-free. This canonical form includes the explicit `K ≤ M`, `U ≤ M` of the BG setup `M = K U M_σ`, making A(3)/A(4)/A(8) provable). Assembled from `theoremA_ungated_conjuncts`, `typeP_maximal_eq_kappaHall_sup_U_sup_Msigma`, `derivedDerived_le_fittingInAmbient`, and `theoremA8_structure`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremA_maximal_structure_faithful /-! **Proposition 16.1 input `hF_not_derived`** (`S16_MainResults`, `typeF_not_exists_hall_derived_eq`): a type-`F` maximal subgroup has no `(κ∪σ)'`-Hall `U` with `M' = U M_σ` (else `M = U M_σ = M'` contradicts `M' < M`). Powers Proposition 16.1 clause (e). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeF_not_exists_hall_derived_eq /-! **Proposition 16.1 input `hP_derived` / BG Theorem C(3)** (`S16_MainResults`, `typeP_exists_hall_derived_eq`): a type-`P` maximal subgroup has a `(κ∪σ)'`-Hall `U` with `M' = U M_σ` (constructed `K`/`U`, `K ≠ ⊥` from type-`P`, then `typeP_hall_derived_eq_and_abelian`). Powers Proposition 16.1 clause (e). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP_exists_hall_derived_eq /-! **`W₂ = C_{M'}(W₁#)` centralizer law** (`S16_MainResults`, `typeP_derivedInG_inf_centralizer_kappaElement_eq`): for type-`P` `M` with cyclic `κ`-Hall `K`, `M' ⊓ C(k) = K* = C_{M_σ}(K)` for `k ∈ K#`. Theorem A(5) (`C_M(k) = K ⊔ K*`) intersected with `M'` via the Dedekind law (`eq_sup_inf_of_le_normalizer`, `K* ≤ M'`, `K ⊓ M' = ⊥`). Discharges the `hCentW1` field of the `TypePData` constructor. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP_derivedInG_inf_centralizer_kappaElement_eq /-! **Prop 16.1(b)--(d) forward bridge — `TypePData` constructor** (`S16_MainResults`, `typePData_of_isTypeP_of_inputs`): builds `TypePData M` from BG-local `IsTypeP M` + a nontrivial `κ`-Hall `K`, discharging 12 of 18 `typePData_of_inputs` fields from `typeP_duality`/`typeP_kstar_in_mf` /the centralizer law, gating only on the deep `M_F`-internal Fitting core (BG Cor 15.5). The foundation feeding all three forward bridges hP2II/hP1neIIIIV/hP1eqV. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_of_isTypeP_of_inputs /-! **Prop 16.1 reverse — `r_q(M) = 1` machinery + type V ⟹ type P** (`S16_MainResults`, issue 8015 W1 frontier, relane #9): the `π(W₁) ⊆ κ(M)` rank-one ingredient for the reverse type bridges. `typePData_isCyclic_isElementaryAbelian_of_not_dvd_card_derived`: for a type-`P` datum and `q ∤ |M'|`, every elementary abelian `q`-subgroup of `↥M` is cyclic (it embeds in the cyclic abelianization `↥M ⧸ M' ≃* ↥W₁` via the `M_complement` field). `typePData_pRank_eq_one_of_not_dvd_card_derived`: hence `r_q(M) = 1` for `q ∣ |W₁|, q ∤ |M'|`. `isTypeP_of_isTypeV`: a structurally type-`V` maximal subgroup is BG type `P` — `U = ⊥` makes `M' = M_F` Hall, so `q ∤ |M'|` for all `q ∣ |W₁|`, giving the rank-one input for `typePData_kappa_nonempty_of_rank1`. All axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_isCyclic_isElementaryAbelian_of_not_dvd_card_derived #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_pRank_eq_one_of_not_dvd_card_derived #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_isTypeV /-! **Prop 16.1 reverse — types II–IV ⟹ type P + `IsTypeNonI ⟹ IsTypeP`** (`S16_MainResults`, issue 8015 W1 frontier, relane #9): the `q`-element fixed-point machinery closing the rank-one gate for prime `|W₁|`. `prime_dvd_card_inf_centralizer_of_mem_normalizer`: a `q`-element `x` normalizing `N` with `q ∣ |N|` has `q ∣ |C_N(x)|` (conjugation action `conjActionOfMemNormalizer`, `IsPGroup.card_modEq_card_fixedPoints`). `typePData_not_dvd_card_W2_of_card_W1_prime`: prime `q = |W₁|` ⟹ `q ∤ |W₂|` (cyclic `W = W₁W₂`). `isTypeP_of_typePData_of_card_W1_prime`: chains these to `q ∤ |M'|` (`centralizer_W1`: `C_{M'}(x) = W₂`) ⟹ `r_q(M) = 1` ⟹ `κ(M) ≠ ∅`. `isTypeP_of_isType{II,III,IV}` + `isTypeP_of_isTypeNonI`: the assembled reverse `IsTypeP` halves of Proposition 16.1 clauses (b)–(d) `.mp` — exactly what `not_isTypeI_of_isTypeNonI` consumes (P₁/P₂ refinement discarded). All axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.prime_dvd_card_inf_centralizer_of_mem_normalizer #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_not_dvd_card_W2_of_card_W1_prime #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_typePData_of_card_W1_prime #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_isTypeII #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_isTypeIII #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_isTypeIV #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeP_of_isTypeNonI /-! **BG Proposition 16.1 — type-`P` data construction layer** (`S16_MainResults`): the shared `TypePData` core and the type II/III/IV/V "last-mile" bridges feeding `proposition_type_classification`'s forward bridges. * `normalizer_eq_sup_of_isTISubset_of_isCyclic` — the genuine `normalizer_V` reduction (Peterfalvi (8.4)): a nonempty subset of the exceptional set `V = W ∖ (W₁ ∪ W₂)` of a cyclic `W = W₁ ⊔ W₂` that is `TI` relative to `W` is normalized exactly by `W`. Pure group theory, unconditional. * `typePData_of_inputs` — assembles `TypePData M` from the BG-local structural facts (taken as named hypotheses, the gated-endpoint pattern), deriving `W₁/W₂`-cyclicity and `normalizer_V`. * `isTypeIII_or_IV_of_typePData` / `isTypeII_of_typePData` / `isTypeV_of_typePData` — the type-specific bridges wrapping a `TypePData` into the shared Peterfalvi type predicates. Each is axiom-clean: the deep §14/§15 content is held abstract in the hypotheses, so the engines themselves cite no `sorry`. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.normalizer_eq_sup_of_isTISubset_of_isCyclic #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_of_inputs #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeIII_or_IV_of_typePData #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeII_of_typePData #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeV_of_typePData /-! **Proposition 16.1(a) `hFI` infrastructure** (`S16_MainResults`): the self-normalizing helpers and the TI case of the type-I `alternative` trichotomy (Peterfalvi (8.3)(a)). * `normalizer_eq_self_of_subgroupOf_normal_of_ne_bot` — a nontrivial `M`-normal subgroup of a maximal subgroup of a minimal simple group is self-normalizing (`N_G(H) = M`), generalizing `normalizer_Msigma_eq_self`. * `normalizer_fittingInAmbient_eq_self` — the `H = F(M)` instance, `N_G(F(M)) = M`. * `maxNilpotentNormalHall_sharp_isTISubset_of_fittingIsTI` — `FittingIsTI M ⟹ M_F#` is a `TI`-subset (the first disjunct of `TypeIData.alternative` in the `F(M)`-TI case of `hFI`). All three are unconditional / axiom-clean. **The full `hFI` bridge `isTypeI_of_isTypeF` (type `F ⟹` type I) is now axiom-clean**, together with its `TypeFData` construction `typeFData_of_kappa_eq_bot` and the wrapper `isTypeF_groupTheory_of_isTypeF`: both former gates are closed — the non-TI residual (BG Theorem 15.7(e)) by the per-prime witness `exists_orderQ_le_mf_normal_in_M_of_not_fittingIsTI` (registered above), and the Theorem A dependency by routing `typeFData_of_kappa_eq_bot`'s A(3)/A(8) through `typeP_maximal_eq_kappaHall_sup_U_sup_Msigma` + `isTypeP1_kappaSigma_compl_hall_subgroupOf_eq_bot` (Thm 15.2) instead of the retired bare overstatement. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.normalizer_eq_self_of_subgroupOf_normal_of_ne_bot #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.normalizer_fittingInAmbient_eq_self #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.maxNilpotentNormalHall_sharp_isTISubset_of_fittingIsTI #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeFData_of_kappa_eq_bot #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeF_groupTheory_of_isTypeF #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeI_of_isTypeF -- Prop 16.1(a) reverse bridge `hIF` (type I ⟹ `κ(M) = ∅`), now fully `sorry`-free: the type-`F` -- Frobenius FPF against a `U₀`-element (`M_F ⊓ C_G(X) = ⊥` for `X ≤ U₀`), the `κ`-element placement -- (`p ∈ κ ⟹ ∃ X ≤ U₀` `p`-group `⊆ κ`-Hall `K`, via Hall-D), and the assembled bridge. #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeFData_fitting_inf_centralizer_eq_bot #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeFData_exists_kappaElement_le_kappaHall #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isTypeF_of_isTypeI -- The FT-critical consumer `not_isTypeI_of_isTypeNonI` (a non-Type-I maximal is not Type I), now -- axiom-clean: it routes through `isTypeF_of_isTypeI` + `isTypeP_of_isTypeNonI` only, no longer -- citing the `sorry`-bearing §16 type-classification reverse bridges. #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isTypeI_of_isTypeNonI -- **Prop 16.1 reverse bridges `hIIP2` / `hIIIIVP1` / `hVP1` — the type II/III/IV/V mutual-exclusivity -- layer, now fully `sorry`-free + axiom-clean.** `not_isTypeV_of_typePData_U_ne_bot` (the `U = ⊥` -- core, generalising `not_isTypeII_of_isTypeV`) gives `III/IV ≠ V`; `typePData_exists_conj_U` -- (Schur–Zassenhaus inside `↥M'`: both `U` complement the nilpotent normal Hall `M_F`, coprime) and -- `typePData_normalizer_U_le_iff` (normalizer transfer) give `II ≠ III/IV` -- (`not_isTypeII_of_isTypeIII_or_IV`). These refine `IsTypeNonI ⟹ IsTypeP` (`= P₁ ∨ P₂`) to the -- exact type, closing the last two bridges — so **`proposition_type_classification` (BG Prop 16.1) is -- fully `sorry`-free and axiom-clean.** #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isTypeV_of_typePData_U_ne_bot #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isTypeII_of_isTypeV #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isTypeV_of_isTypeIII_or_IV #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_exists_conj_U #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typePData_normalizer_U_le_iff #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.not_isTypeII_of_isTypeIII_or_IV #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.proposition_type_classification -- Peterfalvi (8.10)/(8.11) `M_s = M_σ` bridges (issue 8020): from Prop 16.1 clauses (c)/(f) -- + `isTypeP1_derivedInG_eq_Msigma`. Turn BG's `M_σ`-stated Theorem E into the `mainSubgroup`-form -- `BGTheoremECoverData` needs. Axiom-clean exactly because Prop 16.1 is. #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.mainSubgroup_eq_Msigma #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.A1_eq_sigmaSharp -- Every maximal subgroup has a Peterfalvi type (exhaustiveness of I–V): from Prop 16.1 over the -- exhaustive BG trichotomy F/P₁/P₂. Supplies `BGTheoremECoverData.tau`/`typed` (issue 8020). #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_peterfalviType -- Signalizer maximal's Fitting = its σ-core (`(N[x])_F = (N[x])_σ`, type F/P₂): the identity making -- Peterfalvi's (8.14) `R(x) = C_{(N[x])_F}(x)` coincide with BG `Rsub = (N[x])_σ ⊓ C_G(x)` (issue 8020). #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.maxNilpotentNormalHall_eq_Msigma_of_isTypeF_or_isTypeP2 -- 15.7(e) conjunct A divisibility engine (Coq `regZq_dv_q1`): a `U0`-invariant order-`q` subgroup -- of the Frobenius kernel `M_F` forces `exp U ∣ q - 1` (Frobenius semiregular action). #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeF_exponent_dvd_sub_one_of_invariant_card /-! # Peterfalvi Appendices (Lane H) Axiom-cleanliness guards for the sorry-free Peterfalvi-appendix results (`OddOrder/Peterfalvi/Appendices/`). Only fully unconditional, axiom-clean declarations are registered here. -/ /-! **Peterfalvi, Appendix I (Huppert), Lemma and Proposition 1**: an odd `p`-group acting faithfully on an elementary abelian `q`-group with constant nonzero point-stabilizer order is cyclic and fixed-point-free. The irreducible non-cyclic case uses a normal elementary abelian subgroup `R` of order `p²`; the fixed spaces of its order-`p` subgroups form a permuted independent family spanning the module. Applying the per-prime result to `O_p(F(D))` gives the cyclic, fixed-point-free Fitting subgroup in Proposition 1. Fully unconditional and axiom-clean (issue 2040). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.pGroup_cyclic_fixedPointFree #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.fitting_cyclic_fixedPointFree /-! **Peterfalvi Part II, Ch. I §2, Proposition 2**: the elements of `D̄` inverted by the involution `τ` are exactly `F(D̄)`. The reverse inclusion constructs the inverted subgroup in `D̄/F(D̄)` and uses Fitting maximality. Fully unconditional and axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inverted_mem_fitting #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_fitting_iff_tau_eq_inv /-! The next step constructs the full preimage `A` of `F(D̄)`, proves `K ⊆ A`, and identifies `A ∩ V = W` from the trivial `τ`-fixed locus in `F(D̄)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_fittingPreimage_of_mem_KSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fittingPreimage_inf_V /-! Applying §1 Lemma (a) to the full preimage `A` gives `A = KW`; the quotient-preimage cardinal formula then gives `|F(D̄)| = |K|`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fittingPreimageInG_eq_KSet_mul_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_fitting_Dbar_eq_ncard_KSet /-! A generator of cyclic `F(D̄)` lifts through `A = KW` to an element of `K`. The order identity forces `K = ⟨k⟩`; bundling `K` as its closure yields the cyclic subgroup normal in `D` asserted by Proposition 2. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_KSet_generator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.K_le_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.K_normal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coe_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.K_isCyclic /-! **Peterfalvi Part II, Ch. I §2, standing notation after Proposition 1**: `Q₁` is constructed as the unique normal `2`-complement of the nilpotent group `Q`. For every Sylow `2`-subgroup `S`, multiplication realizes the exact internal direct product `S × Q₁ ≃* Q`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q1Subgroup_isComplement'_sylowTwo #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q1Subgroup_characteristic #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.two_not_dvd_card_Q1Subgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sylowTwoProdQ1MulEquiv /-! **Peterfalvi Part II, Ch. I §2, Proposition 1 and the standing `K`-action**: ambient conjugation gives a faithful fixed-point-free action on `Q`, preserves `Q₀`, and its concrete automorphism image acts regularly on the nonidentity involutions. Moreover `|K| = |Q₀| - 1` and `|K|` is odd. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQByK_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQByK_fixed_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q0_isInvariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.actualKActor_actsRegularlyOnInvolutions #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_K_eq_card_Q0_sub_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_K_odd /-! **Peterfalvi Appendix III, Definition 1**: Suzuki `2`-groups are encoded honestly as nonabelian `2`-groups with at least two involutions and a cyclic subgroup of automorphisms acting regularly on the involutions. Faithfulness is built into the subgroup inclusion in `MulAut`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.Suzuki2Group.IsSuzuki2Group /-! **Higman Lemma 4 and its Corollary**: the first two lower-central layers are not equivariantly isomorphic, even as an invariant ground-field copy after an arbitrary scalar extension of the second layer. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.not_exists_equivariant_linearEquiv_of_higman_bracket #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.not_exists_injective_intertwiner_to_baseChange_of_higman_bracket /-! **Higman Lemma 5**: the source square-subgroup hypothesis feeds the actual quadratic square map. A normalized Frobenius-conjugate simultaneous eigenbasis makes the upper-triangular candidate equivariant; Lemma 4's Corollary then identifies it with the actual map and yields Higman's displayed pairwise formula after scalar extension. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralSquaresLieInSecond_of_agemo_eq #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralSquareQuadraticMap_polarBilin #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.upperQuadraticMap_apply_frobenius_sum #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.polarBilin_upperQuadraticMap #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralSquareMapBaseChange_eq_of_add_law_and_equivariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.includeRight_eq_sum_conjugateTensorBasis #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_singerConjugateBasis_of_faithful_irreducible #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.upperQuadraticMap_equivariant_of_eigenbasis #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralSquareMapBaseChange_eq_upperQuadraticCandidate #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.exists_lowerCentralSquareMap_eq_frobeniusSum /-! **Mixed bilinear scalar extension**: a bilinear map with two different source modules extends in both inputs and its output; equivariance and a full spanning range survive the extension. -/ #assert_only_allowed_axioms LinearMap.baseChange₂_tmul #assert_only_allowed_axioms LinearMap.baseChange₂_equivariant #assert_only_allowed_axioms LinearMap.baseChange₂_span_eq_top /-! **Bilinear eigenweight (Higman Lemma 12, p. 90)**: a nonzero value of an equivariant bilinear map on two eigenvectors forces the product of their eigenvalues to occur among the target eigenbasis weights — Higman's `λ^(2^i) μ^(2^j) = ν^(2^k)` in coordinate-free form. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_weight_eq_of_bilinear_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_pair_ne_zero_and_weight_eq /-! **Higman Lemma 6, degree-three group-theoretic layer**: the actual mixed commutator descends to `L₂ × L₁ → L₃`, spans `L₃`, and is equivariant. Its composition with the degree-two bracket is the actual trilinear commutator `[[x,y],z]`, whose values also span `L₃`. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.quotient_layerKernel_two_lowerCentralSeries_two_le_center #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinear_span_eq_top #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinear_equivariant #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinear_equivariant_representation #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinearBaseChange_tmul #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinearBaseChange_equivariant #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinearBaseChange_span_eq_top #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinearBaseChange_eigenweight #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutatorTrilinear_span_eq_top /-! **Finite eigenspace sum separation**: in a zero sum of eigenvectors, the terms with any fixed eigenvalue also sum to zero. -/ #assert_only_allowed_axioms Module.End.sum_filter_weight_eq_zero_of_sum_eq_zero /-! **Neumann's order-three fixed-point-free theorem**, used by the parity step of Higman Lemma 6. Burnside's holomorph argument gives the right 2-Engel law; the Hopkins--Levi/Hall--Witt calculation gives exponent three for triple commutators; the action congruence gives `3 ∤ |G|`; hence `γ₃(G) = 1`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.commute_conjugate_self_of_fixedPointFree_orderOf_eq_three #assert_only_allowed_axioms OddOrder.GroupTheory.tripleCommutator_cube_of_commute_conjugate_self #assert_only_allowed_axioms OddOrder.GroupTheory.three_not_dvd_natCard_of_fixedPointFree_orderOf_eq_three #assert_only_allowed_axioms OddOrder.GroupTheory.lowerCentralSeries_two_eq_bot_of_fixedPointFree_orderOf_eq_three #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayerZero_action_eq_one_of_second_third_action_eq_one #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayerRepresentation_ker_inf_le_ker_zero #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayerOneRepresentation_injective_of_equivariant_linearEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.finrank_eq_of_faithful_irreducible_and_faithful_transitive_nonzero #assert_only_allowed_axioms OddOrder.RepresentationTheory.representation_fixedVector_eq_zero_of_faithful_irreducible #assert_only_allowed_axioms OddOrder.RepresentationTheory.representation_fixedVector_eq_zero_of_faithful_transitive_nonzero #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_ne_one_orderOf_eq_three_of_even_faithful_transitive_nonzero #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayerZero_finrank_eq_one_of_equivariant_linearEquiv #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTerm_succ_squares_le_of_squares_le #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotient_fixedPointFree_of_agemo_eq #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotient_lowerCentralSeries_three_eq_bot #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotient_lowerCentralSeries_two_ne_bot #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotient_nilpotencyClass_eq_three #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotientAction_orderOf_ne_three #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayers_fixedPointFree_of_lemmaSix_hypotheses #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.classThreeQuotientAction_orderOf_eq_three #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralLayerOne_finrank_odd_of_equivariant_linearEquiv #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralDegreeThreeCommutatorBilinear_squareMapAdditive_self #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutator_sum_eq_zero_of_square_formula #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutator_weightFiber_sum_eq_zero #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutator_pairWeightFiber_terms_eq_zero /-! **Higman Lemma 6, distinct triple-weight exclusion**: three distinct Frobenius exponents cannot be congruent modulo `2^n - 1` to a pair weight. For a primitive Singer root, the corresponding eigenspace is therefore zero whenever the target is spanned by pair-weight eigenspaces. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.three_distinct_twoPowers_ne_two_distinct_twoPowers #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.three_distinct_frobeniusWeight_not_modEq_pairWeight #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.primitiveRoot_threeDistinctWeight_ne_pairWeight #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.primitiveRoot_threeDistinctWeight_eigenspace_eq_bot #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutator_eq_zero_of_threeDistinct #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.lowerCentralTripleCommutator_all_terms_eq_zero #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.not_exists_equivariant_linearEquiv_of_higman_tripleBracket /-! **Higman Lemma 6, repeated-index candidates**: a repeated Frobenius triple with pair weight is one of the two predecessor-index terms in the source. Their inner pairs cannot both have the permitted cyclic gap when the Frobenius period is odd. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.HasHigmanPairGap.comm #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.repeated_frobeniusWeight_pairWeight_candidates #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.primitiveRoot_pairWeight_injective #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.primitiveRoot_pairWeight_eq_pairWeight_candidates #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.not_both_adjacent_pairGaps_of_odd #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.HigmanExponentPair.not_both_predecessor_pairGaps_of_odd #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.primitiveRoot_pairWeight_eq_frobeniusShift_imp_pairGap #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.exists_lowerCentralPairGapSupport_of_frobeniusEigenbases /-! **Higman Lemma 12 (p. 90), the mixed weight equation**: over the common Singer datum on `Φ(P)`, the complementary factors have a nonzero mixed commutator whose Frobenius weight satisfies `λ^(2^i) μ^(2^j) = ν^(2^k)`. With `ν = λ θ(λ) = μ φ(μ)` this is exactly Higman's state preceding the B/C/D split. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.exists_mixedFrobeniusWeightEquation_of_xiLengthThree /-! **Higman Lemma 12 (pp. 90--92), the B/C/D classification**: a Suzuki 2-group of ξ-length 3 is isomorphic to some `B(n, θ, ε)`, `C(n, ε)`, or `D(n, θ, ε)`. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.higmanLemmaTwelve /-! **Higman Lemma 13 and Theorem 1**: the `ξ`-length bound excludes chains of length at least four; the center chain then dispatches every Suzuki `2`-group to one of the honest type-`A`/`B`/`C`/`D` models. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.higmanLemmaThirteen #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.higmanClassification #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.higmanClassification_of_isSuzuki2Group /-! **Higman Theorem 1(a)**: each honest type model, hence every Suzuki `2`-group, has exponent dividing four. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_isTypeA #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_isTypeB #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_isTypeC #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_isTypeD #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_higmanType #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.pow_four_eq_one_of_isSuzuki2Group /-! **Peterfalvi Appendix III, Theorem (e), recognition half**: a summand isomorphism of any invariant two-summand split of `P ⧸ Z(P)` forces Frobenius-conjugate factor eigenvalues, which kills the type-C and type-D branches of the Lemma 12 dispatch — the group is of type `B`. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.exists_frobenius_conjugate_of_summandEquiv #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.isTypeB_of_isomorphicOrderQModuleSplit_of_xiLengthThree #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.isTypeB_of_isomorphicOrderQModuleSplit_of_card_eq_cube /-! **Peterfalvi Appendix III, Higman theorem (a), easy inclusion**: every involution is central, and the involutions together with the identity form a concrete elementary-abelian `2`-subgroup. The reverse identification with the whole center remains part of Higman's later structural argument. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.involutions_subset_center #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.involutionSubgroup_isElementaryAbelian #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.mem_involutionSubgroup_iff_sq_eq_one #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.involutions_eq_involutionSubgroup_diff_identity /-! **Peterfalvi Appendix III, Lemma 1(b)**: every quadratic map over `F₂` has an explicit central extension whose squaring map is the original map. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.range_inl_le_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.sq_eq_inl_q /-! **Peterfalvi Appendix III, Definitions 2--3**: the type-A and type-B groups are concrete quadratic central extensions, with the source type-B nonvanishing condition implying anisotropy. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.TypeAModel.sq_eq_inl_quadraticMap #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.typeBQuadraticMap_anisotropic #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.TypeBData.map_sq /-! **Peterfalvi Appendix III, Higman theorem (d)--(e)**: the two invariant order-`q` summands have `K`-invariant inverse images of order `q²`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.OrderQModuleSplit.card_leftPreimage #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.OrderQModuleSplit.card_rightPreimage /-! For Higman (d), coprime fixed-point lifting makes the quotient action fixed-point-free. An invariant subgroup of order `|K| + 1` is then transitive and simple under `K`, and two distinct invariant subgroups of the required orders are complementary. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.quotient_fixedPointFree_of_fixedPoints_le #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.card_coprime_of_card_eq_sub_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.restrict_transitive_of_fixedPointFree_card #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.invariant_eq_bot_or_top_of_fixedPointFree_card #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.isCompl_of_distinct_invariant_of_transitive_card #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.disjoint_of_invariant_of_ne_of_card #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.nonempty_kEquivariantMulEquiv_of_third_invariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.OrderQModuleSplit.nonempty_summandEquiv_of_isomorphic /-! **Lemma 5, the square fiber of a summand**: on an invariant summand of order `|Z|` the coset square map is a bijection from the nonidentity cosets onto the involutions `Z \ {1}`; the fiber over a fixed involution is a single coset. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.bijOn_cosetSquare #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.existsUnique_cosetSquare_eq /-! In the actual Part II setting, `|K|` and `|Q₀|` are coprime and the induced action on `Q / Q₀` is fixed-point-free. Hence every invariant order-`|Q₀|` subgroup is transitive on its nonidentity elements and simple as a `K`-group. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_K_coprime_card_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQByKQuotientQ0_fixed_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.quotientQ0_restrict_transitive_of_card_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.quotientQ0_invariant_eq_bot_or_top_of_card_eq /-! **Peterfalvi Part II, Ch. I §3 Lemma 5**: invariant `Q₀`-cosets and coprime fixed-point lifting give the free action on `K`-subgroups and the resulting cardinal divisibility. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.no_nontrivial_fixed_of_equivariant_cosetRepresentatives #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.card_dvd_of_equivariant_cosetRepresentatives /-! **Peterfalvi Part II, Ch. I §2, Corollary**: nilpotence makes a Sylow `2`-subgroup `S ≤ Q` characteristic. The cyclic subgroup `K` acts on `S`, and §1 Proposition 3 gives a regular action on its nonidentity involutions; therefore `S` is commutative or an honest Suzuki `2`-group. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQByK #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sylowTwo_isMulCommutative_or_isSuzuki2Group /-! **Peterfalvi Part II, Ch. I §2, definition before Proposition 3**: `𝓛(F,A) = (F_add ⋊ Fˣ) ⋊ A`, with the natural field-automorphism action. The automorphism group of a finite field, and hence every subgroup `A`, is cyclic. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.fieldRingAutOnAffine #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.ringAut_isCyclic_of_finite /-! **Peterfalvi Part II, Ch. I §2, Proposition 3 preparation**: the image `K̄` is `F(D̄)`, the image `V̄` is the distinguished-point stabilizer, the Fitting action on `Q₀` is irreducible, and `D̄ = K̄ ⋊ V̄`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Kbar_eq_fitting #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Vbar_eq_pointStabilizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fittingAction_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.KbarSemidirectEquiv /-! **Peterfalvi Part II, Ch. I §2, Proposition 3**: `F(D̄) ≅ F_qˣ`, while `V̄` embeds faithfully into `Aut(F_q)` and normalizes the scalar action semilinearly. The three compatible component actions assemble to `Q₀ ⋊ D̄ ≅ 𝓛(F_q, A)` with `|F_q| = |Q₀|`; cyclicity of finite-field automorphisms gives cyclic `V̄`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_fitting_field_model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sQ0_addEquiv_of_finrank_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fittingScalar_companion_compat #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_semilinear_field_model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_equivariant_field_coordinates #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_semilinear_equiv #assert_only_allowed_axioms SemidirectProduct.reassoc #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SemidirectProduct.reassocOfEquivToSemilinear /-! **Peterfalvi Part II, Ch. I section 3, Lemma 1 (group-theoretic core)**: the target permutation degree makes `Q` a 2-group; Proposition 1(c) makes it Sylow, and simplicity identifies `L` with both the prime-complement residual and the join of the conjugates of `Q`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_isPGroup_of_card_Omega_sub_one_eq_two_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sylow_two_eq_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.simple_normal_oddIndex_Q_core /-! **Peterfalvi Part II, Ch. I section 3, Lemma 1 (PSL(2,q) target)**: the standard projective-line action supplies the power-of-two degree, PSL simplicity, and hence the exact residual and conjugate-join conclusions. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.psl2_degree_twoPower #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.psl2_target_simple #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_and_residual_of_psl2_target /-! **Peterfalvi Part II, Ch. I section 3, Lemma 1 (Sz(q) target)**: the standard ovoid action supplies the power-of-two degree, Suzuki simplicity, and hence the exact residual and conjugate-join conclusions. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.suzuki_degree_twoPower #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.suzuki_target_simple #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_and_residual_of_suzuki_target /-! **Peterfalvi Part II, Ch. I section 3, Lemma 1 (PSU(3,q) target)**: the Hermitian-unital action supplies the power-of-two degree, PSU simplicity, and hence the exact residual and conjugate-join conclusions. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.psu3_degree_twoPower #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.psu3_target_simple #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_and_residual_of_psu3_target /-! **Peterfalvi Part II, Ch. I section 3, Proposition 1(a)**: for nontrivial `X <= V`, the centralizer `L = C_G(X)` acts doubly transitively on its fixed-point set and satisfies the full source hypothesis (A1). Its generally nonfaithful restricted action has intrinsic core equal to the centralizer of `L cap Q` in `L cap D`, and this core is contained in `L cap V`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.normalCore_stabilizer_eq_ker_of_isPretransitive #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.three_le_ncard_fixedPoints_of_le_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_isMultiplyPretransitive_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerHypothesisA1 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalCore_cH_eq_restrictedAction_ker #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalCore_cH_eq_centralizer_cQ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalCore_cH_le_cV /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, quotient carrier: dividing the centralizer action by its exact kernel transports (A1), makes the action faithful (A2), and preserves the four-subgroup required by (A3). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientHypothesisA1 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotient_faithful #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotient_twoRankGeTwo #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientHypothesis #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_centralizerActionQuotient_lt /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, induction bridge: the concrete three-case conclusion of Suzuki's Theorem A makes the quotient root group a `2`-group, and the explicit equivalence `C_Q(X) ≃ Q̄` transports that conclusion back to the original centralizer. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.TheoremAConclusion.Q_and_residual #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQQuotientEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_cQ_isPGroup_of_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_cQ_isPGroup_of_induction /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, PSL branch: the quotient and actual centralizer root groups are elementary abelian of order `ell = |F|`, and `ell = |C_Q0(X)|`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.qMulEquivPSLRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.q_isElementaryAbelian_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_Q_eq_field_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQMulEquivPSLRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQ_isElementaryAbelian_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQuotientQ_eq_field_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQ0_subgroupOf_eq_Q_subgroupOf_of_elementaryAbelian #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQMulEquivPSLRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQ_isElementaryAbelian_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerCQ_eq_field_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQ0_eq_field_of_psl2Target /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, Suzuki branch: the actual centralizer root is an honest type-A Suzuki 2-group and has order the square of ell = |C_Q0(X)|. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.qMulEquivSuzukiRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.qStandardTypeAData_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.q_isSuzuki2Group_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_Q_eq_field_sq_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQMulEquivSuzukiRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQStandardTypeAData_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQ_isSuzuki2Group_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQuotientQ_eq_field_sq_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQMulEquivSuzukiRoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQStandardTypeAData_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQ_isSuzuki2Group_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerCQ_eq_field_sq_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQ0EquivSuzukiCenterLine #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQ0_eq_field_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerCQ_eq_centralizerQ0_sq_of_suzukiTarget /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, PSU branch: the actual centralizer root is an honest Suzuki 2-group and has order the cube of `ell = |C_Q0(X)|`. No type-B conclusion is asserted here. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.qMulEquivPSURoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.q_isSuzuki2Group_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_Q_eq_baseField_cube_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQMulEquivPSURoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotientQ_isSuzuki2Group_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQuotientQ_eq_baseField_cube_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQMulEquivPSURoot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQ_isSuzuki2Group_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerCQ_eq_baseField_cube_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerCQ0EquivPSUCenterLine #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerQ0_eq_baseField_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_centralizerCQ_eq_centralizerQ0_cube_of_psu3Target /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, distinguished-pair transport and order lift: the quotient pair is the image of the original pair, and the odd action kernel does not change the order of `st`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.orderOf_mul_eq_prime_of_pow_mem_odd_kernel #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.V_le_centralizer_structureConjugator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.distinguishedInvolution_mem_centralizer_of_le_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mem_centralizer_of_le_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerQuotient_distinguishedPair_eq_images #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_quotient_pow /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, PSL distinguished pair: the source structure equation becomes the standard unipotent/root equation in `PSL(2, ell)`. The matrix calculation gives order three in the quotient, and the preceding odd-kernel bridge lifts it to the centralizer. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.orderOf_root_mul_eq_three_of_structure #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_psl2Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_centralizer_psl2Target /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, Suzuki distinguished pair: root/torus normalization identifies the transported pair with the standard root involution and Weyl element, whose product has order five; the odd-kernel bridge lifts this to the centralizer. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardStructureConjugator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardStructureConjugator_mem_standardRootSubgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardSuzuki_structureEquation #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_suzukiTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_centralizer_suzukiTarget /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, PSU distinguished pair: root/Borel/torus normalization identifies the transported pair with the standard central root involution and Weyl element. Their braid relation gives product order three, which the odd-kernel bridge lifts to the ambient centralizer. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_psu3Target #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderOf_distinguishedInvolution_mul_t_of_centralizer_psu3Target /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**: the final centralizer assembly combines the classification-independent residual conclusions with the concrete PSL, Suzuki, and PSU alternatives, including the source cardinalities and distinguished-product orders 3/5/3. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_trichotomy_of_induction /-! **Peterfalvi Part II, Ch. I §3 Proposition 2.** The source subgroup `L = ⟨I⟩` is constructed as a proper normal subgroup, contains `Q`, inherits (A1)--(A3), satisfies `G = LD` and has odd index. Induction on `L` then returns the concrete conclusion of Suzuki's Theorem A for every nonsimple `G`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.oPiCore_two_compl_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.involution_mem_normal_subgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.involutionClosure_proper_normal_of_not_simple #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_le_involutionClosure #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.subgroupHypothesis #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.involutionClosure_sup_D_eq_top #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.involutionClosure_odd_index #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.theoremAConclusion_of_not_simple /-! **Peterfalvi Part II, Ch. I §3 Lemma 2.** The internal complement `D = K ⋊ V` supplies the source's canonical homomorphism `D → V`. Double transitivity first corrects an arbitrary ambient conjugator into `D`, and projection then gives a conjugator in `V` for arbitrary subsets of `V`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.K_isComplement_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.dToV_of_mem_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_D_conj_image_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_V_conj_image_eq /-! **Peterfalvi Part II, Ch. I §3 Lemma 3.** Strongly real elements whose square is nontrivial are conjugate to `u * t` with `u ∈ Q₀#`; odd-dihedral conjugacy inside `N_G(⟨x⟩)` excludes every involution from `C_G(x)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_fixedPoint_of_involution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fixedPoints_ne_of_mul_sq_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_smul_pair_and_conj_involution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_isConj_mul_t_of_stronglyReal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_natCard_odd_of_mem_Q0_mul_t #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_natCard_odd_of_stronglyReal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stronglyReal_normalForm_and_centralizer_odd /-! **Peterfalvi Part II, Ch. I §3 Lemma 4.** The Bruhat carrier uses `t Q₀# t` in the big-cell calculation (restoring the sharp omitted in the source), and the restricted orbit supplies the faithful Theorem A hypothesis used by induction to identify `⟨Q₀, K, t⟩` with `PSL(2,q)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coe_orderThreeGeneratedSubgroup_eq_Q0K_union_Q0KtQ0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderThree_faithfulSMul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderThreeHypothesisOfAction #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_orderThreeGeneratedSubgroup_mulEquiv_psl2 /-! **Peterfalvi Part II, Ch. I §3 Lemma 5** (first reduction): for every `1 ≠ w ∈ W`, Proposition 1(c) and faithfulness give `C_Q(w) = Q₀`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_inf_centralizer_singleton_eq_Q0_of_orderThree /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(b)**: for `X <= V`, the ambient normalizer factors as `N_G(X) = C_G(X) N_V(X)`. The proof retains the source order through `N_G(X) = C_G(X) N_D(X)`, `N_D(X) = N_K(X) N_V(X)`, and `N_K(X) <= C_G(X)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.smul_mem_fixedPoints_of_mem_normalizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.V_inf_K_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalizer_inf_D_eq_normalizer_inf_K_mul_normalizer_inf_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalizer_inf_K_le_centralizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalizer_eq_centralizer_mul_normalizer_inf_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalizer_eq_centralizer_mul_normalizer_inf_V /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, first inference: once induction and Lemma 1 make `C_Q(X)` a `2`-group, the actual odd-order factor `Q₁` has trivial centralizer of `X`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q1_inf_centralizer_eq_bot_of_isPGroup /-! **Peterfalvi Part II, Ch. I §3 Proposition 1(c)**, structural core: for `L = C_G(X)` and `F₀ = ⟨C_Q(X)^L⟩`, the action kernel intersects `F₀` in exactly `Z(F₀)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normalCore_subgroupOf_normalClosure_cQ_eq_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_centralizer_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sylow_two_le_cQ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sylow_two_eq_cQ_of_isPGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerResidualQuotientEquiv_of_sylow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizerResidualQuotientEquiv /-! **Peterfalvi, Appendix I (Huppert), Proposition 2(a)** (`SemilinearField`): a commutative group `T` acting irreducibly on an elementary abelian `p`-group `E` yields a finite field `F = 𝔽_p[T] = End_{𝔽_p[T]}(E)` over which `E` is `1`-dimensional, with `|F| = |E|`. The abstract core (`End_{k[T]}(M)` is a field, `M` is `1`-dimensional, `|End| = |M|`) plus the bridge from the group-theoretic data. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.isSimpleModule_end #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.finrank_end_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.natCard_end_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_of_irreducible /-! **Peterfalvi, Appendix I (Huppert), Proposition 2(a)+(b)** (`SemilinearField`): the field `F` of part (a) together with the semilinearity of part (b) — every `g : MulAut E` normalizing the `T`-action (via some `c : T ≃* T`) acts `F`-semilinearly, with field automorphism `σ = conjugation by g` on `F = End_{𝔽_p[T]}(E)`. This is the input Appendix II uses for the field automorphisms `σ_y`. Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_semilinear /-! The scalar-enhanced form retains the concrete homomorphism `T → Fˣ` and its action law. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_semilinear_with_scalar /-! **Peterfalvi, Appendix I, Proposition 2(b)**: the elementwise field automorphisms attached to semilinear maps form a coherent group homomorphism; on a faithful one-dimensional point stabilizer this homomorphism is injective. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_semilinear_companion #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_injective_semilinear_companion /-! **Peterfalvi, Appendix II (Near-Fields), Proposition 2 — irreducibility/counting + field structure** (`NearFields`). The orbit-counting engine (`add_one_le_card_of_aInvariant_ne_bot`: an `A`-invariant `U ≠ ⊥` has `|A| + 1 ≤ |U|`), the elementary-abelian Maschke split (`exists_aInvariant_complement_of_elementaryAbelian`), their assembly (`rightMulAction_irreducible_of_index_two`: a commutative index-`2` subgroup `A ⊆ Fˣ` acts irreducibly on `(F, +)`), and the resulting unconditional field structure (`nearField_field_structure_of_index_two`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.add_one_le_card_of_aInvariant_ne_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exists_aInvariant_complement_of_elementaryAbelian #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.rightMulAction_irreducible_of_index_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.nearField_field_structure_of_index_two /-! **Peterfalvi, Appendix II (Near-Fields), p. 137 — the `𝓛(F)` correspondence, forward direction** (`NearFieldFromSharplyTransitive`). Dual to the backward `SharplyTransitiveData` transport: *from* a near-field `F` one builds the affine group `𝓛(F) = F ⋊ F^*` (the subgroup `nearFieldAffineGroup` of `Equiv.Perm F` of affine permutations `x ↦ x * u + t`) and shows it acts **sharply `2`-transitively** on `F` — `nearField_affine_existsUnique` (the arithmetic `∃!` core) and `nearFieldAffineGroup_existsUnique` (the group-level statement). Fully general (any near-field), axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.nearField_affine_existsUnique #assert_only_allowed_axioms OddOrder.GroupTheory.nearFieldAffineGroup_existsUnique /-! **`M_F` is automorphism-equivariant** (`MaxNilpotentNormalHall`). The maximal nilpotent normal Hall subgroup `M_F` of Peterfalvi/BG is natural under any automorphism `φ` of `G`: `φ • M_F = (φ • M)_F` (`maxNilpotentNormalHall_pointwise_smul`), with the candidate-set/subgroupOf transport helper `map_subgroupMap_subgroupOf` and the automorphism-action equation `pointwise_mulAut_smul_eq_map`. Reusable building block for the BG §13 / Peterfalvi §13 conjugation arguments on `L_F`/`M_F` (e.g. the (14.12) `L ≅ M` reduction `H_cyclic_of_L_conj_M`). Fully unconditional, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.maxNilpotentNormalHall_pointwise_smul #assert_only_allowed_axioms OddOrder.GroupTheory.map_subgroupMap_subgroupOf #assert_only_allowed_axioms OddOrder.GroupTheory.pointwise_mulAut_smul_eq_map /-! **The Peterfalvi maximal-subgroup type is conjugacy-invariant** (`MaximalSubgroupTypeConj`). Every structural datum of `TypeFData`/`TypeIData` transfers along `φ : MulAut G` (`TypeFData.conj`, `isTypeI_pointwise_smul`), so conjugate maximal subgroups share their Peterfalvi type (`isTypeI_of_conj`). This is the unconditional, axiom-clean **gate-4 piece 1** infrastructure of Peterfalvi (13.17.b). Its downstream application `OddOrder.Peterfalvi.S15.not_conj_of_isTypeI_of_isTypeNonI` (a type-`I` maximal subgroup is non-conjugate to the non-I `S`, `T`) has a sorry-free *proof*; its §16 dependency `not_isTypeI_of_isTypeNonI` is now axiom-clean (registered above), so registering it is left to the Peterfalvi lane that owns it. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.TypeFData.conj #assert_only_allowed_axioms OddOrder.GroupTheory.isTypeI_of_conj /-! **Frobenius-kernel fixed-point engine for Peterfalvi (9.1)/(13.17.b)** (`CoprimeAction`). In a finite Frobenius group with kernel `N`, a non-kernel element centralizes nothing nontrivial in `N` (`IsFrobeniusGroup.centralizer_inf_kernel_eq_bot_of_not_mem`) — the engine of the fixed-point-free action that, with Wielandt's formula `wielandt_fixedPoint_frobenius`, forces the Fitting kernel `L_F` to be trivial in (13.17.b). Axiom-clean (the Wielandt corollary `coprimeFrobeniusAction_card_eq_one` itself transitively cites the sorried Wielandt formula and is not registered here). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.IsFrobeniusGroup.centralizer_inf_kernel_eq_bot_of_not_mem /-! **(9.1) I-5 chief-step multiplicativity of coprime fixed points** (`CoprimeFixedPoints`). For a coprime solvable action `φ : L →* MulAut H`, `X ≤ L`, and an `L`-invariant normal `N ◁ H`, the fixed points split across the chief step: `|C_H(X)| = |C_H(X) ⊓ N| · |C_{H/N}(X)|` (`card_fixedSubgroup_eq_mul`), via the surjectivity of the reduction map onto the quotient fixed points (`map_fixedSubgroup_eq_fixedSubgroup_quotient` = Isaacs Cor 3.28). This is the group-theoretic core of the chief-series assembly of Wielandt's formula (issue 2014). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.card_fixedSubgroup_eq_mul #assert_only_allowed_axioms OddOrder.GroupTheory.map_fixedSubgroup_eq_fixedSubgroup_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.isAInvariant_comp_subtype #assert_only_allowed_axioms OddOrder.GroupTheory.fixedSubgroup_restrict_eq #assert_only_allowed_axioms OddOrder.GroupTheory.card_fixedSubgroup_restrict #assert_only_allowed_axioms OddOrder.GroupTheory.wielandt_card_combine #assert_only_allowed_axioms OddOrder.GroupTheory.wielandt_step /-! **(9.1) existence of an elementary-abelian `L`-invariant normal subgroup** (`MinimalInvariantNormal`). A nontrivial finite solvable `H` with an action `φ : L →* MulAut H` has a nontrivial `L`-invariant normal `N ◁ H` that is elementary abelian (`exists_aInvariant_normal_isElementaryAbelian`): a minimal such `N` has trivial derived subgroup (abelian) and trivial `p`-th powers (exponent `p`), both forced by minimality applied to the characteristic subgroups of `↥N` mapped into `H`. This is the existence input driving the chief-series induction of Wielandt's formula (issue 2014). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_aInvariant_normal_isElementaryAbelian #assert_only_allowed_axioms OddOrder.GroupTheory.aInvariant_normal_map_of_characteristic #assert_only_allowed_axioms OddOrder.GroupTheory.aInvariant_map_subtype_of_restrict /-! **(9.1) chief-series assembly** (`WielandtAssembly`). The group-level Wielandt fixed-point identity follows from the per-chief-factor identity (`WielandtPerFactor`) by strong induction on `|H|` (`wielandt_formula_of_perfactor`): an elementary-abelian `L`-invariant normal subgroup `N` splits the problem via `wielandt_step`, with the per-factor identity on `N` and the induction hypothesis on `H/N`. This completes the *group-theoretic* layer of Wielandt's formula; the only remaining input is the per-chief-factor identity itself (the representation-theoretic (†), lane-f). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.wielandt_formula_of_perfactor /-! **(9.1) per-chief-factor discharge** (`WielandtPerFactorDischarge`, piece C). The per-chief-factor predicate `WielandtPerFactor` reduces (`wielandtPerFactor_of_dim`) to the *dimension* identity (⋆) on each elementary-abelian chief factor (`WielandtDimIdentity`): for the restricted action on `↥N`, `card_fixedSubgroup_wielandt_of_dim` raises the dimension identity to the cardinality identity on `↥N`, and `card_fixedSubgroup_restrict` rewrites `|C_N(X)| = |C_H(X) ⊓ N|`. This isolates the sole remaining representation-theoretic input — the kernel-FPF dimension identity (†) — into the explicit hypothesis. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.wielandtPerFactor_of_dim /-! **(9.1) item 0 — conjugation permutes the isotypic projections** (`CenterProjConjugation`). A linear automorphism `τ` of `W` intertwining `ρ : Representation k U W` with its `c`-twist carries the `i`-th isotypic projection's range onto the `simplesAction φ c i`-th one (`map_range_centerProj`); this is the `hperm` of the free-orbit dimension count. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.CenterModuleDecomp.map_range_centerProj /-! **(9.1) item 1 — the free `Γ`-action on the nontrivial simples** (`WielandtKernelFPF`). Packaging `gamma_free_off_trivial_simple` (3d.3c) with the canonical induced `Γ`-actions (`Γ` on `ConjClasses G` through `ψ`, `Γ` on `Fin N` through `simplesAction φ ∘ ψ`): there is a simple `i₀` fixed by all of `Γ`, and `Γ` acts freely off it. Axiom-clean (the wiring of the kernel-FPF dimension fact (†) to the real Frobenius carrier, issue 2014). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.exists_fixed_simple_free_of_fpf /-! **(9.1) item 2(g) — the trivial isotypic component is the `G`-invariants** (`WielandtKernelFPF`). The trivial primitive central idempotent `φ.symm (Pi.single i₀ 1)` (augmentation coordinate `i₀`) equals the averaging idempotent `GroupAlgebra.average` (`symm_single_eq_average`), so its isotypic projection is the averaging projection and its range is the invariants (`range_centerProj_aug_eq_invariants`); `exists_aug_coordinate` produces that coordinate. This is the input that drops the trivial summand in the kernel-FPF count (†) when `Wᴳ = 0`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.symm_single_eq_average #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.range_centerProj_aug_eq_invariants #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.exists_aug_coordinate /-! **(9.1) the kernel-FPF dimension fact (†)** over an algebraically closed field (`WielandtKernelFPF`, item 2). For `U ◁ L` a `p′`-group, `E ≤ L` (`U ⊔ E = ⊤`) acting on `U` fixed-point-freely by conjugation, and a finite-dimensional `k[L]`-module `W` with `Wᵁ = 0`, `dim W = |E| · dim Wᴱ` (`finrank_eq_card_mul_finrank_invariants_kernelFPF`). The `U`-isotypic decomposition drops its trivial summand (`Wᵁ = 0`), and `E` permutes the rest freely (item 1), so the free-orbit count applies. This is the representation-theoretic core (†) of Wielandt's formula; `isInternal_restrict_ne` is the supporting drop-zero-summand lemma. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.isInternal_restrict_ne #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.finrank_eq_card_mul_finrank_invariants_kernelFPF /-! **(9.1) the kernel-FPF identity (†) over `𝔽_p`, via base change** (`WielandtElabFrobenius`, item 3 + assembly). Base change `𝔽_p → 𝔽̄_p` transfers the algebraically-closed (†) (`finrank_eq_card_mul_finrank_invariants_kernelFPF`) to the prime field (`htag_of_frobenius`), discharging the `htag` of `finrank_elab_identity` and yielding the per-chief-factor dimension identity (⋆) `wielandtDimIdentity_of_frobenius`. **This closes the lone representation-theoretic input of Wielandt's formula `wielandt_fixedPoint_frobenius`, which is now fully unconditional (axiom-clean).** Likewise its corollaries and the (13.17.b) engine. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.htag_of_frobenius #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.wielandtDimIdentity_of_frobenius #assert_only_allowed_axioms OddOrder.GroupTheory.wielandt_fixedPoint_frobenius #assert_only_allowed_axioms OddOrder.GroupTheory.coprimeFrobeniusAction_card_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.isFrobenius_kernel_eq_bot_of_frobenius_subgroup -- Peterfalvi (9.1) kernel-centralizes corollary (ambient form): a Frobenius `U ⋊ E ≤ N_G(N)` acting -- coprimely on a finite solvable `N` with `C_N(E) = 1` has `U ≤ C_G(N)`. The §8-free Wielandt step -- of (13.16): `K W₂` with `C_{Q₁}(W₂) = 1` ⟹ `K` centralizes the Maschke complement `Q₁`. #assert_only_allowed_axioms OddOrder.GroupTheory.frobenius_kernel_centralizes_of_complement_fpf #assert_only_allowed_axioms OddOrder.GroupTheory.natCard_eq_pow_natCard_inf_centralizer_of_kernel_fpf -- Group-cardinality form of the kernel-FPF identity (†) ([Is] Thm 15.16, issue 2053): -- `|V| = |C_V(E)|^{|E|}` for a Frobenius-like `U ⋊ E = L` acting on an elementary abelian -- `p`-group `V` with `C_V(U) = 1` — no hypothesis relating `p` and `|E|`. #assert_only_allowed_axioms OddOrder.GroupTheory.WielandtKernelFPF.card_eq_card_fixedSubgroup_pow_of_frobenius /-! **(9.3) the order relation via Wielandt (9.1)** (`Peterfalvi.S11`). Definition (8.4) makes `U W₁` a Frobenius group (kernel `U`) acting coprimely on `H = M_F` (`typeP_uW1_frobenius`, `typeP_coprimeAction`); the three fixed-point subgroups of Wielandt's formula are the concrete centralizers (`typeP_card_fixedSubgroup`, with `C_H(W₁) = W₂` from `typeP_H_inf_centralizer_W1`), giving the quantitative core `|C_H(U W₁)|^q · |H| = |W₂|^q · |C_H(U)|` (`typeP_wielandt_order_relation`). This is the Wielandt content of Peterfalvi (9.3); the fixed-point-free §8 inputs (`C_H(U) = 1`, `|W₂|` prime, `C_H(U W₁) = 1`) are the remaining §8 obligations. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_uW1_frobenius #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_coprime_H_uW1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_coprimeAction #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_fixedSubgroup_map #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_card_fixedSubgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_H_inf_centralizer_W1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_wielandt_order_relation /-! **Peterfalvi (8.5.b)** (`Peterfalvi.S11`). `U ≠ 1 ⟹ U` does not centralize `H`, *derived* from the type-`P` data: if `U ≤ C(H)` then `F(M) = H ⊔ U = M'` is nilpotent, but `M'` is also a normal Hall subgroup of `M` (`|M'| = |H|·|U|` coprime to `[M : M'] = |W₁|`), so `M' ≤ M_F = H`, forcing `U ⊆ H ∩ U = 1` (`typeP_U_not_centralizes_H`). With `C_H(U W₁) ≤ W₂` (`typeP_centralizer_uW1_le_W2`) this discharges the `C_H(U W₁) = 1` input of (9.3) for types III/IV from `|W₂|` prime alone. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_centralizer_uW1_le_W2 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_U_not_centralizes_H /-! **Peterfalvi (9.6) the chief-factor order** (`Peterfalvi.S11`, conditional on the (9.4) chief factor `H̄ = H/H₀`). The `U W₁`-action on `H = M_F` descends to the chief factor `H̄` (`typeP_quotientCoprimeAction`, a `CoprimeFrobeniusAction`); `C_{H̄}(U)` is `U W₁`-invariant (`isAInvariant_fixedSubgroup_of_normal`, `U ◁ U W₁`) so vanishes by irreducibility, and Wielandt's formula together with the prime computation `coprimeFrobeniusAction_card_eq_prime_pow` gives `|H̄| = |C_{H̄}(W₁)|^q = p^q` — using that `C_{H̄}(W₁)` is the image of the cyclic `W₂ = C_H(W₁)` (Isaacs Cor 3.28), hence cyclic of order dividing the exponent `p` (`card_dvd_prime_of_isCyclic_of_pow`). The Wielandt content of (9.6) is fully discharged (`typeP_chiefFactor_card`); the remaining gap is the (9.4) existence of the chief factor. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.coprimeFrobeniusAction_card_eq_prime_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.isAInvariant_fixedSubgroup_of_normal #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_quotientCoprimeAction #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.card_dvd_prime_of_isCyclic_of_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_chiefFactor_card #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_U_noncentral_on_H #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.eq_top_of_forall_sylow_le #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_characteristic_complement_to_sylow_of_nilpotent #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_chiefFactor_seed -- The chief-factor kernel and its elementary-abelian + `U W₁`-irreducible + `U`-noncentral -- structure of `H̄ = H/N` is axiom-clean. -- ⚠ 旧注記「`exists_chiefFactorData` は still-`sorry`'d な `theorem88_caseB_prime_orders` を -- cite するので axiom-clean でない」は **stale** (2026-07-27 実測): `S12_MaximalIII_IV_V.lean` は -- sorry ゼロで、`theorem88_caseB_prime_orders` は `caseB_typeP_prime_W1` から実証明されている。 -- 下に両方を登録した (= Pf (10.11) 第 1 主張)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_chiefFactor_kernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.theorem88_caseB_prime_orders #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_chiefFactorData #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_quotient_card -- **(9.6) type-uniform** (all of types II, III, IV — the book's own scope): `U ≠ C` for the -- chief-factor centralizer `C = C_U(H̄)` (`cSub`), `|W̄₂| = p` for the *image* `W̄₂ = C_{H̄}(W₁)`, -- and `|H̄| = p^q`. Stating the image `W̄₂` and the chief-factor centralizer — the objects that -- Hypothesis (9.5) actually fixes — removes the former type-III/IV restriction, which was an -- artifact of substituting `W₂` for `W̄₂` and `C_U(H)` for `C_U(H̄)` (these coincide only when -- `H₀ = 1`). Given the carrier, all three clauses are axiom-clean. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.cSub_subgroupOf_U_eq_ker_map #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_cSub_ne_U #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_U_not_centralizes_H #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_basic #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.iSup_smul_eq_top_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.card_eq_pow_of_iSup_aInvariant_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.isAInvariant_comp_subtype_pointwise_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.forall_aInvariant_le_pointwise_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.card_pointwise_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_clifford_dim_dvd_q #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_clifford_U_dichotomy #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.elabRepresentation_isIrreducible -- thin subgroup→module Singer adapter (issue 9000 dedup): the former subgroup-level Singer -- wrappers are retired; §9 case-(b) cites the shared `SingerField`/`SingerLineBound` leaves -- through this single conversion. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.singerAdapter_isCyclic_card_dvd -- (9.7)(b) structural core: an irreducible action with commuting image is fixed-point-free off the -- kernel (the Frobenius structure `H̄ ⋊ Ū`). Pure group theory — no Singer field model needed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.fixedPointFree_of_aInvariant_irreducible_comm -- character-side FPF: a fixed-point-free automorphism of a finite abelian group leaves no nontrivial -- character invariant (the inertia `I_U(θ) = C` engine of Peterfalvi (9.9)), via mathlib's -- `commutatorMap_surjective`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.eq_one_of_invariant_of_fixedPointFree -- abelian `Irr ↔ Hom(·,ℂˣ)` bridge: an irreducible character of a finite commutative group is a -- linear character (1-dim rep ⟹ scalar action ⟹ character = the scalar hom). Lets the char-side -- FPF engine apply to genuine `Irr(H̄)` characters (realization-free inertia route for (9.9)). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_units_monoidHom_of_isIrreducibleCharacter_of_isMulCommutative -- (9.9.a) character-side inertia `I_U(θ) ⊆ C`: a nontrivial irreducible character of the chief -- factor `H̄`, invariant under `φ_U(g)`, forces `φ_U(g) = 1` (`g ∈ C`). Realization-free -- (FPF core + abelian Irr↔Hom bridge + char-side FPF engine). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_caseB_char_inertia -- (9.9.a) inflation equivariance + abstract inertia reduction: the inflation `compHom (mk' N)` -- intertwines the conjugation action `typeP_conjAction a` upstairs with the descended `φ_U` action -- downstairs, reducing the concrete conjugation invariance of an inflated character to the abstract -- `φ_U`-invariance that `chiefFactor_caseB_char_inertia` consumes (`typeP_conjAction`-inv ⟹ `φ_U=1`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.compHom_typeP_conjAction_inflation #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_char_inertia_inflation -- (9.9.a) realization: the iso `↥(H-in-HU) ≃* ↥H` preserves the underlying `G`-element, so it -- intertwines the concrete `HU`-conjugation `conjBy g` with the abstract `typeP_conjAction a` -- (same `G`-image `↑g = ↑a`). This is the last realization step feeding `caseB_char_inertia_inflation`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.hInHuEquivH_coe #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.conjBy_compHom_hInHuEquivH -- (9.9.a) capstone: concrete `HU`-inertia of the realized inflation of a nontrivial `θ̄ ∈ Irr(H̄)` -- forces `φ_U(a) = 1` (`a ∈ C`) — the character-side inertia `I_U(θ) ⊆ C`, fully concrete -- (realization + inflation injectivity + `chiefFactor_caseB_char_inertia`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_inertia_realized -- §9 degree infrastructure: `[M:HU] = q` (`HU = M'`, `[M:M'] = |W₁|`) and the resulting -- `(Ind_{HU}^M χ)(1) = q·χ(1)` — the degree formula every (9.8)/(9.9) count uses. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.huSub_index_eq_q #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.induceHU_apply_one_eq_q_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.card_range_dvd_card_sub_one_of_prime_card #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeP_commutator_U_centralizes_H -- **Peterfalvi (8.5)(c)** (issue 0172、2026-08-08): 書籍は「`V` は正規化群 `W` を持つ `G` の -- TI-subset」と述べる。2 つの半分がそれぞれ: -- TI 半分 `S10.typePData_V_ti : IsTISubset (typePV M data) data.W` -- 正規化群半分 `TypePData.normalizer_V` を `X = V` に適用 (`V` の非空性は -- `S12.typePData_typePV_nonempty`)。これは書籍 (8.4)(e) の projection で、 -- (8.5)(a) が `fitting_eq` の projection なのと同じ構図。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePData_V_ti #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_caseB_image_cyclic #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.singerAdapter_coprime_fpf -- **(9.7)(a) の書籍 `a`-形** (issue 0152, 2026-07-26): 書籍は `a = |U : C_U(H₁)|` を定義して -- 「`a ∣ p−1` かつ `U` は位数 `a` の巡回群 `q−1` 個の直積の部分群」と主張する。repo には -- `a`-torsion 形の埋め込み (`exists_blockScalarRatioEmbedding_of_blocks_pow_eq_one`) は在ったが -- 位数の割り切りが `p−1` 形だけだったので、共通像 `A ≤ 𝔽_p^×` を明示に取る形を追加した: -- `|U| ∣ |A|^n` かつ `|A| ∣ p−1`。`A = ⊤` で従来の `card_dvd_pred_pow_of_blocks` に戻る。 -- 残り = `A = im φ₁` を `W₁`-共役から produce する S11 側の step (issue 0152)。 #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_pow_card_of_block_scalars_mem #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_subgroup_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_blockScalarOrder_pow_of_blocks -- ブロック間の一致 (書籍「`U/C_U(H_i)` は**全ての `i` で**位数 `a` の巡回群」) の generic 核: -- 線表現の同変同型に沿って scalar character が移り (`lineScalarChar_comp_of_equivariant`)、 -- 添字の付け替え `σ` が全射なら**像が一致する** (`_range_eq_of_equivariant`)。 -- `W₁`-共役 `H_i = H₁^{w_i}` はまさにこの形 (σ = `u ↦ w_i⁻¹ u w_i`、`U` の自己同型)。 -- `a` が書籍の `|U : C_U(H₁)|` であることは ker = ブロックの各点固定化群 + 第一同型定理。 #assert_only_allowed_axioms OddOrder.RepresentationTheory.lineScalarChar_comp_of_equivariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.lineScalarChar_range_eq_of_equivariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_blockScalarRange_pow_of_blocks #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_lineScalarChar_range_eq_index #assert_only_allowed_axioms OddOrder.RepresentationTheory.lineScalarChar_ker_eq -- 巡回群では位数が部分群を決めるので、ブロックごとの像の**位数**が一致するだけで像が一致する -- (`𝔽_p^×` は巡回)。⟹ S11 側は「共役が `C_U(H₁)` を `C_U(H_i)` に写す ⟹ 指数が等しい」だけ -- 示せばよく、ブロックを表現として同型に組む plumbing が要らない (issue 0152)。 -- `MulAut` 作用の**各点固定化群** (作用する側で取る) と、部分群を自己同型で移したときの共役性: -- `ptStab φ (g • J) = σ (ptStab φ J)` (σ = g による共役)。⟹ 指数が等しい。 -- Pf (9.7)(a) の「`U/C_U(H_i)` は全ての `i` で位数 `a`」の群論核 (issue 0152)。 #assert_only_allowed_axioms Subgroup.ptStabOfMulAut_smul #assert_only_allowed_axioms Subgroup.index_ptStabOfMulAut_smul #assert_only_allowed_axioms Subgroup.index_ptStabOfMulAut_subtype_smul -- S11 側の供給: `U W₁` の誘導自己同型は `Ū = range (uActionHom)` を正規化する -- (`uActionHom` = `quotientMulAutHom` の `U` への制限 + `U ⊴ U W₁`)。これが Pf (9.7)(a) の -- 「ブロックによらない `a`」の群論入力 (issue 0152)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.range_uActionHom_conj_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.range_uActionHom_conj_inv_mem #assert_only_allowed_axioms OddOrder.GroupTheory.eq_powMonoidHom_ker_card #assert_only_allowed_axioms OddOrder.GroupTheory.Subgroup.eq_of_card_eq_of_isCyclic #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_dvd_blockScalarRange_pow_of_blocks_card_eq -- 2 結論を 1 呼び出しで返す束ね: 呼び出し側は §9 の crux `hconst` を 1 回だけ discharge すれば -- よく、`refine … ?_ ?_` の目標がすべてこの signature から elaborate されるので -- `Semiring (ZMod p)` の instance 経路が割れない (issue 0152 の実測)。 #assert_only_allowed_axioms OddOrder.RepresentationTheory.blockScalarFacts_of_blocks #assert_only_allowed_axioms OddOrder.GroupTheory.ker_lineScalarChar_aInvariantSubrep -- **Pf (9.7)(a) の書籍 `a`-形が閉じた** (issue 0152 完了, 2026-07-27): -- `caseA_blockScalarFacts` の第 2 結論 `∃ a, a ∣ p−1 ∧ u ∣ a^{q−1}` が書籍 p.51 の -- 「`a = |U : C_U(H₁)|` は `p−1` を割り、`U` は位数 `a` の巡回群 `q−1` 個の直積の部分群」。 -- ブロックが `W₁`-移動 `Hpart j = w_j • S₀` ゆえ各点固定化群が共役 ⟹ 指数一致 ⟹ -- ブロックスカラー像の位数一致 ⟹ (𝔽_p^× が巡回ゆえ) 像そのものが一致。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_blockScalarFacts -- Peterfalvi (9.7)(b): `Coprime |Ū| (p-1)` (fixed-point-free) and the resulting unconditional -- divisibility `|Ū| ∣ (p^q-1)/(p-1)`. The FPF input `C_Ū(w₀) = 1` is supplied from the Frobenius -- structure of `U W₁` via Isaacs Cor 3.28 (`coprime_fixedPoints_quotient`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_caseB_image_coprime #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_caseB_image_dvd_norm -- (9.7)(b): the `U`-action on `H̄` is fixed-point-free off `C = C_U(H̄)` (Frobenius `H̄ ⋊ Ū`), -- the structural input of Peterfalvi (9.9)'s degree-`u` Clifford analysis. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_caseB_action_fpf -- Peterfalvi (9.7): the Clifford dichotomy, fully packaged into the carriers `CliffordCaseAData` / -- `CliffordCaseBData`. Case (b) wires the Singer divisibilities (with `chars.u = |Ū|` pinned); case -- (a) builds the `q` order-`p` factors (the `SupIndep` orbit family) and the bound `a ∣ p-1` (the -- restricted `U`-action on an order-`p` factor). All axiom-clean. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_supIndep_aInvariant_family_of_iSup #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.aInvariantRestrictAut_range_card_dvd #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.clifford_caseB_data #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.clifford_caseA_data #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.clifford_dichotomy -- Peterfalvi (9.10), trigger form: the exceptional hypothesis alone selects Clifford case (b) -- (case (a) is refuted by its own (9.8.c) degree-`q·u` irreducible, moved into `𝒮(H₀C′)` by -- `Cprime_le_C` + `sOf_antitone`), so the theorem no longer takes the case carrier as input. set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exceptional_case_frobenius_realization_of_trigger /-! **Peterfalvi (9.7.b) chief-factor Galois-field model, axiom-clean** (lane a, issue 1031). The actual case-(b) irreducibility proof feeds the shared faithful irreducible Singer constructor, giving `H/H₀ ≃+ GF(p^q)` and an injective scalar realization of `Ū`. When `C_U(H/H₀) = 1`, the model transports along `U.subgroupOf (U ⊔ W₁) ≃ U`; no legacy opaque `field_model` is used. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_exists_galoisField_repr #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.uActionHom_injective_of_cSub_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_exists_galoisField_repr_of_cSub_eq_bot /-! **Peterfalvi (9.7.b) `W₁ ≅ Aut F` clause, axiom-clean** (lane a, issue 1043 (b)). The book upgrades `η(w)` from an additive to a *field* automorphism, then counts. Chain: base point `s ∈ W̄₂^#` (`chiefFactor_exists_fixedByE_ne_one`, from `|C_{H̄}(W₁)| = p`) normalizes the Singer model to `φ(s) = 1` (`…_basePoint`); `U*` generates `F` additively (`…_scalarRange_eq_top`); the twist identity `η(w)(μ u) = μ(w u w⁻¹)` — where `φ(s) = 1` and `s^w = s` collapse the displayed identity — gives multiplicativity against every scalar (`caseB_etaHom_mul_scalars`); the shared abstract layer `ringAutHomOfAddAutHom` then lands `η` in `RingAut F`; and injectivity (`w1ActionHom_injective`, via `|W₁| = q` prime and `p ≠ p^q`) plus `|Aut F| = q` (`natCard_ringAut_galoisField`) makes it onto. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_card_fixedByE #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.chiefFactor_exists_fixedByE_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_exists_galoisField_repr_basePoint #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_addSubgroup_closure_scalarRange_eq_top #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_etaHom_twist #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_etaHom_mul_scalars #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.w1ActionHom_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_exists_galoisField_repr_withAut #assert_only_allowed_axioms OddOrder.RepresentationTheory.ringAutHomOfAddAutHom_injective #assert_only_allowed_axioms OddOrder.RepresentationTheory.natCard_ringAut_galoisField #assert_only_allowed_axioms OddOrder.RepresentationTheory.addSubgroup_closure_eq_top_of_irreducible #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_normalized_of_scalar_model -- Peterfalvi §13 (= repo `S13_MaximalIII_IV`, types III/IV) structural cluster. After de-opacifying -- the `Hypothesis` scaffold (the `C = C_U(H)` field and the deleted opaque conclusion-Props), the -- two *unconditional* inclusions of (11.5)/(11.6) are axiom-clean: `secondDerived_le_HC` -- (`M'' ⊆ HC`, = (8.5.a) via `TypePData.secondDerived_le_fitting`) and `derivedU_le_C` -- (`U' ⊆ C`, = (8.5.b) via `S11.typeP_commutator_U_centralizes_H`). The reverse inclusions -- (`M'' = HC`, `C = U'`) are the coherence content of (11.5)/(11.6), gated on Theorem (10.8). #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.Hypothesis.secondDerived_le_HC #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.Hypothesis.derivedU_le_C -- (11.6) the `U`-centralizes-`H₀` clause via Wielandt (9.1): given `C_{H₀}(W₁) = 1` and `U ≠ 1`, -- the Frobenius kernel `U` centralizes the chief subgroup `H₀`. The Wielandt content (lane-h's -- `frobenius_kernel_centralizes_of_complement_fpf`) is axiom-clean; the fpf input is the §8 gate. #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.U_centralizes_H0_of_W1_fpf -- Same clause restated against the cleaner subgroup gate `W₂ ⊓ H₀ = ⊥` (the fpf input reduces to it -- via `H ⊓ C_G(W₁) = W₂`); isolates the genuine §8/chief obligation. #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.U_centralizes_H0_of_W2_inf_H0_bot -- (9.6)/(11.6) the genuine §8/chief input `W₂ ⊓ H₀ = ⊥`, discharged unconditionally: `|W₂| = p` prime -- + the chief-factor order `|C_{H̄}(W₁)| = |W̄₂| = p` (`coprimeFrobeniusChiefFactor_card`) show `W₂ ⊄ H₀`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.chief_W2_inf_H0_eq_bot -- (11.6) conjunct 2 fully assembled: `U` centralizes `H₀` with no character input (the above chief -- input feeds Wielandt (9.1)). This is the unconditional half of `core_structure`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.U_centralizes_H0 -- §16 character-data producer (`section16CharacterData`, POLE-1 `cd`) — S-side grid building blocks. -- `induce_compHom_subgroupCongr`: `Ind` is invariant under transporting the source subgroup along an -- equality (the cd-grid transport primitive). `Section16CharacterData.muS_definition`: the S-side -- (13.1.e) `mu_definition` identity `Ind_W^S(ω_{ij} − ω_{0j}) = δ_j(μ_{ij} − μ_{0j})`, read off the -- `certainTypeS` certain-type machinery (`chiColumn`/`columnFamily`) via the `tpW_subgroupOf_eq` -- W-identification + the (4.3.b)/(1.4) bridge `S06.induce_chiColumn_diff_mu_diff`. Both axiom-clean. #assert_only_allowed_axioms OddOrder.RepresentationTheory.induce_compHom_subgroupCongr #assert_only_allowed_axioms OddOrder.Section16CharacterData.tpW_subgroupOf_eq #assert_only_allowed_axioms OddOrder.Section16CharacterData.muS_definition -- S/T-shared-`ω` symmetry transport infrastructure (toward the `nu_definition` field, T-side). -- `monoidHom_eq_of_eqOn_W1_W2`: a linear character of `↥tp.W` is pinned by its `tp.W1`/`tp.W2` -- restrictions (the internal-product generating-set principle). `gridEquivE_coe`: the S-side -- W-identification equiv preserves the ambient `G`-element. `gridEquivE_mem_W1`/`_W2`: it carries -- `mp.K`/`mp.Kstar` elements into `certainTypeS.W1`/`W2`. All axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.monoidHom_eq_of_eqOn_W1_W2 #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_coe #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_mem_W1 #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_mem_W2 -- `omegaProdCharS_apply_mem_K`/`_Kstar`: `certainTypeS`'s product character, evaluated on a -- `gridEquivE`-transported `mp.K`/`mp.Kstar` element, keeps only the `W₁`/`W₂` factor (the -- `tp.W1`/`tp.W2`-restriction values feeding the symmetry). Axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaProdCharS_apply_mem_K #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaProdCharS_apply_mem_Kstar -- `omegaProdCharT_apply_mem_K`/`_Kstar`: the T-side mirror — `certainTypeT`'s product character on a -- `gridEquivE_T`-transported `mp.K`/`mp.Kstar` element keeps only the surviving factor (`mp.K` is the -- `W₂`-factor of `T`, `mp.Kstar` the `W₁`-factor). Axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaProdCharT_apply_mem_K #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaProdCharT_apply_mem_Kstar -- `chi2enum_zero` (step A): the `W₂`-column enumeration is normalized so column `0` is the trivial -- character (the `j = 0` base of `nu_definition`), mirroring the `w1CharEquiv 0 = 1` convention. #assert_only_allowed_axioms OddOrder.Section16CharacterData.chi2enum_zero -- T-side mirror of the W-identification infrastructure (step D), toward `nu_definition`. `certainTypeT` -- carries `mp.T` with the factors swapped (`W₁ = mp.Kstar`, `W₂ = mp.K`): `certainTypeT_W1_eq`/`_W2_eq` -- pin the factors, `k_le_T` places `mp.K ≤ mp.T`, `cardCertainTypeT_W1`/`_W2` match `tp.p`/`tp.q`, -- `tpW_subgroupOf_T_eq` identifies `tp.W.subgroupOf mp.T` with `certainTypeT.sdiff.W`, and -- `gridEquivE_T_coe`/`_mem_W1`/`_mem_W2` are the element-preserving T-side transport. All axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.certainTypeT_W1_eq #assert_only_allowed_axioms OddOrder.Section16CharacterData.certainTypeT_W2_eq #assert_only_allowed_axioms OddOrder.Section16CharacterData.k_le_T #assert_only_allowed_axioms OddOrder.Section16CharacterData.cardCertainTypeT_W1 #assert_only_allowed_axioms OddOrder.Section16CharacterData.cardCertainTypeT_W2 #assert_only_allowed_axioms OddOrder.Section16CharacterData.tpW_subgroupOf_T_eq #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_T_coe #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_T_mem_W1 #assert_only_allowed_axioms OddOrder.Section16CharacterData.gridEquivE_T_mem_W2 -- **cd `nu_definition` (piece 3, S/T-shared-`ω` symmetry)** — the harder of the two real Prop -- obligations of the cd producer. The shared `ω`-grid is re-expressed through `certainTypeT` by -- transporting the S-side index characters along `eTS` (G-element-preserving): `eTS_gridEquivE_T` is -- the round-trip; `colT_apply_mem_K`/`rowDualT_apply_mem_Kstar` are the matching of the T-side duals -- with the S-side index characters; `rowDualT_zero`/`rowT_zero` pin the `j = 0` trivial base (needs the -- step-A `chi2enum_zero`). `omegaS_eq_omegaT` is the symmetry (`monoidHom_eq_of_eqOn_W1_W2`), and -- `nuT_definition` is the `Ind_W^T(ω_{ij} − ω_{i0}) = δ'_i(ν_{ij} − ν_{i0})` identity (mirror of -- `muS_definition`, via `S06.induce_chiColumn_diff_mu_diff` T-side). All axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.eTS_gridEquivE_T #assert_only_allowed_axioms OddOrder.Section16CharacterData.colT_apply_mem_K #assert_only_allowed_axioms OddOrder.Section16CharacterData.rowDualT_apply_mem_Kstar #assert_only_allowed_axioms OddOrder.Section16CharacterData.rowDualT_zero #assert_only_allowed_axioms OddOrder.Section16CharacterData.rowT_zero #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaS_eq_omegaT #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_definition -- **Canonical T-side `ν`-grid supply (issue 1029)** — the certain-type construction supplies every -- grid-theoretic field of `NuGridSupplyData`: index negation/conjugation, irreducibility, -- row-injectivity, full orthonormality, degree congruence and base sign, row induction and reverse -- dichotomy, the (4.8) support estimate, and the (4.3.c) value identity. The separate structural -- field `V_commutative` is intentionally not included: it is a post-(14.9) type-II fact, not a -- property of the canonical character grid (issue 9096 API audit). #assert_only_allowed_axioms OddOrder.Section16CharacterData.colT_finNeg #assert_only_allowed_axioms OddOrder.Section16CharacterData.rowDualT_finNeg #assert_only_allowed_axioms OddOrder.Section16CharacterData.rowT_finNeg_eq_rowInv #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_irreducible #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_row_injective #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_orthonormal #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_degree_modEq_deltaPrime #assert_only_allowed_axioms OddOrder.Section16CharacterData.deltaPrimeT_zero_eq_one #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_rowSum_eq_induce #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_reducible_dichotomy #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_diff_support #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_apply_of_not_mem_W1 #assert_only_allowed_axioms OddOrder.Section16CharacterData.nuT_conj -- **cd `tau3` (piece 5, real Dade σ-integral)** — `tau3W` is the Peterfalvi (3.2) σ-isometry of the -- G-internal TI-cyclic structure on `W = tp.W = mp.K ⊔ mp.Kstar` (support `Ẑ = W \ (W₁ ∪ W₂) = -- S14.zTilde`), as an `IntegralCharacterMap`. The TI-set fact is read off the proven `BG §14 -- typeP_duality` (Theorem 14.7), the Dade isometry from the general §4 producer -- `S04.Hypothesis.fullDadeIsometryData` (`HConjInvariant` automatic since all `H(a) = ⊥`). The -- genuine (not formal) `τ₃` so that `η = τ₃ ∘ ω` is a real virtual character downstream. Axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W -- **cd grid property package (issue 3002)** — the (3.2)/(3.3)/(3.4) character-theoretic content of -- `tau3W`/`omegaS`, read off the `S05` σ-isometry lemmas (`sigmaIntegral_*`) through the extracted -- `tiCyclicW`/`tiCyclicWDadeApp` and the `S05` ω-orthonormality (`omega_inner`) transported along -- `gridEquivE` (`ClassFunction.inner_compHom_mulEquiv`). These discharge the grid property fields -- threaded onto `Section16CharacterData` / `Section16Inputs` / `S15.Hypothesis`, which the §15 norm -- cascade ((13.5)–(13.10)) consumes. Axiom-clean. #assert_only_allowed_axioms OddOrder.Section16CharacterData.tiCyclicW #assert_only_allowed_axioms OddOrder.Section16CharacterData.tiCyclicWDadeApp #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_isometry #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_trivial #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_mem_ZIrr #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_apply_of_regular #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaS_inner #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaS_apply_one #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaS_mem_ZIrr -- **Concrete eta-axis Galois orbits (issue 3004 frontier, lane c)** — the S-side dual -- enumerations are literal powers of prime-order generators. The S05 sigma transport therefore -- gives full class-function Galois orbits on both nonprincipal axes; the former row-only vanishing -- theorem is now just their pointwise zero corollary. These are concrete producer theorems and do -- not change the abstract S15 carrier signature. #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaSChar_row_eq_pow #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaSChar_column_eq_pow #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_omegaS_eq_sigma_omegaSChar #assert_only_allowed_axioms OddOrder.Section16CharacterData.omegaSChar_injective #assert_only_allowed_axioms OddOrder.Section16CharacterData.orderOf_omegaSChar_row_base #assert_only_allowed_axioms OddOrder.Section16CharacterData.orderOf_omegaSChar_column_base #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_omegaS_row_galois_orbit #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_omegaS_column_galois_orbit #assert_only_allowed_axioms OddOrder.Section16CharacterData.tau3W_omegaS_row_vanish_of_one_zero -- **cd producer (POLE-1 `charData`)** — `section16CharacterData_of_isMinimalSimpleOdd` packs the -- proven grid building blocks (`omegaS`/`muS`/`nuT`/`deltaS`/`deltaPrimeT`/`tau3W` with the -- `(13.1.e)` identities `muS_definition`/`nuT_definition`) into the `Section16CharacterData` carrier. -- The fields `Sset`/`Tset`/`A0S`/`A0T`/`tauS`/`tauT` carry honest placeholders (`∅`/`0`): they are -- verified-vestigial on the FT path (the §13/§16 contradiction in `S16_NonExistenceG` routes through -- `eta = τ₃ ∘ ω`, never the S/T-side coherent isometries), and `Hypothesis` places no `Prop` on them, -- so the placeholders add no unsound dependency. Closes one of the three POLE-1 producers -- (`mp`/`tp`/`charData`). -- -- ✅ **issue-3002 keystone (2026-07-05 landed; 2026-07-07 honest close, lane b)**: the producer -- also supplies the three Peterfalvi (3.9) η-grid Dade fields (`eta_intCast_of_coprime` (3.9.c) / -- `eta_principal_of_coprime` (3.9) / `eta_pair_of_coprime` (3.9.a)), now **all `sorry`-free**. -- The former (3.9.a) gate (`finNeg` index negation ≠ character inversion for the old -- nonconstructive enumerations) was closed by rebuilding `w1CharEquiv`/`chi2enum` as -- **power enumerations** of the cyclic duals (`S06.cyclicPowEnum` — Peterfalvi's own (3.5) grid -- indexing `ω_{ij} = ω₁^i ω₂^j`), under which `finNeg` *is* character inversion -- (`w1CharEquiv_finNeg`/`chi2enum_finNeg` → `omegaSChar_finNeg`), so -- `tau3W_omegaS_pair_of_coprime` follows from Galois-equivariance (`sigma_mapRingEquiv_comm` + -- `galoisMap_conj_omega`) and (3.9.c) integrality. Assertion re-enabled. #assert_only_allowed_axioms OddOrder.section16CharacterData_of_isMinimalSimpleOdd -- **Peterfalvi (5.7) standalone constant-degree coherence producer** — -- `coherent_of_constant_degree`: under Hypothesis (5.2) + equal degree, `S` is coherent. Proven by -- the one-shot auxiliary isometry `χⱼ ↦ β − (χ₀ − χⱼ)^τ` (`β = χ₀^{τ₁}` the common `R(χ₀)`-projection, -- independent of the auxiliary member by the (5.4.b) two-sided norm argument `pairDecomp_two_sided` -- and the 4-case independence `commonImage_inner`), fed to `coherentEqualDegree`; single-pair `S` -- routes to the (5.2.d) base case `isCoherent_pair_of_differenceImage`. All Dade-specific data -- (ℤ[Irr G]-membership of supported differences, support, `1 ∉ A`) are explicit hypotheses -- discharged by the §13 consumer. Axiom-clean. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.isCoherent_pair_of_differenceImage #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.pairDecomp_two_sided #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.commonImage_self #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.commonImage_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.xFamily_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.coherent_of_constant_degree -- Peterfalvi §10 (10.9) coherence-free support: the general Bessel `NC` bound -- `sigmaNC ψ ≤ ‖ψ‖²` (`ψ ∈ ZIrr G`, `⟨ψ, ψ⟩ = N ⟹ NC ≤ N`), generalising the norm-1/2 `σ`-image -- support bounds. Fully axiom-clean (the σ-grid orthonormality + integer Parseval). Used by the -- coherence-free (10.9) `inner_tau_muColumnZero_sub_zeta_alignedOmegaSigma_of_w1_lt_w2`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S05.TICyclicHypothesis.ncard_sigmaCoeff_ne_zero_le_of_inner_self_natCast -- **Peterfalvi (10.9), the book statement** (issue 0172 §10 audit) — -- `exists_residual_of_w1_lt_w2`: under Hypothesis (10.1), for `ζ` as in (10.2) with `w₁ < w₂`, -- `(μ_0 − ζ)^τ = ∑_{0≤i 1` branch of Theorem D(3). All axiom-clean. -/ #assert_only_allowed_axioms Subgroup.IsComplement'.inf_centralizer_of_normalizer #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.signalizer_centralizer_isComplement #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.RData_of_gt_one /-! **Theorem D(3) full `hD3`** (`S16_MainResults`; lane δ, issue 8020). The `|𝓜_σ(x)| ≤ 1 ⟹ C_G(x) ≤ M` dichotomy (`centralizer_le_of_maximalSigma_le_one`, the shallow converse of the singleton lemma, Coq `not_sCX_M` direction) plus the `> 1` branch (`RData_of_gt_one`) assemble the full `∀ x ∈ M_σ^#, ∃ R, RData M x R` (`exists_RData_of_mem_sigmaSharp`), discharging the `hD3` conjunct of Theorem D. All axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.centralizer_le_of_maximalSigma_le_one #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_RData_of_mem_sigmaSharp /-! **Theorem D(3) `|R(x)| = |𝓜_σ(x)|`** (`S16_MainResults`, Coq `oR`; lane δ, issue 8020). The sharp-transitive `R`-action (`ConjSharplyTransitiveOn`) closed on `𝓜_σ(x)` (via `R ≤ C_G(x)`) gives the bijection `R ≃ 𝓜_σ(x)`, hence `|R| = |𝓜_σ(x)|` — the cardinality conjunct of the signalizer first block, foundation of BG Theorem E's Lemma 14.5(c) count. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.card_signalizer_eq_card_maximalSigma /-! **BG Lemma 14.5(a) `σ`-cover disjointness** (`S16_MainResults`, Coq `sigma_cover_disjoint`, `_of_inputs` form; lane δ, issue 8020). Distinct `σ`-length-one `x, y` give disjoint cover cosets `x·R(x)`, `y·R(y)`: a common `g = x·r = y·s` makes `{x}∪{r}^# = σ(g) = {y}∪{s}^#`, forcing `y = r`, `s = x`, whence `x` lands in the trivial intersection of the `y`-centralizer complement at `M' = N_x` (`signalizer_centralizer_isComplement`) — contradiction. The deep core of the 14.5(c) `R(x)`-cover trivIset. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.sigma_cover_disjoint_of_inputs /-! **Peterfalvi (5.3.b)/(14.9), T-side eta-grid orthogonality** (`S16_NonExistenceG`, lane c). A calT1 member difference is supported on `A₁(T) = (T')#`; the T-side Dade map is the restriction of the full type-P1 `A₀(T)` map, whose image vanishes on the regular `W`-set. The norm-two rigidity engine then makes each coherent image orthogonal to every `eta_ij`. Both the reusable support input and the final orthogonality theorem are axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.T_typeIII_calT1_difference_support #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.T_typeIII_coherent_image_inner_eta_eq_zero /-! **Peterfalvi (14.11.4) `ρ`-norm bridge** (`S16_NonExistenceG`, lane γ/POLE-2). The family-inequality `ρ`-norm `(toFamilyHypothesis71).chiRhoNormSq (ψ^{τ₁}) 0` equals the (7.8.b) coherence-norm `h78.zetaNuRhoNormSq`, since `S09.Hypothesis71.chiRho` depends only on the support hypothesis `H71.hyp` (not the Dade map `τ`): `chiRhoCF_congr_hyp` + `psi_tau1_eq` + `h78_hyp_eq`. The linchpin tying the (7.5) family-inequality layer to the (7.8.b) coherence-norm layer of (14.11.4). `chiRhoCF_congr_hyp` remains axiom-clean. The two `MHypothesis` projections below are temporarily not registered because their statements unfold the computed `h78` accessor and therefore inherit the existing upstream Dade-isometry `sorryAx`; neither proof body contains a sorry. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.chiRhoCF_congr_hyp /-! **Peterfalvi (7.8.b)/(14.11.4) lower bound** (`S16_NonExistenceG`, lane γ/POLE-2). The unconditional genuine content is `1 − e/k ≤ ‖ψ^{τ₁ρ}‖²`, where `e = |M:K|`. Combines the coherence-norm lower bound for `M` (`h78_zetaNuRho_normSq_ge`, the (7.8.b) `NormEstimates.zetaNuRho_norm_sq_ge` with `smallIndex` discharged) with the index identities `h78.kernelOrder = |K| = k` and `h78.complementIndex = |M:K| = e` (`h78_H_eq`/`e_eq_index` + Lagrange), and the norm bridge above. The conditional `normCascadeData` rewrites `e` to `p q` using (14.11.2). Its proof body is complete; its temporary AxiomsCheck omission is covered by the computed-`h78` disclosure above. -/ /-! **Peterfalvi (14.11.4) §8 support identity `A(M) = K#`** (`S16_NonExistenceG`, lane γ/POLE-2). For a Frobenius group `M` with kernel `N`, the centralizer-support `centralizerSupport N# M` is exactly `N#`: forward by the Frobenius FPF property `centralizer_kernel_le` (`C_M(x) ≤ N` for `x ∈ N#`), reverse by `x = y`. Applied with `N = K = M_F` this is `typeIA M = K#`, the §8 cardinality input `|A(M)| = k − 1` of (14.11.4) (Coq `PFsection14` `Dade_cover_inequality` `#|A| = k.-1`). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.centralizerSupport_sharpSubgroup_eq_of_frobenius /-! **Peterfalvi (14.10) `|M| = e k`** (`S16_NonExistenceG`, lane γ/POLE-2). The order of the type-I maximal `M`, from `[M : K] = e` and `|K| = k` by Lagrange (`card_mul_index` + `subgroupOfEquivOfLe`). The conditional (14.11.4) upper bound rewrites `e = p q` only after (14.11.2), yielding the denominator `|A(M)|/|M| = (k−1)/(kpq)`. (`card_typeIA_eq`, the numerator `|A(M)| = k − 1`, cites `typeI_frobenius` (12.7) so is body-honest but transitively gated on (12.16)/lane β, hence not registered here.) Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.MHypothesis.card_M_eq /-! **Peterfalvi (14.11.4) orbit measure of a TI-subset** (`S16_NonExistenceG`, lane γ/POLE-2). `orbit_normSq_term`: `|𝒞_G(A)|/|G| = |A|/|N|` for a TI-subset `A` with stabilizing normalizer-bound `N` — the real-valued form of `S14.ncard_conjClassSet_of_isTISubset` (`|𝒞_G(A)| = |A|·[G:N]`), via Lagrange. The reusable bridge turning each (14.11.4) orbit `(W#)^G`/`(P#)^G`/`(Q#)^G` into a `1/|N_G(·)|`-term. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.orbit_normSq_term /-! **Peterfalvi (14.11.4) `W`-orbit TI core** (`S16_NonExistenceG`, lane γ/POLE-2). `isTISubset_sdiff_sup_of_normalizer_eq`: the exceptional set `W − (W₁ ∪ W₂)` of a cyclic `W = W₁ × W₂` is a TI-subset with normalizer-bound `W`, given the singleton/subset normalizer fact `N_G(X) = W` — generalising `S12.typePData_V_ti` to the abstract `W`/`W₁`/`W₂` + `hnorm` inputs. The `W`-orbit TI input to the (14.11.4) §8 TI-count. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.isTISubset_sdiff_sup_of_normalizer_eq /-! **Peterfalvi (14.11.4) `W`-orbit measure** (`S16_NonExistenceG`, lane γ/POLE-2). The `W`-stab `conj_smul_sdiff_sup_eq_of_normalizer_eq` (`W ≤ N_G(set)` normalizes the set) and the assembled relative measure `orbit_sdiff_sup_normSq_term`: `|(W − (W₁∪W₂))^G|/|G| = |W − (W₁∪W₂)|/|W|`, combining the TI core, the `W`-stability, and `orbit_normSq_term`. The `W`-orbit term of (14.11.4), reduced to `hnorm` (= the §13 `normalizer_V` fact, from the partner type-`P` structure). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.conj_smul_sdiff_sup_eq_of_normalizer_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.orbit_sdiff_sup_normSq_term /-! **Peterfalvi (14.11.4) `|W − (W₁∪W₂)|` cardinality** (`S16_NonExistenceG`, lane γ/POLE-2). `ncard_sdiff_sup_add_eq`: `|W − (W₁∪W₂)| + |W₁| + |W₂| = |W| + 1` by inclusion–exclusion with `W₁ ∩ W₂ = {1}`. The numerator of the `W`-orbit term `|W − (W₁∪W₂)|/|W|` of (14.11.4). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.ncard_sdiff_sup_add_eq /-! **Peterfalvi (14.11.4) `P#`/`Q#`-orbit machinery** (`S16_NonExistenceG`, lane γ/POLE-2). The `P#`-stab `conj_smul_sharpSubgroup_eq_of_mem_normalizer` (`N_G(P)` permutes `P ∖ {1}`), the assembled measure `orbit_sharpSubgroup_normSq_term`: `|(P#)^G|/|G| = |P#|/|N_G(P)|` for a TI-subgroup `Subgroup.IsTI P` (= `IsTISubset (P ∖ {1}) (N_G(P))`), and the numerator `ncard_sharpSubgroup_add_one` (`|P#| + 1 = |P|`). The `P`/`Q` orbit terms of (14.11.4), reduced to `IsTI P`/`IsTI Q` and the `|N_G(P)|`/`|N_G(Q)|` sizes. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.conj_smul_sharpSubgroup_eq_of_mem_normalizer #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.orbit_sharpSubgroup_normSq_term #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.ncard_sharpSubgroup_add_one /-! **Peterfalvi (14.11.4) `G₀`-drop set reduction** (`S16_NonExistenceG`, lane γ/POLE-2). `MHypothesis.famG0_sub_filter_card_le_orbit_ncard`: `|famG₀| − |G₀| ≤ |(W−(W₁∪W₂))^G| + |(P#)^G| + |(Q#)^G|` (as `ncard`s), from `G₀ ⊆ famG₀` (`G0_off_dadeSupport`) and `famG₀ ∖ G₀ ⊆ orbits` (`G0_orbit_cover` carrier) via `Set.ncard_sdiff` + `Set.ncard_union_le`. The set-theoretic core of the §8 TI-counting of (14.11.4). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.MHypothesis.famG0_sub_filter_card_le_orbit_ncard /-! **Peterfalvi (8.17.c) `Ã₁`-disjointness bridge** (`S10_MinimalSimpleStructure`, lane β, issue 0096). The faithful (8.14) thickened `A₁`-support is the BG `M̃`-cover: `FT_signalizer_eq_Rsub_of_escape` reconciles the two Theorem-14.4 signalizer choices through the uniqueness of the maximal over `C_G(x)` (escape forces `1 < |𝓜_σ(x)|` via `centralizer_le_of_maximalSigma_le_one`, then `maximalSubgroupsContaining_centralizer_eq_singleton_of_sigmaSharp_escape` pins both `choose`s); `ftThickenedSupport_A1_subset_conjClassSet_Mtilde` sends `Ã₁(M) ⊆ 𝒞_G(M̃)` (escaping points are the defining `x·R(x)` generators, non-escaping points the bare `x·1`); and `ftThickenedSupport_A1_disjoint_of_nonconjugate` is the (8.17.c) disjointness for non-conjugate type-I/II maximals (Coq `FT_Dade1_support_disjoint`), by BG 14.5(b) (`conjClassSet_Mtilde_disjoint`). The `Ã₁`-side geometry consumed by (8.18.c) → (12.3) → (12.16). All three sorry-free; axiom-cleanliness gated on the BG `Mtilde`/Theorem-14.4 chain. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.FT_signalizer_eq_Rsub_of_escape #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftThickenedSupport_A1_subset_conjClassSet_Mtilde #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftThickenedSupport_A1_disjoint_of_nonconjugate /-! **Peterfalvi (8.18) mixed support disjointness, type-I pair** (`S10_MinimalSimpleStructure`, lane β, issue 0096). The (8.18.c) mixed `Ã₁(S) ∩ Ã(T) = ∅ ∨ Ã₁(T) ∩ Ã(S) = ∅` for non-conjugate type-I maximals — the geometric obligation of (12.3) — assembled genuinely from three precise §16 pins ((8.13.b) `escaping_typeIA_mem_A1`, (8.12.b) `typeI_centralizer_le_and_unique`, (8.13.c2/c4) `supported_sigma_coprime`): `mem_zpowers_mul_right_of_coprime` (the `π`-part power extraction, sorry-free/axiom-clean), `escaping_supported_of_A1_conj_mem_typeIA` ((8.18.a): `σ`-order bookkeeping via `sigma_disjoint_of_nonconjugate` + the unique-maximal pin), `exists_A1_conj_mem_typeIA_of_not_disjoint` ((8.18.b): escaping side lands in the PROVEN `Ã₁`-disjointness, non-escaping side collapses the coset by the power argument), and `ftThickenedSupport_mixed_disjoint_of_nonconjugate` ((8.18.c): two-sided support forces `orderOf x' ∣ gcd = 1`). Axiom checks record the pin-gating. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.mem_zpowers_mul_right_of_coprime /-! **BG Lemma 14.13(a)** (`S16_Lemma1413`, lane β, issue 9003 loop¹⁰³). The signalizer non-disjointness lemma `non_disjoint_signalizer_frobenius` — for `x ∈ M_σ^#` with `1 < |𝓜_σ(x)|` and `σ(N[x]) ∩ π(M) ≠ ∅`, `M` is type `F` with no `τ₂`-primes and Frobenius over `M_σ` — is **fully proved and axiom-clean**, closing the last Peterfalvi §8 type-I support pin (the (8.13.c2) cross-coprimality core `escaping_sigma_disjoint_centralizer` in S10). Assembled from: the type-`F`/no-`τ₂` Frobenius consequence (`typeF_frobenius_of_tau2_prime_free`), the reduction (13.9 non-conjugacy, Cor 12.14 `ℳ(C(Q))={Nᵍ}`, 12.1(g) `p∉β(M)`), the no-`τ₂` core (Cor 12.9 `commutator_decomp_of_tau1_action` + `exists_conj_smul_eq_of_le_of_card_prime` cyclic-Sylow conjugacy), and the type-`P₁` core (`kstar_isHall_sigmaM_of_partner` = Coq `Ptype_embedding`'s `sMhallKs`, via 14.2(f) `typeP_sigma_subgroup_le_Msigma` + σ-disjoint commutator). -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.non_disjoint_signalizer_frobenius #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.kstar_isHall_sigmaM_of_partner /-! **BG Lemma 14.13(b)** (`S16_Lemma1413`, `signalizer_neighbour_conjugator_in_M`): in the situation of Theorem 14.4 with `1 < |𝓜_σ(x)|`, if `y ∈ M_σ^#`, `C_G(y) ⊄ M`, and `N(y)^g = N`, then the conjugator can be chosen inside `M` (`∃ m ∈ M, N(y)^m = N`). The `M`-conjugation choice underlying Theorem II (Tii)(e). Proof (BG): the `x`- and `y`-side Thm D(4) complements of the normal Hall `N_σ ◁ N` are Schur–Zassenhaus-conjugate (`IsComplement'.exists_conj_of_coprime`), placing `M` and its conjugate in `𝓜_σ(x)`; Thm 14.4 sharp transitivity + `N_G(M) = M` yield `m ∈ M`. Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.signalizer_neighbour_conjugator_in_M /-! **BG Theorem II packaging** (`S16_MainResults.TheoremIIPackaging`, `theoremII_tamelyImbedded`): **both** `X = A(M) = ASet M U` and `X = A₀(M) = A0Set M K` are tamely imbedded subsets of `G` (`TamelyImbedded M X`) for an arbitrary maximal `M` of a minimal-simple odd `G`, **unconditionally** (hypotheses: only the standard `theoremII_tame_embedding` shape `hG, hM, K≤M, U≤M, hK, hU` plus the book's own `X = A(M) ∨ X = A₀(M)`). The two choices share one family: `escapingSharpSet_a0Set_eq_aSet` shows the escaping set `D` is literally the same set, and clause (c) is proved at the level of `\widehat{M_σ} ⊇ X`. Assembles (Ti) (`theoremII_tame_embedding`), the full (Tii) system of supporting subgroups — (a) via Thm E(2) σ-disjointness, (b) via Thm D(4) complements, (c) `coprime_centralizer_of_neighbour` via Lemma 14.13(a), (d) `clause_d_of_neighbour`, (e) via Lemma 14.13(b) + Thm D(3) — and (Tiii) `frobeniusTypeI_of_neighbour_typeII` (Thm D(4)'s `IsTypeP2 N → IsTypeF M`). Clause (d) (`A₀(Mᵢ) − Hᵢ` nonempty TI): Type-I via Thm B(5) with the type-F identity `A₀(Mᵢ)=A(Mᵢ)`; Type-II via Thm B(5) + Thm C(9) glued by the order-determined cross-piece exclusion (BG's "distinct orders"; Thm C(5) turned out **not** to be needed). Axiom-clean. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremII_tamelyImbedded #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.escapingSharpSet_a0Set_eq_aSet #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.aSet_subset_A0Set #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_systemOfSupportingSubgroups #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.exists_conj_smul_eq_of_le_of_card_prime /-! **Peterfalvi (14.11.3) support half, axiom-clean core** (`S16_G0Coprime`, lane c/γ). The concrete Frobenius-kernel model (`commute_inl_mem_range_inl`: in `F ⋊ U*` an element commuting with a nontrivial additive point lies in the kernel) and its `σ`-transport (`FieldNormalizerData.derived_inf_centralizer_le_P`: `C_{S'}(x) ≤ P` for `x ∈ P#` from the (14.2.a) carrier) — the (14.6)/(13.12) discharge engine for the `hfrob` input of the (14.11.3) coprimality chain. (The chain lemmas themselves — `not_mem_conjClassSet_sharp_W`, `orderOf_coprime_p_of_not_mem_conj`, … — are fully proven but inherit `sorryAx` from the `W₁ ≤ Q`/`reconciled_typePData_T` upstream cites; they join this list when the T-side reconciliation closes.) -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.commute_inl_mem_range_inl #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.FieldNormalizerData.derived_inf_centralizer_le_P /-! **Peterfalvi (9.7.b) faithful conjugation field carrier, axiom-clean** (issue 9097, lane a). The generic `ConjugationFieldModel` bridge constructs the actual additive `GF(r^s)` carrier and multiplicative complement character from an elementary-abelian kernel with a faithful abelian conjugation action. The first endpoint identifies every injective cyclotomic-order image with the norm-one units; the second packages that equality together with Singer's field construction and equivariance. These are the missing upstream inputs shared by the `P/U` and `Q/V` semilinear models. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.ConjugationFieldModel.range_eq_normOneUnits_of_injective_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.ConjugationFieldModel.exists_normOne_galoisField_conjugation_repr /-! **Peterfalvi (14.4)/(9.7.b) T-side field model, axiom-clean core** (issue 9078, lane c). The side-agnostic embedding `SemilinearFieldModel.fieldModelEmbedding` (injective `σ : F_{r^s} ⋊ V* →* G` with kernel `↦ E`, complement `↦ C`) and its lift-compatibility bridge `hcompatLift_of_equivariant`, together with the T-side producer `tFieldModelData_of_repr` (instantiating `E = Q`, `C = V`, `r = q`, `s = p`) and its `σ`-transport `TFieldModelData.derived_inf_centralizer_le_Q` (`C_{T'}(x) ≤ Q` for `x ∈ Q#`) — the T-side mirror of the `P`-side engine above. The symmetric swap construction now supplies the unconditional T-side case-(9.7.b) facts without the former asymmetric `S_typeP2` gate, so the assembled field model and its Frobenius-kernel consequence are axiom-clean as well. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.SemilinearFieldModel.fieldModelEmbedding #assert_only_allowed_axioms OddOrder.RepresentationTheory.SemilinearFieldModel.hcompatLift_of_equivariant #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.tFieldModelData_of_repr #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.TFieldModelData.derived_inf_centralizer_le_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.t_side_caseB_fieldModel #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.t_side_frobenius_kernel /-! **Peterfalvi (10.8) unconditional + (10.10) case-(a)/(c) engines, axiom-clean** (issues 1020/1021, lane a). The unconditional (10.8) `S_not_coherent_unconditional` (issue 1020 ★★★★), the (10.10) case-(a) coherence `typeV_caseA_coherence` (Sibley/(6.8) route, ticks 19–24), and the case-(c) coherence engine `typeV_caseC_coherence_engine` ((10.10.3)/(10.10.4) SHC route, ticks 26–33; its `hstruct`/`h8`/numeric pins are engine hypotheses, discharged by the (10.10.2) structure work). **The three (6.5) gate lemmas are now honestly closed** (issue 9089, lane a, 2026-07-12): the type-V `𝒮` noncoherence chain was unblocked by generalizing the §11/§13 six-two decomposition chain to be `htype`/`chief`-free (they were unused), and the `hcoh` irreducibility bridge (`induce_linear_isIrreducible` — a linear source of a type-`P` `Hypothesis` induces irreducibly, since the reducible-inducing sources are the nonlinear certain-type `χ_j`) was proven. So `typeV_sixFiveA_bound` / `typeV_sixFiveB_pGroup` / `typeV_sixFiveC_not_dvd`, the assembly `typeV_forces_coherence_v2`, and the (10.10) capstone `no_typeV_maximal_unconditional` are all axiom-clean — pinned below. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.S_not_coherent_unconditional #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.typeV_caseA_coherence #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.typeV_caseC_coherence_engine #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.induce_linear_isIrreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeV_sixFiveA_bound #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeV_sixFiveB_pGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeV_sixFiveC_not_dvd #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeV_forces_coherence_v2 #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.no_typeV_maximal_unconditional /-! **Peterfalvi (9.11.4) Mackey norm + support, axiom-clean** (issue 9083 Phase D, lane a). The averaging-projector coset-sum vanishing (the `⟨γ, ψ₁⟩ = 0` engine), the Mackey conjugation count `‖Ind_K^M 1‖²·|K|² = Σ_x |K ∩ ˣK|` with its `(H·U)·W₁`-fibred evaluation, the `γ = Ind_{HU₁}^M 1` context facts (support in `HU = M′`, degree `qa`, orthogonality to `Ind_{HU}^M 𝒳`, cleared norm `‖γ‖²·u = a·u + (q−1)a²` under the (9.11.2) TI-witness `NineElevenTwoTIWitness`), and the `Hypothesis`-level (9.11.4) bundle `caseA_nineElevenFour_norm_inputs` (`∃ N, N·u = (a+1)u + (q−1)a²` realized by an `A₀`-supported `α = γ − ψ₁ ∈ ℤ[Irr M]` with `‖α‖² = N` — the `hnorm` half of `NineElevenNormBound`; the `|𝒮₄| ≤ N` half is Phase E). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sum_apply_mul_eq_zero_of_not_subset_characterKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.inner_induce_trivial_induce_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.inner_induce_trivial_self_mul_card_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sum_card_inf_conjSMul_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.nineElevenGamma_inner_self_mul_u #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.nineElevenGamma_inner_induceHU /-! **Peterfalvi (9.11.1)/(9.11.2)/(9.11.6) Phase-E layers, axiom-clean** (issue 9083 Phase E, lane a). The (9.11.2) TI-witness discharge (`U₁ ∩ U₁^w = C` for `w ∈ W₁^#`, via the `W₁ ↔` Clifford-summand conjugation dictionary and the free-orbit structure of the summands), the (9.11.1) `𝒮₂ = 𝒮₁` extraction (the saturated-bound subset form and its degree form `nineElevenSTwoExtraction`), the Bessel constituent count, the `hunif`-free member `R`-dispatch cross-orthogonality, and the `τ₃`-coherence of `𝒮₃` (Peterfalvi (5.7) at the uniform degree `qu`). The `Hypothesis`-level corollaries (`caseA_nineElevenTwo_tiWitness`, `nineElevenNormBound_of_sevenEightRefutation`) were long annotated here as carrying a "pre-existing upstream `C_eq_cSub` sorryAx debt". **That note was stale** (2026-07-19 lane a, verified by `#print axioms`): `C_eq_cSub_of_noncoherent` (`S13_CoreStructure.lean:511`) and the whole chain are sorry-free, so the corollaries are axiom-clean and are pinned below. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.nineElevenTwoTIWitness_of_degree_dichotomy #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.conj_smul_cuSubOf_of_Hpart_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.forall_w1_exists_Hpart_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.caseA_sTwo_subset_degreeQaCut #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.card_le_inner_self_re_of_orthonormal_inner_int_ne #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.sOf_H0Cprime_memberRFamily_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.caseA_sThree_coherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.caseA_nineElevenTwo_tiWitness /-! **Peterfalvi (9.11.7)–(9.11.8) coherent-pair adjunction, axiom-clean** (issue 9083 Phase E-final, lane a). The union-pair coherent extension (Coq `extend_coherent_with` + `bridge_coherent`, Peterfalvi (5.6.3)), the (5.5) partial-sum evaluation of coherent extensions (Coq `mem_coherent_sum_subseq`), the `coherent_ortho` cross-orthogonality, and the (9.11.7)–(9.11.8) projection budget (`‖Γ‖² = 1`, `Δ = 0`, `b = 0`, and the bridge `β^τ = Γ − e·τ₁ψ₁`). The discharge `nineElevenSevenEightRefutation` and the (9.11) capstones `coherent_sOf_H0Cprime` / `coherent_sOf_H0C` were long annotated here as carrying a "pre-existing upstream `C_eq_cSub` sorryAx debt". **That note was stale** (2026-07-19 lane a, verified by `#print axioms`): all three depend only on `propext` / `Classical.choice` / `Quot.sound`, so they are pinned below together with the (9.11) capstones. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.unionPairExtension #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.isCoherent_union_pair_of_bridge #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.coherent_extension_eq_sum_memberRFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.coherent_sOf_H0Cprime #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.coherent_sOf_H0C #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.exists_bridge_target_of_budget /-! **Peterfalvi (8.13), axiom-clean** (lane a, 2026-07-12). The escaping-centralizer control: for `X = A₁(M)` (any Peterfalvi type) or the type-`P₁` `A₀(M)` (`typePA0`; the `P₁` restriction is honest — issue 9008: `typePA0` over-claims for type II), every `x ∈ X` with `C_G(x) ⊄ M` lies in `A₁(M) = M_σ^#` and `C_G(x)` sits inside a *unique* maximal subgroup of type I/II. Pure assembly of the BG §16 signalizer machinery (`A1_eq_sigmaSharp`, `escaping_typePA0_mem_sigmaSharp_of_isTypeP1`, `existsUnique_maximal_centralizer_le_typeI_or_typeII` — BG Theorem II / B(5) / D(4), the book's Reference line), all of which is axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escapingCentralizers_control /-! **The `W₁`-orbit congruence `u ≡ 1 (mod q)`, axiom-clean** (lane a, 2026-07-12, issue 1024). The Frobenius fixed-point-freeness of the `W₁`-conjugation on the `U`-action image `Ū = U/C_U(H̄)` (`fixedSubgroup_quotient_uActionKer_eq_bot`, the coprime descent of `C_U(W₁) = 1`), and the prime-order orbit count `|Ū| ≡ 1 (mod q)` — the `q ∣ u − 1` input of the Peterfalvi (11.9.c) non-Galois contradiction `q ≤ u − 1 < u = a ≤ p − 1 < p`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.fixedSubgroup_quotient_uActionKer_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.card_uActionHom_range_modEq_one /-! **ZIrr-Galois 内積 transport (shared leaf), axiom-clean** (lane a, 2026-07-12, issue 9085). `mapRingEquiv` の ZIrr 上 ℤ-等長性と Galois 係数定数性 engine — (10.9)/(11.9.a) 型 grid 解析の (3.9.b) 行/列定数性の generic 核 (S16 TGapGalois の generic 部 hoist)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.inner_mapRingEquiv_eq_of_mem_ZIrr #assert_only_allowed_axioms OddOrder.RepresentationTheory.ClassFunction.inner_eq_intCast_of_mapRingEquiv_eq_add #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.inducedFamily_closedUnderMapRingEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.mapRingEquiv_muColumnZero_sum /-! **(3.9.b) chiFam pair-move (Galois 転送), axiom-clean** (lane a, 2026-07-12, issue 1024 G3). 素数位数 W₁/W₂ 側の punctured 行/列上で (3.5) family の 2 点が Galois 共役 — (11.9.a) 行0射影の 係数定数性入力。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S05.TICyclicHypothesis.exists_mapRingEquiv_chiFam_left_move #assert_only_allowed_axioms OddOrder.Peterfalvi.S05.TICyclicHypothesis.exists_mapRingEquiv_chiFam_right_move /-! **(11.9.a) Galois 補正層 (S13_TypeIIIGalois), axiom-clean** (lane a, 2026-07-12, issue 1024 C0). Galois twist の S(HC)-stratum 安定性、τ(ζ−σζ) の τ₁-展開、および補正項の grid 直交 — a_aut 定数性 engine への hcorrection 供給。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.mapRingEquiv_mem_SHC_stratum #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.tau_zeta_sub_mapRingEquiv_eq_SHC_extension #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.tau_zeta_sub_mapRingEquiv_inner_alignedOmegaSigma_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.w1_prime_of_typeIIIorIV #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.mapRingEquiv_tau_muColumnZero_sub_zeta #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.inner_tau_muColumnZero_sub_zeta_columnZero_const #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.inner_tau_muColumnZero_sub_zeta_rowZero_const #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_sq_inner_le_of_orthonormal /-! **Peterfalvi (11.9.a) 行0射影, axiom-clean** (lane a, 2026-07-12, issue 1024). h118 ((11.8) 非直交) 下で τ(μ₀−ζ) の σ-grid 係数 = 行0 indicator。a₀₀=1 + Galois 定数性 + (3.7) 分離 + Bessel (w₁+1 予算) + 整数 case 分析 (列0形は h118 で排除) の完全組立。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.alignedOmegaSigmaGrid_columnZero_sum_inner #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.inner_tau_muColumnZero_sub_zeta_rowZero_of_residual_not_orthogonal #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_exists_irreducible_qa #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_a_dvd_u #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.rowInv_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.certainTypeRImage_conj /-! **Peterfalvi (11.9.c) 非Galois u=a pin 部品, axiom-clean** (lane a, 2026-07-12, issue 1024). muColumnChar_zero / exists_muColumnChar_inv = Pontryagin 逆列 index。keystone `caseA_u_eq_a_of_residual_not_orthogonal` (u=a pin 本体) は証明完備。 ⚠ **訂正 (2026-07-12 lane-a census、issue 9088)**: 残 dirty は「lane-b の (9.11.2) refuter sorry」 **でない** — `coherent_sOf_H0Cprime`→`nineElevenSevenEightRefutation` (body sorry-free) の optParam DEFAULT `(hncH0C := S_H0C_not_coherent)` `(htype := isTypeIIIorIV)` = **lane-a の (10.8)/(10.10) legacy 汚染 (issue 1025 [[lean-optparam-default-contaminates-axioms]])**。honest heir (`S_H0C_not_coherent_unconditional`/`no_typeV_maximal_unconditional`) 既存。着地 = 1025 の optParam→explicit+wrapper rework を (9.11)/(11.9) chain に適用時。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.muColumnChar_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.exists_muColumnChar_inv /-! **Peterfalvi §11 (11.4)–(11.9.a) の無条件形, axiom-clean** (issue 0172 §11 監査、2026-08-07). 書籍は (11.4)–(11.9) を Hypothesis (11.2) だけの下で述べる。repo はこれらを **(11.3) の 非coherence `hnc` をパラメータで受けた形**で証明していた — 無条件の (11.3) (`S_H0C_not_coherent_unconditional`) は Theorem (10.8) 経由なので、(11.5)–(11.7) を証明する ファイル (`S13_CoreStructure` / `S13_Lemmas113To115`) より**下流**に居るという層順の都合。 両側を import する `S13_NonGaloisExclusion` で一度だけ discharge し、書籍の statement を そのまま cite できるようにした (循環なし: (11.3) の証明は `S(H₀C)` への Theorem (6.3) + (10.8) で、(11.5)–(11.9) を一切使わない)。 * (11.4) `coherent_quotient_bound` — `|M' : H₁| ≤ 2q|U : C| + 1` * (11.5) `secondDerived_eq_HC` — `M'' = HC` * (11.6) `core_structure_unconditional` — `H` が `p`-群 / `U` が `H₀` を中心化 / `H₀ = H'` / `C = U'` * (11.7) `H_elementaryAbelian_unconditional` — `H` は位数 `p^q` の基本可換 `p`-群、`H₀ = 1` * (11.8) `zeta_residual_not_orthogonal_unconditional` — 書籍の `∀ ζ ∈ 𝒮(HC)` 形。 **列**-`0` 残差 `(μ₀ − ζ)^τ − ∑_{0≤i m·p^{q−1}/q`) にする。(13.11) の 3 条項も同様に `numeric_bounds_of_lambdaCluster` で書籍の仮説へ揃えた。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.analytic_inequality_of_lambdaCluster #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.numeric_bounds_of_lambdaCluster /-! **Peterfalvi (13.2)(e) の書籍形, axiom-clean** (issue 0172 §13 監査、2026-08-07). 書籍 p.75:「`A₀(S)` は正規化群 `S` を持つ `G` の TI-部分集合であり、`A₀(S)` に関する Dade 等長 `τ` は `Ind_S^G` と一致する」。両半分 (`isTISubset_typePACore` / `sInstance_dade_eq_induce`) は既存 だったが、carrier `BasicStructureGated`/`BasicStructureData` は (13.2.e) を **`Prop` 値データ フィールド** `A0S_TI` / `tauS_eq_induction` としてしか露出しておらず、producer `basic_structure_gated` はそこに **`True`** を入れていた — headline `basic_structure` の結論の 最終連言が `data.A0S_TI` = `True` で**空**だった。`A0S_normedTI` で 2 条項を束ね、Type-V 排除を Theorem (10.10) `no_typeV_maximal_unconditional` で discharge (書籍にその仮説は無い)。 `basic_structure` の結論も本物の `IsTISubset` へ差し替え済。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.A0S_normedTI #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.basic_structure /-! **nilpotent + cyclic abelianization ⟹ cyclic, axiom-clean** (lane a, 2026-07-12, issue 9086). Pf (11.9.c) caseB 帰結の一般群論 engine (mathcomp `cyclic_nilpotent_quo_der1_cyclic` 対応): 下降中心列の安定化 (γ₂ ≤ ⁅γ₂,⊤⁆) + center-quotient cyclic → abelian。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.commutator_eq_bot_of_isNilpotent_of_isCyclic_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_isNilpotent_of_isCyclic_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_isNilpotent_of_ker_le_commutator /-! **Peterfalvi (11.9.b) character core `card_kappaHall_lt_of_isTypeIIIorIV`, axiom-clean** (lane a, 2026-07-13, issues 1025/9091). The FT-spine endpoint `|K*| < |K|` for a type-III/IV maximal subgroup — the honest heir of the retired legacy chain — is now `#print axioms`-clean: the (10.8) legacy `S12.S_not_coherent` (bare-sorry `typeII_coherence_contradiction_estimate`) and the (10.10) legacy `no_typeV_maximal` (bare-sorry `typeV_forces_coherence`) are fully rewired to their axiom-clean heirs `S_not_coherent_unconditional` / `no_typeV_maximal_unconditional` (`S12_Noncoherence`) via `isTypeIIIorIV_unconditional` + the `_of_noncoherent` explicit-parameter threading through the §11/§13 (11.3)-noncoherence chain (the optParam-DEFAULT contamination of commit 435b057a replaced by explicit params + legacy wrappers, [[lean-optparam-default-contaminates-axioms]]). `card_kappaHall_lt_of_isTypeP1` (the type-`P₁` consumer) is clean as a corollary. ⚠ `feitThompson` itself remains sorry-dirty via **other** consumers (cross-lane §14/§15/§16 T-side + the legacy `no_typeV_maximal`/`S_not_coherent` still cited off the card_kappaHall subtree); the spine character core is the lane-a contribution. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.isTypeIIIorIV_unconditional #assert_only_allowed_axioms OddOrder.card_kappaHall_lt_of_isTypeIIIorIV #assert_only_allowed_axioms OddOrder.card_kappaHall_lt_of_isTypeP1 /-! **Peterfalvi (8.17) BG-Theorem-E cover interface `bgTheoremE_cover_data`, axiom-clean** (lane a, 2026-07-13, issue 9087 census 訂正). The §10 covering interface (representatives of maximal conjugacy classes, `π(G)` partition by the `π((M_i)_s)`, thickened `A₁(M_i)` counts) is fully proven off the BG §14/§16 σ-decomposition layer (`genuineSigmaDecomposition`, `exists_peterfalviType`, `mainSubgroup_eq_Msigma`). Tripwire: this is the B2 input (`card_LF_coprime_pq`, §15 gate 4) and the (12.9) `exists_second_maximal` cover step. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.bgTheoremE_cover_data /-! **Peterfalvi (14.9) T-side type-III determination `T_isTypeIII_of_isTypeP1`, axiom-clean** (lane a, 2026-07-13, issues 9077 T1 / 9093). The `hVcomm` residual (`V` abelian, (11.9)-gated) of `T_not_isTypeIV_of_isTypeP1` is discharged by the universal (11.9.c) Type-IV exclusion `not_isTypeIV_of_mem_maximalSubgroups` (`S13_NonGaloisExclusion`, sorry-free), citable from §16 after the 9093 import inversion broke the `S13_NonGaloisExclusion → §16` transitive edge. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.T_not_isTypeIV_of_isTypeP1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.T_isTypeIII_of_isTypeP1 /-! **Peterfalvi (8.17.a) coprimality (gate-4 B2) `card_LF_coprime_pq`, axiom-clean** (lane a, 2026-07-13, issue 9087 RULING #4 carve-out). For a type-I maximal `L` not conjugate to `S`/`T`, `|L_F| ⟂ pq` — proven from the BG-Theorem-E cover (`bgTheoremE_cover_data`, `primeFactors_disjoint`) by transporting `p ∈ π(S_σ)`, `q ∈ π(T_σ)`, and `π(L_F) = π(L_σ)` along `Msigma_conj_smul` to the conjugacy representatives. The (13.17.b) type-I-branch kernel coprimalities `q_not_dvd_kernel` / `p_not_dvd_kernel` are clean as corollaries. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.card_LF_coprime_pq #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.q_not_dvd_kernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.p_not_dvd_kernel /-! **Frobenius kernel contains the Fitting subgroup `IsFrobeniusGroup.fitting_le_kernel`, axiom-clean** (lane a, 2026-07-13, issue 9087 RULING #4 carve-out, 2/3). A normal `p`-subgroup of a Frobenius group lies in the kernel (`normal_pGroup_le_kernel`: quotient-order coprimality when `p ∣ |N|`, commutator + Thm 6.4 centralizer containment when `p ∤ |N|`), hence `F(G) = ⨆ p, O_p(G) ≤ N`. Tripwire: this is the (12.7)-side input pinning `F(M) ≤ M_F` in the all-type-I `FittingIsTI` gate (`allTypeI_fittingIsTI`, Pf (8.13.c1)+(2.3), `S14` covering). -/ #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.IsFrobeniusGroup.normal_pGroup_le_kernel #assert_only_allowed_axioms OddOrder.Isaacs.Ch06.IsFrobeniusGroup.fitting_le_kernel /-! **Peterfalvi (7.9) Frobenius-family conclusion `hypothesis79_conclusion`, axiom-clean** (lane a, 2026-07-13, issue 0044 cont.⁴⁹). The (7.9) dichotomy `⟨β_i, ζ_j^ν⟩ ≠ 0 ∨ ⟨β_j, ζ_i^ν⟩ ≠ 0` for distinct members of a `FrobeniusFamily`, via the parity route: `hdelta_even` assembles `Δ ∈ ℤ[Irr G]` (Sibley coherence), `Δ` real (the delta-reality milestone `hypothesis78_delta_isReal`), `⟨Δ, 1⟩ = 0`, and the odd-order parity primitive `cfdot_real_vchar_even`. Tripwire: this is the `hbeta_ne` source for the good-index norm estimates consumed by the completed (7.10) `card_G0_lower_bound` assembly on the (12.17) chain (`theorem88_caseB_holds` → FT spine). **2026-07-19 (lane a)**: the parity step is now proved at `Hypothesis79` generality as `Hypothesis79.delta_even` (`S09_TwoFamiliesParity`), and `hypothesis79_delta_even` is its Frobenius instantiation — this removed the last `FrobeniusFamily` dependence from (7.9). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Hypothesis79.delta_even #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis79_delta_even #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis79_conclusion /-! **Peterfalvi (7.10) family-wide weighted orthogonality, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵⁰). Every non-principal induced-family member has a distinct conjugate partner in odd order; coherence carries their difference into the Dade support. Disjoint kernel spreads then give cross-orthogonality for every pair of members and hence for the weighted sums. The diagonal weighted norm is evaluated by the induced-family Burnside degree sum as (h_i - 1) / e_i = BsumWeight i. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis79_zeta_cross_eq_zero_at set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis79_weightedNuSum_cross_eq_zero set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis78_weightedNuSum_inner_self_eq_BsumWeight /-! **Peterfalvi (7.10) weighted Gamma projection and concrete B-set, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵³). Integral cross-family coefficients project Gamma onto the pairwise orthogonal weighted coherent sums. Subtracting those projections constructs Gamma₁, while the (7.9) alternative makes every coefficient on B = {j ≠ i | ⟨β_j, ζ_i^ν⟩ = 0} nonzero. The final theorem exposes the decomposition, diagonal BsumWeight formula, residual orthogonality, and nonzero coefficients consumed by the existing B-sum norm bridge. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.Cert.exists_orthogonal_projection_residual set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.hypothesis79_gamma_inner_weightedNuSum_eq_mul_BsumWeight set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.exists_weightedGammaDecomposition_on_reverseCoefficientZeroIndices /-! **Peterfalvi (7.8.b) concrete Frobenius-family Gamma norm bound, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵⁴). The induced principal source norm, orthogonality to the distinguished non-principal character, and Dade isometry give `‖beta‖² = e + 1`. Combining this with the proved weighted-sum norm and the canonical beta decomposition yields the exact quadratic Gamma formula; the odd-order Frobenius inequality `2e + 1 ≤ h` then gives `‖Gamma_i‖² ≤ e_i - 1`. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.gammaAt_inner_self_re_le /-! **Peterfalvi (7.10) concrete B-sum bound, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵⁵). On the exact set of indices whose reverse cross coefficient vanishes, (7.9) supplies nonzero integral projection coefficients and an orthogonal weighted Gamma decomposition. The concrete (7.8.b) Gamma norm bound therefore gives `sum_{j in B} (h_j - 1) / e_j ≤ e_i - 1`. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.reverseCoefficientZeroIndices_Bsum_le /-! **Peterfalvi (7.8.c)/(7.10) concrete good-index bound, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵⁶). The distinguished coherent image is first resolved as a signed irreducible character. Cross-family orthogonality, the nonzero reverse coefficient outside B, and the integral (7.8.c) formula give the local sharp-kernel ratio bound; rho-linearity transports it back across the sign to the canonical coherent image. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.reverseCoefficientZeroIndices_good_bound /-! **Peterfalvi (7.8.b) canonical selected-character bound, axiom-clean** (lane a, 2026-07-14, issue 0044 cont.⁵⁷). The canonical distinguished coherent image used to define the concrete B-set is fed through the proved BetaDecomp coefficient identities, induced-family degree sum, and Frobenius small-index inequality. This identifies the selected-index rho norm required by the final (7.5)/(7.10) CharacterEstimateData assembly. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.distinguishedNuAt_chiRhoNormSq_ge /-! **Peterfalvi (7.10)–(7.11) final Frobenius-family assembly, axiom-clean** (lane a, 2026-07-14, issue 0044). Choose a member of minimal kernel order, take the canonical distinguished coherent image and the reverse-coefficient zero set, and combine signed irreducibility, norm one, the concrete B-sum bound, and selected/good-index rho estimates into `CharacterEstimateData`. The explicit per-member nilpotence input is constructed by the FT consumer from `maxNilpotentNormalHall_isNilpotent`; it is not an opaque carrier field. -/ set_option linter.style.longLine false in #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.FrobeniusFamily.characterEstimateData_of_isNilpotent #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.card_G0_lower_bound #assert_only_allowed_axioms OddOrder.Peterfalvi.S09.not_trivial_G0 /-! **BG §16 → Peterfalvi §10/§14 → Section 16 named-input producer chain, axiom-clean** (lane a, 2026-07-14, issue 9087). The three tame-embedding consumers now cite the faithful Theorem A interface, so the maximal-pair construction, its type-I Dade consequences, and the assembled Section 16 inputs depend only on Lean/mathlib's standard three axioms. -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremII_tame_embedding_of_inputs #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.theoremII_tame_embedding #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.dadeSupportHypothesisData_of_subset #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.dadeSupportHypotheses_typeI #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.hypothesis_of_typeIData #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.typeI_frobenius -- **Peterfalvi (12.7), the book statement** (issue 0172 §12 監査、2026-08-07) — -- `typeI_isFrobenius_kernel_maxNilpotentNormalHall`: 「Type I の極大部分群 `M` はすべて核 `M_F` -- の Frobenius 群」を**無条件**かつ**核を名指しで**述べる形。既存の `typeI_frobenius` は -- (i) Type-V 排除 `hnoV` を仮説で受け (書籍 (12.7) には無い; Theorem (10.10) -- `S12.no_typeV_maximal_unconditional` で discharge 可能 — `S14 → S12_Noncoherence` は -- 小さい葉 `S14_MaximalI.CentralizerContainment` だけが逆向きなので循環しない)、 -- (ii) 結論の第 2 連言が carrier フィールド `data.kernel_eq_MF` で、その producer は `True` を -- 入れている (実質は `data.frobenius` + `TypeFData.H_eq` から出るが statement からは読めない)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.typeI_isFrobenius_kernel_maxNilpotentNormalHall #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.not_all_maximal_typeI #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.theorem88_caseB_holds #assert_only_allowed_axioms OddOrder.exists_section16MaximalPair_data #assert_only_allowed_axioms OddOrder.section16MaximalPair_of_isMinimalSimpleOdd #assert_only_allowed_axioms OddOrder.section16Inputs_of_isMinimalSimpleOdd #assert_only_allowed_axioms OddOrder.sectionSixteenHypothesis_of_isMinimalSimpleOdd /-! **Peterfalvi (4.6) type-`P₂` Dade producer on the canonical `muS` instance, axiom-clean** (lane a, 2026-07-14, issues 2038/9081). The honest `A₀(S)` Dade data now constructs the full `Hypothesis46`; its Dade-free core remains separately guarded as the exact prerequisite of the (4.7)/(4.8)-(1) support engine. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.dadeSupportHypothesisData_typePACore0 #assert_only_allowed_axioms OddOrder.Section16CharacterData.hyp46Smp #assert_only_allowed_axioms OddOrder.Section16CharacterData.hyp46SmpCore /-! **Peterfalvi (9.11) caseA-`T` base coherence on `Ind_T^G`, axiom-clean** (lane b, 2026-07-14, issue 2035). The degree-`p·a` irreducible cut of the `T`-instance §9 family: the (9.8.d) base count with conjugacy doubling, the (5.7)∘(5.3.a) uniform-degree coherence re-grounded onto plain induction via `tInstance_dade_eq_induce`, and the assembled caseA-`T` `h0` entry point. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSetIrrDegT_pa_two_le_ncard #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSetIrrDegT_coherent_indT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSetIrrDegT_pa_coherent_indT_caseA /-! **Peterfalvi (9.11) at `T` — the full refuter chain, axiom-clean** (lane b, 2026-07-14, issue 2035 refuter-`T` campaign). The complete `T`-mirror of the discharged `S`-side (9.11.1)–(9.11.8) chain: the (5.6) pair bound, the (9.11.1) extraction, the (9.11.4) Coq gap-patch support + Mackey-norm bundle, the (9.11.7)–(9.11.8) budget refutation, the (9.11.5)–(9.11.8) norm bound and equality refutation, the assembled equality-configuration refuter (formerly the one intended sorried obligation), the full-family `𝒯`-coherence dispatches, the (13.3.c)-`T` pinned carrier, and the bundled `τ₁T` ν-row pin. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenPairBoundT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenSTwoExtractionT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenAlphaSupportT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenFourNormInputsT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenSevenEightRefutationT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenNormBoundT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.nineElevenEqualityRefutationT #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSet_caseA_nineElevenRefutation_T #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSet_coherent_indT_caseA #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSet_coherent_indT_A #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.sSet_coherent_indT_A_pinned #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.tau1T_ofHonest_nuRow_eta_row /-! **Peterfalvi (13.3.c)-`T` ν-row pin machinery, first layer, axiom-clean** (lane b, 2026-07-14, issue 2035 #41 step 4-5). The coherence-generic row-independence `c(ν_r) − c(ν_s) = ∑_j η_{rj} − ∑_j η_{sj}` (per-column `tauT_nu_cross` through `tInstance_dade0_eq_induce`) and the (5.3.b)-at-`T` grid orthogonality of coherent images (the `A₀(T)`-Dade regular vanishing + the (3.7)–(3.8) norm-two engine). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.coherentIndT_nuRow_diff #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.coherentIndT_image_inner_eta_eq_zero /-! **Peterfalvi (13.3.c)-`T` ν-row pin dichotomy, axiom-clean** (lane b, 2026-07-14, issue 2035 #41 step 4). Any coherent extension of `𝒯` on `Ind_T^G` sends a reducible ν-row either to the aligned `η`-row or to the negated conjugate row (γ-trick + (3.7) rectangle relation with row-0 corners + `‖·‖² = p`); the clean pivot pin propagates to all rows through the row-independence. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.coherentIndT_nuRow_pin_of_irr #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.coherentIndT_nuRow_eq_etaRow_of_pivot #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.exists_pinned_coherent_sSet_of_all_reducible_T /-! **(1.5.a)-at-`T` membership layer, axiom-clean** (lane b, 2026-07-14, issue 2035 #41 step 5). `Ind_K^T θ ∈ ℤ[𝒯]` for irreducible `θ` on `K = QD` with `Q ⊄ Ker θ` (two-stage induction through `T' = huSub`, constituent kernel transfer), and the degree-`0` `A(T)`-support of `ℤ[𝒯]`-elements. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.induce_K_mem_zSpan_T #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.zSpan_sSet_degree_zero_support_T #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.induce_K_mem_zSpan_sSet_irr_T /-! **The (13.4) dirr cross-orthogonality bricks, axiom-clean** (lane b, 2026-07-14, issue 2035 #41 step 6): the conjugate identification `B = Ā` for conjugation-antisymmetric norm-one `ℤ`-irreducible pairs, and the cross-`τ` lead orthogonality `⟨A, C⟩ = 0` from orthogonal differences — the "pairwise orthogonality of `η`, `λ^{τ₁}`, `θ^{τ₁}`" of Peterfalvi (13.4). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.conj_eq_of_norm_one_conj_antisym #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.inner_eq_zero_of_conj_diff_orthogonal /-! **Peterfalvi (12.6) `frobenius_typeI_coherent`, axiom-clean** (lane c, 2026-07-14, issue 9077 carve-out item 2 + HUB RULING #4′). The (6.8)(c1) structural input `sibleyTarget_frobI` is now honestly constructed — the TI bound collapsed to `L` through the (8.15) normalizer identification, the (12.1) Dade datum transported exactly (`tau_eq` on the nose), and the `card_L_odd` faithfulness fix (`hodd` hypothesis) approved by RULING #4′ — closing the last gap of the (12.6) case split: all three coherence routes (a) TI/(6.8), (b) abelian rank-2 (5.7), (c) cyclic-quotient (6.5.c) are real. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.sibleyTarget_frobI #assert_only_allowed_axioms OddOrder.Peterfalvi.S14.frobenius_typeI_coherent /-! **Peterfalvi (14.6), sharp case-(9.7.a) Sylow bridge.** A faithful two-coordinate block-scalar embedding of sharp square order has noncyclic Sylow subgroups at every prime dividing the coordinate exponent; odd-order scalar images specialize the exponent to `(p - 1) / 2`. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.sylow_not_isCyclic_of_card_eq_sq_of_injective_pi #assert_only_allowed_axioms OddOrder.RepresentationTheory.sylow_not_isCyclic_of_odd_blockScalarEmbedding #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sylow_not_isCyclic_of_sharp_order #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sylow_U_not_isCyclic_of_sharp_order #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseA_sylow_U_not_isCyclic_of_parameters /-! **Peterfalvi (14.6), BG Prop. 1.16 centralizer witness.** The ambient image of a noncyclic Sylow subgroup of the abelian `S`-side complement normalizes `P`; its `r`-power order is coprime to `|P| = p^q`. BG Prop. 1.16 therefore produces a nonidentity element whose centralizer in `P` is nontrivial. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.exists_sylow_mem_inf_centralizer_ne_bot_of_not_isCyclic #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseA_exists_sylow_mem_inf_centralizer_ne_bot_of_parameters /-! **Peterfalvi (14.6), ambient Sylow carrier.** For every ambient subgroup containing `U`, the noncyclic `R₀ ∈ Syl_r(U)` extends to a Sylow `r`-subgroup while retaining the BG Prop. 1.16 centralizer witness. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.exists_sylow_over_U_with_centralizer_witness_of_not_isCyclic /-! **Peterfalvi (14.6), Sylow center trapping.** The named complement `U` is Hall in `S`; the BG Prop. 1.16 witness belongs to the honest type-`P₂` TI-set, so its ambient centralizer lies in `S`. Sylow maximality identifies `C_R(x)` with `R₀`, hence `Z(R) ≤ R₀`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.coprime_card_U_index_S #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.sylow_center_le_U_sylow_of_centralizer_witness #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.exists_sylow_over_U_with_trapped_center_of_not_isCyclic /-! **Peterfalvi (14.6), order of `Ω₁(Z(R))`.** Under the explicit (13.12)/(13.13) inputs `c = 1` and `q = 3`, the two-coordinate scalar action on the actual `U` is faithful, so `rank U ≤ 2`. The nontrivial elementary abelian subgroup `Ω₁(Z(R)) ≤ R₀ ≤ U` consequently has order `r` or `r²`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseA_rank_U_le_two_of_c_eq_one_q_eq_three #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.omega1Center_card_eq_prime_or_sq_of_rank_U_le_two #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseA_omega1Center_card_eq_prime_or_sq_of_parameters /-! **Peterfalvi (14.6), fixed-point-free action on `Ω₁(Z(R))`.** A subgroup of the Frobenius complement normalizing the Sylow subgroup also normalizes its characteristic center layer. Frobenius orbit counting gives `p ∣ |Ω₁(Z(R))| - 1`, hence `p ∣ r² - 1`; the (14.5) type-I-over-normalizer carrier supplies the concrete conjugate `W₂^y`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.prime_dvd_sq_sub_one_of_frobenius_omega1Center #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.TypeIOverNormalizerData.prime_dvd_sq_sub_one_of_omega1Center /-! **Peterfalvi (14.6), final case-A contradiction.** A prime `r ∣ (p - 1) / 2` has a noncyclic Sylow subgroup in `U`; center trapping and the fixed-point-free `W₂^y` action give `p ∣ r² - 1`. Odd-prime comparison gives `p < r`, contradicting `r ≤ (p - 1) / 2`. The case-A parameter equalities are explicit inputs, so this capstone does not use the issue-0116 analytic producer. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.false_of_odd_primes_dvd_half_and_sq_sub_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseA_false_of_parameters_and_typeIOverNormalizerData /-! **Peterfalvi (14.6), S-side Galois-field model.** In Clifford case (9.7.b), the §9 Singer realization transports from the chief quotient to the named groups `P` and `U` because `H₀ = ⊥`, `H = P`, and `C_U(P) = 1`. The branch-independent endpoint eliminates case (9.7.a) using the prime contradiction above. The sharp parameters are required only conditionally on an actual case-(a) certificate; that producer and the type-I-over-normalizer carrier remain explicit, so no issue-0116 analytic producer is hidden. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.U_le_normalizer_P #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.conj_mem_P #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.caseB_exists_sSide_galoisField_repr_of_c_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.sSide_galoisField_repr_of_c_eq_one_and_caseA_parameters #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.sSide_galoisField_repr_of_parameters_and_typeIOverNormalizerData /-! **Peterfalvi (13.3), the λ-free core** (issue 9094 案 A + issue 2035 #92). `CharacterDegreeCore` is inhabited unconditionally: `τ₁ = tau1S_ofHonest` with its five guarded field supplies, the (13.3.a) `𝒮₁`-witnessed `μ`-facts, the (13.3.c) `S`-side signs `δ_j = 1`, and the (13.3.c) column formula. The δ′-half of (13.3.c) is restate-dropped from the field (consumer 0, issue 2035 #92) with the standing supply kept in `deltaPrime_eq_one_T`, so the core producer is axiom-clean without waiting for the ν-carrier threading (issue 9096). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.characterDegreeCore_nonempty /-! **Peterfalvi (13.10)–(13.13), issue 0116 Core full-flip chain.** The analytic estimate and its order consequences now consume the honest `CharacterDegreeCore` route with an explicit canonical ν-grid supply. In particular, the unconditional `c = 1` endpoint uses the λ-dichotomy and the upstream type-`P` structure of `Q`, not the later type-II conclusion, so these assertions also guard against reintroducing the former (13.12) ↔ (14.9) proof cycle. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.CharacterDegreeCore.analytic_inequality_of_caseB_facts #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.CharacterDegreeCore.c_eq_one_of_caseB_facts #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.CharacterDegreeCore.caseA_parameters_of_caseB_facts #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.c_eq_one_of_lambda_dichotomy /-! **Peterfalvi (13.12)–(14.4), symmetric T-side Core chain.** The §13 carrier and `Hypothesis.swap` are now genuinely symmetric in `S` and `T`: the swap uses the unconditional type-`P`/commutativity facts from `T_nonI`, so the old downstream `IsTypeP2 T` gate is absent. These assertions pin the swapped `d = 1`, full Singer order, and the assembled T-side case-(b) facts to Lean/mathlib's standard three axioms. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.d_eq_one_of_swapped_lambda_dichotomy #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.T_caseB_v_eq_full_of_swapped_lambda_dichotomy #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.T_caseB_facts_of_q_lt_p_core #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.T_caseB_facts_unconditional /-! Peterfalvi (13.8), the book's literal `S`-side statement (issue 1041): `∑_{x∈H^#}|η₀₁(x)|² ≥ |S′| − u²` over the `(S, H^#)` chosen-base (7.6) family, together with its distinguished-index and correction-package suppliers. Sorry-free chain. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.exists_muS_index_eta01_core #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.exists_caseB_data_eta01_S_core #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.Hypothesis.eta01_Hsharp_norm_lower_core -- Ch.10 (More Transfer Theory) §10A: Thm 10.1 Yoshida — P Sylow, v(G) < P/P' ⇒ -- G は C_p ≀ C_p 上へ全射 / Thm 10.11 (self-normalizing 系の帰結) #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.exists_surjective_wreath_of_transfer_range_lt #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.exists_normal_index_prime_transfer_mem -- Ch.10 §10B: Thm 10.12 Huppert — p > 2, nonabelian metacyclic Sylow p ⇒ -- p ∣ |G : G'|, Thm 10.15 正規 Sylow 版 #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.dvd_index_commutator_of_metacyclic_sylow #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.dvd_index_commutator_of_normal_metacyclic_sylow -- Ch.10 §10C: Thm 10.20 G/G' ≅ Δ(G)/Δ(G)² / Thm 10.25 v(g)^{|K:G'|} = 1 / -- Thm 10.18 Furtwängler principal ideal theorem (transfer G → G'/G'' 自明) / -- Cor 10.28 Alperin-Kuo g^{|G : G'∩Z(G)|} = 1 #assert_only_allowed_axioms OddOrder.Algebra.abelianizationEquivAugmentationQuotient #assert_only_allowed_axioms OddOrder.Algebra.transfer_pow_relindex_eq_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.transfer_commutator_eq_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.pow_index_commutator_inf_center_eq_one /-! **Feit–Thompson end-to-end axiom audit** (2026-07-15, issues 9077/0118/0121). The honest T-side `(13.12)` producer supplies `D = ⊥` downstream of the character-degree layer; the explicit-`D = ⊥` `(13.16)`/Huppert chain avoids the genuine §15 import cycle. Rebuilding the BG Appendix C bridge then certifies the complete path from Peterfalvi §16 through the minimal-counterexample reduction. Every endpoint below depends only on Lean/mathlib's standard three axioms (`propext`, `Classical.choice`, `Quot.sound`), in particular not on `sorryAx`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.Hypothesis.V_inf_centralizer_Q_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.normalizer_W1_of_D_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S15.complement_le_QW2_of_D_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S16.nonexistence_of_G #assert_only_allowed_axioms OddOrder.BG.AppC.final_contradiction #assert_only_allowed_axioms OddOrder.noMinimalSimpleOdd_of_section16 #assert_only_allowed_axioms OddOrder.noMinimalSimpleOdd #assert_only_allowed_axioms OddOrder.feitThompson_of_noMinimalSimpleOdd #assert_only_allowed_axioms OddOrder.feitThompson /-! **BG Appendix E, de-opacified results** (`AppE_FurtherResults`, 2026-07-18). The appendix was a 163-line opaque-`Prop` scaffold (every hypothesis/conclusion a free `Prop` with a self-carried `_holds`); it is now stated at book strength (0 opaque fields). The following are proved sorry-free; the remaining E.1--E.5 statements are honest-but-sorried, gated on Hall's collecting process for general class `≤ p−1` (issue 3021). * `hallCollection_of_class_le_two` — E.1's collection formula in the class-`≤ 2` case, wired to `GroupTheory.mul_pow_eq_commutator_pow_mul_of_class_le_two`. * `RegularOperatorSetup.card_A_dvd_half_p_sub_one` — **BG E.3(a) in full**: `q ∣ (p−1)/2` for the regular operator group `A` of order `q` acting on `R₀` of order `p` (restrict the action to `R₀`, injectivity from regularity, `q ∣ |Aut R₀| = p−1`, then `q` odd). -/ #assert_only_allowed_axioms OddOrder.BG.AppE.hallCollection_of_class_le_two #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_A_dvd_half_p_sub_one /-! **Hall's collecting process — framework + class ≤ 3** (`GroupTheory.HallCollection`, `BG.AppE_FurtherResults`, issue 9132). Proved sorry-free here: * `pow_succ_collect` — the one-step collection recursion `x^n y^n = (xy)^n T ⟹ x^(n+1) y^(n+1) = (xy)^(n+1) * (⁅x⁻¹,((xy)^n)⁻¹⁆ * T)^y` (the engine). * `exists_hallCollection_of_residue` — E.1 for fixed `n` is exactly a congruence mod `γ_n` (the top slot absorbs any residue), so no hidden exactness is being assumed. * `AppE.hallCollection_of_class_le_three` — **BG E.1 for all `n` whenever `γ₃ = 1`**, strictly subsuming the previous class-≤2 case; the Pascal split `C(n+1,3) = C(n,2)+C(n,3)` is what makes the binomial exponents come out in Hall's shape at weight 3. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pow_succ_collect #assert_only_allowed_axioms OddOrder.GroupTheory.exists_hallCollection_of_residue #assert_only_allowed_axioms OddOrder.BG.AppE.hallCollection_of_class_le_three /-! **BG Theorem E.1 in general, and Proposition E.2** (`GroupTheory.HallPetresco`, `GroupTheory.RegularPGroup`, `BG.AppE_FurtherResults`; issues 9132 / 9400 / 3021, 2026-07-20). The root of Appendix E's dependency graph is now closed: E.1 holds for **arbitrary** nilpotency class, with no `IsPGroup` or class hypothesis at all, via Mann's route through the Hall--Petresco word. The earlier note that "the general E.1 remains sorried" is superseded. * `HallPetresco.exists_hallPetresco` — the general Hall--Petresco identity for a list of `m` generators; the slot `k` value lands in `γ_k`, which is exactly what E.1 needs. * `AppE.hallCollection` — **BG Theorem E.1 in full** (`(xy)^n = x^n y^n c₂^C(n,2) ⋯`). * `pow_mul_pow_eq_pow_of_commutator_exponent` — E.2 Step 1, stated generally (the specialised copy that used to live in `AppE_FurtherResults` was deleted rather than kept as a wrapper). * `pow_mul_eq_one_of_class_lt` — the class-`< p` engine behind E.2(a)/(b). * `AppE.omega_pow_eq_one_of_lowerCentralSeries_eq_bot` (E.2(a)) and `AppE.pow_mul_of_commutator_le_omega` (E.2(b)). ⚠ Both were stated with an `IsPGroup` hypothesis that the proofs never used; it is **dropped** (specialisation debt repaid). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.HallPetresco.exists_hallPetresco #assert_only_allowed_axioms OddOrder.BG.AppE.hallCollection #assert_only_allowed_axioms OddOrder.GroupTheory.pow_mul_pow_eq_pow_of_commutator_exponent #assert_only_allowed_axioms OddOrder.GroupTheory.pow_mul_eq_one_of_class_lt #assert_only_allowed_axioms OddOrder.BG.AppE.omega_pow_eq_one_of_lowerCentralSeries_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppE.pow_mul_of_commutator_le_omega /-! **BG Theorem E.3(b): the structure of `C_R(R₀) = R₀ × R₁`** (`GroupTheory.PRank`, `BG.AppE_FurtherResults`; issues 9401 / 3021, 2026-07-20). BG's Step 2 opens with the single sentence *"Since `C_R(R₀) = R₀ × R₁` we have `R₀ ∩ Z = 1`"*. Unpacked, that sentence needs a rank bound on the centralizer, which is what these supply. * `pRank_le_two_of_isCyclic_of_index_le_prime` — new general `pRank` API: a finite group with a **cyclic subgroup of index `≤ p`** has `p`-rank `≤ 2`. No normality is assumed — the classical product formula is stated for the *set* product `↑E * ↑K`, so `|E| · |K| = |EK| · |E ⊓ K|` with `|E ⊓ K| ≤ p` and `|EK| ≤ |G| ≤ p · |K|` already gives `|E| ≤ p²`. * `RegularOperatorSetup.R₀_le_centralizer_R₁` — the symmetric half of the setup datum. * `RegularOperatorSetup.isMulCommutative_centralizer_R₀` — `C_R(R₀)` is abelian. * `RegularOperatorSetup.card_centralizer_R₀` — `|C_R(R₀)| = p · |R₁|`. * `RegularOperatorSetup.pRank_centralizer_R₀_le_two` — `r(C_R(R₀)) ≤ 2`, BG's elided step. * `three_le_pRank_of_prime_cube_lt_card` — BG's (E.1)--(E.3): an exponent-`p` group of order `> p³` has `p`-rank `≥ 3`. This is exactly the contrapositive of the existing `Ch1.S04.card_le_prime_cube_of_pRank_le_two_of_exponent_prime`, so BG's `SCN(S)`/`Aut(V)` argument is not re-run here. * `RegularOperatorSetup.not_le_centralizer_R₀_of_three_le_pRank` and `RegularOperatorSetup.inf_eq_bot_of_three_le_pRank` — the elided sentence itself: `R₀ ∩ Z = 1` for any `Z` central in an `S` of rank `≥ 3`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pRank_le_two_of_isCyclic_of_index_le_prime #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.R₀_le_centralizer_R₁ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.isMulCommutative_centralizer_R₀ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_centralizer_R₀ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.pRank_centralizer_R₀_le_two #assert_only_allowed_axioms OddOrder.BG.AppE.three_le_pRank_of_prime_cube_lt_card #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_le_centralizer_R₀_of_three_le_pRank #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.inf_eq_bot_of_three_le_pRank /-! **BG Theorem E.3(b), Step 2 — narrowness of `S` and its first conclusion `R₀ ⊄ S'`** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). BG's Step 2 runs `SCN(S)` → `r(S) ≥ 3` → *"`S` is narrow"* → Lemma 5.2 / Theorem 5.3(d) → (E.5)--(E.8). The repo already owns §5's narrow machinery, so the appendix only has to feed it. * `RegularOperatorSetup.card_R₀_subgroupOf` / `…pRank_centralizer_subgroupOf_le_two` — the two inputs Corollary 5.4 wants, taken inside `↥S`. ⚠ BG gets the rank bound from the sharper `|C_S(R₀)| = p²` of (E.4); we get it by monotonicity from `C_S(R₀) ≤ C_R(R₀)`, which needs **no exponent hypothesis on `S`** — a genuine weakening of BG's route, not a specialisation. * `RegularOperatorSetup.isNarrow_of_three_le_pRank` — *"Note that `S` is narrow."* * `RegularOperatorSetup.not_le_derivedInG_of_three_le_pRank` — **the first conclusion of BG's (E.13), `R₀ ⊄ S'`**, via clause 2 of `Ch1.S05.narrow_centralizer_decomp` (Theorem 5.3(d)), which the repo had already flagged as "cited downstream by App.E E.3". * `RegularOperatorSetup.card_omega1Center_and_index_centralizer` — `|Ω₁(Z(S))| = p` (BG's (E.4)) and `|S : C_S(Ω₁(Z₂(S)))| = p` (BG's (E.5)), from `Ch1.S05.lemma52`. The maximal elementary abelian `E` of order `p²` that Lemma 5.2 needs comes from narrowness itself, so BG's witness `E = C_S(R₀)` and the computation `|C_S(R₀)| = p²` are bypassed. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_R₀_subgroupOf #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.pRank_centralizer_subgroupOf_le_two #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.isNarrow_of_three_le_pRank #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_le_derivedInG_of_three_le_pRank #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_omega1Center_and_index_centralizer /-! **BG Theorem E.3(b), Step 2 — `R₀ ⊄ S'` unconditionally** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). BG splits Step 2 at `|S| ≤ p³`, dispatching the small side by *"an examination of the `p`-groups of order at most `p³`"* — an elision. No examination is needed for this clause: * `RegularOperatorSetup.derived_central_of_card_le_prime_cube` — `|S| ≤ p³` gives `cl(S) ≤ 2` (`Ch1.S04.nilpotencyClass_le_of_card_le_pow`), i.e. `S' ≤ Z(S)`. * `RegularOperatorSetup.not_le_derivedInG_of_derived_central` — and *that* already kills `R₀ ≤ S'`: it would make `S` centralize `R₀`, hence lie in the **abelian** `C_R(R₀)`, forcing `S' = 1` and `R₀ = 1` against `|R₀| = p`. (No `R₀ ≤ S` hypothesis needed.) * `RegularOperatorSetup.not_le_derivedInG` — the two branches joined at `three_le_pRank_of_prime_cube_lt_card`: **BG's `R₀ ⊄ S'` for every exponent-`p` `S ≥ R₀`**. ⚠ BG also assumes `S` is `A`-invariant and `R₀ < S` properly; neither is used. * `RegularOperatorSetup.R₀_le_omega` — `R₀ ≤ Ω₁(R)`. ⚠ `RegularOperatorSetup.R₀_not_le_derived_omega` (E.3(b)'s **second clause**) is proved *from* these plus the first clause `omega_pow_eq_one` (BG's Step 3); it is asserted with the rest of Step 3, at the end of this file. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.derived_central_of_card_le_prime_cube #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_le_derivedInG_of_derived_central #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_le_derivedInG #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.R₀_le_omega /-! **BG Theorem E.3(b), Step 2, (E.4)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `C_S(R₀) = R₀ × Ω₁(Z(S))`, of order `p²` — `RegularOperatorSetup.…_sup_omega1Center`. BG sandwiches `R₀ × Z ⊆ C_S(R₀) ⊆ R₀ × Ω₁(R₁)`. Both ends are reached differently here: `|Z| = p` is already out of Lemma 5.2, and the upper bound is cheaper than BG's — `C_S(R₀)` is elementary abelian (abelian because it lies in the abelian `C_R(R₀)`, exponent `p` from `S`) inside a group of `p`-rank `≤ 2`, so `|C_S(R₀)| ≤ p²` directly. **`Ω₁(R₁)` never enters**, so the appendix still owes no `Ω₁` computation for the cyclic factor. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.centralizer_inf_eq_sup_omega1Center /-! **BG Theorem E.3(b), Step 2, (E.5)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): BG's `|S : T| = |C_T(R₀)| = p` is now complete. The index half came from Lemma 5.2; the centralizer half is here. * `RegularOperatorSetup.centralizer_subgroupOf_eq` — the bridge `C_{↥S}(R₀) = (S ⊓ C_R(R₀)).subgroupOf S`, letting the ambient (E.4) computation feed §5's machinery, which works inside `↥S`. * `RegularOperatorSetup.card_centralizer_inf_centralizer_eq` — **`|C_T(R₀)| = p`**, from Theorem 5.3(d)'s internal direct decomposition `C_S(R₀) = R₀ × C_T(R₀)` together with `|C_S(R₀)| = p²` (E.4) and `|R₀| = p`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.centralizer_subgroupOf_eq #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_centralizer_inf_centralizer_eq /-! **BG Theorem E.3(b), Step 2, the (E.6) counting step** (`BG.Ch1.S05_NarrowAutomorphisms`, `BG.AppE_FurtherResults`, issue 3021, 2026-07-20). BG says only *"a short argument using the mapping `H → [R,H]` given by `x ↦ [v,x]`"*; the argument is that the map is constant exactly on cosets of `C_H(v)`, so `|H : C_H(v)| ≤ |⁅R₀,H⁆|`. * `Ch1.S05.card_le_card_mul_of_commutator_mem_of_card_centralizer_le` — that counting, pure and hypothesis-free (no `p`-group, oddness or narrowness). It already existed as the engine of Theorem 5.5's own `H_i` chain but was `private`; **it is now public**, since App.E needs the identical lemma and cross-file `private` is against repo convention. This is exactly why BG can write "follow the part of the proof of Theorem 5.5 after (5.5)". * `AppE.RegularOperatorSetup.card_le_card_commutator_mul_prime` — the App.E instance: `|H| ≤ |⁅R₀,H⁆| · p` for `H ≤ T`, feeding it a generator `v` of `R₀` and the bound `|C_H(v)| ≤ |C_T(R₀)| = p` from (E.5). -/ #assert_only_allowed_axioms OddOrder.BG.Ch1.S05.card_le_card_mul_of_commutator_mem_of_card_centralizer_le #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_le_card_commutator_mul_prime /-! **BG Theorem E.3(b), Step 2, (E.6) — one chain step has index exactly `p`** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). `RegularOperatorSetup.card_eq_prime_mul_card_commutator`: `|H| = p · |⁅R₀, H⁆|` for a nontrivial normal `H ≤ T`. Two bounds meet — `≤` from the counting step above, and `≥` because `⁅R₀,H⁆ = ⁅H,R₀⁆ < H` by nilpotency (`Isaacs.Ch04.commutator_lt_self_of_isNilpotent_ambient`) and a proper subgroup of a `p`-group has index divisible by `p`. This is the inductive step of BG's series `T = H₀ ⊃ ⋯ ⊃ Hₙ = 1` with `|Hᵢ₋₁ : Hᵢ| = p`; what (E.6) still owes is the series itself (and BG's identification `⁅S, Hᵢ₋₁⁆ = ⁅R₀, Hᵢ₋₁⁆`, which carries the characteristicity). -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_eq_prime_mul_card_commutator /-! **BG Theorem E.3(b), Step 2, (E.6) — `⁅R₀,H⁆ = ⁅S,H⁆`** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.commutator_R₀_eq_commutator_top`. BG *asserts* `Hᵢ = [R, Hᵢ₋₁] = [R₀, Hᵢ₋₁]` as part of (E.6). The identification turns out to be a **consequence** of the counting rather than an input to it: `⊆` is monotonicity, and `⊇` because `⁅S,H⁆` is a proper subgroup of the `p`-group `H`, so `|⁅S,H⁆| ≤ |H|/p = |⁅R₀,H⁆|`. This matters structurally, not just cosmetically: `⁅S, ·⁆` preserves normality in `S` while `⁅R₀, ·⁆` need not (`R₀` is **not** normal in `S`), so BG's chain has to be *defined* by the `⁅S, ·⁆` form — which is what keeps `Hᵢ char R` — and only then recognised as `⁅R₀, ·⁆`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.commutator_R₀_eq_commutator_top /-! **BG Theorem E.3(b), Step 2, (E.6) COMPLETE — the descending series** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). BG's chain `T = H₀ ⊃ H₁ ⊃ ⋯ ⊃ Hₙ = 1` with `|Hᵢ₋₁ : Hᵢ| = p` and "thus `|T| = pⁿ`". **No new definition was needed**: the chain is the repo's existing `Isaacs.Ch04.iterCommutator T ⊤` (iterated right commutator with the whole group), which already carries `iterCommutator_eq_bot_of_isNilpotent_ambient` — i.e. the chain does reach `1`. BG's alternative description `Hᵢ = [R₀, Hᵢ₋₁]` is supplied by `commutator_R₀_eq_commutator_top`; the two descriptions play different roles, `⁅·, S⁆` keeping the terms normal and `⁅R₀, ·⁆` carrying the counting. * `RegularOperatorSetup.card_iterCommutator_eq` — `|Hᵢ| = p · |Hᵢ₊₁|` while `Hᵢ ≠ 1`. * `RegularOperatorSetup.card_start_eq_pow_mul` — `|T| = pⁱ · |Hᵢ|`, which at the last nontrivial index is BG's `|T| = pⁿ`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_iterCommutator_eq #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_start_eq_pow_mul /-! **BG Theorem E.3(b), Step 2, (E.5) `S = R₀T`** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.sup_centralizer_eq_top`. BG lists `T char S`, `|S : T| = p`, `R₀ ∩ T = 1` and then writes `S = R₀T`; the last step is a cardinality count, `|R₀T| = |R₀|·|T| = p·|T| = |S|`. BG's `T char S` needed nothing new — `GroupTheory.centralizer_omega1UpperCentralTwo_characteristic` is already an **instance**, so the normality that makes `↑(R₀ ⊔ T) = ↑R₀ * ↑T` is found by inference. ⚠ The exponent hypothesis on `S` is *not* used: narrowness alone drives Theorem 5.3(d) here. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.sup_centralizer_eq_top /-! **BG Theorem E.3(b), Step 2, (E.7)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.commutator_eq_and_card_quotient` — `H₁ = S'` and `|S/S'| = p²`. `|S : H₁| = p²` from `|S : T| = p` (E.5) and `|T : H₁| = p` (E.6); then `S/H₁` has order `p²` hence is abelian, giving `S' ≤ H₁`, while `H₁ = ⁅T,S⁆ ≤ ⁅S,S⁆ = S'` is immediate. BG routes the second inclusion through `[R₀,T]`; going through `⁅T,S⁆` is shorter and uses the chain's own definition. ⚠ This carries `3 ≤ pRank S`, so with `S = Ω₁(R)` it does **not** yet discharge E.3(b)'s third clause `|Ω₁(R)/(Ω₁(R))'| = p²`: that still needs BG's `|S| ≤ p³` branch, where (unlike the `R₀ ⊄ S'` clause, which fell out of `S' ≤ Z(S)` alone) the order-`p²`/`p³` case analysis does appear to be needed, and `R₀ < S` *properly* starts to matter. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.commutator_eq_and_card_quotient /-! **BG Theorem E.3(b) third clause — PROVED** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). `|S/S'| = p²` now holds for **every** exponent-`p` `S` properly containing `R₀`, so E.3(b)'s `|Ω₁(R)/(Ω₁(R))'| = p²` follows. * `RegularOperatorSetup.card_quotient_commutator_of_card_le_prime_cube` — BG's `|S| ≤ p³` branch. Here the *"examination of the `p`-groups of order at most `p³`"* really is needed (unlike for `R₀ ⊄ S'`): `S` abelian gives `|S| = p²` and `S' = 1` via `pRank ≤ 2` plus properness; `S` nonabelian gives `|S| = p³`, `|Z(S)| = p` (else `S/Z(S)` is cyclic) and `S' = Z(S)`. * `RegularOperatorSetup.card_quotient_commutator` — the two branches joined. * `RegularOperatorSetup.R₀_lt_omega` — `R₀ < Ω₁(R)` **properly**. ⚠ This is the first and only place where the setup's cyclic factor `R₁` is used in Step 2: the third clause is *false* for `S = R₀` (giving `p`, not `p²`), so properness must come from somewhere, and it comes from an order-`p` element of `R₁ ≠ 1`, disjoint from `R₀`. ⚠ `RegularOperatorSetup.card_omega_abelianization` (the clause itself) is proved from these plus the first clause `omega_pow_eq_one`; like the second clause it is asserted with the rest of Step 3, at the end of this file. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_quotient_commutator_of_card_le_prime_cube #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_quotient_commutator #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.R₀_lt_omega /-! **BG Theorem E.3(b), Step 2, (E.8)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.iterCommutator_eq_lowerCentralSeries` — BG's chain out of `T` *is* the lower central series of `S` from its second term on. Immediate once (E.7) has identified `H₁ = S'`, since `Hᵢ₊₁ = ⁅Hᵢ, S⁆` and `γᵢ₊₁(S) = ⁅γᵢ(S), S⁆` are the same recursion. ⚠ Worth recording about the hypothesis set: **two of Step 2's three conclusions — `R₀ ⊄ S'` and `|S/S'| = p²` — have been proved without using `A`-invariance of `S`, or the `A`-action at all.** BG opens Step 2 with *"Let `S` be any `A`-invariant subgroup of `R` of exponent `p` that properly contains `R₀`"*, but the `A`-action only enters for the third conclusion `|S| ≤ p^q` (E.9)--(E.12), where regularity of `A` is what forbids the eigenvalue `1`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.iterCommutator_eq_lowerCentralSeries /-! **BG Theorem E.3(b), Step 2, (E.9) opening and (E.11)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20) — the `A`-action finally enters Step 2. * `AppE.exists_zpow_eq_of_card_eq_prime` — the engine, stated abstractly: an automorphism of a group of **prime order** `p` is a power map `x ↦ xʳ`, and `φ^q = 1` forces `r^q ≡ 1`. BG uses this twice — on `R₀`, and on each chain section `Hᵢ/Hᵢ₊₁`, which (E.6) shows also has order `p` — so it is factored out rather than proved twice. * `RegularOperatorSetup.exists_zpow_eq_act_of_mem_A` — BG's *"then `vᵃ = vʳ` for some integer `r` such that `r^q ≡ 1 (mod p)`"*, the engine applied to `R₀` (`|A| = q` gives `a^q = 1`). Stated with an **integer** exponent as BG does, the congruence being `(r : ZMod p)^q = 1`. * `RegularOperatorSetup.zpow_exponent_ne_one` — **(E.11) `r ≢ 1 (mod p)`**. Were `r ≡ 1`, `a` would fix `R₀ ≠ 1` pointwise, against `C_R(α) = 1` for `α ∈ A^#`. ⚠ This is the **first** use of the setup's regularity hypothesis anywhere in Step 2 — everything up to (E.8) needed only `|R₀| = p`, `R₁` cyclic and the centralizer decomposition. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.exists_zpow_eq_of_card_eq_prime #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_zpow_eq_act_of_mem_A #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.zpow_exponent_ne_one /-! **BG Theorem E.3(b), Step 2: the arithmetic core of (E.10)--(E.12)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `AppE.le_pred_of_forall_mul_pow_ne_one`. BG's closing count — *"the nonzero integers (mod p) form a cyclic group of order `p−1` and `r^q ≡ 1`… therefore `q − 1 ≥ j + n − 1 ≥ n`"* — isolated as a statement about an abstract finite **cyclic** group: `u ≠ 1` with `u^q = 1` (`q` prime), `u₀^q = 1`, and `u₀ uⁱ ≠ 1` for all `i < n`, imply `n ≤ q − 1`. Cyclicity is exactly what puts `u₀` inside `⟨u⟩`, giving `u₀ = uʲ` with `1 ≤ j ≤ q−1`; then `u₀ uⁱ = u^{j+i}` avoiding `1` forces `[j, j+n−1]` to miss `q`. ⚠ This is the **endpoint** of (E.9)--(E.12), proved ahead of the chain-level eigenvalue bookkeeping that will feed it, so it currently has no consumer in the repo. It is stated at book strength and is what E.3(c)'s `|S| ≤ p^q` will be closed with. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.le_pred_of_forall_mul_pow_ne_one /-! **BG Theorem E.3(b), Step 2, (E.9): the chain is `A`-invariant** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). * `AppE.characteristic_iterCommutator` — every term of `iterCommutator T ⊤` is characteristic when `T` is. **This is what BG's choice of the `[R, Hᵢ₋₁]` form buys**: `⁅·, ⊤⁆` preserves characteristicity, whereas `⁅R₀, ·⁆` would not (`R₀` is not normal in `S`), even though `commutator_R₀_eq_commutator_top` shows the two forms coincide. * `RegularOperatorSetup.isAInvariant_iterCommutator` — hence the chain is `A`-invariant, via the existing `Isaacs.Ch03.IsAInvariant.of_characteristic` applied to the restricted action on `↥S`. BG asserts the series is `A`-invariant without comment; this is the reason. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.characteristic_iterCommutator #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.isAInvariant_iterCommutator /-! **BG Theorem E.3(b), Step 2, (E.9): the chain sections** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). The two inputs the induced action on `Hᵢ/Hᵢ₊₁` needs. * `RegularOperatorSetup.index_subgroupOf_chain` — the section has **order `p`**: (E.6)'s factor bound `|Hᵢ| = p·|Hᵢ₊₁|` restated as the index of `Hᵢ₊₁` *inside* `Hᵢ`, which is the form the quotient machinery consumes. * `RegularOperatorSetup.isAInvariant_subgroupOf_chain` — `Hᵢ₊₁` is `A`-invariant inside `Hᵢ`, transporting `isAInvariant_iterCommutator` to the restricted action on `↥Hᵢ`. Together these feed `Isaacs.Ch03.IsAInvariant.quotientMulAutHom` (giving the action on the section) and then `AppE.exists_zpow_eq_of_card_eq_prime` (giving BG's eigenvalue `rᵢ`). -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.index_subgroupOf_chain #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.isAInvariant_subgroupOf_chain /-! **BG Theorem E.3(b), Step 2, (E.9) COMPLETE — the section eigenvalue `rᵢ`** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.exists_zpow_eq_on_chain_section`. BG: *"by (E.6), for `i = 0,…,n−1`, `wᵢᵃ ≡ wᵢ^{rᵢ} (mod Hᵢ₊₁)` for some integers `rᵢ` such that `rᵢ^q ≡ 1 (mod p)`."* Assembled from parts that all already existed: the section has order `p` (`index_subgroupOf_chain`), it carries the induced `A`-action (`isAInvariant_subgroupOf_chain` fed to `Isaacs.Ch03.IsAInvariant.quotientMulAutHom`), and `AppE.exists_zpow_eq_of_card_eq_prime` turns that into the power map plus the congruence. BG's "`≡ mod Hᵢ₊₁`" is this statement read in the quotient. `AppE.characteristic_iterCommutator` became an **instance** here, so that the normality of `Hᵢ₊₁.subgroupOf Hᵢ` needed to even state the quotient action is found by inference. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_zpow_eq_on_chain_section /-! **BG Theorem E.3(b), Step 2, (E.10)** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `RegularOperatorSetup.quotient_action_ne_one` — `A` does **not** centralize a nontrivial chain section. BG: *"if `rᵢ ≡ 1 (mod p)` for some `i`, then `A` centralizes `Hᵢ/Hᵢ₊₁` by Proposition 1.5(d) … contrary to the regular action of `A` on `R`."* Stated as the induced automorphism being `≠ 1`, which is the content. Proposition 1.5(d) is used in its **element** form (`Isaacs.Ch04.coprime_fixedPoints_quotient_of_coprime_normal`), which is lighter than the subgroup form `GroupTheory.map_fixedSubgroup_eq_fixedSubgroup_quotient`: it lifts a coset representative `g ∉ Hᵢ₊₁` to a fixed `c` in the same coset, and `c ∉ Hᵢ₊₁` makes `c ≠ 1`, so `a` fixing it contradicts `C_R(α) = 1`. ⚠ The coprime lemma is applied with acting group **`⟨a⟩`, not all of `A`** — the hypothesis concerns one specific `a`, so restricting to its cyclic subgroup is what makes the fixed-point lifting applicable. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.quotient_action_ne_one /-! **BG Lemma 4.2(a), bilinear form** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `AppE.commutatorElement_pow_pow_of_central` — `⁅x^m, y^n⁆ = ⁅x,y⁆^(m·n)` for central `⁅x, y⁆`. The repo already had the two single-slot forms (`Ch1.S04.commutatorElement_pow_{left,right}_of_central`); this is their bilinear combination, which is what BG's (E.12) actually applies. The right slot is applied to `⁅x^m, y⁆`, central precisely because it *equals* `⁅x,y⁆^m`. BG uses it inside `S/Hᵢ₊₁` — where `H̄ᵢ` is central, so commutators landing in `H̄ᵢ` are central — to compute `[wᵢ₋₁^{rᵢ₋₁} u, vʳ] = wᵢ^{rᵢ₋₁ r}` and conclude `rᵢ ≡ rᵢ₋₁ r (mod p)`. ⚠ Topically this belongs beside the two slots in `S04_SmallRankBasic`; it is kept here while it has a single consumer. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.commutatorElement_pow_pow_of_central /-! **BG Theorem E.3(b), Step 2, (E.12) setup** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20): `AppE.chain_map_le_center` — `H̄ᵢ ≤ Z(S̄)` in `S̄ = S/Hᵢ₊₁`. BG: *"Let `S̄ = S/Hᵢ₊₁` … then `|H̄ᵢ| = p` and `H̄ᵢ ≤ Z(S̄)`."* Immediate from the chain's own definition — `Hᵢ₊₁ = ⁅Hᵢ, S⁆`, so every commutator of an element of `Hᵢ` with anything dies in the quotient. This centrality is exactly the hypothesis `commutatorElement_pow_pow_of_central` needs, so it is what lets Lemma 4.2(a) be applied there. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.chain_map_le_center /-! **BG Theorem E.3(b), Step 2, (E.9): the `wᵢ` sequence** (`BG.AppE_FurtherResults`, issue 3021, 2026-07-20). * `AppE.commutatorIterate` — `w₀ = w`, `wᵢ = ⁅wᵢ₋₁, v⁆`: the **element-level** counterpart of `Isaacs.Ch04.iterCommutator`, which iterates on subgroups. No such element-level version existed in the repo. * `AppE.commutatorIterate_mem_chain` — `wᵢ ∈ Hᵢ`, by the immediate induction `wᵢ = ⁅wᵢ₋₁, v⁆ ∈ ⁅Hᵢ₋₁, S⁆ = Hᵢ`. ⚠ Only `w ∈ T` is needed: `v` is unconstrained, because the chain brackets against all of `S` rather than against `R₀`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.commutatorIterate_mem_chain /-! **Chain factor counting, sharpened to the injection** (`BG.Ch1.S05_NarrowAutomorphisms`, issue 3021, 2026-07-20): `Ch1.S05.index_centralizer_le_card_of_commutator_mem` — `|M : C_M(v)| ≤ |N|` whenever every `⁅v,·⁆`-commutator of `M` lands in `N`. The injection `M ⧸ C_M(v) ↪ N` was already *built* inside `card_le_card_mul_of_commutator_mem_of_card_centralizer_le`, but that lemma's conclusion only exposed the cardinality inequality. Splitting it out costs nothing (the old lemma is now a three-line corollary) and is what App.E's (E.12) needs: there the counting is **tight** (`|Hᵢ₋₁| = p·|Hᵢ|` from (E.6), `|C| ≤ p`), so the injection is forced to be a **bijection**, which in turn forces `⁅v, x⁆ ∈ Hᵢ₊₁ ↔ x ∈ Hᵢ`. That equivalence is what makes `wᵢ ∉ Hᵢ₊₁` — a step BG asserts without proof when it writes *"So `⟨w̄ᵢ⟩ = H̄ᵢ`"*. -/ #assert_only_allowed_axioms OddOrder.BG.Ch1.S05.index_centralizer_le_card_of_commutator_mem /-! **BG Appendix E, new leaf `AppE_RegularOperator`** (issue 3021 / 0134, 2026-07-20): `AppE.commutator_mul_mem_chain` — `(⁅v,x⁆ * ⁅v,y⁆)⁻¹ * ⁅v, x*y⁆ ∈ Hᵢ₊₂` for `y ∈ Hᵢ`. That is, **`x ↦ ⁅v, x⁆` is a homomorphism `Hᵢ → Hᵢ₊₁/Hᵢ₊₂`**. Expansion `⁅v, xy⁆ = ⁅v,x⁆ · (x ⁅v,y⁆ x⁻¹)` plus `x ⁅v,y⁆ x⁻¹ ⁅v,y⁆⁻¹ = ⁅x, ⁅v,y⁆⁆ ∈ ⁅S, Hᵢ₊₁⁆ = Hᵢ₊₂`. ⚠ Only `y ∈ Hᵢ` is needed; `v` and `x` are unconstrained, since the chain brackets against all of `S`. This is the key to BG's unargued *"So `⟨w̄ᵢ⟩ = H̄ᵢ`"*: the set `{x ∈ Hᵢ | ⁅v,x⁆ ∈ Hᵢ₊₂}` is the **kernel** of that homomorphism, contains `Hᵢ₊₁`, and cannot be all of `Hᵢ` (that would give `Hᵢ₊₁ ≤ Hᵢ₊₂`), so `|Hᵢ : Hᵢ₊₁| = p` forces it to *be* `Hᵢ₊₁`. ⚠ This supersedes the bijection/fibre route recorded earlier, which went through tightness of the counting — the kernel argument needs no counting at all. ⚠ The leaf is new because `AppE_FurtherResults.lean` hit the 2000-line hard limit (issue 0134); the hub deferred splitting it while lane c's frontier sits at its tail, so lane c stops growing it instead. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_mul_mem_chain #assert_only_allowed_axioms OddOrder.BG.AppE.chainStepHom_ker_ge #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_pow_mem_of_commutator_mem #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_zpowers_le_of_forall /-! **BG Theorem E.3(b), Step 2: `⟨w̄ᵢ⟩ = H̄ᵢ` — BG's five-word claim, fully recovered** (`BG.AppE_RegularOperator`, issue 3021, 2026-07-20): `AppE.RegularOperatorSetup.exists_commutator_not_mem`. BG writes only *"So `⟨w̄ᵢ⟩ = H̄ᵢ`"*. That silently requires `wᵢ ∉ Hᵢ₊₁`, and recovering it took five sorry-free lemmas: 1. `commutator_mul_mem_chain` — `x ↦ ⁅v,x⁆` is multiplicative mod `Hᵢ₊₂`; 2. `chainStepHom` — hence a homomorphism `Hᵢ →* G/Hᵢ₊₂`; 3. `chainStepHom_ker_ge` — its kernel contains `Hᵢ₊₁` (easy half); 4. `commutator_pow_mem_of_commutator_mem` + `commutator_zpowers_le_of_forall` — a *full* kernel would give `⁅R₀, Hᵢ⁆ ≤ Hᵢ₊₂`; 5. this lemma — which with `⁅R₀, Hᵢ⁆ = ⁅S, Hᵢ⁆ = Hᵢ₊₁` collapses `Hᵢ₊₁ ≤ Hᵢ₊₂`, impossible while the chain descends. So the kernel is a proper subgroup containing `Hᵢ₊₁`, and `|Hᵢ : Hᵢ₊₁| = p` prime pins it to exactly `Hᵢ₊₁` — giving `⁅v,x⁆ ∈ Hᵢ₊₂ ↔ x ∈ Hᵢ₊₁` and `wᵢ ∉ Hᵢ₊₁` by induction from `w ∉ H₁`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_commutator_not_mem #assert_only_allowed_axioms OddOrder.BG.AppE.eq_or_top_of_index_prime #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.commutator_mem_iff_mem #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.commutatorIterate_not_mem_succ #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_pow_left_congr #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_mul_congr /-! **CN-group structure: the 3-step dichotomy — COMPLETE** (`GroupTheory.CNGroupStructure`, issue 9133). Gorenstein Ch.12 §1 (BG cites it as "**G** 14.1"; the chapter is renumbered in our copy). `IsThreeStepGroup G p` transcribes Gorenstein's three conditions verbatim; `O_{p,p'}` and `O_{p,p',p}` did not exist in repo or mathlib and are built here. **Theorem 1.5** (`solvableCN_nilpotent_or_frobenius_or_threeStep`) and the dichotomy **Corollary 1.6** (`oPiCore_isSylow_or_isThreeStepGroup`) are both proved; the leaf is `sorry`-free (2026-07-19). The remaining book-strength debt — clause (ii)'s refinement of the Frobenius complement to "cyclic or odd-cyclic × generalized quaternion" (Gorenstein Thm 1.3.1(ii)) — is recorded in issue 9133. Supporting results proved here: * `IsThreeStepGroup.oPiCore_pPrime_eq_bot` — `O_{p'}(G) = 1`; * `IsThreeStepGroup.isPGroup_quotient` / `nontrivial_quotient` — `G/O_{p,p'}(G)` a nontrivial `p`-group. **These two are exactly what BG App.D's D.1 consumes** from "the definition of a 3-step group and a short argument". * `commute_of_cn_of_commute_ne_one` — **Gorenstein Ch.12 §1 Lemma 1.2**, proved for arbitrary `p`- and `q`-subgroups (a generalization of the book's Sylow statement, not a weakening). * `IsThreeStepGroup.isSolvable` — the solvability half of Lemma 1.4. * `exists_sylow_eq_oPiCore_of_isNilpotent_normal_of_not_dvd_index` — the step shared by the two non-3-step cases of Cor 1.6: a nilpotent normal subgroup of index prime to `p` forces `O_p(G)` to be Sylow. * `not_commute_of_coprime_orderOf_card_fitting` — **Theorem 1.5, step 2**: in a solvable CN-group an element of order prime to `|F(G)|` centralizes no nonidentity element of `F(G)`, i.e. `F(G) A` is Frobenius for a Hall `π(F)'`-subgroup `A`. This is where the CN hypothesis does its work (via Lemma 1.2). Stated for a single element rather than for `A`, since coprimality of the order is all the argument uses — a generalization, not a weakening. * `sylow_fitting_map_le_oPiCore` / `commute_of_mem_fitting_of_coprime_orderOf` — its two `F(G)`-side inputs. * `exists_sylow_eq_oPiCore_of_normal_pPrime_le_fitting` — **Theorem 1.5, step 3**: in a CN-group with `O_p(G) ≠ 1`, a nontrivial normal subgroup of `F(G)` of order prime to `p` already forces `O_p(G)` to be Sylow. This is how Gorenstein collapses `π(F(G))` to a single prime. Proved without the solvability hypothesis the book carries, which the argument never uses. * `isNilpotent_of_fitting_eq_top` / `conj_ne_of_isHallSubgroup_fitting_pPrime` / `isFrobeniusGroup_fitting_of_isComplement` — **Theorem 1.5, step 1**: the setup (case (i)), the regular action of a Hall `π(F)'`-subgroup on `F(G)`, and the bridge to case (ii). * `isNilpotent_of_centerIn_ne_bot` — in a CN-group a subgroup with nontrivial centre is nilpotent. This is the last move of Gorenstein's "`A` is nilpotent" step, reducing it to `Z(A) ≠ 1`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_sylow_eq_oPiCore_of_isNilpotent_normal_of_not_dvd_index #assert_only_allowed_axioms OddOrder.GroupTheory.not_commute_of_coprime_orderOf_card_fitting #assert_only_allowed_axioms OddOrder.GroupTheory.sylow_fitting_map_le_oPiCore #assert_only_allowed_axioms OddOrder.GroupTheory.commute_of_mem_fitting_of_coprime_orderOf #assert_only_allowed_axioms OddOrder.GroupTheory.exists_sylow_eq_oPiCore_of_normal_pPrime_le_fitting #assert_only_allowed_axioms OddOrder.GroupTheory.isNilpotent_of_fitting_eq_top #assert_only_allowed_axioms OddOrder.GroupTheory.conj_ne_of_isHallSubgroup_fitting_pPrime #assert_only_allowed_axioms OddOrder.GroupTheory.isFrobeniusGroup_fitting_of_isComplement #assert_only_allowed_axioms OddOrder.GroupTheory.isNilpotent_of_centerIn_ne_bot -- `Ω₁` of a cyclic subgroup has order exactly `p` (`GroupTheory.OmegaSubgroup`); the input to -- the `Ω₁(Q)Ω₁(R)` step of Gorenstein's "`A` is nilpotent" argument (issue 9133). #assert_only_allowed_axioms OddOrder.GroupTheory.card_omega1OfAbelian_eq_of_isCyclic #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.oPiCore_pPrime_eq_bot #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.isPGroup_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.nontrivial_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.commute_of_cn_of_commute_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.isSolvable -- **BG App.D display (D.2)**, general form (`GroupTheory.ThreeStepGroup`): in a 3-step group two -- distinct Sylow `p`-subgroups intersect in exactly `O_p(G)`. This is the "short argument" BG -- leaves to the reader after invoking Corollary 1.6; the route is that the image of a Sylow -- `p`-subgroup in `G/O_p(G)` is a Frobenius complement, and Frobenius complements are TI. #assert_only_allowed_axioms OddOrder.GroupTheory.oPiCore_le_sylow #assert_only_allowed_axioms OddOrder.GroupTheory.sylow_sup_eq_top_of_isPGroup_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.sylow_inf_opPPrimeCore_eq_oPiCore #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.isComplement'_quotient_sylow #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.isFrobeniusGroup_quotient_sylow #assert_only_allowed_axioms OddOrder.GroupTheory.IsThreeStepGroup.inf_sylow_eq_oPiCore /-! **Theorem 1.5 endgame** (issue 9133, completed 2026-07-19). The fixed-point-free conjugation toolbox (`GroupTheory.FixedPointFreeConjugation` — Gorenstein Ch.10 §1 Lemmas 1.1/1.3/1.4 in coset form), the commuting obstructions (†)/(‡) of steps 4–6, the cyclicity of the Hall complement, and the assembled Theorem 1.5 / Corollary 1.6: * `exists_inv_mul_conj_eq` / `mem_of_inv_mul_conj_mem_of_fixedPointFree` / `conj_eq_inv_of_orderTwo_of_fixedPointFree` / `commutatorElement_mem_centralizer_of_orderTwo_of_fixedPointFree` — the twisted map is surjective; fpf descends to quotients; fpf involutions invert, so their commutators centralize. * `not_commute_of_not_dvd_orderOf_of_isPGroup_fitting` (†) / `not_commute_mk_of_not_dvd_orderOf_of_isPGroup_fitting` (‡) — no nontrivial `p'`-element commutes with a nontrivial `p`-element, in `G` and in `G/F(G)`. * `isCyclic_of_cn_of_conj_frobenius_of_odd` — steps 5–6: an odd-order fpf-acting subgroup of a CN-group is cyclic. * `commutatorElement_mem_centralizer_of_isCyclic_normal` / `isFrobeniusGroup_subgroupOf_sup` / `mulEquivMapOfInfKerEqBot` / `comap_oPiCore_quotient_congr` / `exists_isFrobeniusGroup_map_quotient_congr` — endgame helpers: commutators centralize a cyclic normal subgroup (abelian `MulAut`), a fpf action packages as a Frobenius structure on `A ⊔ F`, and quotient-transport along an equality of normal subgroups. * `card_sup_mul_card_inf_eq` / `eq_pow_factorization_of_primeFactors_subset` / `oPiCore_singleton_eq_top_of_isPGroup` — counting helpers. * **`solvableCN_nilpotent_or_frobenius_or_threeStep` — Gorenstein Ch.12 §1 Theorem 1.5.** * **`oPiCore_isSylow_or_isThreeStepGroup` — Gorenstein Ch.12 §1 Corollary 1.6**, the input to BG App.D Lemma D.1. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_inv_mul_conj_eq #assert_only_allowed_axioms OddOrder.GroupTheory.mem_of_inv_mul_conj_mem_of_fixedPointFree #assert_only_allowed_axioms OddOrder.GroupTheory.conj_eq_inv_of_orderTwo_of_fixedPointFree #assert_only_allowed_axioms OddOrder.GroupTheory.commutatorElement_mem_centralizer_of_orderTwo_of_fixedPointFree #assert_only_allowed_axioms OddOrder.GroupTheory.not_commute_of_not_dvd_orderOf_of_isPGroup_fitting #assert_only_allowed_axioms OddOrder.GroupTheory.not_commute_mk_of_not_dvd_orderOf_of_isPGroup_fitting #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_cn_of_conj_frobenius_of_odd #assert_only_allowed_axioms OddOrder.GroupTheory.commutatorElement_mem_centralizer_of_isCyclic_normal #assert_only_allowed_axioms OddOrder.GroupTheory.isFrobeniusGroup_subgroupOf_sup #assert_only_allowed_axioms OddOrder.GroupTheory.mulEquivMapOfInfKerEqBot #assert_only_allowed_axioms OddOrder.GroupTheory.comap_oPiCore_quotient_congr #assert_only_allowed_axioms OddOrder.GroupTheory.exists_isFrobeniusGroup_map_quotient_congr #assert_only_allowed_axioms OddOrder.GroupTheory.card_sup_mul_card_inf_eq #assert_only_allowed_axioms OddOrder.GroupTheory.eq_pow_factorization_of_primeFactors_subset #assert_only_allowed_axioms OddOrder.GroupTheory.oPiCore_singleton_eq_top_of_isPGroup #assert_only_allowed_axioms OddOrder.GroupTheory.solvableCN_nilpotent_or_frobenius_or_threeStep #assert_only_allowed_axioms OddOrder.GroupTheory.oPiCore_isSylow_or_isThreeStepGroup /-! **BG Appendix D: CN-groups of odd order — COMPLETE** (issues 3020 / 9133). Lemmas D.1 and D.2 are proved; the leaf is `sorry`-free. The chain is: * `IsCNGroup.to_subgroup` — the CN condition passes to subgroups, which is what lets Gorenstein's Corollary 1.6 apply to the local subgroup `M`. * `MinimalSimpleCNHypothesis.oPiCore_eq_bot` / `IsMinimalSimpleOdd.commutator_eq_top` — the two facts simplicity contributes (`O_p(G) = 1`, `G' = G`). * `exists_sylow_eq_inf_subgroupOf` — BG's first display: `P ∩ M ∈ Syl_p(M)`. * `sylow_le_and_eq_normalizer` — **the step BG omits**. The text applies Theorem 6.2 to `M` and the *full* Sylow `p`-subgroup `P`, which presupposes `P ≤ M`; here Theorem 6.2 is applied to `S = P ∩ M`, the maximal choice of `M` gives `M = N_G(Z(L(S)))`, and `Z(L(S))` being characteristic in `S` forces `N_P(S) = S`, hence `S = P`. * `inf_eq_oPiCore_of_maximal` — **display (D.2)**, `P ∩ Q = O_p(M)`. * `inf_le_oPiCore_normalizer_zCenterLOdd` — the form the endgame consumes: *every* Sylow `p`-subgroup `R ≠ P` meets `P` inside `O_p(N_G(Z(L(P))))`, one and the same subgroup because `N_G(Z(L(P)))` depends on `P` alone. * `sylow_eq_of_nontrivial_inter` — **Lemma D.1** (Sylow subgroups are TI). * `sylow_le_commutator_normalizer` — **Lemma D.2**, proved without BG's `P ≠ 1` hypothesis (the argument never uses it). -/ #assert_only_allowed_axioms OddOrder.BG.IsMinimalSimpleOdd.commutator_eq_top #assert_only_allowed_axioms OddOrder.BG.AppD.IsCNGroup.to_subgroup #assert_only_allowed_axioms OddOrder.BG.AppD.MinimalSimpleCNHypothesis.oPiCore_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppD.exists_maximal_sylow_inter #assert_only_allowed_axioms OddOrder.BG.AppD.exists_maximal_oPiCore_ne_bot #assert_only_allowed_axioms OddOrder.BG.AppD.exists_sylow_eq_inf_subgroupOf #assert_only_allowed_axioms OddOrder.BG.AppD.isThreeStepGroup_of_maximal #assert_only_allowed_axioms OddOrder.BG.AppD.sylow_le_and_eq_normalizer #assert_only_allowed_axioms OddOrder.BG.AppD.inf_eq_oPiCore_of_maximal #assert_only_allowed_axioms OddOrder.BG.AppD.isThreeStepGroup_and_inf_eq_oPiCore #assert_only_allowed_axioms OddOrder.BG.AppD.inf_le_oPiCore_normalizer_zCenterLOdd #assert_only_allowed_axioms OddOrder.BG.AppD.sylow_eq_of_nontrivial_inter #assert_only_allowed_axioms OddOrder.BG.AppD.sylow_le_commutator_normalizer /-! ## Peterfalvi (8.10)/(8.15): the book-literal support `A(M)` and the claim-2 producers **(8.10)** (p. 47) sets `M_s = M_F` (types I, II, V) / `M' ` (types III, IV) and, for `M` of type `𝒫`, `A(M) = ⋃_{x∈M_s^#} C_{M'}(x)^#`, `A₀(M) = A(M) ∪ V^M`. By (8.11)'s Reference, `M_s` is BG's `M_σ`, so `typePACore` is the book's `A(M)` verbatim — for **every** type, unlike the `P₁` specialisation `typePA = (M')^#` (issue 9008; the two agree exactly on `P₁`, which is `typePACore_eq_typePA_of_isTypeP1`, the formalisation of the book's own remark "`A₁(M) = A(M) = (M')^#` if `M` is of Type III, IV or V"). **(8.15), claim 2**: for `M` of type `𝒫`, Hypothesis (4.6) holds with `L = M`, `K = M'`, `A = A(M)`, `A₀ = A₀(M)` and `H = M_F` **or** `H = M_s`. `typePData_toHypothesis46_ofSupport` is the support-parametric core; the `typePACore_*` instances are the book-literal ones (valid for type II), the `typePData_*` ones the `P₁` specialisation. On `typePACore` the (4.6.d) covering is the defining property of the support; on `typePA` it is free because `A = K^#`. **(8.15), claim 3**: `inducedKernelFamily_subcoherent` (consumer shape `A = A₀(M)`) and `inducedKernelFamily_subcoherent_sharp` (the book's literal `A = M^#`) are the `P₁`-regime producers: they filter the induced family by `θ ≠ 1` and get the (5.2) support estimate from `(M')^# ⊆ A`. **(8.15), claim 3 — type-uniform**: `inducedNonKernelFamily_subcoherent`, on the book's own family `{Ind_K^L θ | θ ∈ Irr K, H ⊄ Ker θ}` (`inducedNonKernelFamily`) and an arbitrary ambient support `A`. For `θ ∈ Irr M'` the two filters agree exactly when `M_s = M'` — the `P₁` regime — which is why the older producers read faithfully only there. The book filters by `H ⊄ Ker θ` because that is what makes the support estimate work without `(M')^# ⊆ A`, which is **false** once `A = A(M) = ⋃_{x ∈ M_s^#} C_{M'}(x)^#` is strictly smaller than `(M')^#` (types II/V): (5.3.b)'s proof gets `Z[𝒮, L^#] = Z[𝒮, A]` from **(4.7)** instead (`inducedNonKernelFamily_conjDiff_support`, via `S06.induce_apply_eq_zero_of_not_mem_union_of_not_subset_characterKernel`). Non-reality and pairwise orthogonality are inherited from the coarser `S08` family along `inducedNonKernelFamily_subset_inducedKernelFamily_bot`. Hub ruling 9163 (Option B′) / issues 1042, 1045, 9008. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.centralizerSupport_sharpSubgroup_of_le #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_eq_typePA_of_isTypeP1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore0_eq_typePA0_of_isTypeP1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_eq_A1_of_isTypeP1 #assert_only_allowed_axioms OddOrder.GroupTheory.typeA_eq_typeIA #assert_only_allowed_axioms OddOrder.GroupTheory.A1_subset_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeA_eq_typePACore #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.A1_subset_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ne_typeI_of_isTypeP1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeA_eq_A1_of_isTypeP1 /-! ### BG: `κ(M) ∩ τ₂(M) = ∅` — (8.13)(c3) Type II への鍵 (issue 0174、2026-08-08) Peterfalvi (8.13)(c3) の Type II 版は「escaping な `x` が `L'` に入る」を要する。BG 原文の Theorem D(4) は型依存の `A(N)` (Type II では host `N'`) を主張するのに対し、repo の D(4) は `ASet N ⊤ = hatMsigma N` (host `N`) しか記録していない (= BG より弱い)。 その差を埋める鍵が本補題: notMem_kappa_of_mem_tau2 `p ∈ τ₂(M) ⟹ p ∉ κ(M)` (`κ ⊆ τ₁ ∪ τ₃` は `pRank = 1`、`τ₂` は `pRank = 2`) notMem_kappa_of_mem_piSet_of_forall_mem_tau2 `π(⟨x⟩) ⊆ τ₂(M) ⟹ x は κ(M)′-元` repo の D(4) 証明 (`LocalTaxonomy.lean:902`) は **`hxtau2 : ∀ p ∈ π(⟨x⟩), p ∈ τ₂(N)` を既に 文脈に持っている**ので、本補題 + 既存の `mem_U_sup_Msigma_iff_isPiElement_kappa_compl` (`x ∈ U ⊔ M_σ ⟺ x` は `κ(M)′`-元) + BG Lemma 15.1(b) (`N' = U_N ⊔ N_σ`) で **`x ∈ N'`** が出る。 ⟹ BG (15.2) や `K₁ ∩ M_σ = 1` の形式化は**不要**だった (BG 原文の証明経路より repo の signalizer 経路のほうが直接的)。 -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.notMem_kappa_of_mem_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch4.S14.notMem_kappa_of_mem_piSet_of_forall_mem_tau2 /-! ### Peterfalvi (8.13)(c3) — Type II の支持極大 (issue 0174、2026-08-08) (8.13)(c3) の Type II 版。Type I との差は**支持台 (host)** だけ: (8.10) により `A(L)` の host は Type I なら `L`、Type II (類 `𝒫`) なら `L'`。repo の Theorem D(4) (`exists_RData_escape_structure`) は第 4 成分を `x ∈ ASet L ⊤ = hatMsigma L` (host `L`) と 記録しており、**BG 原文の型依存 `A(L)` より弱い**。 BG 側の強化 4 本 (`LocalTaxonomy` / `TaxonomyOutput`): notMem_Msigma_of_forall_mem_tau2 π(⟨x⟩) ⊆ τ₂(N) ⟹ x ∉ N_σ (D(4) 証明から抽出) isPiElement_kappa_compl_of_forall_mem_tau2 π(⟨x⟩) ⊆ τ₂(N) ⟹ x は κ(N)′-元 escaping_mem_derived_of_typeP 同上 ⟹ x ∈ N' (Lemma 15.1(b) + 正規 κ′-Hall) mem_ASet_sdiff_Msigma_of_typeP D(4) 第 4 成分を ASet N U へ強める escaping_mem_ASet_sdiff_Msigma_of_typeP escaping x に対する BG 原文どおりの x ∈ A(N) − N_σ Peterfalvi 側: mem_typeA_of_mem_hatMsigma hatMsigma M ∖ {1} ∩ host ⊆ A(M) (型一律に一般化; Type I 版 mem_typeA_of_mem_hatMsigma_of_typeI は host = M の系に縮約) escaping_mem_typeA_notMem_A1_of_typeII (8.13)(c3) Type II 本体 ⚠ BG 自身の証明経路 (Cor 15.9 → `|K₁|` 素数 → `K₁R` 非冪零 (15.2) → `K₁ ∩ M_σ = 1`) は **不要だった**。signalizer 構造が既に `π(⟨x⟩) ⊆ τ₂(N)` を持ち、`κ(N) ∩ τ₂(N) = ∅` (`S14.notMem_kappa_of_mem_tau2`、pRank 1 vs 2) だけで `x` が `κ(N)′`-元になる。 -/ #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.notMem_Msigma_of_forall_mem_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.isPiElement_kappa_compl_of_forall_mem_tau2 #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.escaping_mem_derived_of_typeP #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.mem_ASet_sdiff_Msigma_of_typeP -- BG Proposition 14.2(a), the `U`-half (issue 0178, 2026-08-08): for a type-`P₂` maximal `M` -- there are `K₀` (Hall `κ(M)`) and `U` (nontrivial abelian Hall `(κ(M)∪σ(M))'`) in `M` with -- `K₀` acting **regularly** on `U`, and `U M_σ` a **normal complement of `K₀` in `M`** -- (`M ≤ N(U M_σ)`, `K₀ ⊓ (U M_σ) = ⊥`, `K₀ ⊔ (U M_σ) = M`). `typeP_structure` takes the Hall -- property of `U` as an unused input and asserts nothing about it; this is the book's clause. -- Together with `S14.typeP2_Msigma_isNilpotent` this closes issue 0178, hence BG Theorem A(3)(4). #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.typeP2_exists_regular_abelian_hall #assert_only_allowed_axioms OddOrder.BG.Ch4.S16.escaping_mem_ASet_sdiff_Msigma_of_typeP #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.mem_typeA_of_mem_hatMsigma #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_mem_typeA_notMem_A1_of_typeII /-! ### Peterfalvi (8.13)(c3) — Type I の支持極大 (issue 0174、2026-08-08) 書籍 (8.13)(c) は `x ∈ D` と `C_G(x) ⊆ L` なる極大 `L` について 4 条項を主張し、そのうち **(c3) `x ∈ A(L) − A₁(L)`** だけが未形式化だった。**BG Theorem D(4) が既に運んでいた**: その rich `∃! N` 述語の第 4 成分が `x ∈ ASet N ⊤ ∖ M_σ(N)`。 mem_typeA_of_mem_hatMsigma_of_typeI `hatMsigma M ∖ {1} ⊆ A(M)` (Type I) typeA_eq_hatMsigma_sdiff_one_of_typeI 両包含 = `A(M) = hatMsigma M ∖ {1}` escaping_mem_typeA_notMem_A1_of_typeI **(8.13)(c3) 本体** (Type I) 書籍 (8.10) (p.47) の定義: Type I は `A(M) = ⋃_{x∈H^#} C_M(x)^#` で **host が `M`**、 type 𝒫 は host が `M'`。`U = ⊤` の BG 支持 `ASet N ⊤` は `hatMsigma N` (host `N`) なので Type I とちょうど噛み合う。`x ∉ M_σ(N)` は `A₁(N) = M_σ(N)^#` (`A1_eq_sigmaSharp`) から `x ∉ A₁(N)` を直に与える。`L` の同定は `ℳ(C_G(x))` の単元性。 ⚠ **Type II は未カバー**: host が `L'` なので `x ∈ L'` が別途要り、D(4) は `x ∈ L` までしか 与えない (issue 0174 に残作業として記録)。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.mem_typeA_of_mem_hatMsigma_of_typeI #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeA_eq_hatMsigma_sdiff_one_of_typeI #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_mem_typeA_notMem_A1_of_typeI #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.not_isTypeP1_of_mem_typeA_not_mem_A1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.isTypeI_or_isTypeII_of_mem_typeA_not_mem_A1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typeP_centralizer_unique_of_mem_typePACore #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.centralizer_unique_of_mem_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_supported_of_A1_conj_mem_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.A1_eq_sigmaSharp #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_typeA_mem_A1 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.coprime_FT_signalizer_centralizerIn_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftThickenedSupport_A1_subset_conjClassSet_Mtilde #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftThickenedSupport_A1_disjoint_of_nonconjugate #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.exists_A1_conj_mem_typeA_of_not_disjoint #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_sigmaSharp_disjoint_centralizer_of_witness #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.escaping_sigma_disjoint_centralizer_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.supported_sigma_coprime_typeA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftThickenedSupport_mixed_disjoint_of_nonconjugate_typeA -- **(8.18.c) at type-I-or-II pairs** (2026-07-27): `support_mutual_exclusion` (both type I) is now -- the instance of `support_mutual_exclusion_of_typeI_or_II`, which allows each of `S`, `T` to be -- of type I *or* II with independent type tags. The type-I-only step of the old proof was the -- nonemptiness of `A₁(S)`, drawn from `TypeFData.H_nontrivial`; it is replaced by -- `BG.Ch3.S10.Msigma_ne_bot`, valid for EVERY maximal subgroup of a minimal simple odd group. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.support_mutual_exclusion_of_typeI_or_II #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.support_mutual_exclusion #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_conj_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_subset_hatMsigma #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_one_not_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.conj_mem_typePA #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePData_toHypothesis46_ofSupport #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePData_toHypothesis46 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePData_toHypothesis46_hallKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePData_toHypothesis46_derived #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_toHypothesis46 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_toHypothesis46_core #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_toHypothesis46_hallKernel #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.mderivSharp_subset_supportInSubgroup_typePA0 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedKernelFamily_member_support_subset_derivedInG #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedKernelFamily_subcoherent #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedKernelFamily_subcoherent_sharp #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_subset_inducedKernelFamily_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_apply_one_eq_natCast #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_apply_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_conjDiff_support #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_diff_support #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_subcoherent -- **(8.15), claim 3 at `A = A(M)`, every type `𝒫`** — the instantiation of the above at -- `A = typePACore M`, `H = M_σ`, whose two Dade inputs (`dadeSupportHypothesisData_typePACore0` -- for Hypothesis (4.6) via `typePACore_toHypothesis46_core`, and -- `dadeSupportHypothesisData_typePACore` for the isometry `τ`) are both Peterfalvi (8.15) claim 1 -- and carry no type hypothesis beyond `IsTypeP`. Types II and V included. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.typePACore_subcoherent -- **(8.15) claim 1 at `A = A₁(M)`, every Peterfalvi type** (2026-07-26): 書籍は -- 「`A = A₀(M)`, `A(M)` **or** `A₁(M)`」を型の制限なしに主張する。`A₁` 版はこれまで -- `dadeSupportHypotheses_typeP` の中に `IsTypeP1` 仮説付きで埋もれていたが、その証明は -- `hP1` も `data` も使っておらず、`A1_eq_sigmaSharp` (全型) + σ-sharp Dade engine + -- `A1_conj_mem` (全型) だけで回っていた。独立した型一様な定理として取り出した。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.dadeSupportHypothesisData_A1 -- **(5.7) on the (8.15.3) family** — a uniform-degree subfamily is coherent, at the same -- generality as (5.3.b). This is the book's route to the (9.11) base coherence, replacing the -- §10 μ-grid engine (`inducedFamily_degreeSubfamily_isCoherent`) that tied it to types III/IV. -- `2 ≤ ncard` is exposed as a parameter, matching `S15.Hypothesis.sSetIrrDeg_coherent`: the -- (9.8.d) count gives an existence statement, not two distinct members. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_degreeSubfamily_coherent -- **The §9 family sits inside the (8.15.3) family** (issue 1045): `𝒮(Y) ⊆ 𝒮_{(8.15.3)}`. Both -- families induce from `M'` (`huSub_eq_derivedInG_subgroupOf`, Peterfalvi (9.2)), and §9's filter -- `M_F ⊄ Ker χ` is the stronger one because `M_F ≤ M_σ`. This is the link that lets the book's -- own route to the (9.11) base coherence — (8.15.3) then (5.7) — replace the §10 μ-grid engine, -- and with it the type-III/IV restriction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.hInHu_le_Msigma_subgroupOf #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_subset_inducedNonKernelFamily -- **(9.11) base coherence at §9 level**: the degree-`d` irreducible cut of `𝒮(Y)` is coherent, -- assembled as (8.15.3) then (5.7) — the book's own route — instead of the §10 μ-grid engine -- `S12.Hypothesis.inducedFamily_degreeSubfamily_isCoherent`, which needs a `S13.Hypothesis` and -- hence types III/IV. No type hypothesis anywhere in this route. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_degreeSubfamily_coherent -- **(9.11) case (9.7.a) at §9 level**: the reduction to the maximality refuter, stated over -- Hypotheses (9.2)/(9.4)/(9.5) with `tau`/`A0` as parameters — **no type hypothesis**. The §11 -- form (`S13.caseA_coherent_sOf_H0Cprime_of_refuter`) reaches the same conclusion through -- `S13.Hypothesis`, whose `type_alt` pins types III/IV; that packaging turns out to be -- inessential, the one genuinely §10-bound input (the degree-`qa` base coherence) becoming the -- `hbase` parameter that `sOf_degreeSubfamily_coherent` supplies. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_coherent_sOf_cprime_of_refuter -- **`𝒮(Y) ⊆ S(⊥)` at §9 level** — the §9 replacement for the "world-bridge" the §11 chain does -- through `hyp.SOf_eq`/`hyp.sOf_subset_SOf` (i.e. through `S13.Hypothesis`). The §11 caseB pivot -- lemmas use that bridge only to borrow the `S08.inducedKernelFamily_*` suite; with this they can -- borrow it without any `S13.Hypothesis`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_subset_inducedKernelFamily_bot -- **`hsuppdiff` at §9 level**: uniform-degree member differences are `A₀`-supported. The §13 form -- (`S13.sOf_anchor_diff_support`) reaches the `⊥`-kernel family through `hyp.SOf_eq`; here that is -- `sOf_subset_inducedKernelFamily_bot`, and the (8.10) containment `(M')^# ⊆ A₀` is the explicit -- parameter `hKsupp` instead of `hyp.base.mderivSharp_subset_A0`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_anchor_diff_support -- **(9.9.b), member form** — a reducible induced character from `h46.K` is a certain-type column -- sum. Stated entirely inside `h46.K` so that no coercion between `↥h46.K` and `↥(huSub data)` -- appears: those subgroups are only propositionally equal, and rewriting across them is not -- type-correct here (the motive mentions `IrreducibleCharacter ↥_a` *and* `chiRestrict χ₂ = χ`). -- The §13 analogue `S13.caseB_sOf_member_dichotomy` phrases its conclusion in the §10 μ-grid; the -- book builds these members from (4.7) + Thm (4.5), both §6, so the `columnSum` form is faithful. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.induce_columnSum_of_not_irreducible -- **Induction-source transport across `K = K'`** — the `subst`-able generalization that lets the -- previous lemma (stated inside `h46.K`) be applied to the §9 family (stated over `huSub data`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.exists_induce_eq_of_subgroup_eq -- **(9.9.b) at §9 level**: a reducible `𝒮(Y)`-member is a nontrivial certain-type column sum. -- This is what removes the §10 μ-grid (hence the type III/IV restriction) from the caseB `R`-family -- dispatch: `S13.caseB_sOf_member_dichotomy` returns a `muColumnChar` column, but `certainTypeR` -- consumes the §6 `columnSum` form, so the §11 packaging converts back and forth; §9 just stays in -- the §6 form. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_columnSum_of_not_irreducible -- **`certainTypeR` restated at a member equal to its column** — the reducible half of the §9 -- `R`-family dispatch. `χ₂` stays a parameter so that the `η`-rewrite in `image_eq` is -- type-correct; `.imageSet` is definitionally `certainTypeR`'s, as (5.2.e) needs. -- **Per-member `R`-family over `𝒮(Y)` at §9 level** (the (5.2.d) datum of the (9.11) caseB engine). -- The §9 replacement for `S13.caseB_sOf_memberRFamily`: same two branches (signed Dade family / -- certain-type column family), but the column comes from (9.9.b) in its §6 form instead of a §10 -- μ-grid index, so **no type hypothesis appears**. `τ` is pinned to -- `dadeIntegralCharacterMap h46.dade0 h46.tau` by `certainTypeR`; `htau` matches the irreducible -- branch to it (`rfl` for the `S10.typePACore_toHypothesis46_core` producer). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_memberRFamily -- **Dispatch reductions** — which constructor `sOf_memberRFamily` used, in `imageSet` form (the -- form the (5.2.e) lemmas consume). The column version also exposes `η = μ_{χ₂}`, which is what -- supplies the `χ₂ ≠ χ₂'` / `χ₂ ≠ χ₂'⁻¹` side conditions of the μ×μ stratum. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_memberRFamily_imageSet_of_irr #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_memberRFamily_imageSet_of_col -- **The (4.6)-level V-vanishing anchor**: `V ⊆ A₀` are Dade base points, so the (2.5) evaluation -- reduces `α^τ(v)` to `α(v)`, zero whenever `α` is supported on a set `V` avoids. Generalizes -- `S13.tau_apply_eq_zero_of_mem_typePV`, which fixes that set to `A(M) = (M')^#`; the support set -- must stay separate from the (4.6) ambient `A`, since a type-uniform `A(M)` (`typePACore`) is -- *strictly smaller* than `(M')^#`, where the member differences actually live. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.dadeICM_apply_eq_zero_of_avoidV -- **(5.2.e) cross-orthogonality at §9 level** (the `hRorth` input of the (5.7) engine): the `2×2` -- irreducible/column case split. The §9 replacement for `S13.caseB_sOf_memberRFamily_orthogonal`; -- the only ambient input is `hVsub` (the exceptional `V` avoids `M'`), and no type hypothesis -- appears. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_memberRFamily_orthogonal -- **`M' ⊴ M` inside `↥M`** — the instance the §9 leaves need explicitly (the §11/§13 chain gets it -- transitively from its packaging's import closure). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.derivedInG_subgroupOf_normal -- **Natural-number self-norms** (`hN` of the (5.7) engine): `1` for an irreducible member, `w₁` for -- a (9.9.b) column. This is where being *norm-general* rather than all-irreducible shows up. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_member_inner_self_natCast -- **Peterfalvi (9.11), case (9.7.b), at §9 level** — a uniform-degree `𝒮(Y)` is coherent on `A₀`. -- The book's case (b) is the two citations "(9.9.a) and (5.7)"; that is exactly this assembly, with -- (9.9.a) entering as the uniform degree `hunif` (type-free `S11.caseB_degree_qu`) and the -- norm-general engine `S07.uniform_degree_coherence_of_families` doing the rest. The §13 analogue -- `S13.caseB_coherent_sOf_H0Cprime` anchors on a §10 μ-grid column reached through (11.7) `H₀ = 1` -- (types III/IV only); here the pivot is an explicit parameter, as the book's (9.9.b) count is -- genuine upstream content. **No type hypothesis on this route.** #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_caseB_coherent -- **(9.11) case (9.7.b) with (9.9.a) plugged in** — the uniform degree `qu` comes from the -- type-free `S11.caseB_degree_qu`, leaving only the (9.9.b) pivot exposed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseB_coherent_sOf_cprime -- **Peterfalvi (9.11) at §9 level**: `𝒮(H₀C′)` coherent under Hypothesis (9.5) alone, by the (9.7) -- Clifford dichotomy over the two branches. Residual inputs are quantified over the branch datum -- they belong to: case (a) takes the degree-`qa` base coherence and the maximality refuter, case -- (b) only the (9.9.b) pivot. ⚠ **Both case-(a) residuals are discharged downstream** by -- `nineEleven_coherent` (below), via `caseA_irrCut_two_le_ncard` and `caseA_equalityRefutation` — -- this theorem keeps them exposed because it is the branch-level assembly, not the endpoint. -- **No type hypothesis anywhere on this route** — `S13.coherent_sOf_H0Cprime` carries -- `IsTypeIII ∨ IsTypeIV` only because its carrier does. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_nineEleven_coherent -- **(9.9.b) for `𝒮(H₀C)`** — the second carrier of the book's "both `𝒮(H₀)` and `𝒮(H₀C)` contain -- exactly `p − 1` reducible characters" (p. 54). All five inputs of the shared count -- `reducible_count_sOf_K` are already on hand at `K = H₀C`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.reducible_count_sOf_H0supC -- **`𝒮(H₀C′) ≠ ∅`** — the (9.11) case (9.7.b) pivot: the `p − 1` reducibles of `𝒮(H₀C)` lie in the -- larger `𝒮(H₀C′)` since `C′ ≤ C`. Taking the count at `H₀C` rather than `H₀` is essential — the -- reducibles of `𝒮(H₀)` need not lie in the smaller family — and is why the book states (9.9.b) -- for both carriers. The §13 route reaches the pivot through the μ-grid and (11.7) `H₀ = 1`, -- hence only in types III/IV. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_cprime_nonempty -- **Coherence moved down to the `A(M)`-isometry** (used by both Clifford branches) — the form Hypothesis (9.5) asks -- for. `certainTypeR` produces its families for the enlarged (4.6.e) isometry on `A₀ = A ∪ V^M`; -- the book does not distinguish the two because the `A`-datum *is* the restriction of the `A₀` one, -- and this crossing makes that explicit (`S07.isCoherent_of_supportedSpan_le` for the support, -- `IsCoherent.congrMap` + `S08.dadeIntegralCharacterMap_restrict_eq_of_support` for the map). The -- witness `η̄ − η` is `A`-supported by the (4.7) estimate — *not* merely `A₀`-supported — which is -- what makes the descent possible. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_coherent_restrict -- **A member and its conjugate have equal degree** — what makes the descent above -- branch-independent: the (4.7) estimate only needs the two degrees to agree, and that holds for -- every member, with no uniform-degree hypothesis. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_conj_apply_one -- **The (8.15.3) base coherence retargeted to the (9.5) isometry** — the `hAbase` supplier of -- `sOf_nineEleven_coherent`. `sOf_degreeSubfamily_coherent` already lands on the support `A(M)`; -- only the map differs, and `dadeIntegralCharacterMap_apply_of_support` collapses *any* -- `dadeIntegralCharacterMap` over a fixed `S04.Hypothesis` to that hypothesis's own `dadeMap` on -- supported arguments. So the pin `dd.dade = h46.dade0.restrict …` suffices — no agreement -- between the two `FullDadeIsometryData` is needed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_degreeSubfamily_coherent_restrict -- **The (8.15.3) base coherence lifted to the `A₀`-support** — the `hAbase` supplier. Enlarging -- the support is `S07.isCoherent_of_supportedSpan_le`; its containment `ℤ[S, A₀] ⊆ ℤ[S, A]` holds -- because the cut has uniform degree, so `1 ∉ A₀` forces an `A₀`-supported lattice element to -- vanish at `1`, hence to be a combination of member differences, each `A`-supported by (4.7). -- Moving the map is `IsCoherent.congrMap` through the restriction identity that the case (b) -- descent uses in the opposite direction. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_degreeSubfamily_coherent_A0 -- **(9.11.1) at §9 level**: the two honest carriers of case (9.7.a) and the maximality refuter they -- feed. The §13 forms (`S13.NineElevenPairBound` / `_EqualityRefutation` / -- `S13.caseA_refuter_of_equality_refutation`) are stated over `S13.Hypothesis`, but their only -- dependence on it is packaging aliases (`hyp.s11Setup`, `hyp.chief`, `mkSection11CharacterData`, -- `hyp.H0Cprime`, `hyp.C`) plus `tau`/`A0`, which are parameters here — so the descent is a rename, -- not new mathematics, and the (9.11.1) squeeze argument is unchanged. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_refuter_of_equality_refutation -- **The `Dmem` input of the (5.6) engine, at §9 level** — `CharacterPsiDecomposition` at `ψ = 0` -- built by `ofProjection` from the §9 `R`-family. The map is the *coherent extension*, not `τ`: -- at `ψ = 0` the `ofProjection` obligation `tau1 χ ∈ ℤ[Irr G]` is false for the Dade map (an -- isometry only on the supported lattice) but is exactly `IsCoherent.extension_mem_ZIrr`. -- This is what lets `S08.coherentDegreeSqNormBound_of_not_coherentW_k` be fed **without** -- `S13.sixTwoDecompositionData`, whose μ-grid `params` exist only to manufacture these data from -- the §10 packaging (issue 1045). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_memberPsiDecomposition -- **The `Da` input of the (5.6) engine, at §9 level** — the break member `ψ` decomposed against the -- scaled anchor `a • χ₁`. Here `tau1` *is* `τ`: the obligation is `τ (ψ − a·χ₁) ∈ ℤ[Irr G]`, and -- the degree match makes that difference `A₀`-supported, so -- `dadeIntegralCharacterMap_mem_ZIrr_of_supported` applies — the asymmetry with the `ψ = 0` member -- data, where the Dade map cannot serve and the coherent extension must. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_breakPsiDecomposition -- **The (5.2.d)/(5.2.e) decomposition supply of the (5.6) engine, at §9 level** — the §9 -- replacement for `S13.sixTwoDecompositionData`. All three components are immediate from the two -- `ofProjection` lemmas above: the two `tau1` equations hold by `rfl` (ofProjection stores the map -- it is given), and the family orthogonality is `sOf_memberRFamily_orthogonal`, likewise by `rfl` -- on the `imageFamily` fields. The §13 version reaches the same data through the §10 μ-grid, -- which is what tied the (5.6) route to the packaging; here only the §9 R-family dispatch is used, -- so no type hypothesis appears. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_sixTwoDecompositionData -- **(9.11.1) preamble at §9 level**: every `𝒮(H₀C′)`-member has degree `q·d` with source degree -- `d ≤ u` — the `∃ d, χ(1) = q·d ∧ d ≤ u` half of `CaseAPairBound`'s conclusion. Both ingredients -- (`induceHU_apply_one_eq_q_mul`, `xiOf_H0Cprime_source_apply_one_le_u`) were already type-free; -- §13 needs `hncH0C`/`htype` here only to rewrite `cprimeSub … = derivedInG hyp.C`, and at §9 -- `chars.Cprime` *is* `cprimeSub data chief`, so that step disappears. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_break_source_degree -- **τ-transport for image families** — only `image_eq` mentions `τ`, so `.imageSet` is preserved -- definitionally and `Orthogonal` (stated purely on `imageSet`) transfers for free. This is the -- seam between the certain-type families (produced for a Hypothesis (4.6)'s stored `h.tau`) and -- the norm-weighted engines (which hardcode `hyp.fullDadeIsometryData hconj`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.OrthonormalCharacterImageFamily.congrTau -- **(9.11.1) pair bound, discharged at §9 level** — the §13 producer `S13.nineElevenPairBound` -- without its `hncH0C`/`htype`: those serve one `cprimeSub … = derivedInG hyp.C` rewrite that is -- definitional here, and the (5.2.d)/(5.2.e) data come from the §9 R-family dispatch rather than -- the §10 μ-grid. ⚠ This lives at the `A₀` level (the engine's Dade hypothesis is `h46.dade0`), -- so feeding it to the `A`-level (9.11) needs the same descent case (b) uses. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_pairBound -- **Positive `Snorm` for every `𝒮(Y)`-member** — the §9 form of `S13.sOf_mem_Snorm_pos`, via the -- `⊥`-kernel bridge instead of `S13.Hypothesis`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_mem_Snorm_pos -- **(9.11.1) `𝒮₂ = 𝒮₁`, subset form, at §9 level** — at the equality configuration the degree-`qa` -- cut already saturates the `2q²au` bound exactly, so any `𝒮₂`-member outside it would add -- positive `Snorm` beyond `hFbound`. §13 carries an unused `_hG` and reaches finiteness through -- its packaging; here it is `sOf_finite` plus the `⊥`-kernel bridge, and no type hypothesis -- appears. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sTwo_subset_degreeQaCut -- **(9.11.1) `𝒮₂ = 𝒮₁`, degree form, at §9 level** — the `hS2deg` consumed by the (9.11.2) -- TI-witness and the (9.11.3) count. A one-liner over the subset form, as in §13, but with no -- type hypothesis anywhere on the route. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sTwoExtraction -- **(9.11.2) two-summand inertia inputs, at §9 level** — `K₁, K₂` of relative index `a` in `U` -- with `C = K₁ ⊓ K₂`. §13 needs `hncH0C`/`htype` here only to rewrite `C = cSub` before seeing -- `C′ ≤ C`; at §9 `chars.C` *is* `cSub data chief`, so both hypotheses disappear. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_two_summand_inertia_inputs -- **(9.11.3) count inputs, at §9 level** — the `𝒳(H₀C)` class equation with the degree-`u` count -- split into `W₁`-orbits. Same story as (9.11.2): §13's `hncH0C`/`htype` serve one `C = cSub` -- rewrite, definitional here. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_nineElevenThree_count_inputs -- **(9.11.2) TI-witness, at §9 level** — `U₁` with `C ≤ U₁ ≤ U`, `[U:U₁] = a` and the TI property. -- Same shape as the two-summand inertia inputs; the `H₀C′ ≤ H₀C` step that §13 reaches by -- rewriting `C = cSub` is definitional here, so `hncH0C`/`htype` are again absent. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_nineElevenTwo_tiWitness -- **(5.7) at uniform degree `qu`: `𝒮₃` coherent, at §9 level** — the `τ₃` of the (9.11.6) -- dichotomy. Structurally identical to `sOf_caseB_coherent` (same norm-general engine, same §9 -- `R`-family dispatch); only the family (`𝒮(H₀C′) ∖ 𝒮₂`) and the degree (`qu`) differ. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sThree_coherent -- **(9.11.4)–(9.11.8) norm bound, at §9 level** — discharged up to the (9.11.7)–(9.11.8) residual. -- `⟨α^τ, λ^{τ₃}⟩` is constant over `𝒮₃`; nonzero gives the Bessel count `|𝒮₄| ≤ ‖α‖² = N`, zero is -- the book's (9.11.6) branch which `h78` refutes. Every `nineElevenGamma_*` input was already -- §9-level; §13's `hncH0C`/`htype` served the `H₀C′ ≤ H₀C` step, definitional here. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_normBound_of_sevenEightRefutation -- **(9.11.2)–(9.11.5) equality refutation, at §9 level** — assembles `CaseAEqualityRefutation` -- from the `𝒮₂ = 𝒮₁` extraction and the norm bound, with Phases B/C as the §9 lemmas above and -- the arithmetic spine `nineElevenCaseA_equality_refutation` (already §9 and type-free). -- **No `hncH0C`/`htype`** — §13 threads them only into Phases B and C, and both shed them here. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_equalityRefutation_of_sTwoExtraction_normBound -- **(5.5) for coherent extensions, at §9 level** — a coherent extension evaluates a member as a -- partial `R`-family sum. The §9 form of `S13.coherent_extension_eq_sum_memberRFamily`: `ψ ≠ ψ̄` -- and the supportedness of `ψ − ψ̄` come from `hKsupp` and odd order rather than the packaging's -- `mderivSharp_subset_A0`, so no type hypothesis appears. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_coherent_extension_eq_sum_memberRFamily -- **`coherent_ortho` cross-orthogonality, at §9 level** — images of members of two coherent -- subfamilies of `𝒮(Y)` with `⟨ψ, λ⟩ = ⟨ψ, λ̄⟩ = 0` are orthogonal, via (5.5) on both sides plus -- the (5.2.e) dispatch `sOf_memberRFamily_orthogonal`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_coherent_extension_cross_orthogonal -- **The union-pair coherent extension** (Peterfalvi (5.6.3); Coq `extend_coherent_with` + -- `bridge_coherent`) and **the (9.11.7)–(9.11.8) projection budget** — moved out of -- `S11_NineElevenPairAdjoin` (namespace `S13`) to `S07_UnionPairBridge` (issue 1045): neither -- statement mentions §9 or §13 data, and the §9-level (9.11) chain needs them without importing -- the §11/§13 packaging closure. #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.unionPairExtension #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.isCoherent_union_pair_of_bridge #assert_only_allowed_axioms OddOrder.Peterfalvi.S07.exists_bridge_target_of_budget -- **(9.11.7)–(9.11.8) discharged at §9 level** — the last §13 producer of the case (9.7.a) chain, -- descended. In the (9.11.6) zero branch pick `λ₁ ∈ 𝒮₄` (nonempty, else the arithmetic spine -- already refutes), set `e = u/a ≥ 2` and `β = λ₁ − e·ψ₁`; the projection budget over `𝒮₂^{τ₁}` -- and `𝒮₄^{τ₃}` yields the bridge target `Γ`, and the union-pair extension adjoins `{λ₁, λ̄₁}` -- coherently to `𝒮₂`, contradicting `hpairs`. §13's `hncH0C`/`htype` served the single -- `hyp.C = cSub` rewrite inside `𝒮₄ ⊆ 𝒮₃`, definitional here; the (9.11.4) norm value arrives as -- the carrier's `hnorm` instead of being rebuilt from `γ`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_sevenEightRefutation -- **(9.11.4)–(9.11.8) norm bound, discharged at §9 level** — the residual `h78` supplied. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_normBound -- **(9.11.2)–(9.11.8) equality refutation, discharged at §9 level** — issue 9083 Phases B–E, at -- §9. This is the `hrefuteEq` that `sOf_nineEleven_coherent` exposed. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_equalityRefutation -- ⭐ **Peterfalvi (9.11) at §9 level with the case (9.7.a) residual discharged** (issue 1045): -- `𝒮(H₀C′)` is coherent for the Hypothesis-(9.5) Dade isometry `τ = (A(M), M, G)`, stated on -- `TypesIIIIIIVSetup` + `ChiefFactorData` + `Section11CharacterData` — Hypotheses (9.2), (9.4), -- (9.5) — hence **valid for types II, III and IV alike**, as the book states it. What stays -- parametric is not open mathematics: `dd`/`hdd` are the (8.15) Dade datum and its pin to the -- (4.6) restriction — the `2 ≤ ncard` count is discharged by `caseA_irrCut_two_le_ncard`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.nineEleven_coherent -- **Hypothesis (9.2) at the full II/III/IV span** (issue 1045). The (8.6) nontrivial core for -- type II (`TypeIIData.common`, transferred) was missing, which is why the §9 setup — and with it -- (9.4), (9.5) and (9.11) — was reachable only through the §10 packaging's `IsTypeIII ∨ IsTypeIV`. #assert_only_allowed_axioms OddOrder.GroupTheory.typePNontrivialCore_of_isTypeII #assert_only_allowed_axioms OddOrder.GroupTheory.typePNontrivialCore_of_isTypeIIorIIIorIV #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typesIIIIIIVSetup_of_type_alt #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typesIIIIIIVSetup_of_isTypeII -- **Hypothesis (9.5) constructed at §9 level** — `u = |Ū|` pinned, `C`/`U'`/`C'`/`𝒳`/`𝒮` genuine, -- only the caller-supplied Dade map and the two (9.11)-parameter placeholders left free. The -- previous route `S12.Hypothesis.mkSection11CharacterData` needed the §10 `Hypothesis`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.mkSection11CharacterData -- ⭐ **Peterfalvi (9.11) for a maximal subgroup of type II** — the instance hub issue 9163 §3 -- item 3 asked for. Hypothesis (9.2) from `TypeIIData`, (9.4) from `exists_chiefFactorData` -- (type-free), (9.5) from `mkSection11CharacterData`; the coherence is then the type-free -- `sOf_nineEleven_coherent_of_count`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeII_nineEleven_coherent -- **A nonempty degree cut of `𝒮(Y)` has two members** — conjugation-closure (`irrCut_conjClosed`) -- plus odd order (no real characters). This is what removes the `h2` exposure from the §9 (9.11): -- §13 reaches its base coherence with an existence witness, and for a conjugation-closed family in -- odd order that is the same condition. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.irrCut_two_le_ncard -- **The degree-`qa` base subfamily of `𝒮(H₀C′)` has two members** — the exact (9.8.d) count has a -- positive lower bound `(p−1)·[U:U′]`, so the cut of `𝒮(H₀U′)` is nonempty; `sOf_antitone` along -- `H₀C′ ≤ H₀U′` moves the witness down. Same route as inside -- `S13.caseA_coherent_sOf_H0Cprime_of_refuter`, every step §9-level. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.caseA_irrCut_two_le_ncard -- **(9.11) at the `A₀` level** (issue 1045 着手順 3) — the two Clifford branches before the descent -- to `A(M)`. Both run on `A₀ = A ∪ V^M` because case (a)'s (5.6) engine takes `h46.dade0`, and -- `(M')^# ⊆ A` is false for the type-uniform `A(M) = typePACore`. This is the level at which the -- §11/§13 packaging states (9.11): `hyp.base.A0` / `hyp.base.tau` are definitionally this support -- and this map. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.sOf_nineEleven_coherent_A0 #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.nineEleven_coherent_A0 -- **The (8.15.3) family is monotone in the kernel-test subgroup** (issue 1045 着手順 3): a larger -- `H` makes `H ⊄ Ker θ` easier to pass. This is what lets the §9 (9.11) chain accept a -- Hypothesis (4.6) whose (4.6.c) `H` is larger than `M_σ` — notably the §10/§13 packaging, which -- instantiates `H = K = M'` — so its `hHeq` pin relaxes to the containment `hHle`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.inducedNonKernelFamily_mono -- **Restricting an (8.15) Dade support datum to a smaller `M`-stable support** (issue 1045 -- 着手順 3): Peterfalvi (2.11) at the level of the whole (8.15) package. The intended instance is -- `A₀(M) = A(M) ∪ V^M ↝ A(M)` — the §10 `Hypothesis` carries its datum on `A₀(M)` while the §9 -- (9.11) chain consumes one on `A(M)`. The faithful-kernel pin transports because -- `ftSupportKernel` branches only on `C_G(x) ⊄ M` once `x` is known to lie in the support. #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.ftSupportKernel_congr_of_subset #assert_only_allowed_axioms OddOrder.Peterfalvi.S10.DadeSupportHypothesisData.restrict -- ⭐ **Peterfalvi (9.11) for the §11/§13 packaging, derived from the §9 argument** (issue 1045 -- 着手順 3). `coherent_sOf_H0Cprime` is now this, not the §13 chain: `hyp.base.tau`/`hyp.base.A0` -- *are* the §9 map and support definitionally, `h46.K` and `h46.subH` are both `M'` (so the -- relaxed `hHle` applies via `Msigma_le_derived`), and the §10 datum on `A₀(M)` restricts to -- `A(M)` by `S10.DadeSupportHypothesisData.restrict` + (8.16). The **only** use of -- `hnc`/`htype` left is the packaging dictionary `hyp.C = cSub s11Setup chief`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.coherent_sOf_H0Cprime_of_section9 -- **(8.17.a) core-order coprimality and the (8.13.c4) escape exclusion, de-specialized** -- (issue 1044 着手順 5): both were stated at the canonical `Section16MaximalPairCore` but used -- nothing of it beyond "`S` is a maximal not conjugate to `M`" resp. "`S` is of type II" — the -- carried `data`/`hSW1`/`hSW2`/`hKstar`/`ha0` were dead weight. Restated for an arbitrary such -- `S`, matching the book's (8.18), with the canonical-pair uses becoming one-line applications. #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeP_core_order_coprime #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeP_escaping_centralizer_not_le_typeII -- **Peterfalvi (10.11) type-II collapse lemmas** (issue 1048): `H₀ = 1` + `p = |W₂|` from the two -- order relations `|W₂|^q = |H| = p^q·|H₀|` with both primes (`typeII_chiefFactor_H0_trivial`), -- and `C′ = 1` from the type-II abelian `U` (`typeII_cprimeSub_eq_bot`). #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeII_chiefFactor_H0_trivial #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeII_cprimeSub_eq_bot -- ⭐ **Peterfalvi (10.11), the type-II second assertion** (issue 1048): for a type-II maximal `M`, -- in the notation of Hypotheses (9.2)/(9.5), `H` is elementary abelian of order `p^q` (`p = |W₂|`) -- and the set `𝒮` of Hypothesis (9.5) is coherent. The book's "…and so `C′ = 1` and -- `𝒮(H₀C′) = 𝒮`. Thus, by (9.11), `𝒮` is coherent" — the (9.11) step is the type-II instance -- `typeII_nineEleven_coherent` built in issue 1045, with the support collapsed by `sOf_bot_eq_sSet`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S11.typeII_sSet_coherent /-! **BG Theorem E.3(b) Step 3, (c), and (d) — Steps 3 and 4 complete** (`BG.AppE_ExponentP`, `BG.AppE_SemidirectFrattini`; issue 3021, 2026-07-20). **Step 3** takes an `A`-invariant exponent-`p` subgroup `S` maximal subject to containing the seed `Ω₁(C_R(R₀))` and identifies it with `Ω₁(R)`; the three clauses of (b) and the bound (c) then fall out of Step 2 applied to `S = Ω₁(R)`: * `RegularOperatorSetup.eq_omega_of_maximal` — BG's maximal choice **is** `Ω₁(R)`. The `S ≠ Ω₁(N_{Ω₁(R)}(S))` branch is BG's `(E.14)`–`(E.16)` count, closed by contradicting maximality through E.2 applied to `Ω₁(T)`. * `RegularOperatorSetup.omega_pow_eq_one` — **(b) first clause**, `Ω₁(R)` has exponent `p`. * `RegularOperatorSetup.R₀_not_le_derived_omega` — **(b) second clause**, `R₀ ⊄ (Ω₁(R))'`. * `RegularOperatorSetup.card_omega_abelianization` — **(b) third clause**, `|Ω₁(R)/(Ω₁(R))'| = p²`. * `RegularOperatorSetup.card_omega_le` — **(c)**, `|Ω₁(R)| ≤ p^q`. **Step 4** is part (d). Its counting half lives in `AppE_ExponentP` because it consumes Step 2's `(E.15)`; its group-theoretic half is the new leaf `AppE_SemidirectFrattini`: * `RegularOperatorSetup.orbit_eq_coset` — the `S`-class of `v ∈ R₀^#` **equals** `vS'`. ⭐ the only place in Appendix E where `(E.15)` is used; Step 2 gets the same information from the product formula more directly. * `RegularOperatorSetup.exists_conj_mem_R₀` — *"every element of `R₀S' − S'` is conjugate to an element of `R₀^#`"*. * `RegularOperatorSetup.exists_conj_smul_R₀` — *"for each `β ∈ B`, `R₀^β = R₀^x` for some `x ∈ S`"*. * `RegularOperatorSetup.exists_smul_R₀_invariant` — a `B`-invariant `S`-conjugate of `R₀`. ⭐ BG's *"variation of the Frattini argument … Schur–Zassenhaus … `B* = B^y`"* is verbatim the proof of **Isaacs Lemma 3.24(a)** (`Isaacs.Ch04.glauberman_fixed_point_exists`, already in the repo, `Γ = S ⋊ B` acting on `Ω`), so it is *applied* rather than rebuilt — no second semidirect-product construction was added. * `RegularOperatorSetup.B_fixes_R₀_of_fixes_frattini` — **(d)**. The closing coset fixed-point step is likewise **Isaacs Thm 3.27** (`aInvariant_coset_mem_centralizer_of_coprime_subgroup`) applied to `y·N_S(R₀)`, with `A`-regularity forcing the fixed point to be `1`. (E.4 and E.5 were the last `sorry`s of Appendix E; both closed before the 2026-08-07 repo-wide sorry-free milestone.) -/ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.eq_omega_of_maximal #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.omega_pow_eq_one #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.R₀_not_le_derived_omega #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_omega_abelianization #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.card_omega_le #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.orbit_eq_coset #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_conj_mem_R₀ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_conj_smul_R₀ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.exists_smul_R₀_invariant #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.B_fixes_R₀_of_fixes_frattini /-! **BG Appendix E, Proposition E.4 — the index clause and the machinery of the abelian clause** (`BG.AppE_AbelianCentralizer`; issue 3021, 2026-07-20). E.4 says `C_S(Z₂(S))` is abelian of index `p` in `S = Ω₁(R)`. The **index clause is complete**; the abelian clause is BG's contradiction inside the two-dimensional `𝔽_p`-space `S/S'`, and every named step of it is proved here — what is left is threading Step 2's chain API into them. * `omega1UpperCentralTwo_eq_upperCentralSeries` — `Ω₁(Z₂(S)) = Z₂(S)` for exponent-`p` `S`. ⚠ Without this the proposition cannot even be *stated* with BG's `Z₂(S)`: Step 2 spells the same subgroup as `C_S(Ω₁(Z₂(S)))`, because Lemma 5.2 is phrased for narrow `p`-groups. * `RegularOperatorSetup.index_centralizer_upperCentralSeries` — **E.4's index clause**, `|S : C_S(Z₂(S))| = p`. ⚠ Only `|S| ≥ p⁴` is used; neither `B`-regularity nor `B ⊄ N(R₀)` enters, though BG lists all three for the proposition as a whole. * `RegularOperatorSetup.not_fixes_sup_frattini_of_not_fixes_R₀` — `(E.18)`, the contrapositive of Theorem E.3(d); the only place E.4 consumes Step 4. * `RegularOperatorSetup.commutator_eq_bot` — `(E.20)`, `B` abelian. BG's *"By Proposition 1.5(d)"* is **Isaacs Cor 3.28** (`coprime_fixedPoints_quotient_of_coprime_normal`). * `RegularOperatorSetup.dvd_sub_eigenvalues` — BG's `r = r₀`. * `RegularOperatorSetup.not_dvd_sub_eigenvalues_of_not_fixes` — `(E.21)`, `t ≠ t₀`. * `sup_commutator_eq_of_min_index` — `(E.24)`, `T'H_k = H_{k-1}`. * `range_of_max_commutator_indices` — `(E.25)`'s range `j ≤ i ≤ k − 2`. ⚠ BG states `j ≤ i` without argument; it comes from using the maximality of `i` **at the index `i + 1`**. * `commutator_le_of_generators` — `(E.25)`'s witness `⁅wᵢ,wⱼ⁆ ∉ H_k` (contrapositive form). * `commutator_self_le_of_generator` — its diagonal case, giving `i ≥ 1` and hence **`k ≥ 3`**. ⭐ This is what closes BG's *"Similarly one can show that `(E.23)`"*: the alternative recursion `t_{i+1} = tᵢ·t₀` forces `H₁ = T'·H₂`, hence `H₁ ≤ H₂` once `k ≥ 3` — impossible since `|H₁ : H₂| = p`. * `commutatorElement_zpow_mul_zpow_mul` — Lemma 4.2(a) with errors in **both** slots (Step 2 only ever needed one, its second slot being the generator of `R₀`). * `dvd_sub_mul_of_commutator_eigen` — `(E.26)` and `(E.27)` in one operator-agnostic step; BG gets the second from the first by *"using `β` instead of `α`"*, and so do we. * `eq_of_eigenvalue_relations` — the closing arithmetic, `t₀ = t`. The range bounds are used to upgrade a congruence mod `q` to an **equality** `i + j + 1 = k − 1`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.omega1UpperCentralTwo_eq_upperCentralSeries #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.index_centralizer_upperCentralSeries #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_fixes_sup_frattini_of_not_fixes_R₀ #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.commutator_eq_bot #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.dvd_sub_eigenvalues #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.not_dvd_sub_eigenvalues_of_not_fixes #assert_only_allowed_axioms OddOrder.BG.AppE.sup_commutator_eq_of_min_index #assert_only_allowed_axioms OddOrder.BG.AppE.range_of_max_commutator_indices #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_le_of_generators #assert_only_allowed_axioms OddOrder.BG.AppE.commutator_self_le_of_generator #assert_only_allowed_axioms OddOrder.BG.AppE.commutatorElement_zpow_mul_zpow_mul #assert_only_allowed_axioms OddOrder.BG.AppE.dvd_sub_mul_of_commutator_eigen #assert_only_allowed_axioms OddOrder.BG.AppE.eq_of_eigenvalue_relations #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.br_leibniz #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.degree_of_commutativity_zero #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.beta_iterate_fixed_eq_zero #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.T_not_abelian #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.e23_fails_at_two #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.bg_propE4_lie_counterexample #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.centralizer_zpowers_vg #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.mem_centralizer_upperCentralSeries_two_iff #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.centralizer_upperCentralSeries_two_not_abelian #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.act_regular #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.q6Setup #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.q6_centralizer_not_mulCommutative #assert_only_allowed_axioms OddOrder.BG.AppE.Filiform.printed_propE4_false /-! **BG Proposition E.4, corrected** (`BG.AppE_BetaSupply` + `BG.AppE_PropE4`, issues 3021/9402, 2026-07-21) — ⭐ the corrected proposition is **fully proved**. * `AppE.scale_iterCommutator_of_two_step` — the corrected `(E.23)` supply: given the 2-step centralizer relations `hdc` (the hypothesis missing from the printed statement), an endomorphism scaling a complement generator by `t` and `T` by `t₀` (mod `H₁`) scales every chain term `Hₐ` by `t₀tᵃ` (mod `Hₐ₊₁`). * `RegularOperatorSetup.centralizer_upperCentralSeries_abelian_index_p` — Proposition E.4 with `hdc` added: `T = C_S(Z₂(S))` is abelian of index `p`. The assembly discharges the `(E.28)` engine's inputs from the proved `(E.18)`–`(E.22)` pieces and the supply above. Without `hdc` the statement is **false** (`printed_propE4_false` above). -/ #assert_only_allowed_axioms OddOrder.BG.AppE.scale_iterCommutator_of_two_step #assert_only_allowed_axioms OddOrder.BG.AppE.RegularOperatorSetup.centralizer_upperCentralSeries_abelian_index_p /-! **Peterfalvi Part II, Ch. I §3, Lemma 5 — conjugate summand split and the type-B branch** (`Peterfalvi.Appendices.Suzuki2Groups.ConjugateSummandSplit` + `Peterfalvi.Appendices.Suzuki.TypeBFromW`, issue 2048, 2026-07-21). * `nonempty_isomorphicOrderQModuleSplit_of_commuting_automorphism` — a nontrivial odd-order automorphism fixing `Z` pointwise, commuting with the `K`-action, with all fixed points of its nontrivial powers inside `Z`, moves any invariant summand of `Q ⧸ Z` and yields an equivariantly isomorphic two-summand split. * `isTypeB_Q_of_orderThree_of_mem_W` — the assembled type-B branch of Lemma 5: `|st| = 3`, `Q` a Suzuki 2-group of order `q³`, and `1 ≠ w ∈ W` force `Q` to be of type B via the Appendix III recognition theorem. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.nonempty_isomorphicOrderQModuleSplit_of_commuting_automorphism #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isTypeB_Q_of_orderThree_of_mem_W /-! **BG Corollary E.5** (`BG.AppE_E5Counting`, issue 3028, 2026-07-21) — ⭐⭐ the closing result of Appendix E is **fully proved**: under E.5's hypothesis block with the alternative `(i) |M/M'| prime ∨ ((ii) ∧ hdc)` (the corrected E.4's `hdc` added to the (ii) branch, which is false as printed — `printed_propE4_false`), every maximal subgroup of `G` is of Peterfalvi type I or type II. * `e5_msigma_index_prime_of_ii_hdc` — the `(ii) ∧ hdc ⟹ (i)` half, assembled from the raw hypothesis block: Corollary 15.9 + 15.9(c) suitable complement + `(E.30)`–`(E.32)` + Theorem E.3 + corrected E.4 (`E = K₁`, so `[M : M_σ] = |K₁|` is prime). * `maximalSubgroups_isTypeI_or_isTypeII` — the full corollary: a maximal subgroup neither of type I nor II would be type `P₁`, conjugate to the Theorem 14.7 partner `N*` of `N`; the `(E.33)`/`(E.34)` counting (Lemma 14.5(c), the `Ẑ` TI-count) then measures the four disjoint saturation families over `|G|`. -/ #assert_only_allowed_axioms OddOrder.BG.AppE.e5_msigma_index_prime_of_ii_hdc #assert_only_allowed_axioms OddOrder.BG.AppE.maximalSubgroups_isTypeI_or_isTypeII /-! **Peterfalvi Part II, Ch. I §3, Lemma 5 — complete** (`Peterfalvi.Appendices. Suzuki2Groups.QuotientPlaneModel` + `Peterfalvi.Appendices.Suzuki.WCyclicDivides`, issue 2048, 2026-07-21) — ⭐ Lemma 5 is **fully proved**: `W` is cyclic, `|W| ∣ q + 1`, and `W ≠ 1` makes `Q` a Suzuki 2-group of type B. * `exists_planeCoordinates_of_isomorphicSplit` — the plane model: an isomorphic order-`q` split of `P ⧸ Z` under a cyclic fixed-point-free actor of order `q - 1` yields `F_q × F_q` coordinates with the `K`-action as diagonal nonzero scalars. * `isCyclic_W_and_card_dvd_of_orderThree` — `W` embeds `F_q`-linearly into `GL(2, q)` with no fixed projective point (moved-summand engine), so the two-dimensional projective-freeness theorem gives cyclicity and `|W| ∣ q + 1`. * `lemmaFive_of_orderThree` — the assembled source-facing Lemma 5. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.exists_planeCoordinates_of_isomorphicSplit #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isCyclic_W_and_card_dvd_of_orderThree #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.lemmaFive_of_orderThree /-! **Peterfalvi Part II, Ch. II, step (1)** (`Peterfalvi.Appendices.Suzuki.FirstCase.*`, issue 2053, 2026-07-21) — the opening step of Theorem B under (B1)/(B2) is **fully proved**: `|Q₀| = 2^p`, `C_K(P) = 1`, `V = W ⋊ P`, `N_G(P) = C_G(P)` and `C_D(P) = C_W(P) × P`. The `FirstCaseHypothesis` carrier records (B1) as "elementary abelian 2-subgroups of `C_G(P)` have order ≤ 2"; the adapted field model (`exists_adapted_field_model`) packages the §2 Prop 3 coordinates with the `P`-equivariances and the fixed-element dichotomy. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_Q0_eq_two_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_Q0_inf_centralizer_eq_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.K_inf_centralizer_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.W_join_P_eq_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.normalizer_P_eq_centralizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.D_inf_centralizer_eq_W_inf_centralizer_join_P /-! **Peterfalvi Part II, Ch. II, step (2)(a)** (`FirstCase/StepTwo.lean`, issue 2053, 2026-07-21): the faithful centralizer quotient `C_G(P)/N` is a rank-one (A1)+(A2) group — `exists_four_subgroup_of_quotient` lifts a four-subgroup along an odd kernel, and `rankOneQuotient` assembles `RankOneHypothesis` from §3 Prop 1(a)/(c) plus (B1). Step (2)(b) (`exists_affineNearFieldModel`) cites Appendix II Prop 1; that was sorried behind Brauer–Suzuki until the `Q₈` case closed on 2026-08-07 (issue 9506), so it is now asserted too. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_four_subgroup_of_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.rankOneQuotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.exists_affineNearFieldModel /-! **Peterfalvi Part II, Ch. II, step (3), the dimension identity** (`FirstCase/StepThree.lean`, issue 2053, 2026-07-22): for a nontrivial `KP`-invariant elementary abelian `r`-subgroup `M ≤ Q`, `|M| = |C_M(P)|^p` ([Is] Thm 15.16 via the kernel-FPF identity, with `K` acting fixed-point-freely on `M` from §2 Prop 1(a)), and in particular `C_M(P) ≠ 1`. Both are sorry-free: the `r ≠ p` hypothesis is not needed (the identity is characteristic-free in `|E|`), and the book's opening Frobenius argument is subsumed. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_eq_card_inf_centralizer_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.inf_centralizer_ne_bot_of_invariant /-! **Clifford counting** (`FirstCase/StepThree.lean`, issue 2053, 2026-07-22): the counting content of Clifford's theorem ([Is] Thm 6.5) for step (3) — if `M` (finite abelian) has no proper nontrivial `L`-invariant subgroup and `V` is a minimal nontrivial `K`-invariant subgroup for `K ◁ L`, then `|M| = |V|^t`. Sorry-free; no semisimple-module machinery. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_card_eq_pow_of_minimal_invariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_minimal_aInvariant_le /-! **Peterfalvi Part II, Ch. II, step (3), first Clifford branch** (`FirstCase/StepThree.lean`, issue 2053, 2026-07-22): a `K`-invariant subgroup `V ≤ Q` of prime order `r` forces `2^p − 1 ∣ r − 1` — `K` acts faithfully on `V` (f.p.f. on `Q`), embedding into `Aut(V) ≅ (ℤ/r)^*`. Sorry-free. (The dichotomy `exists_prime_order_invariant_or_irreducible` and `card_inf_centralizer_eq_prime` used to inherit the step (2)(b) sorry — issue 9318 — and are asserted here since the `Q₈` case closed on 2026-08-07.) -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_K_dvd_sub_one_of_prime_order_invariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_inf_centralizer_eq_prime #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.exists_prime_order_invariant_or_irreducible /-! **Peterfalvi Part II, Ch. II, step (5), the near-field analysis** (`FirstCase/StepFive.lean`, issue 2053, 2026-07-22): if `C_Q(P) ≅ F^*` is nonabelian then `|F| = 9`. The unit group of a nilpotent noncommutative near-field splits as a central cyclic odd part `O` and a nonabelian Sylow `2`-subgroup `T` (`exists_nilpotent_units_sylowTwo_decomp`); the noncommutativity yields a pair of noncommuting `2`-elements (`exists_noncommuting_two_elements_of_nearField_units`); and, given that `2`-elements have order dividing `4`, `T` is `Q₈`, forcing `|F| = 9`, `|F^*| = 8` (`nearField_card_eq_nine_of_nilpotent_units`). All three are sorry-free. (The `2`-element exponent bound is supplied by the proved Higman theorem `pow_four_eq_one_of_isSuzuki2Group`. The near-field model comes from Appendix II Proposition 1, which was sorried behind Brauer–Suzuki until 2026-08-07 (issue 9506); the step (5) conclusion `card_nearField_eq_nine_and_Q1_eq_bot` is therefore asserted here as well.) -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_nilpotent_units_sylowTwo_decomp #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_noncommuting_two_elements_of_nearField_units #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.nearField_card_eq_nine_of_nilpotent_units #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_nearField_eq_nine_and_Q1_eq_bot /-! **Peterfalvi Part II, Ch. II, step (6), the arithmetic lemma** (`FirstCase/StepSix.lean`, issue 2053, 2026-07-22): [HB] Kapitel IX, Lemma 2.7 — an odd prime power `f^a = 2^b + 1` (`b ≥ 1`) forces `a = 1` or `f^a = 9`. Elementary: the geometric-sum parity makes `a` even, and `(f^c - 1)(f^c + 1) = 2^b` (two powers of `2` differing by `2`) forces `f^c = 3`. Pure `ℕ` arithmetic, sorry-free; consumed by steps (6) and (8). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_one_or_pow_eq_nine_of_pow_eq_two_pow_add_one /-! **Step (6), the finite-field automorphism bound** (`FirstCase/StepSix.lean`, issue 2053, 2026-07-22): the ring automorphism group of a finite field of prime or prime-square order has exponent `≤ 2` (`σ² = 1`). Via `ringAut_card_prime_pow_eq_pow` (`σ x = x^{q^i}`) and `x^{|F|^i} = x`. Sorry-free; lets step (6)/(8) conclude that the odd-order automorphism group `Σ` of a field `F` with `|F| ∈ {f, 9}` is trivial. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.ringAut_sq_eq_one_of_card_prime_or_prime_sq /-! **A commutative near-field is a field** (`FirstCase/StepSix.lean`, App. II Prop 2 first alternative, 2026-07-22): `NearFields.fieldOfComm` builds a `Field` structure on a commutative `NearField` by adding `mul_comm` and the left distributive law (`NearField.mul_add_of_mul_comm`) to the existing `AddCommGroup`/`GroupWithZero`. Reusing the near-field operations keeps `+`, `*`, `⁻¹` unchanged, so a near-field automorphism is a ring automorphism of this field — the bridge into `RingAut` for step (6)/(8)'s field case. Sorry-free. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.NearFields.fieldOfComm /-! **Step (6), field-case abstract core** (`FirstCase/StepSix.lean`, issue 2053, 2026-07-22): if a finite field `F` of characteristic `f` has `|F| = 2^b + 1`, then `|F| ∈ {f, 9}`, and any odd-order group acting faithfully by ring automorphisms is trivial. Combines `FiniteField.card` (`|F| = f^a`), the arithmetic lemma, and the exponent-`2` bound `ringAut_sq_eq_one_of_card_prime_or_prime_sq`. Sorry-free; the model assembly of step (6)'s field case supplies `|F^*| = 2^b` (from `Q₁ = 1`) and `Σ ↪ RingAut F` (from `dAut`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_eq_and_aut_trivial_of_field_units_two_pow /-! **Step (6), field case — COMPLETE** (`FirstCase/StepSix.lean`, issue 2053, 2026-07-22): assuming `Q₁ = 1`, if the model's near-field `F` is commutative (a field) then `|F| ∈ {f, 9}` and `Σ = D = 1`. `dAutHom` realizes `D` as ring automorphisms (via `NearFields.fieldOfComm`), `Q₁ = 1` makes `|F^*| = |C_Q(P)|` a power of `2` with `|F| = 2^b + 1`, and the abstract core finishes. Sorry-free as a `∀`-model statement (a caller supplying the model inherits the issue 9318 sorry). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.dAutHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.card_field_eq_and_D_eq_one_of_comm /-! **Step (6), `F_{9,2}` case + assembly — COMPLETE** (`FirstCase/StepSix.lean`, 2026-07-24): if the model's near-field `F` is noncommutative then `|Σ| = |D| ∈ {1, 3}` ("an odd order group of automorphisms of `F_{9,2}` can only have order 1 or 3 as `F*_{9,2}` is quaternion of order 8", p. 110). `dMulAutHom` realizes `D` faithfully as multiplicative automorphisms of `F` (no commutativity needed), restriction to units is faithful for a group with zero, `Fˣ ≃* Q₈` (`NearFields.unitsMulEquivQuaternionGroup`: unique involution `-1` + Isaacs Thm 6.11), and an odd automorphism group of `Q₈` has order dividing `3` (`card_dvd_three_of_odd_mulAutQuaternion`, kernel-of-abelianization argument). With the field case this completes step (6) as a `∀`-model statement (`card_field_and_D_of_Q1_eq_bot`). The two assembled statements (`card_D_le_three_of_noncomm`, `card_field_and_D_of_Q1_eq_bot`) use step (5)'s `|F| = 9`, which inherits the residual `Q₈` Brauer–Suzuki sorry (long-term project, issue 0147) through step (4)'s `card_Q_eq_card_inf_centralizer_pow` → step (2)(b) chain — they are therefore intentionally unregistered (like the step (7) endpoints); all the new ingredients below are axiom-clean. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.mulAutToAbelianization #assert_only_allowed_axioms OddOrder.GroupTheory.card_dvd_three_of_odd_mulAutQuaternion #assert_only_allowed_axioms OddOrder.GroupTheory.card_dvd_three_of_odd_mulAut_of_mulEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.NearField.eq_neg_one_of_mul_self_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.unitsMulEquivQuaternionGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.dMulAutHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.dMulAutHom_injective /-! **Peterfalvi Part II, Ch. II, step (7)** (`FirstCase/StepSeven.lean`, issue 2053, 2026-07-22): `N = P` and `Σ ≅ C_W(P)` (p. 110). The axiom-clean infrastructure of the step (the full `N = P`, `Σ ≅ C_W(P)`, and `N∩W=1` contradiction inherit the issue 9318 + Higman sorries through the model and are intentionally unregistered): * `kernelN_eq_kernelInf_W_join_P` — the decomposition `N = (N ∩ W) × P` (step (1)), the sorry-free reduction backbone of `N = P`. * `orderOf_st_eq_char` — `f = |s·t| = char F` (the book's "(2), Ch. I §1 Prop 4(c) and App. II Prop 1"): distinct involutions `s̄, t̄` of `C_G(P)/N` and the odd-kernel bridge. * `Hypothesis.cQ_card_and_pGroup_of_trichotomy` — §3 Prop 1(c) reading: `C_Q(X)` a 2-group with `|C_Q(X)| = |C_{Q₀}(X)|^k` tied to `f` (PSL/Sz/PSU). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.kernelN_eq_kernelInf_W_join_P #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.orderOf_st_eq_char #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.cQ_card_and_pGroup_of_trichotomy /-! **Peterfalvi Part II, Ch. II, step (8), per-`w` induction facts** (`FirstCase/StepEight.lean`, issue 2053, 2026-07-22): for a nonidentity `w ∈ C_W(P)`, applying §3 Prop 1(c) to `⟨w⟩` gives `f = |s·t| ∈ {3, 5}` and `C_Q(w)` a `2`-group. Axiom-clean application of the trichotomy reading (`w` centralizes `Q₀`, so the four-subgroup of `Q₀` lies in `C_G(w)`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.st_mem_and_cQ_isPGroup_of_mem_centralizer_W /-! **Step (8), the fixed-field arithmetic** (`FirstCase/StepEight.lean`, issue 2053, 2026-07-22): for a finite field `F` (characteristic `f`) and a ring automorphism `σ`, the fixed set is an additive subgroup, so `|{x : σ x = x}| = f^a` (additive Lagrange); if the fixed *units* form a `2^b`-group (`b ≥ 1`) then `f^a = 2^b + 1`, so `|{x : σ x = x}| ∈ {f, 9}` (via the step (6) arithmetic lemma). Model-independent, axiom-clean. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_card_fixedSet_eq_char_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_fixedSet_mem_of_units_two_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_fixedSet_eq_card_fixedUnits_add_one /-! **Step (8), the model equivariance** (`FirstCase/StepEight.lean`, issue 2053, 2026-07-22): `dAut` is a homomorphism (`model_dAut_hom`, with `model_dAut_one`, `model_dAut_inv_cancel`), and `qEquiv` intertwines `D`-conjugation on `Q` with `dAut` on `F^*` (`model_qEquiv_conj`): for `g ∈ D`, `q ∈ Q`, `qEquiv (g q g⁻¹) = dAut g (qEquiv q)` (conjugating `emb` and unwinding `dAut_conj`/`qEquiv_conj`). Axiom-clean, model-general — the linchpin connecting the global `C_Q(w)` to the field-theoretic `C_{F^*}(w)`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.model_dAut_hom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.model_qEquiv_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_fixedUnits_eq_card_fixedConj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.exists_qbarEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.cardFixedConj_eq_cardFixedM0 /-! **Step (8), the per-`w` fixed-field order** (`FirstCase/StepEight.lean`, issue 2053, 2026-07-22): for a nonidentity `w ∈ C_W(P)`, the `w`-fixed part of `M₀ = C_Q(P)` lies in the `2`-group `C_Q(w)`, so its cardinality is a power of `2` (`exists_card_fixedM0_eq_two_pow`, axiom-clean). Chaining this through the equivariance transfer and the fixed-field arithmetic gives `|C_F(w)| ∈ {f, 9}` (`cardFixedField_char_or_nine`), which inherits the step (2)(b) `sorry` (issue 9318) and the Higman `sorry` (step (5)) through `comm_of_Q1_ne_bot`, so is intentionally not registered here. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.exists_card_fixedM0_eq_two_pow /-! **Step (8), finite-field automorphism infrastructure** (`FirstCase/StepEight.lean`, issue 2053, 2026-07-22): three general axiom-clean facts about a finite field `F`. Artin's degree theorem for a single automorphism `σ` — `|F| = |C_F(σ)|^{orderOf σ}` (`card_eq_card_fixedPoints_pow_orderOf`, via `FixedPoints.finrank_eq_card` for `⟨σ⟩`); the ring automorphism group `RingAut F` is cyclic (`isCyclic_ringAut_of_charP`, `RingAut F ↪ Gal(F/𝔽_q)`); and a cyclic group whose nonidentity elements all have the same order is of prime order (`card_prime_of_isCyclic_forall_ne_one_orderOf`, via `IsCyclic.card_orderOf_eq_totient`). Assembled into **step (8)** (`card_prime_and_card_field_of_Q1_ne_bot`): `Q₁ ≠ 1` and `ℓ = |Σ| ≠ 1` ⟹ `ℓ` prime and `|F| ∈ {3^ℓ, 5^ℓ, 9^ℓ}`. That conclusion inherits the step (2)(b) `sorry` (issue 9318) and the Higman `sorry` (step (5)) through step (C), so is intentionally not registered here. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_eq_card_fixedPoints_pow_orderOf #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.isCyclic_ringAut_of_charP #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_prime_of_isCyclic_forall_ne_one_orderOf /-! **Peterfalvi Part II, Ch. II, step (9), the transfer computation** (`GroupTheory.TransferInvariantTransversal` + `Peterfalvi.Appendices.Suzuki.{CanonicalForm, FirstCase.StepNine}`, 2026-07-22). The book computes `T(x) = x^{|Q|+1}` for the transfer `T : G → H/(QKW)` using the canonical-form right transversal `1, {t y : y ∈ Q}` and the relation `t y x = x t y^x`. * `transfer_eq_pow_of_conj_invariant_transversal` — general engine: if a left transversal of `H ≤ G` is invariant under conjugation by `x ∈ H`, then `transfer ϕ x = ϕ x ^ [G:H]`. * `isComplement_inv_of_isComplement` — the pointwise inverse of a right transversal is a left one. * `transfer_eq_pow_of_conj_invariant_rightTransversal` — the right‑transversal corollary. * `isComplement_H_rightTransversalTQ` — Prop 4(a): `1, {t y}` complement `H` (right cosets). * `rightTransversalTQ_conj_invariant` — that transversal is invariant under conjugation by `x ∈ P` (`P ≤ C_D(t)` centralises `t`, and `x ∈ H` normalises `Q`). * `transfer_eq_pow_card_Q_add_one` — **step (9) transfer identity**: `transfer ϕ x = ϕ x ^ (|Q|+1)` for every `ϕ : H →* A` and `x ∈ P` (since `[G:H] = |Ω| = |Q|+1`). * `QD_isComplement_in_H` / `hToD` — `H = Q ⋊ D` complement and the retraction `H →* D` (clone of `dToV`), used to build `hToAbDbar : H →* Abelianization Dbar` (kills `Q`, `W`, `⁅·,·⁆`). * `P_inf_commutator_H_eq_bot` — **step (9) structural input, now PROVED**: `P ∩ ⁅H,H⁆ = 1` (`P` injects into `H^{ab}`; the book's `P ∩ QKW = 1`, since `⁅H,H⁆ ≤ QKW`). `hToAbDbar` kills `⁅H,H⁆` but is nontrivial on `P^#` (image lands in `Vbar`, `≠1` by `P ∩ W = 1`, `∉ Kbar ⊇ commutator Dbar` by `Kbar ⊓ Vbar = 1`). * `p_dvd_card_Q_add_one` — **step (9)**: `p ∣ |Q|+1`, taking `ϕ = Abelianization.of : H → H^{ab}`, from `hB2 : p ∤ |G^{ab}|` (⟹ `x ∈ ⁅G,G⁆` ⟹ `T(x)=1`) and `P_inf_commutator_H_eq_bot` (⟹ `ϕ x` has order `p`). Only remaining hypothesis is the book's standing (B2) `hB2`. The `char = f = p` assembly (`char_eq_p`) inherits only the book's standing `hB2`; the model `sorry` (9318) closed on 2026-08-07, so it is registered below. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.transfer_eq_pow_of_conj_invariant_transversal #assert_only_allowed_axioms OddOrder.GroupTheory.isComplement_inv_of_isComplement #assert_only_allowed_axioms OddOrder.GroupTheory.transfer_eq_pow_of_conj_invariant_rightTransversal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.isComplement_H_rightTransversalTQ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.rightTransversalTQ_conj_invariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.transfer_eq_pow_card_Q_add_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.QD_isComplement_in_H #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.hToD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.P_inf_commutator_H_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.p_dvd_card_Q_add_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.char_eq_p /-! **Peterfalvi Part II, Ch. II, step (11) の第 3 条項 — `T ⋊ C_Q(P) ≅ F ⋊ F*`** (`FirstCase/StepElevenSemidirect.lean`, issue 0172, 2026-08-08). Part II の逐条監査で 検出した「言及のみ」1 件の補充。書籍 p.111 の step (11) は 4 条項だが、repo は半直積同型 だけ `StepEleven.lean` の file docstring に散文で書かれているだけで定理が無かった。 fieldCoord — 座標写像 `T → (F,+)` (`C_G(P)/N` 上で `x` が誘導する平行移動) emb_fieldCoord — 定義性質 `emb (fieldCoord x) = [x]` fieldCoord_injective — `T ∩ N = T ∩ P = 1` (step (7) + step (11)) から sInvertedTEquivField — `T ≃* (F,+)` (全射は `|T| = |F|`) fieldCoord_conj — `C_Q(P)` 同変性 (共役 ↔ `qEquiv q⁻¹` 倍) 最後の 2 本が合わせて書籍の `T ⋊ C_Q(P) ≅ F ⋊ F*` そのもの。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.emb_fieldCoord #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.fieldCoord_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.sInvertedTEquivField #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.fieldCoord_conj /-! **Peterfalvi Appendix II, Proposition 2 — COMPLETE** (`Peterfalvi.Appendices.NearFields`, 2026-07-21; 登録は 2026-07-22 に補完 — landing commit `42892fcb5` が AxiomsCheck 追記を 欠いていた). Zassenhaus/Dickson 分類の App.C 特殊形: 有限 near-field `F` の乗法群が **cyclic** な指数 `2` 部分群 `A` を持てば、`F` は可換 (体) か、さもなくば奇素数冪 `r` が あって `F ≅ F_{r²,2}` (`TwistData` の twisted near-field) かつ `|Z(Fˣ)| = r - 1`。 * `card_eq_sq_of_orderTwo_ringAut` — 位数 `2` の体自己同型は `|K| = r²` を強制 (Artin)。 * `exists_field_structure_of_cyclic_index_two` — 第一半 (体構造)、cyclic 仮定の book 形。 * `twMul_central_iff` — 中心性 `⟺` `σ`-固定 (center 節 `|Z(Fˣ)| = r - 1` のエンジン)。 * `cyclic_index_two_nearField_classification` — **Prop 2 全文**。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.card_eq_sq_of_orderTwo_ringAut #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exists_field_structure_of_cyclic_index_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.twMul_central_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.cyclic_index_two_nearField_classification /-! **Peterfalvi Appendix II, the exceptional near-field `F_{r²,2}` — concrete instantiation** (`Peterfalvi.Appendices.ExceptionalNearField`, 2026-07-22). `TwistData` の抽象構成 (`NearFields.lean`) を book の実データで実体化: `K` を位数 `p^{2n}` の有限体として * `squareSignChar` — 平方指標の `Kˣ →* Multiplicative (ZMod 2)` 形 (乗法性 = `quadraticChar` の乗法性; char `2` でも退化的に成立するので仮定なし)。 * `exceptionalTwistData` — `σ = halfFrobenius (x ↦ x^{pⁿ})`, `χ = squareSignChar` の `TwistData K`。near-field `F_{r²,2}` は `Twisted (exceptionalTwistData …)` (generic instance)。 * `exceptionalTwistData_twMul_of_isSquare` / `…_of_not_isSquare` — book p. 138 の乗法 `x ∘ y = x·y` (`y` 平方) / `x^{pⁿ}·y` (非平方) との一致。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.squareSignChar #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exceptionalTwistData #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exceptionalTwistData_twMul_of_isSquare #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exceptionalTwistData_twMul_of_not_isSquare /-! **`F_{r²,2}` is not a field** (`Peterfalvi.Appendices.ExceptionalNearField`, 2026-07-22). `p` 奇素数・`n ≥ 1` で twist は真に非可換 — Prop 2 の例外分岐が体分岐と 交わらないことの witness。 * `exists_isSquare_halfFrobenius_ne` — half-Frobenius が動かす**平方元**の存在。 カウント不要の初等論法: すべての平方が固定なら `σ z = ±z` で `(K,+)` が 2 つの真部分群 の和になり矛盾 (乗法生成元の位数 `p^{2n}−1 ∤ pⁿ−1` で `{σ=id}` が真、`σ(1)=1≠−1` で `{σ=−id}` が真)。 * `exceptionalTwistData_not_comm` — `z² ∘ y = (z²)ʳ·y ≠ y·z² = y ∘ z²` (`y` 非平方)。 * `exceptionalNearField_not_commutative` — `Twisted` レベルの headline。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exists_isSquare_halfFrobenius_ne #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exceptionalTwistData_not_comm #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.exceptionalNearField_not_commutative /-! **Brauer–Suzuki theorem, cyclic case** (`GroupTheory.BrauerSuzuki`, issue 9318, 2026-07-22). `brauerSuzuki_of_isCyclic_sylowTwo` — cyclic Sylow `2`-subgroup + 対合 `u` で `O_{2'}(G) ⊔ C_G(u) = ⊤` (= `G = O_{2'}(G)·C_G(u)`)。involution の存在から `|G|` は偶数で `2` が最小素因子、mathlib Burnside (`IsCyclic.isComplement'`) が正規 2-補群 `K` を与え、`K ≤ O_{2'}`、`u` を含む Sylow `S'` は可換で `S' ≤ C_G(u)`。 残る quaternion case (Gorenstein Ch.12) が issue 9318 の本体。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.brauerSuzuki_of_isCyclic_sylowTwo /-! **Brauer–Suzuki, quaternion setup** (`GroupTheory.BrauerSuzukiSetup`, issue 9318, 2026-07-22). Gorenstein Ch.12 p.373 の setup: `QuaternionSylowSetup` = `S = ⟨x, y ∣ x^{2ⁿ}=1, y²=x^{2ⁿ⁻¹}, xʸ=x⁻¹⟩` (n ≥ 3) の presentation data。 `y ∉ ⟨x⟩` は導出 (`y_notMem_zpowers_x`)、`mem_iff` = 剰余類分解 `S = X ∪ X·y`。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.mem_iff #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.y_notMem_zpowers_x /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.2 — COMPLETE** (`GroupTheory.BrauerSuzukiNormalizer`, issue 9318, 2026-07-22). `T = ⟨x²⟩`, `C = C_G(T)`, `N = N_G(T)` について: * `two_not_dvd_relIndex_C` / `exists_sylow_C_eq` — `X = S ∩ C` は `C` の cyclic Sylow `2` (hoist した `sylow_relIndex_normal_not_dvd` を `N` 内で適用)。 * `exists_normal_two_complement` — Burnside (mathlib `IsCyclic.isComplement'`) の 正規 2-補群、membership = 「奇数位数」で choice 非依存に特徴付け。 * `X_sup_H_eq_C` — **Lem 1.2(ii) `C = XH`**。`mem_C_of_odd_of_mem_N` — 奇数位数元は `T` を中心化 (`N/C ↪ Aut(T)` が 2-群; G Lemma 5.4.1 相当)。 * `S_sup_H_eq_N` — **Lem 1.2(i) `N = SH`**: `N/H` に奇素数位数元が無い (p-part 持ち上げ) → Sylow 像の index が奇数かつ 2-冪 → 1 → comap で `S ⊔ H = N`。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.two_not_dvd_relIndex_C #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.exists_sylow_C_eq #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.exists_normal_two_complement #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.X_sup_H_eq_C #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.mem_C_of_odd_of_mem_N #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.S_sup_H_eq_N /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.3 — COMPLETE** (`GroupTheory.BrauerSuzukiTISubset`, issue 9318, 2026-07-22). `A = C − RH`: * `A_isTISubset` — **Lem 1.3 (TI part) `A` is a TI-subset with normalizer-bound `N`**: `a ∈ A ⟹ T ≤ ⟨a⟩`, so overlapping conjugates force `g⁻¹Tg = T`, i.e. `g ∈ N`. * `mem_N_iff_forall_conj_mem_A` — **`N = N_G(A)`** (both inclusions), via `RH = R·H` product structure and `A_nonempty` (`x ∈ A`). * `four_dvd_orderOf_of_mem_A` — every element of `A` has order divisible by `4` (`|T| = 2ⁿ⁻¹ ∣ orderOf a`, `n ≥ 3`); the group-theoretic input to Lemma 1.6. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.A_isTISubset #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.mem_N_iff_forall_conj_mem_A #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.four_dvd_orderOf_of_mem_A /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.4 & 1.5 — COMPLETE** (`GroupTheory.BrauerSuzukiCharacter`, issue 9318, 2026-07-22). `ψ` = linear character of `C` (`C/RH ≅ ℤ/4`, `x ↦ i`), `ψ̃ = Ind_C^N ψ` irreducible, `θ = Ind_C^N 1_C − ψ̃`: * Lem 1.4: `theta_apply_one` (`θ(1) = 0`), `theta_apply_eq_zero_of_notMem_A` (`θ ≡ 0` on `N − A`), `theta_inner_self` (`(θ,θ)_N = 3`). * Lem 1.5: `thetaStar_inner_self` (`(θ*,θ*)_G = 3` via the TI isometry) and `thetaStar_decomposition` — **`θ* = 1_G + χ₁ − χ`** for distinct non-principal irreducibles with `χ(1) = χ₁(1) + 1`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.theta_apply_one #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.theta_apply_eq_zero_of_notMem_A #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.theta_inner_self #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.thetaStar_inner_self #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.thetaStar_decomposition /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.6 — COMPLETE** (`GroupTheory.BrauerSuzukiCharacter`, issue 9318, 2026-07-22). `θ* = Ind_N^G θ` is supported on elements conjugate into `A`, whose orders are divisible by `4`; hence: * `thetaStar_apply_eq_zero_of_not_four_dvd` — `θ*(y) = 0` when `¬ 4 ∣ orderOf y`. * `thetaStar_apply_eq_zero_of_orderOf_eq_two` / `_of_odd` — **`θ*(u) = 0` on involutions and odd-order elements**. * `apply_eq_of_thetaStar_apply_eq_zero` — feeding `θ*(y) = 0` into `θ* = 1_G + χ₁ − χ` gives **`χ(y) = 1 + χ₁(y)`** there. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.thetaStar_apply_eq_zero_of_not_four_dvd #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.thetaStar_apply_eq_zero_of_orderOf_eq_two #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.thetaStar_apply_eq_zero_of_odd #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.apply_eq_of_thetaStar_apply_eq_zero /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.7 (group-theoretic core)** (`GroupTheory.BrauerSuzukiInvolutions`, issue 9318, 2026-07-22). * `commute_involution_eq` — **any two commuting involutions of `G` are equal**: `⟨u,v⟩` is a `2`-group inside a Sylow `2`-subgroup conjugate to the generalized quaternion `S`, whose unique involution `z` both must equal. * `odd_orderOf_mul_of_involution` — **the product of two involutions has odd order**: if `uv` had even order `2s`, `(uv)ˢ` would be an involution commuting with `u` and `v`, forcing `u = v = (uv)ˢ` and `uv = 1`. This is `β(y) = 0` for even-order `y` (no involution pair multiplies to an even-order element). * `exists_conj_eq_z` / `isConj_of_orderOf_eq_two` — **every involution is conjugate to `z`**, so `G` has a **single class of involutions** (the class-sum input `(9.4.2)` for Lemma 1.8). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.commute_involution_eq #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.odd_orderOf_mul_of_involution #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.exists_conj_eq_z #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.isConj_of_orderOf_eq_two #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.isConj_z_iff_orderOf_eq_two /-! **Brauer–Suzuki, Gorenstein Ch.12 Lemma 1.8 (counting side, in progress)** (`GroupTheory.BrauerSuzukiCounting`, issue 9318, 2026-07-22). * `mk_eq_involutionClass_iff` — `mk u = K ↔ orderOf u = 2` (the involutions are the single class `K = mk z`). * `classSumCoeff_involutionClass_eq_zero_of_even` — **`classSumCoeff K K Cs = 0` for even-order `Cs`**: no involution pair multiplies to an even-order element (`odd_orderOf_mul_of_involution`). This is the `β(y) = 0` half feeding `(9.4.2)` in Lemma 1.8. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.mk_eq_involutionClass_iff #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.classSumCoeff_involutionClass_eq_zero_of_even #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.sum_classSumCoeff_thetaStar_eq_zero #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.sum_thetaStar_char_div_centralizer_eq_inner #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.sum_degWeight_inner_eq_zero #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.lem_1_8_relation #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.lem_1_9 /-! **Brauer–Suzuki, Gorenstein Ch.12 endgame — COMPLETE (|S| ≥ 16)** (`GroupTheory.BrauerSuzukiEndgame`, issue 9318, 2026-07-22). * `involutionClosure_normal` — **`M = ⟨involutions⟩ ⊴ G`** (the involution set is conjugation-invariant). * `smSetup` — **`G₁ = SM` again carries a `QuaternionSylowSetup`** (Sylow `2`-subgroup `S` transported via `Sylow.subtype`), letting `lem_1_9` apply to `SM` in the `Q`-cyclic step. * `not_isMulCommutative_SM_quotient_M` / `SinfM_isCyclic` — **`Q = S ∩ M` is cyclic**: were it not, `S/Q` (hence `SM/M`) would be abelian, contradicting the non-linear `φ` on `SM`. * `exists_oddComplement_of_isCyclic_sylowTwo` / `image_M_isCyclic_and_isPGroup` — `M` is 2-nilpotent (Burnside), and its image in `Ḡ = G/O_{2'}(G)` is a **cyclic 2-group**. * `zbar_central` — the image `z̄` of the central involution is **central in `Ḡ`** (unique involution of the normal cyclic image of `M`). * `oPiCore_sup_centralizer_eq_top_of_mk_mem_center` — the **endgame proper**, extracted (2026-08-06) from `brauerSuzuki_of_quaternionSylow` because it uses nothing about the Sylow `2`-subgroup: for *any* involution `z` whose image is central in `Ḡ`, a Frattini argument on `N = ⟨z⟩·O_{2'}(G)` gives `G = O_{2'}(G)·C_G(z)`. Both branches of Brauer–Suzuki end here, so the `Q₈` case (`GroupTheory/BrauerSuzukiQ8`) reduces to `z̄ ∈ Z(Ḡ)` alone. * `brauerSuzuki_of_quaternionSylow` — **`G = O_{2'}(G)·C_G(z)`** (`oPiCore ⊔ centralizer {z} = ⊤`), Gorenstein Theorem 1.1 = the above applied to `zbar_central`. (The `Q₈` case `|S| = 8` needs modular character theory and remains a separate gap, issue 9506.) -/ #assert_only_allowed_axioms OddOrder.GroupTheory.involutionClosure_normal #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.smSetup #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.not_isMulCommutative_SM_quotient_M #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.SinfM_isCyclic #assert_only_allowed_axioms OddOrder.GroupTheory.exists_oddComplement_of_isCyclic_sylowTwo #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.image_M_isCyclic_and_isPGroup #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.zbar_central #assert_only_allowed_axioms OddOrder.GroupTheory.notMem_oPiCore_of_orderOf_eq_two #assert_only_allowed_axioms OddOrder.GroupTheory.oPiCore_sup_centralizer_eq_top_of_mk_mem_center #assert_only_allowed_axioms OddOrder.GroupTheory.QuaternionSylowSetup.brauerSuzuki_of_quaternionSylow /-! 🎯 **BS の `Q₈` 分枝の 2 つの reduction** (`GroupTheory/BrauerSuzukiQ8`, 2026-08-06)。 `sylowTwo_inf_oPiCore_eq_bot` (奇核は Sylow-2 と自明に交わる) で `T → Ḡ = G/O_{2'}(G)` が 単射になり、`Sylow.mapSurjective` の像が `Ḡ` の Sylow-2 で `T` と同型 ⟹ `q8_mk_mem_center` (endgame が消費する形) が **`O_{2'}(G) = 1` 版から従う**。 `mem_center_of_normal_of_isCyclic` は Navarro p.139 の reduction の**両分枝の締め** (`N` が巡回 2-群 / `Z(N) = ⟨t⟩` のどちらでも、正規巡回部分群の対合は中心的)。 ⟹ 残る数学は `q8_mem_center_of_oPiCore_eq_bot` (= Navarro pp.139-146) の 1 文のみ。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.sylowTwo_inf_oPiCore_eq_bot #assert_only_allowed_axioms OddOrder.GroupTheory.mem_center_of_normal_of_isCyclic /-! `isCyclic_of_ne_top_of_quaternionTwo` = Navarro p.139 の「`P ∩ N` は巡回か `P ⊆ N`」。 `Q₈` の対合が一意 (`quaternionTwo_sq_eq_one`、8 元なので `decide`) ことと、 汎用補題 `isCyclic_of_card_dvd_four_of_unique_involution` (位数が 4 を割り対合が高々 1 個なら巡回; `x^n = 1` の解は位数が `gcd(n,4)` を割る元で高々 `gcd(n,4) ≤ n` 個) の合成。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_sq_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.eq_of_sq_eq_one_of_quaternionTwo /-! `sq_eq_one_of_mem_center_of_quaternionTwo` = 原文 p.139 末「四元数群は位数 4 の中心元を 持たない」。"Analysis at y" で `C_G(y)` の Sylow-2 が位数 8 になれないことを出すのに使う (`y` は `C_G(y)` で中心的なので、Sylow-2 が `Q₈` なら `y` はその中心に入って位数 ≤ 2)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.nonempty_mulEquiv_quaternionTwo_of_sylow #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_sq_eq_one_of_central #assert_only_allowed_axioms OddOrder.GroupTheory.sq_eq_one_of_mem_center_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_card_dvd_four_of_unique_involution #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_ne_top_of_quaternionTwo /-! `q8_mem_center_of_mem_normal_of_not_le` = Navarro p.139 reduction の**巡回分枝**。 `not_two_dvd_index_inf_subgroupOf` (第二同型定理から `|T|·[N:T⊓N] = |T⊔N| ∣ |G|` ⟹ `[N:T⊓N] ∣ [G:T]` は奇数) で `T ⊓ N` が `N` の Sylow-2 になり、それは `T ≅ Q₈` の真部分群ゆえ 巡回 ⟹ Burnside (`exists_oddComplement_of_isCyclic_sylowTwo`) で正規 2-補群 `L` = `N` の 奇位数元全体 ⟹ `L` は `G` でも正規 ⟹ `L ≤ O_{2'}(G) = ⊥` ⟹ `N` は自分自身の Sylow-2 = 巡回 ⟹ `mem_center_of_normal_of_isCyclic`。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.not_two_dvd_index_inf_subgroupOf #assert_only_allowed_axioms OddOrder.GroupTheory.q8_mem_center_of_mem_normal_of_not_le /-! `q8_mem_center_of_mem_center_normal` = Navarro p.139 reduction の**分枝 `P ≤ N`** (帰納法が `z ∈ Z(N)` を供給した後の部分)。`z` の `G`-共役 `w` も `N` の中心的対合ゆえ、 `mem_sylow_of_mem_center_of_orderOf_eq_two` (`⟨u⟩` は `N` の正規 2-部分群 ⟹ mathlib `IsPGroup.le_sylow_of_normal` で全ての Sylow-2 に含まれる) で両方 `T ≅ Q₈` に入り、 `Q₈` の対合の一意性で `w = z`。`Q₈` の対合が中心的であること (`mem_center_of_sq_eq_one_of_quaternionTwo`) は `T = ⊤` の場合に使う。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_a_two_mem_center #assert_only_allowed_axioms OddOrder.GroupTheory.mem_center_of_sq_eq_one_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.mem_sylow_of_mem_center_of_orderOf_eq_two #assert_only_allowed_axioms OddOrder.GroupTheory.q8_mem_center_of_mem_center_normal /-! `oPiCore_subgroup_eq_bot` = 「`O_{2'}(G) = 1` は正規部分群に遺伝」(`O_{2'}(N)` は `N` で characteristic ⟹ 既存の `normal_map_subtype_of_characteristic` で `G` で正規 ⟹ `O_{2'}(G)` の中)。 これで Navarro p.139 の帰納法が組め、BS の `Q₈` 分枝に残る数学は `q8_exists_proper_normal` (「z を含む真の正規部分群の存在」= 指標論の核 pp.139-146) だけになった。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.oPiCore_subgroup_eq_bot /-! `not_controlsOwnFusion_of_oPiCore_eq_bot` = Navarro p.139 の指標論部分の第 1 歩。 `O_{2'}(G) = 1` かつ Sylow-2 が真部分群なら正規 2-補群は奇位数の正規部分群ゆえ自明になり `T = ⊤` を強いるので矛盾 ⟹ Isaacs Thm 5.25 (`hasNormalPComplement_iff_controlsOwnFusion`) で `T` は自分の fusion を制御できない。これが「位数 4 の元の 2 つの `T`-類が `G` で融合する」を 出す当のもの。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.not_hasNormalPComplement_of_oPiCore_eq_bot #assert_only_allowed_axioms OddOrder.GroupTheory.not_controlsOwnFusion_of_oPiCore_eq_bot /-! Navarro p.139「位数 4 の元は全て `G`-共役」の材料 2 つ。 `quaternionTwo_conj_eq_self_or_inv` (`decide`) = **`Q₈` は Hamiltonian** (共役は固定か反転) ⟹ `zpowers_normal_of_quaternionTwo` (全ての巡回部分群が正規) と、`T`-共役類が `{w, w⁻¹}` であること。 `not_two_dvd_relIndex_sup_centralizer` = `[N_G(T) : T·C_G(T)]` は奇数 (`T` は `N_G(T)` の Sylow-2 で `[N_G(T):T] ∣ [G:T]`) ⟹ `N_G(T)` の位数 4 巡回部分群 3 つへの 作用は**奇位数の商**を経由する。`Sym(3)` の奇位数部分群は自明か推移的なので、 1 つ融合すれば 3 つとも融合する — `Aut(Q₈) ≅ Sym(4)` を作らずに済む route。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_conj_eq_self_or_inv #assert_only_allowed_axioms OddOrder.GroupTheory.conj_eq_self_or_inv_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.zpowers_normal_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.not_two_dvd_relIndex_normalizer #assert_only_allowed_axioms OddOrder.GroupTheory.image_eq_self_of_conj #assert_only_allowed_axioms OddOrder.GroupTheory.not_two_dvd_relIndex_sup_centralizer /-! `conj_eq_iff_of_quaternionTwo` = 位数 4 の元 `w` の `T`-共役類はちょうど `{w, w⁻¹}` (2 元)。 これが p.139 の融合論法が乗る**ブロック構造** — `T` は `w` と `w⁻¹` だけを融合するので、 位数 4 の巡回部分群 3 つがブロックになる。反転元の存在は `Q₈` 上で `decide`。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_exists_conj_eq_inv #assert_only_allowed_axioms OddOrder.GroupTheory.exists_conj_eq_inv_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.conj_eq_iff_of_quaternionTwo /-! `orbit_eq_univ_of_odd_of_card_eq_three` = **`Aut(Q₈) = Sym(4)` の代替**の核。 軌道の位数 = 安定化群の指数 (orbit-stabilizer)。それが奇数で軌道が 3 元 Finset に含まれるなら 1 か 3 で、固定点でなければその Finset 全体。⚠ 仮説を「群位数が奇」でなく 「**安定化群の指数が奇**」にしてあるのが要点 — 実際に作用する `N_G(T)` は偶位数だが、 `T·C_G(T)` が固定するので指数は奇数になる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.orbit_eq_of_odd_of_subset_card_three /-! `quaternionTwo_card_inversePairs` = **`Q₈` の位数 4 巡回部分群はちょうど 3 個** (`{w, w⁻¹}` の対として `decide` で数える)。融合論法の 3 元集合 `Ω` の濃度がこれ。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_card_inversePairs #assert_only_allowed_axioms OddOrder.GroupTheory.image_inversePairs #assert_only_allowed_axioms OddOrder.GroupTheory.image_mem_inversePairs #assert_only_allowed_axioms OddOrder.GroupTheory.card_inversePairs_of_quaternionTwo /-! 🎯 `exists_smul_eq_of_mem_inversePairs` = **Navarro p.139 の `Aut(Q₈) = Sym(4)` 段の代替、完成形**。 `N_G(T)` は 3 つの inverse pair に共役で作用し (mathlib `MulDistribMulAction (normalizer H) H`)、 `T` は各対の安定化群に入り (`image_eq_self_of_conj`) しかも `[N_G(T):T]` が奇 (`not_two_dvd_relIndex_normalizer`) なので軌道は奇位数 ⟹ 1 か 3。1 つでも動けば推移的。 ⚠ 綴りの罠 2 つ: `Subgroup.normalizer` は **`Set` 引数**なのでソート位置では `((T : Subgroup G) : Set G)` と明示する; `Finset` への誘導作用は `Mathlib.Algebra.Group.Action.Pointwise.Finset` の scoped instance なので import + `open scoped Pointwise` が要る。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_smul_eq_of_mem_inversePairs /-! `exists_orderFour_fused` = fusion 非制御をほどいて「`G`-共役だが `T`-共役でない `x, y ∈ T`」を 取り出したもの。**位数 4 であることまで込み** — `Q₈` の対合は一意なので、対合どうしは 非自明に融合できない (`x = 1` なら `y = 1`、`x` が対合なら `y = x` で、どちらも `u = 1` が効く)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_eq_or_eq_inv_of_mem_powers #assert_only_allowed_axioms OddOrder.GroupTheory.quaternionTwo_pow_four #assert_only_allowed_axioms OddOrder.GroupTheory.eq_or_eq_inv_of_mem_zpowers_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.exists_orderFour_fused /-! 🎯 `exists_smul_ne_of_oPiCore_eq_bot` = Navarro p.139「`N_G(T)` の元が inverse pair を実際に 動かす」。`u` が `{x,x⁻¹}` を固定するなら `u x u⁻¹ ∈ {x,x⁻¹}` かつ `∈ ⟨y⟩` ⟹ `y ∈ {x,x⁻¹}` ⟹ `x, y` が `T`-共役 (`T` は反転元を含む) となって仮定に矛盾。 これと `exists_smul_eq_of_mem_inversePairs` で「位数 4 の元は全て `G`-共役」が出る。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_smul_ne_of_oPiCore_eq_bot /-! 🎯🎯 `isConj_of_orderFour` = **Navarro p.139 の第 1 主張「`G` は位数 4 の元の類を 1 つしか 持たない」が完成**。3 つの inverse pair が `N_G(T)` の下で融合し (`exists_smul_ne_of_oPiCore_eq_bot` + `exists_smul_eq_of_mem_inversePairs`)、`T` 自身が `w` と `w⁻¹` を融合するので、 `T` の位数 4 の元はどの 2 つも `G`-共役。⚠ 原文が `Aut(Q₈) = Sym(4)` で通す段を index の偶奇だけで置き換えた route の**終着点**。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_of_orderFour /-! `normalizer_le_centralizer_involution` = 原文 p.139 末の注意「`{1,t} = Z(P) ⊴ N_G(P)` ゆえ `g ∈ C_G(t)`」。`N_G(T)` の元による `t` の共役は再び `T` の対合で、`Q₈` の対合は一意ゆえ `t` 自身。 ⟹ p.139 の主張は「位数 4 の元は全て **`C_G(t)`**-共役」まで言える。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.normalizer_le_centralizer_involution /-! `sylowQ8_le_normalizer_zpowers` = 原文「every subgroup of `P` is normal in `P`」を `G` の中で `T ≤ N_G(⟨w⟩)` の形にしたもの。これが「`T` と `T^g` が `N_G(⟨z⟩)` の Sylow-2 ⟹ Sylow 共役で `g` を `N_G(T)` に取り直せる」段の入口。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.sylowQ8_le_normalizer_zpowers /-! `exists_mem_normalizer_conj_mem_zpowers` = Navarro p.139「融合元 `g` は `N_G(T)` に取り直せる」。 `T` と `T^g` はどちらも `⟨z⟩` を正規化する (前者は `sylowQ8_le_normalizer_zpowers`、後者は `z^k = g y^k g⁻¹` と `T ≤ N_G(⟨y⟩)`) ので `N_G(⟨z⟩)` の Sylow-2 になり、そこでの Sylow 共役 (mathlib `Sylow.subtype` + `MulAction.exists_smul_eq`) が `g` を補正する。 補正後も `y` は `⟨z⟩` の中へ送られる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_mem_normalizer_conj_mem_zpowers /-! ### lean-eval 提出候補の登録 (issue 0050, 2026-07-22). 「AxiomsCheck 未登録だが `#print axioms` では clean」だった提出候補を機械ゲートに載せる (統合 note `notes/meta/lean_eval_submission.md` §3)。これで axiom-clean が毎ビルド保証され、 提出前の手動 `#print axioms` が不要になる。-/ -- Isaacs Ch.8: Jordan の定理 / PSL(n,K) 単純性 #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.alternatingGroup_le_of_isPreprimitive_of_isCycle_mem #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.isSimpleGroup_projectiveSpecialLinearGroup -- Isaacs Ch.1: Fitting 部分群 F(G) の冪零性・最大性 (Thm 1.28) #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.fitting.isNilpotent #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.nilpotent_normal_le_fitting -- Isaacs Thm 1.31 sharpened 直接形 (issue 0106): |G|=p²q, p≠q, q∤p²−1 ⟹ 与えられた位数 q の -- 部分群がそのまま正規 (moore57 実測需要の着地形; 選言なし)。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.normal_of_card_eq_prime_of_card_eq_sq_mul_prime -- 一般群論: Thompson critical subgroup / transfer 推移律 #assert_only_allowed_axioms OddOrder.GroupTheory.isCritical_exists #assert_only_allowed_axioms OddOrder.GroupTheory.transfer_transfer -- 表現論: Burnside (既約表現の包絡環 = End V) #assert_only_allowed_axioms OddOrder.RepresentationTheory.span_range_representation_eq_top -- Glauberman ZJ 定理 (Z(J) 正規) + Replacement 定理 (Gorenstein Ch.8 §2) #assert_only_allowed_axioms Subgroup.oPiCorePrime_sup_normalizer_zCenter_thompsonJAbelian #assert_only_allowed_axioms Subgroup.glauberman_replacement -- Galois–Burnside (可解 2-可移群の極小正規部分群は elementary abelian regular) #assert_only_allowed_axioms OddOrder.GroupTheory.exists_elementaryAbelian_regular_normal_of_isMultiplyPretransitive -- Peterfalvi App.IV Feit–Sibley 定理 (d odd ⟹ 𝒮 coherent; campaign issue 1054) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.FeitSibley.feit_sibley_coherence -- Peterfalvi App.III Lemma 1(a) (squaring in a central elementary extension is quadratic) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.centralSquareQuadraticMap #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.centralCommPairing_mk -- Peterfalvi App.III Lemma 2(a) (Aut(F) is an F-basis of the 𝔽_p-linear endomaps) #assert_only_allowed_axioms OddOrder.RepresentationTheory.algAutLinearBasis -- Peterfalvi App.III Lemma 2(b) (σ(x)τ(y) family: independent + count = dim ⟹ basis) #assert_only_allowed_axioms OddOrder.RepresentationTheory.linearIndependent_algAutMulBilin #assert_only_allowed_axioms OddOrder.RepresentationTheory.card_autProd_eq_finrank_bilinMap -- Peterfalvi App.III Lemma 2(b) bundled basis (Pi-side construction, Basis.constr transport) #assert_only_allowed_axioms OddOrder.RepresentationTheory.algAutMulBilinBasis -- Peterfalvi App.III Lemma 2(c) (σ(x)τ(x) family: symmetric coefficients + diagonal vanishing) #assert_only_allowed_axioms OddOrder.RepresentationTheory.autMulQuadratic_coeff_symm #assert_only_allowed_axioms OddOrder.RepresentationTheory.autMulQuadratic_diag_eq_zero -- Peterfalvi App.III Lemma 2(c) spanning side (σ(x)τ(x) spans the F_2-quadratic maps) #assert_only_allowed_axioms OddOrder.RepresentationTheory.span_autMulQuadraticMap_eq_top #assert_only_allowed_axioms OddOrder.Algebra.CharTwoQuadratic.coordEquiv -- Peterfalvi App.III Lemma 1(c) (iso of central extensions inducing (f,g) ⟺ g∘q = q'∘f) #assert_only_allowed_axioms GroupExtension.comp_squareMap_eq_of_mulEquiv #assert_only_allowed_axioms GroupExtension.exists_mulEquiv_of_comp_squareMap_eq -- Peterfalvi App.III Lemma 1(d) (auts inducing id on V and W ≅ Hom(V, W); elementary abelian) #assert_only_allowed_axioms GroupExtension.inducingIdAutsEquivHom #assert_only_allowed_axioms GroupExtension.isElementaryAbelian_inducingIdAuts -- Peterfalvi App.III Proposition 1 (B(n,1,ε) admits the field model: q(x) = x·x̄) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.fieldModelPoly_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.FieldModel.isField #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.FieldModel.conj_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.FieldModel.conj_ne_refl #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.FieldModel.mul_conj -- Peterfalvi App.III Proposition 2 (v) core (eqs (3)(4): norm intertwiner collapses to λ·σ) #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_smul_algAut_of_norm_intertwiner -- Peterfalvi App.III Proposition 2 forward half (induced quotient map is semilinear: f_Φ = λ·σ) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.exists_semilinear_of_aut -- Peterfalvi App.III Theorem (e) forward, setup: diagonal automorphisms of the type-B model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.exists_diagonalAut -- Peterfalvi App.III Theorem (e) forward, model form (coordinate-line split, swap-equivariant) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.nonempty_isomorphicOrderQModuleSplit_diagonalAuts -- Peterfalvi App.III Theorem (e) forward, IsTypeB form (issue 2052 close-out) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.TypeBData.nonempty_isomorphicOrderQModuleSplit #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.IsTypeB.exists_isomorphicOrderQModuleSplit -- Peterfalvi App.III Proposition 2 converse + kernel (every λ·σ is induced; kernel elem. abelian) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.exists_aut_of_semilinear #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.isElementaryAbelian_ker_autQuotientHom_typeB -- Peterfalvi App.III Proposition 2 (iv) (norm of the field model is surjective; char-2 scalars) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.FieldModel.exists_mul_conj_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.typeBQuadraticMap_surjective -- Peterfalvi App.III Proposition 2 (iii) (α ↦ f_α homomorphism; kernel = inducing-id subgroup) #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.autQuotientHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.ker_autQuotientHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.isElementaryAbelian_ker_autQuotientHom -- Hall–Wielandt (issue 9503): weakly closed subgroups, the odd-prime local transfer lemma, -- the double-coset difference formula, and the transfer-control theorem consumed by -- Peterfalvi Part II Ch.II (17) #assert_only_allowed_axioms OddOrder.GroupTheory.IsWeaklyClosed.map_conj #assert_only_allowed_axioms OddOrder.GroupTheory.exists_mem_normalizer_conj_eq #assert_only_allowed_axioms OddOrder.GroupTheory.not_dvd_card_abelianization_normalizer #assert_only_allowed_axioms OddOrder.GroupTheory.transfer_eq_prod_doubleCoset_mul_pow #assert_only_allowed_axioms OddOrder.GroupTheory.eq_top_of_transfer_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.sylow_le_commutator_normalizer #assert_only_allowed_axioms OddOrder.GroupTheory.not_dvd_card_abelianization_normalizer_of_abelian #assert_only_allowed_axioms OddOrder.GroupTheory.transfer_eq_mul_conj_of_index_two -- Isaacs Problem 7C.1 (Thompson): if `N_G(X)/C_G(X)` is a `p`-group for every characteristic -- subgroup `X` of `P ∈ Syl_p(G)` (`p` odd), then `G` has a normal `p`-complement. Induction on -- `|G|`: Case A goes through Thm 6.23 after inheriting the local condition to `N_G(X)`; -- Case B replaces the normal characteristic `X₀` by `Z(X₀)` and descends to `G/Z(X₀)`. #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_charLocalPControl #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.CharLocalPControl.quotient #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_normal_abelian_of_quotient #assert_only_allowed_axioms OddOrder.Isaacs.Ch07.hasNormalPComplement_of_normal_of_isPGroup_quotient -- **Peterfalvi (5.3)(b)** (issue 0159): Hypothesis (5.2) holds for a family of induced characters -- `𝒮 ⊆ {Ind_K^L θ | θ ∈ Irr K, θ ≠ 1_K}` over Hypothesis (4.6). Clause (5.2.d) is the book's case -- split on reducibility of the member — the two-element (5.3)(a) Dade image for irreducible ones, -- the `2w₁`-element column family `R(μ_j)` of (4.9) for reducible ones (whence `GeneralHypothesis` -- rather than the two-element `S07.Hypothesis`); clause (5.2.e) dispatches over the four strata. -- The `hvanish` anchor (`(χ − χ̄)^τ` vanishes on `V` for irreducible members) is the book's -- `NC ≤ 2` + (3.8) step, isolated as the sole ambient input by `S08_CrossOrthogonality`. #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.toGeneralHypothesis #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.inducedR #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.columnR #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.exists_ne_one_induce_eq_columnSum #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.columnSum_injective -- **(5.3)(b) at book strength** (issue 0159, second pass): over the book's own family -- `{Ind_K^L θ | θ ∈ Irr K, H ⊄ Ker θ}` the two inputs of `toGeneralHypothesis` are *derived*, so -- the statement carries no hypothesis beyond (5.2.a)/(5.2.c). `Supp(χ − χ̄) ⊆ A` is Peterfalvi -- (4.7); the anchor is `dadeICM_apply_eq_zero_of_mem_ticVdiffV`, the book's "by the definition of -- τ, (φ − φ̄)^τ vanishes on V" — `V ⊆ A₀` makes `v` a Dade base point, so the (2.5) evaluation -- gives `α^τ(v) = α(v) = 0` since `v` is not `G`-conjugate into `K`. That anchor is the (4.6)-level -- generalization of the three per-site instances (Sibley §8 / type-P §13 / type-II §12). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.toGeneralHypothesisOfInducedFamily #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.dadeICM_apply_eq_zero_of_mem_ticVdiffV #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.inducedNonKernelFamily_conjDiff_support_subset -- The (5.3)(b) **rider** ("if φ ∈ 𝒮 ∩ Irr(L) then R(φ) ⊥ ω^σ for all ω ∈ Irr(W)"), the book's own -- route to the mixed stratum of (5.2.e): NC((φ − φ̄)^τ) ≤ ‖φ − φ̄‖² = 2 < 2·min(w₁,w₂) and (3.8). #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.dadeOfDiff_imageSet_orthogonal_chiFam -- **§13 の列 R-族 = (5.3)(b) の certain-type 族** (issue 0160). §13 は `alignedOmegaSigmaGrid` + -- `params.delta` の符号 pin 済、抽象版は生の `certainTypeOmegaSigma` + `(columnFamily χ₂).sign`。 -- 別物ではなく §13 が追加内容 (整列) を持つので「置換」でなく `imageSet` 一致の bridge にした。 -- (5.2.e) は `imageSet` しか見ないので、下流を一切触らずに抽象 (5.3)(b) の直交性が §13 に効く。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.colRFamily_imageSet_eq_certainTypeR_imageSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.memberRFamily_imageSet_eq_certainTypeR_imageSet #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.columnRImage_eq_certainTypeRImage #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.columnRImage_image_eq_certainTypeRImage_image #assert_only_allowed_axioms OddOrder.Peterfalvi.S13.muColumnChar_conj_eq_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.Hypothesis.muColumnSign_eq_columnFamily_sign -- **Peterfalvi (5.8) の μ-column 二分律を Hypothesis (4.6) 一般で** (issue 0161). -- `ψ` が (4.9) 列像族 `R(μ_j)` の部分和 (濃度 w₁) で `V` 上消えるなら、`ψ` は符号つきの -- 完全な σ-grid 列 (`δ·∑_p χ_{(p,kcol)}` か `−δ·∑_p χ_{(p,jcol)}`)。書籍の (5.5) 入力と -- V-消滅ステップを仮説に取った形で、後者は (5.3.b)+(4.7) から出る (issue 0159 で抽象化済)。 -- `typeII_nu_tau2_dichotomy` はその型-II 特殊化 (~430 行の証明本体が抽象版へ移動)。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.certainTypeR_subsum_dichotomy #assert_only_allowed_axioms OddOrder.Peterfalvi.S12.typeII_nu_tau2_dichotomy -- **Peterfalvi (5.8) の一意性 rider** (issue 0161, p.29): 列 `χ_ℓ` が `χ_k` とも `χ_k⁻¹` とも -- 異なり同次数の族 member を担うなら、`μ_k^{τ₁}` は正符号の完全 σ-grid 列 `δ_k ∑_i ω_{ik}^σ` -- (= 二分律の第 1 の場合)。書籍の rider はその対偶。 -- 論法: R(μ_k) の元は `{k, j}` 列の符号つき σ-像ゆえ `χ_ℓ` 列と直交 ⟹ (4.9) の差分等式を -- `ω_{iℓ}^σ` と組むと `⟨ψ_ℓ, ω_{iℓ}^σ⟩ = δ` ⟹ `E_ℓ` が `w₁` 個の `δ·ω_{iℓ}^σ` を全部含み -- 濃度から一致 ⟹ 差分を戻すと `χ_ℓ` 列が相殺する。 #assert_only_allowed_axioms OddOrder.Peterfalvi.S06.subsum_eq_column_of_third_column /-! **Peterfalvi Part II, Ch. III, Theorem C — COMPLETE** (issue 0162, 2026-07-29). `Appendices/Suzuki/StructureOfH/CoherenceContradiction.lean`, pp. 115–116. Under (C1) (`V ≠ 1`, and `C_G(P)` has 2-rank ≥ 2 for every prime-order `P ≤ V`) the Suzuki-appendix group `Q` is a `2`-group. This closes the last structural gap of Ch. III §1 and supplies the `Q₁ = 1` that Ch. II's first case takes as a hypothesis (`card_Q_eq_two_pow_of_Q1_eq_bot`). The book's steps (1)–(13), all landed and sorry-free: * (1)(2) `D` acts fixed-point-freely on `Q₁`, and `Q ∩ Q^x = 1` for `x ∈ G − H` (`StructureOfH/Basic.lean`) — the Appendix IV hypotheses. * (3) Feit–Sibley ⟹ `𝒮 = {χ ∈ Irr(H) | Q₁ ⊄ Ker χ}` is coherent for `Ind_H^G`. * (4)–(6) the linear `λ ≠ 1_H` with `QK ⊆ Ker λ`; `QK` is a Hall subgroup of the **solvable** `H`, so Hall's theorem + Ch. I §3 Lemma 2 give `λ(x^g) = λ(x)` (`StructureOfH/LinearCharacter.lean`). * (7)(8) `⟨Ind λ, Ind λ⟩ = 2` via the permutation character, so `Ind λ = f₁ + f₂` with `f_j ∈ Irr(G) ∖ {1_G}` (`StructureOfH/InducedLambda.lean`). * (9)(10) each `f_j` is orthogonal to every coherent member image (`Appendices/FeitSibleyCoherentImage.lean`). * (11)(12) `Res f_j = b_j(∑ aᵢχᵢ) + ψ_j` and `b_j(|H| − |H/Q₁|) ≤ n_j·d`, whence `(b₁+b₂)·|S|·d·(|Q₁|−1) ≤ (|Q|+1)·d` forces some `b_j = 0`, i.e. `Q₁ ⊆ Ker f_j`. * (13) `Ker f_j` is a proper non-trivial normal subgroup ⟹ `G` is not simple ⟹ Ch. I §3 Prop 2 + Lemma 1 give `Q₁ = 1`, contradicting `Q₁ ≠ 1`. `isPGroup_two_Q` is the book's phrasing; `Q1_eq_bot` is the form the proof produces (`Q₁` is the odd normal `2`-complement of the nilpotent `Q`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.Q1_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.isPGroup_two_Q /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (1)** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{SquareRootFibres,Trichotomy}.lean`, p. 117. The first of the Proposition's three cases: **if `Q` is abelian then `Q = Q₀` and `st` has order `3`** — the book's alternative (a). By Theorem C, `Q₁ = 1`, so the book's Sylow `2`-subgroup `S` of `Q` is `Q` itself (`sylowTwoOfQ_eq_Q`). * `centralizer_le_Q0_and_orderOf_st_of_commute` — the branch selection. An abelian `Q` makes `C_Q(P)` abelian, which kills the two alternatives of Ch. I §3 Prop 1(c) whose payload is a Suzuki `2`-group (non-abelian by definition, `IsSuzuki2Group.2.1`). The surviving `PSL(2, ℓ)` branch carries `orderOf (st) = 3` and `|C_{Q₀}(P)| = |F| = |C_Q(P)|`, upgrading `C_{Q₀}(P) ≤ C_Q(P)` to equality. * `exists_sq_eq_distinguishedInvolution` — the book's parenthetical "there is then an element `x ∈ S` such that `x² = s` (since `K` is transitive on `Q₀^#`)": an element of `Q ∖ Q₀` has order `2^m` with `m ≥ 2`, and `image_conj_KSet_eq_involutions_H` (§1 Prop 3) moves the resulting involution to `s`. * `Q_eq_Q0_of_commute_of_centralizer_le` — the coset/fixed-point core. Commutativity turns `{y ∈ Q | y² = s}` into `xQ₀`, of `2`-power cardinality; `P ≤ V = C_D(s)` (Ch. I §1 Prop 5) acts on it, and a fixed point would lie in `C_Q(P) ≤ Q₀` while squaring to `s ≠ 1`. * `Q_eq_Q0_and_orderOf_st_of_commute` — case (1) assembled, with the prime-order `P ≤ V` produced from (C1)'s `V ≠ 1`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.sylowTwoOfQ_eq_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sq_eq_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_eq_Q0_of_commute_of_centralizer_le #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.centralizer_le_Q0_and_orderOf_st_of_commute #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.Q_eq_Q0_and_orderOf_st_of_commute /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (2) — the ungated part** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{SquareRootFibres,Trichotomy}.lean`, p. 117. The book's second case ("`S` is non-abelian of order `q²`") up to the one step it defers to a `PSU(3, ℓ)` computation. The reusable machinery of the Proposition was factored out of case (1): * `mul_mem_sqFibre` — `Q₀ ≤ Z(Q)` (Ch. I §2 Prop 1(c)) makes `{y ∈ Q | y² = s}` a union of `Q₀`-cosets. No commutativity of `Q` needed, so this serves all three cases. * `exists_mem_centralizer_mem_sqFibre` — the fixed-point step, "`P` … normalizes `xQ₀` which is of cardinality prime to `p`". `P ≤ V = C_D(s)` centralizes `s` and normalizes `Q`, so it acts on the fibre; if `p ∤ |fibre|` there is a `P`-fixed square root of `s`. * `card_sqFibre_eq_card_Q0_of_isSuzuki2Group` — the book's `(q² − q)/(q − 1) = q`. A Suzuki `2`-group has exponent dividing `4` (Higman Thm 1(a), `pow_four_eq_one_of_isSuzuki2Group`), so squaring maps `Q ∖ Q₀` onto `Q₀^#`; `K`-conjugation (transitive on `Q₀^#`, §1 Prop 3) matches the `|Q₀| − 1` fibres bijectively, and `|Q| = |Q₀|²` forces each to have `|Q₀|` elements. * `isSuzuki2Group_centralizer_of_card_sq` — **case (2)'s branch selection**: `C_Q(P)` is a Suzuki `2`-group. The element of order `4` produced above contradicts `cQ_isElementaryAbelian`, so the `PSL(2, ℓ)` alternative of Ch. I §3 Prop 1(c) is out and both survivors carry `cQ_isSuzuki2Group`. This is the input to the book's remaining step (rule out `PSU(3, ℓ)` via `C_{D₀}(Ω₁(S₀)) ≠ 1`, then `F/Z(F) ≅ Sz(ℓ)` and `st` of order `5`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mul_mem_sqFibre #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_centralizer_mem_sqFibre #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_sqFibre_eq_card_Q0_of_isSuzuki2Group #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.isSuzuki2Group_centralizer_of_card_sq /-! **`[K, W] = 1`** — a Chapter I fact that Chapters I and II never state, needed by the Ch. III §1 Proposition (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/SquareRootFibres.lean`. The book's case (2) says "`C_S(P)` is a `K`-subgroup of `S`", which relies on the choice made at the start of that proof ("if `W ≠ 1`, assume that `P ⊂ W`"). For that to give `K`-invariance, `K` must centralize `W`, and the repository had no such statement. It follows from three facts already present: `W = C_D(Q₀)` is the kernel of the `D`-action on `Q₀` (`ker_conjQ0`), `K` is normal in `D` (`K_normal`, Ch. I §2 Prop 2), and `K ⊓ V = 1` (`K_inf_V_eq_bot`) with `W ≤ V`. The commutator `wkw⁻¹k⁻¹` is in `K` by normality and acts trivially on `Q₀` because `w` does, so it lies in `K ⊓ W ≤ K ⊓ V = 1`. * `commute_of_mem_K_of_mem_W` — `[K, W] = 1`. * `conj_mem_centralizer_of_mem_K_of_le_W` — hence `C_Q(P)` is `K`-invariant for `P ≤ W`. * `sqFibre_eq_coset_of_card` — "`{y ∈ S | y² = s} = xQ₀`" in the form both cases use: the inclusion `xQ₀ ⊆ fibre` is unconditional, so equal cardinalities force equal sets. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commute_of_mem_K_of_mem_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_centralizer_of_mem_K_of_le_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sqFibre_eq_coset_of_card /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (2): `W = 1`** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{SquareRootFibres,Trichotomy}.lean`, p. 117. > If `W ≠ 1`, `C_S(P)` is a `K`-subgroup of `S` which has exponent `4` and so `C_S(P) = S`, > contrary to the fact that `D` acts faithfully on `S`. The book's one sentence needs the fact that a `K`-invariant subgroup of `S` containing an element of order `4` is all of `S`, which is a two-layer transitivity statement: * `exists_mem_K_conj_eq_of_mem_Q0` — §1 Proposition 3 in elementwise form: `K` is transitive on `Q₀^#`. * `eq_bot_or_Q0_le_of_kInvariant` — hence a `K`-invariant subgroup of `Q₀` is `1` or `Q₀`. * `sq_mem_Q0_of_isSuzuki2Group` — exponent `4` (Higman Thm 1(a)) puts every square in `Q₀ = Ω₁(Q)`, so squaring induces `Q/Q₀ → Q₀`. * `inv_mul_mem_Q0_of_sq_eq` — every fibre of that map is a single `Q₀`-coset: the fibre over `s` is (`sqFibre_eq_coset_of_card`), and `K`-conjugation moves any other fibre onto it. * `exists_mem_K_conj_mem_coset` — the induced map is therefore injective, and in case (2) `|Q/Q₀| = |Q₀|` makes it bijective, so transitivity on `Q₀^#` lifts to `(Q/Q₀)^#`. * `Q_le_of_kInvariant_of_sq_ne_one` — combining the two layers: `X` swallows `Q₀` and then meets every coset of `Q₀`. * `W_eq_bot_of_isSuzuki2Group` — **case (2)'s `W = 1`**. With `P ≤ W` of prime order (`exists_le_card_eq_prime`), `C_Q(P)` is `K`-invariant and contains a `P`-fixed square root of `s`, hence equals `Q`; then `P ≤ D` centralizes `Q`, and `C_D(Q) = 1` (Ch. I Proposition 4(c)) contradicts `|P| = p`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_le_card_eq_prime #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sq_mem_Q0_of_isSuzuki2Group #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_K_conj_eq_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_bot_or_Q0_le_of_kInvariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inv_mul_mem_Q0_of_sq_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_K_conj_mem_coset #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_le_of_kInvariant_of_sq_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.W_eq_bot_of_isSuzuki2Group /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (2) complete: `st` has order `5`** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{SquareRootFibres,Trichotomy}.lean`, p. 117. The last step of case (2) rules out the `PSU(3, ℓ)` alternative of Ch. I §3 Proposition 1(c). **Deviation from the book, deliberate.** Peterfalvi argues "if `G₀ = PSU(3, ℓ)`, `S₀` is a Sylow `2`-subgroup of `G₀` and `N_{G₀}(S₀) = S₀ ⋊ D₀`, then, as can be checked, `C_{D₀}(Ω₁(S₀)) ≠ 1`", a structural computation inside `PSU(3, ℓ)` that the text does not perform. The repository's `CentralizerPSUData` already records the exact cardinality relation of that branch, `|C_Q(P)| = |C_{Q₀}(P)|³`, and case (2) contradicts it by counting: * `natCard_inf_centralizer_le_sq` — in case (2) squaring maps `C_Q(P)` into `C_{Q₀}(P)` with every fibre inside a coset of `C_{Q₀}(P)` (`sq_mem_Q0_of_isSuzuki2Group` and `inv_mul_mem_Q0_of_sq_eq`), so `|C_Q(P)| ≤ |C_{Q₀}(P)|²`. * `two_le_natCard_inf_Q0_centralizer` — `s ∈ C_{Q₀}(P)` because `P ≤ V = C_D(s)`, so `|C_{Q₀}(P)| ≥ 2` and `|C_{Q₀}(P)|³ > |C_{Q₀}(P)|²`. * `orderOf_st_eq_five_of_isSuzuki2Group` — with `PSL(2, ℓ)` excluded by the element of order `4` and `PSU(3, ℓ)` by the count, the surviving `Sz(ℓ)` branch gives `orderOf (st) = 5`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.two_le_natCard_inf_Q0_centralizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_inf_centralizer_le_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.orderOf_st_eq_five_of_isSuzuki2Group /-! **Type-A squaring is injective modulo `Ω₁`** — the step Peterfalvi Part II, Ch. III §1, Proposition, case (3) states as "since `C_S(P)` is of type A, it follows that `y ∈ x Ω₁ C_S(P)`" (p. 117). `GroupTheory/SpecificGroups/Suzuki/{Field,RootGroup, RootSubgroupSuzukiType}.lean`. * `mul_titsTwist_injective` — the quadratic map `a ↦ a θ(a)` of Appendix III, Definition 2 is injective on the whole defining field. Only the defining identity `θ(θ x) = x²` is needed: applying `θ` to `a θ(a) = b θ(b)` gives `θ(a) a² = θ(b) b²`, and multiplying the original by `a` turns the left side into `a b θ(b)`, so `b` and `θ(b)` cancel. Restricted to units this is the existing `torusWeightUnit_injective` of Ch. I §3 Lemma 1, whose private helper `torusWeight_ne_one_of_ne_one` now derives from it instead of repeating the argument. * `RootGroup.sq_inv_mul_eq_one_of_sq_eq` — since squaring is `(a, b) ↦ (0, a θ(a))`, equal squares force equal first coordinates, so `x⁻¹y` lies in the central line. * `StandardTypeAData.sq_inv_mul_eq_one_of_sq_eq` — the same statement for any group carrying standard type-A data, transported along the model equivalence. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.mul_titsTwist_injective #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.RootGroup.sq_inv_mul_eq_one_of_sq_eq #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.Suzuki.StandardTypeAData.sq_inv_mul_eq_one_of_sq_eq /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (3): the two `K`-subgroups** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{SquareRootFibres,Trichotomy}.lean`, p. 117. Case (3) runs the case-(2) apparatus twice, on the two `K`-subgroups `X`, `Y` of `S` of order `q²` rather than on `S` itself, so the fibre machinery is generalized from `S` to any `K`-invariant `X` with `Q₀ ≤ X ≤ S` and `|X| = |Q₀|²` (the previous `S`-only statements are now the `X = S` instances): * `sqFibreIn`, `mul_mem_sqFibreIn`, `sqFibreIn_eq_coset_of_card` — the fibre `{y ∈ X | y² = s}` and its identification with a `Q₀`-coset. * `card_sqFibreIn_eq_card_Q0_of_kInvariant` — the count `(q² − q)/(q − 1) = q` inside `X`. * `exists_mem_centralizer_mem_sqFibreIn` — the book's "as in case (2), `P` then centralizes an element `x ∈ X` such that `x² = s`", for `P` normalizing `X`. * `inv_mul_mem_Q0_of_sq_eq_in`, `exists_mem_K_conj_mem_coset_in`, `le_of_kInvariant_of_sq_ne_one_in` — `K` is transitive on `(X/Q₀)^#`, so `X` is simple as a `K`-group over `Q₀`. * `inf_eq_Q0_of_ne_of_kInvariant` — hence two distinct such subgroups meet exactly in `Q₀`. * `false_of_typeA_centralizer_of_two_kSubgroups` — **the case-(3) contradiction**: with `P` normalizing both and `C_Q(P)` of type A (the `Sz(ℓ)` branch, i.e. `st` of order `5`), the two square roots `x ∈ X`, `y ∈ Y` of `s` satisfy `x⁻¹y ∈ Q₀` by type-A injectivity, so `y` lies in `X ⊓ Y = Q₀` while `y² = s ≠ 1`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_sqFibreIn_eq_card_Q0_of_kInvariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sqFibreIn_eq_coset_of_card #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_centralizer_mem_sqFibreIn #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.le_of_kInvariant_of_sq_ne_one_in #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inf_eq_Q0_of_ne_of_kInvariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.false_of_typeA_centralizer_of_two_kSubgroups #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.orderOf_st_eq_three_of_two_kSubgroups /-! **Higman theorem (d) in `G`-language: the two `K`-subgroups of `S` of order `q²`** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/TwoKSubgroups.lean`, Appendix III p. 141 / Ch. III §1 p. 117. Higman's clause (d) — already available as `center_payload_of_card_eq_cube` — splits `S ⧸ Z(S)` into two complementary invariant summands of order `q`, but states it in the quotient `↥Q ⧸ Z(↥Q)` with the `IsAInvariant` vocabulary of Isaacs Ch. 3. Case (3) of the Ch. III §1 Proposition needs the same content as plain subgroups of `G`. * `card_liftCentralQuotient`, `liftCentralQuotient_injective`, `kInvariant_liftCentralQuotient` — the bridge: a subgroup of `↥Q ⧸ Z(↥Q)` lifts to a subgroup of `G` between `Q₀` and `Q` whose order is multiplied by `|Z(Q)|`, whose `K`-invariance is the elementwise conjugation statement the Proposition uses, and which determines the original. * `exists_two_kSubgroups_of_card_cube` — the packaged conclusion: a Suzuki `2`-group `Q` with `|Q| = |Q₀|³` has two distinct `K`-invariant subgroups `X ≠ Y` with `Q₀ ≤ X, Y ≤ Q` and `|X| = |Y| = |Q₀|²`. * `isKSubgroupSquare_map_conj` — `V` permutes these subgroups: it normalizes `Q` and `Q₀`, and normalizes `K` because `K ⊴ D` (Ch. I §2 Proposition 2). * `map_conj_eq_self_of_unique`, `conj_mem_of_unique_of_le_V` — **"`P` therefore normalizes `X` and `Y`"** when they are the only two: `P` has odd order (`prime_ne_two_of_le_V`) and an odd-order element cannot swap a two-element set, since it has a square root in its own cyclic group and `X^{h²} = X` however `h` acts. What case (3) still needs on top of this is the uniqueness itself. * `exists_eq_liftCentralQuotient_of_isKSubgroupSquare` — the converse of the bridge: every such subgroup comes from an invariant subgroup of order `q` of the central quotient. * `exists_two_kSubgroups_unique_of_card_cube` — **types C and D: there are exactly two** ("`X` and `Y` are the only `𝐅₂[K]`-submodules of order `q` in `S/Q₀`", p. 117). A third one would make the summands `K`-equivariantly isomorphic (`nonempty_kEquivariantMulEquiv_of_third_invariant`) and Appendix III Theorem (e) (`isTypeB_of_isomorphicOrderQModuleSplit_of_card_eq_cube`) would put `S` in type B. The type-B case still needs the book's count `q + 1`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_liftCentralQuotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.liftCentralQuotient_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.kInvariant_liftCentralQuotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isKSubgroupSquare_map_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.map_conj_eq_self_of_unique #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_of_unique_of_le_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_two_kSubgroups_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_eq_liftCentralQuotient_of_isKSubgroupSquare #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_two_kSubgroups_unique_of_card_cube /-! **Operator Maschke replaces the book's count of `K`-subgroups** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/TwoKSubgroups.lean`, p. 117 case (3). For the type-B half of case (3) the book produces the second `K`-subgroup by counting: "every element of order `4` in `S` generates a `K`-subgroup of order `q²`, and the number of `K`-subgroups of `S` of order `q²` is `q + 1`". That count needs the module theory behind `End_K(M) = 𝐅_q`. It is avoided here: one such subgroup produces a second one by **operator Maschke** applied to the odd-order operator group. * `conjQBy`, `conjQuotientBy` — conjugation on `Q` and on `Q ⧸ Z(Q)` by an arbitrary operator subgroup `A ≤ H`, generalizing `conjQByK` and `conjQByW`. * `conj_mem_liftCentralQuotient`, `aInvariant_map_of_conj_mem` — the bridge in both directions for that action. * `exists_kSubgroupSquare_complement` — **the replacement**: since `|D|` is odd (`D_odd`) and `Q ⧸ Z(Q)` is an elementary abelian `2`-group, any `A ≤ D` acts coprimely, so BG Ch. 1's `exists_aInvariant_complement_of_isElementaryAbelian` gives an `A`-invariant complement. Its preimage is a second subgroup of the same description meeting the first in `Q₀`. Applied with `A = K ⊔ P`, the partner is normalized by `P` as well. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_liftCentralQuotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.aInvariant_map_of_conj_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_kSubgroupSquare_complement /-! **The converse of split uniqueness: isomorphic summands give many invariant subgroups** (issue 0163, 2026-07-29). `Appendices/Suzuki2Groups/SplitUniqueness.lean`. `nonempty_kEquivariantMulEquiv_of_third_invariant` says a third invariant subgroup of the summand order forces the summands to be `K`-equivariantly isomorphic. Case (3) of the Ch. III §1 Proposition needs the converse for its type-B half: Peterfalvi phrases it as "every element of order `4` in `S` generates a `K`-subgroup of order `q²`, and the number of `K`-subgroups of `S` of order `q²` is `q + 1`" (p. 117), but only the existence of one such subgroup through a prescribed element is used. * `exists_invariant_mem_of_kEquivariantMulEquiv` — with `E = U₁ ⊕ U₂`, an equivariant isomorphism `e : U₁ ≅_K U₂` and `K` transitive on `U₂ ∖ {1}`, every `v ∈ E` lies in a `K`-invariant subgroup of order `|U₁|`: decompose `v = x·y`, use transitivity to translate `e` by a `k ∈ K` carrying `e x` to `y`, and take the graph of the result. The graph is a subgroup because `E` is abelian, `K`-invariant because `K` is abelian and `e` equivariant, and of order `|U₁|` because `U₁ ⊓ U₂ = 1`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.exists_invariant_mem_of_kEquivariantMulEquiv /-! **Peterfalvi Part II, Ch. III §1, Proposition, case (3): `st` has order 3, unconditionally** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{TwoKSubgroups,Trichotomy}.lean`, p. 117. The book splits case (3) on the type of `S`: for types C and D the two `K`-subgroups of `S` of order `q²` are the only ones, and for type B it counts `q + 1` of them. The dichotomy used here is the one that drives both halves — are the summands of Higman's split `K`-equivariantly isomorphic? — and the type-B count is replaced by a construction plus operator Maschke. * `conj_mem_sup` — invariance under two operator subgroups gives invariance under their join. * `conj_mem_of_mem_centralizer` — a `K`-subgroup of order `q²` containing an element that `P` centralizes is normalized by `P`: its conjugates are again such subgroups and two distinct ones meet in `Q₀`, which the common element avoids. This is the content of the book's "since `P` centralizes an element of order `4` in `S`". * `exists_two_kSubgroups_invariant_of_card_cube` — **the two `K`-subgroups `P` normalizes**. Non-isomorphic summands: the two lifts are the only such subgroups and `P` fixes both. Isomorphic summands: `exists_invariant_mem_of_kEquivariantMulEquiv` puts the order-`4` element in one, and `exists_kSubgroupSquare_complement` supplies its partner. * `orderOf_st_eq_three_of_card_cube` — **case (3)'s `orderOf (st) = 3`**. Only the `Sz(ℓ)` branch of Ch. I §3 Proposition 1(c) has `orderOf (st) = 5`; there `C_Q(P)` is a Suzuki `2`-group, hence non-abelian, hence has an element of order `4` (a group of exponent `2` is commutative), and the two `K`-subgroups then refute the branch. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_sup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_of_mem_centralizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_two_kSubgroups_invariant_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.orderOf_st_eq_three_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.not_cQ_isElementaryAbelian_of_kSubgroup /-! **The two possible orders of a Suzuki `2`-group** (issue 0163, 2026-07-29). `Higman/Suzuki2Groups/Classification.lean`, Appendix III p. 141, as used in Part II, Ch. III §1 p. 117 ("`S` is non-abelian of order `q²`" versus "of order `q³`"). `higmanClassification_of_isSuzuki2Group` names the four types but says nothing about orders, and `XiLengthFromCard.lean` only runs from an order hypothesis to the ξ-length. The orders come from the models: each type is the quadratic extension of an **anisotropic** quadratic map, so `x² = 1` says exactly that the quotient coordinate vanishes. * `BilinearTwistedProduct.natCard` — the twisted product is `V × W` as a set. * `QuadraticExtension.sq_eq_one_iff`, `natCard_sq_eq_one` — for anisotropic `q` the elements of order dividing `2` are the kernel, of order `|W|`. * `natCard_and_natCard_sq_eq_one_of_mulEquiv` — transported along a model equivalence, and its four instances `Type{A,B,C,D}Data.natCard_and_natCard_sq_eq_one`. * `typeAQuadraticMap_anisotropic` — `a·φ(a) = 0` forces `a = 0` in a field (types B, C, D already had their anisotropy recorded). * `natCard_eq_sq_or_cube_of_isSuzuki2Group` — **the dichotomy**: `|P| = |Ω₁(P)|²` (type A, both coordinates the field) or `|P| = |Ω₁(P)|³` (types B, C, D, two-dimensional quotient). * `natCard_sq_eq_one_eq_natCard_Q0`, `natCard_Q_eq_sq_or_cube` — the same for the ambient `Q`, using `Ω₁(Q) = Q₀`: this is the book's split into "`S` non-abelian of order `q²`" (case (2)) and "of order `q³`" (case (3)). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.BilinearTwistedProduct.natCard #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.sq_eq_one_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.natCard_sq_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.QuadraticExtension.natCard_and_natCard_sq_eq_one_of_mulEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.typeAQuadraticMap_anisotropic #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.natCard_eq_sq_or_cube_of_isSuzuki2Group #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_sq_eq_one_eq_natCard_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_Q_eq_sq_or_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isTypeA_of_natCard_eq_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.isMulCommutative_or_isSuzuki2Group_Q /-! **Peterfalvi Part II, Ch. III §1, Proposition** (issue 0163, 2026-07-29). `Appendices/Suzuki/StructureOfH/{Trichotomy,WNeBot}.lean`, pp. 116–117. > One of the following three cases holds. > (a) `S = Q₀` and `st` has order `3`. > (b) `S` is a Suzuki `2`-group of type A, `st` has order `5` and `W = 1`. > (c) `S` is a Suzuki `2`-group of type B, `st` has order `3` and `W ≠ 1`. `S = Q` after Theorem C. The case split is Ch. I §2's "either `S` is abelian or `S` is a Suzuki `2`-group", refined by Appendix III's two possible orders `|Q₀|²` and `|Q₀|³` (`natCard_Q_eq_sq_or_cube`). Case (a) is `Q_eq_Q0_and_orderOf_st_of_commute`; case (b) is `isTypeA_of_natCard_eq_sq` with `orderOf_st_eq_five_of_isSuzuki2Group` and `W_eq_bot_of_isSuzuki2Group`; case (c) is `orderOf_st_eq_three_of_card_cube` followed by Ch. I §3 Lemma 5 (`lemmaFive_of_orderThree`). The `W ≠ 1` clause of case (c) is `W_ne_bot_of_card_cube` (issue 0164): under `W = 1` the three alternatives of Ch. I §3 Proposition 1(c) are refuted one by one. Two of them needed work the book does not do — the deferred `PSU(3, ℓ)` Sylow-normalizer computation ("as can be checked", p. 117), and the `PSL(2, ℓ)` branch, whose stated Frobenius argument is equivalent to `p ∤ q₀ − 1` and genuinely fails otherwise; Hilbert 90 on a `K`-orbit of `S/Q₀` replaces it. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.trichotomy /-! **`C_{D₀}(Ω₁(S₀)) ≠ 1` in `PSU(3, ℓ)`** (issue 0164, 2026-07-29). `GroupTheory/SpecificGroups/ProjectiveUnitary/TorusCentralizer.lean`, Peterfalvi Part II, Ch. III §1 p. 117 — the step the book states "as can be checked" and does not carry out. In these coordinates it is a computation in `𝔽_{ℓ²}^×`. `Ω₁(S₀)` is the centre line `{u | u.fst = 0}` (`sq_eq_one_iff_fst_eq_zero`); the torus acts on the second coordinate through the norm `N(c) = c · c* = c^{ℓ+1}` (`scalePoint_snd`); and the determinant-one torus is the image of `t ↦ t^{2ℓ−1}` (`PSUTorusParameter`). For `c = t^{2ℓ−1}` the norm is `(t^{ℓ+1})^{2ℓ−1}`, so an element `t` of order exactly `ℓ + 1` — available because the unit group is cyclic of order `(ℓ−1)(ℓ+1)` — gives `N(c) = 1`, while `c ≠ 1` because `2ℓ − 1 = 2(ℓ+1) − 3` makes `(ℓ+1) ∣ (2ℓ−1)` equivalent to `ℓ ≤ 2` (and `PSU3InductionTarget` carries `1 < n`). ⚠ This is exactly where `PSU(3, ℓ)` parts company with `Sz(ℓ)`: the Suzuki torus acts *regularly* on the involutions of its root group (`standardRootTorus_actsRegularlyOnInvolutions`), so its centralizer there is trivial, whereas the unitary torus contains the norm-one subgroup of order `ℓ + 1`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.natCard_units_field #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_ne_one_mem_psuTorus_torusWeight_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_ne_one_mem_psuTorus_scalePoint_eq_of_sq_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.odd_orderOf_psuTorusParameter #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_ne_one_odd_centralizing_involutions_standardRoot #assert_only_allowed_axioms OddOrder.GroupTheory.SpecificGroups.ProjectiveUnitary.exists_ne_one_odd_centralizing_involutions_of_sylowTwo #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.orderOf_st_eq_three_of_card_cube_of_not_isTypeB /-! **The theorem of Galois for `RingAut F`** (issue 0164, 2026-07-29). `Algebra/FixedPointsGalois.lean`, upstream half of Peterfalvi Part II, Ch. III §1 p. 117 ("`V` then acts as a group of field automorphisms on `Q₀` and, by the theorem of Galois, `C_V(C_{Q₀}(P)) = P`"). mathlib's Galois correspondence (`IntermediateField.fixingSubgroup_fixedField`) is stated for `E ≃ₐ[F] E`, but Ch. I §2 Proposition 3 (`exists_semilinear_equiv`) hands the acting group over as an abstract subgroup `A ≤ RingAut F` with no base field in sight. These lemmas run Artin's counting argument (`FixedPoints.finrank_eq_card`) directly in `RingAut F`: `fixer (F^B)` contains `B` and fixes the same set, so the two have equal order and hence coincide. -/ #assert_only_allowed_axioms OddOrder.RingAut.finrank_fixedSet #assert_only_allowed_axioms OddOrder.RingAut.fixer_fixedSet #assert_only_allowed_axioms OddOrder.RingAut.mem_of_fixes_fixedPoints #assert_only_allowed_axioms OddOrder.RingAut.eq_of_fixedSet_eq /-! **有限体の自己同型は Frobenius の冪** (issue 0164, 2026-07-29). `Algebra/SemilinearFixedPoint.lean` — Ch. III §1 p. 117 の書籍の穴を埋める半線形ルートの土台。 素体上では任意の環自己同型が自動的に代数自己同型になり (`RingHom.ext_zmod` で `ZMod p` からの環準同型が一意)、`Gal(F/𝔽_p)` は Frobenius で生成される (`FiniteField.bijective_frobeniusAlgEquivOfAlgebraic_pow`)。その `n` 乗は `x ↦ x^(p^n)`。 用途: `K` を正規化する奇位数群は `𝔽₂[K]`-加群の斉次成分の上に**半線形**に作用する。 その固定点が非零であること (Hilbert 90) が、書籍の誤った 「`[K,P] ⋊ P` は Frobenius 群」の正しい代替になる。 `exists_ne_zero_mul_pow_eq` がその Hilbert 90 本体: `|F| = s^n` かつ `c^((|F|−1)/(s−1)) = 1` (= `c` の `s`-ノルムが 1) なら半線形写像 `v ↦ c·v^s` は 非零固定点を持つ。`v` が固定点 ⟺ `v^{s−1} = c⁻¹` なので、巡回群 `Fˣ` で 「`x^(N/d) = 1` なら `x` は `d` 乗」(`exists_pow_eq_of_pow_natCard_div_eq_one`) に帰着する — 生成元 `g` で `x = g^a` と書けば仮説は `d ∣ a` と同値。 -/ #assert_only_allowed_axioms OddOrder.RingAut.exists_pow_eq #assert_only_allowed_axioms OddOrder.exists_pow_eq_of_pow_natCard_div_eq_one #assert_only_allowed_axioms OddOrder.RingAut.exists_ne_zero_mul_pow_eq #assert_only_allowed_axioms OddOrder.RingAut.exists_generator_pow_natCard_fixedSet #assert_only_allowed_axioms OddOrder.exists_ne_zero_fixed_of_semilinear /-! **`C_V(C_{Q₀}(P)) = PW`** (issue 0164, 2026-07-29). `Peterfalvi/Appendices/Suzuki/GaloisCentralizer.lean`, Part II, Ch. III §1 Proposition p. 117 ("By Chapter I, §2, Proposition 3, `V` then acts as a group of field automorphisms on `Q₀` and, by the theorem of Galois, `C_V(C_{Q₀}(P)) = P`"). Ch. I §2 Proposition 3 (`exists_semilinear_equiv`) turns `Q₀` into the additive group of a finite field `F` on which `V̄ = V/W` acts through `A ≤ RingAut F`. Under that dictionary `C_{Q₀}(P)` is the fixed set `F^B` of the image `B` of `P`, and the Galois correspondence (`OddOrder.RingAut.fixer_fixedSet`) says the automorphisms fixing `F^B` are exactly `B`. Pulling back along `V → A`, whose kernel is `W`, gives `P ⊔ W`; the book's `= P` is the `W = 1` specialisation it is about to be in. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.W_centralizes_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_V_centralizer_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralizer_V_centralizer_Q0_of_W_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_Q0_eq_pow_of_W_eq_bot /-! **`Z(F)` は奇位数** (issue 0164, 2026-07-29). `Peterfalvi/Appendices/Suzuki/StructureOfH/PSUCentre.lean`, Ch. I §3 Prop 1(c) の PSU 分岐. `C_Q(P)` は `C = C_G(P)` の Sylow 2 であり (`exists_sylow_two_eq_cQ_of_isPGroup`)、 `F = O^{2'}(C)` はその正規閉包 (`residual_eq_normalClosure`) なので `C_Q(P) ≤ F`、 したがって `F` の Sylow 2 でもある。その位数は `|RootGroup n|` (`cQEquivRoot`) で、 これは `F/Z(F) ≅ PSU(3,ℓ)` の Sylow 2 (`standardRootSylow`) の位数と一致する。 中心拡大の上下で Sylow 2 の位数が等しい ⟹ `2 ∤ |Z(F)|` (`Sylow.not_dvd_natCard_of_natCard_eq`)。 Ch. III §1 Proposition が `C_{G₀}(Ω₁(S₀))` の元を `F` に持ち上げるとき、交換子は `Z(F)` にしか落ちないが、この奇位数性と `commute_of_commutatorElement_mem_of_coprime_natCard` で真の中心化に格上げできる。 -/ #assert_only_allowed_axioms Sylow.not_dvd_natCard_of_natCard_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.CentralizerPSUData.odd_natCard_center_residual /-! **`C_H(s) = QV` と `W = 1 ⟹ V 可換`** (issue 0164, 2026-07-29). Ch. III §1 Proposition が `F/Z(F)` 側から持ち上げた元 `x` を `Q`-成分と `V`-成分に 分解するための 2 点。 `s ∈ Q₀ ≤ Z(Q)` (`Q0_le_centralizer_Q`) より `Q` は `s` を丸ごと中心化するので、 `H = QD` の分解 `x = q d` で `d` も `s` を中心化し、`V = C_D(s)` (Ch. I Prop 5) から `d ∈ V`。逆向きは自明なので `C_H(s) = Q ⊔ V`。 `V` の可換性は Ch. I §2 Prop 3 の「`V̄` は巡回」(`isCyclic_Vbar`) と、`W = 1` のとき `V → V̄` が単射であること (`VtoVbar_eq_one_iff`) から出る。これにより `x = q v` の `v` 側が自動的に `C_G(P)` に入り、`q ∈ C_Q(P)` が従う。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.Q_le_centralizer_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_Q_mem_V_of_mem_H_of_commute_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inf_centralizer_distinguishedInvolution_eq_sup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isCyclic_Vbar #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isMulCommutative_V_of_W_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.V_le_centralizer_of_le_V_of_W_eq_bot /-! **PSU(3,ℓ) 分岐は `W = 1` と両立しない** (issue 0164, 2026-07-29). `StructureOfH/PSUCentre.lean`, Peterfalvi Part II, Ch. III §1 Proposition p. 117 「It follows that `F/Z(F)` is not isomorphic to `PSU(3, ℓ)`」— 書籍が "as can be checked" で省略した計算を実際に遂行して得た結論。 連鎖: PSU の計算 (`exists_ne_one_odd_centralizing_involutions_of_sylowTwo`) が `F/Z(F)` の Sylow 2 の involution を全部中心化する非自明・奇位数の `d` を出す → その**任意の**逆像 `x ∈ F` は `⁅x, y⁆ ∈ Z(F)` しか満たさないが、`Z(F)` は奇位数 (`odd_natCard_center_residual`) なので 2-元 `y ∈ C_{Q₀}(X)` との交換子は消える (`commute_of_commutatorElement_mem_of_coprime_natCard`) → `x` は `s` を中心化 ⟹ `x ∈ C_G(s) ≤ H` (Ch. I §3 Prop 1(b)) ⟹ `x = q v` (`C_H(s) = QV`) → `W = 1` で `V` 可換ゆえ `V ≤ C_G(X)`、よって `q ∈ C_Q(X)`、`v` は `x` から `C_{Q₀}(X)` の中心化を継承 → Galois (`centralizer_V_centralizer_Q0_of_W_eq_bot`) で `v ∈ X` → `X` は `C_G(X)` の中心ゆえ `F` でも中心 ⟹ `d = image(q)` は 2-元。 奇位数の非自明元が 2-元であることはない。∎ -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.CentralizerPSUData.exists_mem_residual_commute_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.CentralizerPSUData.false_of_W_eq_bot /-! **`⁅K, X⁆` の基本性質** (issue 0164, 2026-07-29). `StructureOfH/WielandtOnQ.lean` — Ch. III §1 Proposition p. 117 の 「`[K, P] ⋊ P` は Frobenius 群」を組むための groundwork。 `K ⊴ D` (`K_normal`, Ch. I §2 Prop 2) から `X ≤ D` に対し `⁅K, X⁆ ≤ K` かつ `X` は `⁅K, X⁆` を正規化する。`⁅K, X⁆ ≠ 1` は `W = 1` から: さもなくば `X` は `K` を中心化し `X ≤ C_V(K) = W = 1` となる。 `isFrobeniusGroup_commutator_K_sup` が Frobenius 性、 `natCard_eq_pow_natCard_inf_centralizer` が Wielandt の帰結 `|N| = |C_N(X)|^{|X|}` (H-不変な 2-部分群 N ≤ Q すべてに対して)。 ⚠ 互いに素性 `p ∤ |K| = q−1` (⟺ `p ∤ q₀−1`) が**仮説として必要** — 書籍は 無条件に Frobenius と述べるが Ch. III では成り立たない。補集合の場合 `p ∣ q₀−1` は Hilbert 90 (`RingAut.exists_ne_zero_mul_pow_eq`) で処理する。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commutator_K_le_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commutator_K_ne_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_commutator_K_of_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isFrobeniusGroup_commutator_K_sup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_eq_pow_natCard_inf_centralizer #assert_only_allowed_axioms OddOrder.Nat.prime_dvd_pow_self_sub_one_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coprime_natCard_K_of_not_dvd #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_Q0_of_mem_H #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isPGroup_two_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.false_of_natCard_cQ_eq_cQ0_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_ne_one_fixed_of_prime_pow_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.exists_mem_orbit_of_not_dvd_orbitCount #assert_only_allowed_axioms OddOrder.GroupTheory.exists_ne_one_fixed_of_free_orbit_semilinear #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_inf_centralizer_not_mem_Q0 /-! **`W ≠ 1` in case (3) of the Ch. III §1 Proposition** (issue 0164, 2026-07-29). `Appendices/Suzuki/StructureOfH/{FieldRealizationK,HilbertNinetyOnQ,WNeBot}.lean`, p. 117. The book closes case (3) with "But `[K, P] ⋊ P` is a Frobenius group acting on `S/Q₀` … whence `C_{S/Q₀}(P) ≠ 1`". That Frobenius property is equivalent to `p ∤ q₀ − 1` and genuinely fails in some Chapter III configurations, so the conclusion needs a different proof. It has one: * `exists_field_realization_K` — `K` acts on the elementary abelian `Q₀` freely off the identity (Ch. I §2 Prop 1(a)) and `|K| = |Q₀| − 1`, so the action is transitive on `Q₀ ∖ {1}` and hence irreducible; Appendix I Prop 2 makes `Q₀` a line over a field `F` of order `|Q₀|` and `μ : K → Fˣ` a bijection. Conjugation by `x ∈ V` is `σ`-semilinear with `μ ∘ α = σ ∘ μ`, and `σ ≠ 1` is exactly `W = C_V(K) = 1`. * `exists_mem_inf_centralizer_not_mem_Q0_of_orbit` — `K` is free on `S/Q₀ = Q ⧸ Z(Q)`, so its orbits there have length `q − 1` and there are `(q² − 1)/(q − 1) = q + 1` of them; a `P` of prime order `p ∤ q + 1` fixes one setwise, and on that `K`-torsor Hilbert 90 (`exists_ne_one_fixed_of_free_orbit_semilinear`) produces a fixed point. A coprime lift (Isaacs Cor 3.28) moves it to `C_Q(P) ∖ Q₀`. ⚠ Working with `K`-*orbits* rather than `K`-submodules is what removes the book's count of the `K`-subgroups of `S` of order `q²` — in type B that count ("there are `q + 1` of them") rests on the projective line over `End_K(irreducible) ≅ 𝔽_q`, which the text does not prove either. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQ0_fixed_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isAInvariant_eq_bot_or_eq_top_conjQ0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_field_realization_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.center_eq_Q0_subgroupOf_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.kfree_mod_Q0_of_center_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_inf_centralizer_not_mem_Q0_of_orbit #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_inf_centralizer_not_mem_Q0_of_card_cube #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.W_ne_bot_of_card_cube /-! **The canonical decomposition of `t x t`** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. > Let `f, g : S# → S#` and `h : S# → D` be the mappings such that, for `x ∈ S#`, > `txt = g(x)h(x)tf(x)`. `S = Q` after Theorem C. Existence and uniqueness come from Ch. I §1 Proposition 4(a) (`existsUnique_canonicalForm`) once `t x t ∉ H` is known — which is `Q ⊓ D = 1`, since `t x t ∈ H` would put `x` in the stabilizer of both `basept` and `t • basept`. The `H`-part splits as `Q ⋊ D`; `f(x) ≠ 1` because `t x t ∈ H t` would give `t ∈ H`, and `g(x) ≠ 1` because the same applied to `x⁻¹` would (using that `t` normalizes `D`). `tConjTriple_conj` is the book's identity (1): `t` inverts `K`, so conjugating by `a ∈ K` sends the decomposition of `t x t` to that of `t xᵃ t` with `g, f` conjugated by `a⁻¹` and `h(xᵃ) = a h(x) a`. This is what reduces the Proposition of §2 to a system of representatives for the `K`-orbits of `S#`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_notMem_H_of_mem_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_notMem_mul_t #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.existsUnique_tConjTriple #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_spec #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_eq_of #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_conj /-! **`h(s) = h(r) = h(r⁻¹) = 1` and `r² ≠ 1`** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. The structure equation `tst = r⁻¹tr` (Ch. I §1 Proposition 4(b)) *is* the canonical decomposition of `t s t`, with middle factor `1`; inverting `trt = rts` gives `tr⁻¹t = str⁻¹`, so the same holds at `r` and `r⁻¹`. Since `s ∈ Q₀ ≤ Z(Q)` commutes with `r ∈ Q`, the equation also reads `(st)² = (st)^r`, and iterating gives `(st)^{r²} = (st)⁴`; with `st` of order `5` this forces `r² ≠ 1` (else `(st)³ = 1`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_structureConjugator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_structureConjugator_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_structureConjugator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjTriple_structureConjugator_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sq_st_eq_conj_structureConjugator #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_sq_ne_one /-! **The main computation (4)** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. > `t r r^{-k} t = r r^{-ℓ⁻¹} · ℓ²k² · t · r^{ℓ⁻¹k⁻²} r^{-k⁻¹}`, > which is to say `f(rr^{-k}) = r^{ℓ⁻¹k⁻²} r^{-k⁻¹}`, `g(rr^{-k}) = r r^{-ℓ⁻¹}` and > `h(rr^{-k}) = ℓ²k²`. Here `x^a = a⁻¹ x a` and `ℓ ∈ K` is determined by `s k s k⁻¹ = s^ℓ`. The identity is pure group algebra from three inputs: `t` inverts `k` and `ℓ` (they lie in `K`), the structure equation `tst = r⁻¹tr`, and the defining relation for `ℓ`. Both sides normalize to `r ℓ r⁻¹ · t · r ℓ⁻¹ k⁻¹ r⁻¹ k⁻¹` — on the right using `k²tk² = t` and `ℓtℓ = t`. Its point is that the middle factor `ℓ²k²` lies in `K`, which together with the equivariance `h(xᵃ) = a h(x) a` and `h(s) = h(r) = h(r⁻¹) = 1` gives `h(x) ∈ K` on a full system of representatives for the `K`-orbits of `S#`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.t_conj_structureConjugator_mul_conj_inv /-! **`ℓ`, the elements `r r^{-k}`, and `h(r r^{-k}) ∈ K`** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. For `1 ≠ k ∈ K` the product `s k s k⁻¹` is again an involution of `H`: both `s` and `k s k⁻¹` lie in the elementary abelian `Q₀`, and it is non-trivial because `C_Q(k) = 1` (Ch. I §2 Proposition 1(a)) keeps `k` from centralizing `s`. Ch. I §1 Proposition 3 — the involutions of `H` form a single `K`-orbit (`image_conj_KSet_eq_involutions_H`) — then supplies `ℓ ∈ K` with `s k s k⁻¹ = s^ℓ`, and `ℓ ≠ 1` since `ℓ = 1` would force `s = 1`. The same `C_Q(k) = 1` shows `r r^{-k} ≠ 1`, so the canonical triple of `t r r^{-k} t` is defined; the identity (4) identifies its middle factor as `ℓ²k² ∈ K`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_of_mul_eq_mul_of_mem_Q_mem_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mul_conj_inv_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mul_conj_inv_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_KSet_conj_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_tConjTriple_eq /-! **`h(x) ∈ K` on the book's system of representatives** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. `h(s) = h(r) = h(r⁻¹) = 1` and `h(r r^{-k}) = ℓ²k²`, all in `K`; and `h(xᵃ) = a h(x) a` moves the property along `K`-orbits. What remains of the Proposition of §2 is that these elements *are* a full system of representatives for the `K`-orbits of `S#` — there are `|S#|/|K| = q + 1 = |K#| + 3` orbits, so it suffices that they be pairwise non-conjugate. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_conj_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_distinguishedInvolution_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_structureConjugator_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_structureConjugator_inv_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_structureConjugator_mul_conj_inv_mem_K /-! **The system of representatives, and what is left of §2** (issue 0165, 2026-07-29). `GroupTheory/FreeActionOrbitCount.lean` and `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. `exists_mem_orbit_of_card_mul_eq` is the counting criterion the book uses implicitly: for a free action, a set `R` of pairwise inequivalent points with `|R| · |Γ| = |S|` meets every orbit — the map `R × Γ → S`, `(y, a) ↦ a • y`, is injective and the cardinalities agree. `orbitReprSet` is the book's list `{s, r, r⁻¹} ∪ {r r^{-k} : k ∈ K#}`, and `tConjMiddle_mem_K_of_orbitReprSet_covers` reduces the Proposition of §2 to the single statement that this list meets every `K`-orbit of `S#` — everything else (`h` at each representative, and the equivariance that spreads it over an orbit) is proved. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.FreeActionOrbitCount.exists_mem_orbit_of_card_mul_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitReprSet_subset_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.one_notMem_orbitReprSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K_of_mem_orbitReprSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K_of_orbitReprSet_covers /-! **Separating the representatives by `Q₀`-membership** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. The book separates `s`, `r`, `r⁻¹` and the `r r^{-k}` by the orders of `r` and of `f(r r^{-k})`. Testing membership in `Q₀` is shorter and needs only `r² ≠ 1`: elements of `Q₀` square to `1`, so `r ∉ Q₀`, and if `r r^{-k} = z ∈ Q₀` then `z` is a *central* involution of `Q` (`Q₀ ≤ Z(Q)`), whence `(r²)^k = (r^k)² = (zr)² = r²` and `C_Q(k) = 1` forces `r² = 1`. The same `C_Q(k) = 1` makes `k ↦ r r^{-k}` injective. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_notMem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mul_conj_inv_notMem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mul_conj_inv_injective /-! **`f` and `g` at `r r^{-k}` avoid `Q₀`** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. `g(r r^{-k}) = r r^{-ℓ⁻¹}` outright, and conjugating `f(r r^{-k})` by `k` gives `(r r^{-(kℓ)⁻¹})⁻¹` — with `kℓ ≠ 1` because `f ≠ 1`. Since `Q₀` is `K`-invariant and closed under inversion, both avoid `Q₀`. Against `f(rᵃ) = a s a⁻¹ ∈ Q₀` and `g((r⁻¹)ᵃ) = a s a⁻¹` this separates `r r^{-k}` from the `K`-orbits of `r` and of `r⁻¹` — the book instead compares orders (`4` versus `2`), which would need the exponent of a Suzuki `2`-group. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_Q0_of_mem_KSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjLeft_structureConjugator_mul_conj_inv_notMem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjRight_structureConjugator_mul_conj_inv_notMem_Q0 /-! **Pairwise non-conjugacy of the representatives, all but the last pair** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/TConjugateTriple.lean`, Peterfalvi Part II, Ch. III §2, p. 118. * `s` versus everything else: its `K`-conjugates stay in `Q₀`, and `r`, `r⁻¹`, `r r^{-k}` do not. * `r` versus `r⁻¹`: `|K|` is odd, so iterating a conjugation that inverts `r` an odd number of times gives `r = r⁻¹`. * `r` (resp. `r⁻¹`) versus `r r^{-k}`: apply `f` (resp. `g`) and compare with `Q₀`, using the equivariance (1) on one side and the computation (4) on the other. The one pair left is `r r^{-k₁}` versus `r r^{-k₂}`, which is the field computation of p. 119. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_distinguishedInvolution_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_not_conj_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_distinguishedInvolution_ne_structureConjugator_mul_conj_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_structureConjugator_ne_mul_conj_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_structureConjugator_inv_ne_mul_conj_inv /-! **The counting set-up for the `K`-orbits of `S#`** (issue 0165, 2026-07-29). `GroupTheory/FreeActionOrbitCount.lean` and `Appendices/Suzuki/StructureOfH/OrderFiveOrbits.lean`, Peterfalvi Part II, Ch. III §2, p. 118. `exists_mem_orbit_of_card_mul_succ_eq` is the counting criterion in the exact shape the book uses: `K` acts on `S` by conjugation fixing only `1`, freely elsewhere, and the list of representatives has `|ι| · |K| + 1 = |S|`. `orbitRepVal` names the book's list over the index type `Fin 3 ⊕ K#`, and `card_orbitReprIndex_mul_card_K_succ` is the identity `(q + 1)(q − 1) + 1 = q²` that case (b) supplies through `|Q| = |Q₀|²` and `|K| = |Q₀| − 1`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.FreeActionOrbitCount.exists_mem_orbit_of_card_mul_succ_eq #assert_only_allowed_axioms OddOrder.GroupTheory.FreeActionOrbitCount.exists_mem_orbit_of_card_mul_eq_index #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitRepVal_mem_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitRepVal_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitRepVal_mem_orbitReprSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_K_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_orbitReprIndex_mul_card_K_succ /-! **The representatives are pairwise non-conjugate** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/OrderFiveOrbits.lean`, Peterfalvi Part II, Ch. III §2, p. 118. `orbitRepVal_pairwise` collects the separations of the four families, granted the last pair (the `r r^{-k}` among themselves — the field computation of p. 119). What separates them is three `K`-orbit invariants: membership of `y`, of `g(y)` and of `f(y)` in `Q₀`, with values `(T, F, F)` at `s`, `(F, F, T)` at `r`, `(F, T, F)` at `r⁻¹` and `(F, F, F)` at `r r^{-k}`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_inv_notMem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_conj_distinguishedInvolution_of_notMem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_conj_of_notMem_Q0_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitRepVal_pairwise /-! **The Proposition of §2, reduced to the one computation of p. 119** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/OrderFiveOrbits.lean`, Peterfalvi Part II, Ch. III §2. > **Proposition.** If case (b) of the proposition of §1 holds, then `(SK) ∪ (SKtS)` is a > subgroup of `G`. Its content is `h(x) ∈ K` for every `x ∈ S#`, which `tConjMiddle_mem_K` now proves from `r² ≠ 1`, `|Q| = |Q₀|²` and the single remaining non-conjugacy `hpair`: that `a⁻¹ (r r^{-k₁}) a = r r^{-k₂}` forces `k₁ = k₂`. That is the field computation of p. 119, the only step of §2 still open. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitReprSet_covers #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K_of_orderOf_st_eq_five /-! **`(SK) ∪ (SKtS)` is a subgroup** (issue 0165, 2026-07-29). `Appendices/Suzuki/StructureOfH/OrderFiveSubgroup.lean`, Peterfalvi Part II, Ch. III §2, p. 118. The book says "it suffices to show that `tSt ⊆ SKtS`", i.e. `h(x) ∈ K` for `x ∈ S#`; this file turns that into the closure of `(SK) ∪ (SKtS)`. Four products and the inverse: `(SK)(SK) ⊆ SK`; `(SK)(SKtS) ⊆ SKtS`; `(SKtS)(SK) ⊆ SKtS` by `t k = k⁻¹ t`; and `(SKtS)(SKtS)`, whose middle is `t u k t` — equal to `k⁻¹` when `u = 1` (giving `SK`) and otherwise to `g(u) h(u) t f(u) k⁻¹`, which `t f k⁻¹ = k t (k f k⁻¹)` puts back in `S K t S` because `h(u) ∈ K`. Inverses: `(q k t q')⁻¹ = q'⁻¹ k t q⁻¹`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_Q_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_inv_mem_Q_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderFiveSubgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coe_orderFiveSubgroup /-! **A free action of the right size is the full scalar action** (issue 0165, 2026-07-29). `Appendices/SemilinearField.lean`, Peterfalvi Appendix I Proposition 2, in the form Part II Ch. I §2 Proposition 3 and Ch. III §2 p. 119 both use it. If a finite abelian `T` acts on an elementary abelian `E` freely off the identity and `|T| = |E| − 1`, the action is transitive on `E ∖ {1}` — the `T`-orbit of one non-identity element already has `|T| = |E| − 1` members — hence irreducible. Appendix I Proposition 2 then makes `E` a line over a field `F` with `|F| = |E|` on which `T` acts by scalars, and `μ : T → Fˣ` is a bijection because both sides have `|E| − 1` elements. This is the common core of the identification of `Q₀` with `𝐅_q` (`exists_field_realization_K`) and of the identification of `S/Q₀` with `𝐅_q` that p. 119 needs. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_scalar_realization #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_coordinate_realization /-! **Coordinates on `S/Q₀`** (issue 0165, 2026-07-29). `StructureOfH/QuotientFieldCoordinate.lean`, Peterfalvi Part II Ch. III §2, p. 119: > We identify `S/Q₀` with `𝐅_q` and `K` with `𝐅_q^×` in such a way that the action of `K` > on `S/Q₀` is multiplication, and we write `α` for the corresponding map `S → 𝐅_q`. In case (b) `|S| = q²` and `Z(S) = Q₀` has order `q`, so the central quotient has `q` elements while `|K| = q − 1`; `K` acts freely on it (`kfree_mod_Q0_of_center_eq`), so `exists_field_coordinate_realization` applies and yields the book's `α` as a map `β : G → F` that is additive on `Q`, vanishes exactly on `Q₀`, and satisfies `β (a⁻¹ y a) = γ a · β y`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_quotient_field_coordinate /-! **The obstruction behind p. 119's `x ≠ 1`** (issue 0165, 2026-07-29). `StructureOfH/OrderFivePairing.lean`, Peterfalvi Part II Ch. III §2, p. 119. For `w ∈ Q ∖ Q₀` with `h(w) ∈ K`, writing `t w t = g h t f` one has `f g ∉ Q₀`. Since `t` inverts `K`, `t w² t = (t w t)² = g · t (fg)^h t · f`; if `fg` were in `Q₀` then so would be `z = (fg)^h`, and comparing canonical decompositions of `t w² t` forces `h(w²) = h(z)`. All involutions of `H` are `K`-conjugate (§1 Prop 3), say `z = (w²)^c`, so `h(z) = c h(w²) c` with `h(w²) ∈ K`; `K` abelian of odd order gives `c = 1`, i.e. `z = w²`, and then the left factors give `g = 1` — contradicting `g ≠ 1`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sq_mem_Q0_of_mem_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mul_comm_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_sq_eq_one_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjRight_mul_tConjLeft_notMem_Q0 /-! **🎯 The Proposition of Peterfalvi Part II, Ch. III §2** (issue 0165, 2026-07-29). `StructureOfH/OrderFivePairing.lean`, pp. 118–119: > If case (b) of the proposition of §1 holds, then `(SK) ∪ (SKtS)` is a subgroup of `G`. The last non-conjugacy of the book's system of representatives is the field computation of p. 119. Identifying `S/Q₀` with `𝐅_q` and `K` with `𝐅_q^×` and writing `α` for the coordinate (`exists_quotient_field_coordinate`), a conjugacy `(r r^{-k₁})^a = r r^{-k₂}` gives * (5) `1 + k₂ = a(1 + k₁)` — apply `α`; * (6) `ℓ₂k₂ = aℓ₁k₁` — apply the identification to `h(x^a) = a h(x) a` with `h = ℓ²k²`, then take square roots (injective in characteristic `2`); * (7) `ℓ₂⁻¹k₂⁻² + k₂⁻¹ = a⁻¹(ℓ₁⁻¹k₁⁻² + k₁⁻¹)` — apply `α` to `f(x^a) = a f(x) a⁻¹`. With `xᵢ = ℓᵢ⁻¹(kᵢ⁻¹+1)` and `yᵢ = kᵢ⁻¹+ℓᵢ`, (5)/(6) gives `x₁ = x₂`, (6)·(7) gives `y₁ = y₂`, and `(x+1)k⁻¹ = xy+1` (characteristic `2`) reads `(x+1)k₁⁻¹ = (x+1)k₂⁻¹`, so `k₁ = k₂` unless `x = 1`. And `x = 1` would give `α(fg) = 0`, i.e. `f g ∈ Q₀`, which `tConjRight_mul_tConjLeft_notMem_Q0` forbids. `caseBSubgroup` is the resulting subgroup; `tConjMiddle_mem_K_of_case_b` is the Proposition's actual content (`h(x) ∈ K` for all `x ∈ S#`, i.e. `t S t ⊆ S K t S`), now with no residual hypothesis beyond case (b) and the standing structure of the type A Suzuki `2`-group `S`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_of_charTwo_pairing #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_of_sq_eq_sq_of_charTwo #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.charTwo_pairing_degenerate #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coord_tConjTriple_values #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.structureConjugator_mul_conj_inv_pairwise #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K_of_case_b #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.caseBSubgroup /-! **Case (b) in its own terms** (issue 0165, 2026-07-29). `Suzuki2Groups/ModelCenters.lean` (type A) and `StructureOfH/CaseBStructure.lean`, Peterfalvi Part II Ch. III §2, pp. 118–119. The Proposition of §2 needs, besides case (b)'s `orderOf (st) = 5` and `|S| = q²`, the standing structure of the type A Suzuki `2`-group `S`: `Z(S) = Q₀`, `S/Q₀` elementary abelian, and `K` free on `S/Q₀`. All three come from the type-A model `q(a) = a·φ(a)`, whose polar form `B(w,v) = wφ(v) + vφ(w)` has trivial radical because `φ ≠ 1` (`typeAQuadraticMap_radical_eq_zero`): the center then has exponent `2`, and the quotient coordinate — additive into a `ZMod 2`-space with central kernel — makes `S/Z(S)` elementary abelian. Freeness of `K` follows from `Z(S) = Q₀` by `kfree_mod_Q0_of_center_eq`. `typeASubgroup` is the Proposition: in case (b), `(SK) ∪ (SKtS)` is a subgroup of `G`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.typeAQuadraticMap_radical_eq_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.TypeAData.sq_eq_one_of_mem_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.TypeAData.isElementaryAbelian_quotient_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.center_eq_Q0_subgroupOf_of_isTypeA #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isElementaryAbelian_quotient_center_of_isTypeA #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.tConjMiddle_mem_K_of_isTypeA #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.typeASubgroup /-! **Cases (a) and (b) give the conclusion of Theorem A** (issue 0166, 2026-07-29). `StructureOfH/CaseABConclusion.lean`, Peterfalvi Part II Ch. III §3, p. 119: > Assume that case (a) or (b) of the proposition in §1 holds. Then `G₀ = (SK) ∪ (SKtS)` is a > subgroup of `G` (§2 and Chapter I, §3, Lemma 4). Also, `G = H ∪ (HtS) = ⟨G₀, V⟩` and `V` > normalizes `S`, `K` and `t` whence `G₀ ⊴ G` and `|G/G₀| = |V|`. The conclusion of Theorem A > now follows from Chapter I, §3, Proposition 2. Both cases enter through the same carrier `(SK) ∪ (SKtS)` — case (b) by §2 (`typeASubgroup`) and case (a), where `S = Q₀`, by Ch. I §3 Lemma 4 (`orderThreeGeneratedSubgroup`) — so the argument is done once for an arbitrary subgroup with that carrier. `H = Q·D` and `D = V ⊔ K` put `H` inside `⟨G₀, V⟩`, and `exists_canonicalForm` (`G = H ∪ HtQ`) finishes `⟨G₀, V⟩ = G`; `V` normalizes the carrier because it normalizes `Q` and `K` and centralizes `t`. The intersection `G₀ ∩ V` is trivial (`Q ∩ D = 1`, `K ∩ V = 1`, and the big cell misses `H` because `t ∉ H`), so `V ≠ 1` makes `G₀` proper: `G` is not simple, and Ch. I §3 Proposition 2 applies. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_orderFiveCarrier_of_mem_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orderFiveCarrier_sup_V_eq_top #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normal_of_orderFiveCarrier #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_mem_V_of_mem_orderFiveCarrier #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.theoremAConclusion_of_orderFiveCarrier_subgroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.theoremAConclusion_of_caseB #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coe_orderThreeGeneratedSubgroup_eq_orderFiveCarrier #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.theoremAConclusion_of_caseA #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.theoremAConclusion_or_caseC2 /-! **Divisibility among the numbers `aⁿ − 1`** (issue 0167, 2026-07-29). `Algebra/PowSubOneDvd.lean`. `a ^ m - 1 ∣ a ^ n - 1 ↔ m ∣ n` for `2 ≤ a`, `m ≠ 0` (mathlib has the easy direction; the converse is `a ^ n - 1 ≡ a ^ (n % m) - 1` modulo `a ^ m - 1`, with the remainder term too small to be a non-zero multiple). The consequence is the counting step of Peterfalvi Part II Ch. III §3, p. 120: a subgroup of `S/Q₀` (a `2`-group of order `q² = 2^(2n)`) invariant under the fixed-point-free action of `K` (of order `q − 1`) has order `2ʲ` with `q − 1 ∣ 2ʲ − 1` and `j ≤ 2n`, hence `1`, `q` or `q²` — so the proper non-trivial `K`-invariant subgroups are exactly the "`K`-subgroups" of order `q` on which `W` acts fixed-point-freely. -/ #assert_only_allowed_axioms OddOrder.Nat.pow_sub_one_dvd_pow_sub_one_iff #assert_only_allowed_axioms OddOrder.Nat.eq_zero_or_eq_or_eq_two_mul_of_two_pow_sub_one_dvd /-! **The field `E = 𝐅_{q²}` on `S/Q₀`** (issue 0167, 2026-07-30). `Peterfalvi/Appendices/Suzuki/QuotientKWField.lean` — the first step of the Ch. III §3 Proposition (p. 120). `KW` acts *irreducibly* on `S/Q₀`: a `KW`-invariant subgroup is `K`-invariant, hence of order a power of `q` (`card_invariant_eq_pow_of_fixedPointFree`, now stated for an arbitrary actor homomorphism so that the induced action on `Q ⧸ Z(Q)` qualifies), hence of order `1`, `q` or `q²` because `|S/Q₀| = q²`; the middle case is killed by the moved-summand engine, which forbids a nonidentity element of `W` from stabilizing an invariant subgroup of order `|Z(Q)|`. Appendix I Proposition 2 then makes `S/Q₀` a line over a field of order `q²` on which the whole of `KW` acts by scalars — the book's `S/Q₀ ≅ E`, `KW ↪ E^×` — with no case split on `θ`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_addEquiv_of_finrank_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Huppert.exists_field_coordinate_of_irreducible #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commute_quotientKHom_quotientWHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_quotient_center_eq_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isAInvariant_quotientKW_eq_bot_or_top #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_Q0_field_coordinate #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_quotientFieldModel_of_orderThree #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.QuotientFieldModel.bar_mu_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.QuotientFieldModel.bar_mu_W /-! **`Z(Q)` is elementary abelian with a regular `K`-action** (issue 0167, 2026-07-30). `Appendices/Suzuki/CenterFieldExponent.lean` — the `Q₀` half of the standing identification of Ch. III §3, p. 120, inside the field `E` of step (1). `LemmaFiveSetup` gives transitivity of `K` on the nonidentity central elements together with `|K| = |Z(Q)| − 1`; a surjection between finite sets of equal size is injective, so the orbit maps are injective and the action is free. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isElementaryAbelian_center_of_lemmaFiveSetup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centerKHom_apply_val #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.actualKActor_free_on_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_center_coordinate_exponent #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralSquare_quotientKHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_quadraticMap_of_lemmaFiveSetup #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_algAut_pair_scaling_of_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_autMulQuadratic_eq_zero_of_symm #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_scaling_pinned_expansion #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_bilinear_lift_of_pinned_restriction #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_scalingPair_of_lemmaFiveSetup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centralSquare_quotientWHom #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_comp #assert_only_allowed_axioms OddOrder.FiniteField.exists_qFrobenius_normalized_index #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sigma_inverting_W1 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_center_coordinate_equiv /-! **Frobenius exponent pairs** (issue 0167, 2026-07-30). `Algebra/FrobeniusExponentPairs.lean` + `Higman/…/TwoPowerCongruence.lean` — the exponent bookkeeping for Ch. III §3, p. 121: a pair of automorphisms of `𝐅_{2^n}` is determined, up to order, by the product map `a ↦ σ(a) τ(a)`, because two powers of two can only collide with two powers of two modulo `2^n − 1`. -/ #assert_only_allowed_axioms OddOrder.Higman.Suzuki2Groups.two_pow_pair_sum_eq #assert_only_allowed_axioms OddOrder.FiniteField.two_pow_pair_congruence_of_pow_eq #assert_only_allowed_axioms OddOrder.FiniteField.frobIndex_pair_eq_of_pow_mul_eq #assert_only_allowed_axioms OddOrder.FiniteField.pow_two_pow_mod_of_mem_frobFixed #assert_only_allowed_axioms OddOrder.FiniteField.restrict_pair_eq_of_mul_eq_on_frobFixed #assert_only_allowed_axioms OddOrder.FiniteField.map_mem_frobFixedSubfield #assert_only_allowed_axioms OddOrder.FiniteField.frobFixedRestrict_apply /-! **The relative trace of `𝐅_{q²}/𝐅_q` and the `F`-valued correction** (issue 0167, 2026-07-30). `Algebra/QuadraticTraceCorrection.lean` — a bilinear form on `E` whose diagonal lies in the subfield `F` can be corrected, without changing that diagonal, into one taking all its values in `F` (`ψ = φ + u·(Tr ∘ φ)` with `Tr u = 1`). This replaces the book's route to the `F`-valuedness of the cocycle of Ch. III §3, p. 121, which reads it off a bar-symmetry of the expansion coefficients. -/ #assert_only_allowed_axioms OddOrder.FiniteField.frobTrace_apply #assert_only_allowed_axioms OddOrder.FiniteField.frobTrace_eq_zero_iff #assert_only_allowed_axioms OddOrder.FiniteField.frobTrace_mul_of_mem #assert_only_allowed_axioms OddOrder.FiniteField.frobTrace_mem #assert_only_allowed_axioms OddOrder.FiniteField.exists_frobTrace_eq_one #assert_only_allowed_axioms OddOrder.FiniteField.exists_bilinear_frobFixed_of_diag #assert_only_allowed_axioms OddOrder.FiniteField.bilinCodRestrict_apply /-! **Step (3) of the Ch. III §3 Proposition: `S ≅ S₁`** (issue 0167, 2026-07-30). `Appendices/Suzuki/ModelIsomorphism.lean` — the book's `S₁` is the twisted product `E ×_φ F` of p. 120, and the identification is Appendix III Lemma 1(c) applied to the central extension `Z(Q) → Q → Q ⧸ Z(Q)` read in the coordinates of steps (1) and (2). `BilinearTwistedProduct.sq_eq_inl_diag` isolates the fact that makes the book's explicit cocycle `φ` interchangeable with a basis lift: the square map of a twisted product depends on the cocycle only through its diagonal. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.BilinearTwistedProduct.sq_eq_inl_diag #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.W_card_odd #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.actualKActor_card_odd #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_actualKActor_prod_W_odd #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.quotientWHom_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mu_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conjQHom_apply #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.quotientKWHom_mk #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_actualKActor_mu_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_apply #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_scaling_of_mem_frobFixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMapE_apply #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_bilinear_lift_semilinear #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_trans #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_bilinear_lift_normalized #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mulEquiv_bookCocycle #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_W_invariant #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.modelScalarAut_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.modelScalarAut_central #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_smul_KW #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.modelScalarHom_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.modelScalarHom_central #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.congr_conjQHom_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.congr_conjQHom_central #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.congr_conjQHom_mul_inv_mem_inducingIdAuts #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_mem_inducingIdAuts_of_quotient_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.modelScalarHom_injective_of_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inducingIdAuts_inf_range_eq_bot #assert_only_allowed_axioms Subgroup.sup_range_eq_of_mul_inv_mem #assert_only_allowed_axioms Subgroup.mul_eq_sup_of_le_normalizer #assert_only_allowed_axioms Subgroup.exists_conj_range_eq_of_mul_inv_mem /-! **The mappings `f`, `g`, `h` of a rank-one split BN-pair** (issue 0168, 2026-07-31). `GroupTheory/RankOneBNPair.lean` — Peterfalvi Part II, Ch. IV §1, p. 122: `t x t = g(x) h(x) t f(x)` determines `f, g, h` uniquely, from the unique factorizations `M = Q ⋊ D` and `L − M = M t Q`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.Setup.exists_fgh #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.IsFGH.unique #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.IsFGH.f_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.IsFGH.g_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.fgh_eq_of_canonical #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.canonical_inv #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.canonical_f #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.canonical_conj #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.hOne #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.hTwo #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.hThree #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.g_involutive #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.hFive #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.expand_mul #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.f_mul_g_ne_one #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.canonical_mul #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.hSix #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.existsUnique_Q_mul_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.rankOneSetup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_fgh #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fgh_at_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fgh_at_conj_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_mul_conj_distinguishedInvolution #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_conj_distinguishedInvolution_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_KSet_conj_eq_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_mem_Q0_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.g_mem_Q0_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_Q0_of_f_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_Q0_of_g_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mul_mem_sdiff_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_mem_sdiff_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.g_mem_sdiff_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_f_mul_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inv_ne_conj_of_not_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_ne_conj_of_not_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ne_one_of_f_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_mem_KSet_of_f_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commute_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mul_sq_mem_KSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_mem_KSet_of_f_mul_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_mem_mul_KSet_of_f_mul_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_K_eq_ncard_KSet #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_D_eq_card_V_mul_card_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.index_K_subgroupOf_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.commute_of_mem_W_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_conj_collapse #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.odd_card_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sq_eq_of_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_of_inv_mul_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_le_card_V_of_f_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.not_mem_K_of_f_eq_conj_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_witness_not_mem_K #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_le_card_V_sub_one_of_f_eq_conj_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.K_inf_W_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conj_mul_Q0_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_K_mem_W_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepTen #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepTen_exists #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepTen_base #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepEleven_step #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_mul_eq_one_of_mem_K_of_mem_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.coprime_two_pow_sub_one_two_pow_add_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_one_of_pow_two_pow_sub_one_of_pow_two_pow_add_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.two_pow_sq_sub_one_div #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.add_inv_eq_add_inv_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_rootsOfUnity_ge #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.image_eq_of_card_fiber_le_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_add_inv_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.alpha_mul_betaSum #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_rec #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.add_betaSum_div #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_eq_zero_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaRatio_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaRatio_succ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.add_inv_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_mul_betaSum_add_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaRatio_div_betaRatio #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_inv_frobNorm_eq_of_ne #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_add_of_add_char_two #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_pow_mul_prod_of_rec #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.prod_betaRatio #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaSum_fixed_of_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNormEquiv_symm_sq_of_fixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNormEquiv_symm_spec #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNormEquiv_symm_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNormEquiv_symm_ne_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNormEquiv_symm_div #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.betaScale_succ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.pow_eq_one_of_betaSum_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_one_of_frobNormEquiv_symm_sq_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.eq_of_pow_succ_eq_one_of_le #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.toCenter_coe #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.toCenter_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.toCenter_eq_one_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centerCoord_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centerCoord_eq_zero_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centerCoord_injective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_iff_centerCoord_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.toCenter_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centerCoord_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepTen_coord #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNorm_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNorm_ne_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.apply_eq_self_of_odd_orderOf #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.frobNorm_bijective #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.existsUnique_frobNorm_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.existsUnique_frobNorm_eq_of_ne_zero #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.card_fiber_eq_of_card_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mu_K_pow_two_pow_sub_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_actualKActor_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.index_range_mu #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coord_ne_zero_of_not_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coord_eq_zero_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_mul_mem_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.f_mul_not_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.fUnit_val #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.orbitOfF #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_D_conjQHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_Q0_mul_of_quotient_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conjQHom_quotient_eq_of_coset_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conj_of_coset_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_fiber_orbitOfF_le #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.baseUnit_val #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_fiber_orbitOfF_base_le #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepEight #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_eq_card_W_sub_one_of_f_eq_conj_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_witness_coset_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepNine #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepFifteen_length #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.kActor_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_kPart_eq_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mu_K_eq_mu_W_imp_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.Setup.conj_mem_Q #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.Setup.closure_M_union_t #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.Setup.closure_conj_Q #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.dOrbitRel.inv #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.IsFGH.dOrbitRel_f #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.IsFGH.dOrbitRel_fj_cube #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_bijective #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_smul_t_none #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_smul_t_one #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_smul_t_some #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_smul_none_of_mem_M #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.coords_smul_some_of_mem_M #assert_only_allowed_axioms Subgroup.mem_normalizer_of_conj_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.range_le_normalizer_inducingIdAuts #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conj_conjQHom_range_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_center_coordinate_normalized #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_standardModel #assert_only_allowed_axioms GroupExtension.inducingIdAuts_conj_mem #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inducingIdAuts_conj_mem_of_scalar #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isElementaryAbelian_inducingIdAuts_model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isSolvable_inducingIdAuts_model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.card_inducingIdAuts_model #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.BilinearTwistedProduct.congrEquiv_quotient #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.BilinearTwistedProduct.congrEquiv_central #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.toMul_symm_centreQuadraticMap #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.centreQuadraticMap_anisotropic #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mulEquiv_bilinearTwistedProduct #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mulEquiv_quadraticExtension /-! **The `q`-power Frobenius of a field of order `q²`** (issues 0167 / 9504, 2026-07-30). `Algebra/QuadraticFrobenius.lean` — the ambient field theory of Ch. III §3, p. 120, where `E = 𝐅_{q²}` carries the bar operation `x ↦ x̄ = x^q` and `F = 𝐅_q` is its fixed field. `σ₀ : x ↦ x^q` is an involution (its square is the `q²`-power map = identity) and is not the identity (else every unit would satisfy `x^{q-1} = 1`, forcing the exponent `q² − 1` of the cyclic group `E^×` to divide `q − 1`). Artin's lemma (`RingAut.finrank_fixedSet`) applied to `⟨σ₀⟩`, of order `2`, gives `[E : F] = 2`, hence `|F| = q`. Finally `σ₀` inverts the norm-one subgroup `{x : x^{1+q} = 1}` — which is exactly the book's `σ` in the case `θ = 1`. -/ #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_sq #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_ne_one #assert_only_allowed_axioms OddOrder.FiniteField.orderOf_qFrobenius #assert_only_allowed_axioms OddOrder.FiniteField.fixedSet_qFrobenius #assert_only_allowed_axioms OddOrder.FiniteField.mem_frobFixedSubfield #assert_only_allowed_axioms OddOrder.FiniteField.natCard_fixedSet_qFrobenius #assert_only_allowed_axioms OddOrder.FiniteField.natCard_frobFixedSubfield #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_eq_inv_of_pow_succ_eq_one #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_mul_self_eq_one #assert_only_allowed_axioms OddOrder.FiniteField.charP_two_of_two_eq_zero /-! **`Aut` of a finite field is generated by the Frobenius, and `Aut(F)` lifts to `Aut(E)`** (issues 0167 / 9504, 2026-07-30). `Algebra/QuadraticFrobenius.lean`. `x ↦ x^{p^j}` is the identity on a field of order `pⁿ` exactly when `n ∣ j`: the forward direction forces the exponent `pⁿ − 1` of the cyclic group `K^×` to divide `p^j − 1`, and `OddOrder.Nat.pow_sub_one_dvd_pow_sub_one_iff` turns that into `n ∣ j`. So the Frobenius has order `n = |Aut K|` and therefore generates, i.e. **every automorphism of a finite field is a power of the Frobenius**. Consequence used by Ch. III §3 step (2): a given `θ ∈ Aut(F)` is `x ↦ x^{p^j}`, and the same formula on `E` is an automorphism of `E` restricting to `θ` — the extension the book uses without comment. -/ #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_pow #assert_only_allowed_axioms OddOrder.FiniteField.qFrobenius_eq_one_iff #assert_only_allowed_axioms OddOrder.FiniteField.orderOf_frobenius #assert_only_allowed_axioms OddOrder.FiniteField.exists_pow_eq_of_ringAut #assert_only_allowed_axioms OddOrder.FiniteField.exists_ringAut_extending_frobFixedSubfield #assert_only_allowed_axioms OddOrder.FiniteField.eq_one_or_eq_qFrobenius_of_fixes #assert_only_allowed_axioms OddOrder.FiniteField.eq_or_eq_mul_qFrobenius_of_eq_on_frobFixed /-! **Ch. IV §4, the linear equation (4)** (issue 0168, 2026-08-02). `Peterfalvi/Appendices/Suzuki/PSU3SectionFourCoordinate.lean` — Peterfalvi Part II, p. 133. Step (3) of §4 gives `h(ω) = ζ³η` with `η ∈ P`, so the chain of §3's stage (1) (`stepOne_chain_of_h_eq_mul`) runs with that conjugator. Since `η` commutes with `ζ` (the book takes `ζ ∈ C_W(P)`), the two `ζ`-conjugations flanking the `η`-conjugation on the right collapse into a single `ζ²`, and reading the chain in `Q ⧸ Z(Q) ≅ E` gives the book's **(4)** `a² f(ω s^a)‾ = ζ⁻¹ f(ω s^a)‾^η + ω̄`, with `f(ω s^a)‾^η` the coordinate of the conjugate `η · f(ω s^a) · η⁻¹`. No hypothesis `V = W` enters — §4 is the case `V ≠ W` — and no semilinearity is needed yet: the field automorphism `μ` of the book is what turns that conjugate into a scalar expression, from (5) onwards. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_conj_eta_of_commute #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_four_linear /-! **Ch. IV §4: `η` acts semilinearly on `E`** (issue 0168, 2026-08-02). `Peterfalvi/Appendices/Suzuki/PSU3SectionFourSemilinear.lean` — Peterfalvi Part II, p. 133: "by Proposition 2 of Appendix I, `η` acts as a semilinear mapping on `Q/Q₀ ≅ E`. Let `μ` denote the automorphism of the field `E` associated with `η`." Conjugation by `d ∈ D` induces an *additive* automorphism `coordConjD` of `E`, and — `D` normalizing both `K` and `W` — it intertwines the scalar action of `K W` with that of the conjugated pair (`coordConjD_mu_smul`). That much is pure group theory. The book's field automorphism `μ` is then obtained without invoking Appendix I, Proposition 2 at all: the scalars for which the intertwining relation is known are `μ(K) = F^×` and `μ(1, ζ)`, and the latter is assumed to lie outside `F` — which for `ζ ≠ 1` is the existing `mu_W_notMem_frobFixed` of Ch. IV §3 — so the two span `E` over `F` (`exists_frobFixed_repr`). `addEquiv_mul_mul_eq_of_span` then extends multiplicativity-up-to-`Ψ 1` from those scalars to all of `E`, and `scaledRingEquiv` divides by the constant to leave a genuine `E ≃+* E`. This avoids identifying the abstract endomorphism field of Appendix I with the model's `E`. -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.addEquiv_mul_mul_eq_of_span #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.addEquiv_mul_eq_scaledRingEquiv_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.addEquiv_eq_scaledRingEquiv_mul_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_mem_W_of_mem_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_coord_val #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_mu_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_fixed_of_conj_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_frobFixed_repr #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_mul_mul_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_mul_eq_coordFieldAut_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_eq_coordFieldAut_mul /-! **Ch. IV §4: `μ` on the scalars, and the equations (5), (6)** (issue 0168, 2026-08-02). `Peterfalvi/Appendices/Suzuki/PSU3SectionFour{Semilinear,Equations}.lean` — Peterfalvi Part II, p. 133. The book describes `μ` twice: as the field automorphism of `E` associated with `η`, and as the action of `η` on `K W` under `K W ≅ K₁ W₁`. `coordFieldAut_muK` / `coordFieldAut_muW` are the second description — on a scalar, `μ` is conjugation of the pair — and `coordFieldAut_muW_eq_self` is the book's `ζ^μ = ζ`, which holds because it takes `ζ ∈ C_W(P)` and `η ∈ P`. (6) is (4) read at `b` in place of `a`. (5) is (4) at `a` with `f(ω s^a)‾` replaced by the right-hand side of (3); that substitution is the first use of the semilinearity, and it is exactly `ζ^μ = ζ` that makes the two `ζ`'s cancel and leaves the book's `a^{-2μ}`. (3) itself ("by (2) of §2") turned out to be the *existing* `stepTen_quotient_coord`, which was already stated for an arbitrary `ω`, `ζ`, `y` with `f(ω) = (ω y)^ζ`. The only §4-specific step is the exponent-`4` bridge: §4 has `f(ω) = (ω⁻¹)^ζ`, and with `y = ω²` the two forms agree because `ω⁴ = 1` — `y ∈ Q₀` and `Q₀` has exponent `2`. That is step (1)'s "`C_Q(P)` has exponent 4" read on `ω`. (7), (8), (9) are then the abstract-field arithmetic of `PSU3SectionFourArithmetic` applied to (5) and (6). Only two group-theoretic side conditions remain: the book's `a^{2μ} + b² ≠ 0`, which comes from `a^{2μ} ≠ ζ` (`coordFieldAut_muK_ne_mu_W_inv`: `μ` carries `K`-scalars to `K`-scalars, which lie in `F`, while `μ(1, ζ)` does not) via `sectionFour_eq_of_add_eq_zero`; and `ω̄^η = ω̄`, which is what lets (9) compare the `μ`-image of (7) with (8). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_eq_of_smul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_muK #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_muW #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_muW_eq_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_four_coordConjD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_six_linear #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_five_linear #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_three_coord #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_five_of_three #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_muK_ne_mu_W_inv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_seven_eight_nine /-! **Ch. IV §4: `λ = 1` and the trace relation** (issue 0168, 2026-08-02). `Peterfalvi/Appendices/Suzuki/PSU3SectionFourEndgame.lean` — Peterfalvi Part II, p. 134. (9) rearranges to `λ (b² + ζ) = ζ⁻¹ + a^{-2μ²}` with `λ = (1 + b^{2μ} a^{-2μ²})/(1 + b² a^{-2μ})`, hence to `λ ζ² + (λ b² + a^{-2μ²}) ζ + 1 = 0` in characteristic `2`. All of `λ`, `b²`, `a^{-2μ²}` and `ζ + ζ⁻¹` lie in `F` while `ζ` does not, so both coefficients of the resulting linear relation vanish separately (`sectionFour_lambda_eq_one`): **`λ = 1`** and **`b² + a^{-2μ²} = ζ + ζ⁻¹`**. `λ ∈ F` needs `μ(F) ⊆ F` (`coordFieldAut_mapsTo_frobFixed`), which holds because the nonzero elements of `F` are exactly the `K`-scalars and `μ` carries `K`-scalars to `K`-scalars. The coefficient `ζ + ζ⁻¹ ∈ F` is the existing `mu_W_add_inv_mem_frobFixed` (the trace of a norm-one element). (10) is then the substitution of the trace relation into the `μ`-invariance (`sectionFour_ten`). And the book's closing "Thus `η ∈ W`" — stated without argument — is the *definition* of `W`: `W = C_V(K)` (`HypothesisA1.W`, p. 98), and `μ = 1` says `μ(κ^η) = μ(κ)` for every `κ ∈ K` (`coordFieldAut_muK`), whence `κ^η = κ` because `μ` on `K` and the conjugation action of `K` on `Q` are both faithful (`mem_W_of_coordFieldAut_eq_id`). No Galois correspondence on `Q₀` is needed. The odd order of `μ` comes from that of `η`: `coordConjD` is multiplicative in `d` (`coordConjD_iterate`), and `Ψ^[n] = id` forces `σ^[n] = id` because `Ψ^[n] x = σ^[n] x · Ψ^[n] 1` (`addEquiv_iterate_eq_scaledRingEquiv_iterate_mul`). With that, an automorphism fixing `F` pointwise is `1` or the `q`-Frobenius, and the latter has order `2` (`coordFieldAut_eq_id_of_fixes_frobFixed`). -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_mapsTo_frobFixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_lambda #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.sectionFour_ten #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_W_of_coordFieldAut_eq_id #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.addEquiv_iterate_eq_scaledRingEquiv_iterate_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.scaledRingEquiv_iterate_eq_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordConjD_iterate #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_iterate_eq_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_eq_id_on_frobFixed_of_sq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_eq_id_of_fixes_frobFixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_ten_at #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_K_coordFieldAut_sq_inv_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_sq_eq_id_of_ten #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_ten_of_mem_frobFixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.coordFieldAut_sq_eq_id_on_frobFixed #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.eight_lt_natCard_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_D_of_mem_H_of_commute_t #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.center_le_subgroupOf_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_residualImage_of_orderOf_eq_two_pow #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.center_residualImage_le_subgroupOf_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_psu3Data_sectionFour #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_t_eq_of_mem_center #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.pow_odd_eq_one_of_mem_P #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.exists_mem_P_mem_W_mul #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.residualImage_le_centralizer #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.exists_refined_zeta #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_residualImage_of_mem_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.center_residualImage_le_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.mem_W_of_stepThree #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.center_residualImage_le_P #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.mem_W_intrinsicResidualQuotient_of_mem_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.eq_one_of_conj_t_mem_P #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.mem_center_of_mem_P #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.notMem_P_of_mk_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inf_le_centralizer_centralizer_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.exists_zeta_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.exists_mem_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.exists_stepThree_data #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.conj_inv_eq_of_commute #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.cube_mul_eq_of_commute #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.sectionFour_mem_W #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardModel_canonical #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardModel_fgh_rootHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.standardModel_f_rootHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.exists_standardModel_fgh #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.unitaryRootEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki2Groups.unitaryRootEquiv_reciprocal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conj_KW_of_coset_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_le_card_W_of_f_eq_conj #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.ncard_le_card_W_sub_one_of_f_eq_conj_self #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.stepEight_of_KW #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mem_Q0_orbitOfF_eq_of_KW #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.h_inv_eq #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.h_eq_zpow_three #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.proposition_inverseFormula #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.proposition_reciprocal #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.pointEquiv_permHom #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_conjQMulEquiv_actionEquiv #assert_only_allowed_axioms OddOrder.GroupTheory.RankOneBNPair.permHom_conjQMulEquivOfData #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.inverseFormula_of_mem_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.proposition_inverseFormula_of_ne_one #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mulEquiv_intertwining_f #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_mulEquiv_standardPermGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_psu3InductionTarget #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_theoremAConclusion_psu3 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.proposition_of_standardModel #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.proposition_of_isStandardModel #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_theoremAConclusion_of_isStandardModel #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.nonempty_theoremAConclusion #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_theoremAConclusion_of_isStandardModel_of_closing #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isFrobeniusAction_D_of_freeD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.isZGroup_D_of_freeD #assert_only_allowed_axioms OddOrder.GroupTheory.mem_of_pow_card_eq_one_of_isZGroup #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.normal_W_subgroupOf_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.h_mem_W_of_frobeniusD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.h_inv_mul_mem_KW_of_stepTwenty #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_prime_order_le_classStabilizer_of_not_freeD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.exists_sectionFourSetup_of_not_freeD #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.nonempty_theoremAConclusion_of_caseC #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.two_lt_card_Q0_of_isSuzuki2Group #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.SecondCaseHypothesis.nonempty_theoremAConclusion #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.SectionFourSetup.two_lt_natCard_inf_centralizer_Q0 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.twoRank_centralizer_le_one_of_not_exists #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.eq_one_of_three_fixedPoints_of_V_eq_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.natCard_normal_ne_natCard_Omega #assert_only_allowed_axioms OddOrder.GroupTheory.LinearMap.transvectionSubgroup_isMulCommutative #assert_only_allowed_axioms OddOrder.GroupTheory.LinearMap.transvectionSubgroup_map_conj #assert_only_allowed_axioms OddOrder.GroupTheory.exists_linearEquiv_apply_eq_of_linearIndependent #assert_only_allowed_axioms OddOrder.GroupTheory.linearIndependent_pair_of_ne_of_ne_zero #assert_only_allowed_axioms OddOrder.GroupTheory.isPreprimitive_nonzeroVector #assert_only_allowed_axioms OddOrder.GroupTheory.mulAutEquivLinearEquiv #assert_only_allowed_axioms OddOrder.GroupTheory.LinearMap.toMatrix_transvection #assert_only_allowed_axioms OddOrder.GroupTheory.LinearMap.iSup_transvectionSubgroup_eq_top #assert_only_allowed_axioms OddOrder.GroupTheory.LinearMap.commutator_transvection #assert_only_allowed_axioms OddOrder.GroupTheory.exists_dual_eq_zero_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.exists_mem_ker_ne_zero_ne #assert_only_allowed_axioms OddOrder.GroupTheory.commutator_linearEquiv_eq_top #assert_only_allowed_axioms OddOrder.GroupTheory.isSimpleGroup_linearEquiv #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.isSimpleGroup_mulAut_of_elementaryAbelian_two #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.exists_isSimpleGroup_mulAut_not_card_three_not_elementaryAbelian #assert_only_allowed_axioms OddOrder.GroupTheory.card_mulAut_eq_two_of_isSimpleGroup #assert_only_allowed_axioms OddOrder.GroupTheory.totient_exponent_le_card_mulAut #assert_only_allowed_axioms OddOrder.GroupTheory.exponent_mem_of_isSimpleGroup_mulAut #assert_only_allowed_axioms OddOrder.GroupTheory.exists_prime_hom_of_ne_top #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_of_card_mulAut_eq_two #assert_only_allowed_axioms OddOrder.GroupTheory.isCyclic_and_card_of_isSimpleGroup_mulAut #assert_only_allowed_axioms OddOrder.GroupTheory.not_isSimpleGroup_of_card_eq_six #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.card_linearEquiv_eq_six #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.isSimpleGroup_mulAut_iff /-! ### Isaacs Cor 8.28 — `Sym Ω` の正規部分群 (issue 0176 ステップ 1、2026-08-08) Isaacs Ch.8 の cite ゼロ 13 件のうち **唯一 mathlib にも repo にも実体が無かった**もの。 書籍 (8.28) (p.240): `n ≥ 5` で `Sₙ` の正規部分群はちょうど 3 つ — `1`, `Aₙ`, `Sₙ`。 center_perm_eq_bot `Z(Sym Ω) = 1` (`|Ω| ≥ 3`) normal_perm_eq_bot_or_alternating_or_top (8.28) 本体 ⚠ `Z(Sym Ω) = 1` も mathlib に無い (mathlib の `Equiv.Perm.alternatingGroup.center_eq_bot` は**交代群**の中心)。中心元 `t` が `a ↦ b ≠ a` と 動かすなら第 3 の点 `c` を取って互換 `(b c)` との可換性から `b = c` が出る、という 5 行の議論。 (8.28) 本体は `N.subgroupOf Aₙ` に `Aₙ` の単純性 (mathlib `alternatingGroup.isSimpleGroup` = 書籍 (8.27)) を当てて二分し、 ⊤ 側は `[Sₙ : Aₙ] = 2` が素数ゆえ `N = Aₙ` か `N = ⊤`、 ⊥ 側は `sign` が `N` 上単射になるので `g t g⁻¹` と `t` の符号が一致 ⟹ `t` は中心元 ⟹ `N = ⊥`。 残り 12 件の mathlib 対応は `notes/isaacs/ch08_permutation.md` の対応表が正本。 -/ /-! ### Isaacs Cor 1.24 — 正規条項つき (issue 0176 ステップ 2、2026-08-08) 書籍 (1.24) (p.24、ページ画像で確定) は位数 `p^a` の `p`-群 `P` について、各 `0 ≤ b ≤ a` で **`L ⊴ P`** かつ `|L| = p^b` なる部分群の存在を主張する。 ⚠ mathlib の `Sylow.exists_subgroup_card_pow_prime_of_le_card` は**存在だけ**を返し **正規性を返さない** ⟹ **部分被覆**だった。repo の該当箇所の注記も自ら「弱形」と書いていた (= Peterfalvi 監査でいう「stale/自認つき自己注記」型)。 IsPGroup.exists_normal_card_eq_pow 書籍どおりの正規条項つき 証明は書籍と同じ `b` の帰納法で、Lemma 1.23 (`exists_normal_index_eq_prime`) を `M = ⊤` に 適用して正規性を保ったまま位数を `p` 倍ずつ上げる。 ⚠ 対して **Cor 1.25** (`p^b ∣ |G| ⇒ 位数 `p^b` の部分群) は書籍自身が正規性を主張しないので mathlib `Sylow.exists_subgroup_card_pow_prime` がそのまま書籍強度 (ページ画像で確認)。 -/ #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.IsPGroup.exists_normal_card_eq_pow -- **Isaacs Thm 1.30 の 2 条項** (issue 0176 の逐条監査で AxiomsCheck 未登録と判明、 -- 2026-08-08 に登録)。書籍 p.31: `|G| = pq` (`q < p` 素数) ⟹ (i) Sylow `p` は正規、 -- (ii) `q ∤ p−1` なら `G` は巡回。両方とも repo に実体が在った。 -- ⚠ 監査中に一度 (ii) を「欠けている」と誤判定した — (i) の docstring の「前半」を -- 「後半が無い」と読んだため。実際は次の宣言が (ii) 本体だった。自認語は指標にならない。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.sylow_normal_of_card_eq_mul_prime_lt -- **Isaacs Cor 1.40 の後半** (issue 0176、2026-08-08 に補充)。書籍 p.34 は -- 「`O_p(G) > 1`, and thus `G` is not simple unless `|G| = p`」と 2 条項で述べるが、 -- repo は前半 (`opCore_ne_bot_of_card_sylow_sq_gt`) しか持っていなかった。 -- ⚠ **repo 全体を grep しても後半の実体が無い**ことを確認してから補充した -- (1.30 で「次の宣言に在った」誤判定を出した直後なので、今回は範囲を絞らず確認)。 -- 証明: 単純性 + `O_p(G) ≠ ⊥` ⟹ `O_p(G) = ⊤` ⟹ `G` は `p`-群。非自明 `p`-群の中心は -- 非自明で単純性から `Z(G) = ⊤` ⟹ `G` 可換 ⟹ `IsSimpleGroup.prime_card` で `|G|` は素数、 -- `p` 冪と合わせて `|G| = p`。 #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.not_isSimpleGroup_of_card_sylow_sq_gt /-! ### Isaacs Cor 2.4 — `S, T ⊴⊴ G ⟹ S ∩ T ⊴⊴ G` (issue 0176、2026-08-08) Ch.2 逐条監査で検出した唯一の真の未形式化。書籍 p.46 の証明どおり Lemma 2.3 (`inf_isSubnormal_subgroupOf`、repo に既存) + subnormality の推移性 (mathlib `Subgroup.IsSubnormal.trans`) の 1 行。 ⚠ **`Ch02_Subnormality/Basic.lean` の冒頭一覧が長らくこれを `Subgroup.IsSubnormal.inf` と 記していたが、その名前は mathlib にも repo にも存在しなかった**。実在しない補題名を挙げた 自己注記の実例で、番号 grep では「cite あり」になってしまう。⟹ **注記の挙げる名前は 実在確認する**。 -/ #assert_only_allowed_axioms OddOrder.Isaacs.Ch02.inf_isSubnormal /-! ### Isaacs Thm 5.26 (Frobenius) — 書籍どおりの 3 条件 TFAE (issue 0176、2026-08-08) 書籍 p.175 は 3 条件の同値を述べる: (1) `G` が normal `p`-complement を持つ (2) 全ての非自明 `p`-部分群 `X` について `N_G(X)` が normal `p`-complement を持つ (3) 全ての `p`-部分群 `X` について `N_G(X)/C_G(X)` が `p`-群 repo は長らく **(1) ⇔ (3)** だけを theorem として持ち、条件 (2) は Lemma 5.27 の前後段 (`hasNormalPComplement_of_subgroup` / `isPGroup_normalizerQuotientCentralizer_…`) に 分かれていた。3 つの含意はすべて在ったので `frobenius_normal_p_complement_tfae` で 書籍の形に束ねた (packaging 差の解消)。 ⚠ 併せて stale な forward reference を訂正 — 「Lem 5.27, Lem 5.28 **完成後**の theorem 化を参照」と、まだ未完であるかのように書かれたままだった。 -/ #assert_only_allowed_axioms OddOrder.Isaacs.Ch05.frobenius_normal_p_complement_tfae #assert_only_allowed_axioms OddOrder.Isaacs.Ch01.isCyclic_of_card_eq_mul_prime_lt_of_not_dvd #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.center_perm_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch08.normal_perm_eq_bot_or_alternating_or_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.KegelHypothesis.map_mk #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_lt_of_isSubnormal_subgroupOf #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsKegelMinimalCounterexample.sup_eq_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsKegelMinimalCounterexample.inf_isSubnormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.IsKegelMinimalCounterexample.inf_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.splitRetraction_coe #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.sylowInf_subgroupOf_eq_map #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.inf_le_smul #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_pgroup_normalizedBy #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.inf_le_centralizer_of_fitting_inf_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.le_centralizer_of_fitting_inf_eq_bot #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.le_fitting_of_isMinimalNormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.mul_comm_of_isMinimalNormal_of_isNilpotent #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.exists_prime_pow_eq_one_of_isMinimalNormal #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.sylow_le_of_ne_prime #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSubnormal_of_pow_eq_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSimpleGroup_of_isKegelMinimalCounterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.KegelHypothesis.normalInSubgroup #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSimpleGroup_subgroup_of_isKegelMinimalCounterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch09.isSimpleGroup_and_not_isMulCommutative_of_isKegelMinimalCounterexample #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.pow_eq_one_of_center_isComplement #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.not_surjective_of_quaternionProd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.not_surjective_regularWreath_of_quaternionProd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.quaternionProd_aut_fixes_mod_frattini #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.transfer_range_eq_of_quaternionProd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.abelianization_conj_eq_of_quaternionProd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.commutator_lt_top_of_transfer_ne_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.commutator_lt_top_of_sylow_quaternionProd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.orderOf_one_add_prime_dvd #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.orderOf_unitAutHom_one_add_prime #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.isMetacyclic_problem10B1 #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.isPGroup_problem10B1 #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.prime_dvd_one_sub_zpow #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.commutatorElement_inl_left #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.inl_ofAdd_pow_mem_lowerCentralSeries #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.commutator_inl_mem_map_zpowers #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.commutator_top_le_map_zpowers #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.lowerCentralSeries_le_map_zpowers #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.nilpotencyClass_problem10B1 #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.le_socle_of_isElementaryAbelian_of_not_dvd_index #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.ker_mapDomainAlgHom_eq_mul_top #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.ker_mapDomainAlgHom_eq_top_mul #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.exists_isUnitBasis_augmentation_eq_one #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.nonempty_abelianization_equiv_of_isUnitBasis #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.trace_regularMatrix #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.pow_eq_one_of_isRoot_charpoly_regularMatrixC #assert_only_allowed_axioms OddOrder.Isaacs.Ch10.coeff_one_of_pow_eq_one /-! **`p`-regular elements and the `p` / `p'` decomposition** (`GroupTheory.PRegularElement`, issue 9506 = the bottom-up first stage of the modular character theory needed for the Q₈ Brauer--Suzuki case, issue 0147). mathlib has no `p`/`p'` factorisation of a group element. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularPart_mul_pPart #assert_only_allowed_axioms OddOrder.GroupTheory.isPElement_pPart #assert_only_allowed_axioms OddOrder.GroupTheory.isPRegular_pRegularPart #assert_only_allowed_axioms OddOrder.GroupTheory.eq_pPart_of_commute /-! **Lifting roots of unity along the residue map of a Henselian local ring** (`GroupTheory.RepresentationTheory.Modular.RootsOfUnityLift`, issue 9506). This is the technical heart of a `p`-modular system: `μ_n(𝒪) ≃* μ_n(k)` whenever `n` is a unit of `𝒪`. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_pow_eq_one_of_sub_mem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_pow_eq_one_residue_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.rootsOfUnityEquivResidue /-! **`p`-modular systems** (`GroupTheory.RepresentationTheory.Modular.PModularSystem`, issue 9506). `ℤ_[p]` is the base example, so the notion is not vacuous. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.henselianLocalRing_of_isAdicComplete #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_natCast_of_not_dvd #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.rootsOfUnityEquivResidue_of_not_dvd #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.instIsPModularSystemPadicInt #assert_only_allowed_axioms OddOrder.GroupTheory.isMetacyclic_semidirectProduct #assert_only_allowed_axioms OddOrder.GroupTheory.conjNormal_eq_one_of_mem_centralizer #assert_only_allowed_axioms OddOrder.GroupTheory.normal_map_subtype_of_conj_invariant #assert_only_allowed_axioms OddOrder.GroupTheory.exists_isCompl_invariant /-! **Witt vectors as a `p`-modular system** and the **standard splitting system** (`GroupTheory.RepresentationTheory.Modular.{WittVectorSystem,SplittingSystem}`, issue 9506). `𝕎 (GF(p ^ φ(n)))` is a `p`-modular system whose `n`-th roots of unity are all present — the carrier is constructed, not posited. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.maximalIdeal_wittVector #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.wittVectorResidueFieldEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.instIsPModularSystemWittVector #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.hasEnoughRootsOfUnity_of_residueField #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.hasEnoughRootsOfUnity_splittingSystem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.natCard_rootsOfUnity_splittingSystem /-! **Diagonalisability from a split squarefree annihilator** (`Algebra.EigenspaceDecomposition`, issue 9506). What replaces mathlib's `IsAlgClosed`-bound eigenspace decomposition. -/ #assert_only_allowed_axioms OddOrder.iSup_eigenspace_eq_top_of_aeval_prod_eq_zero #assert_only_allowed_axioms OddOrder.iSup_eigenspace_eq_top_of_pow #assert_only_allowed_axioms OddOrder.sum_finrank_eigenspace_of_pow /-! **Brauer characters** (`GroupTheory.RepresentationTheory.Modular.BrauerCharacter`, issue 9506). `residue_brauerCharacter` is the fact that pins the definition down: reduction returns the ordinary trace. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.rootLift_unique #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.residue_brauerCharacter /-! **Lagrange interpolation over a commutative ring with separated nodes** (`Algebra.LagrangeInterpolationRing`, issue 9506). What lets the eigen-decomposition run over the coefficient ring `𝒪` of a `p`-modular system, which is not a field. -/ #assert_only_allowed_axioms OddOrder.eq_zero_of_degree_lt_card_of_eval_eq_zero #assert_only_allowed_axioms OddOrder.sum_ringLagrangeBasis #assert_only_allowed_axioms OddOrder.iSup_eigenspace_eq_top_of_separated #assert_only_allowed_axioms OddOrder.finrank_eigenspace_eq_quotient_add /-! **Eigen-decomposition over `𝒪` and the `p`-regular packaging of Brauer characters** (`GroupTheory.RepresentationTheory.Modular.LatticeEigenspaces`, issue 9506). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.orderOf_dvd_pRegularExponent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.separatedNodes_of_pow_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.iSup_eigenspace_eq_top_of_pow #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.iSup_eigenspace_eq_top_splittingSystem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.residue_brauerCharacter_of_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_quotient_add_subrepresentation /-! **The decomposition-map identity** (`GroupTheory.RepresentationTheory.Modular.Reduction`, issue 9506). The trace of a finite-order endomorphism of an `𝒪`-lattice is exactly the Brauer-character expression of its reduction — the identity that ties ordinary characters to Brauer characters. -/ #assert_only_allowed_axioms OddOrder.trace_eq_sum_finrank_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_eq_sum_finrank_smul_of_pow #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.image_residue_nthRootsFinset #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_eq_sum_nthRootsFinset #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.baseChange_eigenspace_le #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isPrimitiveRoot_residue #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.finrank_eigenspace_baseChange #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_eq_sum_finrank_baseChange_eigenspace /-! **The decomposition map for representations, invariant lattices, and the commutator subspace of a group algebra** (issue 9506). Together these are the ordinary-to-modular bridge and the first half of Brauer's count of irreducible modular representations. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_eq_brauerCharacter_reduction #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_invariant_lattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.commutatorSubmodule_eq_span_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.classCoeffSum_eq_zero_of_mem_commutatorSubmodule #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.finrank_quotient_commutatorSubmodule #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularPartClass_of_isPRegularClass /-! **Freshman's dream modulo commutators** (`Algebra.WordExpansion`, issue 9506). In characteristic `p` the `p`-th power map is additive modulo the commutator subspace; this is the engine of Brauer's count `|IBr G| = #{p`-regular classes`}`. mathlib's `add_pow_char` needs commutativity, so the word/rotation argument is developed here from scratch. -/ #assert_only_allowed_axioms OddOrder.add_pow_eq_sum_wordProd #assert_only_allowed_axioms OddOrder.wordProd_rotateWord_sub_mem #assert_only_allowed_axioms OddOrder.const_of_iterate_rotateWord_eq #assert_only_allowed_axioms OddOrder.card_iterateOrbit #assert_only_allowed_axioms OddOrder.exists_nsmul_sum_of_free #assert_only_allowed_axioms OddOrder.add_pow_prime_sub_sub_mem /-! **The `p`-radical of the commutator span** (`Algebra.CommutatorSpan`, issue 9506). The structural heart of Brauer's count: `T' = {x | ∃ m, x ^ (p ^ m) ∈ [A, A]}` is a subspace. -/ #assert_only_allowed_axioms OddOrder.mul_pow_sub_mul_pow_mem #assert_only_allowed_axioms OddOrder.commutator_pow_mem #assert_only_allowed_axioms OddOrder.pow_mem_commutatorSpan #assert_only_allowed_axioms OddOrder.add_pow_prime_pow_sub_sub_mem #assert_only_allowed_axioms OddOrder.commutatorSpan_le_commutatorRadical /-! **The `p`-regular classes span `kG ⧸ T'`** (`…Modular.{PRegularRadical,PRegularCount}`, issue 9506). The upper bound in Brauer's count of irreducible modular representations. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_pow_prime_pow_eq_pRegularPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.single_sub_single_pRegularPart_mem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.span_range_mkQ_pRegular_eq_top #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.finrank_quotient_commutatorRadical_le /-! **The semilinear Frobenius on `A ⧸ [A, A]`** (issue 9506). `T' / T` is exactly what it eventually kills, which turns the count into a Fitting-type analysis. -/ #assert_only_allowed_axioms OddOrder.frobQuotient_add #assert_only_allowed_axioms OddOrder.frobQuotient_smul #assert_only_allowed_axioms OddOrder.mem_commutatorRadical_iff_frobQuotient #assert_only_allowed_axioms OddOrder.GroupTheory.exists_uniform_pow_prime_pow_eq_pRegularPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.iterate_frobQuotient_mk_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.linearIndependent_mkQ_out #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.iterate_frobQuotient_mem_pRegularClassSpan /-! **`dim_k (kG ⧸ T') = #{p`-regular classes`}`** (issue 9506) — the linear-algebra half of Brauer's count of the irreducible modular representations. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.isPRegular_out #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_smul_mem_commutatorRadical #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.linearIndependent_mkQ_pRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.basisPRegularQuotient #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.finrank_quotient_commutatorRadical /-! **The matrix factor of the semisimple quotient** (issue 9506). `[M_n(R), M_n(R)]` is the trace-zero subspace, whence `tr (M ^ p) = (tr M) ^ p` in characteristic `p`. -/ #assert_only_allowed_axioms OddOrder.sub_single_trace_mem_commutatorSpan #assert_only_allowed_axioms OddOrder.mem_commutatorSpan_matrix_iff #assert_only_allowed_axioms OddOrder.trace_pow_prime #assert_only_allowed_axioms OddOrder.commutatorRadical_matrix_eq /-! **Descent to the semisimple quotient** (issue 9506). `T` is the image of `T`; `T'` is the preimage of `T'` as soon as the kernel is uniformly nilpotent. -/ #assert_only_allowed_axioms OddOrder.map_commutatorSpan #assert_only_allowed_axioms OddOrder.map_mem_commutatorRadical #assert_only_allowed_axioms OddOrder.mem_commutatorRadical_of_map_mem /-! **`dim (A ⧸ T')` = 分裂半単純商のブロック数** (issue 9506). -/ #assert_only_allowed_axioms OddOrder.commutatorSpan_pi #assert_only_allowed_axioms OddOrder.commutatorRadical_pi_eq #assert_only_allowed_axioms OddOrder.ker_traceTuple #assert_only_allowed_axioms OddOrder.commutatorRadical_matrixPi_eq #assert_only_allowed_axioms OddOrder.finrank_quotient_commutatorRadical_eq_card /-! **Brauer の数え上げ** (issue 9506): `kG ⧸ J(kG)` の行列ブロック数 = `p`-正則類の個数。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_split_blocks_eq_card_pRegularClass #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_wedderburn_pi_matrix_card_eq /-! **行列環の自然加群は単純** (issue 9506) — Artin-Wedderburn の一意性側の第 1 歩。 -/ #assert_only_allowed_axioms OddOrder.MatrixModule.isSimpleModule_matrix #assert_only_allowed_axioms OddOrder.MatrixModule.linearEquiv_of_isSimpleRing #assert_only_allowed_axioms OddOrder.MatrixModule.linearEquiv_natural_of_isSimpleModule #assert_only_allowed_axioms OddOrder.PiModule.exists_unique_idem_smul_eq_self #assert_only_allowed_axioms OddOrder.PiModule.smul_eq_single_smul #assert_only_allowed_axioms OddOrder.PiModule.isSimpleModule_factor #assert_only_allowed_axioms OddOrder.MatrixModule.isSimpleModule_piNatural #assert_only_allowed_axioms OddOrder.MatrixModule.idem_smul_piNatural #assert_only_allowed_axioms OddOrder.MatrixModule.nonempty_linearEquiv_natural_of_idem #assert_only_allowed_axioms OddOrder.isSimpleModule_compHom #assert_only_allowed_axioms OddOrder.isSimpleModule_of_surjective #assert_only_allowed_axioms OddOrder.MatrixModule.isSimpleModule_blockModule #assert_only_allowed_axioms OddOrder.MatrixModule.exists_linearEquiv_blockModule #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_surjective_blocks_card_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.instIsAlgClosedResidueFieldWittVector #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.irreducibleBrauerCharacter_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.irreducibleBrauerCharacter_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.residue_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.ker_blockTrace #assert_only_allowed_axioms OddOrder.blockTraceQuotientEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_blockTrace_pRegular_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_maximalIdeal_of_sum_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_congr #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.hasEnoughRootsOfUnity_of_isAlgClosed #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isPrimitiveRoot_pRegularExponent_standardSystem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_surjective_blocks_card_eq_standardSystem #assert_only_allowed_axioms OddOrder.MatrixModule.isScalarTower_blockModule #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_irreducibleBrauerCharacter_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isSimpleModule_asModule #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_minimal_invariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isSimpleModule_subrepresentation_of_minimal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coe_subrepresentation_asAlgebraHom #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.subrepresentation_asAlgebraHom_eq_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_decomposition #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_decomposition_trace #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_pow_eq_zero_of_ker_eq_jacobson #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_sum_irreducibleBrauerCharacter_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.existsUnique_decomposition_trace #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_eq_sum_decompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_decompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_smul_of_baseChange_eq_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.smul_id_injective #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_smul_id_of_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_baseChange_smul_of_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_smul_id_of_mem_center_of_absolutelyIrreducible #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_center_eq_centralScalar_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_centralScalar #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.baseChange_apply_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_reduction_mapRingHom #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.mapRingHom_classSum #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.exists_mem_center_mapRingHom_eq #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.eq_sum_classSumCenter #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.apply_eq_zero_of_mapRingHom_eq_zero #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.apply_eq_of_mapRingHom_eq #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.centerLift #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.mapRingHom_centerLift #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.reducedCentralCharacter #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.reducedCentralCharacter_eq #assert_only_allowed_axioms OddOrder.MatrixModule.exists_scalar_of_mem_center #assert_only_allowed_axioms OddOrder.MatrixModule.centralCharacter #assert_only_allowed_axioms OddOrder.MatrixModule.centralCharacterPi_eq_zero_iff #assert_only_allowed_axioms OddOrder.MatrixModule.sameBlock_equivalence #assert_only_allowed_axioms OddOrder.MatrixModule.centralScalar_smul #assert_only_allowed_axioms OddOrder.MatrixModule.eq_centralScalar_of_forall_smul_eq #assert_only_allowed_axioms OddOrder.MatrixModule.eq_centralCharacterAlg_of_forall_smul_eq #assert_only_allowed_axioms OddOrder.MatrixModule.exists_eq_centralCharacterAlg_of_forall_smul_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_eq_centralCharacterAlg_of_asAlgebraHom_eq_smul #assert_only_allowed_axioms OddOrder.exists_mem_eq_one_eq_zero #assert_only_allowed_axioms OddOrder.Subalgebra.eq_top_of_separates #assert_only_allowed_axioms OddOrder.MatrixModule.centralCharacterAlg #assert_only_allowed_axioms OddOrder.MatrixModule.surjective_blockCharacterPi #assert_only_allowed_axioms OddOrder.MatrixModule.existsUnique_blockIdempotent #assert_only_allowed_axioms OddOrder.MatrixModule.exists_completeOrthogonalIdempotents_block #assert_only_allowed_axioms OddOrder.exists_unique_smul_eq_self_of_completeOrthogonal #assert_only_allowed_axioms OddOrder.MatrixModule.existsUnique_block_smul_eq_self #assert_only_allowed_axioms OddOrder.completeOrthogonalIdempotents_matrixUnit #assert_only_allowed_axioms OddOrder.exists_completeOrthogonalIdempotents_lift #assert_only_allowed_axioms OddOrder.MatrixModule.blockRingEquiv #assert_only_allowed_axioms OddOrder.GAlgebra.exists_isDefectGroup #assert_only_allowed_axioms OddOrder.GAlgebra.isPGroup_of_isDefectGroup #assert_only_allowed_axioms OddOrder.GAlgebra.exists_mackey #assert_only_allowed_axioms OddOrder.GAlgebra.exists_mul_eq_sum_relTraceIdeal_inf #assert_only_allowed_axioms OddOrder.exists_mem_of_sum_eq_of_local #assert_only_allowed_axioms OddOrder.exists_mem_of_sum_eq_of_isArtinian #assert_only_allowed_axioms OddOrder.GAlgebra.exists_conj_eq_of_isDefectGroup #assert_only_allowed_axioms OddOrder.GAlgebra.exists_conj_eq_of_isDefectGroup_of_commute #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_fixed_nsmul_one_inv #assert_only_allowed_axioms OddOrder.GroupAlgebra.isPGroup_of_isDefectGroup #assert_only_allowed_axioms OddOrder.GroupAlgebra.isNilpotent_or_exists_fixed_mul_eq #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_conj_eq_of_isDefectGroup #assert_only_allowed_axioms OddOrder.MatrixModule.blockIdempotent_ne_zero #assert_only_allowed_axioms OddOrder.MatrixModule.eq_zero_or_eq_of_mul_eq_of_isIdempotentElem #assert_only_allowed_axioms OddOrder.MatrixModule.blockCharacterPi_eq_zero_iff #assert_only_allowed_axioms OddOrder.exists_algHom_pi_matrix_of_isAlgClosed #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_blockIdempotents_defectGroups_conj #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_relTrace_single #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_relTrace_eq_zero #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_eq_zero_iff #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_eq_zero_of_forall_not_le #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_le_conj_of_brauerProj_ne_zero #assert_only_allowed_axioms OddOrder.GroupAlgebra.card_le_card_of_brauerProj_ne_zero #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_forall_smul_eq_brauerProj_eq #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_conj_smul #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_eq_iff_sub_mem #assert_only_allowed_axioms OddOrder.GroupAlgebra.eq_sum_classSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.smul_mem_relTraceIdeal #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_isPGroup_le_centralizer_classSum_mem #assert_only_allowed_axioms OddOrder.GAlgebra.exists_mem_relTraceIdeal_of_sum_eq #assert_only_allowed_axioms OddOrder.GroupAlgebra.brauerProj_ne_zero_of_isDefectGroup /-! **A splitting `p`-modular system**: the valuation ring `𝓞_ℂ_[p]` of the `p`-adic complex numbers (`Algebra.AlgClosedFractionField`, `GroupTheory.RepresentationTheory.Modular.PadicComplexSystem`, issue 9507). Both the fraction field and the residue field are algebraically closed, so `K[G]` and `k[G]` both split with no appeal to Brauer's splitting field theorem — which `𝕎(𝔽̄_p)` cannot deliver, its fraction field missing the `p`-power roots of unity. -/ #assert_only_allowed_axioms OddOrder.exists_isRoot_of_monic #assert_only_allowed_axioms OddOrder.exists_isRoot_sub_mem_maximalIdeal #assert_only_allowed_axioms OddOrder.isAlgClosed_residueField #assert_only_allowed_axioms OddOrder.henselianLocalRing_of_isAlgClosed #assert_only_allowed_axioms OddOrder.free_eigenspace_of_separated #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.natCast_mem_maximalIdeal_padicComplexInt #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.instIsPModularSystemPadicComplexInt #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.instIsAlgClosedResidueFieldPadicComplexInt #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isPrimitiveRoot_padicComplexInt #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isPrimitiveRoot_residueField_padicComplexInt #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_algEquiv_pi_matrix_padicComplex /-! **Invariant lattices and the ordinary character** (`Algebra.ValuationRingFreeModule`, `GroupTheory.RepresentationTheory.Modular.LatticeRepresentation`, issue 9506 段 94). The trace of the lattice representation *is* the ordinary character, so the decomposition numbers depend on the character and not on the chosen lattice. -/ #assert_only_allowed_axioms OddOrder.free_of_isTorsionFree #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.repr_extendOfIsLattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.algebraMap_trace_latticeRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isLattice_invariant /-! **`Irr(G)` and the decomposition matrix** (`GroupTheory.RepresentationTheory.Modular.{DecompositionOfOrdinary,OrdinaryIrreducibles}`, issue 9506 段 94). The rows of `D` are the Wedderburn components of `K[G]`, and the entries do not depend on the invariant lattice used to compute them. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_latticeRepresentation_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.decompositionNumber_latticeRepresentation_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.wedderburnRepresentation_apply #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_eq_sum_decompositionMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_decompositionMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.decompositionMatrix_eq_of_invariant_lattice /-! **The Cartan matrix `C = DᵀD` and the projective indecomposable characters** (`GroupTheory.RepresentationTheory.Modular.CartanMatrix`, Navarro p. 25, issue 9506 段 94). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.algebraMap_ordinaryCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_comm #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.projectiveIndecomposableCharacter_eq_sum_cartanMatrix /-! **First orthogonality over the splitting field** (`GroupTheory.RepresentationTheory.Modular.OrdinaryOrthogonality`, Navarro (2.13) の feeder). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_wedderburnRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_asAlgebraHom_eq_id_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.map_asAlgebraHom_of_intertwiningMap #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_mul_character_inv_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_eq_smul_id_of_intertwiningMap #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.finrank_intertwiningMap_self #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_mul_character_inv /-! **The character table over a splitting field is square** (`GroupTheory.RepresentationTheory.Modular.OrdinaryIrrCount`): `|Irr(G)| = |cl(G)|`, both counting a basis of `Z(K[G])`. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centerAlgEquivPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_eq_card_conjClasses /-! **Second (column) orthogonality over the splitting field** (`GroupTheory.RepresentationTheory.Modular.OrdinaryColumnOrthogonality`, Navarro (2.13) の feeder). 第一直交を共役類でまとめて行列等式にし、指標表が正方であることで片側逆を両側逆にする。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_eq_sum_conjClasses #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_conjugacyClassSize #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.characterMatrix_mul_characterMatrixInv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.characterMatrixInv_mul_characterMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_inv_mul_character_classRep #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_centralizer_eq_of_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_eq_of_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_inv_mul_character /-! **`Φ_φ` は p-正則類の外で消える** — Navarro (2.13) の解析側 (`GroupTheory.RepresentationTheory.Modular.ProjectiveCharacterVanishing`). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_irreducibleBrauerCharacter_ringHom #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isPRegular_of_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_projectiveIndecomposableCharacter_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.algebraMap_sum_projectiveIndecomposableCharacter_mul_inv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.projectiveIndecomposableCharacter_eq_zero /-! **`IBr(G)` を p-正則類で添字づける** (`GroupTheory.RepresentationTheory.Modular.PRegularClassIndex`). Navarro (2.13) の締めが 正方行列問題になるための土台。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_eq_card_pRegularClass #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.equivPRegularClass #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isPRegular_pRegularRep #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pRegularRep_isConj_iff /-! **`[Φ_θ, φ]⁰ = δ_{θφ}` の行列内容** — Navarro (2.13) (`GroupTheory.RepresentationTheory.Modular.CartanInverse`). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_card_centralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.projMatrix_mul_brauerMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerMatrix_mul_projMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_brauer_mul_projectiveIndecomposableCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_pRegular_eq_sum_pRegularRep #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_eq_sum_pRegularRep #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_projectiveIndecomposableCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_cartanMatrix_mul_pairingZero /-! **`G`-類の部分群への切り落とし** — Brauer 対応 `b^G` の土台 (段 95、Navarro (4.13) 前) (`GroupTheory.RepresentationTheory.Modular.TruncClassSum`). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.coeff_truncClassSum #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.truncClassSum_mem_center #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.centerTrunc_classSumCenter #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.inducedCentralCharacter_classSumCenter /-! **中心指標から block が一意に決まる** — Navarro (3.11) (`Algebra.CentralCharacterBlock`). Brauer 対応が block 間の写像になる根拠。 -/ #assert_only_allowed_axioms OddOrder.MatrixModule.existsUnique_blockIdempotent_map_eq_one #assert_only_allowed_axioms OddOrder.MatrixModule.existsUnique_blockCharacter_eq /-! **誘導 block `b^G` (Brauer 対応)** (`GroupTheory.RepresentationTheory.Modular.InducedBlock`, Navarro (4.13) 前). -/ #assert_only_allowed_axioms OddOrder.MatrixModule.blockCharacter_blockOfCentralCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_inducedBlock_classSumCenter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_inducedBlock /-! **正規 p-部分群は単純加群に自明に作用する** — Navarro (2.32) (`Algebra.NormalPSubgroupTrivialAction`) と、その帰結である **`C_G(O_p(G))` を外す類和は中心指標に殺される** — Navarro (4.7) (`Algebra.ClassSumOffCentralizer`). -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.blockRepresentation_eq_one_of_mem_normal_pSubgroup #assert_only_allowed_axioms OddOrder.GroupAlgebra.pi_single_eq_one_of_mem_normal_pSubgroup #assert_only_allowed_axioms OddOrder.GroupAlgebra.pi_classSum_eq_zero_of_notMem_centralizer #assert_only_allowed_axioms OddOrder.GroupAlgebra.blockCharacter_classSumCenter_eq_zero /-! **誘導中心指標は Brauer 準同型** — Navarro (4.14) 第一部 (`GroupTheory.RepresentationTheory.Modular.BrauerCorrespondence`). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_centralizer_conj_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralizerTruncClassSum_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_truncClassSum_eq_centralizerTrunc #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_truncClassSumCenter_eq /-! **`Br_P : Z(kG) →ₐ[k] Z(kH)` と `b^G` の存在** — Navarro (4.14) 第二部 (`Modular.BrauerTruncation` / `Modular.InducedBlockDefined`). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inclusionHom_brauerTrunc #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerTrunc_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerTrunc_mul_of_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerTrunc_classSum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCenterHom #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedCentralCharacterAlgHom_toLinearMap #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedBlockOfNormalizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_inducedBlockOfNormalizer /-! **IBr は p-正則類関数の基底** + **一般化分解数 `d^x_{χφ}`** — Navarro (5.1) (`Modular.BrauerBasis` / `Modular.GeneralizedDecomposition`). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isConj_pRegularRep #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_vecMul_brauerCharacterMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_det_brauerCharacterMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.existsUnique_coeff_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isConj_mul_of_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.existsUnique_generalizedDecomposition #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_generalizedDecompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_generalizedDecompositionNumber /-! **中心部分環の根基** — Navarro (5.3) (`Algebra.JacobsonCentralSubring`)、 第二主定理 (5.2) の補題連鎖の最上流. -/ #assert_only_allowed_axioms OddOrder.algebraMap_mem_ringJacobson #assert_only_allowed_axioms OddOrder.algebraMap_maximalIdeal_mem_ringJacobson /-! **corner `fAf` での可逆性** — Navarro (5.4) (`Algebra.CornerInverse`). -/ #assert_only_allowed_axioms OddOrder.isUnit_one_add_of_mem_ringJacobson #assert_only_allowed_axioms OddOrder.map_maximalIdeal_le_ringJacobson #assert_only_allowed_axioms OddOrder.exists_corner_inverse_of_isUnit #assert_only_allowed_axioms OddOrder.exists_corner_inverse_of_isNilpotent #assert_only_allowed_axioms OddOrder.exists_corner_inverse #assert_only_allowed_axioms OddOrder.exists_corner_inverse_of_approx #assert_only_allowed_axioms OddOrder.MatrixModule.exists_corner_inverse_of_blockCharacter_eq_one #assert_only_allowed_axioms OddOrder.exists_corner_inverse_blockCharacter /-! **Henselian イデアルに沿った冪等元の持ち上げ** (`Algebra.IdempotentLift`) — `𝒪G` の block 冪等元を得るための一段. -/ #assert_only_allowed_axioms OddOrder.isUnit_two_mul_sub_one_of_sub_mem #assert_only_allowed_axioms OddOrder.exists_isIdempotentElem_sub_mem #assert_only_allowed_axioms OddOrder.eq_of_isIdempotentElem_of_sub_mem #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_sub_mem /-! **有限直積の adic 完備性** (`Algebra.AdicCompletePi`) — 完備な `𝒪` について `Z(𝒪G)` が `𝔪`-adic 完備であることを出すための一段. -/ #assert_only_allowed_axioms OddOrder.mem_pow_smul_top_self_iff #assert_only_allowed_axioms OddOrder.mem_pow_smul_top_pi_iff #assert_only_allowed_axioms OddOrder.isAdicComplete_pi #assert_only_allowed_axioms OddOrder.map_equiv_pow_smul_top #assert_only_allowed_axioms OddOrder.isAdicComplete_of_linearEquiv #assert_only_allowed_axioms OddOrder.isAdicComplete_of_basis /-! **`Z(𝒪G)` は `I·Z(𝒪G)` で Henselian ⟹ 冪等元が持ち上がる** (`Algebra.CenterGroupAlgebraHenselian`) — Navarro の block 冪等元 `f_B` の土台. -/ #assert_only_allowed_axioms OddOrder.isAdicComplete_centerGroupAlgebra #assert_only_allowed_axioms OddOrder.isAdicComplete_centerIdeal #assert_only_allowed_axioms OddOrder.henselianRing_centerGroupAlgebra #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_centerGroupAlgebra /-! **`Z(FG)` の冪等元は `Z(𝒪G)` へ一意に持ち上がる** (`Algebra.CenterIdempotentLift`) — Navarro の block 冪等元 `f_B`. -/ #assert_only_allowed_axioms OddOrder.mem_centerIdeal_iff_mapRingHom_eq_zero #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_mapRingHom_eq #assert_only_allowed_axioms OddOrder.mapRingHom_mem_center #assert_only_allowed_axioms OddOrder.centerReduce #assert_only_allowed_axioms OddOrder.mem_centerIdeal_iff_centerReduce_eq_zero /-! **部分群に沿った `R[G]` の分解** (`Algebra.SubgroupTruncation`) — Navarro (5.6) が block 冪等元 `f_B` を `H`-部分と `G ∖ H`-部分に割るための道具. -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.inclusionHom #assert_only_allowed_axioms OddOrder.GroupAlgebra.subgroupTrunc #assert_only_allowed_axioms OddOrder.GroupAlgebra.subgroupTrunc_mem_center #assert_only_allowed_axioms OddOrder.GroupAlgebra.mapRingHom_subgroupTrunc #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_mul_inclusionHom_eq_zero #assert_only_allowed_axioms OddOrder.GroupAlgebra.commute_single_inclusionHom #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_inclusionHom_subgroupTrunc_sub #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.coe_centerTrunc /-! **Navarro (5.6)** (`Modular.InducedBlockWitness`) — `b^G = B` から `H` に中心化され `G ∖ H` に台を持つ `w` を作る. 第二主定理 (5.2) の直前の一段. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centerReduce_subgroupTrunc #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_inducedBlock_witness /-! **Navarro (3.13.a)** (`Modular.LatticeBlockIdempotent`) — block 冪等元は絶対既約格子の上で `0` か `1` として作用する. (5.7) が `M f_B = 0` を得るのに使う. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_or_one_of_isIdempotentElem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isIdempotentElem_centralScalar #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_eq_zero_or_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_zero_of_mem_maximalIdeal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_id_of_notMem_maximalIdeal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_zero_of_reduce_centralScalar_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_id_of_reduce_centralScalar_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.baseChange_apply_eq_zero_of_reduce_centralScalar_eq_zero /-! **Navarro (5.7) の組み合わせ半分** (`Modular.ConjugationLayers`) — `C_G(h_p)` を外れた台の上で `⟨h⟩`-軌道は長さ `p` の倍数ゆえ、`h`-不変元は `p` 枚の巡回層に割れる. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.commute_pPart_zpow #assert_only_allowed_axioms OddOrder.GroupTheory.pPart_mem_zpowers_zpow #assert_only_allowed_axioms OddOrder.GroupTheory.dvd_of_commute_zpow #assert_only_allowed_axioms OddOrder.GroupTheory.commute_pPart_conj_iff #assert_only_allowed_axioms OddOrder.GroupTheory.exists_conjRep #assert_only_allowed_axioms OddOrder.GroupTheory.conjRep_conj #assert_only_allowed_axioms OddOrder.GroupTheory.conjLevel_eq #assert_only_allowed_axioms OddOrder.GroupTheory.conjLevel_conj #assert_only_allowed_axioms OddOrder.GroupTheory.coeff_conjLayer #assert_only_allowed_axioms OddOrder.GroupTheory.sum_conjLayer #assert_only_allowed_axioms OddOrder.GroupTheory.conjLayer_conj_smul /-! **Navarro (5.7) の固有ベクトル `s = Σ ω^{-i} w_i`** (`Modular.TwistedLayerSum`) — `s^h = ω s` / `f s f = s` / `s* = w*`. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.eq_one_of_pow_eq_one_expChar #assert_only_allowed_axioms OddOrder.GroupTheory.pow_mod_eq_pow #assert_only_allowed_axioms OddOrder.GroupTheory.pow_val_add #assert_only_allowed_axioms OddOrder.GroupTheory.conj_smul_twistedSum #assert_only_allowed_axioms OddOrder.GroupTheory.mapRingHom_twistedSum #assert_only_allowed_axioms OddOrder.GroupTheory.sum_corner #assert_only_allowed_axioms OddOrder.GroupTheory.conj_smul_corner #assert_only_allowed_axioms OddOrder.GroupTheory.corner_twistedSum #assert_only_allowed_axioms OddOrder.GroupTheory.exists_conj_eigen_corner /-! **Navarro (5.7) の単射性** (`Algebra.GroupAlgebraIdeal` / `Algebra.EigenCornerInverse`) — `(1-f_B) s` が corner で可逆ゆえ `s` は `V = M f_b` 上単射. -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.sum_single_coeff #assert_only_allowed_axioms OddOrder.GroupAlgebra.mem_groupAlgebraIdeal_iff_mapRingHom_eq_zero #assert_only_allowed_axioms OddOrder.exists_corner_inverse_eigen #assert_only_allowed_axioms OddOrder.eq_zero_of_apply_eq_zero_of_corner_inverse /-! **Navarro (5.7) の結論** (`Algebra.EigenTraceVanishing`) — `χ(f_b h) = 0`. 教科書の固有値の重複度勘定を「`H` と `ζH` が相似」に置き換えた版. -/ #assert_only_allowed_axioms OddOrder.trace_eq_zero_of_conj_smul #assert_only_allowed_axioms OddOrder.trace_idempotent_mul_eq_zero /-! **Navarro (5.7) の組み立て** (`Modular.InducedBlockTrace`) — (5.6) の witness から `χ(f_b h) = 0` まで、`𝒪G`・表現 `ρ` の設定で結線したもの. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.commute_inclusionHom_of_forall_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_blockIdempotent_mul_eq_zero /-! **通常指標の block** (`Modular.BlockOfLattice`) — `λ_χ = ω_χ mod 𝔪` の属する block を 函数として与え、(3.13.a) を「`χ ∈ B` か否か」の形にする. -/ #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.reducedCentralCharacterAlg #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockOfLattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_blockOfLattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.reduce_centralScalar_blockIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_zero_of_blockOfLattice_ne #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_eq_id_of_blockOfLattice_eq /-! **分解数の block 対角性** (`Modular.BrauerDecomposition` / `DecompositionNumber`) — 中心がスカラーで作用するなら、実際に現れる構成因子の中心指標は同じ. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotient_asAlgebraHom_mk #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotient_asAlgebraHom_eq_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacterAlg_eq_of_decompositionNumber_ne_zero #assert_only_allowed_axioms OddOrder.GroupAlgebra.single_mem_center_of_forall_commute #assert_only_allowed_axioms OddOrder.trace_eq_add_trace_restrict_of_isCompl /-! **通常指標の重複度分解** (`Modular.OrdinaryDecomposition`) — 標数 0 側で `tr_V = Σ_i d_i χ_i`、block 対角性つき. (5.2) の step (i). -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_ordinaryCharacter_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_ordinary_decomposition_of_finrank_le #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_ordinary_decomposition #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_asAlgebraHom_eq_sum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockRepresentation_asAlgebraHom_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockRepresentation_asAlgebraHom_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_asAlgebraHom_center_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_asAlgebraHom_center_center_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacterAlg_eq_zero_or_one_of_isIdempotentElem #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_asAlgebraHom_blockIdempotent_mul /-! **Navarro (5.2) の核** (`Modular.SecondMainCore`) — `f` と `1-f` の 2 つの中心冪等元だけで 一般化分解数の消滅が出る. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCoeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCoeff_add #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_blockCoeff_eq_trace #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCoeff_eq_zero_of_vanishing #assert_only_allowed_axioms OddOrder.MatrixModule.exists_smul_id_of_commute_blockAction #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacterAlg_eq_algebraMap_centralScalar /-! **Navarro (5.2) 本体** (`Modular.SecondMainTheorem`) — `𝒪G` / `K[H]` / `𝒪H` の 3 つの群環を 往復する配管 (`SecondMainBridge`) と、通常分裂 = block 分裂の同一視 (`OrdinaryBlockSplitting`)、 仮説の充足 (`SecondMainWiring`) を経て、**一般化分解数 `d^x_{χφ}` の消滅**が実際の `p`-modular system で証明される. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_comp_subtype #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mapRingHom_inclusionHom #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coe_latticeRepresentation_asAlgebraHom #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.latticeRepresentation_asAlgebraHom_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockRepresentation_algEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ker_algEquiv_eq_jacobson #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_wedderburn_eq_sum_decompositionMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_algebraMap_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacterAlg_eq_one_of_decompositionMatrix_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pPart_mul_eq_of_isPElement #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pSection #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_pSection_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.forall_pSection_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isConj_centralizer_of_isConj_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero /-! **Navarro (5.8)** (`Modular.SecondMainBlockForm`) — (5.2) を block 言語で述べ直し、 さらに消滅仮説を「`χ` のブロック ≠ `b^G`」に置き換えたもの. (5.6) の witness と `f_b` の 各化身はここで内部生成される. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_eq_zero_of_latticeRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero_of_inducedBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero_of_blockOfLattice #assert_only_allowed_axioms OddOrder.GroupTheory.isPGroup_zpowers_of_isPElement #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralizerOf_le_normalizer_zpowers #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedBlockOfCentralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_toLinearMap_inducedBlockOfCentralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isIdempotentElem_blockCharacterPi_eq_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero_of_inducedBlockOfCentralizer_ne #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_generalizedDecompositionNumber_inducedBlockOfCentralizer /-! **格子の基底変換** (`Modular.LatticeBaseChange`) — `K ⊗_𝒪 L ≃ V`。`BlockOfLattice` / `OrdinaryLatticeCharacter` が仮説で担いでいた同一視を実際に構成し、`hEnd` (絶対既約性) を Wedderburn 成分に対して**証明**する. -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.latticeBaseChangeEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.latticeBaseChangeEquiv_tmul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.latticeBaseChangeEquiv_baseChange #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_smul_id_of_commute_baseChange #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.nontrivial_of_isLattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_smul_id_of_commute_wedderburnLattice #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockOfIrr #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.existsUnique_coeff_ordinaryCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryCoeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_blockPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockPart_eq_zero_of_forall_pSection #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isConj_pPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_blockOfIrr_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_fixedPoints_conjClassCarrier_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_conjClass_modEq_card_centralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.aug_classSumCenter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.aug_centralizerTruncClassSumCenter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_filter_centralizer_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedBlockOfNormalizer_principalBlock /-! **ブロックの defect 数** (`Algebra/DefectNumber`) — defect group は既存 (`DefectGroup`)、 その位数 `p^d` の指数 `d` を取り出す. height が測る基準. -/ #assert_only_allowed_axioms OddOrder.GAlgebra.defect #assert_only_allowed_axioms OddOrder.GAlgebra.card_defectGroup #assert_only_allowed_axioms OddOrder.GAlgebra.card_eq_of_isDefectGroup #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockIdempotentOf #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacterPi_blockIdempotentOf #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockDefect #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_defectGroup_blockIdempotentOf /-! **高さの非負性** (`Algebra/RelativeTraceCharacter` / `Modular/BlockHeight`) — Navarro (3.24) の数値内容 `ν(χ(1)) ≥ ν(|G|) - d(B)`. 付値論・一般指標・`~` 関数は不要で、 「指標は共役不変ゆえ相対トレースを指数倍に潰す」だけで出る. -/ #assert_only_allowed_axioms OddOrder.GAlgebra.map_relTrace #assert_only_allowed_axioms OddOrder.GroupAlgebra.symmMap_comp_conj #assert_only_allowed_axioms OddOrder.GroupAlgebra.symmMap_relTrace #assert_only_allowed_axioms OddOrder.GroupAlgebra.relIndex_dvd_finrank #assert_only_allowed_axioms OddOrder.GroupAlgebra.index_dvd_finrank #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.natCast_prime_mem_maximalIdeal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pow_dvd_of_natCast_pow_dvd #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pow_dvd_finrank_of_mem_relTraceIdeal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pow_defect_dvd_finrank /-! **`p`-正則元の個数は `p` と素** (`GroupTheory.PRegularElementCount`) — `1_G` が主ブロックで height 0 であることの具体形 (`[1̃_G, 1_G] = |G⁰|/|G|_{p'}` が `p` で単元). Sylow `p`-部分群の共役作用 + `C_G(P)` の Sylow が中心的、の 2 段で出る (指標論を使わない). -/ #assert_only_allowed_axioms OddOrder.GroupTheory.isPElement_of_mem_of_isPGroup #assert_only_allowed_axioms OddOrder.GroupAlgebra.pElementSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.pRegularSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_pElementSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_pRegularSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.pElementSum_eq_sum_sylow #assert_only_allowed_axioms OddOrder.GroupAlgebra.conj_smul_subgroupSum_pointwise #assert_only_allowed_axioms OddOrder.GroupAlgebra.sum_sylow_subgroupSum_mem_center #assert_only_allowed_axioms OddOrder.GroupTheory.card_isPRegular_modEq_centralizer #assert_only_allowed_axioms OddOrder.GroupTheory.card_isPRegular_eq_index #assert_only_allowed_axioms OddOrder.GroupTheory.not_dvd_card_isPRegular /-! **主ブロックは full defect** (`Modular/PrincipalBlockDefect`) — `d(B₀) = ν(|G|)`. `f_{B₀}` の添加写像は還元後も `λ_{B₀}(e_{B₀}) = 1` ゆえ `[G:D]` は `𝒪` で単元、 すなわち `D` は Sylow. ⟹ 次数 1 の `1_G` は `B₀` で height 0. -/ #assert_only_allowed_axioms OddOrder.Algebra.augmentation_mapRingHom #assert_only_allowed_axioms OddOrder.GroupAlgebra.isUnit_relIndex_of_mem_relTraceIdeal #assert_only_allowed_axioms OddOrder.GroupAlgebra.isUnit_index_of_mem_relTraceIdeal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.not_dvd_of_isUnit_natCast #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.defect_eq_factorization_of_apply_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_one_of_isIdempotentElem_of_residue_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.defect_eq_factorization_of_residue_augmentation_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.defect_eq_factorization_of_blockCharacterPi_principal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isIdempotentElem_defect_principalBlock /-! **1 の冪根 `n` 個の和が `n` なら全部 1** (`Algebra/RootsOfUnitySum`) — 任意の標数 0 の体上。 三角不等式の等号条件 (ℂ 版は `all_eq_one_of_norm_eq_one_of_sum_eq_card`) を、 「冪根が生成する部分代数は ℚ 上整 ⟹ ℂ へ埋まる」で移送する。Navarro (6.11) の前提。 -/ #assert_only_allowed_axioms OddOrder.Algebra.eq_one_of_pow_eq_one_of_sum_eq_card /-! **部分群和 `N̂` と Brauer 指標の核** (`Algebra/SubgroupSum`, `Modular/BrauerCharacterKernel`) — Navarro (6.10) の核判定 (`ρ(N̂) = |N|·1` ⟺ `ρ` が `N` を潰す) と (6.11) (`p`-正則な `g` で `φ(g) = φ(1)` ⟺ `g ∈ ker φ`)。 -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.single_mul_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.conj_smul_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.map_subgroupSum_of_forall_map_single_eq_one #assert_only_allowed_axioms OddOrder.GroupAlgebra.map_single_eq_one_of_map_subgroupSum #assert_only_allowed_axioms OddOrder.Algebra.eq_one_of_pow_eq_one_of_sum_eq_card' #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_one_of_brauerCharacter_eq_finrank #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.rep_eq_one_iff_brauerCharacter_eq /-! **ブロックの核 `ker(B)`** (`Modular/BlockKernel`) — Navarro (6.9) の定義と (6.10) の初等的な半分 (`ker(B)` は `p`-正則元からなる ⟹ 正規 `p'`-部分群 ⟹ `O_{p'}(G)` 以下)、 および弱ブロック直交性 ((5.11) の `h = 1`)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockKernel #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_blockKernel_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockKernel_normal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isPRegular_of_mem_blockKernel #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.not_dvd_card_blockKernel #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockKernel_le_opPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_one_mul_character_eq_zero #assert_only_allowed_axioms OddOrder.GroupTheory.isPRegular_of_pPart_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.le_blockKernel_of_normal_of_forall_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isGreatest_blockKernel #assert_only_allowed_axioms OddOrder.GroupAlgebra.subgroupSum_mem_center #assert_only_allowed_axioms OddOrder.GroupAlgebra.mapRingHom_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.map_single_eq_one_of_isUnit_map_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.pi_subgroupSum_eq_scalar #assert_only_allowed_axioms OddOrder.GroupAlgebra.pi_single_eq_one_of_isUnit_centralScalar #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_subgroupSum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_single_eq_one_of_blockOfIrr #assert_only_allowed_axioms OddOrder.GroupAlgebra.blockRepresentation_eq_one_of_sup_eq_top #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_principalBlock_subgroupSum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_single_eq_one_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_single_eq_one_principalBlock_of_sup_eq_top #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_single_eq_one_principalBlock_of_normalPComplement #assert_only_allowed_axioms OddOrder.GroupAlgebra.pi_eq_scalar_augmentation #assert_only_allowed_axioms OddOrder.GroupAlgebra.subsingleton_of_forall_pi_single_eq_one #assert_only_allowed_axioms OddOrder.GroupAlgebra.eq_of_forall_pi_single_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_principalBlock_of_normalPComplement #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.subsingleton_of_principalBlock_of_normalPComplement /-! **左乗法のトレース** (`Algebra/TraceMulLeft`) — 群環側 `|G|·a(1)` と 行列積側 `∑ m_i · tr(v_i)`。Wedderburn 分裂を挟んで比較すると中心冪等元が切り出す 次元が読める (Navarro (6.13) の Cartan 行列)。 -/ #assert_only_allowed_axioms OddOrder.Algebra.trace_mulLeft_monoidAlgebra #assert_only_allowed_axioms OddOrder.Algebra.trace_mulLeft_pi_matrix #assert_only_allowed_axioms OddOrder.Algebra.trace_mulLeft_algEquiv #assert_only_allowed_axioms OddOrder.GroupAlgebra.subgroupSum_mul_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_subgroupSum_one #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_subgroupSum_mul #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.coeff_classSum_mul #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.mk_inv_of_mk_eq #assert_only_allowed_axioms OddOrder.GroupTheory.CenterClassSum.coeff_classSum_inv_mul_one #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_subgroupSum_mul_one #assert_only_allowed_axioms OddOrder.GroupAlgebra.centralScalar_subgroupSum_eq_zero_or_card #assert_only_allowed_axioms OddOrder.GroupAlgebra.sum_sq_centralScalar_subgroupSum #assert_only_allowed_axioms OddOrder.GroupAlgebra.card_mul_sum_sq_eq_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.forall_eq_one_of_residue_centralScalar_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_subgroupSum_ne_zero_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.forall_eq_one_iff_blockOfIrr_eq_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_mul_sum_sq_principalBlock /-! **`Q` を含む Sylow の個数** (`GroupTheory/SylowContaining`) — Navarro (4.22) 前半。 Külshammer の公式 `Ĝ_p = ∑_{P ∈ Syl_p} P̂` の係数計算に使う。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.card_sylow_containing_modEq_one #assert_only_allowed_axioms OddOrder.GroupTheory.card_sylow_mem_modEq_one /-! **Navarro Problem (6.1) (Külshammer)** (`GroupTheory/PFactorPairCount`) — `|Ω(g)| ≡ |Ω(g) ∩ (C_G(Q) × C_G(Q))| (mod p)`。第三主定理の逆向きの数え上げ段。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.mem_fixedPoints_pFactorPairs_iff #assert_only_allowed_axioms OddOrder.GroupTheory.card_pFactorPairs_modEq_centralizer /-! **類和の中心指標とトレース** (`Modular/CentralCharacterTrace`) — `ω_i(K̂) · χ_i(1) = ∑_{g ∈ K} χ_i(g)`。Burnside の類積公式を `K`-Wedderburn 設定で 回すための唯一の新規部品 (Navarro (4.19) の上流)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.trace_apply_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_classSum_mul_character_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_sum_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_mul_character_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_classSum_mul_character_one_out #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_centralScalar_mul_character_eq_card_mul_coeff /-! **指標の群上の和は不変部分空間の次元** (`RepresentationTheory/SumCharacterInvariants`) — `∑_{h∈H} χ_ρ(h) = |H| · dim V^H`。Navarro (4.19) の `|P|[χ_P,1_P]` の整数性。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_character_eq_card_mul_finrank_invariants /-! **同じ剰余類にある対** (`GroupTheory/SylowCosetPairs`) — Navarro (4.23) の組合せ半分: `{(x,y) : x ∈ P, y ∈ T, xy ∈ S} ≃ Ω = {(u,y) ∈ S × T : u y⁻¹ ∈ P}`。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.factorThroughEquivCosetPairs #assert_only_allowed_axioms OddOrder.GroupTheory.card_factorThrough_eq_card_cosetPairs #assert_only_allowed_axioms OddOrder.GroupTheory.cosetPairsEquivConj /-! **通常既約の原始中心冪等元** (`Modular/OrdinaryIdempotent`) — `e_{χ_i} = (χ_i(1)/|G|) ∑_g χ_i(g⁻¹) g` と `e(e_{χ_i}) = Pi.single i 1`。 Navarro (4.19) がブロックごとに再編する係数の出どころ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordinaryIdempotent_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.apply_ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordinaryIdempotent_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isIdempotentElem_ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryIdempotent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_sum_centralScalar_smul_ordinaryIdempotent /-! **2 つの中心指標の一致** (`Modular/CentralScalarBridge`) — 格子側 `ω^L_i` (`𝒪` 値、`blockOfIrr` の定義に使う) と Wedderburn 側 `ω^K_i` (`K` 値、 Burnside 公式が使う) は `algebraMap` で一致する。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.algebraMap_centralScalar_eq /-! **ブロック冪等元の整数性** (`Modular/BlockIdempotentOrdinary`) — `e_B` の `Z(𝒪G)` への持ち上げの `K` 像は `∑_{χ ∈ Irr(B)} e_χ`。 Navarro (4.19) がブロックごとに再編する係数 `a_B(K̂)` の正体。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mapRingHom_blockIdempotent_eq_sum /-! **共役類の `p`-defect** (`GroupTheory/ClassDefect`) — `|C_G(x_K)|_p = p^{d(K)}` と `d(K) + ν_p(|K|) = ν_p(|G|)`。Navarro (4.19) の `p^{a-d(K)}` 正規化。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.classDefect #assert_only_allowed_axioms OddOrder.GroupTheory.classDefect_add_factorization_conjugacyClassSize #assert_only_allowed_axioms OddOrder.GroupTheory.ordProj_conjugacyClassSize_mul_pow_classDefect /-! **ブロックを `p`-部分群上で和すると単位元だけ残る** (`Modular/BlockSumOverPSubgroup`) — Navarro (4.19) 原文 p.93 の段。弱ブロック直交性が `x ≠ 1` の項を全部殺す。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_pSubgroup_sum_block_character /-! **Navarro (4.19) の除算なし版** (`Modular/OmegaBurnside`) — `|G| · ∑_{x∈P} (K̂·L̂')_x = |P| · ∑_χ ω_χ(K̂) ω_χ(L̂') χ(1) · dim V_χ^P`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_pSubgroup_coeff_classSum_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordCompl_mul_sum_sylow_coeff_classSum_mul /-! **Navarro (4.19) が `𝒪` に降りる** (`Modular/OmegaBurnsideReduction`) — `K` の恒等式の全項が `𝒪` の元の像なので、付値環上の等式になる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordCompl_mul_sum_sylow_coeff_classSum_mul_over #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.residue_ordCompl_mul_sum_sylow_coeff /-! **`W = ∑_P P̂` を単一 Sylow に落とす** (`RepresentationTheory/SylowSumClassCoeff`) — `∑_{u∈K}(W·L̂)(u) = |Syl_p|·∑_{x∈S}(K̂'·L̂)(x)`。Navarro (4.23) が `|K|` で割らずに (4.19) と突き合わせられる理由。 -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_conj_smul_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_class_coeff_sylowSum_mul /-! **Navarro (4.23) — `|K|` を整域の中で約す** (`Modular/OmegaBurnsideSylowSum`) — `|G|_{p'}·(W·L̂)(x_K) = |Syl_p|·∑_χ χ(x_K⁻¹) ω_χ(L̂) dim V_χ^S`。 数え上げ側の `|K|` と Burnside 側の `|K|` が同じ因子なので、`ℚ` に出ずに消える。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_class_coeff_of_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.conjugacyClassSize_mk_inv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordCompl_mul_coeff_sylowSum_mul /-! **Navarro (4.23) の `𝒪` 降下と剰余体還元** (`Modular/SylowSumReduction`) — `|G|_{p'}*·(Ĝ_p·L̂)*(x_K) = ∑_B λ_B(L̂)·∑_{χ∈Irr(B)}(χ(x_K⁻¹)·dim V_χ^S)*`。 還元で `|Syl_p| → 1` (Sylow 第三定理)、`W → Ĝ_p` ((4.22))。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordCompl_mul_coeff_sylowSum_mul_over #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.residue_ordCompl_mul_coeff_pElementSum_mul /-! **(4.23) p.93 の評価** (`Modular/SylowSumReduction`) — `∑_{χ∈Irr(B)} χ(y⁻¹)·dim V_χ^S = |G|_{p'}·(∑_{χ∈Irr(B)} e_χ)(y)` とその `𝒪` 版 (ブロック冪等元の持ち上げ `f` を使った形)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_block_character_mul_finrank_invariants #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordCompl_mul_coeff_blockIdempotentLift /-! 🎯🎯🎯 **Navarro (4.23) 完成** (`Modular/SylowSumReduction`) — `(Ĝ_p·L̂)(x_C) = ∑_B λ_B(L̂)·e_B(x_C)`。両辺の `|G|_{p'}*` が約せる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_pElementSum_mul_classSum /-! **`Ĝ⁰` の中心性とブロック指標** (`Modular/PRegularSumBlock`) — `ω_χ(Ĝ⁰)χ(1) = ∑_{g∈G⁰}χ(g)` と `λ_{B₀}(Ĝ⁰) = |G⁰|*` ((6.14) の入口)。 -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.pRegularSum_mem_center #assert_only_allowed_axioms OddOrder.GroupAlgebra.pElementSum_mem_center #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_pRegularSum_mul_character_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_principalBlock_pRegularSum /-! **`[χ,ψ]⁰` の分解行列展開** (`Modular/PairingZeroDecomposition`) — `[χ,ψ]⁰ = ∑_{φ,μ} d_{χφ} d_{ψμ} [φ,μ]⁰` (Navarro (3.20) の核)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_trace_eq_sum_decompositionNumber /-! **Cartan 行列のブロック対角性** (`Modular/CartanBlockDiagonal`) — `c_{μφ} = 0` (μ,φ が異なるブロック)。Navarro (3.20) の部品 (b) の前半。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_smul_id_asAlgebraHom_reduction #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralCharacterAlg_eq_of_decompositionMatrix_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_eq_zero_of_centralCharacterAlg_ne /-! 🎯🎯🎯 **Navarro (3.20)** (`Modular/PairingZeroBlock`) — 逆 Cartan 行列もブロック対角 (`[φ,μ]⁰ = 0`)、ゆえに 異なるブロックの通常指標に対し `[χ,ψ]⁰ = 0`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_eq_zero_of_centralCharacterAlg_ne #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_trace_eq_zero_of_centralCharacterAlg_ne /-! 🎯🎯🎯 **Navarro (3.32) の実質** (`Modular/PairingZeroBlock` + `Modular/PRegularSumVanishing`) — `∑_{g∈G⁰}χ(g) = 0` と `ω_χ(Ĝ⁰) = 0` (χ ∉ Irr(B₀))。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_pRegular_trace_eq_zero_of_centralCharacterAlg_ne #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_pRegularSum_eq_zero /-! 🎯🎯🎯 **`λ_B(Ĝ⁰) = 0` (B ≠ B₀)** (`Modular/PRegularSumVanishing`) — (3.32) の剰余体版。 -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.mapRingHom_pRegularSum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_blockOfIrr_pRegularSum_eq_zero /-! 🎯🎯🎯 **(4.23) at `z = Ĝ⁰`** (`Modular/KulshammerFormula`) — `(Ĝ_p·Ĝ⁰)(x_C) = ∑_B λ_B(Ĝ⁰)·e_B(x_C)`。(6.14) Külshammer の骨格。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pRegularSum_eq_sum_classSum #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_pElementSum_mul_pRegularSum /-! 🎯🎯🎯🎯 **Navarro (6.14) Külshammer の公式** (`Modular/KulshammerFormula`) — `(Ĝ_p·Ĝ⁰)(x_C) = |G⁰|*·e_{B₀}(x_C)`、すなわち `π(Ĝ_p Ĝ⁰) = |G⁰|* e_{B₀}`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_pElementSum_mul_pRegularSum_principalBlock /-! **`|G⁰| ≡ |C_G(Q)⁰| (mod p)`** (`GroupTheory/PFactorPairCount`) — Problem (6.1) と対になる正規化。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.card_pRegular_modEq_centralizer /-! 🎯🎯 **`(Ĝ_p·Ĝ⁰)(g) = |Ω(g)|`** (`Algebra/PElementSumCount`) — Külshammer の公式の数え上げ側。 -/ #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_pElementSum_mul #assert_only_allowed_axioms OddOrder.GroupAlgebra.coeff_pElementSum_mul_pRegularSum /-! **部分群への数え上げの移送** (`GroupTheory/PFactorPairCount`) — `Ω_H(g) ≃ Ω_G(g) ∩ (H×H)` と `H⁰ ≃ G⁰ ∩ H` (位数は包含で不変)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pFactorPairsSubgroupEquiv #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularSubgroupEquiv /-! 🎯🎯🎯 **`Br_Q(e_{B₀}) = e_{b₀}`** (`Modular/KulshammerThirdMain`) — Külshammer 経路の第三主定理: `Q` が `p`-部分群で `g ∈ C_G(Q)` なら `e_{B₀}^G(g) = e_{b₀}^{C_G(Q)}(g)`。(6.14) を数え上げの形に直し、 Problem (6.1) の 2 本の合同で `G` 側と `C_G(Q)` 側を突き合わせる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.card_filter_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_card_pRegular_mul_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_pRegular_mul_coeff_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_centralizer /-! 🎯🎯🎯 **第三主定理の逆向き** (`Modular/KulshammerThirdMain`) — `Q` が可換 `p`-部分群のとき、`C_G(Q)` のブロック `b` が `b^G = B₀` なら `b = b₀`。 `Br_Q(e_{B₀}) = e_{b₀}` を誘導中心指標に食わせて `λ_b(e_{b₀}) = δ_{b b₀}` にする。 BS が実際に使う向きで、Okuyama (6.6) / height 理論を通らない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerTrunc_eq_of_coeff_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_blockOfCentralCharacter_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_inducedBlockOfNormalizer_eq /-! **Navarro (3.18) (b) ⟹ (c)** (`Modular/DefectZeroDegree`) — `p`-singular元で消える指標は次数が `|G|_p` で割れる。Sylow `S` 上の指標和が `χ(1)` に潰れ、他方 `|S|·dim V^S` に等しい。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordProj_dvd_finrank_of_character_eq_zero /-! 🎯🎯 **主ブロックの指標は `p`-singular 元で全消滅しない** (`Modular/PrincipalBlockNonvanishing`) — `p ∣ |G|` と `χ ∈ Irr(B₀)` なら `χ(x) ≠ 0` なる `p`-singular `x` がある。 `ω_χ(Ĝ⁰)` が 𝒪 の単元 (`residue = λ_{B₀}(Ĝ⁰) = |G⁰|*`、`p ∤ |G⁰|`) であることから `dim V^G` で場合分け。Navarro (3.18)(d)⟹(e) (Thm (3.9)) を通らない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mulVec_eq_augmentation_smul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.forall_apply_eq_of_invariants_ne_bot #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_centralScalar_pRegularSum_of_blockOfIrr_principal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.not_dvd_card_of_character_eq_zero_of_pSingular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_not_isPRegular_character_ne_zero /-! **Problem (6.1) を中間部分群 `Q C_G(Q) ≤ H` の中で** (`GroupTheory/PFactorPairCount`) — `|Ω_H(g)| ≡ |Ω_{C_G(Q)}(g)|` と `|H⁰| ≡ |C_G(Q)⁰|` (mod p)。第三主定理を `H = C_G(Q)` 固定でなく一般の `H` で出すための数え上げ側。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.card_pFactorPairsMem_modEq_centralizer #assert_only_allowed_axioms OddOrder.GroupTheory.card_pRegularMem_modEq_centralizer /-! **(4.14) の `H`-類版** (`Modular/BlockCharacterOffCentralizer`) — `C_G(P)` と交わらない `H`-類の類和は `π_H` で消える ⟹ `H` のブロック指標は `C_G(P)` 上の係数だけで決まる。第三主定理を一般の中間部分群で出すための部品。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pi_classSum_subgroup_eq_zero_of_notMem_centralizer #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_eq_of_coeff_eq_on_centralizer /-! **中間部分群版の突き合わせ** (`Modular/KulshammerThirdMain`) — `Q C_G(Q) ≤ H` について `e_{b₀}^H(g) = e_{b₀}^{C_G(Q)}(g)` (`g ∈ C_G(Q)`)。 第三主定理を `H = C_G(Q)` 固定でなく一般の `H` で出すための第 2 段。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_card_pRegular_mul_eq_intermediate #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_centralizer_intermediate /-! 🎯🎯🎯 **第三主定理の逆向き、一般の中間部分群版** (`Modular/KulshammerThirdMain`) — `Q C_G(Q) ≤ H ≤ N_G(Q)` で `b^G = B₀(G)` なら `b = B₀(H)`。 `Br_Q(e_{B₀(G)})` と `e_{B₀(H)}` が `C_G(Q)` 上で同係数であること (段 153+160) と、 ブロック指標が `C_G(Q)` 上の係数だけで決まること (段 159) の 2 本で閉じる。 ⚠ `H = C_G(Q)` 版 (段 157) とは仮説が非可換 — あちらは `Q ≤ H` を要さない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_blockOfCentralCharacter_eq_intermediate #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_inducedBlockOfNormalizer_eq_intermediate /-! **`p`-section は `G` を分割する** (`Modular/PSection`) — `u ∈ S(u_p)` かつ `S(x₁) ∩ S(x₂) ≠ ∅ ⟹ IsConj x₁ x₂`。 (5.12)/(5.13) の内積計算がこの分割の上で走る。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_pSection_pPart #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isConj_of_mem_pSection_of_mem_pSection #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pSection_eq_of_isConj /-! **`Φ^x_μ`** (`Modular/SectionProjectiveCharacter`) — `C_G(x)` の射影不可分指標を `p`-section `S(x)` へ移送してゼロ拡張した `G` 上の類関数。Navarro (5.13) の証明の主役。 well-defined 性は `isConj_centralizer_of_isConj_mul` (助変数化の単射性)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.projectiveIndecomposableCharacter_eq_of_isConj_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionProjectiveCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionProjectiveCharacter_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionProjectiveCharacter_eq_of_isConj /-! **`C_G(xy) = C_G(x) ⊓ C_G(y)`** (`Modular/PSection`) — `p`-部分と `p'`-部分は どちらも `xy` の冪なので中心化群が分解する。`p`-section 上の和を `C_G(x)` の `p`-正則類上の和に書き直すときの重みの一致がこれ。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.commute_pPart_of_commute #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralizerOf_mul_eq_inf /-! **助変数化の単射性の「具体的な共役元」版** (`Modular/PSection`) — `g(xy₁)g⁻¹ = xy₂` なら `g` 自身が `C_G(x)` に入り `g y₁ g⁻¹ = y₂`。 `isConj_centralizer_of_isConj_mul` はこの系。(5.13) の内積計算でファイバーを `C_G(x)` と同定するのに使う。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_centralizerOf_and_conj_of_conj_mul /-! **`p`-section の助変数化のファイバー** (`Modular/PSection`) — `(g,y) ↦ g(xy)g⁻¹` の `u ∈ S(x)` 上のファイバーは `C_G(x)` と全単射 (他の逆像は `(g₀h, h⁻¹y₀h)`, `h ∈ C_G(x)` のみ)。 (5.13) の内積で `S(x)` 上の和を `C_G(x)⁰` 上の和へ書き直す核。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.fiberEquivCentralizerOf #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_fiber_eq_card_centralizerOf /-! 🎯 **`p`-section 上の和の再添字づけ** (`Modular/PSectionSum`) — 類関数 `f` について `|C_G(x)| • Σ_{u∈S(x)} f(u) = |G| • Σ_{y∈C_G(x)⁰} f(xy)`。 二重和 `Σ_{(g,y)} f(g(xy)g⁻¹)` を 2 通りに読む (類関数性 / ファイバー濃度 段 166)。 Navarro (5.13) が暗黙に行う付け替えで、類代表を選ばないので類の大きさの計算が要らない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_centralizerOf_smul_sum_pSection /-! 🎯 **`Φ^x_μ` に対する内積和の潰し** (`Modular/SectionProjectiveCharacter`) — `Φ^x_μ(u)·χ(u⁻¹)` は `S(x)` の外で 0 の類関数なので、段 167 の再添字づけで `Σ_{y∈C_G(x)⁰} Φ_μ(y)·χ((xy)⁻¹)` に落ちる。Navarro (5.13) の `[Φ^x_μ, χ]` 計算の前半。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_centralizerOf_smul_sum_sectionProjectiveCharacter /-! **`C_G(x⁻¹) = C_G(x)`** (`Modular/GeneralizedDecomposition`) — `x` と `x⁻¹` と可換であることは同値なので、`x` と `x⁻¹` の一般化分解数は 同じ `IBr(C_G(x))` で添字づけられる ((5.13) の内積計算で使う)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralizerOf_inv /-! 🎯 **`[Φ_μ, F]⁰ = d_μ`** (`Modular/CartanInverse`) — `p`-正則類上で `F(y) = Σ_τ d_τ τ(y⁻¹)` と展開される任意の `F` について `Σ_{y∈G⁰} Φ_μ(y) F(y) = |G| d_μ`。Navarro (2.13) `[Φ_θ,φ]⁰ = δ` の下流での唯一の使い方で、 和の範囲を `p`-正則性で特徴づけた抽象 `Finset` で受けるので、呼び出し側が `pairingZero` の `Decidable` インスタンスに合わせる必要がない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_projectiveIndecomposableCharacter_mul_eq /-! 🎯🎯 **内積 `[Φ^x_μ, χ] = d^{x⁻¹}_{χμ}`** (`Modular/SectionProjectiveCharacter`) — Navarro (5.13) の証明の内積計算。`x⁻¹` 側の分裂データを持ち込まず、係数族 `d` を引数で受けて その特徴づけ `Σ_τ d_τ μ_τ(y⁻¹) = χ((xy)⁻¹)` を `C_G(x)` の中だけで書く (`C_G(x⁻¹) = C_G(x)` を型の等式でなく部分群の等式として使う)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inner_sectionProjectiveCharacter_eq /-! **`|C_G(xy)| = |C_{C_G(x)}(y)|`** (`Modular/PSection`) — 段 164 `C_G(xy) = C_G(x) ⊓ C_G(y)` の濃度版。`C_G(x)` の中で取った `y` の中心化群が、`G` の中の `C_G(x) ⊓ C_G(y)` に一致する。 第二直交関係を剰余類 `x C_G(x)⁰` 上で読んだときに出る類の重み。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_centralizerOf_mul_eq_card_centralizer_subtype /-! **共役類上の類関数の和と `|class(w)|·|C_G(w)| = |G|`** (`Modular/OrdinaryColumnOrthogonality`) — 共役で切り出された任意の `Finset` の形で述べる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_eq_card_smul_of_forall_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_mul_card_centralizer_of_forall_isConj /-! 🎯 **`|C_G(x)| d^x_{χφ} = Σ_{z∈C_G(x)⁰} Φ_φ(z) χ(x z⁻¹)`** (`Modular/GeneralizedDecompositionOrthogonality`) — 一般化分解数の内積表示。 (5.1) の定義式 `χ(x z⁻¹) = Σ_τ d^x_{χτ} τ(z⁻¹)` を代入して `[Φ_φ, τ]⁰ = δ` で潰す。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_centralizerOf_mul_generalizedDecompositionNumber /-! 🎯🎯 **`Σ_{χ∈Irr(G)} χ((xy)⁻¹) d^x_{χφ} = Φ_φ(y⁻¹)`** (`Modular/GeneralizedDecompositionOrthogonality`) — 左辺は Fourier 係数が `d^x_{·φ}` である `G` の類関数 (= `Φ^{x⁻¹}_φ`) の値だが、その関数を作らずに計算する: 各 `d^x_{χφ}` を上の内積表示で 展開し、`G` の**第二直交関係**を `Σ_χ χ((xy)⁻¹) χ(x z⁻¹)` に適用する。生き残る `z` は `y⁻¹` の `C_G(x)`-共役ちょうどで、そこで `Φ_φ` は定数。第二直交が出す重み `|C_G(xy)|` が その類の大きさを `|C_G(x)|` に対して打ち消す。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_mul_generalizedDecompositionNumber /-! 🎯🎯🎯 **Navarro (5.13)(b)**: `Σ_{χ∈Irr(G)} d^{x⁻¹}_{χμ} · d^x_{χφ} = c_{μφ}` (`Modular/GeneralizedDecompositionOrthogonality`) — 一般化分解数の直交性。 抽象分裂体には複素共役が無いので、教科書の `conj(d^x_{χμ})` は `d^{x⁻¹}_{χμ}` に読み替える (Brauer 指標が `μ(y⁻¹) = conj(μ(y))` を満たすことによる)。`x⁻¹` 側の数は `C_G(x)` の中で書いた 定義式を満たす族 `dinv` として受け取るので、`C_G(x⁻¹) = C_G(x)` に沿った分裂データの移送が要らない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_generalizedDecompositionNumber_eq_cartanMatrix /-! **`IBr(G)` の線型独立性** (`Modular/BrauerBasis`) — `p`-正則元上で消える一次結合は 係数がすべて 0。`existsUnique_coeff_irreducibleBrauerCharacter` の一意性を零類関数に適用しただけ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_irreducibleBrauerCharacter_eq_zero /-! 🎯 **`Φ^{y⁻¹}_φ` は `S(y⁻¹)` の外で消える** (`Modular/GeneralizedDecompositionOrthogonality`) — `v⁻¹ ∉ S(y)` なら `Σ_{χ∈Irr(G)} χ(v) d^y_{χφ} = 0`。 `Σ_φ (…) φ(w)` を (5.1) の定義式で展開すると `Σ_χ χ(v) χ(y w)` になり、`y w ∈ S(y)` かつ `v⁻¹ ∉ S(y)` なので第二直交関係で 0。あとは `IBr` の線型独立性。 ⚠ 射影不可分指標を使わないので `C_G(y)` の Wedderburn 分解 (`eY`) は不要。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_mul_generalizedDecompositionNumber_eq_zero /-! 🎯🎯 **Navarro (5.13)(a) 前半**: `x`, `y` が共役でない `p`-元なら `Σ_{χ∈Irr(G)} d^{x⁻¹}_{χμ} · d^y_{χφ} = 0` (`Modular/GeneralizedDecompositionOrthogonality`)。 共役でない `p`-元の `p`-section は交わらない、という一点で落ちる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_generalizedDecompositionNumber_eq_zero /-! 🎯🎯 **`p`-section は共役類を分割する** (`Modular/PSectionClassCount`) — Navarro (5.12) の証明の出発点 `k(G) = Σ_i |IBr(C_G(x_i))|`。 `p`-部分の類が `[x]` である `G`-類は `C_G(x)` の `p`-正則類と全単射 (`[y] ↦ [x y]`)。 全射性は代表元の `p`-部分を `x` へ移してから `p`/`p'` 分解、単射性は `isConj_centralizer_of_isConj_mul`。⚠ `p`-元類の代表は選ばない (和は類自身の上で走る)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pSectionClassEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_conjClasses_eq_sum_card_pRegularClass /-! 🎯 **ブロック分割された正則行列のブロックは正方** (`Algebra/BlockPartitionedMatrix`) — 行を `f`、列を `g` で分割し、対角ブロック外が 0 の正方行列の行列式が非零なら 各ブロックの大きさは一致する。証明は rank 論法でなく **Leibniz 展開**: 行列式が非零なら `M (σ j) j ≠ 0` を全 `j` で満たす置換 `σ` が存在し、 その `σ` が 2 つの分割をブロックごとに突き合わせる。 Navarro (5.12) の「`J` は正則だから各 `J_{B_i}` は正方」の段。 -/ #assert_only_allowed_axioms OddOrder.Matrix.exists_perm_forall_ne_zero #assert_only_allowed_axioms OddOrder.Matrix.card_eq_card_of_det_ne_zero /-! 🎯 **`E = J · diag(B)`** (`Modular/GeneralizedDecompositionMatrix`) — 一般化分解行列 `J` (行 `Irr(G)`、列 `(D, μ)`) と `p`-section 助変数化で読んだ通常指標表 `E`。 中身は (5.1) の定義式 `χ(x_D z) = Σ_μ d^{x_D}_{χμ} μ(z)` を行列の言葉に直したもの。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionCharacterMatrix_eq_mul_blockDiagonal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_det_blockDiagonal_brauerCharacterMatrix /-! **`J` の列は `G` の共役類** (`Modular/GeneralizedDecompositionMatrix`) — 段 174 の `pSectionClassEquiv` を `IBr(C_G(x_D))` の `p`-正則類による添字づけへ移送したもの。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionClassIndexEquiv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sectionCharacterMatrix_submatrix /-! 🎯🎯 **一般化分解行列 `J` は正則** (`Modular/GeneralizedDecompositionMatrix`) — Navarro (5.12) の "in particular, notice that the matrix `J` is regular"。 ⚠ 教科書は `J̄ᵗ J = diag(Cartan)` (= (5.13)) から出すが、本経路は **(5.13) も `x⁻¹` 側の数も使わない**: `E` は `G` の通常指標表 (列を並べ替えたもの) ゆえ正則、 各 Brauer 指標表 `B` も正則、`E = J·diag(B)` ゆえ `J` も正則。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isUnit_det_generalizedDecompositionMatrix /-! 🎯 **Navarro (5.8) の `Irr(G)` 版** (`Modular/SecondMainBlockOfIrr`) — 第二主定理のブロック形は「表現 + 不変束」で述べられているが、通常既約は正準な束 (`wedderburnLattice`) を持ちそのブロックが `blockOfIrr` なので、何も補わずに特殊化できる: `d^x_{χ_i μ} = 0` (`μ` のブロックが `χ_i` のブロックを誘導しない限り)。 これが一般化分解行列のブロック対角性。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero_of_blockOfIrr_ne /-! 🎯🎯🎯 **Navarro (5.12)**: `k(B) = Σ_i Σ_{b ∈ Bl(C_G(x_i)), b^G = B} l(b)` (`Modular/BlockCharacterCount`) — ブロック `B` の通常既約指標の個数は、`p`-元の `G`-類の 代表の中心化群のブロックで `B` を誘導するものに属する既約 Brauer 指標の総数に等しい。 証明は Navarro のものだが 2 箇所を短縮: - `J` の正則性は `E = J·diag(B)` (`E` = 通常指標表) から。教科書の `J̄ᵗ J = diag(Cartan)` (= (5.13)) を経由しない。 - 「`J` が正則だから各 `J_{B_i}` は正方」は rank 論法でなく Leibniz 展開 (`OddOrder.Matrix.card_eq_card_of_det_ne_zero`)。 ブロック対角性は (5.8) の `Irr(G)` 版。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_blockOfIrr_eq_card_inducedBlockOfCentralizer /-! 🎯 **involution での指標値は有理整数** (`RepresentationTheory/CharacterInvolution`) — `t² = 1` なら `ρ t` は対合なので `(1 + ρ t)/2` は `+1`-固有空間への射影で `χ(t) = 2·dim V₊ − dim V`。標数 ≠ 2 の任意の体で成り立ち、代数的整数論も 1 の冪根も要らない。 ⚠ Navarro (5.1) 直後の注はもっと強く「`d^x_{χφ} ∈ ℤ[ζ]` (`ζ` は `o(x)` 乗根)」と述べるが、 (7.2) がそれを使うのは involution `t` に対する `d^t_{χ1} = χ(t)` の形だけなので、 本補題が直接それを供給する (制限指標の分解機構が不要になる)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_eq_of_mul_self_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_intCast_character_of_mul_self_eq_one /-! 🎯 **issue 9506 段 333a**: 対合での一般化分解数の整数性 — 線型代数の部分。 `RepresentationTheory/CharacterInvolution` に 2 本追加: * `trace_comp_eq_trace_restrict_range` — **`tr(P f) = tr(f|_{im P})`** (`P` 冪等、 `f` が `im P` を保つ)。`P∘f = ι ∘ (P∘f)ᶜ` と `trace_comp_comm'` だけ (可換性は不要)。 * `character_involution_mul_eq` — 🎯 **`χ(t y) = 2·χ_{V₊}(y) − χ(y)`** (`t` 対合、`y` は `t` と可換、`V₊ = im (1+σt)/2`)。 ⟹ 右辺は両方とも `C_G(t)` の**通常指標**なので、`p`-正則類上では両方 `IBr(C_G(t))` の `ℕ`-結合。よって `d^t_{χφ}` は自然数の差 = **有理整数**。 (原文 (5.1) 後の注は `d^x_{χφ} ∈ ℤ[ζ_{o(x)}]` を主張するが、対合なら `ζ = −1` で `ℤ`。) -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.trace_comp_eq_trace_restrict_range #assert_only_allowed_axioms OddOrder.RepresentationTheory.range_involutionProj_invariant #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_involution_mul_eq /-! 🎯 **Klein 四元群の位数 3 の自己同型は 3 つの involution を巡回する** (`GroupTheory/KleinFourAutomorphism`) — Navarro (7.2) 第 1 部で `N_G(P)/C_G(P)` の位数が 3 のとき `P` の 3 つの involution が `G`-共役になる根拠。 `Aut(Z₂×Z₂) ≅ Sym(3)` 全体は作らず、必要な巡回性だけを出す。 土台は「Klein 四元群は任意の相異なる involution `a`, `b` に対し `{1, a, b, ab}`」。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.eq_one_or_eq_or_eq_or_eq_of_klein #assert_only_allowed_axioms OddOrder.GroupTheory.eq_of_fixed_of_klein #assert_only_allowed_axioms OddOrder.GroupTheory.eq_or_eq_or_eq_iterate_of_klein /-! 🎯 **奇位数の非自明な自己準同型は involution 上で推移的** (`GroupTheory/KleinFourAutomorphism`) — Navarro (7.2) が使う形。 `N_G(P)/C_G(P)` は奇位数なので、`P` を中心化しない `g ∈ N_G(P)` による共役は `P` の 3 つの involution を巡回させる。 `f` が `a` を動かすのに `f² a = a` なら `f²` は相異なる 2 つの involution `a`, `f a` を 固定して恒等になり、対合の奇数回反復は自分自身なので `f` が恒等になってしまう。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.eq_of_fixed_two_of_klein #assert_only_allowed_axioms OddOrder.GroupTheory.forall_cube_eq_self_of_klein #assert_only_allowed_axioms OddOrder.GroupTheory.eq_or_eq_or_eq_iterate_of_odd_of_klein /-! 🎯🎯 **Klein 四元群 Sylow-2 なら involution の類は 1 個** (`GroupTheory/KleinFourSylowFusion`) — Navarro (7.2) 第 1 部の主内容。`N_G(P)` に `P` を中心化しない奇位数の元があれば `G` の任意の 2 つの involution は共役。任意の involution は Sylow で `P` に共役に移り (`exists_conj_mem_sylow_of_mul_self_eq_one`)、`P` の 3 つの involution は段 180 で巡回される。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_conj_mem_sylow_of_mul_self_eq_one #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_of_klein_sylow /-! 🎯🎯 **Navarro (7.2) 第 1 部**: `P` が Klein 四元群 Sylow-2 で `N_G(P)` が `P` を 中心化しないなら `G` の involution の類は 1 個 (`GroupTheory/KleinFourSylowFusion`)。 ⚠ 証人は**奇位数に取り直せる** (`exists_odd_not_centralizes`) — 任意の `g ∈ N_G(P)` の 2-部分は `P` の唯一性 (`mem_of_isPElement_of_mem_normalizer`) から `P` に入り、`P` は可換なので `P` を中心化する。動かしているのは `2'`-部分。これで通常の 「`|N_G(P) : C_G(P)|` は奇数」の勘定 (relindex/Sylow 指数) を回避できる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.mem_of_isPElement_of_mem_normalizer #assert_only_allowed_axioms OddOrder.GroupTheory.exists_odd_not_centralizes #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_of_klein_sylow_of_not_centralizes /-! 🎯🎯 **共役でない involution が 2 つあれば正規 2-補群** (`GroupTheory/KleinFourNormalComplement`) — Navarro (7.2) 第 1 部の対偶で、Brauer–Suzuki の証明が実際に使う向き。 `isConj_of_klein_sylow_of_not_centralizes` の対偶で `N_G(P) ≤ C_G(P)` が出て、 既存の Burnside (`Isaacs.Ch05.hasNormalPComplement_of_sylow_normalizer_le_centralizer`) が効く。 `exists_not_isConj_of_mem_center` = 中心的 involution `t` の類は `{t}` なので Klein 四元群 Sylow-2 を持つ群は単一類になれない ((7.2) が `C = C_G(t)` に適用する形)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.hasNormalPComplement_of_not_isConj #assert_only_allowed_axioms OddOrder.GroupTheory.exists_not_isConj_of_mem_center /-! 🎯 **分解行列 `D` はブロック対角** (`Modular/DecompositionBlockDiagonal`) — `d_{χφ} ≠ 0` なら `φ` は `χ` のブロックに入る。`CartanBlockDiagonal` の 「同じ `χ` に現れる 2 つは中心指標が等しい」を、2 つのブロック分割を結ぶ形へ強めたもの。 中心は `χ` の束の還元に `λ_χ` で作用する (`asAlgebraHom_reduction_center_eq` = `exists_smul_id_asAlgebraHom_reduction` の witness を明示した版) ので、 `centralCharacterAlg_eq_of_decompositionNumber_ne_zero` からその scalar が `λ_φ` と分かり、 `eq_blockOfCentralCharacter` で中心指標の一致がブロックの一致になる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_reduction_center_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockOfIrr_eq_of_decompositionMatrix_ne_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.decompositionMatrix_eq_zero_of_blockOfIrr_ne /-! 🎯🎯 **Navarro (6.13) の Cartan 行列版**: 正規 `p`-補群 `N` を持つ群では `|N| · c_{φ₀φ₀} = |G|`、つまり `B₀` の Cartan 行列は `1 × 1` の `(|G|_p)` (`Modular/PrincipalBlockCartanEntry`) — (7.2) が `C_G(t)` に適用してくる形。 既存の `card_mul_sum_sq_principalBlock` (`Σ_{χ∈Irr(B₀)} χ(1)² = |G|_p`) と同じ主張であることは `D` の第 `φ₀` 列を決めれば分かる: ブロック対角性で `Irr(B₀)` の外では 0、 `Irr(B₀)` の中では `χ⁰` を `1` で展開して `d_{χφ₀} = χ(1)` (他の列は `φ₀` が `B₀` の唯一の 既約 Brauer 指標ゆえ消え、`φ₀(1) = 1`)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.decompositionMatrix_principalBlock_eq_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_mul_cartanMatrix_principalBlock /-! 🎯🎯 **Navarro (5.13)(b) の対合版**: `Σ_{χ∈Irr(G)} (d^t_{χφ})² = c_{φφ}` (`Modular/GeneralizedDecompositionInvolution`)。(5.13)(b) は `x⁻¹` 側の数を別の族 `dinv` として 受け取るが、`t` が involution なら `t⁻¹ = t` ゆえ**同じ族**が条件を満たす: `y ∈ C_G(t)` に対し `(t y)⁻¹ = y⁻¹ t⁻¹ = y⁻¹ t = t y⁻¹` (`inv_mul_eq_mul_inv_of_mul_self_eq_one`) なので、`y⁻¹` での定義式がそのまま `χ((t y)⁻¹)` の展開になる。⟹ 右辺が Cartan 行列の対角成分になり、 段 185 の `card_mul_cartanMatrix_principalBlock` と噛み合う ((7.2) 原文 p.132 の `Σ_{χ∈Irr(B₀)} |d^t_{χ1}|² = 4`)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inv_mul_eq_mul_inv_of_mul_self_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_sq_generalizedDecompositionNumber_of_involution /-! 🎯🎯 **`χ(x y) = d^x_{χ φ₀}`** — `C_G(x)` が正規 `p`-補群を持つときの `p`-section 上の値 (`Modular/SecondMainPrincipalBlock`)。Navarro (7.2) が「(5.8) と第三主定理より `χ(ts) = d^t_{χ 1_{C⁰}}`」と書く段。3 つが合わさる: - **第二主定理** (`generalizedDecompositionNumber_eq_zero_of_blockOfIrr_ne`): `d^x_{χμ} = 0` (`μ` のブロックが `χ` のブロックを誘導しない限り); - **第三主定理の逆** (Külshammer 経路、`eq_principalBlock_of_inducedBlockOfCentralizer_eq` = 既存の `..._intermediate` を `Q = ⟨x⟩` へ特殊化したもの); - **(6.13)**: `C_G(x)` が正規 `p`-補群を持てば `IBr(b₀) = {1_{C⁰}}` で、その Brauer 指標は `p`-正則類上で定数 1 (`irreducibleBrauerCharacter_principalBlock_eq_one`)。 ⟹ 展開 `χ(xy) = Σ_μ d^x_{χμ} μ(y)` が `μ = φ₀` の 1 項に潰れる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.irreducibleBrauerCharacter_principalBlock_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_inducedBlockOfCentralizer_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_eq_zero_of_ne_principal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_mul_eq_generalizedDecompositionNumber /-! 🎯 **第三主定理の易しい向きの `p`-元版 + `Irr(B₀)` の外での消滅** (`Modular/SecondMainPrincipalBlock`)。`inducedBlockOfCentralizer_principalBlock` は既存の `inducedBlockOfNormalizer_principalBlock` を `Q = ⟨x⟩` へ特殊化しただけ。これを (5.8) に入れると `χ_i ∉ Irr(B₀(G))` に対し `d^x_{χ_i φ₀} = 0` — つまり段 186 の平方和が `Irr(B₀)` 上の和になる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedBlockOfCentralizer_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_principalBlock_eq_zero_of_blockOfIrr_ne /-! 🎯 **平方和が 4 で 1 を含むなら全項が ±1 で項数 4** (`Algebra/SumSquaresFour`) — (7.2) の算術段。`Σ_i a_i² = 4` (`a_i ∈ ℤ`, 全て非零) は「4 項の ±1」か「1 項の ±2」しかなく、 `a_{i₀} = 1` が後者を排除する。⟹ `Irr(B₀) = {1_G, χ₁, χ₂, χ₃}` と `χ_i(t) = ±1`。 -/ #assert_only_allowed_axioms OddOrder.Algebra.eq_one_or_neg_one_of_sum_sq_eq_four #assert_only_allowed_axioms OddOrder.Algebra.card_eq_four_of_sum_sq_eq_four /-! 🎯🎯 **`χ` は `p`-特異元上で定数 `d^x_{χφ₀}` + その非零性** (`Modular/SecondMainPrincipalBlock`)。「非自明な `p`-元は全て `x` に共役」という仮定の下で `u = u_p u_{p'}` を `c` で戻せば `c⁻¹ u c = x (c⁻¹ u_{p'} c)` となり段 187 が使える。 非零性は対偶: `d^x_{χφ₀} = 0` なら `χ` が全 `p`-特異元で消え、Navarro (3.18) (`not_dvd_card_of_character_eq_zero_of_pSingular`) が `p ∤ |G|` を出すが、`x ≠ 1` は `p`-元。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_eq_generalizedDecompositionNumber_of_not_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumber_ne_zero_of_blockOfIrr_principal /-! 🎯🎯🎯 **Navarro (7.2) 指標側**: `|Irr(B₀)| = 4` かつ `χ(t) = ±1` (`Modular/PrincipalBlockInvolution`)。仮定は「非自明な 2-元は全て `t` に共役」 (= Klein 四元群 Sylow-2 + involution の類 1 個) と `C_G(t)` が正規 2-補群を持つこと。 - `sum_sq_character_involution_eq_cartanMatrix`: `Σ_{χ∈Irr(B₀)} χ(t)² = c_{φ₀φ₀}` (段 186 の対合版 (5.13)(b) + 段 188 の `Irr(B₀)` 外での消滅 + 段 187 を `y = 1` で読む)。 - `nontrivial_blockOfIrr_principal`: 弱ブロック直交性 `Σ_{χ∈Irr(B₀)} χ(1)χ(t) = 0` (Navarro (5.11) の `h = 1`) は `|Irr(B₀)| = 1` を許さない — 単元なら `χ(t) = 0` になり 段 190 に反する。⟹ 自明指標の添字を repo から取り出す必要が無い。 - 組み立て: `χ(t)` は有理整数 (段 178) で非零 (段 190)、平方和は `c_{φ₀φ₀} = 4`。 `Algebra/SumSquaresFour` が `|Irr(B₀)| = 4` と `χ(t) = ±1` を出す。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_sq_character_involution_eq_cartanMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.nontrivial_blockOfIrr_principal #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_blockOfIrr_principal_eq_four_and_character_involution /-! 🎯🎯 **Navarro (7.2): `χ(1) ≡ ε mod 4`** (`Modular/PrincipalBlockInvolution`)。 Klein 四元群 `P` (非自明元は全て 2-特異) の上で `[(χ)_P, 1_P] = (χ(1) + 3ε)/4` は `P`-不変部分空間の次元ゆえ自然数: `χ(1) + 3ε = |P|·dim V^P = 4·dim V^P` (既存 `sum_character_eq_card_mul_finrank_invariants` を制限表現 `ρ|_P` に適用)。 `ε = χ(t)` は段 189 で `p`-特異元上の共通値。標数 0 なので ℤ の合同式に落ちる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.intCast_card_add_three_mul_character_involution #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_modEq_character_involution /-! 🎯🎯 **`Irr(B₀)` の `G⁰` 上の関係式は高々 1 次元** (`Modular/PrincipalBlockInvolution`) — これが (7.4) の「3 元集合が basic set」を支える所で、**(5.12) も `C_G(1) = ⊤` の移送も要らない**。 `Σ_χ a_χ χ` が `G⁰` で消えるとき、`p`-特異元上では各 `χ ∈ Irr(B₀)` が `χ(t)` を取る (`character_eq_character_involution_of_not_isPRegular` = 段 189 + 段 187 の `y=1`) ので `Σ a_χ χ` は `G` 全体で定数 `c = Σ a_χ χ(t)` 倍の 2-特異元指示関数になる。 ⟹ `c = 0` なら `Irr(G)` の線型独立性で `a = 0` (`eq_zero_of_vanishing_on_pRegular`)、 一般には `c' • a = c • a'` (`smul_eq_smul_of_vanishing_on_pRegular`)。 つまり関係式の空間は `a ↦ c` で単射に埋まるので高々 1 次元、 `|Irr(B₀)| = 4` と合わせて `{χ⁰}` の張る格子は階数 3。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_eq_character_involution_of_not_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_vanishing_on_pRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.smul_eq_smul_of_vanishing_on_pRegular /-! 🎯🎯 **(7.4) の独立性部分**: `Irr(B₀)` から 1 つ落とせば `G⁰` 上で線型独立 (`Modular/PrincipalBlockInvolution`)。 - `sum_character_mul_character_involution_eq_zero` = `Σ_{χ∈Irr(B₀)} χ(s)χ(t) = 0` (`s` は `p`-正則)。原文 p.133 の `1 + ε₁χ₁(s) + ε₂χ₂(s) + ε₃χ₃(s) = 0` を自明指標を 名指しせずに書いたもの。⚠ (5.11) は `C_G(pPart p g)` 上の datum を要求して型が合わないので、 代わりに既存の `sum_character_mul_generalizedDecompositionNumber_eq_zero` (`Φ^{t⁻¹}_{φ₀}` は `t` の section の外で消える) を `v = s` で使う — こちらは `C_G(t)` 上の datum のままで通る。 - `eq_zero_of_vanishing_on_pRegular_of_apply_eq_zero`: 関係式の空間は `(χ(t))_{χ∈Irr(B₀)}` の張る直線 (段 194) で、そのベクトルは**どの座標も非零** (段 190)。 よって `j₀` 座標が 0 の関係式は 0。`|Irr(B₀)| = 4` と合わせ、 **4 つの `χ⁰` のうち任意の 3 つが basic set** ((7.4) の独立性)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_involution_eq_generalizedDecompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_mul_character_involution_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_vanishing_on_pRegular_of_apply_eq_zero /-! 🎯🎯 **(5.13)(b) を任意の `p`-元へ** (`Modular/GeneralizedDecompositionInverse`) — (5.13)(b) は `x⁻¹` 側の数を「`C_G(x)` の中で読んだ」抽象族 `dinv` として受け取る (`centralizerOf x⁻¹ = centralizerOf x` が命題的等式なので carrier 型が入れ替えられない) が、 本 leaf はその族を**任意の `x` に対して構成する**: `x⁻¹` は `C_G(x)` を中心化するので `y ↦ χ(x⁻¹ y)` は `C_G(x)` の類関数で、`IBr(C_G(x))` に一意展開される。 `y⁻¹` で読めば `(x y)⁻¹ = x⁻¹ y⁻¹` から `hdinv` がそのまま出る。 ⟹ Brauer–Suzuki の "Analysis at y" (原文 p.140、位数 4 の元) が対合版なしで扱える。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isConj_inv_mul_of_isConj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumberInv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_generalizedDecompositionNumberInv_inv #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_generalizedDecompositionNumberInv_eq_cartanMatrix /-! 🎯🎯 **`Σ_{χ∈Irr(B₀)} χ(x)² = c_{φ₀φ₀}` — `x` が `x⁻¹` に共役なら十分** (`Modular/PrincipalBlockInvolution`)。`x⁻¹ = c x c⁻¹` と書くと `p`-正則な `w ∈ C_G(x)` に対し `χ(x⁻¹ w) = χ(x · c⁻¹wc)` で、これは段 187 より定数 `d^x_{χφ₀}`。 `φ₀` は `p`-正則類上で定数 1 なので、展開の一意性から `d^{x⁻¹}_{χφ₀} = d^x_{χφ₀}`。 ⟹ 対合という仮定は不要で、**四元数群の位数 4 の元** (自分の逆元と共役) にも効く。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumberInv_principalBlock_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_sq_character_eq_cartanMatrix_of_isConj_inv /-! 🎯🎯 **位数 4 (を割る) の実な元での指標値は有理整数** (`RepresentationTheory/CharacterOrderFour`) — BS 本証明 p.140 の 「since the irreducible characters of `P` are integer valued, it follows that `χ_i(y) ∈ ℤ`」。 `y⁴ = 1` なら `u = (ρy + ρy⁻¹)/2` が **`u³ = u`** を満たす (`(A+A³)³ = A³ + 3A⁵ + 3A⁷ + A⁹ = 4(A+A³)`)。よって `e_± = (u² ± u)/2` は冪等で `e₊ − e₋ = u`、`χ(y) + χ(y⁻¹) = 2 tr(u) = 2(dim im e₊ − dim im e₋)`。 `y` が `y⁻¹` に共役 (四元数群の位数 4 の元) なら左辺は `2χ(y)`。 ⚠ 段 178 (対合版) と同じく**代数的整数論も 1 の冪根も使わない** — 標数 ≠ 2 だけ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.pow_three_realProj #assert_only_allowed_axioms OddOrder.RepresentationTheory.isIdempotentElem_realProjPos #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_add_character_inv_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.exists_intCast_character_of_pow_four_eq_one /-! 🎯 **中心的な Sylow `p`-部分群 ⟹ 正規 `p`-補群** (`GroupTheory/CentralSylowComplement`) — `P ≤ Z(G)` なら `C_G(P) = G ⊇ N_G(P)` なので既存の Burnside (`Isaacs.Ch05.hasNormalPComplement_of_sylow_normalizer_le_centralizer`) がそのまま効く。 BS が使う形は `G = C_G(x)`, `P = ⟨x⟩`: `x` は自分の中心化群の中心にいるのでその冪も同様。 原文 p.139-140 は位数 4 の `y` に対しこれを引く (四元数群 `Q₈` には位数 4 の中心元が無いので `C_G(y)` の Sylow-2 は位数 8 になれず、`⟨y⟩` がそれ)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.hasNormalPComplement_of_sylow_le_center #assert_only_allowed_axioms OddOrder.GroupTheory.hasNormalPComplement_centralizer_of_sylow_zpowers /-! 🎯🎯 **Navarro (7.5): basic set に関する一般化分解数** (`Modular/BasicSetDecomposition`)。 basic set `𝓑` は `IBr(b)` から整数行列 `U = (u_{μφ})` (整数逆行列を持つ) で移った基底なので、 原文 p.135 の式 (1) `d^x_{χφ} = Σ_μ d^x_{χμ} u_{μφ}` を**定義**に採ると (7.5) は 既存の `IBr` 版の上の**双線型代数**になる: - (a) `u_{μφ} ≠ 0` なる全ての `μ` で `d^x_{χμ} = 0` なら `d^x_{χφ} = 0` (第二主定理 + `U` のブロック対角性); - (b)(c) 2 列の内積は `IBr` 列の内積行列の `U`-合同 `UᵗcU` (`sum_mul_basicDecompositionNumber`)。段 197 の (5.13)(b) を入れると `UᵗCU`。 ⟹ basic set の選択 (= `U`) は呼び出し側 ((7.4)) の仕事で、格子や基底の型を作らずに済む。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.basicDecompositionNumber_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_basicDecompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_basicDecompositionNumber_eq_cartanMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_basicDecompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_basicDecompositionNumber_eq_character /-! 🎯 **(7.4) の符号正規化**: `Irr(B₀)` のどれかは `χ(t) = −1` (`Modular/PrincipalBlockInvolution`)。段 195 を `s = 1` で読むと `Σ_{χ∈Irr(B₀)} χ(1)χ(t) = 0` で、全て `+1` なら `Σ χ(1) = 0` = 4 個の正整数の和 = 0 で矛盾。 原文 p.134 の「by setting `s = 1` we see that there should be two different signs」。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_character_involution_eq_neg_one /-! 🎯🎯 **各既約 Brauer 指標は通常指標の `K`-結合** (`Modular/BrauerFromOrdinary`) — Navarro Lemma (3.16) の `K` 版。係数は `a_χ = Σ_τ d_{χτ} [τ, μ₀]⁰` で、 `Σ_χ d_{χτ}d_{χμ} = c_{τμ}` (Cartan の定義) と「`([τ,μ]⁰)` が Cartan の逆」 (既存 `sum_cartanMatrix_mul_pairingZero`) から和が `μ₀` に潰れる。 ⟹ (7.3) の基底変換行列 `U` が **`K` 上で存在する**根拠 (basic set は block の `IBr` と 同じ空間を張る)。⚠ `U` の**整数性**は (3.16) 本体で、ここでは示していない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryCombination_eq_irreducibleBrauerCharacter /-! 🎯 **Cartan 行列の逆もブロック対角** (`Modular/BrauerFromOrdinary`) — `([τ,μ]⁰)` は Cartan 行列 `C` の逆で、`C` はブロック対角 (`cartanMatrix_eq_zero_of_centralCharacterAlg_ne`)。ブロック外を 0 にした `P'` も `CᵀP' = 1` を満たす (対角外の項はどちらかの因子が 0) ので、逆の一意性から `P' = P`。 ⟹ 段 204 の結合係数 `a_χ = Σ_τ d_{χτ}[τ,μ₀]⁰` は `χ ∉ Irr(B)` で消える (`d_{χτ} ≠ 0 ⟹ τ ∈ B(χ)` と合わせて)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_irreducibleBrauerCharacter_eq_zero_of_centralCharacterAlg_ne /-! 🎯🎯 **`μ₀ ∈ IBr(B)` は `{χ⁰ : χ ∈ Irr(B)}` の `K`-結合** (`Modular/BrauerFromOrdinary`) — (3.16) の `K` 版の**ブロック局所形**。段 204 の係数 `a_χ = Σ_τ d_{χτ}[τ,μ₀]⁰` は `χ ∉ Irr(B)` で消える: 非零項には `d_{χτ} ≠ 0` (⟹ `τ ∈ B(χ)`、段 184) と `[τ,μ₀]⁰ ≠ 0` (⟹ `τ ∈ B(μ₀)`、段 205) の両方が要る。 ⟹ **basic set は block の `IBr` と同じ `K`-空間を張る** = (7.3) の `U` が `K` 上で存在する。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordinaryCombinationCoeff_eq_zero_of_blockOfIrr_ne #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryCombination_block_eq_irreducibleBrauerCharacter /-! 🎯 **単一の符号関係から basic set が出る** (`Modular/PrincipalBlockBasicSet`) — `{c_i}_{i∈S}` の関係が `Σ_{i∈S} ε_i c_i = 0` (`ε_i² = 1`) 1 本だけなら、添字 `j₀` を 1 つ落とした `𝓑 = {ε_j c_j : j ≠ j₀}` が基底になり、分解行列は `(D_𝓑)_{ij} = δ_{ij} ε_j − δ_{i j₀} ε_{j₀}` (単位行列に `i = j₀` の行 `(−ε_{j₀},…)` を縁付けた形)。 Gram 行列は `C_𝓑 = D_𝓑ᵗD_𝓑 = 1 + δ` (対角 2・非対角 1)。純代数で、モジュラーの語彙を使わない。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_signRelationRow_mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_signRelationRow #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_signRelationRow_mul_signRelationRow /-! 🎯🎯 **Navarro (7.4): `𝓑 = {ε_j χ_j⁰ : j ≠ j₀}` は `B₀` の basic set** (`Modular/PrincipalBlockBasicSet`)。(7.2) の `Irr(B₀) = {χ_0,…,χ_3}`, `χ_i(t) = ε_i = ±1` と 唯一の関係 `Σ_i ε_i χ_i⁰ = 0` (段 195) に上の純代数を当てる: - `χ_i⁰ = Σ_j (D_𝓑)_{ij} η_j` (`η_j = ε_j χ_j⁰`); - (7.3) の変換行列 `U` は段 206 の係数から `u_{μj} = a_{μj} ε_j − a_{μj₀} ε_{j₀}` と書け、 実際に `φ_μ = Σ_j u_{μj} η_j` (`μ ∈ IBr(B₀)`, `g` は p-正則); - `D_𝓑 = D_B U` (両辺が `χ_i⁰` の 𝓑-座標で、𝓑 は `G⁰` 上独立 = 段 202); - ⟹ **`C_𝓑 = UᵗCU = 1 + δ`**。これが (7.5)(c) と噛み合う形。 ⚠ `U` は `K` 値 (整数性 = Navarro (3.16) 本体は未証明)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_involution_mul_self #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_eq_sum_signRelationRow_mul_principalBasicSet #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.principalBasicSetMatrix_eq_zero_of_ne_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_principalBasicSetMatrix_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_principalBasicSetMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_principalBasicSetMatrix_mul_cartanMatrix /-! 🎯 **Navarro (7.6) 第 1 段: `p`-正則元は `G⁰ → (G/P)⁰` で全単射に写る** (`GroupTheory/PRegularQuotient`)。全射は任意の正規部分群で成立 (原像 `g` の `p`-部分は `p`-元かつ `ȳ` の冪 = `p`-正則ゆえ 1)。単射だけが仮説を使い、`G/C_G(P)` が `p`-群なら `p`-正則元は全て `C_G(P)` に入る (`mem_of_isPRegular_of_isPGroup_quotient`) ので、 `x⁻¹y ∈ P` は可換な 2 つの `p`-正則元の積 = `p`-正則、かつ `p`-元 ⟹ 1。 BS が使うのは `P = ⟨t⟩ ≤ Z(C_G(t))` の場合で、仮説は自明 (`commute_of_isPRegular_of_le_center`)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.mem_of_isPRegular_of_isPGroup_quotient #assert_only_allowed_axioms OddOrder.GroupTheory.exists_isPRegular_mk_eq #assert_only_allowed_axioms OddOrder.GroupTheory.eq_of_isPRegular_of_mk_eq #assert_only_allowed_axioms OddOrder.GroupTheory.bijOn_mk_isPRegular /-! 🎯🎯 **Navarro (7.6) 第 2 段: `k[G/N]` の分裂は `k[G]` の分裂から誘導される** (`Modular/QuotientSplitting`)。`N ⊴ G` が `p`-部分群で `char k = p` なら 正規 `p`-部分群は全ての単純 `kG`-加群に自明に作用する (既存 `NormalPSubgroupTrivialAction` = Navarro (2.32)) ので、`g ↦ π(single g 1)` は `N` を潰し `G/N` を経由する。群環の普遍性で `π̄ : k[G/N] →ₐ ∏_j M_{n_j}(k)` が得られ、**添字集合 `ι` と行列サイズが `π` と同一**。 `π̄ ∘ f = π` (`f : kG ↠ k[G/N]`) / 全射性 / `ker π̄ = J(k[G/N])` (`f` が全射で `ker f ≤ ker π = J(kG)` ゆえ `Ring.map_jacobson_of_ker_le`) を証明。 ⟹ 原文の「`φ ↦ φ̄` は `IBr(G) → IBr(Ḡ)` の全単射」= 同じ `ι` で添字付けられること。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotientMap_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotientPi_single #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotientPi_mapDomain #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.quotientPi_surjective #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ker_quotientPi /-! 🎯 **(7.6): `IBr(G)` と `IBr(G/N)` は同じ添字で値も一致** (`Modular/QuotientSplitting`) — `pRegularExponent p (G/N) = pRegularExponent p G` (`GroupTheory/PRegularQuotient`: `|G| = |G/N|·|N|` で `|N|` が `p` 冪ゆえ `p'`-部分が不変) と、ブロック表現の行列が `quotientPi_single` で literally 同一であることから、`φ(g) = φ̄(ḡ)` が Brauer 指標の定義の展開だけで出る。 ⟹ 原文 p.137 の「`φ ↦ φ̄` は `IBr(G) → IBr(Ḡ)` の全単射」。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularExponent_quotient #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockRepresentation_quotientPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.irreducibleBrauerCharacter_quotientPi /-! 🎯 **(7.6) の pairing 恒等式**: `|N| · [a,b]⁰_G = [ā,b̄]⁰_Ḡ` (`Modular/QuotientPairing`)。 段 210 の全単射 `G⁰ → Ḡ⁰` で `p`-正則和 `Σ a(g)b(g⁻¹)` がそのまま移り (`sum_pRegular_quotient`)、違うのは正規化因子だけ。`|G| = |Ḡ|·|N|` を入れると 原文 p.137 の `[φ,θ]⁰_G = (1/|P|)[φ̄,θ̄]⁰_Ḡ` になる。 ⟹ `([φ,θ]⁰)` が Cartan の逆 (既存 `sum_cartanMatrix_mul_pairingZero`) なので `C_B = |P| C_B̄`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_pRegular_quotient #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_mul_pairingZero_quotient /-! 🎯🎯 **(7.6) の Cartan 行列**: `C = |P| C̄` (`Modular/QuotientCartan`)。 段 212 の値の一致 (`irreducibleBrauerCharacter_quotientPi`) を段 213 の pairing 恒等式に食わせると `|N| · [φ,θ]⁰_G = [φ̄,θ̄]⁰_Ḡ` になる。`([μ,φ]⁰)` は Cartan 行列の両側逆 (`sum_cartanMatrix_mul_pairingZero` + 正方性)、しかも逆行列は一意なので、`C` と `|N| C̄` は 同じ行列を逆に持つ ⟹ 一致する。ブロック版 `C_B = |P| C_B̄` は Cartan が block diagonal (`cartanMatrix_eq_zero_of_centralCharacterAlg_ne`) ゆえ添字の制限にすぎない。 ⚠ 通常指標側の分裂 `e'` は `G` のものと無関係 (Irr(Ḡ) ⊊ Irr(G)) で、1 の冪根も別に取ってよい — 共有されるのは `IBr` の添字集合 `ι` だけで、それが (7.6) の内容。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_sum_mul_eq_ite #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_mul_pairingZero_irreducibleBrauerCharacter_quotientPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.natCast_cartanMatrix_quotientPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_sum_mul_cartanMatrix_quotientPi #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_quotientPi /-! 🎯 **Brauer 指標判定の土台 (issue 9508 段 A)**: 一般の体 `K` 上の virtual character `ch(H)` (`RepresentationTheory/VirtualCharacter`)。Gorenstein §4.7 の `ch(G)`。 **分裂データを持たない定義** — Brauer の定理は全ての elementary 部分群 `E ≤ G` を走るので、 各 `E` に `K[E]` の Wedderburn 分裂を与えるのは不要かつ苦痛。分裂が要るのは最後に 「Irr(G) との内積が全部整数 ⟹ 所属」を使う `G` 自身のところだけ。 universe を単一に保つため生成集合は標準空間 `Fin n → K` 上の表現の指標に取り、 `isRepCharacter_of_finite` (基底を取って `transportRepresentation` で移送) で一般性を回復する。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.character_transportRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.isRepCharacter_of_finite #assert_only_allowed_axioms OddOrder.RepresentationTheory.IsRepCharacter.mul #assert_only_allowed_axioms OddOrder.RepresentationTheory.mul_mem_virtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.comp_mem_virtualCharacters /-! 🎯 **Brauer 指標判定の土台 (issue 9508 段 B)**: 指標の双線型内積 `(a,b)_G` とその整数性 (`RepresentationTheory/VirtualCharacterPairing`)、誘導・Frobenius 相互律・projection formula (`RepresentationTheory/VirtualCharacterInduction`)。 `(χ_V, χ_W)_G = dim Hom_{KG}(V,W)` (mathlib `card_inv_mul_sum_char_mul_char_eq_finrank`) から **分裂体も正規直交基底も使わずに**整数性が出る。これと Frobenius 相互律の組合せが 「Ind が指標を指標に送る」を代替し、誘導加群 `K[G] ⊗_{K[H]} V` の構成とトレース計算を不要にする。 projection formula = Gorenstein Lemma 7.2 (`v(G)` が `ch(G)` のイデアルであることの本体)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.charPairing_isRepCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.charPairing_mem_intRange #assert_only_allowed_axioms OddOrder.RepresentationTheory.sum_extendByZero #assert_only_allowed_axioms OddOrder.RepresentationTheory.induceFun_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.induceFun_mul_restrict #assert_only_allowed_axioms OddOrder.RepresentationTheory.charPairing_induceFun /-! 🎯 **Brauer 指標判定の土台 (issue 9508 段 C)**: `v(G) = Σ_{E ∈ 𝒳} ch(E)^*` のイデアル性 (= Gorenstein Lemma 7.3、`RepresentationTheory/BrauerInductionIdeal`) と、分裂 `e` を通した `ch(G)` の**内積による特徴づけ** (`Modular/VirtualCharacterSplitting`)。 族 𝒳 は固定せずパラメータにしてある (Navarro (2.15) は elementary より広い 「p-群 × p'-群」の形の部分群で仮説を検証するので、その方が使いやすい)。 特徴づけは Brauer-Tate 開発で**分裂が要る唯一の場所**で、そこから `Ind_H^G (ch(H)) ⊆ ch(G)` が誘導加群なしに出る (Frobenius 相互律で H 側の内積に移す)。 ⚠ 非分裂体では `(χ_i,χ_i) = dim End(V_i) > 1` になりうるので、内積の整数性は `ℤ[Irr(G)]` より**大きい**格子しか与えない — 分裂は本質的。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.virtualCharacters_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.mul_mem_inducedVirtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.inducedVirtualCharacters_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.charPairing_wedderburnRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_eq_sum_wedderburnRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_sum_charPairing_wedderburnRepresentation #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_charPairing_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_virtualCharacters_iff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.induceFun_mem_virtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedVirtualCharacters_le_virtualCharacters /-! 🎯🎯 **Brauer 指標判定 (issue 9508 段 C 後半) = Gorenstein Lemma 7.4 の降下** (`Modular/BrauerInductionDescent`)。Brauer-Tate の議論は `v_R(G) = ℤ[ω]·v(G)` の中で走る (Lemma 7.6 の `ψ = Σ_i ζ^{-i} ψ_i` は係数が 1 の冪根で整数でない) ので、最後に ℤ へ戻す必要がある。 `ℤ[ω]` の power basis (mathlib `Algebra.adjoin.powerBasis'`) を `K` へ移送して 「`1,ω,…,ω^{n-1}` が ℤ-基底」を得、係数抽出は**内積経由**で行う: `θ = Σ_{j |G|` を取ると (i) 全元が `p`-正則ゆえ p-class = 共役類、 (ii) `P = ⊥` が許容される `p`-部分群、の 2 つが同時に潰れて、各共役類 `C` の指示関数 `χ_C ∈ v_R(G)` (`χ_C(C.out) = |C_G(C.out)|`) が得られる。係数 `θ(C.out)/|G| · [G : C_G(C.out)]` は整数。 **Lemma 7.8** (`Modular/BrauerInductionTheorem`): 各素数 `p` に対し整数値 `χ ∈ v_R(G)` で `χ ≡ 1 (mod p)`。p-正則類ごとに `P ∈ Syl_p(C_G(u_C))` を取ると `χ_C(u_C) = [C_G(u_C):P]` が `p` と素なので mod `p` の逆元で scale して足す。代表元の外へ広げるのに**段 D の Lemma 7.5** (整数値 `ch_R(G)` 元は p-class 上 mod `p` 一定) を使う — そこで `v_R(G) ⊆ ch_R(G)` (`adjoinSpan_mono` + 分裂 `e` 経由の `v(G) ⊆ ch(G)`) が要る。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.conjugateCount_conj #assert_only_allowed_axioms OddOrder.RepresentationTheory.adjoinSpan_mono #assert_only_allowed_axioms OddOrder.RepresentationTheory.mem_adjoinSpan_inducedVirtualCharacters_of_card_dvd #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_congr_one_mod_prime /-! 🎯🎯🎯 **Brauer's characterization of characters (Brauer–Tate) 完成 — issue 9508 段 F/G** (`Modular/BrauerInductionTheorem`)。 **Lemma 7.9** `zsmul_one_mem_inducedVirtualCharacters`: `|G| = m p^a` (`p ∤ m`) ⟹ `m·1_G ∈ v(G)`。段 7.8 の `χ` を `p^a` 乗して `ζ ≡ 1 (mod p^a)` を作り (`v_R(G)` が `ch_R(G)` の イデアル = `mul_mem_adjoinSpan_inducedVirtualCharacters`、mathlib `dvd_sub_pow_of_dvd_sub`)、 `m(1_G − ζ)` の値が `m p^a = |G|` で割れるので **Lemma 7.7**、最後に**段 C の Lemma 7.4** で降下。 **Lemma 7.10** `inducedVirtualCharacters_eq_virtualCharacters`: `v(G) = ch(G)`。 `{k : ℤ | k·1_G ∈ v(G)}` は ℤ のイデアルで、全素数 `q` の `ordCompl[q] |G|` を含む (`one_mem_inducedVirtualCharacters`)。その gcd は 1 — 共通素因数 `q` があれば `q ∣ ordCompl[q] |G|` となって矛盾。`insert 2 (primeFactors |G|)` を使うと `|G| = 1` も一様に落ちる。 **Theorem 7.1** `mem_inducedVirtualCharacters_of_restrict`: 類関数 `θ` の `𝒳` の各元への制限が 仮想指標なら `θ ∈ v(G)`。`θ = 1_G · θ` に**段 B の Lemma 7.2** (projection formula) を当てる (`mul_mem_inducedVirtualCharacters_of_restrict`)。 ⚠ `θ` の類関数性は落とせない — projection formula がそれを要求する。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mul_mem_adjoinSpan_inducedVirtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.zsmul_one_mem_inducedVirtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.one_mem_inducedVirtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.inducedVirtualCharacters_eq_virtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mul_mem_inducedVirtualCharacters_of_restrict #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mem_inducedVirtualCharacters_of_restrict /-! 🎯 **issue 9508 段 H1**: `E = ⟨u⟩P` 上で `x ↦ x_{p'}` が群準同型 (`GroupTheory/PRegularProjection`)。Navarro (2.15) は elementary 部分群上で `θ̂|_{P×Q} = 1_P × θ_Q` と計算するが、これが指標になる根拠が「`p'`-部分への射影が準同型」。 ⚠ **冪零群の Sylow 分解を経由しない**のが要点。`M ≡ 0 (mod |E|_p)`・`M ≡ 1 (mod |E|_{p'})` を CRT で取ると**全ての `z ∈ E` で `z_{p'} = z^M`** (`pRegularPart_eq_pow`) になり、 `(xy)^M = x^M y^M` は `x = u^a v` と `u` の中心性で `P` 上の等式に落ちる。`P` は `q`-群なので **`q = p` なら `v^M = 1`・`q ≠ p` なら `v^M = v`** の 2 択で、どちらも乗法的。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularPart_eq_pow #assert_only_allowed_axioms OddOrder.GroupTheory.exists_pRegularPart_hom #assert_only_allowed_axioms OddOrder.GroupTheory.not_dvd_card_of_forall_isPRegular /-! 🎯 **issue 9508 段 H2a/H2b**: `p ∤ |Q|` なら `k[Q]` は分裂半単純 (`Modular/PPrimeOrderSemisimple`)。Navarro (2.12) (`p'`-群のモジュラー理論 = 通常理論) の出発点。 - `isSemisimpleRing_monoidAlgebra_of_not_dvd_card`: `char k = p ∤ |Q|` ⟹ `|Q|` が `k` で可逆 ⟹ mathlib の Maschke (`IsSemisimpleModule k[G] V`) がそのまま効く。 ⚠ `BrauerCount` は `Mathlib.RepresentationTheory.Maschke` を推移的に import しないので この leaf で明示 import している (無いと instance が見つからない)。 - `exists_algEquiv_pi_matrix_of_not_dvd_card`: `J(k[Q]) = ⊥` ⟹ `BrauerCount` の分裂 (代数閉 `k`) が**単射**になり `k[Q] ≅ ∏_j M_{d_j}(k)`。ブロック数 = 共役類数 (`p'`-群では全元が `p`-正則)。 - `sum_sq_card_eq_card_of_bijective`: `∑_j n_j² = |Q|` (分裂があれば `p` に依らない)。これが段 H2c (`p'`-群の Cartan 行列 = 単位行列) の数え上げの片側。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.isSemisimpleRing_monoidAlgebra_of_not_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_algEquiv_pi_matrix_of_not_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_sq_card_eq_card_of_bijective /-! 🎯🎯 **issue 9508 段 H2c = Navarro (2.12)**: `p'`-群の Cartan 行列は単位行列 (`Modular/PPrimeOrderCartan`)。加群論でなく**次元の数え上げ**で出る: - `∑_φ n_φ² = |G| = ∑_i m_i²` (`k[G] ≅ ∏ M_{n_φ}(k)` は Maschke で `ker = J(kG) = ⊥`、 `K[G] ≅ ∏ M_{m_i}(K)` は Wedderburn) — 両側とも `sum_sq_card_eq_card_of_bijective`。 - `sum_decompositionMatrix_mul_card_eq`: `m_i = ∑_φ d_{iφ} n_φ` (`g = 1` での分解; `trace_one` と `irreducibleBrauerCharacter_one`、`CharZero K` で ℕ に戻す)。 - `one_le_cartanMatrix_self`: `c_{φφ} = ∑_i d_{iφ}² = 0` なら列 `d_{·φ}` が全消し ⟹ `C` の `φ`-列が全消し ⟹ `sum_cartanMatrix_mul_pairingZero` (C の可逆性) に矛盾。 - 展開 `∑_{φ,μ} c_{φμ} n_φ n_μ = ∑_φ n_φ²` に上の 2 つを入れると全項が潰れて `c_{φφ} = 1`, `c_{φμ} = 0` (`cartanMatrix_eq_ite_of_not_dvd_card`)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_card_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.one_le_cartanMatrix_self #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_eq_ite_of_not_dvd_card /-! 🎯🎯 **issue 9508 段 H2d**: `p'`-群では `IBr(G) ⊆ ℕ·Irr(G)` (`Modular/PPrimeOrderBrauerOrdinary`)。段 H2c (`C = I`) の payoff。 - `pairingZero_eq_ite_of_not_dvd_card`: `([τ,μ]⁰)` は `C` の逆行列で、`C = I` なので `[τ,μ]⁰ = δ`。 - `ordinaryCombinationCoeff_eq_natCast_of_not_dvd_card`: 段 204 の係数 `a_χ = Σ_τ d_{χτ}[τ,μ₀]⁰` が **`d_{χμ₀} ∈ ℕ`** に潰れる。 - `sum_decompositionMatrix_mul_ordinaryCharacter` = **Navarro (2.12)**: `φ = Σ_χ d_{χφ} χ`。⚠ `g` の `p`-正則性は仮説に要らない (`p'`-群では自動)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pairingZero_eq_ite_of_not_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ordinaryCombinationCoeff_eq_natCast_of_not_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_ordinaryCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.irreducibleBrauerCharacter_mem_virtualCharacters /-! 🎯 **issue 9508 段 H2e 後半 (1/2)**: Brauer 指標は取る指数に依らない (`Modular/BrauerCharacterExponent`)。部分群への制限で必要になる — `G` の Brauer 指標は `|G|_{p'}` で、`H ≤ G` のそれは `|H|_{p'}` で取られ、両者は一般に等しくない (段 212 の商の場合は等しかったので不要だった)。 - `rootLift_eq_rootLift_of_dvd`: `m` 乗根としての持ち上げは `n` 乗根でもあり剰余が同じ ⟹ `n` 乗根の持ち上げの一意性 (`rootLift_unique`) で一致。 - `eigenspace_eq_bot_of_pow_ne_one`: `ρ g ^ m = 1` なら固有値は `m` 乗根に限る (固有ベクトルに `(ρ g)^m` を当てて `ζ^m = 1`)。 - `brauerCharacter_eq_of_dvd`: `m ∣ n`・`p ∤ n`・`ρ g ^ m = 1` ⟹ 両指数で同じ値 (余分な `n` 乗根の固有空間は 0)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.rootLift_eq_rootLift_of_dvd #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eigenspace_eq_bot_of_pow_ne_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_eq_of_dvd /-! 🎯🎯 **issue 9508 段 H2 完了**: `p'`-群の Brauer 指標は仮想指標 (`brauerCharacter_mem_virtualCharacters_of_not_dvd_card`)。`exists_decomposition` で単純加群に 分解し、各因子に H2e 前半を当てる。⚠ 指数 `N` は任意 (`|G|_{p'} ∣ N` だけ要求) — 大きい群から 制限してきた表現の Brauer 指標が大きい指数で取られているのを `brauerCharacter_eq_of_dvd` で 吸収するため。これが段 H3 (Navarro (2.15)) が elementary 部分群の `p'`-部分で消費する形。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.brauerCharacter_mem_virtualCharacters_of_not_dvd_card /-! 🎯🎯 **issue 9508 段 H3 = Navarro (2.15)**: `θ̂(x) = θ(x_{p'})` は仮想指標 (`Modular/PRegularPartCharacter`)。段 G の指標判定で `𝒳 = elementarySubgroups G` (`IsElementaryFamily` を満たす最小の族 — 消費者は member の形を知る必要があるので パラメータでなくこれで instantiate する) に落とし、各 `E = ⟨u⟩P` で `θ̂|_E = (θ|_{f.range}) ∘ f` (`f` = 段 H1 の `p'`-射影、`f.range` は `p'`-群) と `comp_mem_virtualCharacters` (段 A) で閉じる。 ⚠ 仮説は `p'`-**部分群**への制限であって `E` 自身ではない — 応用では `θ` は Brauer 指標で、 `θ|_E` は仮想指標**でない** (`p`-部分を射影で潰して初めて通常指標になる)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.isElementaryFamily_elementarySubgroups #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.pRegularPart_mem_inducedVirtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_int_sum_wedderburnRepresentation /-! 🎯🎯🎯 **issue 9508 段 H5 = Navarro (3.16) — 段 H 完了** (`Modular/BlockIntegralCombination`)。`μ₀ ∈ IBr(B)` は `{χ⁰ : χ ∈ Irr(B)}` の **ℤ**-結合。 段 H4 の整数係数 `a_i` を `a'_i = if blockOfIrr i = block(μ₀) then a_i else 0` に切り詰める。 `IBr` 座標で検算: `χ_i⁰ = Σ_μ d_{iμ} φ_μ` と展開して IBr の一次独立性 (`eq_zero_of_sum_irreducibleBrauerCharacter_ringHom`、𝒪 係数版) から `Σ_i a_i d_{iμ} = δ_{μμ₀}`、 切り詰めても不変 (`d_{iμ} ≠ 0 ⟹ block(μ) = blockOfIrr i`): `μ ∈ B` なら捨てた項が `d_{iμ} = 0`、`μ ∉ B` なら残した項が `d_{iμ} = 0` で右辺も 0。 ⚠⚠ **係数を `ordinaryCombinationCoeff` に取ることはできない** — それは `D C⁻¹` (`C = DᵀD`) = 擬似逆行列で一般に整数でない (`D = (1,1)ᵀ` なら `(1/2,1/2)ᵀ`)。また `{χ_i⁰}` は `p`-正則類上で 一次独立でない (個数が多い) ので係数は一意でなく、ここの族は段 204 のものとは別物。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_int_block_sum_eq_irreducibleBrauerCharacter /-! 🎯 **issue 9508 段 I**: `U` の抽象化 (`Modular/PrincipalBlockBasicSet`)。 `basicSetMatrixOf a` は基本集合 `𝓑` における座標 `u_{μj} = a_{μj} ε_j − a_{μj₀} ε_{j₀}` を **抽象係数族 `a`** で取る。段 204 の `K` 値族 (`D C⁻¹` = 擬似逆行列、整数でない) と 段 H5 の整数族の両方が instance になり、整数性は後者で instantiate して出す。 `basicSetMatrixOf_eq_zero_of_ne_principalBlock` は「族がブロック外で 0」だけを仮説にし、 Navarro (7.3)/(7.4) の 3 定理は加えて「族が `φ_ν` を `Irr(B)` 上で表す」だけを仮説にする (それ以外は `signRelationRow` の純線型代数で係数族の形に依らない)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.basicSetMatrixOf_eq_zero_of_ne_principalBlock #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_basicSetMatrixOf_mul_principalBasicSet #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_basicSetMatrixOf_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_basicSetMatrixOf #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_basicSetMatrixOf_mul_cartanMatrix /-! 🎯🎯 **issue 9508 段 H3b**: `p'`-部分群への制限 (`Modular/PPrimeSubgroupRestriction`)。 段 H5 (Navarro (3.16)) が仮説にしていた `hsub` (「Brauer 指標の `p'`-部分群への制限が仮想指標」) を 供給する。`p'`-群では**群環自体が半単純** (Maschke) ゆえ Jacobson 商を経ずに Artin–Wedderburn が 直接効き、分裂が**代数**同型として出る — これが `hlin` を供給する (`exists_surjective_blocks_card_eq` は `k[G] ⧸ J` 経由なので RingHom に落ちて `hlin` を失う)。 1 の冪根は作り直さず継承する: `|Q|_{p'} ∣ |G|_{p'}` ゆえ `ω^(|G|_{p'}/|Q|_{p'})` が 原始 `|Q|_{p'}` 乗根。制限そのものは補題不要 — `brauerCharacter n (ρ.comp Q.subtype) x` と `brauerCharacter n ρ ↑x` は同じ固有値重複度の和で、 指数だけ `|G|_{p'}` のまま持ち上がる (H2e で指数を任意にしておいたのが効く)。 ⟹ **Navarro (3.16) が代数閉の仮定だけで無条件に出る**。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_algEquiv_pi_matrix_monoidAlgebra #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_splitting_of_not_dvd_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.restrict_irreducibleBrauerCharacter_mem_virtualCharacters #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_int_block_sum_eq_irreducibleBrauerCharacter_of_isAlgClosed /-! 🎯🎯 **issue 9508 段 J**: `U` の整数性 (`Modular/IntegralBasicSetMatrix`)。 段 H3b で無条件になった (3.16) を全 `μ` について集めて 1 つの整数行列 `A : IBr → Irr → ℤ` にし (`exists_intBlockCoeff`; これが段 I の `ha0`/`hasum` そのもの)、 `U` を整数行列 `intBasicSetMatrix` として書き直す。符号 `ε_j = χ_j(t)` は `ε_j² = 1` (Navarro (7.2)) と **`K` の標数 0** から `±1` に確定するので、`basicSetSign` が `ε_j` を整数として持てる。⟹ Navarro (7.3)/(7.4) が `ℤ` へ降りる (`ℤ → K` の単射性で `K` 版から降ろす)。**BS 証明 p.141-142 が要求する 「`D^t_j` が整数列」の土台**がこれ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_intBlockCoeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.intCast_basicSetSign #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.intCast_intBasicSetMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_intBasicSetMatrix #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_intBasicSetMatrix_mul_cartanMatrix /-! 🎯 **issue 9506 段 281-282**: Navarro p.139-140 "analysis at `y`" の**群論的入力と Cartan 値**。 `sylow_centralizer_eq_zpowers` = 「`⟨y⟩` は `C_G(y)` の Sylow-2」。`y` は `C_G(y)` で中心的 ゆえ `⟨y⟩` は正規 2-部分群で Sylow-2 `S` に入り `4 ∣ |S|`; 一方 `S` の `G` への像を包む Sylow-2 `Q` は位数 8 なので `|S| ∣ 8` で、`|S| = 8` なら濃度一致で像 `= Q ≅ Q₈` となり `Q ⊆ C_G(y)` の元は `y` と可換ゆえ `y ∈ Z(Q)` — `sq_eq_one_of_mem_center_of_quaternionTwo` に矛盾。⟹ `|S| = 4 = |⟨y⟩|`。 `hasNormalPComplement_centralizer_orderFour` はこれを Burnside (`hasNormalPComplement_centralizer_of_sylow_zpowers`) に食わせた形で、原文 「`C_G(y)` has a normal `2`-complement」。 `cartanMatrix_principalBlock_eq_card_sylow` = Navarro (6.13) の **Cartan 形** `c_{φ₀φ₀} = |G|_p`。従来 repo は `card_mul_cartanMatrix_principalBlock` (`|N|·c = |G|`、 `K` の中) までで consumer が無く、(7.2) 以降は `hcart` を仮説として持ち回っていた。 `K` の標数 0 で ℕ へ降ろし `|N|·[G:N] = |G|` と約すだけで閉じる (支持補題 `index_eq_card_sylow_of_isPGroup_quotient` = `[G:N] = |S|`)。 ⟹ "analysis at `y`" の `hcart = 4` は 段 281 (`|Sylow of C_G(y)| = 4`) との合成で出る。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.sylow_centralizer_eq_zpowers #assert_only_allowed_axioms OddOrder.GroupTheory.hasNormalPComplement_centralizer_orderFour #assert_only_allowed_axioms OddOrder.GroupTheory.index_eq_card_sylow_of_isPGroup_quotient #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_principalBlock_eq_card_sylow /-! 🎯 **issue 9506 段 283**: Navarro p.140 の「`y` での列」。 原文の "analysis at `y`" は (7.2) と**同じ平方和 4** に達するが、`hconjall` (全ての `p`-元が `t` に共役) が使えない — 位数 4 の元は 2 つある `2`-元の類の片方でしか ないので、「どの `χ(y)` も 0 でない」が言えない。原文が代わりに使うのは 「列の先頭成分が 1 (自明指標)」で、これだけで `±2` の成分が排除できる (4 + 1 > 4)。 ⟹ 結論は弱まり「列は 0 と**ちょうど 4 個**の `±1` から成る」。 `Algebra/SumSquaresFour` に 0 を許す版を追加 (`eq_zero_or_one_or_neg_one_of_sum_sq_le_four` / `card_filter_ne_zero_of_sum_sq_le_four`; 総和 `≤ 4` に一般化済 — 段 324 が `3` で使う)、 `card_character_ne_zero_eq_four_of_isConj_inv` がそれを `sum_sq_character_eq_cartanMatrix_of_isConj_inv` (段 197-198) + `exists_intCast_character_of_pow_four_eq_one` (段 199) + `hcart` (段 282) に噛ませる。 -/ #assert_only_allowed_axioms OddOrder.Algebra.eq_zero_or_one_or_neg_one_of_sum_sq_le_four #assert_only_allowed_axioms OddOrder.Algebra.card_filter_ne_zero_of_sum_sq_le_four #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_character_ne_zero_eq_four_of_isConj_inv /-! 🎯 **issue 9506 段 284**: 自明表現は任意の Wedderburn 分解に現れる (`exists_trivial_wedderburn_index`)。 Navarro p.140 が「これらは先頭成分が 1 の整数列である」と言うときの「先頭成分」= 自明指標 `χ_0 = 1_G` の存在を、抽象的な分解 `e : K[G] ≃ₐ[K] ∏ Matrix (m i) (m i) K` の 中で特定する。`Ĝ = ∑_{g ∈ G} g` は係数 1 を持つので非零、`g · Ĝ = Ĝ` ゆえ `e Ĝ` が非零な成分 `i` では `e Ĝ i` の各列が不変ベクトル ⟹ 既存の `forall_apply_eq_of_invariants_ne_bot` で `i` 成分は自明表現。さらに `e` が その成分へ全射ゆえ像の行列は全てスカラー (`mulVec_eq_augmentation_smul`) で、 対角外の行列単位はスカラーでないから `m i` は subsingleton (= 1 次元)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_trivial_wedderburn_index /-! 🎯 **issue 9506 段 285**: 自明指標は主ブロックに属する (`Modular/PrincipalBlockTrivial`)。 `principalBlock` は「中心指標が増大射である唯一のブロック」として定義されている (Wedderburn 分解の中で自明指標を特定せずに済ませるため)。Navarro が p.140 で 「これらは 1 を先頭成分とする整数列である」と言うときに要るのはその逆読み = 段 284 が作った自明成分のブロックが `B_0` である、という主張。 両ブロックとも中心指標で一意に決まり、類和が中心の基底 (`centerBasis`) なので `K̂` 上で比べれば足りる: 自明ブロックでは `ω(K̂)·χ(1) = ∑_{g∈K} χ(g) = |K|` (`χ(1) = χ(g) = 1`)、格子側の中心指標は `𝒪 → K` の下でこれと一致し (`algebraMap_centralScalar_eq`) `𝒪 → K` は単射なので格子側の値は `|K| ∈ 𝒪`、 その剰余は `|K|*` で `aug(K̂)` (`aug_classSumCenter`) に等しい。 ⟹ 段 283 の `card_character_ne_zero_eq_four_of_isConj_inv` から仮説 `{j₁} (hj₁) (hj₁val)` を落として signature を hy4 / hinv / hcart だけにした。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralScalar_classSum_of_trivial #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockOfIrr_eq_principalBlock_of_trivial #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_blockOfIrr_eq_principalBlock_character_eq_one /-! 🎯 **issue 9506 段 286**: Navarro p.141 "Analysis at t" の群論的入力 (第 1 段)。 原文冒頭「`P` is a Sylow 2-subgroup of `C_G(t)`, and thus `C_G(t)/⟨t⟩` has Sylow 2-subgroups isomorphic to `ℤ₂ × ℤ₂`」。 - `sylowQ8_le_centralizer_involution` = `T ≤ C_G(t)`。既存 `normalizer_le_centralizer_involution` (`N_G(T) ≤ C_G(t)`) と `T ≤ N_G(T)` の合成で出る。 これを mathlib `Sylow.subtype` に食わせると「`T` は `C_G(t)` の Sylow-2」になる。 - `Q₈/⟨t⟩` が Klein four であることは `Q₈` 側だけの事実なので `QuaternionTwoFacts` に: `sq_eq_one_or_eq_of_quaternionTwo` (全ての平方は `1` か対合 — `(w²)² = w⁴ = 1` と対合の一意性) → `card_quotient_zpowers_of_quaternionTwo` (位数 4) と `sq_eq_one_quotient_zpowers_of_quaternionTwo` (指数 2)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.sq_eq_one_or_eq_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.card_quotient_zpowers_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.sq_eq_one_quotient_zpowers_of_quaternionTwo #assert_only_allowed_axioms OddOrder.GroupTheory.sylowQ8_le_centralizer_involution /-! 🎯 **issue 9506 段 287**: p.141 の「位数 4 の元は `C_G(t)`-共役」と、その配管。 原文 p.141 は「the elements of order 4 of `P` are `C_G(t)`-conjugate」を使って `C_G(t)/⟨t⟩` の対合が全て共役であることを言う。段 276 の `isConj_of_orderFour` は `G`-共役しか主張していなかったが、証明中の融合元は実際に `N_G(T)` の中で作られている (`b * a⁻¹ : ↥N_G(T)` と `d : ↥T ≤ N_G(T)` の積) ので、**結論を `∃ g ∈ N_G(T), g v g⁻¹ = w` に強化**した。`N_G(T) ≤ C_G(t)` (`normalizer_le_centralizer_involution`) と合わせて `isConj_centralizer_of_orderFour` が出る。 `exists_conj_mem_sylow` (`GroupTheory/SylowContaining`) は汎用配管: 「`p`-元は指定した Sylow `p` に共役で入る」(`IsPGroup.exists_le_sylow` + Sylow 共役)。 商群 `C_G(t)/⟨t⟩` の対合を Klein four な Sylow-2 に持ち込むのに使う。 ⚠ 着手後に `KleinFourSylowFusion.exists_conj_mem_sylow_of_mul_self_eq_one` (対合専用の 特殊化) が既存だと判明したので、**その場で一般化**して特殊版を一般版への 3 行に置換した (CLAUDE.md「既存の特殊化を見つけたらその場で一般化」)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.exists_conj_mem_sylow #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_centralizer_of_orderFour /-! 🎯🎯 **issue 9506 段 288**: Navarro p.141「all the involutions of `C_G(t)/⟨t⟩` are conjugate since the elements of order 4 of `P` are `C_G(t)`-conjugate」を証明。 これで p.141 冒頭「So the hypotheses of Corollary (7.4) are satisfied」の**群論的仮説が 3 点とも揃った** (段 286 の「`T` は `C_G(t)` の Sylow-2」「`Q₈/⟨t⟩` は Klein four」と本段)。 - `zpowers_self_normal_centralizer` = `⟨t⟩ ⊴ C_G(t)` (中心的だから; 商群を作るのに要る) - `isConj_quotient_of_mem_sylowQ8` = `T` の 2 元の像が共に非自明なら共役。 像が非自明 ⟹ その元は `⟨t⟩` の外 ⟹ `Q₈` の対合は一意なので位数 4 ⟹ 段 287 の `isConj_centralizer_of_orderFour` が `C_G(t)` 内の融合元を与え、商へ落とす。 - `isConj_of_sq_eq_one_quotient_centralizer` = 商の対合は全て共役。 対合は 2-元なので段 287 の `exists_conj_mem_sylow` で Sylow-2 `T̄` (= `T` の像、`Sylow.subtype` + `Sylow.mapSurjective`) に共役で入り、 `T̄` の非自明元同士は上で共役。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.zpowers_self_normal_centralizer #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_quotient_of_mem_sylowQ8 #assert_only_allowed_axioms OddOrder.GroupTheory.isConj_of_sq_eq_one_quotient_centralizer /-! 🎯 **issue 9506 段 289**: Navarro p.141 末「`τ(t) ≡ τ(y) mod 2`」を**指標表なしで**証明。 原文は「if `τ` is an irreducible character of `P`, notice that **from the character table of `P`**」と `Q₈` の指標表を読む。ここは一般論で済む: `t` も `y` も `2`-元なので、 どちらの値も次数 `τ(1)` と `mod 2` で合同 (Gorenstein Lemma 7.5 = 既存 `intModEq_of_mem_adjoinSpan`)。⟹ `Q₈` の指標表を形式化する必要は無い。 - `pRegularPart_eq_one_of_isPElement` (`GroupTheory/PRegularElement`) = `p`-元の `p'`-部分は自明 (`ordProj[p](p^k) = p^k = orderOf g` ゆえ `g^(orderOf g · m) = 1`) - `intModEq_one_of_isPElement` = `p`-元での値は次数と合同 - `intModEq_of_isPElement_of_isPElement` = 2 つの `p`-元での値は互いに合同 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.pRegularPart_eq_one_of_isPElement #assert_only_allowed_axioms OddOrder.RepresentationTheory.intModEq_one_of_isPElement #assert_only_allowed_axioms OddOrder.RepresentationTheory.intModEq_of_isPElement_of_isPElement /-! 🎯 **issue 9506 段 290**: Navarro (7.2) の証明 (p.132) が使う 「`C = C_G(t)` は正規 2-補群を持つ」を証明 — これが `hcart = 4` の**供給源**。 原文 p.132: `G` が Klein four Sylow `P` と対合 1 類を持つとき `C = C_G(t)` を取ると、 `t` は `C` の中心にいるので **`C` は対合 1 類ではありえない**。(7.2) 前半を `C` に適用すると `C` は対合 3 類 ⟹ **`C` は正規 2-補群を持つ** ⟹ Cor (6.13) で `IBr(b₀) = {1}`、 Cartan は `(4)` = `|C|₂`。 `hasNormalPComplement_of_klein_sylow_of_mem_center` (`GroupTheory/KleinFourSylowFusion`): `N_G(P)` の元が `P` を動かせば既存 `isConj_of_klein_sylow_of_not_centralizes` で 全対合が共役になるが、`P` の 3 つの対合のうち 1 つが中心的なら矛盾 (中心元の共役類は自分自身)。⟹ `N_G(P) ≤ C_G(P)` で Burnside (`hasNormalPComplement_of_sylow_normalizer_le_centralizer`)。 ⟹ 段 282 の `cartanMatrix_principalBlock_eq_card_sylow` と合成すれば (7.2)/(7.4) が仮説として持ち回っていた `hcart` が閉じる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.hasNormalPComplement_of_klein_sylow_of_mem_center /-! 🎯🎯 **issue 9506 段 291**: `hcart` の供給チェーンが閉じた。 段 290 (Klein four Sylow + 中心的対合 ⟹ 正規 2-補群) の出力は `HasNormalPComplement` だが、段 282 の `cartanMatrix_principalBlock_eq_card_sylow` は `N`/`hNp`/`hquot` をバラで要求していた。その橋を架けた: - `not_dvd_card_of_isComplement'` / `isPGroup_quotient_of_isComplement'` (`GroupTheory/CentralSylowComplement`) = 補群関係 `G = N ⋊ P` から 「`p ∤ |N|`」(= `[G:P]`) と「`G/N` は `p`-群」(= `|P|`) を読み出す。 ⚠ `∃ N, N.Normal ∧ … ∧ IsPGroup p (G ⧸ N)` という形にはできない (statement の elaboration 時に `Group (G ⧸ N)` instance が要るため) ので、 `N` と補群関係を仮説に取る 2 本に分けた。 - `cartanMatrix_principalBlock_eq_card_sylow_of_hasNormalPComplement` = `HasNormalPComplement p G` から直接 `c_{φ₀φ₀} = |Sylow p G|`。 ⟹ Navarro p.132 の「`C` has a normal 2-complement ⟹ Cartan は (4)」が そのまま Lean で辿れるようになった。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.not_dvd_card_of_isComplement' #assert_only_allowed_axioms OddOrder.GroupTheory.isPGroup_quotient_of_isComplement' #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.cartanMatrix_principalBlock_eq_card_sylow_of_hasNormalPComplement /-! 🎯 **issue 9506 段 292**: 一般化分解数が持ち回っていた `hζ`/`hζk`/`hζK` を `𝓞_ℂ_[p]` で供給。 `ζ^p = 1` かつ `residue ζ = 1` かつ `algebraMap ζ ≠ 1` なる `ζ` は、これまで どの定理でも仮説のままだった (`hcart` と同じ状況)。`ℂ_[p]` は標数 0 の代数閉体なので 原始 `p` 乗根 `z` があり、 - `z ∈ 𝓞_ℂ_[p]`: 付値環は `x` か `x⁻¹` を含み、`z⁻¹` 側なら `(z⁻¹)^{p-1} = z` も含む - `residue z = 1`: 剰余体は標数 `p` ゆえ `(x-1)^p = x^p - 1 = 0` - `z ≠ 1`: 原始根で `p > 1` ⟹ `exists_pow_eq_one_residue_eq_one_padicComplexInt`。 ⚠ `exists_isPrimitiveRoot_padicComplexInt` は `p ∤ n` を要求する (Henselian lift 経由) ので `n = p` には使えない。こちらは `ℂ_[p]` 側で取ってから付値環に落とす別ルート。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_pow_eq_one_residue_eq_one_padicComplexInt /-! 🎯 **issue 9506 段 293**: modular splitting datum の完全な束 (`exists_splitting_datum`, `Modular/BrauerCount`)。 ブロック理論が全域で持ち回る 4 仮説 `hπ` (全射) / `hlin` (`k`-線型) / `hkerJ` (`ker π = J(kG)`) / `hnil` (ブロック指標が消えれば冪零) のうち、既存の `exists_surjective_blocks_card_eq` は **`hlin` と `hnil` を落としていた** (`k[G] ⧸ J(k[G])` 経由で構成し、商写像を素の ring hom として取っていたため)。 `Ideal.Quotient.mkₐ` (代数写像) で取れば `hlin` はそのまま出るし、`hnil` は `J(kG)` の冪零性 (`kG` は semiprimary) から出る。⟹ 4 つ揃った束にして、 旧 `exists_surjective_blocks_card_eq` はその射影に置換 (証明の重複を作らない)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_splitting_datum /-! 🎯 **issue 9506 段 294**: ブロック冪等元の族の束 (`exists_blockIdempotentFamily`, `Modular/BlockIdempotentLift`)。 Külshammer の公式と第 3 主定理が `𝒪` 側で持ち回る 3 仮説 `hidem` (冪等) / `hf` (還元が `Z(kG)` の族) / `hB` (ブロック指標が `Pi.single`) を、 既存の 1 ブロック版 `exists_isIdempotentElem_blockCharacterPi_eq_single` から `choose` で族にまとめたもの。`hf` は `centerReduce` の定義から `rfl`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_blockIdempotentFamily /-! 🎯 **issue 9506 段 295**: `blockOfIrr` の全射性 (`exists_blockOfIrr_eq`, `Modular/CentralScalarBridge`)。 「どのブロックもある通常既約指標のブロックである」。段 294 で判明したとおり `hvanishH` (= `λ_B(Ĝ⁰) = 0` for `B ≠ B₀`) の既存補題は `blockOfIrr e … i` の形の ブロックについてしか言えていなかったので、任意の `B` に降ろすのにこれが要る。 証明: もしどの `χ_i` のブロックも `B` でなければ、Navarro (3.13.a) (`apply_eq_zero_of_blockOfLattice_ne`) によりブロック冪等元 `f_B ∈ Z(𝒪G)` は すべての Wedderburn 格子上で `0` として作用する ⟹ 格子は全空間を張るので `K[G]` での像はすべての Wedderburn 成分で `0` ⟹ `0` そのもの ⟹ `𝒪 → K` は単射なので `f_B = 0`。しかし `f_B` の還元のブロック指標は `Pi.single B 1 ≠ 0`。 支持補題 `mapRingHom_injective` (係数写像が単射なら群環の係数変換も単射) も新設。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mapRingHom_injective #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_blockOfIrr_eq /-! 🎯 **issue 9506 段 296**: 自明表現の上では群環は増大射で作用する (`asAlgebraHom_trivial`, `Modular/Reduction`)。 `principalBlock` は「中心指標が増大射であるブロック」として定義されているので、 これが「自明表現のブロック = 主ブロック」の核。段 295 の `blockOfIrr` 全射性と組んで `hvanishH` を任意の `B ≠ B₀` に降ろすのに使う (`hne` の discharge)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.asAlgebraHom_trivial /-! 🎯 **issue 9506 段 297**: 中心指標が増大射なら主ブロック (`mk_eq_principalBlock_of_centralCharacterAlg_eq`, `Modular/PrincipalBlock`)。 `principalBlock` の定義 (中心指標 = 増大射) の逆読み。段 296 の `asAlgebraHom_trivial` と組むと「自明表現の還元の既約 Brauer 構成因子は全て主ブロック」 が出る。これが `hvanishH` の `hne` を潰す最後の部品。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mk_eq_principalBlock_of_centralCharacterAlg_eq /-! 🎯 **issue 9506 段 298**: 自明表現の既約 Brauer 構成因子は全て主ブロック (`mk_eq_principalBlock_of_decompositionNumber_trivial`, `Modular/PRegularSumVanishing`)。 段 296 (自明表現の上では群環は増大射で作用) + 段 297 (中心指標が増大射なら主ブロック) + 既存 `centralCharacterAlg_eq_of_decompositionNumber_ne_zero` の合成。 自明 `𝒪`-格子表現 `Representation.trivial 𝒪 G 𝒪` の還元はまた自明表現なので (`LinearMap.baseChange_id`)、その分解数が非零な `μ` はすべて `centralCharacterAlg π μ = aug` を満たす。 ⟹ `hvanishH` の `hne` が「`B ≠ B₀`」だけで潰せるようになった。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.mk_eq_principalBlock_of_decompositionNumber_trivial /-! 🎯🎯 **issue 9506 段 299**: `hvanishH` が任意のブロックで言えた (`blockCharacter_pRegularSum_eq_zero_of_ne_principalBlock`, `Modular/PRegularSumVanishing`)。 Navarro (3.32) `λ_B(Ĝ⁰) = 0 (B ≠ B₀)` を、既存の `blockOfIrr` 形限定・追加仮説つきの版から **任意の `B ≠ B₀`** に一般化。 - ブロックが `blockOfIrr e … i` の形であることは 段 295 の全射性 (段 294 のブロック冪等元を食わせる) - 追加仮説 `hne` は 段 296-298 で「`B ≠ B₀`」だけになった ⚠ `[IsAdicComplete (maximalIdeal 𝒪) 𝒪]` が要る (ブロック冪等元の Henselian 持ち上げ経由)。 BS の鎖は元々この instance を仮定しているので整合。 ⚠⚠ ただし `𝓞_ℂ_[p]` (段 292/9507 の splitting system) が adic complete かは**別途要確認** — 値群が可除で Noether でないため自明ではない。最終 assembly の前に必ず検証すること。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.blockCharacter_pRegularSum_eq_zero_of_ne_principalBlock /-! 🎯 **issue 9506 段 300**: 共終な ideal filtration は同じ完備性を与える (`isAdicComplete_of_le_of_pow_le`, `Algebra/AdicCompletePi`)。 段 299 で判明した係数環の緊張 (`𝓞_ℂ_[p]` は `IsAdicComplete` を満たさない、 分岐拡大 `𝕎(𝔽̄_p)[ζ_m]` へ移る) の**第 3 段**。 `J^n ≤ I ≤ J` なら `I`-進完備性は `J`-進完備性を導く: - Hausdorff は `J^{nm} ≤ I^m` で添字を伸ばすだけ - Precomplete は `J`-Cauchy 列 `f` を `m ↦ f (n·m)` に間引くと `I`-Cauchy になり、 その極限が `I ≤ J` を通して `f` の `J`-極限にもなる 全分岐拡大 `B/A` では `𝔪_B^e = 𝔪_A·B ≤ 𝔪_B` なので、`B` が `A`-有限自由から得る `𝔪_A·B`-進完備性 (`isAdicComplete_of_basis` + `IsAdicComplete.map_algebraMap_iff`) が `𝔪_B`-進完備性に移る。⟹ **係数環の完備性の骨が通った**。 -/ #assert_only_allowed_axioms OddOrder.isAdicComplete_of_le_of_pow_le /-! 🎯 **issue 9506 段 301**: 分岐拡大 `A[ζ_n] = A[X]/Φ_n` の module 側 (`Algebra/CyclotomicAdjoin`)。 段 300 の裁定 (係数環を `𝕎(𝔽̄_p)[ζ_{p^a}]` へ移す) の実装第一歩。 - `cyclotomicPowerBasis` = `Φ_n` は monic なので `A[X]/Φ_n` は階数 `deg Φ_n` の自由 `A`-加群 (`AdjoinRoot.powerBasis'`)。`Module.Free` / `Module.Finite` の instance も付けた。 - `isAdicComplete_cyclotomicAdjoin` = 完備環上の有限自由加群は完備 (段 300 の `isAdicComplete_of_basis` をそのまま適用)。 - `cyclotomic_prime_pow_charP` = 標数 `q` では `Φ_{q^k} = (X-1)^{q^k - q^{k-1}}` (mathlib `cyclotomic_mul_prime_pow_eq` の `m = 1` 特殊化)。 ⟹ `B ⧸ 𝔪_A·B ≅ k[X]/((X-1)^{φ})` が局所アルティンで、`B` の局所性と 全分岐評価 `𝔪_B^{φ} ⊆ 𝔪_A·B` (段 300 が消費する形) の根拠。 -/ #assert_only_allowed_axioms OddOrder.Algebra.cyclotomicPowerBasis #assert_only_allowed_axioms OddOrder.Algebra.isAdicComplete_cyclotomicAdjoin #assert_only_allowed_axioms OddOrder.Algebra.cyclotomic_prime_pow_charP /-! 🎯 **issue 9506 段 302**: 全分岐評価 `(ζ - 1)^{φ(q^k)} ∈ 𝔪_A·B` (`sub_one_pow_mem_map_maximalIdeal`, `Algebra/CyclotomicAdjoin`)。 段 301 の `cyclotomic_prime_pow_charP` (標数 `q` で `Φ_{q^k} = (X-1)^{φ}`) より `(X-1)^φ − Φ_{q^k}` の係数はすべて `𝔪_A` に入る。根で評価して `Φ(ζ) = 0` を使うと `(ζ-1)^φ ∈ 𝔪_A·B`。 ⚠ **商環の同型 `B ⧸ 𝔪_A·B ≅ k[X]/((X-1)^φ)` を作らずに済んだ** — 局所性の段取り (issue 9506 の「`B` の局所性」節) で一番重い部分を回避する鍵。 -/ #assert_only_allowed_axioms OddOrder.Algebra.sub_one_pow_mem_map_maximalIdeal /-! 🎯 **issue 9506 段 303**: 還元 `B → k` (`ζ ↦ 1`) (`cyclotomicToResidueField`, `Algebra/CyclotomicAdjoin`)。 well-defined 条件は `Φ_{q^k}(1) = q` (🎯 mathlib `Polynomial.eval_one_cyclotomic_prime_pow`) が剰余体 (標数 `q`) で `0` になること。 定数の上で既に全射なので `B → k` は全射。 ⟹ `B` の局所性の段取り (issue 9506) のステップ 1 完了。次はその核 `N` が極大であること (`A → B/N` が全射で核が `𝔪_A`) と `N^φ ⊆ 𝔪_A·B` (段 302 + 二項展開)。 -/ #assert_only_allowed_axioms OddOrder.Algebra.cyclotomicToResidueField #assert_only_allowed_axioms OddOrder.Algebra.cyclotomicToResidueField_surjective /-! 🎯 **issue 9506 段 304**: `(I ⊔ J)^n ≤ I ⊔ J^n` (`Algebra.Ideal.sup_pow_le`, `Algebra/CyclotomicAdjoin`)。 `n` 乗の展開で `J^n` 以外の項はすべて `I` の因子を持つ、という素朴な事実の帰納法。 `J = ⟨ζ − 1⟩` かつ `J^φ ≤ I = 𝔪_A·B` (段 302) と合わせると `B` の極大イデアル `N ≤ I ⊔ J` について `N^φ ≤ I` が出る = 段 300 の `isAdicComplete_of_le_of_pow_le` が要求する共終性。 -/ #assert_only_allowed_axioms OddOrder.Algebra.Ideal.sup_pow_le /-! 🎯 **issue 9506 段 305**: `B → k` の核は極大で `𝔪_A·B ⊔ ⟨ζ−1⟩` に含まれる (`Algebra/CyclotomicAdjoin`)。 - `ker_cyclotomicToResidueField_isMaximal`: 商が体 `k` なので mathlib `RingHom.ker_isMaximal_of_surjective` (段 303 の全射性) で即。 - `ker_cyclotomicToResidueField_le`: 代表元 `P` を `P = C(P(1)) + (X−1)·Q` と分解 (`Polynomial.dvd_iff_isRoot`)。定数項 `P(1)` は 像が消えることから `𝔪_A` に入る。⟹ `ker ≤ 𝔪_A·B ⊔ ⟨ζ−1⟩`。 ⟹ 段 302 (`(ζ−1)^φ ∈ 𝔪_A·B`) + 段 304 (`(I ⊔ J)^n ≤ I ⊔ J^n`) と合わせて `ker^φ ≤ 𝔪_A·B` が出る。あとは段 300 の `isAdicComplete_of_le_of_pow_le` と mathlib `isLocalRing_of_isAdicComplete_maximal` で `IsLocalRing B`。 -/ #assert_only_allowed_axioms OddOrder.Algebra.ker_cyclotomicToResidueField_le #assert_only_allowed_axioms OddOrder.Algebra.ker_cyclotomicToResidueField_isMaximal /-! 🎯🎯 **issue 9506 段 306**: `B = A[ζ_{q^k}]` は完備局所環 (`Algebra/CyclotomicAdjoin`)。 段 300-305 の組み立て。`N := ker(B → k)` について - `𝔪_A·B ≤ N` (定数は `𝔪_A` なら像が消える) - `N^{φ(q^k)} ≤ 𝔪_A·B` (段 305 の包含 + 段 304 の `(I ⊔ J)^n ≤ I ⊔ J^n` + 段 302 の `(ζ−1)^φ ∈ 𝔪_A·B`) ⟹ 段 300 の `isAdicComplete_of_le_of_pow_le` で `isAdicComplete_ker_cyclotomicToResidueField`。 さらに `N` は極大 (段 305) なので mathlib `isLocalRing_of_isAdicComplete_maximal` で `isLocalRing_cyclotomicAdjoin`。 ⟹ **係数環 `𝕎(𝔽̄_p)[ζ_{p^a}]` の「完備局所環」部分が完成**。 剰余体が `k` であること (段 303 の全射性 + 核が極大) と `Frac(B)` の分裂が残り。 -/ #assert_only_allowed_axioms OddOrder.Algebra.isAdicComplete_ker_cyclotomicToResidueField #assert_only_allowed_axioms OddOrder.Algebra.isLocalRing_cyclotomicAdjoin /-! 🎯 **issue 9506 段 307**: `B` の剰余体は `A` のそれ (`Algebra/CyclotomicAdjoin`)。 - `residueFieldEquivCyclotomicAdjoin`: `B ⧸ ker(B → k) ≃+* k` (段 303 の全射性 + 第一同型定理)。 - `maximalIdeal_cyclotomicAdjoin`: 局所環の極大イデアルは一意なので `maximalIdeal B = ker(B → k)` (段 305 の極大性 + 段 306 の局所性)。 ⟹ **`ResidueField B ≅ ResidueField A`** — 全分岐なので剰余体は伸びない。 modular 側が要求する `IsAlgClosed (ResidueField ·)` と `CharP (ResidueField ·) q` は そのまま継承される。残るは `Frac(B)` の分裂のみ。 -/ #assert_only_allowed_axioms OddOrder.Algebra.residueFieldEquivCyclotomicAdjoin #assert_only_allowed_axioms OddOrder.Algebra.maximalIdeal_cyclotomicAdjoin /-! 🎯 **issue 9506 段 308**: `ResidueField B ≃+* ResidueField A` (`residueFieldEquiv`, `Algebra/CyclotomicAdjoin`)。 段 307 の 2 本 (`B ⧸ ker ≃+* k` と `maximalIdeal B = ker`) を繋いだ形。 ⟹ 全分岐拡大は剰余体を伸ばさないので、modular 側が要求する `IsAlgClosed (ResidueField ·)` / `CharP (ResidueField ·) q` は この同型で `B` へ移せる。 ⟹ **係数環タスク 4 点のうち 1-3 が完了** (構成・完備局所性・剰余体)。 残るは `Frac(B)` の分裂 = Brauer の分裂体定理 (Schur 指数インフラの新設が要る)。 -/ #assert_only_allowed_axioms OddOrder.Algebra.residueFieldEquiv /-! 🎯 **issue 9506 段 309**: 左核の消滅は体の拡大で保たれる (`eq_zero_of_vecMul_map`, `Modular/BrauerBasis`)。 係数体の再設計 (issue 9506 の「第三の道」) の要。`[IsFractionRing 𝒪 K]` を 鎖から落とせない唯一の理由が `BrauerBasis.eq_zero_of_vecMul_brauerCharacterMatrix` の 「共通分母を掛けて `𝒪` に落とす」段だったので、それを (a) `F = Frac 𝒪` 上で示す (現行の証明のまま) (b) 任意の体拡大 `K/F` へ移す に分ける。本段は (b): 成分が `F` にある行列の左核が `F` 上で消えれば、 `K` 上でも消える。証明は `K` の `F`-基底で展開して係数を読むだけ (⚠ mathlib には体拡大で一次独立性が保たれる補題が無く、 `LinearIndependent.map_of_injective_injective` 系は係数環を小さくする向きなので使えない)。 ⟹ これで `K` を `AlgebraicClosure (FractionRing 𝒪)` に取れる道が開き、 `K[G]` の分裂が mathlib から無償で得られる見込み (= Brauer の分裂体定理も Schur 指数も不要)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_vecMul_map /-! 🎯🎯 **issue 9506 段 310**: Brauer 指標表の一次独立性が `Frac 𝒪` を要らなくなった (`eq_zero_of_vecMul_brauerCharacterMatrix{,_fractionRing}`, `Modular/BrauerBasis`)。 段 309 の (a) 側 + 合成。`_fractionRing` 版が従来の証明 (`IsLocalization.exist_integer_multiples_of_finite` で共通分母を払う) をそのまま持ち、 一般版は「行列の成分は `algebraMap 𝒪 K` の像 ⟹ 一意の埋め込み `Frac 𝒪 ↪ K` (`IsFractionRing.lift`) に沿った `map`」と見て段 309 で移す。 ⟹ **`BrauerBasis` の binder が `[IsFractionRing 𝒪 K]` → `[FaithfulSMul 𝒪 K]` に弱まった** (`IsFractionRing` から `FaithfulSMul` は priority-100 instance なので下流は無変更で通る — フルビルド 5413 jobs green で確認)。 ⚠ **ただし鎖全体から `IsFractionRing` を外すことはできない (2026-08-06 に実施して判明)**。 `LatticeRepresentation` が使う `Module.Basis.extendOfIsLattice` の `[IsFractionRing R K]` は 外すと**定理が偽**になる (反例 `R = ℤ`, `K = ℝ`, `L = ℤ + ℤ√2`)。より根本的には 「`V` の `𝒪`-形が在る ⟺ `V` が `Frac 𝒪` 上実現可能」なので、`K` を `Frac 𝒪` から 切り離しても分裂体の要求は `Frac 𝒪` 側に残る。詳細は issue 9506。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_vecMul_brauerCharacterMatrix_fractionRing /-! 🎯🎯🎯 **issue 9506 段 311**: 商体が代数閉な係数環の上で**冪等元が持ち上がる** (`AlgClosedIdempotentLift`)。 BS の鎖は冪等元の持ち上げに `[IsAdicComplete (maximalIdeal 𝒪) 𝒪]` を要求してきたが、 ordinary 側を分裂させる係数環 `𝓞_ℂ_[p]` は値群が可除ゆえ `𝔪² = 𝔪` で**これを満たさない** (段 299 の発見)。⟹ 冪等元の持ち上げを完備性から切り離す必要がある。 一般の Henselian 局所環では Hensel の**分解形**が要り mathlib に無い (実測: `HenselianLocalRing`/`HenselianRing` は `RingTheory/Henselian.lean` の外で 一度も使われていない)。しかし `𝓞_ℂ_[p]` にはより強い性質が在る — `exists_isRoot_of_monic` (段 291) が「monic は `𝒪` 自身に根を持つ」を与えるので、 **monic は `𝒪[X]` で 1 次式に完全分解する** (`exists_multiset_prod_X_sub_C`, 本段で追加)。 ⟹ 分解形もレゾルヴァントも不要になる: `b² ≡ b (mod 𝔪B)` に対し `f = X · charpoly(μ_b)` を `∏(X − λ_i)` に分解し、根を `λ_i ∈ 𝔪` かどうかで 2 群に分けると、 反対側の 1 次式どうしの差 `λ − μ` は単元なので **`IsCoprime` が自明**。 `αβ = f(b) = 0` から Bézout 結合 `u·α` が冪等になり、`mod 𝔪B` で Bézout 等式に `b` を 掛けると `u·α ≡ b` が出る (先頭の因子 `X` は根 `0 ∈ 𝔪` を保証するために付けている)。 ⟹ これで `𝓞_ℂ_[p]` が **`IsAdicComplete` 以外の全要求 (分裂・剰余体代数閉・Henselian・ `IsFractionRing`) を既に満たす**ことと合わせ、Brauer の分裂体定理も Schur 指数も 分岐拡大も要らなくなる見込み。 ⚠ **一意性は完備性を要らない**: `𝔪B` が Jacobson 根基に入る (`map_maximalIdeal_le_jacobson_bot`、 中山) だけで足りるので、`IdempotentLift.eq_of_isIdempotentElem_of_sub_mem` の `[HenselianRing R I]` を `I ≤ jacobson ⊥` に弱めた (呼び出し側は `HenselianRing.jac` を渡す)。 -/ #assert_only_allowed_axioms OddOrder.exists_multiset_prod_X_sub_C #assert_only_allowed_axioms OddOrder.exists_isIdempotentElem_sub_mem_of_multiset_prod_eq_zero #assert_only_allowed_axioms OddOrder.map_maximalIdeal_le_jacobson_bot #assert_only_allowed_axioms OddOrder.exists_isIdempotentElem_sub_mem_of_isAlgClosed #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_sub_mem_of_isAlgClosed /-! 🎯 **issue 9506 段 313**: `Z(𝒪G)` 側の張り替え (`CenterGroupAlgebraAlgClosed`)。 段 311-312 を `Z(𝒪G)` に適用する。`Z(𝒪G)` は類和で自由有限 (`centerBasis`) なので 仮説はそれだけで足り、`existsUnique_isIdempotentElem_centerGroupAlgebra` / `existsUnique_isIdempotentElem_mapRingHom_eq` (どちらも `[IsAdicComplete I 𝒪]` 版) の **drop-in 代替**が `[IsIntegrallyClosed 𝒪]` + `[IsAlgClosed K]` で得られた。 ⟹ 供給側は完了。残りは鎖の binder `[IsAdicComplete (maximalIdeal 𝒪) 𝒪]` → `[IsIntegrallyClosed 𝒪] [IsAlgClosed K]` の張り替えと `𝓞_ℂ_[p]` での instance 化。 -/ #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_centerGroupAlgebra_of_isAlgClosed #assert_only_allowed_axioms OddOrder.existsUnique_isIdempotentElem_mapRingHom_eq_of_isAlgClosed /-! ✅ **issue 9506 段 314**: 鎖の binder を張り替えた。 `[IsAdicComplete (maximalIdeal 𝒪) 𝒪]` → `[IsIntegrallyClosed 𝒪] [IsAlgClosed (FractionRing 𝒪)]` を 13 file に適用 (`BlockIdempotentLift` の呼び出しも `_of_isAlgClosed` 版に差し替え)。 ⟹ **`OddOrder/GroupTheory/**` から `IsAdicComplete` の binder は消えた** (残るのは `WittVectorSystem` の instance と `PModularSystem` の 「完備 ⟹ Henselian」導出だけ)。 ⚠ 係数体は抽象的な `K` でなく **`FractionRing 𝒪`** で書く。抽象 `K` は仮説にしか現れず instance 解決で metavariable になるため、全 consumer に explicit 引数として通す羽目になる。 📌 副産物: `BlockCornerLift.exists_corner_inverse_blockCharacter` と `InducedBlockWitness.exists_inducedBlock_witness` の完備性仮説は **元から使われていなかった** (削除して build green)。 ✅✅ **段 315 = issue 9506 の係数環問題の決着**。`𝓞_ℂ_[p]` に `IsAlgClosed (FractionRing 𝓞_ℂ_[p])` の instance を付け (`ℂ_[p]` との標準同型で移送)、鎖が要求する**全 12 仮説を `𝓞_ℂ_[p]` / `ℂ_[p]` が 満たすことを検証した** (`PadicComplexSystem` の `CarrierCheck` 節に恒久化 — どれか 1 つでも導出不能になれば build が壊れる)。 ⟹ **`K[G]` の分裂は `ℂ_[p]` が代数閉なので無償** (段 292)、 **`k[G]` の分裂も剰余体が代数閉なので無償** (段 292)、 **冪等元の持ち上げは完備性なしで通る** (段 311-314)。 ⟹ **Brauer の分裂体定理・Schur 指数・分岐拡大はいずれも不要になった。** 段 301-308 の `𝕎(𝔽̄_p)[ζ_{p^a}]` は案 (a) の資産として残るが、もう critical path 上に無い。 -/ /-! 🎯 **issue 9506 段 317**: Osima の定理の消滅半分 (`OsimaBlockSupport`)。 `g` が `p`-特異なら `∑_{χ ∈ Irr(B)} χ(1)·χ(g) = 0` — Navarro (3.8) Corollary (Osima)。 **なぜ要るか**: Külshammer 経由の第三主定理の逆 (`hconv`) は `hcoeff` を **全ての `g`** について要求するが (`brauerTrunc_eq_of_coeff_eq` が全係数の一致を見る)、 Külshammer の公式が担ぐ `hweak` は**実質「`g` が `p`-正則」と同値** ((5.11) の非共役条件が `¬ IsConj x (pPart p g)` なので、`p`-特異だと Sylow の元で破れる)。 ⟹ `p`-特異側は別ルートが要り、それがこれ。 **Navarro より短い**: 原典は整数性と消滅を同時に出すので `𝔪` を経由し Dickson の定理を使うが、 **我々が要るのは消滅だけ**で、標数 0 の `𝒪` 上では**厳密に 0** になる。 ⟹ (3.6) と (3.8) が 1 つの計算に畳める: `χ(1)` を `D` の行で展開 → 和を入れ替え → 内側 `∑_{i ∈ B} d_{iφ}·χ_i(g)` が `φ` ごとに 0 (block が一致すれば `B` の外の項が消えて `Φ_φ(g) = 0` そのもの、しなければ各項が 0)。 `D` の block 対角性 (`blockOfIrr_eq_of_decompositionMatrix_ne_zero`) が両方の場合を担う。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_decompositionMatrix_mul_ordinaryCharacter_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryCharacter_one_mul_eq_zero_of_not_isPRegular /-! 🎯 **issue 9506 段 318**: `hcoeff` の `p`-特異側 (`OsimaBlockSupport`)。 `coeff_blockIdempotent_eq_zero_of_not_isPRegular` — **ブロック冪等元は `p`-特異元で係数 0**。 段 317 と既存の `BlockIdempotentOrdinary.mapRingHom_blockIdempotent_eq_sum` (「ブロック冪等元の `K[G]` での像 = `∑_{χ ∈ Irr(B)} e_χ`」) の合成: `e_χ` の `g` 係数は `|G|⁻¹·χ(1)·χ(g⁻¹)` なので、段 317 を `g⁻¹` に適用して (`g` が `p`-特異 ⟺ `g⁻¹` が `p`-特異) `K` で 0 ⟹ 単射性で `𝒪` で 0 ⟹ 還元して `k` で 0。 ⟹ Külshammer の公式が使えない `p`-特異元での `hcoeff` が埋まった。 残りは `p`-正則側 (Külshammer 経由、`hweak` は (5.11) から) との場合分け合成 → `hconv`。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_blockIdempotent_eq_zero_of_not_isPRegular /-! 🎯 **issue 9506 段 319a**: `hweak` の discharge (`BlockPartVanishing`)。 `sum_character_blockOfIrr_eq_zero_of_isPRegular` — Külshammer の公式が担ぐ `hweak` の形を Navarro (5.11) から出す。(5.11) を `h := g` (`p`-正則), `g := x` (Sylow の元) で使うと 非共役条件 `¬ IsConj (pPart p x) (pPart p g)` は `pPart p x = x` (`x` は `p`-元) と `pPart p g = 1` (`g` は `p`-正則) で **`¬ IsConj x 1` ⟺ `x ≠ 1`** に落ちる — これは `hweak` が既に持っている仮説そのもの。 ⚠ `g` の `p`-正則性は便宜ではなく**本質**: `p`-特異だと `pPart p g` は 任意の Sylow `p`-部分群に共役なので、その `x` で和は本当に消えない。 `p`-特異側は Osima の定理 (段 317-318) が担う。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_blockOfIrr_eq_zero_of_isPRegular /-! 🎯 **issue 9506 段 319b**: 任意の有限群の modular datum (`GroupAlgebraBlocks`)。 `exists_modularDatum` — 代数閉体 `k` と**任意の**有限群 `G` について、 `Modular/` の鎖が担ぐ 5 つの仮説 (`π` / `hπ` / `hlin` / **`hkerJ`** / `hnil`) が一括で出る。 これが要るのは Navarro (5.11) が **Sylow の各元 `x` ごとに `C_G(x)` の datum** を 要求するから (段 319a の `hweak` discharge がそう使う)。剰余体が代数閉 (`ResidueField 𝓞_ℂ_[p] = 𝔽̄_p`、段 292) なので、どの中心化群でも無償で作れる。 ⚠ 併せて `AlgClosedSplitting.exists_algHom_pi_matrix_of_isAlgClosed` の戻り値を強化した: 従来は「核が nil」だけだったが、**`RingHom.ker π = Ring.jacobson A`** も返す。 証明は `π` を `A ⧸ Ring.jacobson A` 経由で作っており、包含の片側は既に示していたので 逆向き (`x ∈ jacobson ⟹ π x = 0`) を足しただけ。nil 性はそこから従う。 -/ #assert_only_allowed_axioms OddOrder.exists_algHom_pi_matrix_of_isAlgClosed #assert_only_allowed_axioms OddOrder.GroupAlgebra.exists_modularDatum /-! 🎯 **issue 9506 段 319c-1**: `hcoeff` の `p`-特異側 (`KulshammerThirdMain`)。 `coeff_principalBlock_eq_centralizer_intermediate_of_not_isPRegular` — `g` が `p`-特異なら `e_{b_0}^H(g) = e_{b_0}^{C_G(Q)}(g)` は**両辺 0** で成り立つ。 Osima (段 318) を `H` 側と `C_G(Q)` 側に 1 回ずつ適用するだけ。 ⟹ `coeff_principalBlock_eq_centralizer_intermediate` (Külshammer 経由、`p`-正則でのみ有効) と合わせて**全ての `g`** が覆われた。これが `brauerTrunc_eq_of_coeff_eq` の要求。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_centralizer_intermediate_of_not_isPRegular /-! 🎯 **issue 9506 段 319c-2 の下ごしらえ**: `IsAlgClosed K` の移送 (`AlgClosedFractionField.isAlgClosed_of_isAlgClosed_fractionRing`)。 鎖は仮説を**正準な `FractionRing 𝒪`** の上で担ぐ (抽象 `K` は instance 解決で metavariable になるため、段 314 の設計) が、消費するのは自分の係数体 `K` の上。 `FractionRing.algEquiv` で移す。 ⚠ `A` と `K` は同一 universe。mathlib の `IsAlgClosed.of_ringEquiv` が universe をまたげないため。実際の使用箇所 (`𝓞_ℂ_[p]` / `ℂ_[p]`) は両方 `Type` なので制約にならない。 **なぜ要るか**: 段 319c-2 の `p`-正則側は (5.11) を経由し、(5.11) は Sylow の各元 `x` について `C_G(x)` の**通常側の分裂 `eH`** を要求する。それは `IsAlgClosed K` から `IsSemisimpleRing.exists_algEquiv_pi_matrix_of_isAlgClosed` で出るが、 鎖の binder には `IsAlgClosed K` が無い — この補題がその橋渡し。 -/ #assert_only_allowed_axioms OddOrder.isAlgClosed_of_isAlgClosed_fractionRing /-! 🎯🎯 **issue 9506 段 319c-2**: `hcoeff` が `∀ g` で揃った (`KulshammerThirdMain`)。 `coeff_principalBlock_eq_centralizer_intermediate_forall` — `e_{b_0}^H(g) = e_{b_0}^{C_G(Q)}(g)` が**全ての `g ∈ C_G(Q)`** で成り立つ。 2 つのルートは相補的で、どちらも単独では全体を覆えない: * **`p`-正則** — Külshammer の公式 (`..._intermediate`)。担ぐ `hweak` は `g` の `p`-部分が Sylow に共役だと破れるので、正則な `g` 以外には届かない。 * **`p`-特異** — Osima の定理 (`..._of_not_isPRegular`、段 318-319c-1)。両辺 0。 ⚠ `hweak` は `..._intermediate` では**与えられた `g` についての仮説**なので、 束ねた版では `p`-正則な `g` 全体で量化した形になる — 段 319a (`sum_character_blockOfIrr_eq_zero_of_isPRegular`) がまさにその形を供給する。 ⟹ これが `hconv` (第三主定理の逆) の要求する `hcoeff` そのもの。 残りは `eq_principalBlock_of_blockOfCentralCharacter_eq` に食わせて `C_G(⟨x⟩)` と `centralizerOf x` を同一視するだけ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_centralizer_intermediate_forall /-! 🎯🎯 **issue 9506 段 320a**: `G` 版の `hcoeff` も `∀ g` で揃った。 `coeff_principalBlock_eq_centralizer_forall` — 段 319c-2 と同じ場合分けを、 中間部分群 `H` でなく **`G` そのもの**について行ったもの。 第三主定理の逆 (`eq_principalBlock_of_blockOfCentralCharacter_eq`) が消費するのは こちらの形 (`Converse` 節は `πG` を `G` 上に持つ)。 ⟹ `hconv` に必要な `hcoeff` が揃った。残るは項の同一視のみ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_centralizer_forall /-! 🎯 **issue 9506 段 320b の下ごしらえ**: `C_G(⟨x⟩) = C_G(x)` (`InducedBlockCentralizer.centralizer_zpowers_eq_centralizerOf`)。 第三主定理の逆を BS の鎖に接続するときの**項の同一視** (issue 冒頭からの既知の残件)。 Külshammer 経由の Converse は `C_G(Q)` で述べられ、`Q = ⟨x⟩` を取るが、 BS の鎖が担ぐのは `centralizerOf x = C_G(x)`。両者は部分群として等しいが構文的に別。 ⚠ 同じ主張の `private` 版が `BG/Ch3_MaximalSubgroups/S11_ExceptionalMaximal.lean:864` に 在ったが、**`private` はファイルを跨げない** (CLAUDE.md「開発規約」) ので、 `zpowers`/`centralizerOf` の兄弟補題が並ぶこの場所に public 版を置いた。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.centralizer_zpowers_eq_centralizerOf /-! 🎯🎯 **issue 9506 段 320b**: `hcoeff` の `G` vs `H` 形 — **型移送は不要だった**。 `coeff_principalBlock_eq_of_mem_centralizer` (`KulshammerThirdMain`)。 中間版の逆定理が要求する `hcoeff` は `G` と `H` の比較だが、 段 320a は `G` vs `C_G(Q)`、段 319c-2 は `H` vs `C_G(Q)` を与える。 **どちらも `C_G(Q)` に対して比較している**ので、合成すればその側が相殺されて `G` vs `H` が残る — 証明は 3 行。 ⚠ **前段の見立ての訂正**: 「`↥H` と `↥(C_G(⟨x⟩))` の間の datum 移送 (`π`/`Block`/`principalBlock`/族をまるごと運ぶ) が要る」と記録したが、**誤り**だった。 2 つの比較が同じ `C_G(Q)` を経由するので、`H` と `C_G(Q)` が偶々等しい部分群であっても その事実を使う必要が無い。⟹ `Subgroup.equivOfEq` 汎用移送も鎖の binder 変更も不要。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_principalBlock_eq_of_mem_centralizer /-! 🎯🎯 **issue 9506 段 321a**: Külshammer の `hweak` を無条件で供給する。 `sum_character_blockOfIrr_eq_zero_of_isPRegular_of_roots` (`BlockPartVanishingSupply`)。 (5.11) の `hweak` 版は `C_G(x_p)` の modular datum 一式を要求するが、`x` は Sylow 部分群を走るので**群ごとに違う中心化群**になり、あらかじめ 1 つ固定することができない。 剰余体が代数閉なら全部無償: `GroupAlgebra.exists_modularDatum` が任意の有限群の `π`/`hπ`/`hlin`/`hkerJ`/`hnil` を出し、通常側の分裂は `IsAlgClosed K` の Maschke、 1 の冪根は `hroot`/`hroot'` (`PadicComplexSystem` が `𝓞_ℂ_[p]` について与える形) から。 ⚠ **実装知見**: `exists_modularDatum` が返す `Fintype`/`DecidableEq` は**データ**なので `haveI` では不可 (`have` が証明項を潰し、消費側が推論した instance と defeq でなくなる)。 `letI` で入れる。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_character_blockOfIrr_eq_zero_of_isPRegular_of_roots /-! 🎯🎯🎯 **issue 9506 段 321b**: `hconv` — 第三主定理の逆が、側条件ゼロで立つ。 `eq_principalBlock_of_inducedBlockOfCentralizer_eq_of_roots` (`ThirdMainConverseSupply`)。 `PrincipalBlockInvolution` が仮説として担いでいた `hconv` (`b^G = B_0(G) ⟹ b = b_0(C_G(t))`) がこれで**実証明に置き換わる**。 3 群ぶんの modular datum (`G` / `H = C_G(x)` / `C = C_G(⟨x⟩)`) を 1 本の項で組む: `C` の datum は 段 319b、Sylow・通常側分裂・ブロック冪等元族はいずれも無償、 1 の冪根は `hroot`/`hroot'`。`H` と `C` は部分群として等しいが**その事実は使わない** (段 320b — 2 つの比較が同じ `C` を経由して相殺する)。 ⚠ 供給した側条件: `hweak` (段 321a) / `hvanish` (`blockCharacter_pRegularSum_eq_zero_of_ne_principalBlock`) / `hidem`/`hf`/`hB` (`exists_blockIdempotentFamily`、3 群ぶん)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_principalBlock_of_inducedBlockOfCentralizer_eq_of_roots /-! 🎯🎯 **issue 9506 段 322**: basic set の Cartan は `G ↠ G ⧸ N` で `|N|` 倍になる。 `sum_intBasicSetMatrix_mul_cartanMatrix_quotientPi` (`QuotientBasicSetCartan`)。 原文 p.141 "analysis at `t`" が使う形: `C_G(t)/⟨t⟩` は Klein four Sylow-2 なので (7.4) が `UᵗC_{G/N}U = 1 + δ` を出し、(7.6) が `UᵗC_G U = |N|·UᵗC_{G/N}U` を出す。 2 本が噛み合うのは `quotientPi` が `IBr(G)` と `IBr(G/N)` に**同じ添字集合 `ι` と 同じ行列サイズ**を使う設計だから (= 原文の「`IBr(B̄) = IBr(B)`」の形式化) で、 **変換行列 `U` を両側で共有できる**。 ⚠ **実装知見**: `quotientPi` は `→ₐ[k]` (AlgHom) なので、`π` を**明示引数**に取る 消費側 (`blockCharacterPi` / `Block` / `principalBlock` / `blockSetoid` / `inducedBlockOfCentralizer` / `irreducibleBrauerCharacter`) には **`.toRingHom` を付ける**。`cartanMatrix` のように `π` が implicit なものは `quotientPi_surjective` から推論されるので不要。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_intBasicSetMatrix_mul_cartanMatrix_quotientPi /-! 🎯 **issue 9506 段 323**: basic set 列の直交 — 原文 p.141 の (4) と (5)。 `sum_mul_basicDecompositionNumber_eq_zero` / `sum_mul_basicDecompositionNumber_left_eq_zero` (`BasicSetDecomposition`)。`IBr` 列が直交していれば basic set 列も直交する、という 純粋な双線型の移送。 * (4) `(D^y_0, D^t_j) = 0` — 非共役な `p`-元 `y`, `t` の列。⚠ **`c = 0` を `sum_mul_basicDecompositionNumber` に食わせる形にはならない**: 2 つの元は中心化群が違うので basic set を表す行列 `u`, `u'` が**別の添字集合上の別の行列**になる。⟹ 2 行列版を新設した。 入力は `GeneralizedDecompositionOrthogonality.sum_mul_generalizedDecompositionNumber_eq_zero` (= Navarro (5.13)(a) 後半)。 * (5) `(χ(1), D^t_j) = 0` — スカラー族 × 列。入力は `sum_character_mul_generalizedDecompositionNumber_eq_zero` を `v = 1` で (`1⁻¹ ∉ S(t)` は `t ≠ 1` から)。 ⚠ **(3) `(D^t_i, D^t_j) = |N|(1+δ)` は独立の補題にしない** — 既存の `sum_mul_basicDecompositionNumber_eq_cartanMatrix` (7.5)(c) の右辺が 段 322 の左辺**そのもの** なので、消費側で `rw` + `exact` の 2 行で済む。約 60 個の仮説を書き写すだけのラッパーは 本リポジトリの「薄いラッパーを書かない」規約に反する。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_basicDecompositionNumber_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_basicDecompositionNumber_left_eq_zero /-! 🎯 **issue 9506 段 324**: 原文 p.142 の整数列 — 非零成分は `{1,1,−1}`。 `Algebra.exists_pair_of_sum_sq_eq_three` (`ThreeNormColumn`)。ノルム 3 の整数列で `i₀` 成分が `1`、次数の列 (すべて `≥ 1`、`i₀` で `= 1`) と直交するものは、 **非零成分がちょうど 3 個で `1, 1, −1`**、しかも `deg j = 1 + deg i`。 原文の論法をそのまま: ノルム 3 + 既知の `±1` 成分 ⟹ 全成分が `0, ±1` で非零はちょうど 3 個 (`SumSquaresFour`、**総和 `≤ 4` に一般化**して再利用)。符号は直交から決まる — 両方 `+1` なら `1 + deg i + deg j = 0` で正数の和が 0、 両方 `−1` なら `deg i + deg j = 1` で `≥ 1` が 2 つ、どちらも不能。 ⚠ **表現論を一切含まない純粋な整数の補題として切り出した** — p.142 の中核はこれだけで、 残りは列 `u_j` の定義 (`2u_1 = D^y_0 + D^t_0 − D^t_1 − D^t_2` 等) と内積の計算。 -/ #assert_only_allowed_axioms OddOrder.Algebra.exists_pair_of_sum_sq_eq_three /-! 🎯 **issue 9506 段 325**: 原文 p.142 の半和列 `u_1, u_2, u_3` の内積表。 `Algebra.dotProduct_of_halfSum` / `dotProduct_degree_of_halfSum` (`HalfSumColumns`)。 `a = D^y_0`、`b, c, d = D^t_0, D^t_1, D^t_2` が `(a,a)=(b,b)=(c,c)=(d,d)=4`、`(b,c)=(b,d)=(c,d)=2`、`(a,b)=(a,c)=(a,d)=0` を満たし、次数列 `g = χ(1)` が 4 本すべてと直交するとき、 `2u_1 = a+b−c−d`、`2u_2 = a+b−c+d`、`2u_3 = a+b+c−d` について `(u_i,u_j) = 1 + 2δ_ij`、`(g,u_i) = 0`、`(a,u_i) = 2`。 ⚠ **表現論を含まない純粋な双線型代数**。段 324 (`ThreeNormColumn`) と合わせて **p.142 の内容はこの 2 file で尽きる**。 ⚠ 4 つ目の符号 `(+,+)` (`2u = a+b+c+d`) は**除外される** — それだけノルムが 7 になる (`16 + 4(εc+εd+εcεd)` が `(1,1)` でのみ `28`)。 ⚠ 実装: 3 本を `Fin 3` 添字の族 `u` にまとめ、符号を `![-1,-1,1]` / `![-1,1,-1]` の ベクトル記法で担がせると、9 通りの `(i,j)` が展開補題 1 本の instance で片付く (`fin_cases i <;> fin_cases j <;> norm_num`)。 `![…]` には `Mathlib.Data.Fin.VecNotation`、`fin_cases` には `Mathlib.Tactic.FinCases` の import が要る (無いと `![-1,-1,1]` が `Bool` の `!` として parse され、 "Application type mismatch: List ?m has type … but is expected to have type Bool" になる)。 -/ #assert_only_allowed_axioms OddOrder.Algebra.dotProduct_of_halfSum #assert_only_allowed_axioms OddOrder.Algebra.dotProduct_degree_of_halfSum /-! 🎯🎯 **issue 9506 段 326**: BS 証明の**最後の一歩** — 3 本の符号関係から `χ_1(t) = χ_1(1)`。 `Algebra.eq_of_sign_relations` (`SignRelationSolution`)。原文 p.145: * (6) `1 + δ_1χ_1(t) − δ_2χ_2(t) = 0` * (7) `1 + δ_1χ_1(1) + δ_2χ_2(1) = 0` * (10) `χ_1(1)χ_2(1) + δ_1χ_1(t)²χ_2(1) + δ_2χ_2(t)²χ_1(1) = 0` (6)(7) を `χ_2(t)` / `χ_2(1)` について解いて (10) に代入すると **`−δ_2δ_1(χ_1(1) − χ_1(t))² = 0`** に潰れる ⟹ `t ∈ ker χ_1`。 `ker χ_1` が `q8_exists_proper_normal` の要求する真の正規部分群。 ⚠ **群論を含まない 6 元の環等式**として切り出した (側条件は `δ_i² = 1` のみ)。 ⚠ `linarith` は使えない (`R` は順序体でなく整域) — `sub_eq_zero.mp (pow_eq_zero_iff …)` で閉じる。 📖 **原文 pp.144-145 の実読で確定 (2026-08-06)**: **BS の証明は p.145 で終わる** (p.145 後半の (7.7) と p.146 は Z\*-定理用で、issue 0147 のスコープ外)。 (10) の出所は **Burnside の類和公式** (Isaacs *Characters* Problem (3.9)) を `t` の類に適用したもの — 「2 つの対合の積は奇位数」ゆえ 2-特異元はその積にならない。 ✅ **Burnside の公式は repo に在る**: `ClassSumCoefficientFormula.classSumCoeff_mul_centralizer_card_eq_sum_irreducibleCharacter` (`.lean:121`)。⚠ ただし `ℂ` と repo の `IrreducibleCharacter G` で述べられており、 modular 鎖は `K = ℂ_[p]` と `wedderburnRepresentation` を使う — **係数体の橋渡しが要る**。 -/ #assert_only_allowed_axioms OddOrder.Algebra.eq_of_sign_relations /-! 🎯 **issue 9506 段 327**: 原文 p.143 — 列 `D^t_j` を読み取って (6)(7) を出す。 `Algebra.eq_zero_of_dotProduct_eq_one` / `sign_relation_six` / `exists_sign_relations` (`BasicSetColumnShape`)。 * **p.142 の主張** `(u_2)_3 = (u_3)_3 = (1,0,0)`: `u_1` が `{i₀,i,j}` に台を持ち 値が `1, δ_1, δ_2` (`δ_1δ_2 = −1`) なので `(u_1,u_2) = 1` は `δ_1(v_i − v_j) = 0` と読め、 `v_i = v_j`。`v` の非零成分は `{1,1,−1}` (段 324) なので、等しい 2 成分が `+1` と `−1` を 同時に埋めることはできず `v_i = v_j = 0`。 * **(6)**: `D^t_1 = u_3 − u_1`, `D^t_2 = u_2 − u_1`, `D^t_0 = 2u_1 − D^y_0 + D^t_1 + D^t_2` から `χ(t)_i = −a_i − δ_1(ψ_1(1)+ψ_2(1))`, `χ(t)_j = −δ_2(ψ_1(1)+ψ_2(1))` ⟹ `1 + δ_1χ(t)_i − δ_2χ(t)_j = 1 − δ_1a_i`、これは `(D^y_0,u_1) = 2` から `0`。 * **(7)** は `(χ(1),u_1) = 0` を `u_1` の台で展開しただけ。 * 原文の「記号を選ぶ」2 箇所を明示化: 1 つ目は `u_1` の 2 つの台添字に**名前を付ける**だけ (⟹ `δ_1,δ_2` はその成分そのもの)、2 つ目は `D^y_0` のどちらが非零かの**本当の場合分け**で、 `(i,δ_1)` と `(j,δ_2)` の交換で解消する (`exists_sign_relations`)。 ⚠ 実装知見: `omit [Fintype S] in` は **docstring の前**に置く (後ろだと "unexpected token 'omit'; expected 'lemma'")。 ⚠ `Mathlib.Data.Int.Units` は現行 mathlib に無い。`δ₁δ₂ = −1 ⟹ δ_i = ±1` は `natAbs` + `Nat.dvd_one` + `Int.natAbs_eq_iff` で初等的に出る。 -/ #assert_only_allowed_axioms OddOrder.Algebra.eq_zero_of_dotProduct_eq_one #assert_only_allowed_axioms OddOrder.Algebra.sign_relation_six #assert_only_allowed_axioms OddOrder.Algebra.exists_sign_relations /-! 🎯 **issue 9506 段 328**: 「2 つの対合の積は奇位数」を `Q₈` でも使えるように一般化。 `GroupTheory/UniqueInvolutionSylow.lean` — `commute_involution_eq_of_unique_involution` / `odd_orderOf_mul_of_involution_of_unique_involution`。 原文 p.143-144 の Burnside の段が要求する入力。`BrauerSuzukiInvolutions` に `QuaternionSylowSetup` 版が在ったが、その structure は `hn : 3 ≤ n` (= `|S| ≥ 16`) を持つので **`Q₈` (`|S| = 8`) には使えなかった**。証明が使うのは 「Sylow 2-部分群の対合が一意」だけなので、それを裸の仮説にして切り出した。 ⟹ `QuaternionSylowSetup` 版は**この一般版の特殊化に置換済** (証明は 1 本になった)。 `Q₈` 側は `quaternionTwo` の対合一意性から同じ仮説を供給する。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.commute_involution_eq_of_unique_involution #assert_only_allowed_axioms OddOrder.GroupTheory.odd_orderOf_mul_of_involution_of_unique_involution /-! 🎯 **issue 9506 段 329**: (5.10) の前半を抽出 — 残タスク D を消した部品。 `BlockPartVanishing.sum_ordinaryCoeff_mul_generalizedDecompositionNumber_eq_zero` — `θ = ∑_χ c_χ χ` が `x` の `p`-section 上で消えるなら **`∑_χ c_χ d^x_{χμ} = 0` が全ての `μ ∈ IBr(C_G(x))` で成立**。 `θ(xy) = ∑_μ (∑_χ c_χ d^x_{χμ}) μ(y)` (一般化分解数の定義) と `IBr(C_G(x))` の一次独立性 (`BrauerBasis`) だけで出る。 ⚠ **(5.10) 本体より仮説がずっと少ない** — 第二主定理も `K C_G(x)` の通常分裂 (`eH`/`hnilH`/`hζ`/`hω`) も要らない。`omit` で `IsIntegrallyClosed`/`IsAlgClosed (FractionRing 𝒪)`/`FaithfulSMul`/`DecidableEq (ConjClasses G)` も落ちた。`blockPart_eq_zero_of_forall_pSection` はこれを呼ぶ形に書き換え済 (証明は 1 本)。 ⟹ **これが原文 p.144 の「3×3 可逆行列」を不要にする**: 係数が**全ての `μ` について 一斉に 0** になるので、`α,β,γ` を解いて `u_1` を 2-特異列の結合に書く必要が無い。 その先は 段 323 (`sum_mul_basicDecompositionNumber_left_eq_zero`) と 段 325 (`two_mul_sum_mul_of_halfSum`) がそのまま噛み合う。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_ordinaryCoeff_mul_generalizedDecompositionNumber_eq_zero /-! 🎯🎯 **issue 9506 段 330**: 原文 p.144 の Burnside 段 (残タスク C)。 `Modular/InvolutionClassBurnside` — 対合の類 `K = cl(t)` について * `coeff_classSum_mul_self_eq_zero_of_not_isPRegular` — **群論の入力**: 「2 つの対合の積は奇位数」(段 328) から `(K̂ · K̂)(g) = 0` (`g` が 2-特異)。 * `classSquareFn_eq_card_mul_coeff` — **Burnside を類関数として読む**: `∑_i ω_i(K̂)² χ_i(1) χ_i(g) = |G| · (K̂ · K̂)(g⁻¹)`。 * `sum_classSquareCoeff_mul_generalizedDecompositionNumber_eq_zero` — **(8)(9) 本体**: `∑_χ c_χ d^x_{χμ} = 0` (全ての `μ ∈ IBr(C_G(x))`、`x ≠ 1` は 2-元)。 ⚠ **除算を一切導入していない**: 原文の `χ(t)²/χ(1)` の代わりに `c_i = ω_i(K̂)² χ_i(1)` (`= |K|² χ_i(t)²/χ_i(1)`) を担ぐ。 ⟹ ℂ 上の類和公式 (`ClassSumCoefficientFormula`) を一般係数へ持ち上げる必要も無く、 modular 鎖と同じ分裂体 `K` の中で完結する (**係数体の橋渡しは不要だった**)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.coeff_classSum_mul_self_eq_zero_of_not_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.classSquareFn_eq_card_mul_coeff #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.classSquareFn_eq_zero_of_not_isPRegular #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.not_isPRegular_of_mem_pSection #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_classSquareCoeff_mul_generalizedDecompositionNumber_eq_zero /-! 🎯 **issue 9506 段 331**: 原文 p.141 の「列の先頭が 1」(残タスク E の前半)。 `Modular/TrivialCharacterBasicSet` — (7.4) の basic set `𝓑 = {ε_j χ_j⁰ : j ∈ Irr(B₀), j ≠ j₀}` について: * `principalBasicSet_eq_one_of_trivial` — **`𝓑` は定数関数 `1` を含む** (自明指標の位置 `i₀`; `ε_{i₀} = 1_G(t) = 1`)。 * `ne_of_character_involution_eq_neg_one` — `ε_{j₀} = −1` なので `i₀ ≠ j₀` (捨てられない)。 * `eq_zero_of_sum_principalBasicSet_eq_zero` — **`𝓑` は `G⁰` 上一次独立** (既存 `eq_zero_of_vanishing_on_pRegular_of_apply_eq_zero` を「`𝓑` の展開」の形に読み替え)。 * `eq_of_sum_principalBasicSet_eq` — `𝓑` の展開は一意。 * `eq_ite_of_sum_principalBasicSet_eq_one` — 🎯 **`d^x_{00} = 1`, `d^x_{0j} = 0` (`j ≠ 0`)**: `𝓑` での展開が定数 `1` になる族は `Pi.single i₀ 1`。 ⚠ 自明指標の所在 (`exists_blockOfIrr_eq_principalBlock_character_eq_one`) は `PrincipalBlockTrivial` に**既にあった** — 新規に作る前に概念名で grep して発見。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.principalBasicSet_eq_one_of_trivial #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.ne_of_character_involution_eq_neg_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_zero_of_sum_principalBasicSet_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_of_sum_principalBasicSet_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.eq_ite_of_sum_principalBasicSet_eq_one /-! 🎯🎯 **issue 9506 段 332**: 原文 pp.142-145 の endgame を 1 本に組み上げた。 `Algebra/BrauerSuzukiEndgame`: * `sum_mul_eq_of_support` — 3 点台の列との内積は 3 項に潰れる (3 箇所の inline を共通化)。 * `sign_relation_ten` — **(9) ⟹ (10)**。原文の `Θ_χ = χ(t)²/χ(1)` を除算なしの `w_χ = ω_χ(K̂)²χ(1)` (`w_χ·χ(1) = m·χ(t)²`, `m = |cl(t)|²`) で担ぐので任意の整域で成立。 * `exists_eq_of_columns` — 🎯🎯 **endgame 全体**: 4 本の列の内積表 + 自明指標での値 (`d^y_{00}=d^t_{00}=1`, `d^t_{01}=d^t_{02}=0`) + `χ(t) = D^t_0+ψ_1(1)D^t_1+ψ_2(1)D^t_2` + (10) から **`∃ χ ≠ 1_G, χ(t) = χ(1)`** (原文 p.139 の "our objective")。 段 324 (ノルム 3) → 段 325 (半和の内積表) → 段 327 (6)(7) → 段 326 (代入) を順に噛ませる。 ⚠ `exists_sign_relations` は「記号の選択」を**どちらに取ったかの選言**も返すように強化した (`(i',j',e₁,e₂)` が `(i,j,δ₁,δ₂)` か `(j,i,δ₂,δ₁)` か)。交換で不変な事実 ((10)、 `i' ≠ i₀`) はこれで移送できる。 -/ #assert_only_allowed_axioms OddOrder.Algebra.sum_mul_eq_of_support #assert_only_allowed_axioms OddOrder.Algebra.sign_relation_ten #assert_only_allowed_axioms OddOrder.Algebra.exists_eq_of_columns /-! 🎯🎯 **issue 9506 段 333b**: **対合での一般化分解数は有理整数** (段 332 が要求する ℤ 値性)。 `Modular/InvolutionDecompositionIntegral`: * `exists_nat_character_eq_sum_irreducibleBrauerCharacter` — **任意の通常指標は `p`-正則類上で `IBr` の `ℕ`-結合** (`decompositionNumber` が任意の格子表現に対して定義されているのが効く)。 * `involutionPlusRepresentation` — `V₊ = im (1+σt)/2` を `C_G(t)` の表現として。 * `exists_intCast_generalizedDecompositionNumber` — 🎯🎯 **`d^t_{χφ} ∈ ℤ`**。 `χ(t y) = 2·χ_{V₊}(y) − χ(y)` (段 333a) の右辺は `C_G(t)` の通常指標 2 本ゆえ、 `p`-正則類上でそれぞれ `IBr` の `ℕ`-結合 ⟹ (5.1) の一意性で `d^t_{χφ} = 2n⁺_φ − n_φ`。 ⚠ **原文より弱い仮定で済む**: Navarro は `d^x_{χφ} ∈ ℤ[ζ_{o(x)}]` (Schur スカラー + 制限の 重複度) を経由するが、本証明は**1 の冪根も Schur スカラーも使わず**、`2` が `K` で可逆で あることだけを使う。`p = 2` も `t` が `p`-元であることも不要。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_nat_character_eq_sum_irreducibleBrauerCharacter #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_intCast_generalizedDecompositionNumber /-! **issue 9506 段 333c**: 列を ℤ へ降ろす glue (`BasicSetDecomposition`)。 * `intCast_basicDecompositionNumber` — 整数 `IBr` 列 × 整数 `U` ⟹ **basic set 列も整数** (`d^t_{χμ} ∈ ℤ` = 段 333b、`U ∈ ℤ` = `intBasicSetMatrix`)。 * `sum_mul_eq_of_intCast` — `K` で計算した 2 本の整数列の内積は**その整数** (`ℤ → K` の単射性)。⟹ (7.5) の `(D^t_i,D^t_j) = 2(1+δ)` / `(χ(1),D^t_j) = 0` が 段 332 の ℤ endgame にそのまま届く。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.intCast_basicDecompositionNumber #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_eq_of_intCast /-! 🎯 **issue 9506 段 334**: endgame を「教科書の入力だけ」で呼べる形に。 `Algebra/BrauerSuzukiEndgame`: * `two_dvd_sum_of_odd_degrees` — `χ(t) ≡ χ(y) mod 2` (段 289) + `ψ_i(1)` が奇数 ⟹ **`2 ∣ D^y_0 + D^t_0 + D^t_1 + D^t_2`**。 * `exists_halfSum_columns` — その 1 本の合同から**半和 3 本が整数列として存在**する。 * `exists_eq_of_columns_of_odd_degrees` — 🎯 半和を data で要求しない endgame。 仮説は全部「4 本の列・次数列・`χ(t)`」についての教科書レベルの主張になった。 ⚠ `h10` は半和について量化する (`∀ v, (∀k, 2 v k = a+b−c−d) → …`) — 供給側 (Burnside (9) を半分にしたもの) はその定義式を満たす任意の列で動くので損が無い。 -/ #assert_only_allowed_axioms OddOrder.Algebra.two_dvd_sum_of_odd_degrees #assert_only_allowed_axioms OddOrder.Algebra.exists_halfSum_columns #assert_only_allowed_axioms OddOrder.Algebra.exists_eq_of_columns_of_odd_degrees /-! **issue 9506 段 335**: `sign_relation_ten` の 2 仮説を Burnside 側から供給 (`Modular/InvolutionClassBurnside`)。 * `classSquareCoeff_mul_character_one` — **`c_i·χ_i(1) = |C|²·χ_i(x_C)²`** (= 段 332 `sign_relation_ten` の `hwg : w_χ·g_χ = m·T_χ²`、`m = |C|²`)。 `ω_i(Ĉ)·χ_i(1) = |C|·χ_i(x_C)` を 2 乗するだけ。 * `classSquareCoeff_of_character_eq_one` — **自明指標では `c = |C|²`** (= `hwi₀ : w_{i₀} = m`)。 ⟹ (10) の供給に残るのは `∑_k w_k·u₁_k = 0` (段 330 × 段 323 を 4 列ぶん) だけ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.classSquareCoeff_mul_character_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.classSquareCoeff_of_character_eq_one /-! **issue 9506 段 336**: `(w, u_1) = 0` の 2 段。 * `Algebra/BrauerSuzukiEndgame.sum_mul_halfSum_eq_zero` — **`2(w,u_1) = (w,a)+(w,b)−(w,c)−(w,d)`** ゆえ 4 列が全部直交すれば半和とも直交 (標数 ≠ 2 の整域で)。 * `Modular/InvolutionClassBurnside.sum_classSquareCoeff_mul_basicDecompositionNumber_eq_zero` — **`(w, D^x_φ) = 0`**。(9) が全ての `μ ∈ IBr` について成り立つので `sum_mul_basicDecompositionNumber_left_eq_zero` でそのまま basic set 列へ移る。 ⟹ `sign_relation_ten` の 3 仮説 (`hwg` / `hwi₀` / `hzero`) が**全部供給された** (段 335 + 本段)。F に残るのは datum の instantiation と群論的仮説のみ。 -/ #assert_only_allowed_axioms OddOrder.Algebra.sum_mul_halfSum_eq_zero #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_classSquareCoeff_mul_basicDecompositionNumber_eq_zero /-! 🎯 **issue 9506 段 337 (残タスク G)**: 見つけた指標の核 = 求める正規部分群 (`Modular/WedderburnKernel`)。 * `representationKernel` — 表現の核を部分群として (`Module.End K V` は群でないので `MonoidHom.ker` は使えない; `σ g` が可逆であることで逆元閉性を出す)。正規性も instance。 * `mem_representationKernel_of_character_eq` — 🎯 **対合 `t` で `χ(t) = χ(1)` ⟹ `t ∈ ker χ`**。 `χ(t) = 2 dim V₊ − dim V` と `χ(1) = dim V` から `V₊ = V` ⟹ `σ t = 1`。 * `representationKernel_ne_top` — **自明成分でない Wedderburn 成分の核は真部分群**。 自明に作用すれば指標が定数 ⟹ 自明指標の定数倍 ⟹ 指標表の可逆性 (`eq_ordinaryCoeff`) に矛盾。 * `exists_proper_normal_of_character_eq` — 🎯🎯 **原文 p.139 の "our objective" を `∃ N, N.Normal ∧ N ≠ ⊤ ∧ t ∈ N` の形で出す** (= `q8_exists_proper_normal` の結論の形)。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.mem_representationKernel_of_character_eq #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.representationKernel_ne_top #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_proper_normal_of_character_eq /-! **issue 9506 段 338**: `Q₈` Sylow が Burnside 段の仮説を満たす (`GroupTheory/UniqueInvolutionSylow`)。 `unique_involution_of_quaternionSylow` — **`Q₈` に同型な Sylow 2-部分群は対合が一意**、 しかも段 328/330 が要求する `∀ s ∈ T, s² = 1 → s = 1 ∨ s = z` の形で。 既存 `eq_of_sq_eq_one_of_quaternionTwo` (`QuaternionTwoFacts`) を `↥T` から `G` へ移すだけ。 ⟹ 段 330 の Burnside 段 (`coeff_classSum_mul_self_eq_zero_of_not_isPRegular`) と 段 328 の「2 つの対合の積は奇位数」が **`|S| = 8` の側で使える**ようになった (`BrauerSuzukiInvolutions` の `|S| ≥ 16` 版は使えない)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.unique_involution_of_quaternionSylow /-! **issue 9506 段 339**: `C_G(t)/⟨t⟩` の 2-元は全部対合 (`GroupTheory/BrauerSuzukiQ8`)。 `sq_eq_one_of_isPGroup_zpowers_quotient_centralizer` — 2-元は Sylow `T̄` (= `T` の像) へ 共役で入り、`T ≅ Q₈` の平方は全部 `⟨t⟩` に入る (`sq_eq_one_or_eq_of_quaternionTwo`) ので **`T̄` は指数 2** ⟹ `v² = 1`。 ⟹ 既存 `isConj_of_sq_eq_one_quotient_centralizer` (対合は 1 類) と合わせて、 Navarro (7.2)/(7.4) の `hconjall` (「非自明な 2-元は全部 `t̄` に共役」) が `C_G(t)/⟨t⟩` について供給できる。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.sq_eq_one_of_isPGroup_zpowers_quotient_centralizer /-! 🎯🎯🎯 **issue 9506 段 340**: 原文 pp.139-145 の**指標論パート全体が 1 本の定理**になった (`Modular/AnalysisAtInvolution`)。 `exists_proper_normal_of_columns` — 「analysis at `y` / at `t` の 4 本の整数列 + 原文 p.141 の 内積表 + 自明指標での値 + `χ(t) = D^t_0+ψ_1(1)D^t_1+ψ_2(1)D^t_2` (`ψ_i(1)` 奇数) + `χ(t) ≡ χ(y) mod 2` + Burnside (10)」から **`∃ N, N.Normal ∧ N ≠ ⊤ ∧ t ∈ N`** を出す。 段 332 (endgame) と 段 337 (核) の合成。列の添字は `Irr(B_0)` でなく **`Irr(G)` 全体**に取る (ブロック外では列が 0 なので和は変わらない) — 部分型とその包含を持ち回らずに済む。 ⚠ **仮説パラメータ化・`sorry` 無し**。残りは「これらの仮説を `𝓞_ℂ_[2]` の 2-modular system から供給する」= 段 F だけ。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_proper_normal_of_columns /-! **issue 9506 段 341**: 段 340 の仮説のうち「列の整数性」を供給 (`Modular/AnalysisAtInvolution`)。 * `character_one_eq_card` — **次数列 `χ_k(1) = card (m k)`** (`char_one` + `finrank_fintype_fun_eq_card`) ⟹ `gdeg := fun k => (card (m k) : ℤ)` で `hgdeg` が閉じる。 * `one_le_card` — `hgpos` (次数 ≥ 1)。 * `card_eq_one_of_character_eq_one` — **`hg0` (`gdeg i₀ = 1`) は `hi₀` から出る**。 * `exists_intCast_character_of_involution` — **対合での値の列が整数** (`exists_intCast_character_of_mul_self_eq_one` を全ブロックで `choose`)。 ⟹ 段 340 の 9 種の仮説のうち **`hgdeg` / `hTval` / `hg0` / `hgpos` の 4 つが供給済**。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.character_one_eq_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.one_le_card #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.card_eq_one_of_character_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_intCast_character_of_involution /-! **issue 9506 段 342**: 段 340 の `hcong` / `hs₁` / `hs₂` を教科書の合同から出す橋 (`Algebra/BrauerSuzukiEndgame`)。 * `two_dvd_add_of_modEq` — `χ(t) ≡ χ(y) [ZMOD 2]` (段 289 `intModEq_of_isPElement_of_isPElement`) ⟹ **`2 ∣ χ(y) + χ(t)`** (= `hcong`)。 * `odd_of_modEq_four` — `χ(1) ≡ χ(t) [ZMOD 4]` (`card_modEq_character_involution`) と `χ(t) = ±1` ((7.2)) ⟹ **次数は奇数**。 * `odd_mul_of_eq_one_or_neg_one` — 符号 `ε = ±1` を掛けても奇数のまま (basic set の元は `ψ_j = ε_j χ_j⁰` なので `ψ_j(1) = ε_j χ_j(1)`) ⟹ `hs₁`/`hs₂`。 ⟹ 段 340 の 9 種のうち **7 つが供給済**。残りは `e`/`i₀` (既存 supplier) と 「4 列 + 内積表 + 自明指標での値 + `hT` + `h10`」= modular datum の配線のみ。 -/ #assert_only_allowed_axioms OddOrder.Algebra.two_dvd_add_of_modEq #assert_only_allowed_axioms OddOrder.Algebra.odd_of_modEq_four #assert_only_allowed_axioms OddOrder.Algebra.odd_mul_of_eq_one_or_neg_one /-! **issue 9506 段 343**: 任意の有限群の `ω`/`ω'` を `𝓞_ℂ_[p]` から無条件で (`Modular/PadicComplexSystem`)。 * `exists_isPrimitiveRoot_pRegularExponent` — **任意の有限群 `H` について `∃ ω : 𝓞_ℂ_[p], IsPrimitiveRoot ω (pRegularExponent p H)`**。 * `exists_isPrimitiveRoot_residueField_pRegularExponent` — 剰余体版。 `pRegularExponent p H = |H|_{p'}` なので `p ∤ n` と `n ≠ 0` が自動 — 側条件が消える。 ⟹ F の 4 群 (`G` / `C_G(t)` / `C_G(y)` / `C_G(t)/⟨t⟩`) の `hω`/`hω'` がこれ 1 本で揃う。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isPrimitiveRoot_pRegularExponent #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_isPrimitiveRoot_residueField_pRegularExponent /-! 🎯🎯 **issue 9506 段 344**: **任意の有限群の完全 datum が `𝓞_ℂ_[p]` 上で構成できる** (`Modular/PadicComplexDatum`)。 `exists_datum_padicComplex` — 有限群 `H` について 4 点セットを一度に出す: * 通常分裂 `e : ℂ_[p][H] ≃ₐ ∏ M_{m_i}(ℂ_[p])` (`exists_algEquiv_pi_matrix_padicComplex`) * modular 分裂 `π : k[H] ↠ ∏ M_{n_j}(k)` + `ker π = J(k[H])` + 冪零条件 (`GroupAlgebra.exists_modularDatum`; 剰余体 `𝔽̄_p` が代数閉) * `ω : 𝓞_ℂ_[p]` と `ω' : ResidueField 𝓞_ℂ_[p]` (段 343) ⚠ **仮説がひとつも要らない** — `H` が有限群であること以外に条件が無い。 BS の鎖は 4 群 (`G` / `C_G(t)` / `C_G(y)` / `C_G(t)/⟨t⟩`) の datum を同時に要求し、 どれも事前に固定できないので、この「無条件性」が本質的。 CLAUDE.md「carrier は posit でなく construct」の doneness 判定でもある。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.exists_datum_padicComplex /-! 🎯 **issue 9506 段 345**: (7.5)(c) を対合で使える形に (`Modular/GeneralizedDecompositionInvolution`)。 * `generalizedDecompositionNumberInv_eq_of_mul_self_eq_one` — **`x⁻¹ = x` なので `d^{x⁻¹}_{χ·}` と `d^x_{χ·}` は同じ族** ((5.1) の一意性で同定; 定義式が同一の方程式になる)。 * `sum_mul_basicDecompositionNumber_eq_cartanMatrix_of_involution` — 🎯 **(7.5)(c) の basic set 版を対合で**: `(D^t_i, D^t_j) = UᵗCU`。 ⚠ 既存の basic set 版 (7.5)(c) は `d^{x⁻¹}` の列と `d^x` の列を対にする形なので、 対合でも**そのままでは使えなかった** (`sum_sq_generalizedDecompositionNumber_of_involution` は `IBr` 列の対角成分だけを扱い、族の同定は inline だった)。本段でそれを外に出した。 ⟹ 段 322 (`UᵗC_{C_G(t)}U = 2(1+δ)`) と合成すれば原文 (3) `(D^t_i, D^t_j) = 2(1+δ_ij)` が出る。 -/ #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.generalizedDecompositionNumberInv_eq_of_mul_self_eq_one #assert_only_allowed_axioms OddOrder.RepresentationTheory.Modular.sum_mul_basicDecompositionNumber_eq_cartanMatrix_of_involution /-! 🎯🎯🎯 **issue 9506 段 395**: **`q8_exists_proper_normal` が閉じた** — Navarro pp.139-146 の 指標論パート全体が、`𝓞_ℂ_[2]` 上に構成した 5 群 (`G` / `C_G(t)` / `C_G(t)/⟨t⟩` / `C_{C_G(t)/⟨t⟩}(ȳ)` / `C_G(y)`) の datum から配線された。 段 340 `exists_proper_normal_of_columns` の 9 種の仮説の供給元: `hgdeg`/`hTval`/`hg0`/`hgpos` = 段 341、`haa`/`hga`/`ha0` = 段 348、 `hbb`…`hcd`/`hgb`-`hgd`/`hb0`-`hd0`/`hT` = 段 370、`hab`/`hac`/`had` = 段 349、 `hs₁`/`hs₂` = 段 371、`hcong` = 段 289+342、`hzero` = 段 368+393、`h10` = 段 330/332/335/336。 群論側の入力は `BrauerSuzukiQ8/Reduction.lean` (原文 p.139 の還元) と 段 372-376 (Navarro (7.2) 内の Burnside 段)。 -/ #assert_only_allowed_axioms OddOrder.GroupTheory.q8_exists_proper_normal /-! ## Peterfalvi Part II, Ch. I §1 Proposition 4(c) — 一般形 (2026-08-08, issue 0172) Part II の逐条監査で見つかった**特殊化債務**の解消。書籍の §1 は **(A1) だけ**を仮定する ("We assume in this section that `G` satisfies hypothesis (A1)", p. 100) のに対し、repo の `Hypothesis` は (A1)+(A2)+(A3) を束ねていたため、Prop 4(c) (`N = ⋂_x H^x = C_D(Q) ⊆ C_D(t)`、 `Ḡ = G/N` が (A1) を満たす、`Q̄ ≅ Q`、`|s̄t̄| = |st|`) が **(A2) の下で恒真に潰れていた** (`N = 1`)。これは飾りでなく、書籍は §3 Prop 1(a) の証明で "The statement concerning `𝒩(L)` has been seen in §1, Proposition 4(c)"、 §3 Prop 1(c) の証明で "By §1, Proposition 4(c), the order of `st` is equal to the order of `s̄t̄` in `L̄`" と、**(A1) のみの一般形**を 2 度使う (`L = C_G(X)` の `Ω_X` 上の作用は 一般に忠実でない)。 `Hypothesis` を `HypothesisA1` (= (A1) だけ) の拡張に変更し、§1 の全内容を `HypothesisA1` へ移したうえで、4 条項を一般形で証明した。 併せて **§1 の Lemma (a) の第 2 全単射 `(y,z) ↦ zy`** を補充 (`invertedProdEquiv'`)。書籍は "The mappings `(y,z) ↦ yz` **and** `(y,z) ↦ zy` are bijections from `Y × Z` to `X`" と両方を 主張するが repo は `yz` 側しか持たず、§3 Prop 1(b) (`N_D(X) = N_K(X) N_V(X)` — 反転因子 `K` が 先) は `d⁻¹` に `yz` 版を当てて反転する回り道をしていた。 -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.mem_normalCore_H_iff #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.normalCore_H_le_D #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.normalCore_H_eq_centralizer_Q #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.normalCore_H_le_V #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.conj_t_pow_distinguished_mul_t #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.pow_eq_one_of_mem_normalCore #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.orderOf_mk_distinguished_mul_t #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.quotientQEquiv #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.invertedProdEquiv' #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.inv_mem_invertedBy #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.HypothesisA1.quotientOfKernel /-! ## Q₈ Brauer–Suzuki の下流 — 2026-08-07 に一斉解凍 `q8_exists_proper_normal` が閉じたことで、`brauerSuzuki_quaternionSylow_q8` を経由していた Peterfalvi 補章の鎖が全て axiom-clean になった。従来この 4 本は「Q₈ の `sorry` を継承する」 ことを理由に**意図的に未登録**だった (`TheoremANonTrivialV` の module docstring 参照)。 ``` q8_exists_proper_normal (issue 9506, Navarro pp.139-146) → brauerSuzuki_quaternionSylow_q8 (App. II Prop 1 の前提 (ii)、|S| = 8) → RankOneHypothesis.brauerSuzuki (|S| ≥ 16 の ordinary route と合流) → rankOne_affine_nearField (App. II Prop 1 = 階数 1 の affine near-field model) → FirstCaseHypothesis.theoremB (Pf II Ch.II、issue 2053) → nonempty_theoremAConclusion_of_V_ne_bot (Pf II Ch.II-IV = `V ≠ 1` の半分) → theoremA (Pf II Ch.I §3 の `|G|` 帰納法; `ZassenhausClassification` は axiom でなく明示引数) ``` -/ #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.brauerSuzuki_quaternionSylow_q8 #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.RankOneHypothesis.brauerSuzuki #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.NearFields.rankOne_affine_nearField #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.FirstCaseHypothesis.theoremB #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.Hypothesis.nonempty_theoremAConclusion_of_V_ne_bot #assert_only_allowed_axioms OddOrder.Peterfalvi.Appendices.Suzuki.theoremA /-! ### BG Appendix C, Remark (IV) — the Glauberman–Norton sharpening `p ≤ 3` (issue 0179) BG p. 148 states Remark (IV) with no proof, citing Glauberman–Norton, Proc. Amer. Math. Soc. **119** (1993), 1089–1094 (`references/glauberman-norton/`). The chain formalized here: ``` Affine.eq_univ_of_condCLine (Prop 6, Case 1: the line) → Affine.eq_univ_of_condC (Prop 6, general dimension; double count over lines) → towerSet_succ_subset_normOneSet (Step 3 induction; uses FiniteFieldCount.mul_card_le) → towerSet_subset_normOneSet (Step 3: A_r ⊆ U for r ≤ q) → normSetE_ne_inv_of_five_le (Step 4: |A_q| = p^q but 0 ∉ U) → normSetE_eq_inv_iff (Prop 7, corrected: needs `q ≠ 2 ∨ p = 2`) → le_three_of_conditionA_of_normSetE_eq_inv (BG p. 149, the (A) form) ``` ⚠ The paper's Proposition 7 is stated without hypotheses and is false as literally written (`p` odd, `q = 2` gives `E = {1} = E⁻¹` with `p` arbitrary); BG's own restatement carries condition (A), which excludes exactly that case. See the module docstring of `OddOrder/BG/AppC_GlaubermanNorton.lean`. -/ #assert_only_allowed_axioms OddOrder.BG.AppC.Affine.eq_univ_of_condCLine #assert_only_allowed_axioms OddOrder.BG.AppC.Affine.eq_univ_of_condC #assert_only_allowed_axioms OddOrder.FiniteFieldCount.mul_card_le #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.condC_normOneSet #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.card_towerSubmodule #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.towerSet_subset_normOneSet #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_ne_inv_of_five_le #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.normSetE_eq_inv_iff #assert_only_allowed_axioms OddOrder.BG.AppC.NormSet.le_three_of_conditionA_of_normSetE_eq_inv