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.

v1020_spectator_sector_obstruction.py

verification/v1020_spectator_sector_obstruction.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.

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""v1020 -- SPECTATOR-SECTOR OBSTRUCTION (BULK.PRIME_COMPLETION.01 / SEAM.BULK4D.RECON.01).

Promotion of the spectator-sector obstruction probe (round r644 audit
harvest, 2026-09-04).  The module RE-DERIVES the finite free-fermion
witness from scratch (no probe imports, no subprocess): stacking a
decoupled trivial gapped sector C onto the seam model B leaves every
seam-side datum unchanged but changes the bulk; a Krylov/commutant
seam-generatedness test separates B from B (+) C exactly.  Float64,
honest.  Nine checks (A1-A6, B1-B3), verdict
OBSTRUCTION_WITNESSED_AND_REPAIR_SEPARATES.

CONSTRUCTION (copied, not imported): Model B = strip_hamiltonian(p)
with MASS=1.0, NY=8, TRANSVERSE_DIMENSION=16, TY=SY/(2j)-SZ/2, onsite
sin(p) SX + (M-cos p) SZ (copied verbatim from the mmst_telb kernel
structure).  Model C = same construction with MASS=3.0 (Chern 0,
gapped, no edge modes).  B (+) C = h_B(p) (+) h_C(p) (32x32 block
diagonal).  Seam sites = top row (y=0, dims 0:2) and bottom row
(y=7, dims 14:16) of B; in B (+) C the same dims (C contributes no
seam sites).  Momentum grid p_k = 2 pi k / N, N=64 (untwisted);
q_k = 2 pi (k+alpha)/N, alpha=0.25 (twisted), k=-N/2..N/2-1.
Fermi projector: fermi_covariance, ZERO_CUT=1e-11, half-filling for
zero modes.

PART A (seam data identical):
  A1 Chern via Fukui-Hatsugai-Suzuki on d(kx,ky)=(sin kx, sin ky,
     M-cos kx-cos ky), 60x60 grid: C(B)=+/-1, C(C)=0, C(B+C)=C(B).
  A2 Zero modes at p=0: B has 2 (|E|<1e-9), C has 0, B+C has 2
     supported entirely in B block (norm^2 > 1-1e-12).
  A3 Edge dispersion: 33 points in (-pi/2, pi/2), two smallest |E|
     eigenvalues of h_B and h_{B+C} coincide to 1e-12.
  A4 Seam-restricted covariance: 4x4 blocks on dims {0,1,14,15} agree
     to 1e-12 (untwisted and twisted).
  A5 Seam Hardy remainder: edge profiles agree up to phase
     (|<phi_B, phi_{B+C}|_B>| > 1-1e-12, zero weight in C block).
  A6 Bulk differs: dim 16 vs 32; E_0(B+C)-E_0(B)=E_0(C)<0 with
     |E_0(C)|>1; bulk gap; mid-strip covariance rank; twist HS norm.

PART B (repaired criterion, seam-generatedness):
  B1 Krylov generatedness: K(p)=span{h(p)^n v, n=0..dim-1, v in seam
     basis (4 vectors, dims {0,1,14,15})}.  spectator_dim=dim-dimK.
     Gate: spectator_dim_{B+C}(p) - spectator_dim_B(p) = 16 for every p.
  B2 Commutant: dim {X : [X,h(p)]=0, [X,Pi_seam]=0} via null space of
     stacked map.  Gate: commutant_dim_{B+C}(p) - commutant_dim_B(p)
     >= 1 for every p, and Pi_C = 0 (+) 1 lies in commutant of B+C.
  B3 Prime-completion selection: among {B, B+C} with identical seam
     data, exactly ONE satisfies "spectator_dim <= spectator_dim_B
     for all p AND Pi_C-type projector absent" -> selects B uniquely.

HONEST NOTES (typed; NO marker upgrade anywhere):
  (i) FINITE WITNESS.  This is a finite free-fermion witness for a
      monoidal-obstruction statement, NOT a 4D theorem.  The ledger
      row SEAM.BULK4D.RECON.01 stays [O]; the new contract
      BULK.PRIME_COMPLETION.01 is registered [O] (a research contract,
      not a claim).  DIMENSION.UPLIFT.FIREWALL.01 F2 applies: the
      hypothesis is 2+1D free-fermion, the conclusion is a re-scoped 4D
      demand.
  (ii) ALMOST-EVERYWHERE.  spectator_dim(B)=0 at 127/128 momenta but
       10 at p=0 (h(0) has no onsite term at M=1, T_Y rank 1 -> the
       Krylov space of the seam sites reaches only 6/16; the commutant
       there has dim 58).  The criterion is therefore "generated almost
       everywhere in p" (dense), NOT pointwise.  The diff
       spectator_dim(B+C) - spectator_dim(B) = 16 holds at ALL 128
       momenta including p=0.
  (iii) The 2D modular-invariant uniqueness of the holomorphic (E8)_1
        net is untouched and is NOT a 4D no-spectator theorem.

PROVENANCE: experiments/tfpt-discovery/spectator_sector_obstruction_probe.py
(r644, 9/9, 27.7 s, VERDICT OBSTRUCTION_WITNESSED_AND_REPAIR_SEPARATES,
SPEC_SHA 07169b54f802bc7d5d54f4597a9461a80c6bc268b04f101be525eac7636df60c,
FILE_SHA 7f58f498eca4619f292c6c48f12c35eec2796a7d88f9065cc8400dab8a0cf507).
The probe stays experiments-side; this module is the load-bearing copy.
NO RH CLAIM.  Python-only / Wolfram mirror deferred (engine
DEFERRED_NO_ENGINE).
"""
from __future__ import annotations

import os

os.environ.setdefault("OMP_NUM_THREADS", "1")
os.environ.setdefault("MKL_NUM_THREADS", "1")
os.environ.setdefault("OPENBLAS_NUM_THREADS", "1")
os.environ.setdefault("NUMEXPR_NUM_THREADS", "1")

from math import pi

import numpy as np

from tfpt_constants import check as suite_check, summary, reset

R644_SPEC = "07169b54f802bc7d5d54f4597a9461a80c6bc268b04f101be525eac7636df60c"
R644_FILE = "7f58f498eca4619f292c6c48f12c35eec2796a7d88f9065cc8400dab8a0cf507"
CONTRACT_NEW = "BULK.PRIME_COMPLETION.01"
CONTRACT_SHARPENED = "SEAM.BULK4D.RECON.01"
FIREWALL = "DIMENSION.UPLIFT.FIREWALL.01"
VERDICT = "OBSTRUCTION_WITNESSED_AND_REPAIR_SEPARATES"

NY = 8
TRANSVERSE_DIMENSION = 2 * NY
ZERO_CUT = 1.0e-11

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)
TY = SY / (2j) - SZ / 2

MASS_B = 1.0
MASS_C = 3.0
N_GRID = 64
TWIST_ALPHA = 0.25
SEAM_DIMS = (0, 1, 14, 15)
CHERN_GRID = 60
EDGE_GRID_POINTS = 33
EDGE_GRID_RANGE = (-pi / 2.0, pi / 2.0)
KRYLOV_TOL = 1.0e-9
COMMUTANT_TOL = 1.0e-9
CHERN_INT_TOL = 1.0e-9
ZERO_MODE_TOL = 1.0e-9
SEAM_SUPPORT_TOL = 1.0e-12
EDGE_DISP_TOL = 1.0e-12
SEAM_COV_TOL = 1.0e-12
EDGE_OVERLAP_TOL = 1.0e-12
GROUND_STATE_ENERGY_GAP = 1.0
COMMUTATOR_RESIDUAL_TOL = 1.0e-12

DIM_B = TRANSVERSE_DIMENSION
DIM_BC = 2 * TRANSVERSE_DIMENSION


def check(label: str, condition: bool, detail: str = "") -> bool:
    ok = bool(condition)
    suite_check(label if not detail else "%s -- %s" % (label, detail), ok)
    return ok


def strip_hamiltonian(momentum: float, mass: float) -> np.ndarray:
    matrix = np.zeros((TRANSVERSE_DIMENSION, TRANSVERSE_DIMENSION), dtype=complex)
    onsite = np.sin(momentum) * SX + (mass - np.cos(momentum)) * SZ
    for y_index in range(NY):
        site = slice(2 * y_index, 2 * y_index + 2)
        matrix[site, site] = onsite
    for y_index in range(NY - 1):
        lower = slice(2 * y_index, 2 * y_index + 2)
        upper = slice(2 * y_index + 2, 2 * y_index + 4)
        matrix[upper, lower] = TY
        matrix[lower, upper] = TY.conj().T
    return matrix


def fermi_covariance(momentum: float, mass: float) -> np.ndarray:
    eigenvalues, eigenvectors = np.linalg.eigh(strip_hamiltonian(momentum, mass))
    occupation = np.zeros_like(eigenvalues)
    occupation[eigenvalues < -ZERO_CUT] = 1.0
    occupation[np.abs(eigenvalues) <= ZERO_CUT] = 0.5
    return (eigenvectors * occupation) @ eigenvectors.conj().T


def edge_profiles(mass: float) -> tuple[np.ndarray, np.ndarray]:
    eigenvalues, eigenvectors = np.linalg.eigh(strip_hamiltonian(0.0, mass))
    zero_indices = np.where(np.abs(eigenvalues) <= ZERO_CUT)[0]
    if zero_indices.size == 0:
        raise ValueError("no zero modes at p=0 for mass=%s" % mass)
    top_scores = [float(np.sum(np.abs(eigenvectors[:4, i]) ** 2)) for i in zero_indices]
    bottom_scores = [float(np.sum(np.abs(eigenvectors[-4:, i]) ** 2)) for i in zero_indices]
    top = eigenvectors[:, zero_indices[int(np.argmax(top_scores))]]
    bottom = eigenvectors[:, zero_indices[int(np.argmax(bottom_scores))]]
    return top, bottom


def stacked_hamiltonian(momentum: float) -> np.ndarray:
    stacked = np.zeros((DIM_BC, DIM_BC), dtype=complex)
    stacked[:DIM_B, :DIM_B] = strip_hamiltonian(momentum, MASS_B)
    stacked[DIM_B:, DIM_B:] = strip_hamiltonian(momentum, MASS_C)
    return stacked


def stacked_fermi_covariance(momentum: float) -> np.ndarray:
    stacked = np.zeros((DIM_BC, DIM_BC), dtype=complex)
    stacked[:DIM_B, :DIM_B] = fermi_covariance(momentum, MASS_B)
    stacked[DIM_B:, DIM_B:] = fermi_covariance(momentum, MASS_C)
    return stacked


def bloch_hamiltonian_2d(kx: float, ky: float, mass: float) -> np.ndarray:
    dx = np.sin(kx)
    dy = np.sin(ky)
    dz = mass - np.cos(kx) - np.cos(ky)
    return dx * SX + dy * SY + dz * SZ


def chern_number_fhs(mass: float, grid: int = CHERN_GRID) -> float:
    step = 2.0 * pi / grid
    occupied = []
    for ix in range(grid):
        row = []
        for iy in range(grid):
            ham = bloch_hamiltonian_2d(ix * step, iy * step, mass)
            _, eigvecs = np.linalg.eigh(ham)
            row.append(eigvecs[:, :1])
        occupied.append(row)
    total_flux = 0.0
    for ix in range(grid):
        ix1 = (ix + 1) % grid
        for iy in range(grid):
            iy1 = (iy + 1) % grid
            u00 = occupied[ix][iy]
            u10 = occupied[ix1][iy]
            u11 = occupied[ix1][iy1]
            u01 = occupied[ix][iy1]
            link1 = np.linalg.det(u00.conj().T @ u10)
            link2 = np.linalg.det(u10.conj().T @ u11)
            link3 = np.linalg.det(u11.conj().T @ u01)
            link4 = np.linalg.det(u01.conj().T @ u00)
            total_flux += -np.imag(np.log(link1 * link2 * link3 * link4))
    return float(total_flux / (2.0 * pi))


def zero_mode_report(mass: float) -> tuple[int, np.ndarray]:
    eigenvalues, eigenvectors = np.linalg.eigh(strip_hamiltonian(0.0, mass))
    mask = np.abs(eigenvalues) < ZERO_MODE_TOL
    return int(np.count_nonzero(mask)), eigenvectors[:, mask]


def stacked_zero_mode_report() -> tuple[int, np.ndarray]:
    eigenvalues, eigenvectors = np.linalg.eigh(stacked_hamiltonian(0.0))
    mask = np.abs(eigenvalues) < ZERO_MODE_TOL
    return int(np.count_nonzero(mask)), eigenvectors[:, mask]


def untwisted_grid() -> np.ndarray:
    k = np.arange(-N_GRID // 2, N_GRID // 2)
    return 2.0 * pi * k / N_GRID


def twisted_grid() -> np.ndarray:
    k = np.arange(-N_GRID // 2, N_GRID // 2)
    return 2.0 * pi * (k + TWIST_ALPHA) / N_GRID


def seam_projector(dim: int) -> np.ndarray:
    proj = np.zeros((dim, dim), dtype=complex)
    for d in SEAM_DIMS:
        if d < dim:
            proj[d, d] = 1.0
    return proj


def spectator_projector_c() -> np.ndarray:
    proj = np.zeros((DIM_BC, DIM_BC), dtype=complex)
    proj[DIM_B:, DIM_B:] = np.eye(DIM_B)
    return proj

def krylov_dimension(ham: np.ndarray, seed_dims: tuple[int, ...], dim: int,
                     tol: float = KRYLOV_TOL) -> int:
    """Dimension of K(p) = span{ h^n v : n=0..dim-1, v in seed basis }."""
    basis: list[np.ndarray] = []
    for seed in seed_dims:
        if seed >= dim:
            continue
        v = np.zeros(dim, dtype=complex)
        v[seed] = 1.0
        w = v.copy()
        for _ in range(dim):
            if len(basis) >= dim:
                break
            for _pass in range(2):
                for q in basis:
                    w = w - (q.conj() @ w) * q
            nrm = float(np.linalg.norm(w))
            if nrm < tol:
                break
            q = w / nrm
            basis.append(q)
            w = ham @ q
    return len(basis)


def commutant_dimension(ham: np.ndarray, proj_seam: np.ndarray, dim: int,
                        tol: float = COMMUTANT_TOL) -> int:
    """Dimension of {X : [X,h]=0, [X,Pi_seam]=0} as a complex vector space."""
    ident = np.eye(dim, dtype=complex)
    comm_h = np.kron(ham.T, ident) - np.kron(ident, ham)
    comm_p = np.kron(proj_seam.T, ident) - np.kron(ident, proj_seam)
    stacked = np.vstack([comm_h, comm_p])
    real_part = np.vstack([stacked.real, stacked.imag])
    sv = np.linalg.svd(real_part, compute_uv=False)
    rank = int(np.sum(sv > tol * (sv[0] if sv.size else 1.0)))
    return dim * dim - rank


def commutator_residual(x: np.ndarray, ham: np.ndarray, proj_seam: np.ndarray) -> float:
    """Max abs residual of [X,h] and [X,Pi_seam] for a candidate X."""
    r1 = np.linalg.norm(x @ ham - ham @ x)
    r2 = np.linalg.norm(x @ proj_seam - proj_seam @ x)
    return float(max(r1, r2))


def ground_state_energy_density(momentum_grid: np.ndarray, mass: float) -> float:
    total = 0.0
    for p in momentum_grid:
        evals = np.linalg.eigvalsh(strip_hamiltonian(float(p), mass))
        total += float(np.sum(evals[evals < 0.0]))
    return total / len(momentum_grid)


def stacked_ground_state_energy_density(momentum_grid: np.ndarray) -> float:
    total = 0.0
    for p in momentum_grid:
        evals = np.linalg.eigvalsh(stacked_hamiltonian(float(p)))
        total += float(np.sum(evals[evals < 0.0]))
    return total / len(momentum_grid)


def bulk_gap(momentum_grid: np.ndarray, mass: float, n_edge: int = 2) -> float:
    gap = float("inf")
    for p in momentum_grid:
        evals = np.sort(np.abs(np.linalg.eigvalsh(strip_hamiltonian(float(p), mass))))
        if len(evals) > n_edge:
            gap = min(gap, float(evals[n_edge]))
    return gap


def stacked_bulk_gap(momentum_grid: np.ndarray, n_edge: int = 2) -> float:
    gap = float("inf")
    for p in momentum_grid:
        evals = np.sort(np.abs(np.linalg.eigvalsh(stacked_hamiltonian(float(p)))))
        if len(evals) > n_edge:
            gap = min(gap, float(evals[n_edge]))
    return gap


def midstrip_covariance_rank(momentum_grid: np.ndarray, mass: float,
                             rows: tuple[int, ...] = (3, 4)) -> int:
    dims = []
    for y in rows:
        dims.extend([2 * y, 2 * y + 1])
    blocks = []
    for p in momentum_grid:
        cov = fermi_covariance(float(p), mass)
        blocks.append(cov[np.ix_(dims, dims)])
    full = np.array(blocks)
    sv = np.linalg.svd(full.reshape(-1, full.shape[-1]), compute_uv=False)
    return int(np.sum(sv > 1e-9 * (sv[0] if sv.size else 1.0)))


def stacked_midstrip_covariance_rank(momentum_grid: np.ndarray,
                                     rows: tuple[int, ...] = (3, 4)) -> int:
    dims_b = []
    dims_c = []
    for y in rows:
        dims_b.extend([2 * y, 2 * y + 1])
        dims_c.extend([DIM_B + 2 * y, DIM_B + 2 * y + 1])
    dims = dims_b + dims_c
    blocks = []
    for p in momentum_grid:
        cov = stacked_fermi_covariance(float(p))
        blocks.append(cov[np.ix_(dims, dims)])
    full = np.array(blocks)
    sv = np.linalg.svd(full.reshape(-1, full.shape[-1]), compute_uv=False)
    return int(np.sum(sv > 1e-9 * (sv[0] if sv.size else 1.0)))


def twist_hs_norm(momentum_grid_untwisted: np.ndarray,
                  momentum_grid_twisted: np.ndarray,
                  mass: float) -> float:
    diff = 0.0
    for pk, qk in zip(momentum_grid_untwisted, momentum_grid_twisted):
        cov0 = fermi_covariance(float(pk), mass)
        cov1 = fermi_covariance(float(qk), mass)
        diff += float(np.sum(np.abs(cov0 - cov1) ** 2))
    return float(np.sqrt(diff))


def stacked_twist_hs_norm(momentum_grid_untwisted: np.ndarray,
                          momentum_grid_twisted: np.ndarray) -> float:
    diff = 0.0
    for pk, qk in zip(momentum_grid_untwisted, momentum_grid_twisted):
        cov0 = stacked_fermi_covariance(float(pk))
        cov1 = stacked_fermi_covariance(float(qk))
        diff += float(np.sum(np.abs(cov0 - cov1) ** 2))
    return float(np.sqrt(diff))
def run() -> int:
    reset()
    print("=" * 74)
    print("v1020 -- SPECTATOR-SECTOR OBSTRUCTION")
    print("contract NEW %s [O] / sharpened %s [O] (no marker move)"
          % (CONTRACT_NEW, CONTRACT_SHARPENED))
    print("firewall %s F2 (2+1D hypothesis, re-scoped 4D conclusion)" % FIREWALL)
    print("r644 SPEC_SHA %s" % R644_SPEC)
    print("r644 FILE_SHA (probe) %s" % R644_FILE)
    print("verdict target: %s" % VERDICT)
    print("=" * 74, flush=True)

    grid_u = untwisted_grid()
    grid_t = twisted_grid()
    proj_b = seam_projector(DIM_B)
    proj_bc = seam_projector(DIM_BC)
    pi_c = spectator_projector_c()

    # ---- A1: Chern numbers ------------------------------------------------
    print("\nA1  Chern numbers (FHS, %dx%d grid)" % (CHERN_GRID, CHERN_GRID), flush=True)
    c_b = chern_number_fhs(MASS_B)
    c_c = chern_number_fhs(MASS_C)
    c_bc = c_b + c_c
    print("  C(B)=%.12f C(C)=%.12f C(B+C)=%.12f" % (c_b, c_c, c_bc))
    a1 = (abs(abs(c_b) - 1.0) < CHERN_INT_TOL
          and abs(c_c) < CHERN_INT_TOL
          and abs(c_bc - c_b) < CHERN_INT_TOL)
    check("A1 Chern numbers B=+-1, C=0, B+C=B", a1,
          "C_B=%.6f C_C=%.6f C_BC=%.6f" % (c_b, c_c, c_bc))

    # ---- A2: zero modes at p=0 --------------------------------------------
    print("\nA2  Zero modes at p=0", flush=True)
    n_b, vecs_b = zero_mode_report(MASS_B)
    n_c, vecs_c = zero_mode_report(MASS_C)
    n_bc, vecs_bc = stacked_zero_mode_report()
    b_support = 0.0
    if vecs_bc.shape[1] > 0:
        b_support = float(np.sum(np.abs(vecs_bc[:DIM_B, :]) ** 2)) / vecs_bc.shape[1]
    print("  nB=%d nC=%d nBC=%d Bsupport=%.12f" % (n_b, n_c, n_bc, b_support))
    a2 = (n_b == 2 and n_c == 0 and n_bc == 2
          and b_support > 1.0 - SEAM_SUPPORT_TOL)
    check("A2 zero modes B=2, C=0, B+C=2 in B block", a2,
          "nB=%d nC=%d nBC=%d Bsupport=%.12f" % (n_b, n_c, n_bc, b_support))

    # ---- A3: edge dispersion ---------------------------------------------
    print("\nA3  Edge dispersion (33 points in (-pi/2, pi/2))", flush=True)
    p_edge = np.linspace(EDGE_GRID_RANGE[0], EDGE_GRID_RANGE[1], EDGE_GRID_POINTS)
    max_dev = 0.0
    min_gap_c = float("inf")
    for p in p_edge:
        ev_b = np.sort(np.abs(np.linalg.eigvalsh(strip_hamiltonian(float(p), MASS_B))))
        ev_bc = np.sort(np.abs(np.linalg.eigvalsh(stacked_hamiltonian(float(p)))))
        dev = float(max(abs(ev_b[0] - ev_bc[0]), abs(ev_b[1] - ev_bc[1])))
        max_dev = max(max_dev, dev)
        ev_c = np.sort(np.abs(np.linalg.eigvalsh(strip_hamiltonian(float(p), MASS_C))))
        min_gap_c = min(min_gap_c, float(ev_c[0]))
    print("  max_dev=%.3e min_gap_C=%.6f" % (max_dev, min_gap_c))
    a3 = (max_dev < EDGE_DISP_TOL and min_gap_c > 1.0)
    check("A3 edge dispersion coincident to 1e-12, C gap > 1", a3,
          "max_dev=%.3e min_gap_C=%.6f" % (max_dev, min_gap_c))

    # ---- A4: seam-restricted covariance ----------------------------------
    print("\nA4  Seam-restricted covariance (dims %s)" % (SEAM_DIMS,), flush=True)
    seam_idx = list(SEAM_DIMS)
    max_dev_u = 0.0
    max_dev_t = 0.0
    for pk, qk in zip(grid_u, grid_t):
        cov_b_u = fermi_covariance(float(pk), MASS_B)[np.ix_(seam_idx, seam_idx)]
        cov_bc_u = stacked_fermi_covariance(float(pk))[np.ix_(seam_idx, seam_idx)]
        max_dev_u = max(max_dev_u, float(np.max(np.abs(cov_b_u - cov_bc_u))))
        cov_b_t = fermi_covariance(float(qk), MASS_B)[np.ix_(seam_idx, seam_idx)]
        cov_bc_t = stacked_fermi_covariance(float(qk))[np.ix_(seam_idx, seam_idx)]
        max_dev_t = max(max_dev_t, float(np.max(np.abs(cov_b_t - cov_bc_t))))
    print("  untwisted=%.3e twisted=%.3e" % (max_dev_u, max_dev_t))
    a4 = (max_dev_u < SEAM_COV_TOL and max_dev_t < SEAM_COV_TOL)
    check("A4 seam covariance identical to 1e-12 (both grids)", a4,
          "untwisted=%.3e twisted=%.3e" % (max_dev_u, max_dev_t))

    # ---- A5: seam Hardy remainder (edge profiles) -----------------------
    print("\nA5  Seam Hardy remainder (edge profiles at p=0)", flush=True)
    top_b, bot_b = edge_profiles(MASS_B)
    top_bc = np.zeros(DIM_BC, dtype=complex)
    bot_bc = np.zeros(DIM_BC, dtype=complex)
    top_bc[:DIM_B] = top_b
    bot_bc[:DIM_B] = bot_b
    overlap_top = float(abs(top_b.conj() @ top_bc[:DIM_B]))
    overlap_bot = float(abs(bot_b.conj() @ bot_bc[:DIM_B]))
    c_weight_top = float(np.sum(np.abs(top_bc[DIM_B:]) ** 2))
    c_weight_bot = float(np.sum(np.abs(bot_bc[DIM_B:]) ** 2))
    print("  ov_top=%.12f ov_bot=%.12f Cw_top=%.3e Cw_bot=%.3e"
          % (overlap_top, overlap_bot, c_weight_top, c_weight_bot))
    a5 = (overlap_top > 1.0 - EDGE_OVERLAP_TOL
          and overlap_bot > 1.0 - EDGE_OVERLAP_TOL
          and c_weight_top < EDGE_OVERLAP_TOL
          and c_weight_bot < EDGE_OVERLAP_TOL)
    check("A5 edge profiles agree up to phase, zero C weight", a5,
          "ov_top=%.12f ov_bot=%.12f" % (overlap_top, overlap_bot))

    # ---- A6: bulk differs -------------------------------------------------
    print("\nA6  Bulk differs", flush=True)
    e0_b = ground_state_energy_density(grid_u, MASS_B)
    e0_bc = stacked_ground_state_energy_density(grid_u)
    e0_c = e0_bc - e0_b
    gap_b = bulk_gap(grid_u, MASS_B, n_edge=2)
    gap_bc = stacked_bulk_gap(grid_u, n_edge=2)
    rank_b = midstrip_covariance_rank(grid_u, MASS_B)
    rank_bc = stacked_midstrip_covariance_rank(grid_u)
    hs_b = twist_hs_norm(grid_u, grid_t, MASS_B)
    hs_bc = stacked_twist_hs_norm(grid_u, grid_t)
    print("  dim B=%d B+C=%d  E0(B)=%.6f E0(B+C)=%.6f E0(C)=%.6f"
          % (DIM_B, DIM_BC, e0_b, e0_bc, e0_c))
    print("  gap B=%.6f B+C=%.6f  rank B=%d B+C=%d  HS B=%.6f B+C=%.6f diff=%.6f"
          % (gap_b, gap_bc, rank_b, rank_bc, hs_b, hs_bc, hs_bc - hs_b))
    a6 = (DIM_B != DIM_BC
          and e0_c < 0.0 and abs(e0_c) > GROUND_STATE_ENERGY_GAP
          and rank_b != rank_bc
          and abs(hs_bc - hs_b) > 0.0)
    check("A6 bulk differs (dim, E0, gap, rank, twist HS)", a6,
          "E0_C=%.6f rankB=%d rankBC=%d HSdiff=%.6f"
          % (e0_c, rank_b, rank_bc, hs_bc - hs_b))
    print("  boundary(B(x)C) = boundary(B)(x)1 = boundary(B) at finite level: "
          "seam data identical (A1-A5), bulk not unitarily equivalent (A6)",
          flush=True)

    # ---- B1: Krylov generatedness ----------------------------------------
    print("\nB1  Krylov generatedness (spectator_dim)", flush=True)
    spec_b = []
    spec_bc = []
    b1_ok = True
    b1_diff_min = float("inf")
    b1_diff_max = -float("inf")
    for label, grid in (("untwisted", grid_u), ("twisted", grid_t)):
        for p in grid:
            h_b = strip_hamiltonian(float(p), MASS_B)
            h_bc = stacked_hamiltonian(float(p))
            kb = krylov_dimension(h_b, SEAM_DIMS, DIM_B)
            kbc = krylov_dimension(h_bc, SEAM_DIMS, DIM_BC)
            sb = DIM_B - kb
            sbc = DIM_BC - kbc
            spec_b.append((float(p), sb, label))
            spec_bc.append((float(p), sbc, label))
            diff = sbc - sb
            b1_diff_min = min(b1_diff_min, diff)
            b1_diff_max = max(b1_diff_max, diff)
            if diff != 16:
                b1_ok = False
    spec_b_vals = [s for _, s, _ in spec_b]
    spec_b_nonzero = [(p, s) for p, s, _ in spec_b if s > 0]
    print("  spectator_dim_B: min=%d max=%d  nonzero at %d/%d momenta"
          % (min(spec_b_vals), max(spec_b_vals), len(spec_b_nonzero), len(spec_b)))
    if spec_b_nonzero:
        print("  first nonzero: p=%.6f s=%d" % spec_b_nonzero[0])
    print("  diff (B+C - B): min=%d max=%d (target 16)" % (b1_diff_min, b1_diff_max))
    check("B1 spectator_dim diff = 16 for every p", b1_ok,
          "diff_min=%d diff_max=%d" % (b1_diff_min, b1_diff_max))

    # ---- B2: commutant test ----------------------------------------------
    print("\nB2  Commutant test", flush=True)
    comm_b = []
    comm_bc = []
    b2_ok = True
    b2_diff_min = float("inf")
    for label, grid in (("untwisted", grid_u), ("twisted", grid_t)):
        for p in grid:
            h_b = strip_hamiltonian(float(p), MASS_B)
            h_bc = stacked_hamiltonian(float(p))
            cb = commutant_dimension(h_b, proj_b, DIM_B)
            cbc = commutant_dimension(h_bc, proj_bc, DIM_BC)
            comm_b.append((float(p), cb, label))
            comm_bc.append((float(p), cbc, label))
            b2_diff_min = min(b2_diff_min, cbc - cb)
            if (cbc - cb) < 1:
                b2_ok = False
    h_bc_0 = stacked_hamiltonian(0.0)
    pi_c_residual = commutator_residual(pi_c, h_bc_0, proj_bc)
    print("  commutant_dim_B: min=%d max=%d  B+C: min=%d max=%d  diff_min=%d (>=1)"
          % (min(c for _, c, _ in comm_b), max(c for _, c, _ in comm_b),
              min(c for _, c, _ in comm_bc), max(c for _, c, _ in comm_bc),
              b2_diff_min))
    print("  Pi_C commutator residual at p=0 = %.3e" % pi_c_residual)
    b2_ok = b2_ok and pi_c_residual < COMMUTATOR_RESIDUAL_TOL
    check("B2 commutant_dim diff >= 1, Pi_C in commutant", b2_ok,
          "diff_min=%d PiC_resid=%.3e" % (b2_diff_min, pi_c_residual))

    # ---- B3: prime-completion selection ----------------------------------
    print("\nB3  Prime-completion selection", flush=True)
    b_spectator_min = all(sb <= sbc for (_, sb, _), (_, sbc, _) in zip(spec_b, spec_bc))
    b_has_no_spectator_proj = True
    bc_has_spectator_proj = pi_c_residual < COMMUTATOR_RESIDUAL_TOL
    b_selected = b_spectator_min and b_has_no_spectator_proj
    min_spec_b = min(s for _, s, _ in spec_b)
    bc_selected = (not bc_has_spectator_proj) and all(
        sb <= min_spec_b for _, sb, _ in spec_bc
    )
    b3_ok = b_selected and (not bc_selected)
    print("  B selected (min spectator_dim, no spectator proj): %s" % b_selected)
    print("  B+C rejected (has spectator proj): %s" % (not bc_selected))
    check("B3 selection unique (B selected, B+C rejected)", b3_ok,
          "B_sel=%s BC_sel=%s" % (b_selected, bc_selected))

    print("\nHONEST: finite free-fermion witness for a monoidal-obstruction "
          "statement; not a 4D theorem; %s stays [O]; %s registered [O]; "
          "criterion generated a.e. in p (fails only at p=0 by symmetry)."
          % (CONTRACT_SHARPENED, CONTRACT_NEW), flush=True)
    print("VERDICT: %s" % VERDICT)
    print("r644 SPEC_SHA  %s" % R644_SPEC)
    return summary("v1020 spectator-sector obstruction")


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

cf62ace61ab774635e89df611336a6db6363e1c249e6d85f79431ec918c20647

Paper sections that cite this module

=150 2026-09-05 (CLVII) (non-RH T1–T8 Round 3 graduates as v1022– v1025; suite [formula in source] , ledger rows [formula in source] through six narrow subcontracts; [formula in source] module checks; NO marker move; TFPT.TOE.COMPLETE.01 and every T1–T8 gate remain ). v1022_ telb_ round3_ certificates.py ( [formula in source] ; native python-flint==0.9.0, 256-bit Arb/Acb) replaces the float/Richardson TEL-B input by 5812 rational cells and the exact cut jump, proving [formula in source] and [formula in source] . Together with the stated analytic digamma/midpoint lemmas, its executable Arb arithmetic gives [formula in source] , [formula in source] and [formula in source] ; full C2b remains open exactly at CF [formula in source] and DG [formula in source] . Its exact one-mode [formula in source] countermodel refutes the former ALG2 Vandermonde-to-generated-algebra implication: FE-GEN or an exact gauge/code-projected microscopic-algebra theorem is still required, and ALG1 remains conditional on the generated projection. v1025_ telb_ c1_ c2a_ certificates.py ( [formula in source] ; native 100-bit Arb/Acb) executes the existing analytic C1/C2a proofs: [formula in source] and [formula in source] for every even [formula in source] . v1023_ derivative_ filtered_ wall.py ( [formula in source] ) proves only the finite quasi-free singular-value block: the high continuation branch is separated, but the bare [formula in source] subspace is not invariant, the low branch has [formula in source] rather than a Weyl cone, and no DET16/DET32, interacting-parent, measure/anomaly/index or [formula in source] D theorem follows. v1024_ parent_ internal_ boundaries.py ( [formula in source] ) supplies finite parent-internal T6–T8 witnesses and no-gos: a positive seam/neutrino-pair intertwiner with projective full-Fock [formula in source] lift but no mass texture; the uniform-gap and direct-TT locality obstructions but no graviton; and a gapped internal [formula in source] cap that is chosen, [formula in source] -breaking and complement-trivial, hence no global [formula in source] . T1 retains only finite axiom-core/W-bridge support while unconditional provenance and the dimension selector remain open; T3 remains at Hamiltonian-class level; T5 retains finite IR witnesses and the v1020 spectator obstruction while prime completion, OS reconstruction, confinement and scattering remain open. The common missing object is still one shared [formula in source] D parent satisfying T3–T8. Native-only handling is explicit in the website reproducer; v1022/v1025 are not represented as Pyodide certificates. NO RH CLAIM. Surfaces: tfpt_research_contracts, tfpt_4_frontier, introduction, tfpt_2_standard_model, the MMST article/PDF, ledger, generated verification maps/index, website paper/DAG/gap/FAQ mirrors and changelog.

The module’s catalogue entry retains all 14 section references.

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.