# Higher invariants of complex Hadamard matrices: ancillary files T. Banica and C. Opus, November 2026 These are the main programs behind the computations of the paper, with their output files, the whole selection being placed in a single folder. The complete archive, with all the programs and outputs, in their original folders, is in the GitHub repository `teobanica/005`, and on Zenodo. Everything uses Python 3 with `numpy` and `scipy`, and `trace_exact.py` uses the GMP library `libgmp`, through `gmpconv.py`. Run each program from this folder, with `python3 name.py`. A few exploratory scripts still contain the absolute paths of the machine where they were written, in their `sys.path` lines, which can be ignored or edited. ## Modules | file | role | |---|---| | `matrices.py`, `pmatrices.py` | the matrices of the paper, with the conventions used there, and the Paley matrices | | `had24.txt`, `had28.txt` | real Hadamard matrices of orders 24 and 28 | | `ck.py` | the numbers c_k: exact, seeded, and probabilistic counts | | `sectors.py`, `nightlib.py` | rotation sectors, and helpers for the long runs | | `jwcount.py`, `cases.py` | Jones-Wenzl counts e_k, and the list of cases | | `phiprof.py` | Krylov norms of Phi_k | | `gapcheck.py`, `gaprun.py` | converged Lanczos norms of Phi_k, and LOBPCG multiplicities | | `magic.py`, `pairs.py`, `phis.py`, `piicheck.py` | helpers for some programs below | ## Laptop programs The long computations, run on 2 laptops, with their output `.log` files (`.json` for `caracal`). | program | computation | section | |---|---|---| | `ocelot.py` | c_5 for F_{8,5a} and had_{16.4}, c_6 for F_{8,5b} | 3.4, 6.3 | | `hoost.py` | c_6 for the families F_{8,5}, by rotation sectors | 3.4 | | `sandcat.py` | e_5, e_6 for F_{8,5}, converged norms at orders 7 to 12, level 5 for P_20, P_24 | 3.4, 6.2, 9.1 | | `margay.py` | check of c_5 = 212 for had_{16.3} | 6.3 | | `lynx.py`, `fedor.py` | c_k for the real matrices of orders 24 and 28 | 6.4 | | `bobcat.py`, `cormier.py` | Jones-Wenzl counts for the Paley matrices of orders 20 to 108 | 6.2 | | `bones.py` | glued matrices of order 10 | 8.2 | | `caracal.py`, `puma.py`, `gsp.py` | c_6, c_7 with noncrossing seeds | 8.3 | | `crocop.py`, `serval.py` | norms of Phi_k | 9.1 | | `jaguar.py`, `aerts.py`, `lennox.py` | Jones-Wenzl counts e_6 to e_9 | 9.1 | | `sefo.py` | converged norms at order 6, up to level 9 | 9.1 | ## Other programs | program | computation | section | |---|---|---| | `nongen.py`, `general.py`, `unified.py`, `abelian.py`, `table6.py`, `formula6.py`, `table8.py`, `index8.py` | deformed Fourier matrices, all parameters | 4 | | `pauli.py`, `fibers.py`, `finite.py`, `placement.py`, `blocks.py`, `freeconv.py` | the families F_{8,5} | 5 | | `equiv.py` | equivalence of real matrices | 6.1 | | `walshdita.py` | real deformations of the Walsh matrix | 6.3 | | `orders.py` | converged norms at orders 24 and 28 | 6.4 | | `certify.py`, `piiinv.py`, `piialpha.py`, `eigq.py` | Paley matrices: eigenvectors and eigenvalues | 6.5 to 6.7 | | `trace_exact.py`, `gmpconv.py` | Paley I infinite depth certificates, in integer arithmetic, output `trace_exact-*.log` | 6.7 | | `h2red.py`, `c2exact.py` | wild matrices of orders 6 and 7 | 7.1 | | `u2had.py`, `classify10.py`, `ten.py`, `f85bpoint.py`, `f85cpoint.py` | wild matrices of orders 8 to 11 | 8 | | `level5.py`, `scan.py`, `scan4.py` | c_5, and the scans of the families | 8.3, 8.4 | | `spectro.py`, `hw.py`, `lwsector.py` | spectra of T_k | 9.1 | | `annular.py`, `annular2.py`, `wdims.py`, `psinorms.py` | annular pieces | 9.2 |