Supplementary Material ====================== "Early Symmetry-Breaking Predicts Attractor Selection in a Bistable Two-Player Learning Game" Contents -------- 1. attractor_selection_experiments.py Self-contained Python script that reproduces all numerical results reported in the paper. Deterministic given the fixed random seeds specified within the script. 2. verified_output.txt Complete stdout from running the script, for verification. Readers can run the script and compare their output against this file to confirm reproducibility. Requirements ------------ - Python 3.9+ - numpy - scipy - scikit-learn Install dependencies: pip install numpy scipy scikit-learn Usage ----- python attractor_selection_experiments.py Runtime: approximately 6-9 minutes on a single CPU core. Output is printed to stdout. What the script reproduces -------------------------- Section 4.1 (Bistability): - Cycling fractions across five independent seed banks for the two-player anti-coordination game (~11-18% cycling). - Confirmation that the canonical N-player Minority Game cycles in 100% of runs for N = 3, 5, 7, 11, 21. Section 4.3 (Predictor): - Leave-one-out cross-validated AUC for value-function asymmetry at timestep 100 (200 seeds, with bootstrap CI and permutation test). - AUC on the undecided subset (undecided-subset control). - Replication on an independent bank of 300 seeds. Section 4.4 (Transfer entropy leakage): - Transfer entropy AUC on all runs versus undecided runs, across measurement windows of 100, 250, and 500 timesteps. Notes ----- - All randomness is seeded. Results are deterministic. - No external datasets are required. All data are generated programmatically within the script. - The script does not produce figures. Figures in the paper were generated from the same underlying simulation code with matplotlib; the figure-generation code is available from the author on request.