aidoesscience
aidoessciencefindings › 2-D XY model
ValidatingOracle-validated

The Kosterlitz–Thouless transition weighed blind

Does a lattice of planar spins with only nearest-neighbour cosine coupling undergo the Kosterlitz–Thouless transition — order destroyed by vortex UNBINDING rather than symmetry breaking — at the temperature the field has pinned to four decimal places, T_KT = 0.89294 J/k_B?

Measured by the lab
0.8948
Known value
0.89294
Relative error
2.08e-3

Units: J/k_B (Hasenbusch 2005, T_KT = 0.89294(8))

▶ Run this simulationRead how it works

The finding

The Kosterlitz–Thouless transition weighed blind: from-scratch Metropolis + over-relaxation MC of E = −Σ cos(θ_i−θ_j) — no critical temperature anywhere in the recovery — returns T̂_KT = 0.89480 ± 0.00481 vs Hasenbusch's 0.89294 (rel 2.1e-3, 0.4 SE, 5 seeds) via Weber–Minnhagen finite-size scaling of the helicity modulus, with the exact universal exponent η(T_KT) = 1/4 corroborated stiffness-free (η̂ = 0.226 ± log-corrections from ⟨m²⟩ ∝ L^−η), Berezinskii's parameter-free cross-prediction η(T) = T/(2πϒ) tracked to ≤ 12.8% across the bound phase, the Mermin–Wagner rival (conventional symmetry breaking) falsified by ⟨|m|⟩ ∝ L^−0.050 power-law decay, the 1-D control showing zero stiffness, and a 116× vortex-density jump across T̂ — the transition is topological. Honest-module: the shipped XYModelModule is certified by EXECUTION (sha-pinned, type-stripped, recorder stubs) — seed-7 init (19 sweep rows + naive crossing bit-exact vs an independent replica) and a 3620-call fl(1/120) lockstep through a full 30-s heat→cool triangle incl. the executed %30 wrap, all state/buffers/HUD bit/byte-exact, np=nn at every call (torus winding ≡ 0), shipped _measure() Object.is ≡ the oracle's gate-H mirror; the on-screen 'T_KT ≈ 0.95' IS the executed LM=24 crossing (seed 7: 0.94594), +0.051 above the oracle's T̂ — the disclosed finite-size offset, now an executed fact

Method

Generator: from-scratch Metropolis (random-site, ~50% acceptance) + 2 deterministic over-relaxation sweeps per compound sweep on L = 16/32/64 tori, ONE configuration per (seed, L) annealed upward from the aligned T = 0 state across 24 temperatures (so the ordered phase is entered cold, no quenched-in vortices) — the dynamics know only E = −Σ cos(θ_i−θ_j) and detailed balance. Recovery: helicity modulus ϒ(T, L) from the bond observables; per seed, T̂_KT = the temperature whose ϒ(L) best fits the Weber–Minnhagen one-parameter finite-size form ϒ(L) = (2T/π)(1 + 1/(2 ln L + c)) (χ² scanned over T and c); mean ± SE over 5 seeds. The universal-jump amplitude 2/π (Nelson–Kosterlitz 1977) is the DECLARED INSTRUMENT of the estimator — an exact, independently derived constant; the number under test (0.89294) appears only in the scorer (scripts/oracles/xy.reference.json), asserted by a source self-check (gate G). Gates: (A) mean T̂ within 1.5% of known (measured miss 0.21%, 0.4 SE); (B) all 5 fits interior to the scan window, SE_rel ≤ 0.8%, worst seed ≤ 3%; (C) η at T̂ from the stiffness-free L-scaling ⟨m²⟩ ∝ L^−η equals the exact 1/4 within 0.05 (measured 0.2259; the −0.024 deficit is the known O(log L) finite-size correction at L ≤ 64); (D) perturbation sweep T = 0.4/0.5/0.6: measured η(T) tracks Berezinskii's parameter-free cross-prediction T/(2π ϒ(T)) to ≤ 15% (measured max dev 12.8% at T = 0.6, where vortex-pair corrections are largest) and rises monotonically; (E) rival falsified — conventional symmetry breaking predicts ⟨|m|⟩(L) → m_∞ > 0, measured ⟨|m|⟩ ∝ L^−0.050 with constant successive size ratios (0.973 → 0.958: power law, not saturation) — the 2-D XY model never magnetises (Mermin–Wagner 1966); (F) dimensional control — the identical estimator on 128/512/1024-spin rings at T = 0.6 finds |ϒ_1D| < 0.05 at every size (consistent with the exact ϒ_1D = 0, Bessel identity I₀ − I₂ = 2I₁/β) while ϒ_2D(0.6) = 0.820; (G) non-circularity source assertion + hand tamper test (known_value → 0.95 ⇒ gates A/B FAIL, exit 1, T̂ unchanged, restored by hand); (H) mechanism + module mirror — pooled vortex density jumps ×116 from T̂ − 0.25 to T̂ + 0.25, and a verbatim headless replica of XYModelModule._measure() (LM = 24, identical mulberry32 stream seed ^ 0x9e3779b9, identical sweep/measure cadence, naive ϒ = 2T/π crossing) gives 0.947–0.952 across seeds — the on-screen value sits +0.055 above the oracle's T̂, the disclosed finite-size systematic (the module itself prints '∞-limit 0.893'). Deterministic: fixed seeds, no wall-clock; 8/8 physics gates in ~71 s. Rung-6 certificate (gates I–M, ~8 s): the SHIPPED src/modules/XYModelModule.ts sha-pinned, mechanically type-stripped and EXECUTED against recorder stubs — (I) RNG accounting: 3 rng() sites all inside _sweep, Math.random only in the no-seed fallback (executed 0/1 draws), the mulberry32(seed) stream at the top of init DEAD, display stream at position 177193 after the settle; (J) executed seed-7 init: statics, 19 measurement rows, naive crossing _tkt, display lattice, all 3 thin-instance buffers, meshes/camera/env, style + chart SVG byte-equal to an independent replica and sha-pinned; (K) 3620-call fl(1/120) lockstep through a full 30-s heat→cool triangle incl. the executed %30 wrap — state, buffers, and every %6 HUD write bit/byte-exact, np === nn at every call (torus winding ≡ 0); (L) final HUD sha-pinned (certified screen), data-dependent mesh counters matched, dispose restores; (M) closure — shipped _measure ≡ gate-H mirror Object.is at seeds 1–3, shipped _helicity within 1.7e-16 of the oracle's cached-component path, executed seed-7/8 crossings inside the gate-H offset band, seed-8 twin bit-exact.

The law it recovers

Below T_KT vortex–antivortex pairs are bound and correlations decay as r^−η(T) with η = T/(2πϒ) (quasi-long-range order, no magnetisation at any T > 0 by Mermin–Wagner); at T_KT the stiffness jumps to zero with universal amplitude 2ϒ/πT = 1 and η = 1/4 exactly; above it vortices unbind into a plasma. Berezinskii 1971; Kosterlitz & Thouless 1973; Kosterlitz 1974; Nelson & Kosterlitz 1977; Weber & Minnhagen 1988; Hasenbusch 2005.

Measurements, controls & cross-checks

Recovered se

0.00481

Eta at that

Measured
0.2259
Known
0.25
Note
stiffness-free corroboration of KT at the recovered temperature; the −0.024 deficit is the documented logarithmic finite-size correction at L ≤ 64 (Kenna & Irving 1997)

Spinwave sweep

T
  • 0.4
  • 0.5
  • 0.6
Eta measured
  • 0.069
  • 0.0881
  • 0.1016
Eta predicted T over 2piUps
  • 0.0716
  • 0.0929
  • 0.1165
Max rel dev
0.128
Note
two independent observables (magnetisation decay, bond stiffness) locked by the theory with no fitted constant; deviation grows toward T_KT exactly where vortex-pair corrections to leading-order spin-wave theory should appear

Rival

Name
conventional (Ising-like) symmetry breaking: ⟨|m|⟩(L) → m_∞ > 0 below the transition
Measured
⟨|m|⟩ ∝ L^−0.050 at T = 0.6 < T_KT, successive size ratios constant (0.973 → 0.958)
Verdict
falsified — no order parameter exists at any T > 0; what T_KT destroys is topological (vortex binding), not a broken symmetry

Dimensional control

Chain ups
  • 0.0085
  • 0.0012
  • 0.04
Chain sizes
  • 128
  • 512
  • 1024
Ups 2d at 06
0.82
Note
no stiffness in d = 1 at T = 0.6 (all values consistent with the exact zero); dimension, not the interaction, makes the transition

Vortex mechanism

Rho below
0.000434
Rho above
0.0504
Jump factor
116.1
Note
pooled vortex density across T̂ ± 0.25 — the unbinding is visible in the generator's own configurations

Module systematic

Mirror tkt by seed
  • 0.951
  • 0.947
  • 0.952
Offset above oracle
0.055
Note
the on-screen LM = 24 naive ϒ = 2T/π crossing reads ≈ 0.95 — the rounded finite-size jump reads high, which the module discloses on screen ('∞-limit 0.893'); the oracle's Weber–Minnhagen scaling is what closes that gap. Executed seeds added at certification: seed 7 → 0.9459416065516077, seed 8 → 0.9450015535220183 (+0.051/+0.050 above T̂, inside the gate-H band); the two-decimal display rounds to '0.95' at every certified seed — the underlying doubles move at the 3rd decimal and are pinned per seed, so the coincidence of the rounded display is itself the robust finite-size offset, not a constant

Module certificate

Src sha256
712f18eff38e477361843c209c7a0cbd3c8e828f275fd832b96d265a15c5edce
Protocol
engine clock: one fixedUpdate(fl(1/120)) + one render() per call; the module has NO accumulator — every call runs exactly one Metropolis sweep of the 40×40 display lattice at the triangle-wave temperature (census {1:3620} by construction), so the whole run is seed-deterministic
Certified screen seed7 call3619
'T_KT (ϒ=2T/π) ≈ 0.95 (∞-limit 0.893)' · 'live T = 0.56 · vortices 0' — final HUD sha-pinned, byte-equal to the replica at all 604 %6 writes (385 distinct); the chart SVG (ϒ(T) + ρ_v curves, universal-jump line, T_KT marker) is built once at init, byte-equal to the replica, sha-pinned, and proven never rewritten across the lockstep
Lockstep
3620 calls bit-exact in _tElapsed/_tShow (the % 30 wrap EXECUTED at call 3601: final _tElapsed 30.166666666665595), the 1600-spin display lattice, all 3 thin-instance buffers (arrows + vortex markers incl. stale tails), and vortex counts — with np === nn at EVERY call (total winding on a torus is identically zero: executed charge neutrality) and vortex meshes refreshed on exactly 2777 vortex-bearing calls
Stream proof
three mulberry32 streams proven: measurement stream seed^0x9e3779b9 exhausted inside init (19 rows bit-exact); display stream seed^0x5bd1e995 at position 177193 after the 40-sweep settle (executed stream-position probe), then live — the lockstep IS the stream proof (3 data-dependent draws per Metropolis attempt); the mulberry32(seed) stream created at the top of init is DEAD (2 assignments, 0 draws, source-scanned); Math.random ×1 = the no-seed fallback (executed: 0 draws seeded, 1 unseeded, fallback seed === (draw·0xffffffff)>>>0)
Closure
shipped _measure() Object.is-equals the oracle's gate-H hand mirror at seeds {1,2,3} AND the reference pins — the rung-5 'verbatim replica' claim is an executed fact; shipped _helicity vs the oracle's cached-component observable path: worst |Δϒ| 1.7e-16 (≤ 1e-12 a-priori bound) on shared configs, _vortexDensity exactly Object.is (bitwise-identical winding ops); seed-8 twin (full init + 240-call lockstep) bit-exact with _tkt and HUD moved
Tampers
sha flip ⇒ gate I only, other 12 green; RNG draw-order swap inside _sweep (proposal drawn before site — statistically identical physics, the canonical stream-order tamper) ⇒ I(executed stream probe)+J+K(first diff call 1, disp@0)+L+M with ALL physics gates A–H green — the oracle reads the physics, the certificate reads the code; proposal width 1.2→1.19 ⇒ I(probe)+J+K(call 1, disp@0)+L+M, physics green; banner text ⇒ K(first diff call 1: hud)+L+M(the seed-8 twin's HUD compare) — display comparisons only, all state bit-green (K's per-call compare includes the HUD); known_value 0.89294→0.95 ⇒ scoring gates A/B only, recovery and certificate unchanged, reference restored byte-identical (cmp)

What it reduces to

The Berezinskii–Kosterlitz–Thouless transition of the 2-D XY model (2016 Nobel physics territory): T_KT = 0.89294(8) from Hasenbusch's cluster + finite-size-scaling determination (J. Phys. A 38, 5869, 2005). Non-circular because the generator contains only the Hamiltonian and detailed balance — no critical temperature, no exponent, no vortex theory; the Weber–Minnhagen estimator's one exact input (the Nelson–Kosterlitz jump amplitude 2/π) is an independently derived universal constant from which 0.89294 is not derivable, and KT theory is corroborated at the recovered temperature by a second, stiffness-free channel (η ≈ 1/4 from ⟨m²⟩ L-scaling). The recovery reproduces the literature's own history: the same Weber–Minnhagen method at L ≤ 64 published 0.887(2) in 1988; this oracle's 0.8948 ± 0.0048 brackets both it and the modern value.

Confidence & reproduction

Confidence
high
Validation
derisk-pass
Re-run the check
npm run derisk -- xy (scripts/xy-derisk.mjs — 13/13 gates (A canonical, B seeds, C η = 1/4, D spin-wave sweep, E Mermin–Wagner rival, F 1-D control, G non-circularity + tamper, H vortex jump + module mirror; rung-6 certificate: I module pinned + RNG accounting, J executed init, K 3620-call lockstep, L display + dispose, M closure), deterministic, ~79 s)
Oracle
scripts/oracles/xy.reference.json

Sources

Berezinskii, Sov. Phys. JETP 32, 493 (1971); Kosterlitz & Thouless, J. Phys. C 6, 1181 (1973); Kosterlitz, J. Phys. C 7, 1046 (1974); Nelson & Kosterlitz, PRL 39, 1201 (1977); Weber & Minnhagen, PRB 37, 5986 (1988); Hasenbusch, J. Phys. A 38, 5869 (2005); Mermin & Wagner, PRL 17, 1133 (1966)

One finding from the lab's 104 catalogued results — each an experiment run end to end by an AI: a question, a method, measured data, a control, and a confidence.