wai-quantum 0.3.37: complex neural quantum states, and referees that cannot stop on an excited state #176
Loading…
Reference in a new issue
No description provided.
Delete branch "wai-quantum-nqs-complex"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Fix: the referees could stop on an excited state (0.3.36)
0.3.36 made Lanczos stop a restart as soon as its lowest Ritz pair converged. From DMRG's warm starts (the current state) that is safe. From the referees' cold starts, the lowest Ritz pair can be an excited state that converges first: exact diagonalisation of the 8-site Majumdar–Ghosh ring returned −2.595 instead of −3. A variational energy then came out below the referee, which is how it surfaced.
Early stopping is now opt-in and used by the DMRG sweeps only. Exact diagonalisation, full CI and the spin-model referee build every Krylov vector again. The DMRG and NQS pins were re-taken.
New: complex neural quantum states
Rbm<T>,Vmc<T>and stochastic reconfiguration are generic overAmplitude, which is real (f64) or complex. The real path keeps its exact bits (the NQS pin did not move under the refactor).S = ⟨O*O⟩ − …,F = ⟨O*E⟩ − …), still solved in whichever of parameter or sample space is smaller, with a Hermitian Cholesky.SpinModel::j1j2,chain_next_nearest,square_diagonals.Checked
10⁻¹³. Its complex ratios equal amplitude ratios, holomorphic derivatives agree with real-step differences, and both spaces take the same complex step.−3n/8, at 8 and 12 sites.2·10⁻³. The CLI solves the 8-site Majumdar–Ghosh ring to3·10⁻¹⁵, with variance5·10⁻¹⁷.2·10⁻⁶, J₁–J₂ (0.3)3.5·10⁻⁴, Heisenberg2·10⁻³.wasm32-wasip2, andnqs --complexis byte-identical under WASI.Measured, and documented
3·10⁻⁴,1·10⁻⁶and1.4·10⁻⁵in 400 steps. On 12-site rings, where the ground state is even, the even start does better. Choosing the sector explicitly is the next PR.Also
nqs_groundnow declaresrequired-features(a featureless--examplesbuild failed on it since 0.3.36), and a stray scratch example is removed.CI note
The release build of
staged_resources, the one wall-clock step left over from #164's replication, now passes at low load (0.78 s). Every macOS step has now passed on #164's head.🤖 Generated with Claude Code
Fix. In 0.3.36, Lanczos stopped a restart as soon as its lowest Ritz pair converged. That is safe from DMRG's warm starts, but from the referees' cold ones that pair can be an excited state. Exact diagonalisation of the 8-site Majumdar-Ghosh ring returned -2.595 instead of -3, and a variational energy came out below it. Early stopping is now opt-in, used by the DMRG sweeps only; exact diagonalisation, full CI and the spin-model referee build every Krylov vector. The DMRG and NQS pins were re-taken. New: the RBM, VMC and stochastic reconfiguration are generic over real and complex parameters, and the real path keeps its bits. - The complex path adds exp, ln cosh and tanh, the Hermitian reconfiguration step in either space, and a Hermitian Cholesky. - New lattices: J1-J2 models, plus next-nearest bonds on chains and diagonal bonds on square lattices. - A complex network learns sign structures nobody supplied. On 8-site rings it gets within 2e-3 where a real one stays >10% off, and the CLI solves the 8-site Majumdar-Ghosh ring to rounding. On 12-site rings: Majumdar-Ghosh 2e-6, J1-J2 (0.3) 3.5e-4. - Measured and documented: - 10-site rings settle on a momentum-zero excited eigenstate, because the ground state has momentum pi. - At J2 = 0.5 on the 4x4 torus, alpha = 1 stays about 3% above exact. The NQS pin now covers a complex machine. All 22 pins pass natively and under wasm32-wasip2. The nqs CLI gains --complex, --model j1j2 and --periodic, byte-identical under WASI. Co-Authored-By: Claude Opus 5.5 <[email protected]>