The file src/27-fields/p9b.py of the validation package of the paper 27-fld, rendered with an anchor per line; the file itself is beside this page.
1# framed-rational status: EXACT -- integer / modular-F_p / cyclotomic arithmetic; no float in any asserted check (float, if present, only formats an exact rational for display).2"""3Frontier Q1 resolved: the four roles = bosons (counting) + 3 fermion generations.45The closed ladder of primitive roles (pnp, Prop 7.2) splits 1+3 by the6generative/non-generative distinction:7 - COUNTING creates no new operation (iterating the last role returns to it):8 the unique NON-generative role. Bose statistics IS occupation-counting (n in a9 mode = a count), and the gauge connection is a phase count -> counting = BOSONS.10 - ADDITION, MULTIPLICATION, EXPONENTIATION each build a new operation11 (translation, scaling, powering): the three GENERATIVE roles = the three12 FERMION GENERATIONS (Pauli forbids occupation-counting -> not the counting role).13Hence exactly 3 generations = 3 generative roles; no 4th (the ladder closes).14This is the degree-3 of the P9 Galois lead. The role ladder (each role iterates15the previous) orders the generation masses: gen3 (powering) heaviest = the top.16"""17roles = [18 ("counting", "x -> x+1 (successor, the count)", "NONE (returns to counting)", "boson / carrier"),19 ("addition", "x -> x+a (iterate counting)", "translation", "generation 1"),20 ("multiplication", "x -> m x (iterate addition)", "scaling", "generation 2"),21 ("exponentiation", "x -> x^k (iterate multiplication)","powering", "generation 3"),22]23print("="*74)24print("Frontier Q1: the four-role closure = bosons (counting) + 3 fermion generations")25print("="*74)26print(f"\n{'role':16}{'definition':34}{'new operation':14}{'sector'}")27print("-"*74)28for name, dfn, op, sector in roles:29 print(f"{name:16}{dfn:34}{op:14}{sector}")30generative = [r for r in roles if r[2] != "NONE (returns to counting)"]31print(f"\nnon-generative roles: 1 (counting) -> BOSON sector")32print(f"generative roles: {len(generative)} (add, multiply, power) -> {len(generative)} FERMION GENERATIONS")33print(f"=> exactly {len(generative)} generations; the closure (5th role = counting) forbids a 4th.")34print(f" this IS the degree-3 (cubic) of the P9 Galois conjugacy.")3536print("\nspin-statistics <-> count/generate:")37print(" bosons : occupation number = a COUNT (Bose) ; gauge connection = phase count")38print(" fermions: Pauli forbids occupation-counting -> the three GENERATIVE roles")3940# role ladder -> mass ordering: each role iterates (exponentiates) the previous,41# so the generation 'strength' grows steeply. Compare real fermion masses (GeV).42print("\nmass ordering from the role ladder (each role iterates the previous):")43gens = {44 "gen1 (addition)": {"u":2.2e-3, "d":4.7e-3, "e":0.511e-3},45 "gen2 (multiplication)":{"c":1.27, "s":0.093, "mu":0.1057},46 "gen3 (exponentiation)":{"t":172.7, "b":4.18, "tau":1.777},47}48import statistics49prev = None50for g, m in gens.items():51 geo = statistics.geometric_mean(m.values())52 ratio = f" (x{geo/prev:6.0f} over previous)" if prev else ""53 print(f" {g:24}: geo-mean mass = {geo:8.3g} GeV{ratio}")54 prev = geo55print(" => masses ordered gen1<gen2<gen3, steeply (each ~x40-300): the role ladder")56print(" (add<multiply<power) ordering, top (powering) heaviest. Precise values: P7.")57print("="*74)58