Proving Termination of Normalization Functions for Conditional Expressions
Lawrence C. Paulson

TL;DR
This paper compares three methods for proving the termination of a normalization function for conditional expressions, introducing a computational interpretation that simplifies complex termination proofs.
Contribution
It presents a total variant of the normalization function and demonstrates the flexibility of the recursion relation approach for complex termination proofs.
Findings
The total variant simplifies termination proofs.
Recursion relation approach handles subtle termination cases.
The approach is comparable to domain theory in effectiveness.
Abstract
Boyer and Moore have discussed a recursive function that puts conditional expressions into normal form [1]. It is difficult to prove that this function terminates on all inputs. Three termination proofs are compared: (1) using a measure function, (2) in domain theory using LCF, (3) showing that its recursion relation, defined by the pattern of recursive calls, is well-founded. The last two proofs are essentially the same though conducted in markedly different logical frameworks. An obviously total variant of the normalize function is presented as the `computational meaning' of those two proofs. A related function makes nested recursive calls. The three termination proofs become more complex: termination and correctness must be proved simultaneously. The recursion relation approach seems flexible enough to handle subtle termination proofs where previously domain theory seemed essential.
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.
