Termination of canonical context-sensitive rewriting and productivity of rewrite systems
Salvador Lucas (DSIC, Universitat Polit\`ecnica de Val\`encia, Spain)

TL;DR
This paper explores the relationship between termination of context-sensitive rewriting and productivity in rewrite systems, providing new insights and techniques to analyze infinite data structures in functional programming.
Contribution
It demonstrates how existing results on CSR's computational power can enhance understanding and methods for proving productivity in rewrite systems.
Findings
CSR termination is equivalent to productivity in rewrite systems
New techniques for proving productivity using CSR termination results
Enhanced understanding of infinite data structures in functional programming
Abstract
Termination of programs, i.e., the absence of infinite computations, ensures the existence of normal forms for all initial expressions, thus providing an essential ingredient for the definition of a normalization semantics for functional programs. In lazy functional languages, though, infinite data structures are often delivered as the outcome of computations. For instance, the list of all prime numbers can be returned as a neverending stream of numerical expressions or data structures. If such streams are allowed, requiring termination is hopeless. In this setting, the notion of productivity can be used to provide an account of computations with infinite data structures, as it "captures the idea of computability, of progress of infinite-list programs" (B.A. Sijtsma, On the Productivity of Recursive List Definitions, ACM Transactions on Programming Languages and Systems 11(4):633-649,…
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.
