39 research outputs found
Infinitary -Calculi from a Linear Perspective (Long Version)
We introduce a linear infinitary -calculus, called
, in which two exponential modalities are available, the
first one being the usual, finitary one, the other being the only construct
interpreted coinductively. The obtained calculus embeds the infinitary
applicative -calculus and is universal for computations over infinite
strings. What is particularly interesting about , is that
the refinement induced by linear logic allows to restrict both modalities so as
to get calculi which are terminating inductively and productive coinductively.
We exemplify this idea by analysing a fragment of built around
the principles of and . Interestingly, it enjoys
confluence, contrarily to what happens in ordinary infinitary
-calculi
Finitary Simulation of Infinitary -Reduction via Taylor Expansion, and Applications
Originating in Girard's Linear logic, Ehrhard and Regnier's Taylor expansion
of -terms has been broadly used as a tool to approximate the terms of
several variants of the -calculus. Many results arise from a
Commutation theorem relating the normal form of the Taylor expansion of a term
to its B\"ohm tree. This led us to consider extending this formalism to the
infinitary -calculus, since the version of
this calculus has B\"ohm trees as normal forms and seems to be the ideal
framework to reformulate the Commutation theorem.
We give a (co-)inductive presentation of . We define
a Taylor expansion on this calculus, and state that the infinitary
-reduction can be simulated through this Taylor expansion. The target
language is the usual resource calculus, and in particular the resource
reduction remains finite, confluent and terminating. Finally, we state the
generalised Commutation theorem and use our results to provide simple proofs of
some normalisation and confluence properties in the infinitary
-calculus
Monadic Intersection Types, Relationally (Extended Version)
We extend intersection types to a computational -calculus with
algebraic operations \`a la Plotkin and Power. We achieve this by considering
monadic intersections, whereby computational effects appear not only in the
operational semantics, but also in the type system. Since in the effectful
setting termination is not anymore the only property of interest, we want to
analyze the interactive behavior of typed programs with the environment.
Indeed, our type system is able to characterize the natural notion of
observation, both in the finite and in the infinitary setting, and for a wide
class of effects, such as output, cost, pure and probabilistic nondeterminism,
and combinations thereof. The main technical tool is a novel combination of
syntactic techniques with abstract relational reasoning, which allows us to
lift all the required notions, e.g. of typability and logical relation, to the
monadic setting
The prospects for mathematical logic in the twenty-first century
The four authors present their speculations about the future developments of
mathematical logic in the twenty-first century. The areas of recursion theory,
proof theory and logic for computer science, model theory, and set theory are
discussed independently.Comment: Association for Symbolic Logi
Lambda-calculus and formal language theory
Formal and symbolic approaches have offered computer science many application fields. The rich and fruitful connection between logic, automata and algebra is one such approach. It has been used to model natural languages as well as in program verification. In the mathematics of language it is able to model phenomena ranging from syntax to phonology while in verification it gives model checking algorithms to a wide family of programs. This thesis extends this approach to simply typed lambda-calculus by providing a natural extension of recognizability to programs that are representable by simply typed terms. This notion is then applied to both the mathematics of language and program verification. In the case of the mathematics of language, it is used to generalize parsing algorithms and to propose high-level methods to describe languages. Concerning program verification, it is used to describe methods for verifying the behavioral properties of higher-order programs. In both cases, the link that is drawn between finite state methods and denotational semantics provide the means to mix powerful tools coming from the two worlds
Relational Graph Models at Work
We study the relational graph models that constitute a natural subclass of
relational models of lambda-calculus. We prove that among the lambda-theories
induced by such models there exists a minimal one, and that the corresponding
relational graph model is very natural and easy to construct. We then study
relational graph models that are fully abstract, in the sense that they capture
some observational equivalence between lambda-terms. We focus on the two main
observational equivalences in the lambda-calculus, the theory H+ generated by
taking as observables the beta-normal forms, and H* generated by considering as
observables the head normal forms. On the one hand we introduce a notion of
lambda-K\"onig model and prove that a relational graph model is fully abstract
for H+ if and only if it is extensional and lambda-K\"onig. On the other hand
we show that the dual notion of hyperimmune model, together with
extensionality, captures the full abstraction for H*
Intersection types and (positive) almost-sure termination
Randomized higher-order computation can be seen as being captured by a λ-calculus endowed with a single algebraic operation, namely a construct for binary probabilistic choice. What matters about such computations is the probability of obtaining any given result, rather than the possibility or the necessity of obtaining it, like in (non)deterministic computation. Termination, arguably the simplest kind of reachability problem, can be spelled out in at least two ways, depending on whether it talks about the probability of convergence or about the expected evaluation time, the second one providing a stronger guarantee. In this paper, we show that intersection types are capable of precisely characterizing both notions of termination inside a single system of types: the probability of convergence of any λ-term can be underapproximated by its type, while the underlying derivation's weight gives a lower bound to the term's expected number of steps to normal form. Noticeably, both approximations are tight-not only soundness but also completeness holds. The crucial ingredient is non-idempotency, without which it would be impossible to reason on the expected number of reduction steps which are necessary to completely evaluate any term. Besides, the kind of approximation we obtain is proved to be optimal recursion theoretically: no recursively enumerable formal system can do better than that
Encoding logical theories of programs
Nowadays, in many critical situations (such as on-board software), it is manda-tory to certify programs and systems, that is, to prove formally that they meet their specifications. To this end, many logics and formal systems have been proposed for rea-soning rigorously on properties of programs and systems. Their usage on non-trivial cases, however, is often cumbersome and error-prone; hence, a computerized proof assistant is required. This thesis is a contribution to the field of computer-aided formal reasoning. In recent years, Logical Frameworks (LF's) have been proposed as general metalan-guages for the description (encoding) of formal systems. LF's streamline the implementa-tion of proof systems on a machine; moreover, they allow for conceptual clarification of the object logics. The encoding methodology of LF's (based on the judgement as types, proofs as \u3bb-terms paradigm) has been successfully applied to many logics; however, the encoding of the many peculiarities presented by formal systems for program logics is problematic. In this thesis we propose a general methodology for adequately encoding formal systems for reasoning on programs. We consider Structured and Natural Operational Semantics, Modal Logics, Dynamic Logics, and the \ub5-calculus. Each of these systems presents distinc-tive problematic features; in each case, we propose, discuss and prove correct, alternative solutions. In many cases, we introduce new presentations of these systems, in Natural Deduction style, which are suggested by the metalogical analysis induced by the method-ology. At the metalogical level, we generalize and combine the concept of consequence relation by Avron and Aczel, in order to handle schematic and multiple consequences. We focus on a particular Logical Framework, namely the Calculus of Inductive Con-structions, originated by Coquand and Huet, and its implementation, Coq. Our inves-tigation shows that this framework is particularly flexible and suited for reasoning on properties of programs and systems. Our work could serve as a guide and reference to future users of Logical Frameworks