Skip to Main content Skip to Navigation
Journal articles

Call-by-value, call-by-name and the vectorial behaviour of the algebraic λ-calculus

Abstract : We examine the relationship between the algebraic lambda-calculus, a fragment of the differential lambda-calculus and the linear-algebraic lambda-calculus, a candidate lambda-calculus for quantum computation. Both calculi are algebraic: each one is equipped with an additive and a scalar-multiplicative structure, and their set of terms is closed under linear combinations. However, the two languages were built using different approaches: the former is a call-by-name language whereas the latter is call-by-value; the former considers algebraic equalities whereas the latter approaches them through rewrite rules. In this paper, we analyse how these different approaches relate to one another. To this end, we propose four canonical languages based on each of the possible choices: call-by-name versus call-by-value, algebraic equality versus algebraic rewriting. We show that the various languages simulate one another. Due to subtle interaction between beta-reduction and algebraic rewriting, to make the languages consistent some additional hypotheses such as confluence or normalisation might be required. We carefully devise the required properties for each proof, making them general enough to be valid for any sub-language satisfying the corresponding properties.
Complete list of metadatas

https://hal.inria.fr/hal-01097602
Contributor : Alejandro Díaz-Caro <>
Submitted on : Saturday, December 20, 2014 - 2:44:24 AM
Last modification on : Friday, March 27, 2020 - 3:12:42 AM

Links full text

Identifiers

Citation

Ali Assaf, Alejandro Díaz-Caro, Simon Perdrix, Christine Tasson, Benoît Valiron. Call-by-value, call-by-name and the vectorial behaviour of the algebraic λ-calculus. Logical Methods in Computer Science, Logical Methods in Computer Science Association, 2014, 10:4 (8), pp.40. ⟨10.2168/LMCS-10(4:8)2014⟩. ⟨hal-01097602⟩

Share

Metrics

Record views

483