Distributive Intent Lattices

From Ambiguous English to Formal Specifications

Pipeline Process

1 Natural Language Input

"If the button is pressed, the light turns on"

2 Parse & Extract Facets
Temporal: ? Quantifier: ? Guard: if-then
3 Build Intent Lattice

Model all possible interpretations

4 Disambiguate

Ask clarifying questions

5 Generate Formal Spec

always (ButtonPressed → next LightOn)

Distributive Lattice Structure

Most General ∀,? ∃,? ∀,Ev ∀,Im ∃,Ev ∃,Im Most Specific

Each node represents a possible interpretation
∀ = Universal, ∃ = Existential
Im = Immediate, Ev = Eventually

Example Disambiguation

Input: "When a user logs in, they must accept the Terms or they cannot proceed."

Ambiguities Detected:

Clarifying Question: "Should this rule apply every time a user logs in?"

Final Spec: always (Login → (TermsAccepted ∨ ¬Proceed))

🔷 Distributive Lattice

Mathematical structure capturing all possible interpretations ordered by specificity

🔍 Intent Facets

Independent semantic dimensions like temporal scope, quantifiers, and guards

💬 Smart Clarification

Information-theoretic questions that maximally reduce ambiguity

✅ Formal Output

Unambiguous controlled English and logic-ready specifications

Current Implementation (as shipped)

See also: the interactive translator at translator.html.