Reproducibility manifest (see environment.txt for versions; CPU only)
pdl.py         PDL-R semantics (Lukasiewicz pair-valued modal / first-order operators; entailment_violation)
exp_props.py   property checks + scaling (Section 7.1-7.2)                 -> props.json
exp_nested.py  20 000 four-corner nested formulas (Prop. 2, Prop. 3, Thm. 9),
               plus 5 000 continuous-valued, consistent-atom checks (Thm. 9) -> nested.json
chisholm.py    worked examples of Sections 3.3 and 6                        -> chisholm_output.txt
exp_learn.py   learning study (Section 7.3): python3 exp_learn.py 20        -> learn.json  (about 1 hour on 2 CPU threads)
stats.py       exact Wilcoxon tests, intervals, figure                      -> stats.json, fig1.png, fig1.pdf
Notes
- exp_learn.py does NOT import pdl.py: it trains the two-head reduction of Section 7.3 (single crisp ideal successor, Proposition 0).
  The archived learn.json was produced by exactly this file; it has not been altered.
- Timings in props.json depend on the machine; only the operation count is claimed.
- learn.json contains per-seed summary metrics, not raw generated examples, per-cell predictions or checkpoints. The generator and seeds permit fresh runs.
- No source-tracing code or learned-accessibility code is included; Sections 5.1 and 5.3 describe an architecture and an interface, not shipped software.
