New Equations for Neutral Terms: A Sound and Complete Decision Procedure, Formalized
Guillaume Allais, Pierre Boutillier, Conor McBride

TL;DR
This paper introduces a new decision procedure for type theory equality that combines evaluation with $ u$-rules to better identify neutral terms, improving type compatibility checks.
Contribution
It presents a novel approach to decide richer equational theories by supplementing evaluation with $ u$-rules, formalized in Agda for a simple lambda calculus.
Findings
Successful initial experiment with $ u$-rules
Sound and complete decision procedure developed
Enhanced ability to identify equal neutral terms
Abstract
The definitional equality of an intensional type theory is its test of type compatibility. Today's systems rely on ordinary evaluation semantics to compare expressions in types, frustrating users with type errors arising when evaluation fails to identify two `obviously' equal terms. If only the machine could decide a richer theory! We propose a way to decide theories which supplement evaluation with `-rules', rearranging the neutral parts of normal forms, and report a successful initial experiment. We study a simple -calculus with primitive fold, map and append operations on lists and develop in Agda a sound and complete decision procedure for an equational theory enriched with monoid, functor and fusion laws.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Quantum Mechanics and Applications
