Skip to main content

Follow the source behind the result.

Search the paper sections, open their original context and follow the checks they actually cite. The knowledge atlas explains the result; this library locates its source.

v994_mmst_criteria_battery.py

verification/v994_mmst_criteria_battery.py

This is a registered verification module. Read its original code and the paper sections that cite it, then follow the linked claim to its present classification.

Read the publication code on this page

The registered Python source is shown as text. Displaying it does not execute the code.

"""v994 -- SEAM.EQUIV.MMST.01 / SEAM.SIMPLECURRENT.GENERATOR.01
[O updates: 5 of 7 MMST identification criteria EXECUTED [E-measured];
C6 = the quasi-free convergence theorem now WRITTEN OUT (cited [C]);
C7 modular invariance stays cited/open].  Provenance:
experiments/tfpt-discovery/mmst_identification_criteria_probe.py
(ALL PASS) + articles/2026-08-28/psi_lambda_convergence_theorem_en.tex.

THE POINT (completeness wave, 2026-08-28).  Turn the remaining MMST
identification

    QWZ free-fermion edge scaling limit = the (E8)_1 sector theory

into an executable sufficient-criterion battery.  Cited operator-algebraic
inputs: Osborne--Stottmeister, CMP 398 (2023) 219 (arXiv:2107.13834), in
the MMST framework (arXiv:2010.11121).  OS23 covers free-fermion/Virasoro
and bilinear current limits, not the mu4/GSO spin-field extension.

  [E-measured] C1  one QWZ boundary has c=1/2 per Majorana from the
        interval entropy coefficient; 16 copies give c=8 (measured
        c_carrier = 8.005 at L=128).
  [E-measured] C2  the QWZ edge branch is linear with v~1 (lattice
        units) and its first four NS levels approach r=1/2,3/2,5/2,7/2
        (measured [0.506, 1.516, 2.523, 3.524]); even single-Majorana
        Fock degeneracies begin 1,0,1,1,2.
  [E]          C3  finite-mode NS/R character sums and the mu4/GSO
        selector O+S give [1,0,248,0,4124,0,34752] on the q^(1/2) grid
        three orders deep (flagship).
  [E]          C4  the edge two-point amplitude gives the level-one
        current normalisation by Wick contraction: k = 1 exactly at
        1e-10.
  [E]          C5  four SO(16)_1 sectors recombine to one projected E8
        sector; det D8 = 4 -> det E8 = 1 exactly.
  [C cited]    C6  the quasi-free convergence theorem is now WRITTEN
        OUT in articles/2026-08-28/psi_lambda_convergence_theorem_en.tex
        (analytic log coefficient 2/pi^2 = 0.202642... vs measured
        v988 slope 0.203, 0.18%).  Not re-proved here.
  [O cited]    C7  modular covariance/invariance of the completed
        extension stays cited/open.

MUST-FAIL: dropping GSO (O alone) misses the E8 vacuum character;
N_MAJORANA=8 cannot produce the 248 current coefficient.

HONEST SCOPE (firewall): finite QWZ strips and finite character
truncations; the written C6 memorandum is a quasi-free / finite-window
theorem, not a conformal-net isomorphism.  C7 is not executed.  Display
markers of both contracts stay [O]/[C] as booked -- no silent upgrade.
1+1D in and out.  Python-only / Wolfram mirror deferred.
"""
from __future__ import annotations

from math import comb, pi

import numpy as np

from tfpt_constants import check, summary, reset

SX = np.array([[0, 1], [1, 0]], dtype=complex)
SY = np.array([[0, -1j], [1j, 0]], dtype=complex)
SZ = np.array([[1, 0], [0, -1]], dtype=complex)

M_TOP = 1.0
LY = 20
L_ENTROPY = (64, 96, 128)
L_SPECTRUM = 128
MAX_T_POWER = 10
N_MAJORANA = 16
TOL = 1e-10
# v988 measured global HS^2 slope on the QWZ collar (cited, not re-fit).
V988_HS2_SLOPE = 0.203


def strip_hamiltonian(k: float, mass: float = M_TOP, ly: int = LY) -> np.ndarray:
    """The v367/v444 QWZ/p+ip strip, periodic momentum k and open y."""
    onsite = np.sin(k) * SX + (mass - np.cos(k)) * SZ
    hop = -0.5 * SZ + SY / (2j)
    h = np.zeros((2 * ly, 2 * ly), dtype=complex)
    for y in range(ly):
        sl = slice(2 * y, 2 * y + 2)
        h[sl, sl] = onsite
    for y in range(ly - 1):
        a = slice(2 * y, 2 * y + 2)
        b = slice(2 * y + 2, 2 * y + 4)
        h[a, b] = hop
        h[b, a] = hop.conj().T
    return h


def top_edge_branch(length: int) -> tuple[np.ndarray, np.ndarray, np.ndarray]:
    """Extract the most top-localised eigenmode at NS momenta."""
    ks = 2 * pi * (np.arange(length) + 0.5) / length - pi
    energies = np.empty(length)
    localisations = np.empty(length)
    for i, k in enumerate(ks):
        eigenvalues, eigenvectors = np.linalg.eigh(strip_hamiltonian(float(k)))
        weights = np.abs(eigenvectors.reshape(LY, 2, -1)) ** 2
        top_weight = weights.sum(axis=1)[:4].sum(axis=0)
        selected = int(np.argmax(top_weight))
        energies[i] = float(eigenvalues[selected])
        localisations[i] = float(top_weight[selected])
    return ks, energies, localisations


def edge_correlation(ks: np.ndarray, energies: np.ndarray) -> np.ndarray:
    """Scalar correlation matrix of the occupied extracted edge branch."""
    length = len(ks)
    occupied = energies < 0
    x = np.arange(length)
    fourier = np.exp(1j * np.outer(x, ks)) / np.sqrt(length)
    frame = fourier[:, occupied]
    return frame @ frame.conj().T


def interval_entropy(correlation: np.ndarray, ell: int) -> float:
    eigenvalues = np.linalg.eigvalsh(correlation[:ell, :ell])
    eigenvalues = np.clip(eigenvalues, 1e-14, 1 - 1e-14)
    return float(-np.sum(
        eigenvalues * np.log(eigenvalues)
        + (1 - eigenvalues) * np.log(1 - eigenvalues)
    ))


def entropy_c_fit(length: int) -> tuple[float, float]:
    ks, energies, _ = top_edge_branch(length)
    correlation = edge_correlation(ks, energies)
    ells = np.arange(6, length // 3)
    log_chord = np.log((length / pi) * np.sin(pi * ells / length))
    # Majorana/BdG factor 1/2 and one-cut factor 1/2.
    entropies = np.array(
        [interval_entropy(correlation, int(ell)) / 4 for ell in ells]
    )
    slope, intercept = np.polyfit(log_chord, entropies, 1)
    predicted = slope * log_chord + intercept
    residual = entropies - predicted
    r2 = 1 - np.sum(residual ** 2) / np.sum(
        (entropies - entropies.mean()) ** 2
    )
    return float(6 * slope), float(r2)


def polynomial_multiply(a: list[int], b: list[int]) -> list[int]:
    out = [0] * (MAX_T_POWER + 1)
    for i, ai in enumerate(a):
        for j, bj in enumerate(b):
            if i + j <= MAX_T_POWER:
                out[i + j] += ai * bj
    return out


def fermion_factor(power: int, sign: int, flavors: int) -> list[int]:
    out = [0] * (MAX_T_POWER + 1)
    for number in range(flavors + 1):
        exponent = number * power
        if exponent <= MAX_T_POWER:
            out[exponent] = comb(flavors, number) * sign ** number
    return out


def so16_characters(n_majorana: int = N_MAJORANA) -> dict[str, list[int]]:
    """Finite products on the t=q^(1/2) grid, enough for q^5."""
    plus = [1] + [0] * MAX_T_POWER
    minus = plus.copy()
    for power in range(1, MAX_T_POWER + 1, 2):
        plus = polynomial_multiply(
            plus, fermion_factor(power, +1, n_majorana)
        )
        minus = polynomial_multiply(
            minus, fermion_factor(power, -1, n_majorana)
        )
    vacuum = [(a + b) // 2 for a, b in zip(plus, minus)]
    vector = [(a - b) // 2 for a, b in zip(plus, minus)]

    spinor = [0] * (MAX_T_POWER + 1)
    spinor[2] = 2 ** (n_majorana // 2 - 1)
    for power in range(2, MAX_T_POWER + 1, 2):
        spinor = polynomial_multiply(
            spinor, fermion_factor(power, +1, n_majorana)
        )
    return {
        "O": vacuum,
        "V": vector,
        "S": spinor,
        "C": spinor.copy(),
    }


def single_majorana_vacuum_degeneracies(max_level: int = 4) -> list[int]:
    max_t = 2 * max_level
    plus = [1] + [0] * max_t
    minus = plus.copy()

    def multiply_local(a: list[int], power: int, sign: int) -> list[int]:
        out = a.copy()
        for i in range(len(a) - power):
            out[i + power] += sign * a[i]
        return out

    for power in range(1, max_t + 1, 2):
        plus = multiply_local(plus, power, +1)
        minus = multiply_local(minus, power, -1)
    even = [(a + b) // 2 for a, b in zip(plus, minus)]
    return [even[2 * level] for level in range(max_level + 1)]


def bareiss_determinant(matrix: list[list[int]]) -> int:
    """Fraction-free exact determinant for the small Cartan matrices."""
    a = [row.copy() for row in matrix]
    n = len(a)
    previous = 1
    sign = 1
    for k in range(n - 1):
        if a[k][k] == 0:
            swap = next(i for i in range(k + 1, n) if a[i][k] != 0)
            a[k], a[swap] = a[swap], a[k]
            sign *= -1
        pivot = a[k][k]
        for i in range(k + 1, n):
            for j in range(k + 1, n):
                a[i][j] = (
                    a[i][j] * pivot - a[i][k] * a[k][j]
                ) // previous
        previous = pivot
    return sign * a[-1][-1]


def cartan(rank: int, edges: tuple[tuple[int, int], ...]) -> list[list[int]]:
    matrix = [[2 if i == j else 0 for j in range(rank)] for i in range(rank)]
    for i, j in edges:
        matrix[i][j] = matrix[j][i] = -1
    return matrix


def run():
    reset()
    print("v994  SEAM.EQUIV.MMST.01 / SEAM.SIMPLECURRENT.GENERATOR.01: "
          "5-of-7 MMST identification criteria (completeness wave)")

    c_fits = []
    r2_fits = []
    for length in L_ENTROPY:
        c_fit, entropy_r2 = entropy_c_fit(length)
        c_fits.append(c_fit)
        r2_fits.append(entropy_r2)
        print("  entropy L=%3d: c_Majorana=%.6f  R^2=%.8f"
              % (length, c_fit, entropy_r2))
    c_single = c_fits[-1]
    c_carrier = N_MAJORANA * c_single
    check("C1 EXECUTED [E-measured]: one-cut Majorana c~1/2 and 16 copies "
          "give c~8 (convention S_M,1cut = S_scalar/4)",
          abs(c_single - 0.5) < 0.015
          and abs(c_carrier - 8.0) < 0.25
          and max(c_fits) - min(c_fits) < 0.01
          and min(r2_fits) > 0.99)
    print("  measured c_single=%.6f; 16*c=%.6f" % (c_single, c_carrier))

    ks, energies, localisations = top_edge_branch(L_SPECTRUM)
    near = np.abs(ks) < 0.35
    velocity, intercept = np.polyfit(ks[near], energies[near], 1)
    predicted = velocity * ks[near] + intercept
    velocity_r2 = 1 - np.sum((energies[near] - predicted) ** 2) / np.sum(
        (energies[near] - energies[near].mean()) ** 2
    )
    positive = np.where((energies > 0) & (ks > 0) & (ks < 0.4))[0]
    positive = positive[np.argsort(energies[positive])][:4]
    scaled_levels = (
        energies[positive] * L_SPECTRUM / (2 * pi * abs(velocity))
    )
    expected_levels = np.arange(4) + 0.5
    level_degeneracies = single_majorana_vacuum_degeneracies()
    check("C2 EXECUTED [E-measured]: velocity ~1, NS levels ~ r+1/2, "
          "single-Majorana vacuum degeneracies [1,0,1,1,2]",
          abs(abs(velocity) - 1.0) < 0.03
          and velocity_r2 > 0.999
          and np.max(np.abs(scaled_levels - expected_levels)) < 0.04
          and level_degeneracies == [1, 0, 1, 1, 2]
          and float(np.min(localisations[near])) > 0.99)
    print("  v=%.6f R2=%.7f; scaled=%s; deg=%s"
          % (velocity, velocity_r2,
             [round(float(value), 6) for value in scaled_levels],
             level_degeneracies))

    characters = so16_characters()
    e8_projected = [
        characters["O"][i] + characters["S"][i]
        for i in range(MAX_T_POWER + 1)
    ]
    e8_flagship = [1, 0, 248, 0, 4124, 0, 34752]
    e8_expected = e8_flagship + [0, 213126]
    check("C3 EXECUTED [E]: mu4/GSO-projected lattice character sums "
          "reproduce the (E8)_1 vacuum character [1,0,248,0,4124,0,34752] "
          "three orders deep",
          e8_projected[:7] == e8_flagship
          and e8_projected[:9] == e8_expected)
    print("  O(q even): %s; S(q even): %s; O+S: %s"
          % (characters["O"][::2][:5], characters["S"][::2][:5],
             e8_projected[:9]))

    correlation = edge_correlation(ks, energies)
    odd_separations = np.arange(1, L_SPECTRUM // 8, 2)
    amplitudes = []
    for separation in odd_separations:
        chord = L_SPECTRUM / pi * np.sin(pi * separation / L_SPECTRUM)
        amplitudes.append(0.5 * abs(correlation[0, separation]) * chord)
    majorana_amplitude = float(np.mean(amplitudes))
    amplitude_spread = float(np.std(amplitudes))
    current_level = (2 * pi * majorana_amplitude) ** 2
    check("C4 EXECUTED [E]: current-algebra two-point normalisation "
          "k=(2 pi A_psi)^2 = 1 (Wick)",
          abs(majorana_amplitude - 1 / (2 * pi)) < 1e-10
          and abs(current_level - 1.0) < 1e-10
          and amplitude_spread < 1e-10)
    print("  A_psi=%.12f; k=%.12f" % (majorana_amplitude, current_level))

    d8_edges = tuple((i, i + 1) for i in range(6)) + ((5, 7),)
    e8_edges = tuple((i, i + 1) for i in range(6)) + ((2, 7),)
    det_d8 = bareiss_determinant(cartan(8, d8_edges))
    det_e8 = bareiss_determinant(cartan(8, e8_edges))
    nonzero_sector_heads = {
        name: next(i for i, value in enumerate(series) if value)
        for name, series in characters.items()
    }
    check("C5 EXECUTED [E]: four SO(16)_1 sectors -> mu-index-one lattice "
          "shadow (det D8=4 -> det E8=1; selector O+S)",
          det_d8 == 4
          and det_e8 == 1
          and set(characters) == {"O", "V", "S", "C"}
          and nonzero_sector_heads == {"O": 0, "V": 1, "S": 2, "C": 2})
    print("  heads(t)=%s; det(D8)=%d -> det(E8)=%d"
          % (nonzero_sector_heads, det_d8, det_e8))

    analytic_slope = 2.0 / (pi ** 2)
    relative_vs_measured = abs(V988_HS2_SLOPE / analytic_slope - 1.0)
    check("C6 CITED [C]: quasi-free log coefficient 2/pi^2 matches the "
          "written theorem and the v988 measured slope 0.203 at 0.18% "
          "(articles/2026-08-28/psi_lambda_convergence_theorem_en.tex; "
          "NOT re-proved here)",
          abs(analytic_slope - 0.202642367) < 1e-9
          and relative_vs_measured < 0.002)
    print("  2/pi^2=%.12f vs measured %.3f (rel %.4f%%)"
          % (analytic_slope, V988_HS2_SLOPE, 100 * relative_vs_measured))

    check("C7 CITED [O]: modular invariance/covariance of the completed "
          "mu4/GSO extension remains cited; finite q-coefficients are not "
          "that theorem",
          True)

    check("MUST-FAIL [X]: dropping GSO (O alone) misses the (E8)_1 vacuum "
          "character -- the 248 lives in O+S",
          characters["O"][:7] != e8_flagship
          and characters["O"][2] != 248)
    eight_copy = so16_characters(8)
    eight_projected = [
        eight_copy["O"][i] + eight_copy["S"][i]
        for i in range(7)
    ]
    check("MUST-FAIL [X]: N_MAJORANA=8 cannot produce the 248 current "
          "coefficient of (E8)_1",
          eight_projected != e8_flagship
          and eight_projected[2] != 248)

    executed = 5
    check("CRITERIA TALLY: 5 of 7 EXECUTED (C1-C5); C6 written-out [C]; "
          "C7 cited [O] -- verdict MMST_CRITERIA_5_OF_7_EXECUTED",
          executed == 5)
    check("FIREWALL (scope): finite QWZ strips + finite character "
          "truncations; no conformal-net isomorphism; no marker move; "
          "1+1D in and out; Python-only",
          True)

    return summary("v994 MMST criteria battery: 5/7 executed; "
                   "O+S character [1,0,248,0,4124,0,34752]; C6 written-out")


if __name__ == "__main__":
    raise SystemExit(1 if run() else 0)
Recorded source fingerprint

d8f044ca6958cdcfadea12df0a0dada377bddfd6c749e342d61f5be10da252a3

Bounded scientific source excerpts

Each excerpt retains its own original lines, fingerprint and source freshness. These are separate recorded ranges, not a replacement for the complete document.

Paper sections that cite this module

=150 2026-08-28 (CXLI) (the completeness wave — four exploration probes graduate as v994– v997 (suite [formula in source] , ledger [formula in source] : eight contract rows updated, NO status-marker upgrades; Python-only / Wolfram mirror deferred as for v974–v993). (1) v994_ mmst_ criteria_ battery.py ( [formula in source] ): [formula in source] of [formula in source] MMST identification criteria executed -measured — measured [formula in source] (16 Majorana copies), conformal edge spectrum [formula in source] , current normalisation [formula in source] , sector collapse [formula in source] , and the flagship: [formula in source] /GSO-projected lattice character sums reproduce the [formula in source] vacuum character [formula in source] three orders deep; C6 is now written out in articles/2026-08-28/psi_lambda_convergence_theorem_en.tex (analytic log coefficient [formula in source] vs measured [formula in source] , [formula in source] ); C7 modular invariance stays cited/open. Ledger notes on SEAM.EQUIV.MMST.01 (stays ) and SEAM.SIMPLECURRENT.GENERATOR.01 (stays ; open rest [formula in source] C7 [formula in source] net G2/G3/G4). (2) v995_ kms_ subnet_ rigidity.py ( [formula in source] ): all [formula in source] v972 mixing directions killed by KMS alone on finite [formula in source] ; covariance provably redundant; unique [formula in source] -invariant crossed-product extension [formula in source] . SEAM.STATE.RPMIXING.01 finite KMS rigidity ; type-III/continuum stays . (3) v996_ gauge_ grammar_ kill.py ( [formula in source] ): H0 structural kill — negative [formula in source] flip the stationary-root signs ( [formula in source] inverse [formula in source] , [formula in source] [formula in source] ); [formula in source] conventions [formula in source] hits; [formula in source] control [formula in source] survives all mutants; detline curvature [formula in source] exponentially with rate [formula in source] (numerical Bismut–Freed shadow). GAUGE.DETLINE.FIXPOINT.01 naive grammar excluded ; genuinely nonabelian structure required — typed; [formula in source] remains an external input; contract stays . (4) v997_ spin2_ smg_ witnesses.py ( [formula in source] ): Barnes–Rivers quadratic decomposition — [formula in source] clean (one massless TT pole, two helicities, scalaron at [formula in source] exact); the local [formula in source] Weyl [formula in source] truncation necessarily carries an opposite-residue spin-2 ghost — typed; FK SMG toy: [formula in source] unique [formula in source] -singlet ground state, Schmidt rank [formula in source] , volume-independent gap [formula in source] at [formula in source] ; [formula in source] contrast [formula in source] -degenerate; physical chiral edge keeps [formula in source] exactly. GRAV.SPIN2.EMERGENCE.01 quadratic witnesses , content pinned on the untruncated form factor; CHIRAL4D.NOMIRROR.01 SMG toy-proved , [formula in source] D [formula in source] stays ; both contracts stay . Canonical note (not a module) on FLAV.NUSCALE.05: NU_TEXTURE_CENSUS_NULL [formula in source] — frozen [formula in source] inventory provably insufficient; mechanism \ sharpened. Surfaces: tfpt_research_contracts (executed-update paragraphs at MMST/SIMPLECURRENT, RPMIXING, GAUGE.DETLINE.FIXPOINT.01, GRAV.SPIN2.EMERGENCE.01, CHIRAL4D.NOMIRROR.01, ALPHA.QUILLEN rigidity/ln-2 notes); tfpt_2 (census-null note); tfpt_4_frontier [formula in source] introduction card addendum. Exploration record: articles/2026-08-28/big_picture_simplicity_first_en.md.
What this source index covers

The public registry includes 116 document views, 6,693 section records and 985 physical LaTeX sources. Active publication documents, research material and archives retain their recorded roles. This is source navigation, not a new semantic review or proof run.