{"slug": "73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on", "title": "73,049 dates through a numerology rule: mostly mod 9, and 33's rarity depends on when you reduce", "summary": "A developer at Znakai computed the Life Path number for every date from 1900 to 2099, finding that 33 is the rarest outcome at 0.54% under one reduction order, but changes to 2,186 occurrences (5.6x) under a different order within the same school. The distribution is largely explained by modulo 9 arithmetic, with six values clustering near one ninth each.", "body_md": "The usual headline is that 33 is the rarest Life Path, about half a percent. Half a percent of what, reduced in which order? Change the order, to another convention inside the same master-preserving school, and 33 turns up 2,186 times instead of 393. Same rule, same dates, 5.6x.\n\nLife Path is a digit-reduction rule mapping a birth date to a small integer. It predicts nothing. But it is a deterministic function over a finite domain, which means you never have to sample it. You can just run the whole thing. We did: every date from 1900-01-01 to 2099-12-31, exactly 73,049 dates.\n\nThe other result is duller and it goes first, because it disarms most of what gets written about this distribution. Six of the twelve values land within four dates of each other, near one ninth apiece. That is not a discovery. That is mod 9.\n\nDisclosure: we are not a neutral party. Znakai builds the numerology apps at numeroai.me and ai-numerolog.ru, which have a paid tier. We publish the arithmetic openly because the arithmetic is the only part of numerology that can be checked.\n\n\"Reduce\" means repeatedly replacing `n`\n\nwith the sum of its digits until a single digit remains — with one exception: 11, 22, and 33 (\"master numbers\") are kept whole at every step. That exception is the source of all the structure below. This is the Pythagorean school; schools that reduce 11/22/33 down to 2/4/6 produce a different table entirely.\n\nThe code is the spec:\n\n``` python\nfrom collections import Counter\nfrom datetime import date, timedelta\n\nMASTERS = {11, 22, 33}\n\ndef reduce_digits(n: int) -> int:\n    \"\"\"Digit-sum n down to a single digit, but keep 11, 22, 33 whole.\"\"\"\n    while n > 9 and n not in MASTERS:\n        n = sum(int(c) for c in str(n))\n    return n\n\ndef life_path(d: date) -> int:\n    day = reduce_digits(d.day)\n    month = reduce_digits(d.month)\n    year = reduce_digits(sum(int(c) for c in str(d.year)))\n    return reduce_digits(day + month + year)\n\ncounts: Counter[int] = Counter()\nd, end = date(1900, 1, 1), date(2099, 12, 31)\nwhile d <= end:\n    counts[life_path(d)] += 1\n    d += timedelta(days=1)\n```\n\nThe full census over all 73,049 dates:\n\n| Life Path | Dates | Share |\n|---|---|---|\n| 1 | 8,114 | 11.11% |\n| 2 | 3,650 | 5.00% |\n| 3 | 8,116 | 11.11% |\n| 4 | 5,656 | 7.74% |\n| 5 | 8,118 | 11.11% |\n| 6 | 7,725 | 10.58% |\n| 7 | 8,117 | 11.11% |\n| 8 | 8,117 | 11.11% |\n| 9 | 8,116 | 11.11% |\n| 11 | 4,464 | 6.11% |\n| 22 | 2,463 | 3.37% |\n| 33 | 393 | 0.54% |\n\nThe most screenshot-able line in that table — **33 is the rarest outcome at 0.54%** — comes with two asterisks. That figure is a share of calendar dates, not of people: real birthdays are not uniform over the calendar. And it is a fact about one particular reduction order, not about numerology as such — compute the same school's rule in a different order and 33's share more than quintuples.\n\nDigit-summing preserves a number's value mod 9, and the master-number exception doesn't change the residue either: 11 ≡ 2, 22 ≡ 4, 33 ≡ 6 (mod 9). So the whole pipeline collapses, mod 9, to `life_path(d) ≡ (day + month + year) mod 9`\n\n, verified across all 73,049 dates with zero exceptions. Residues spread nearly evenly over the 200-year window, so each class collects close to one ninth of the calendar. The six values with no master in their residue class (1, 3, 5, 7, 8, 9) simply keep their ninth: 8,114 to 8,118 dates each.\n\nA perfect tie is impossible to begin with: 73,049 = 9 × 8,116 + 5, so the residues cannot split evenly. But the remainder alone would allow a spread of one; the actual spread of four comes from the calendar itself being slightly uneven across residues: month lengths and the leap cycle. The nine classes hold 8,114 / 8,114 / 8,116 / 8,116 / 8,117 / 8,117 / 8,118 / 8,118 / 8,119 dates.\n\nThe residue classes of 2, 4, and 6 do have masters competing, and the masters create no mass — they relabel it. Add each pair back and the ninth reappears: 2 + 11 = 8,114; 4 + 22 = 8,119; 6 + 33 = 8,118. As a group the masters cover 7,320 dates, 10.02% of the calendar.\n\nLife Path 2, at 5.00%, is rarer than the master number 11 (6.11%) that is supposed to be the special one. 11 wins more than half of their shared residue class. And within this convention, 33 at 0.54% is 20.65 times rarer than the flat values. \"An order of magnitude\" undersells it.\n\nOur own earlier draft of this article had this defect: it printed 0.54% as *the* rarity of 33, flat, with no order attached. We caught it in review, re-deriving every number in the draft from a fresh computation — which is the argument for doing that. Two conventions circulate inside the same master-preserving Pythagorean school:\n\nThey sound interchangeable. Over the same 73,049 dates:\n\n| Life Path | Components first | All digits at once |\n|---|---|---|\n| 2 | 3,650 | 3,302 |\n| 4 | 5,656 | 4,337 |\n| 6 | 7,725 | 5,932 |\n| 11 | 4,464 | 4,812 |\n| 22 | 2,463 | 3,782 |\n| 33 | 393 (0.54%) | 2,186 (2.99%) |\n\nThe counts for 1, 3, 5, 7, 8, and 9 are identical under both orders; mod 9 fixes each date's residue class, and those classes have no master to defect to. But inside the master-sharing classes the split moves hard, and 33 is the extreme case: 393 versus 2,186, a 5.56x difference in \"rarity\" from the same rule over the same dates.\n\nThe two orders disagree on 10,374 of the 73,049 dates, 14.2%. So: if you cite a rarity figure for a master number, name the reduction order, or the figure means little. The dataset ships both orders in `life-path-by-reduction-order.csv`\n\n, and the row-level table carries both columns per date.\n\nUnder the components-first order, every one of the 393 dates falls into exactly one of three families. The families are provably disjoint: satisfying any two of the conditions already commits 33 or 44 before the third component is added, and the third is at least 1. A 22nd in a surge year gives 22 + 22 + month. A 22nd in November gives 22 + 11 + year. November in a surge year gives 11 + 22 + day. None of those totals reduces back to 33, so the counts add with nothing double-counted:\n\nThe surge years are 1939, 1948, 1957, 1966, 1975, 1984, 1993 — each holding exactly 27 dates, 7 × 27 = 189; no single year is special. All seven sit in the 20th century, necessarily: a 20xx year digit-sums to at most 20, short of 22. That skew makes 33's share a property of the window you choose — 0.775% of 20th-century dates but only 0.301% of 21st-century ones.\n\nThe November family splits evenly: of its 24 dates, 12 are November 11 and 12 are November 29 (day 29 → 2 + 9 → 11). November 11 carries a Life Path of 33 in exactly twelve years of the window: 1901, 1910, and every ninth year from 2009 through 2090.\n\nThis counts **dates, not people**. Real birthdays clump — seasonality, weekday effects from scheduled deliveries — so the share of living humans carrying each number is some other figure, and we do not have it.\n\nAnd obviously the meanings pinned to 11 or 33 are folklore. What is published here is the arithmetic of a reduction rule. A tidy distribution is evidence of mod 9. That is all it is evidence of.\n\nEverything is published under CC BY 4.0 at [vk0dev/life-path-number-distribution](https://github.com/vk0dev/life-path-number-distribution): the row-level table (`life-path-dates.csv`\n\n, one row per date with `date`\n\n, `day_reduced`\n\n, `month_reduced`\n\n, `year_reduced`\n\n, `parts_sum`\n\n, `life_path`\n\n, `life_path_all_digits`\n\n), the aggregate table, the reduction-order comparison, a Frictionless Data `datapackage.json`\n\n, and a zero-dependency `reproduce.py`\n\n.\n\nThat last file is the point. It recomputes all 73,049 dates from scratch and asserts, against the shipped files: every row of the row-level table across all seven columns; the aggregate counts and shares; the counts under both reduction orders and the 14.2% disagreement rate; the 2 + 11, 4 + 22, and 6 + 33 pair sums; the 10.02% master-group share; the full decomposition of the 393 including disjointness and the surge-year list; the 27-per-surge-year and November 12 + 12 splits; the two century shares; the 20.65x and 5.56x ratios; and the mod-9 identity on every date. Every figure quoted in this article is covered by one of those assertions; if any were wrong, the script would exit non-zero. A claim we cannot assert is a claim we do not print. The same files are archived with a permanent DOI at [10.5281/zenodo.21570149](https://doi.org/10.5281/zenodo.21570149), and mirrored on [Hugging Face](https://huggingface.co/datasets/vk0/life-path-number-distribution) and [Kaggle](https://www.kaggle.com/datasets/vknull/life-path-number-distribution) if you would rather load it there. The canonical write-up lives at [numeroai.me/articles/life-path-number-distribution](https://numeroai.me/articles/life-path-number-distribution/).\n\nIf you spot an off-by-one or a nicer decomposition of the 393: issues and PRs are open.", "url": "https://wpnews.pro/news/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on", "canonical_source": "https://dev.to/vknull/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33s-rarity-depends-on-when-you-reduce-2993", "published_at": "2026-07-28 08:10:04+00:00", "updated_at": "2026-07-28 08:34:23.089070+00:00", "lang": "en", "topics": ["artificial-intelligence", "machine-learning", "developer-tools"], "entities": ["Znakai", "numeroai.me", "ai-numerolog.ru"], "alternates": {"html": "https://wpnews.pro/news/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on", "markdown": "https://wpnews.pro/news/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on.md", "text": "https://wpnews.pro/news/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on.txt", "jsonld": "https://wpnews.pro/news/73049-dates-through-a-numerology-rule-mostly-mod-9-and-33-s-rarity-depends-on.jsonld"}}