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.

v450_seam_edge_entanglement.py

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

"""v450 -- SEAM.EQUIV.EDGE.ENTANGLEMENT.01: a THIRD independent reading of the edge
central charge -- the Calabrese-Cardy entanglement scaling c=1/2 per Majorana.

v444 read the edge c_-=8 from the CORRELATOR exponent; v447 from the bulk TOPOLOGY
(Chern + bulk-edge).  This module adds a THIRD, logically independent observable:
the entanglement entropy.  For a critical 1D free-fermion chain the Calabrese-Cardy
law fixes the central charge,
        S(ell) = (c/3) ln[(L/pi) sin(pi ell/L)] + const,
a universal property of the scaling limit.  The critical Dirac (XX) chain gives
c=1 = 2*(1/2) (Dirac = two Majoranas), so the central charge PER Majorana is 1/2 --
the chiral free-fermion CFT of the p+ip edge (v444: one chiral Majorana per edge,
c=1/2).  With the carrier's N_Maj=2^{g_car-1}=16 copies (v148) and the bulk-edge
correspondence (v447), c_- = 16*(1/2) = 8 = g_car + N_fam, the SAME edge central
charge as v444 and v447 from a third observable.

  [E] 1. CALABRESE-CARDY LAW.  the block entanglement entropy of the critical XX
         (Dirac) chain obeys S(ell)=(c/3)ln[(L/pi)sin(pi ell/L)]+const with a
         FLAT log slope -> c_Dirac = 1.000 (fit over ell=20..200, L=400) -- the
         universal scaling-limit signature.
  [E] 2. c PER MAJORANA = 1/2.  c_Dirac = 1 = 2*c_Majorana (Dirac = two Majoranas),
         so c_Majorana = 1/2 -- the chiral free-fermion CFT of one p+ip edge mode.
  [E] 3. GAPPED NEG CONTROL.  a gapped (dimerised) free-fermion chain has a
         saturating, ell-independent entanglement (zero log slope, c=0) -- the log
         growth is the CRITICAL edge CFT, not a lattice artefact.
  [C] 4. EDGE CENTRAL CHARGE (independent).  c_- = N_Maj*c_Majorana = 16*(1/2) = 8
         = g_car+N_fam, from entanglement -- the SAME c_-=8 as v444 (correlator)
         and v447 (topology), now from a third independent observable.
  [C]/[O] 5. VERDICT.  three independent observables (correlator, topology,
         entanglement) agree on c_-=8; SEAM.EQUIV.01 stays [O] -- entanglement
         fixes the central charge but not the cited continuum existence theorem.

Python-only (numpy; free-fermion correlation-matrix entanglement, Peschel/Vidal;
the c_-=g_car+N_fam=8 arithmetic is mirrored via the glue count v1/v61).
"""
import numpy as np

from tfpt_constants import check, summary, reset, g_car, N_fam


def _corr_xx(L):
    """periodic critical XX (Dirac) chain at half filling; antiperiodic momenta
    (no mode on the Fermi points)."""
    ks = 2 * np.pi * (np.arange(L) + 0.5) / L
    occ = np.argsort(-np.cos(ks))[:L // 2]      # lowest L/2 single-particle energies
    r = np.arange(L)
    C = np.zeros((L, L), complex)
    for a in occ:
        v = np.exp(1j * ks[a] * r)
        C += np.outer(v, v.conj()) / L
    return C.real


def _corr_dimer(L):
    """gapped (fully dimerised) free-fermion chain: each ground-state mode is a
    local bond -> area-law (saturating) entanglement (c=0 control)."""
    C = 0.5 * np.eye(L)
    for i in range(0, L - 1, 2):
        C[i, i + 1] = C[i + 1, i] = 0.5          # bonded pair, occupied bonding orbital
    return C


def _block_S(C, ell):
    z = np.linalg.eigvalsh(C[:ell, :ell])
    z = np.clip(z, 1e-13, 1 - 1e-13)
    return float(-np.sum(z * np.log(z) + (1 - z) * np.log(1 - z)))


def run():
    reset()
    print("v450 SEAM.EQUIV.EDGE.ENTANGLEMENT: independent c_-=8 from Calabrese-Cardy "
          "entanglement scaling (c=1/2 per Majorana), a third observable after "
          "v444/v447")

    # ---- 1. Calabrese-Cardy slope -> c_Dirac = 1 ----
    L = 400
    C = _corr_xx(L)
    ells = [20, 30, 40, 60, 80, 120, 160, 200]
    x = np.array([np.log((L / np.pi) * np.sin(np.pi * e / L)) for e in ells])
    y = np.array([_block_S(C, e) for e in ells])
    slope = np.polyfit(x, y, 1)[0]
    c_dirac = 3 * slope
    cc_ok = abs(c_dirac - 1.0) < 0.03
    check("CALABRESE-CARDY LAW [E]: the XX (Dirac) chain block entropy fits "
          "S=(c/3)ln[(L/pi)sin(pi l/L)]+const with c_Dirac=3*slope=%.4f (ell=20..200,"
          " L=400) -- the universal scaling-limit signature" % c_dirac, cc_ok)

    # ---- 2. c per Majorana = 1/2 ----
    c_maj = c_dirac / 2
    maj_ok = abs(c_maj - 0.5) < 0.02
    check("c PER MAJORANA = 1/2 [E]: c_Dirac=%.4f = 2*c_Majorana (Dirac = two "
          "Majoranas), so c_Majorana=%.4f -- the chiral free-fermion CFT of one "
          "p+ip edge mode (v444)" % (c_dirac, c_maj), maj_ok)

    # ---- 3. gapped neg control: zero log slope ----
    Cd = _corr_dimer(L)
    yd = np.array([_block_S(Cd, e) for e in ells])
    slope_d = np.polyfit(x, yd, 1)[0]
    gap_ok = abs(3 * slope_d) < 0.05
    check("GAPPED NEG CONTROL [E]: a dimerised (gapped) chain has saturating, "
          "ell-independent entanglement (c=3*slope=%.4f~0) -- the log growth is the "
          "CRITICAL edge CFT, not a lattice artefact" % (3 * slope_d), gap_ok)

    # ---- 4. edge central charge (independent), typed [C] ----
    N_Maj = 2 ** (g_car - 1)
    c_minus = N_Maj * 0.5
    indep = (N_Maj == 16 and c_minus == 8 and c_minus == g_car + N_fam
             and cc_ok and maj_ok)
    check("EDGE CENTRAL CHARGE (independent) [C]: c_- = N_Maj*c_Majorana = "
          "16*(1/2) = %g = g_car+N_fam, from entanglement -- the SAME c_-=8 as v444 "
          "(correlator) and v447 (topology), from a third independent observable"
          % c_minus, indep)

    # ---- 5. verdict [C]/[O] ----
    check("VERDICT [C]/[O]: three independent observables (correlator v444, "
          "topology v447, entanglement v450) agree on the edge c_-=8=(E8)_1 reading;"
          " SEAM.EQUIV.01 stays [O] -- entanglement fixes the central charge but not"
          " the cited continuum existence theorem", indep and gap_ok)

    return summary("v450 SEAM.EQUIV.EDGE.ENTANGLEMENT: the Calabrese-Cardy "
                   "entanglement law gives c_Dirac=1=2*(1/2) for the critical "
                   "free-fermion chain (vs a saturating gapped control), so "
                   "c_Majorana=1/2 and c_-=16*(1/2)=8=g_car+N_fam -- a third "
                   "independent reading of the edge central charge after v444 "
                   "(correlator) and v447 (topology); SEAM.EQUIV.01 stays [O]")


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

6de7fecc0aad913dca7b36eaaed044a398f0fe6b2aec6874aeea0b0a5fdc7360

Paper sections that cite this module

2026-07-13 ( v478 — first computable steps on the two remaining legs of the entropic-action bridge: the state-side modular data flows to the CHM/Bisognano–Wichmann geometric form (Calabrese–Cardy [formula in source] , CHM parabola, even bands exactly zero) — the bridge's modular side meets TFPT's Einstein-derivation input; and the measure condition reduced to one exact KMS time [formula in source] with the [formula in source] near-miss explicitly declined; both legs stay , no status moves)
2026-07-21 (XI) ( v501 — WP5d- [formula in source] of CELEST.SEAM.01 ``the two-interval index from the lattice'' promoted as CELEST.WP5D.01: the KLM Haag-duality discriminator measured entropically on the seam edge — the [formula in source] -layer carrier saturates the [formula in source] offset at machine precision, [formula in source] the v490 census, and the condensation arithmetic [formula in source] closes with [formula in source] ; the preregistered KILL (`` [formula in source] -offset [formula in source] after condensation'') does NOT fire; contract now ``WP1–WP5d executed; WP5e the single remaining milestone''; Wolfram extension [formula in source] (verified engine run); SEAM.EQUIV.01 stays , no marker moves)
What this source index covers

The public registry includes 116 document views, 6,711 section records and 986 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.