RERUN_LOG — AMR-020-0402 reproducibility package
Re-run on 2026-10-17 from a copy of this folder, each program started from inside its folder with
nice -n 10 python3 -I -u <program> (Python 3.13.5, SymPy 1.14.0, mpmath 1.3.0, NumPy 2.5.2, SciPy 1.18.1; macOS, Apple silicon).
Outputs were written to new files and compared with the recorded outputs of this folder.

Running times (wall clock) and exit codes:
  original/verify_outer_billiard.py exit=0 time=.64 s
  verification_run_A/A2_numeric.py exit=0 time=5.85 s
  verification_run_A/A1_symbolic.py exit=0 time=66.67 s
  verification_run_A/A2b_numeric.py exit=0 time=3.15 s
  verification_run_B/own_exact_search.py exit=0 time=41.38 s
  verification_run_B/own_geom_numeric.py exit=0 time=72.90 s
  ./check_note.py exit=0 time=4.66 s

Comparison with the recorded outputs:
  original/verify_outer_billiard_out.txt      byte-identical
  verification_run_A/A1_symbolic_out.txt      identical except the timing fields "(... s)"
  verification_run_A/A2_numeric_out.txt       byte-identical
  verification_run_A/A2b_numeric_out.txt      byte-identical
  verification_run_B/own_geom_numeric_out.txt byte-identical
  verification_run_B/own_exact_search_out.txt byte-identical
  check_note_output.txt                        identical except the line "(running time ... s)"

SHA-256 of the programs and recorded outputs of this folder:
  ac6fb4009bd7a99ad7aa9d99b8ecb166fdb98e8907bcf6d6dec87d40c60b4e82  check_note.py
  d6bea2a2d3807c16643f18937b8e861edde44cec4ac3cd2f36fba9503245e981  check_note_output.txt
  f400d5a9f764af8980b32f224ebf43d8837b6e95f7c00d28c0cc89439418264d  original/verify_outer_billiard.py
  c40f82deb5797af3afd264ee32bb32be3ba510ddde3cf7f81e6a34ae35d6523a  original/verify_outer_billiard_out.txt
  b5537d881bcbacb7d784cae45518f10e05e912db8bc7fe9aac1af18876db3679  verification_run_A/A1_symbolic.py
  1a5e49bbb9d28de38b975730bc6ff1bc0a232cbc99cb934e65758cd56d14c309  verification_run_A/A1_symbolic_out.txt
  fab4dd463ab4e5160c213f22197809907473e33a9f14d43876a5aac25c0aa9c0  verification_run_A/A2_numeric.py
  8b8aa5cc7b0c13fa98255638dcf8037dd868c93811b59c05071f193cc498e387  verification_run_A/A2_numeric_out.txt
  8bb76c6473bff6ff7d05b53730fed153a3dd4fd95e7ab933b9d0c9329bac35b0  verification_run_A/A2b_numeric.py
  9d41e67516465b91e226da4ae28b83c940a8c219a765866395cfa41b1e8fc408  verification_run_A/A2b_numeric_out.txt
  c40f82deb5797af3afd264ee32bb32be3ba510ddde3cf7f81e6a34ae35d6523a  verification_run_A/claimant_script_rerun_out.txt
  c40f82deb5797af3afd264ee32bb32be3ba510ddde3cf7f81e6a34ae35d6523a  verification_run_B/claim_script_rerun_out.txt
  06b27946a50a7902caa571172b345ddc276c7ebc3ecb6d9f51ff7f52a06c4704  verification_run_B/own_exact_search.py
  30df60d5f71a0b756a4860b5c3adcdce0e9e3d4992a19a4a2706ea1542a5372b  verification_run_B/own_exact_search_out.txt
  b6c4c23a36b656f04aa9b4c207bcdec09b3f3643874027a221440161525e7ddb  verification_run_B/own_geom_numeric.py
  2394d44eadd14e25763c54e798838667770a0bfdec124825241f6c414d82c9a4  verification_run_B/own_geom_numeric_out.txt

Re-run by the third independent verification run (17 October 2026), from an extracted copy of source.zip
(version of 17 October 2026 before independent_run_2/ was added), same command and environment:
  original/verify_outer_billiard.py           0.65 s  byte-identical
  verification_run_A/A1_symbolic.py          69.9 s   identical except the timing fields "(... s)"
  verification_run_A/A2_numeric.py            5.2 s   byte-identical
  verification_run_A/A2b_numeric.py           3.2 s   byte-identical
  verification_run_B/own_geom_numeric.py     74.2 s   byte-identical
  verification_run_B/own_exact_search.py     42.6 s   byte-identical
  ./check_note.py                             2.2 s   identical except the line "(running time ... s)"
All exit codes 0. The programs of this run are in independent_run_2/ (see its README.md).
