Research source · python
verify-persistent-nilpotence-no-go.py
site/public/evidence/bethe-calogero-normal-family/verify-persistent-nilpotence-no-go.py
95 lines. Source is displayed for inspection; it is not executed by this page.
File fingerprint
SHA-256: 496027086b490cbe2a353fb021e536e81616a309ad5170a1677103ed38a6b341
#!/usr/bin/env python3
"""Dependency-free exact checks for the persistent-nilpotence no-go model."""
from fractions import Fraction
def mul(a, b):
"""Multiply in Q[e]/(e^3), coordinates on (1,e,e^2)."""
out = [Fraction(0), Fraction(0), Fraction(0)]
for i, ai in enumerate(a):
for j, bj in enumerate(b):
if i + j < 3:
out[i + j] += ai * bj
return tuple(out)
one = (Fraction(1), Fraction(0), Fraction(0))
eps = (Fraction(0), Fraction(1), Fraction(0))
eps2 = mul(eps, eps)
zero = (Fraction(0), Fraction(0), Fraction(0))
assert eps2 == (0, 0, 1)
assert mul(eps2, eps) == zero
assert mul(eps2, eps2) == zero
def multiplication_matrix(a):
basis = [one, eps, eps2]
columns = [mul(a, b) for b in basis]
return [[columns[j][i] for j in range(3)] for i in range(3)]
def det3(m):
return (
m[0][0] * (m[1][1] * m[2][2] - m[1][2] * m[2][1])
- m[0][1] * (m[1][0] * m[2][2] - m[1][2] * m[2][0])
+ m[0][2] * (m[1][0] * m[2][1] - m[1][1] * m[2][0])
)
# The Hessian determinant of x^4/4 plus transverse quadratics is 3e^2.
jacobian = tuple(3 * x for x in eps2)
M_j = multiplication_matrix(jacobian)
assert jacobian != zero
assert mul(jacobian, jacobian) == zero
assert det3(M_j) == 0
def trace(a):
M = multiplication_matrix(a)
return sum(M[i][i] for i in range(3))
# Trace-pairing Gram matrix on (1,e,e^2); its determinant is the discriminant.
basis = [one, eps, eps2]
trace_gram = [[trace(mul(a, b)) for b in basis] for a in basis]
assert det3(trace_gram) == 0
# Poisson bracket of separated one-coordinate Hamiltonians. Each derivative
# record is (d/dx_1,...,d/dx_r,d/dp_1,...,d/dp_r). H_i and H_j have disjoint
# supports for i != j, so every summand vanishes exactly.
def poisson(grad_f, grad_g, rank):
return sum(
grad_f[i] * grad_g[rank + i]
- grad_f[rank + i] * grad_g[i]
for i in range(rank)
)
rank = 4
for i in range(rank):
for j in range(rank):
if i == j:
continue
# Use arbitrary nonzero exact derivative values on the supported pair.
gf = [Fraction(0)] * (2 * rank)
gg = [Fraction(0)] * (2 * rank)
gf[i], gf[rank + i] = Fraction(2), Fraction(3)
gg[j], gg[rank + j] = Fraction(5), Fraction(7)
assert poisson(gf, gg, rank) == 0
print("persistent-nilpotence no-go verification")
print("critical algebra basis: 1, e, e^2")
print("rank over the parameter base: 3")
print("x^3(1+t*x) and x^3 define the same completed local ideal: unit factor")
print("e^3 = 0 and e^2 != 0: PASS")
print("Hessian determinant j = 3e^2 is nonzero nilpotent: PASS")
print("Norm(j) = det(multiplication by j) = 0: PASS")
print("Trace-pairing discriminant = 0: PASS")
print("Reduced support of every fiber is one point: follows from rad(e^3)=(e)")
print("Pairwise Poisson commutativity of separated Hamiltonians: PASS")
print("Conclusion: finite-flat persistent nilpotence and Liouville integrability")
print("do not force a positive-dimensional critical locus in a fiber.")