AHA: LaTeX Equations in Matheology Pages#
Note
Created: Phase 2I-4 (2026-03-25).
1. How RST math blocks work#
The .. math:: directive passes its content to LaTeX for rendering.
RST-level line breaks (pressing Enter in your editor) are ignored —
LaTeX concatenates all lines into a single expression. This means:
.. math::
\forall x \in A :
P(x) \wedge Q(x)
renders identically to:
.. math::
\forall x \in A : P(x) \wedge Q(x)
Both produce one long horizontal line. If the formula is wider than the page, the reader gets an ugly horizontal scrollbar.
2. How to break long equations#
Use explicit LaTeX markers inside the .. math:: block:
\\— line break (start a new line)&— alignment anchor (lines align at the&position)
Example from the PoR source for a19:
.. math::
\forall t\; \exists!\, h^* \in H :\;
& \text{MaxCausalInfluence}(h^*, t, W_{\text{future}}) \\
& \wedge\; \forall h \neq h^* : \\
& \quad \text{CausalInfluence}(h, t, W_{\text{future}})
< \text{CausalInfluence}(h^*, t, W_{\text{future}})
The & at the start of each continuation line makes them align neatly.
The \\ at the end of a line tells LaTeX to start a new one.
3. Where to make line-break decisions#
In the PoR source file — once.
The PoR files (pet/axioms.rst, jub/axioms.rst, etc.) are the
single place where a human decides where formulas should break. The
cross-model compiler then copies math blocks character-for-character
into every compiled depth view (expert, easy, etc.).
This means:
If a formula looks right in the PoR source, it will look right everywhere.
If a formula needs a line break, fix it in the PoR source and recompile.
The compiler never invents line breaks and never removes them.
See the compiler spec rule at §9.3.1 (LaTeX Math Block Preservation) in SISYF — Skill Specification.
4. Why the compiler cannot auto-break equations#
Three reasons:
Rendered width depends on the viewer. Browser window size, PDF page margins, font size — there is no single “page width” at compile time.
Where to break is a semantic decision. Breaking
\forall x \in A : P(x) \wedge Q(x)after the colon is natural; breaking it insideP(x)is ugly. No character-count heuristic handles this reliably.One source of truth. If the compiler modified math content, the PoR source and compiled output would diverge. The next recompile would overwrite the fix, and the cycle would repeat. Keeping the decision in the PoR source avoids this.