Call-by-Value and Call-by-Name Dual Calculi with Inductive and Coinductive Types

Daisuke Kimura, Makoto Tatsuta, Philip Wadler
2013 Logical Methods in Computer Science  
This paper extends the dual calculus with inductive types and coinductive types. The paper first introduces a non-deterministic dual calculus with inductive and coinductive types. Besides the same duality of the original dual calculus, it has the duality of inductive and coinductive types, that is, the duality of terms and coterms for inductive and coinductive types, and the duality of their reduction rules. Its strong normalization is also proved, which is shown by translating it into a
more » ... ng it into a second-order dual calculus. The strong normalization of the second-order dual calculus is proved by translating it into the second-order symmetric lambda calculus. This paper then introduces a call-by-value system and a call-by-name system of the dual calculus with inductive and coinductive types, and shows the duality of call-by-value and call-by-name, their Church-Rosser properties, and their strong normalization. Their strong normalization is proved by translating them into the non-deterministic dual calculus with inductive and coinductive types.
doi:10.2168/lmcs-9(1:14)2013 fatcat:kzfw3meq6vaj5nki6viu3w3nxy