Research source · python
verify-square-lattice-collision.py
site/public/evidence/bethe-calogero-normal-family/verify-square-lattice-collision.py
72 lines. Source is displayed for inspection; it is not executed by this page.
File fingerprint
SHA-256: 15acf8ab12e92a36fffeeb08a95fa185aef9573c57fe3d24843b555c791875ff
#!/usr/bin/env python3
"""Dependency-free exact checks for the B2 square-lattice collision."""
from fractions import Fraction
def A(t, g2):
return 6 * t * t - g2 / 2
# Check the half-period Hessian factorization at many exact rational values.
pair_count = 0
for p_num in range(-8, 9):
for r_num in range(-7, 8):
p = Fraction(p_num, 3)
r = Fraction(r_num, 5)
q = -p - r
g2 = 2 * (p * p + q * q + r * r)
lam_x = 2 * A(r, g2) + A(p, g2)
lam_y = 2 * A(r, g2) + A(q, g2)
assert lam_x == 6 * r * (r - p)
assert lam_y == 6 * r * (r - q)
pair_count += 1
# Square lattice: the half-period values are a,-a,0 and g2=4a^2.
for a_num in range(1, 11):
a = Fraction(a_num, 7)
p, q, r = a, -a, Fraction(0)
g2 = 2 * (p * p + q * q + r * r)
assert g2 == 4 * a * a
assert 2 * A(r, g2) + A(p, g2) == 0
assert 2 * A(r, g2) + A(q, g2) == 0
# At a half-period e, wp''''=12e wp''.
assert 12 * p * A(p, g2) == 48 * a**3
assert 12 * q * A(q, g2) == -48 * a**3
assert 12 * r * A(r, g2) == 0
# The initial gradient ideal is (x^3,y^3), with these nine standard
# monomials. This records the exact local-intersection length.
standard_monomials = [(i, j) for i in range(3) for j in range(3)]
assert len(standard_monomials) == 9
# Verify the joint modular/flavor factorization exactly on a grid.
tuple_count = 0
for a_num in range(1, 8):
for r_num in range(-5, 6):
for sigma_num in range(-4, 5):
for x_num in range(-3, 4):
a = Fraction(a_num, 5)
r = Fraction(r_num, 7)
sigma = Fraction(sigma_num, 11)
x = Fraction(x_num, 13)
kappa = 3 * r + 2 * a * a * sigma
lhs = 8 * a**3 * x**3 - (6 * a * r + 4 * a**3 * sigma) * x
rhs = 2 * a * x * (4 * a * a * x * x - kappa)
assert lhs == rhs
tuple_count += 1
# For f(t)=4a^2 t^3-kappa t, the cubic discriminant is
# -4*(4a^2)*(-kappa)^3=16a^2 kappa^3. Tensoring the two rank-three
# algebras gives disc(f)^3 disc(f)^3 and therefore kappa^18.
one_factor_kappa_order = 3
tensor_kappa_order = 3 * one_factor_kappa_order + 3 * one_factor_kappa_order
assert tensor_kappa_order == 18
print("B2 half-period Hessian factorization checked on", pair_count, "exact pairs")
print("square-lattice Hessian and fourth derivatives checked exactly")
print("leading Jacobian algebra basis size =", len(standard_monomials))
print("joint smoothing factorization checked on", tuple_count, "exact tuples")
print("one-variable discriminant = 16*a^2*kappa^3")
print("rank-nine discriminant order =", tensor_kappa_order)
print("all exact checks passed")