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

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-multiplicati...

Full description

Bibliographic Details
Main Authors: Ali Assaf, Alejandro Díaz-Caro, Simon Perdrix, Christine Tasson, Benoî t Valiron
Format: Article
Language:English
Published: Logical Methods in Computer Science e.V. 2014-12-01
Series:Logical Methods in Computer Science
Subjects:
Online Access:https://lmcs.episciences.org/927/pdf
_version_ 1827322864267689984
author Ali Assaf
Alejandro Díaz-Caro
Simon Perdrix
Christine Tasson
Benoî t Valiron
author_facet Ali Assaf
Alejandro Díaz-Caro
Simon Perdrix
Christine Tasson
Benoî t Valiron
author_sort Ali Assaf
collection DOAJ
description 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.
first_indexed 2024-04-25T01:35:38Z
format Article
id doaj.art-7eebfdacab104701ab3f420501c2663f
institution Directory Open Access Journal
issn 1860-5974
language English
last_indexed 2024-04-25T01:35:38Z
publishDate 2014-12-01
publisher Logical Methods in Computer Science e.V.
record_format Article
series Logical Methods in Computer Science
spelling doaj.art-7eebfdacab104701ab3f420501c2663f2024-03-08T09:37:58ZengLogical Methods in Computer Science e.V.Logical Methods in Computer Science1860-59742014-12-01Volume 10, Issue 410.2168/LMCS-10(4:8)2014927Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculusAli AssafAlejandro Díaz-Carohttps://orcid.org/0000-0002-5175-6882Simon PerdrixChristine Tassonhttps://orcid.org/0000-0001-8098-9944Benoî t ValironWe 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.https://lmcs.episciences.org/927/pdfcomputer science - logic in computer science
spellingShingle 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 \lambda-calculus
Logical Methods in Computer Science
computer science - logic in computer science
title Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculus
title_full Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculus
title_fullStr Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculus
title_full_unstemmed Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculus
title_short Call-by-value, call-by-name and the vectorial behaviour of the algebraic \lambda-calculus
title_sort call by value call by name and the vectorial behaviour of the algebraic lambda calculus
topic computer science - logic in computer science
url https://lmcs.episciences.org/927/pdf
work_keys_str_mv AT aliassaf callbyvaluecallbynameandthevectorialbehaviourofthealgebraiclambdacalculus
AT alejandrodiazcaro callbyvaluecallbynameandthevectorialbehaviourofthealgebraiclambdacalculus
AT simonperdrix callbyvaluecallbynameandthevectorialbehaviourofthealgebraiclambdacalculus
AT christinetasson callbyvaluecallbynameandthevectorialbehaviourofthealgebraiclambdacalculus
AT benoitvaliron callbyvaluecallbynameandthevectorialbehaviourofthealgebraiclambdacalculus