21 research outputs found
Session Type Isomorphisms
There has been a considerable amount of work on retrieving functions in
function libraries using their type as search key. The availability of rich
component specifications, in the form of behavioral types, enables similar
queries where one can search a component library using the behavioral type of a
component as the search key. Just like for function libraries, however,
component libraries will contain components whose type differs from the
searched one in the order of messages or in the position of the branching
points. Thus, it makes sense to also look for those components whose type is
different from, but isomorphic to, the searched one.
In this article we give semantic and axiomatic characterizations of
isomorphic session types. The theory of session type isomorphisms turns out to
be subtle. In part this is due to the fact that it relies on a non-standard
notion of equivalence between processes. In addition, we do not know whether
the axiomatization is complete. It is known that the isomorphisms for arrow,
product and sum types are not finitely axiomatisable, but it is not clear yet
whether this negative results holds also for the family of types we consider in
this work.Comment: In Proceedings PLACES 2014, arXiv:1406.331
Axioms and Decidability for Type Isomorphism in the Presence of Sums
We consider the problem of characterizing isomorphisms of types, or,
equivalently, constructive cardinality of sets, in the simultaneous presence of
disjoint unions, Cartesian products, and exponentials. Mostly relying on
results about polynomials with exponentiation that have not been used in our
context, we derive: that the usual finite axiomatization known as High-School
Identities (HSI) is complete for a significant subclass of types; that it is
decidable for that subclass when two types are isomorphic; that, for the whole
of the set of types, a recursive extension of the axioms of HSI exists that is
complete; and that, for the whole of the set of types, the question as to
whether two types are isomorphic is decidable when base types are to be
interpreted as finite sets. We also point out certain related open problems
Retractions in Intersection Types
This paper deals with retraction - intended as isomorphic embedding - in
intersection types building left and right inverses as terms of a lambda
calculus with a bottom constant. The main result is a necessary and sufficient
condition two strict intersection types must satisfy in order to assure the
existence of two terms showing the first type to be a retract of the second
one. Moreover, the characterisation of retraction in the standard intersection
types is discussed.Comment: In Proceedings ITRS 2016, arXiv:1702.0187
Perspectives for proof unwinding by programming languages techniques
In this chapter, we propose some future directions of work, potentially
beneficial to Mathematics and its foundations, based on the recent import of
methodology from the theory of programming languages into proof theory. This
scientific essay, written for the audience of proof theorists as well as the
working mathematician, is not a survey of the field, but rather a personal view
of the author who hopes that it may inspire future and fellow researchers
The exp-log normal form of types
Lambda calculi with algebraic data types lie at the core of functional
programming languages and proof assistants, but conceal at least two
fundamental theoretical problems already in the presence of the simplest
non-trivial data type, the sum type. First, we do not know of an explicit and
implemented algorithm for deciding the beta-eta-equality of terms---and this in
spite of the first decidability results proven two decades ago. Second, it is
not clear how to decide when two types are essentially the same, i.e.
isomorphic, in spite of the meta-theoretic results on decidability of the
isomorphism.
In this paper, we present the exp-log normal form of types---derived from the
representation of exponential polynomials via the unary exponential and
logarithmic functions---that any type built from arrows, products, and sums,
can be isomorphically mapped to. The type normal form can be used as a simple
heuristic for deciding type isomorphism, thanks to the fact that it is a
systematic application of the high-school identities.
We then show that the type normal form allows to reduce the standard beta-eta
equational theory of the lambda calculus to a specialized version of itself,
while preserving the completeness of equality on terms. We end by describing an
alternative representation of normal terms of the lambda calculus with sums,
together with a Coq-implemented converter into/from our new term calculus. The
difference with the only other previously implemented heuristic for deciding
interesting instances of eta-equality by Balat, Di Cosmo, and Fiore, is that we
exploit the type information of terms substantially and this often allows us to
obtain a canonical representation of terms without performing sophisticated
term analyses
An Intuitionistic Formula Hierarchy Based on High-School Identities
We revisit the notion of intuitionistic equivalence and formal proof
representations by adopting the view of formulas as exponential polynomials.
After observing that most of the invertible proof rules of intuitionistic
(minimal) propositional sequent calculi are formula (i.e. sequent) isomorphisms
corresponding to the high-school identities, we show that one can obtain a more
compact variant of a proof system, consisting of non-invertible proof rules
only, and where the invertible proof rules have been replaced by a formula
normalisation procedure.
Moreover, for certain proof systems such as the G4ip sequent calculus of
Vorob'ev, Hudelmaier, and Dyckhoff, it is even possible to see all of the
non-invertible proof rules as strict inequalities between exponential
polynomials; a careful combinatorial treatment is given in order to establish
this fact.
Finally, we extend the exponential polynomial analogy to the first-order
quantifiers, showing that it gives rise to an intuitionistic hierarchy of
formulas, resembling the classical arithmetical hierarchy, and the first one
that classifies formulas while preserving isomorphism
Isomorphisms of types in the presence of higher-order references
We investigate the problem of type isomorphisms in a programming language
with higher-order references. We first recall the game-theoretic model of
higher-order references by Abramsky, Honda and McCusker. Solving an open
problem by Laurent, we show that two finitely branching arenas are isomorphic
if and only if they are geometrically the same, up to renaming of moves
(Laurent's forest isomorphism). We deduce from this an equational theory
characterizing isomorphisms of types in a finitary language with higher order
references. We show however that Laurent's conjecture does not hold on
infinitely branching arenas, yielding a non-trivial type isomorphism in the
extension of this language with natural numbers.Comment: Twenty-Sixth Annual IEEE Symposium on Logic In Computer Science (LICS
2011), Toronto : Canada (2011