This folder contains the tooling used to generate the Zero Paradox PDF documents.
These scripts were generated by Claude (Anthropic) as part of the document production process. They are included here for transparency — so that anyone can see exactly how the PDFs were produced. The mathematical content, document structure, and all editorial decisions originate with the human researcher. The scripts are mechanical renderers, not authors.
These scripts are copied from an active private development folder for the sake of transparency. They are not packaged or hardened for external use. You are welcome to read them and understand how the documents were produced, but be aware:
If you are primarily interested in the mathematical content, the PDF documents themselves are the authoritative output.
| File | Purpose |
|---|---|
| zp_utils.py | Shared utility module imported by all build scripts. Provides font registration, colour constants (including palette enforcement gate), layout constants, style dicts, and all standard component helpers: sp, fix, body, li, derived, label_box, data_table, make_doc, callout, result_box, axiom_box, def_box, remark_box, import_box. The palette gate runs at import time and aborts the build if a script redefines a protected colour constant without an explicit # ZP-OVERRIDE: annotation. |
| setup_fonts.py | Downloads the required font files into scripts/fonts/ |
| scan_pdfs.py | Pre-push validation: checks DVS font registrations, STIXTwo-Math glyph coverage, and presence of all expected output PDFs |
| File | Current output |
|---|---|
| build_zpa.py | ZP-A_Lattice_Algebra.pdf |
| build_zpf.py | ZP-F_The_Counterexamples.pdf |
| build_zpb.py | ZP-B_pAdic_Topology.pdf |
| build_zpc.py | ZP-C_Information_Theory.pdf |
| build_zpd.py | ZP-D_State_Layer.pdf |
| build_zpe.py | ZP-E_Bridge_Document.pdf |
| build_zpg.py | ZP-G_Category_Theory.pdf |
| build_zph.py | ZP-H_Categorical_Bridge.pdf |
| build_zpi.py | ZP-I_Inside_Zero.pdf |
| build_zpj.py | ZP-J_Self_Reference.pdf |
| build_zpj_afa_addendum.py | ZP-J_AFA_Addendum.pdf |
| build_zpk.py | ZP-K_Computational_Grounding.pdf |
| build_zpl.py | ZP-L_Incomputability_Convergence.pdf |
| build_zpm.py | ZP-M_Kleene_Ordinal_Bridge.pdf |
| File | Companion for |
|---|---|
| build_zpa_companion.py | ZP-A |
| build_zpf_companion.py | ZP-F |
| build_zpb_companion.py | ZP-B |
| build_zpc_companion.py | ZP-C |
| build_zpd_companion.py | ZP-D |
| build_zpe_companion.py | ZP-E |
| build_zpg_companion.py | ZP-G |
| build_zph_companion.py | ZP-H |
| build_zpi_companion.py | ZP-I |
| build_zpj_companion.py | ZP-J |
| build_zpk_companion.py | ZP-K |
| build_zpl_companion.py | ZP-L |
| build_zpm_companion.py | ZP-M |
| File | Current output |
|---|---|
| build_foreword.py | Zero_Paradox_Foreword.pdf |
| build_tools.py | ZP_Tools_and_Methods.pdf |
| build_zp_philosophical_question.py | ZP_Philosophical_Question.pdf |
| build_zp_reals_companion.py | Superseded by build_zpf_companion.py — retained for reference |
| File | Notes |
|---|---|
| archive/build_zp_pdfs.py | Superseded monolith — retained for reference only |
Font files are not tracked in git. Download them before running any builder:
python setup_fonts.py
Or manually: download the DejaVu fonts TTF release and place the following files in scripts/fonts/:
DejaVuSans.ttf
DejaVuSans-Bold.ttf
DejaVuSans-Oblique.ttf
DejaVuSans-BoldOblique.ttf
DejaVuSerif.ttf
DejaVuSerif-Bold.ttf
DejaVuSerif-Italic.ttf
DejaVuSerif-BoldItalic.ttf
From the repo root:
pip install reportlab
python scripts/build_zpa.py
python scripts/build_zpb.py
python scripts/build_zpc.py
python scripts/build_zpd.py
python scripts/build_zpe.py
# etc. — each script is independent and writes directly to the repo root
Output PDFs are written to the repo root.
CC BY-NC-ND 4.0 — same as the rest of the repository.