4 research outputs found
Semantics of a Typed Algebraic Lambda-Calculus
Algebraic lambda-calculi have been studied in various ways, but their
semantics remain mostly untouched. In this paper we propose a semantic analysis
of a general simply-typed lambda-calculus endowed with a structure of vector
space. We sketch the relation with two established vectorial lambda-calculi.
Then we study the problems arising from the addition of a fixed point
combinator and how to modify the equational theory to solve them. We sketch an
algebraic vectorial PCF and its possible denotational interpretations
Completeness of algebraic CPS simulations
The algebraic lambda calculus and the linear algebraic lambda calculus are
two extensions of the classical lambda calculus with linear combinations of
terms. They arise independently in distinct contexts: the former is a fragment
of the differential lambda calculus, the latter is a candidate lambda calculus
for quantum computation. They differ in the handling of application arguments
and algebraic rules. The two languages can simulate each other using an
algebraic extension of the well-known call-by-value and call-by-name CPS
translations. These simulations are sound, in that they preserve reductions. In
this paper, we prove that the simulations are actually complete, strengthening
the connection between the two languages.Comment: In Proceedings DCM 2011, arXiv:1207.682
A System F accounting for scalars
The Algebraic lambda-calculus and the Linear-Algebraic lambda-calculus extend
the lambda-calculus with the possibility of making arbitrary linear
combinations of terms. In this paper we provide a fine-grained, System F-like
type system for the linear-algebraic lambda-calculus. We show that this
"scalar" type system enjoys both the subject-reduction property and the
strong-normalisation property, our main technical results. The latter yields a
significant simplification of the linear-algebraic lambda-calculus itself, by
removing the need for some restrictions in its reduction rules. But the more
important, original feature of this scalar type system is that it keeps track
of 'the amount of a type' that is present in each term. As an example of its
use, we shown that it can serve as a guarantee that the normal form of a term
is barycentric, i.e that its scalars are summing to one
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-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