Results 1 
1 of
1
Axioms for Strict and Lazy Functional Programs
 Annals of Pure and Applied Logic
"... We show the adequacy of axioms and proof rules for strict and lazy functional programs. Our basic logic comprises a huge part of what is common to both styles of functional programming. The logic for callby value is obtained by adding the axiom that says that all variables are defined, whereas ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
We show the adequacy of axioms and proof rules for strict and lazy functional programs. Our basic logic comprises a huge part of what is common to both styles of functional programming. The logic for callby value is obtained by adding the axiom that says that all variables are defined, whereas the logic for callbyname is obtained by adding the axiom that postulates the existence of undefined object for each type. To show the correctness of the axiomatization we do not use denotational semantics and the adequacy of the evaluation of programs with respect to the semantics. Instead we use the standard term models based on callbyvalue and callbyname evaluation. We introduce a new method to prove on the syntactical level the monotonicity of the evaluation of functional programs with unbounded recursion. The direct method yields result about the prooftheoretic strength of the axiomatization. As a side result we obtain a syntactical proof of the context lemma for simply typed lambda terms with recursion.