commit 3b49e554fbe034cfc0af42e9ad2bb71c67cfa828 Author: kieran Date: Tue Sep 8 13:40:55 2026 -0700 Chronology: cycle-proof tests after the objection Kieran: the sky is cyclic; a test whose slack admits a cycle proves nothing, and the misses are evidence, not noise. Retracted the 'pinned' language. Lu: exact Zhou months collapse the 54-year aliases from 15/14 to 2; the two dated solstices (cycle-free) fall two days before the computed solstice at 722 BCE and a month off at every alias; no cell matches both solstices exactly and more than one eclipse. Ptolemy: alias landscape tabulated; only the read hours separate the epoch from backward saros copies, and the readings are labelled as mine. Zuozhuan pages archived. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_011ykePJ4ZFirrXCT1TCnKpm diff --git a/topics/chronology/README.md b/topics/chronology/README.md index 0b09ec2..79f405b 100644 --- a/topics/chronology/README.md +++ b/topics/chronology/README.md @@ -19,30 +19,42 @@ restricted to eclipses visible at Qufu (35.6 N 117.0 E), the capital of Lu, on t eclipse visible at Lu falls in that reign-year, within a month of the stated Zhou month (Zhou month 1 ≈ December/January), on a day whose cycle name is the one stated. -**Result** (`pipeline/align.py --local --slack 0`, `derived/align_chunqiu_local.json`): +**Result, first pass** (`derived/align_chunqiu_local.txt`): with a month of slack, 722 BCE scores 21 of 31, +but the sky is cyclic and the slack lets the cycles through: 54 years either way (three saros, the +exeligmos) scores 15 and 14. Kieran's objection, verbatim: "this is cyclic. if you miss years +they can be 'matched' later... take any of those and shift left or right." He was right, and the +first write-up of this section explained the misses instead of counting them. Retracted. -| first year of Duke Yin | matches of 31 | note | +**Result, cycle-proof** (`derived/align_combined.json`). The exeligmos moves an eclipse one +lunation against the seasons, so requiring the annal's Zhou month EXACTLY (Zhou month 1 = +December/January, no slack) is the test the cycle cannot pass: + +| first year of Duke Yin | month ±1 | month exact | |---|---|---| -| −721 (722 BCE) | 21 | the conventional date; rank 1 of 33,540 cells; z ≈ 53 | -| −667 (668 BCE) | 15 | 54 years later: the exeligmos (three saros) alias | -| −775 (776 BCE) | 14 | 54 years earlier: same alias | -| everything else | ≤ 11 | null mean 0.05 | - -The ten misses at −721: seven have no eclipse visible at Lu in the window (either an error in the -annal, an eclipse reported from elsewhere, or the visibility model's ΔT at the horizon); three are -cycle-day mismatches, two of them the known duplicate entries where the annal records eclipses in -consecutive months (襄公 21 months 9 and 10; 襄公 24 months 7 and 8), which the sky cannot do. -Nobody was assumed error-free; the errors are the minority and the alignment holds without them. - -**The cycle phase** at the peak is 49, which implies, if the sixty-day count has run unbroken, -that 1 January 2000 was a 戊午 day. Any Chinese almanac can confirm or refute that; if it -confirms, the day count runs unbroken from Lu to now, from first principles. - -**Caveats, left visible.** The local-visibility criterion depends on the model's Earth-rotation -history (ΔT), which is itself partly fitted to ancient eclipse records; the year alignment does -not depend on it (the 54-year aliases do not move with ΔT). With eclipses anywhere on Earth -instead of visible ones, the test aliases badly (six first-years tie). The month mapping is -approximate (Zhou intercalation). Cross-check against JPL DE422 pending (`data/ephemeris/`). +| 722 BCE (conventional) | 21 | 14 | +| 776 BCE, −1 exeligmos | 14 | 2 | +| 668 BCE, +1 exeligmos | 15 | 2 | +| ±1 saros, ±1 inex, ±19 y, ±1 y | 0–3 | 0–3 | +| best of the other 33,000 cells | | 6 | + +Ten records match nothing at 722 BCE under any tolerance. They are listed in +`align_chunqiu_local.txt`; two are the annal recording eclipses in consecutive months, which +the sky cannot do. They are counted, not explained. + +**The solstices** (`derived/align_solstices.json`, `align_combined.json`). The Zuozhuan +commentary dates two winter solstices to the day (僖公 5, 辛亥, on a new moon; 昭公 20, 己丑). +A solstice recurs with no eclipse cycle: 54 years shifts its cycle-day by 43. At 722 BCE with +the eclipse-fitted phase, BOTH stated days fall two days BEFORE the computed solstice, the same +sign and size; the stated new moon is one day from the solstice as computed. At the 54-year +aliases the stated days miss the solstice by 25 to 30 days. No cell on the grid matches both +solstices exactly and more than one eclipse. Read it either way: the earliest dated solstice +observations on record are two days early by gnomon, or something in the count is off by two +days that the eclipses do not see. That two-day residue stays visible here. + +**What survives.** With exact months, no eclipse cycle reproduces the annal's pattern anywhere +but 722 BCE; the one cycle-free constraint sits within two days of the same cell and a month +from every alias. What does not survive: any claim that the count is "pinned" to the day, or +that the misses are noise. ## Second test: the Anglo-Saxon Chronicle's own AD count @@ -75,20 +87,30 @@ hours of night were read by me into local hours, kept as a separate labelled cla era's first day. One free parameter, the Julian day of that first day, searched over ±300 years day by day (`pipeline/align_nab.py`). -**Result** (`derived/align_almagest.txt`). By days alone, 95 epochs tie at 8 of 9 matches: lunar -eclipses recur every saros (6585 days) and days cannot tell the copies apart. With the stated -hours, the conventional epoch (JD 1448638, 26 February 747 BCE) and the night after it score 8 of -9 days and 7 of 9 hours; every alias scores 2 hours or fewer. The one miss (year 546, Mesori 16) -has no eclipse within three days at any tested epoch and is an OCR or textual slip. - -## What the three tests say together -Each chain was pinned to the sky by itself, taking nothing from the others: Lu's reign-years and -cycle days; England's AD labels and Roman days; Ptolemy's era count and Egyptian months. The sky -is one. So the chains are aligned to each other by construction wherever they are pinned, and the -places where they are not pinned are visible: the 54-year exeligmos alias in Lu (21 vs 15 -matches), the one-to-two year lag in the chronicle's 795–827 entries, the saros aliases in the -Almagest that only the hours break. Errors in the records showed up as the minority, not as an -assumption. +**Result** (`derived/align_almagest.txt`). By days alone, 95 epochs tie at 8 of 9: lunar eclipses +recur every saros and days cannot tell the copies apart. The alias landscape, days and hours: + +| shift from the conventional epoch | days | hours | +|---|---|---| +| none | 8 | 7 | +| −1, −2, −3 saros | 8 | 0–2 | +| −1, −2 exeligmos | 8 | 2 | +| +2 inex | 8 | 2 | +| +1..+3 saros, +1, +2 exeligmos | 3–6 | 0 | +| ±1, ±3, ±7 years (no cycle) | 0–1 | 0–1 | + +Only the hours separate the conventional epoch from its backward saros copies, and the hours are +MY readings of Ptolemy's temporal hours (`derived/almagest_hours.json`), a labelled claim, not +the text. Anyone redoing the readings can move that column. The one day-miss (year 546, Mesori +16) matches at no tested epoch. + +## What the three tests say together, after the objection +The sky is cyclic, so a match is only evidence where the test cannot be passed by a cycle. Lu: +exact months defeat the eclipse cycles and the solstices are cycle-free; both point at the same +cell, the solstices two days off. England: the chronicle's own count drifts by one to two years +in one stretch and by days elsewhere; it is not a pinned chain, it is a count with visible slop. +Ptolemy: days alone alias every saros; only the read hours separate the epoch, and those are a +claim of mine. Nothing here is "pinned"; each chain is constrained, with its residue listed. ## Next Halley's apparitions in the Chinese annals and the European chronicles; the Miyake 774/993 rings