--- slug: conways-soldiers passed: 2026-10-11 by: claude-vibrant-lamport-79znpp, two independent Claude checkers on oversight/claims-pass.md (source first, every claim the page makes), an adjudicator who re-read each finding at its source and a skeptic who tried to make the page right; every HIGH and every lone WRONG re-read by the instance at the source before fixing; fixes made by a fixer agent and read against the sources by a separate fix-checker checked: 46 confirmed: 28 wrong: 14 unverifiable: 1 observed: 3 stale: 0 --- # Claims pass: Conway's Soldiers Reader-side check, run from an empty directory by both checkers and the adjudicator with the same result: `curl -sS -o verify.py https://artwaste.land/checks/research/conways-soldiers/verify.py` (200, 12,968 bytes, byte-identical to research/conways-soldiers/verify.py), then `python3 -I verify.py` as the page instructed: exit 1, "ModuleNotFoundError: No module named 'sympy'". The page did not mention sympy, and the README that does is not served (404). With sympy 1.14.0 in a venv, `venv/bin/python -I verify.py` exits 0 in about 5 s with 19 [PASS], 0 [FAIL], 0 [INFO] and "ALL CHECKS PASSED", and the figures it prints (the φ-ladder 6.854102 to 1.0, the truncations 0.8792269600, 0.9999086445 and 0.9999999940) match the page. The page's four Solve lists, replayed by the adjudicator, are legal, reach rows 1 to 4 and keep the weight at or above 1 (lowest 1.262511, on row 4), and the starting weights recompute to the page's, 0.981901 for row 5. The self-reading probe does not apply: verify.py opens no file, takes no argument, passes 19/19 in a directory holding only itself and never reads the page, so no shipped check reads the page's own constants (0.982, WSTART, WINF, the 62-move row-4 list). After the edits the fixer and both fix-checkers ran it again: 19/19, exit 0. The mathematics held. The pass found four WRONG claims and ten MINOR ones, all counted as wrong: the conservation rule said only a jump straight at the target keeps the weight, when every jump that brings a soldier closer does (F1); the footer named Winning Ways (1982) as first print, when Honsberger printed the problem and the proof in 1976 (F2); it credited the diagonal-jump row-8 result to Tatham and Taylor, 2003, rather than Eriksen, Eriksson and Eriksson, 2000 (F3); and the note to The Topswops Machine credited Conway with Wilf's halting quantity (F4). The MINOR findings are the unstated sympy requirement (F5), overstatements of what the verifier replays and checks (F6, F7, F8, F14), "any number of moves" without "finite" (F9), the row-1 replay count (F10), "the root" for "the positive root" (F11) and two dates (F12, F13). All fourteen are fixed; the four WRONG fixes carry a "Corrected 2026-10-11" paragraph in the footer, and F13 needed no edit because the placard line is generated from this record. The film was not re-rendered: film.mp4 still shows the old wording, and the figcaption now says so for the conservation rule, the caption crediting verify.py with every jump, and "any number of moves". Nothing was declined and nothing is held by a note. ## Claims - CONFIRMED | John Conway's 1961 proof / John Conway proved it in 1961 / Conway's 1961 impossibility | https://arxiv.org/pdf/math/0612612 (Bell, Hirschberg & Guerrero-García, INTEGERS 7 (2007) #G07); https://en.wikipedia.org/w/index.php?title=Conway%27s_Soldiers&action=raw | "This problem was introduced by John Conway in 1961 [fn: John Beasley personal communication.] ... Conway also discovered an elegant proof that no army restricted to orthogonal jumps can advance more than four steps" / Wikipedia: "devised and analyzed by mathematician John Horton Conway in 1961"; The year rests on Beasley's personal communication via Bell et al., and that source dates the problem's introduction. The footer's 'c. 1961' is the better-hedged form. - CONFIRMED | the row-5 impossibility is John H. Conway's, c. 1961 | https://www.chiark.greenend.org.uk/~sgtatham/solarmy/ (Credits); Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.24 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "John Horton Conway devised the original proof that y =5 cannot be reached in finitely many moves" / "no arrangement, with however many men, is sufficient to reach level five! ... This is the discovery of John Conway, of Cambridge." - WRONG | Conway's solitaire army first appeared in print in Berlekamp, Conway & Guy, Winning Ways for Your Mathematical Plays (1982), vol. 2 | https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt ; https://arxiv.org/pdf/math/0612612 | Honsberger: "© 1976 by The Mathematical Association of America" ... "CHAPTER 3 A PROBLEM IN CHECKER-JUMPING". Bell et al. fn 2: "The first published appearance of the solitaire army was apparently 1976 [3]."; F2. It was in print by 1976, six years before Winning Ways. - CONFIRMED | Berlekamp, Conway & Guy, Winning Ways for Your Mathematical Plays (1982), vol. 2 (as a work treating the solitaire army) | https://www.combinatorics.org/ojs/index.php/eljc/article/download/v7i1r3/pdf (ref [1]); https://oeis.org/search?q=id:A014225&fmt=text ; https://mathworld.wolfram.com/ConwaysSoldiers.html | "[1] E. R. Berlekamp, J. H. Conway, R. K. Guy, Winning ways, Academic Press, London, 1982, vol. 2, 697-734." / OEIS: "Winning Ways, Academic Press, NY, 2 vols., 1982, see p. 715." - WRONG | Diagonal-jump variants reach row 8 and no further (Simon Tatham & Gareth Taylor, 2003) | https://www.combinatorics.org/ojs/index.php/eljc/article/download/v7i1r3/pdf ; https://tartarus.org/gareth/maths/stuff/solarmy.pdf ; https://arxiv.org/pdf/math/0612612 | Eriksen, Eriksson & Eriksson (2000) Table 1: "2 9 0.877 1.308"; "using ad hoc methods we have constructed a game in Z2 that reaches level 8, so here the upper bound is sharp!" / Tatham & Taylor: "a solution within that model which reaches row five" ('diagonal': 0 hits) / Bell: "The diagonal army was first studied by Aigner [5] in 1997"; F3. The fact is right but the attribution is wrong: the bound and a row-8 game are Eriksen, Eriksson & Eriksson's (2000), and Tatham & Taylor's result is row 5 with infinitely many orthogonal moves. - CONFIRMED | Diagonal-jump variants reach row 8 and no further ... a different game with the same flavour of proof (the result itself) | https://arxiv.org/pdf/math/0612612 ; https://www.combinatorics.org/ojs/index.php/eljc/article/download/v7i1r3/pdf | "Direct calculation shows that S3,8 ≈ 1.31, but that S3,9 < 1, so level 9 cannot be reached. Again, we will show that level 8 can be reached." / "Note that both of these exponent patterns are based on a distance metric from the target cell, where Figure 3 uses the Manhattan or taxi cab metric (ℓ1 norm), and Figure 4 the number of chess king moves (ℓ∞ norm)."; True for the eight-direction 'diagonal army'. The diagonal-only 'skew army' reaches 6 (Bell Table 1), so the plural 'variants' is loose. - UNVERIFIABLE | (Simon Tatham & Gareth Taylor, 2003) | https://tartarus.org/gareth/maths/stuff/solarmy.pdf (pdfinfo); https://www.chiark.greenend.org.uk/~sgtatham/solarmy/ | The PDF has no CreationDate (Producer GNU Ghostscript 6.53) and no date in its text; Tatham's page gives no year; earliest Wayback capture of the PDF 20100703024829 (per checker A); Moot once F3 is fixed. - CONFIRMED | The known minimal armies, for the record, are 2, 4, 8, 20 soldiers for rows 1–4 (Conway; Beasley) | https://oeis.org/search?q=id:A014225&fmt=text ; https://arxiv.org/pdf/math/0612612 ; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.23 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "%S A014225 1,2,4,8,20" / Bell: "the minimum size army to advance 1, 2, 3, or 4 levels was found to be 2, 4, 8, and 20 men, respectively [2]" ([2] = J. Beasley, The Ins and Outs of Peg Solitaire) / Honsberger: "The preceding cases have used 2, 4, 8, and 20 men." - MINOR | our replays use more, since they are found by search, not optimised | public/strata/conways-soldiers/index.html (the page's SOLS); recreated: python3 -I adjudicator/scripts/replay.py public/strata/conways-soldiers/index.html | row 1 soldiers used 2; row 2 used 5; row 3 used 13; row 4 used 77; F10. Row 1's replay uses exactly the minimal 2. - CONFIRMED | "σ = (√5−1)/2 ≈ 0.618 is the positive root of x² + x − 1 = 0 — that is, σ + σ² = 1. It is exactly 1/φ, the reciprocal of the golden ratio" | research/conways-soldiers/verify.py (served at https://artwaste.land/checks/research/conways-soldiers/verify.py); recreated: venv/bin/python -I verify.py (downloaded /checks/ copy); Honsberger, Mathematical Gems II (MAA 1976) ch. 3 pp.26-27 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "[PASS] sigma is a root of x^2 + x - 1 = 0", "[PASS] sigma = 1/phi (phi the golden ratio)" / Honsberger: "Taking x to be the positive root, (V5 — 1)/2 ... x is the reciprocal of the famous Golden Mean" - MINOR | σ = (√5−1)/2 is the reciprocal of the golden ratio and the root of x²+x−1=0 | Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.26 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt); recreated: quadratic formula | "Thus x =(—-1+V5)/2. Taking x to be the positive root, (V5 — 1)/2"; roots of x²+x−1 = (−1 ± √5)/2; F11. - CONFIRMED | weight every cell by σ raised to its taxicab distance from the target | Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.25 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt); https://arxiv.org/pdf/math/0612612 p.6 | "The exponent of the power is simply the number of unit steps in directions parallel to the axes in a shortest path from the distinguished point P to the lattice point in question." / "Figure 3 uses the Manhattan or taxi cab metric (ℓ1 norm)" - WRONG | A jump straight at the target conserves the total weight (because σ+σ²=1); every other jump strictly loses it / any sideways jump: −σⁿ < 0 / It holds steady only on a jump aimed straight at the target | https://arxiv.org/pdf/math/0612612 p.4; https://tartarus.org/gareth/maths/stuff/solarmy.pdf §1; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.26 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt); public/strata/conways-soldiers/index.html (the page's SOLS); recreated: python3 -I adjudicator/scripts/replay.py public/strata/conways-soldiers/index.html | Bell: "every orthogonal jump which brings a peg closer to the target cell maintains the total weight" / Tatham & Taylor: "a move upwards, or inwards toward the y-axis ... leaves the total board value unchanged. All other moves (outward, downward, or crossing the y-axis) decrease it." / replay row 4: conserve_vert 44, conserve_horiz 16, loss 2; only 2 of 62 moves in the target's column; F1. Every jump that brings a soldier closer conserves weight, including sideways jumps in toward the target's column. The meta description (:30) has it right. - CONFIRMED | jump straight away σⁿ + σⁿ⁺¹ → σⁿ⁺², −2σ·σⁿ < 0; the same-distance (across) case σⁿ + σⁿ⁺¹ → σⁿ⁺¹, −σⁿ < 0 (as algebra) | research/conways-soldiers/verify.py (A5); recreated: venv/bin/python -I verify.py; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.27 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "[PASS] jump straight AWAY strictly loses weight (coeff < 0 for all n)", "[PASS] best SIDEWAYS jump strictly loses weight (coeff = -1 < 0)" / Honsberger p.27, transcribed from the garbled djvu OCR: a jump away changes the value by x^n(−2x) < 0, and a type (iii) jump by −x^(n−1); The formulas are right. Only the label 'any sideways jump' is wrong (F1). - CONFIRMED | σⁿ⁺¹ + σⁿ⁺² = σⁿ is just σ + σ² = 1 in disguise (the jump-conservation identity) | research/conways-soldiers/verify.py (A4); recreated: venv/bin/python -I verify.py; https://arxiv.org/pdf/math/0612612 eq. (1) | "[PASS] jump-toward-target conserves weight" / "σ i + σ i−1 = σ i−2 ." - CONFIRMED | the whole infinite army weighs exactly 1, the same as a single soldier standing on row 5 | https://tartarus.org/gareth/maths/stuff/solarmy.pdf p.2; https://arxiv.org/pdf/math/0612612 p.5; research/conways-soldiers/verify.py (A6); recreated: venv/bin/python -I verify.py | "it comes to ϕ5 , which is exactly equal to the value of a single peg at (0, 5)." / "The total weight of rows 5 and higher is S1,5 = σ 0 = 1" / "[PASS] whole-army weight for a row-5 target equals exactly 1" - CONFIRMED | S = σ⁵ · (1+σ)/(1−σ)² = σ⁵ · σ⁻¹ · σ⁻⁴ = σ⁰ = 1.000000… (using 1−σ = σ² and 1+σ = 1/σ) | research/conways-soldiers/verify.py (A3, A6); recreated: venv/bin/python -I verify.py; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.28 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "[PASS] 1 + sigma = 1/sigma"; closed form S = 1 / Honsberger: "x(1+x) = x + x^2 = x + 1 − x = 1." - MINOR | provably out of reach for any number of soldiers and any number of moves / no matter how many soldiers or moves you use / no position can reach row 5 even allowing the full infinite army | https://tartarus.org/gareth/maths/stuff/solarmy.pdf | "row five is not reachable in any finite number of moves. We present a well-defined model of the game permitting infinitely many moves, and a solution within that model which reaches row five."; F9. Needs 'finite number of moves'. md:23-24 and JSON-LD :53 ('any finite army') are correct. - CONFIRMED | The fifth row is impossible: not unsolved, but provably out of reach (for any finite army) | https://tartarus.org/gareth/maths/stuff/solarmy.pdf (abstract); https://arxiv.org/pdf/math/0612612 p.5; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "It is known that row four is reachable, but row five is not reachable in any finite number of moves." / "it is impossible for any finite army to reach level 5" - CONFIRMED | "One row past the line is easy. Two, three, four — all possible (with enough soldiers)" | Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.23 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt); public/strata/conways-soldiers/index.html (the page's SOLS); recreated: python3 -I adjudicator/scripts/replay.py public/strata/conways-soldiers/index.html | "only two men are needed to reach the first level ... level two can be reached with four men ... to reach the third level it is necessary to start with eight men ... Surprisingly, it takes 20."; replay: rows 1-4 legal, top rows 1, 2, 3, 4 - CONFIRMED | against a row-5 target this finite army already weighs 0.982 / board (columns −9…9, depth 9) starting weight 0.9819 | public/strata/conways-soldiers/index.html (WSTART; board x∈[−9,9], y∈[−9,0]); recreated: python3 -I adjudicator/scripts/replay.py (sum of σ^(abs(x)+5−y) over x∈[−9,9], y∈[−9,0]) | "row5 start 0.981901" - CONFIRMED | The same accounting, run against rows 1 through 4, gives the army a starting weight above 1 ... Row 5 is the first row where the books exactly balance | research/conways-soldiers/verify.py (A6b); public/strata/conways-soldiers/index.html (WSTART, WINF); recreated: venv/bin/python -I verify.py (A6b); replay.py start weights | "ladder: phi^4, phi^3, phi^2, phi, 1 = 6.854102, 4.236068, 2.618034, 1.618034, 1.0 (rows 1..5)"; finite board start 6.730050, 4.159400, 2.570650, 1.588749 - CONFIRMED | press Solve it and watch legal sequences carry a soldier to rows 1, 2, 3, or 4 with the bar staying above the green 1.000 line | public/strata/conways-soldiers/index.html (the page's SOLS); recreated: python3 -I adjudicator/scripts/replay.py public/strata/conways-soldiers/index.html | "1 1 legal True top 1 ... min 6.730050"; "2 4 legal True top 2 ... min 3.541366"; "3 11 legal True top 3 ... min 2.188684"; "4 62 legal True top 4 ... min 1.262511" - CONFIRMED | Slide it to row 5 and Solve it goes dark | repo: public/strata/conways-soldiers/index.html:502 | "$("solve").disabled = (target === 5) ..." (the rest of the line, a logical OR with replaying, also disables it during a replay) - CONFIRMED | weight ≥ 1 is a necessary condition to occupy the target, not a sufficient one | https://arxiv.org/pdf/math/0612612 p.5; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.27 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "Any Conway's army capable of reaching the final cell must have total weight greater than or equal to 1." / "a set of men capable of sending a man to the point P would have to begin with a value of at least 1" - CONFIRMED | "A move is one orthogonal jump — a soldier hops over an adjacent soldier into the empty cell beyond, removing the jumped one" | https://tartarus.org/gareth/maths/stuff/solarmy.pdf p.1; Honsberger, Mathematical Gems II (MAA 1976) ch. 3 p.23 (https://archive.org/download/mathematical-gems-ross-honsberger/Mathematical%20Gems%20II%20%28%20PDFDrive%20%29_djvu.txt) | "a peg may jump exactly two units in any of the four orthogonal directions, provided the target point is empty and the point in between is full. The peg jumped over is removed." / "(diagonal jumps are not allowed)" - CONFIRMED | It checks: σ²+σ−1 = 0; σ = 1/φ; the jump-conservation identity; that away- and sideways-jumps strictly lose weight; that the infinite half-plane sums to exactly 1 for a row-5 target; that finite truncations sit below 1 | research/conways-soldiers/verify.py; recreated: venv/bin/python -I verify.py (downloaded from https://artwaste.land/checks/research/conways-soldiers/verify.py) | corresponding lines [PASS]; truncations "0.8792269600 < 1", "0.9999086445 < 1", "0.9999999940 < 1"; exit 0 - MINOR | it plays out found solutions reaching rows 1, 2, 3, and 4 on this very board ... The move-lists this page replays are the verifier's own output / replays every solution move-by-move / The verified row-4 solution / Every jump validated by research/conways-soldiers/verify.py | research/conways-soldiers/verify.py; research/conways-soldiers/solutions.json; public/strata/conways-soldiers/index.html (SOLS); research/conways-soldiers/gen_solutions.py; recreated: scratch verify_dump.py vs the page's SOLS and solutions.json | "[PASS] row 4: started 120 soldiers, reached row 4"; "4 verify 50 page 62 identical False solutions.json==page True" (rows 1-3 identical); gen_solutions.py "X,Ymin=9,-9"; F6. The page's lists are legal (replayed), but verify.py runs on smaller armies and never sees the page's 62-move row-4 list. - MINOR | It checks, and exits 0 only if all hold | research/conways-soldiers/verify.py:300-302; recreated: verify_capped.py (row-4 node cap 8000000 -> 10), venv/bin/python -I | "[INFO] row 4: search hit node cap before finding a solution ..." then "ALL CHECKS PASSED", exit 0; F7. Latent; at the shipped caps all searches succeed. - MINOR | Nothing here is asserted from memory. A self-contained verifier re-derives all of it from first principles | research/conways-soldiers/verify.py (read); memory/log.d/2026-06-28T2355Z-conways-soldiers.md | log: "(the known minimal armies are 2,4,8,20 — Conway/Beasley — ...)", "The diagonal-jump variant (Tatham & Taylor 2003: row 8 reachable, row 9 not)"; verify.py checks only algebra and board replays; F8. The footer's history is not checked by anything. - MINOR | Every number is recomputed in the browser from the same σ and the same jump rules that research/conways-soldiers/verify.py proves offline | repo: public/strata/conways-soldiers/index.html:340-343, :493; src/pages/strata/[...slug].astro:12 | "var WSTART = {1:6.730050,...,5:0.981901};" "var WINF = {...};" "Row 5: the bar starts at " + WSTART[5].toFixed(4); ".filter((s) => !s.data.draft && !s.data.href) // immersive layers serve their own page"; F14 (PARTLY). Overstated, but this markdown body is not published. - CONFIRMED | Recomputed offline by research/conways-soldiers/verify.py (19/19) | research/conways-soldiers/verify.py; recreated: curl https://artwaste.land/checks/research/conways-soldiers/verify.py; venv (sympy 1.14.0)/bin/python -I verify.py | 19 [PASS], 0 [FAIL], 0 [INFO], "ALL CHECKS PASSED", exit 0 (5 s) - CONFIRMED | "Companion film — 2:30 ... MP4 / H.264 + AAC" | public/strata/conways-soldiers/film.mp4; recreated: ffprobe public/strata/conways-soldiers/film.mp4; curl https://artwaste.land/strata/conways-soldiers/film.mp4 | "codec_name=h264, width=1920, height=1080, r_frame_rate=24/1", "codec_name=aac", "duration=150.000000"; live 200, 9550357 bytes = repo size - OBSERVED | Every number is recomputed live from σ; the percussion is the solution itself, accented at each new row reached. | repo: research/conways-soldiers/film/film.html:159-189; research/conways-soldiers/film/make-audio.mjs:16-21, :76-88 (per checker B); memory/log.d/2026-06-29T0030Z-conways-soldiers-film.md | film.html: "function armyWeight(s, T) { ... Math.pow(SIGMA, ..."; make-audio.mjs: "const milestone = ly > maxRow;"; log: "the percussion steps the solution one beat per move, accented at each new highest row" - MINOR | "uploadDate":"2026-07-09" (VideoObject) | git log --diff-filter=A --format='%h %as' -- public/strata/conways-soldiers/film.mp4; scripts/seo-heads.mjs:177-180 | "1a46948932 2026-06-29"; "NO --follow — rename-following chased an unrelated commit and stamped a false 2026-07-09 on a film added 2026-07-11"; F12. Should be 2026-06-29. - CONFIRMED | "datePublished":"2026-06-28" | git log 08fbdb423e (the commit that added public/strata/conways-soldiers/index.html and src/content/strata/conways-soldiers.md) | "08fbdb423e 2026-06-28 23:56:56 +0000 Conway's Soldiers: the solitaire army + the golden-ratio monovariant that proves row 5 is unreachable" - MINOR | Last verified 28 June 2026, when it was written. | git log -- research/conways-soldiers/verify.py; memory/log.d/2026-06-28T2355Z-conways-soldiers.md; memory/log.d/2026-06-29T0030Z-conways-soldiers-film.md | 28 June log: "`research/conways-soldiers/verify.py` (exits 0)."; "1a46948932 2026-06-29 00:31:18 +0000 ... verifier φ-ladder"; 29 June log: "Verifier now 19/19 PASS (was 14)."; F13. The latest recorded verification (of the served 19-check verifier) was 29 June. - OBSERVED | Measured: with every file this layer ships emptied, it still passes. | research/verifier-independence/depends-topup.json:649-663; recreated: verify.py run in an empty directory | "rel": "research/conways-soldiers/verify.py", "tier": "C0", "exitCode": 0, "depends": false; empty-dir run 19 PASS, exit 0; The earlier depends-0.json run failed only for want of sympy. - CONFIRMED | This layer's check works the answer out again from scratch, independently of this page ... it cannot notice a figure that drifted on this page. | research/conways-soldiers/verify.py (no file reads, no argv); research/verifier-independence/verdicts.tsv:67 | "conways-soldiers C0 blind" - CONFIRMED | It is published to read. | curl https://artwaste.land/checks/research/conways-soldiers/verify.py | 200, 12968 bytes; cmp identical to research/conways-soldiers/verify.py - OBSERVED | Whether it runs on its own has not been tested yet. | public/checks/manifest.json | {'path': 'research/conways-soldiers/verify.py', 'url': '/checks/research/conways-soldiers/verify.py', 'bytes': 12968, 'checks': [], 'layers': ['conways-soldiers']}; True of the record. Tested now: it fails without sympy and passes 19/19 with it (F5). - MINOR | python3 research/conways-soldiers/verify.py (the page's instruction to the reader) | recreated: empty dir, curl -sS -o verify.py https://artwaste.land/checks/research/conways-soldiers/verify.py && python3 -I verify.py | "ModuleNotFoundError: No module named 'sympy'" exit=1; /checks/research/conways-soldiers/README.md -> 404; F5 (BROKEN, MINOR): the sympy requirement is unstated. - CONFIRMED | (relates most-irrational) φ's all-ones continued fraction makes it the number hardest to approximate by fractions | https://en.wikipedia.org/wiki/Hurwitz%27s_theorem_(number_theory) (statement of Hurwitz 1891) | "the constant √5 is the best possible; if we replace √5 by any number A > √5 and we let ξ = (1+√5)/2 (the golden ratio) then there exist only finitely many relatively prime integers m, n such that the formula above holds."; φ ties with the numbers equivalent to it; this is the standard phrasing. - CONFIRMED | (relates find-what-doesnt-change) "That piece collects impossibilities settled by an invariant — a thing that never changes — across the corpus" | repo: src/content/strata/find-what-doesnt-change.md | "A combine portal across five layers of this place, each of which proves a 'you can't' ... by the SAME proof. To show a thing is impossible, find a quantity the allowed moves cannot change (an invariant)" - CONFIRMED | (relates topswops-machine) Two of John Conway's one-rule games | https://archive.org/download/gardner012/gardner012_djvu.txt (Gardner 1988, ch. 6); https://arxiv.org/pdf/2510.16679 | "John Horton Conway of the University of Cambridge invented a series of card problems and games ... Conway calls the game topswops." / "this operation was in fact first proposed by John Conway with the name topswaps" - WRONG | (relates topswops-machine) Topswops must halt because a cleverly chosen monovariant strictly decreases every step until it can't ... Conway built the same key twice. | https://archive.org/download/gardner012/gardner012_djvu.txt (Gardner 1988, ch. 6, pp.76-82); https://arxiv.org/pdf/2510.16679 | "Herbert S. Wilf of the University of Pennsylvania reported a delightful discovery about topswops that provides a proof of the game's finiteness. ... what I shall call the Wilf number ... “The reason that the number increases,” Wilf writes" / "(proved by Herbert Wilf, as recounted in [Gar88])"; F4. The halting monovariant is Wilf's, and it increases. ## Findings - [fixed] F1 (WRONG): The page said only a jump aimed straight at the target conserves the weight and "any sideways jump" loses σⁿ, but every jump that brings a soldier two steps closer conserves it, sideways jumps in toward the target's column included (Bell et al. p.4, Tatham & Taylor §1, Honsberger pp.26-27); the md dek, the prose, the hint and the twitter and JSON-LD descriptions now say a jump that brings a soldier closer to (or toward) the target conserves it, the table's losing rows are now "jump away from the target" and "jump across the target's column or row (lands at the same distance)", the TV narration reads "Jump a soldier closer to your goal", the md body, the README and verify.py's comments, one check label and its printed summary say the same (no logic changed), and, since film.mp4 was not re-rendered, the figcaption now says the film still shows the old rule. - [fixed] F2 (WRONG): The footer said the solitaire army "first appeared in print" in Winning Ways (1982), but Honsberger's Mathematical Gems II (MAA, 1976), ch. 3, printed the problem, the 2/4/8/20-man armies and Conway's proof six years earlier, and the footer now reads "Conway's solitaire army was in print by 1976, in Ross Honsberger's Mathematical Gems II (MAA), ch. 3, “A Problem in Checker-Jumping”, and appears in Berlekamp, Conway & Guy, Winning Ways for Your Mathematical Plays (1982), vol. 2", with Honsberger added to the README's sources. - [fixed] F3 (WRONG): The footer credited the diagonal-jump result (row 8 reachable, row 9 not) to "Simon Tatham & Gareth Taylor, 2003", whose undated paper treats only orthogonal jumps, and it now reads "With diagonal jumps allowed as well as orthogonal ones, row 8 can be reached and row 9 cannot (N. Eriksen, H. Eriksson & K. Eriksson, 2000)", while Tatham and Taylor are credited instead with showing that a model permitting infinitely many moves reaches row 5 (the README matches; Aigner 1997, named in the proposal, was left out because the fixer could not read it). - [fixed] F4 (WRONG): The relates note to topswops-machine said Topswops halts because "a cleverly chosen monovariant strictly decreases" and that "Conway built the same key twice", but Gardner credits the halting quantity to Herbert S. Wilf and it increases, and the note in src/content/strata/conways-soldiers.md now reads "a cleverly chosen quantity (Herbert Wilf's, as Martin Gardner recounts) strictly increases every step and has a ceiling" and ends "The same kind of key, cut twice." (the copy in there-here's data, public/strata/there-here/index.html, is left to the director to regenerate). - [fixed] F5 (MINOR): The page told readers to run "python3 research/conways-soldiers/verify.py", a repository path, and never said the script needs sympy, so the reader's downloaded copy exits 1 with ModuleNotFoundError; the check section now says "It needs Python 3 with sympy", links /checks/research/conways-soldiers/verify.py, and gives "pip install sympy" then "python3 verify.py". - [fixed] F6 (MINOR): The page said the verifier plays out solutions "on this very board" and that "The move-lists this page replays are the verifier's own output", but verify.py searches smaller armies (10 to 120 soldiers) and its 50-move row-4 list is not the page's 62-move list from gen_solutions.py; the check section now says it plays out solutions it finds itself on smaller armies inside the board (10 to 120 soldiers), that the Solve lists for rows 1-3 are the same move-lists and the row-4 list comes from gen_solutions.py (not published), the figcaption and VideoObject begin "A row-4 solution replayed move by move", the md dek ends "replays solutions for rows 1–4 move by move", and the figcaption says the film's caption crediting verify.py with every jump is out of date (verify.py's logic was not changed, as directed). - [fixed] F7 (MINOR): "It checks, and exits 0 only if all hold" covered the row searches, though a search that hits its node cap prints [INFO] and still exits 0; the sentence now lists only the algebra under "exits 0 only if all hold" and says of the row searches "a search that runs out of budget is reported, not failed", and the README notes the INFO case (verify.py's logic was not changed, as directed). - [fixed] F8 (MINOR): "Nothing here is asserted from memory. A self-contained verifier re-derives all of it" took in the footer's dates and attributions, which no check reads; it now reads "The mathematics here is not asserted from memory. A self-contained verifier re-derives it" and adds "(The minimal armies and the history in the footer are cited, not checked.)". - [fixed] F9 (MINOR): "any number of soldiers and any number of moves" said more than Conway's proof, which rules out row 5 in any finite number of moves; the served dek and md dek now say "in any finite number of moves", the meta description "no matter how many soldiers you use, in any finite number of moves", the footer "no finite sequence of moves can reach row 5, even with the full infinite army" with Tatham and Taylor's infinitely-many-moves model noted, and the figcaption says that where the film says any number of moves, the proof covers any finite number of moves. - [fixed] F10 (MINOR): "our replays use more" was false for row 1, whose single jump uses exactly the minimal 2 soldiers; it now reads "our replays for rows 2–4 use more (5, 13 and 77)". - [fixed] F11 (MINOR): The md dek called σ "the root of x²+x−1=0", which has two roots; it now says "the positive root", as does the film source (film.mp4, not re-rendered, still shows "the root", and the figcaption does not mention it). - [fixed] F12 (MINOR): The VideoObject's uploadDate was 2026-07-09, a date the old --follow bug in scripts/seo-heads.mjs stamped, while film.mp4 entered git on 2026-06-29; it now reads "uploadDate":"2026-06-29", and node scripts/seo-heads.mjs --check reports 10 pending items across 1137 immersive pages, the same count the fixer saw before the edit. - [fixed] F13 (MINOR): The placard's "Last verified 28 June 2026, when it was written." predated the 29 June run of the served 19-check verifier; the line is generated from this record by scripts/check-placard.mjs (verified = the record's passed date), so the fixer made no edit, and once the placard is regenerated with this record in place it reads "Last verified 11 October 2026, when its claims were re-read against their sources". - [fixed] F14 (MINOR): The unserved markdown body said "Every number is recomputed in the browser", but the starting weights, the infinite-army marks and the Solve move-lists are constants copied from solutions.json; it now reads "The live weight is recomputed in the browser from the same σ and the same jump rules that research/conways-soldiers/verify.py proves offline; the starting weights and Solve it move-lists are embedded from solutions.json."