EXP-0003 — Counting-rule matrix: شهر (month) family vs the popular 12 claim
completed Deterministic computation
Question
How many times does 'shahr' occur, under each reasonable, explicitly declared counting rule?
Hypothesis
Falsifiable form of the popular claim: there exists a natural, non-gerrymandered counting rule under which singular 'shahr' occurs exactly 12 times. The experiment reports the count under every declared rule.
Counting policy
letters-basic-v1 for surface rules; morphology dataset quran-morphology-8f38b39 for lemma/root rules; basmalah counted only as ayah 1:1 (D-027).
Results — counting-rule matrix
Popular claim target: 12
| Rule | Definition | Count | Ayahs |
|---|---|---|---|
| surface-bare | Bare surface token شهر on letters-basic-v1. | 4 | 3 |
| surface-common-singular-forms | Surface tokens شهر / الشهر / شهرا. One commonly-cited combination; other combinations exist. | 10 | 8 |
| lemma-shahr | Words whose lemma is شَهْر per the attributed morphology dataset (includes cliticized/suffixed singular forms; excludes forms tagged under a different lemma such as plurals, if the dataset tags them separately). | 21 | 17 |
| root-shr | All words with root ش-ه-ر per the attributed morphology dataset (broadest rule: includes plurals شهور/أشهر and any derived forms). | 21 | 17 |
| surface-clitic-stripped-singular | Token equals شهر or شهرا after stripping at most one conjunction (و/ف), then at most one preposition (ب/ل/ك), then an optional article ال. Same declared clitic-segmentation variant as EXP-0002, committed before its output was seen; same elided-alif limitation. | 12 = target | 9 |
Counts depend entirely on the declared rule. A rule matching the claimed number does not validate the claim's method unless that rule is the one the claim actually used.
Reproducibility record
- Corpus
- quran:hafs-kufan:v1
- Method version
- token-count-matrix-v1
- Results sha256
- 8aa9bc1aa69bc10d58f2819bd0848a0a…
- Environment
- {"platform":"Linux-6.18.5-x86_64-with-glibc2.39","python":"3.11.15"}
- Ran
- 2026-07-31T02:31:56Z → 2026-07-31T02:31:56Z
Re-run with python3 services/research-worker/scripts/run_experiment.py data/research/specs/EXP-0003.json. Input checksums are recorded in the result file.
