179 research outputs found
Indexed linear logic and higher-order model checking
In recent work, Kobayashi observed that the acceptance by an alternating tree
automaton A of an infinite tree T generated by a higher-order recursion scheme
G may be formulated as the typability of the recursion scheme G in an
appropriate intersection type system associated to the automaton A. The purpose
of this article is to establish a clean connection between this line of work
and Bucciarelli and Ehrhard's indexed linear logic. This is achieved in two
steps. First, we recast Kobayashi's result in an equivalent infinitary
intersection type system where intersection is not idempotent anymore. Then, we
show that the resulting type system is a fragment of an infinitary version of
Bucciarelli and Ehrhard's indexed linear logic. While this work is very
preliminary and does not integrate key ingredients of higher-order
model-checking like priorities, it reveals an interesting and promising
connection between higher-order model-checking and linear logic.Comment: In Proceedings ITRS 2014, arXiv:1503.0437
Recursive Schemes, Krivine Machines, and Collapsible Pushdown Automata
Higher-order recursive schemes offer an interesting method of approximating program semantics. The semantics of a scheme is an infinite tree labeled with built-in constants. This tree represents the meaning of the program up to the meaning of built-in constants. It is much easier to reason about properties of such trees than properties of interpreted programs. Moreover some interesting properties of programs are already expressible on the level of these trees. Collapsible pushdown automata (CPDA) give another way of generating the same class of trees as the schemes do. We present two relatively simple translations from recursive schemes to CPDA using Krivine machines as an intermediate step. The later are general machines for describing computation of the weak head normal form in the lambda- calculus. They provide the notions of closure and environment that facilitate reasoning about computation
A Type-Directed Negation Elimination
In the modal mu-calculus, a formula is well-formed if each recursive variable
occurs underneath an even number of negations. By means of De Morgan's laws, it
is easy to transform any well-formed formula into an equivalent formula without
negations -- its negation normal form. Moreover, if the formula is of size n,
its negation normal form of is of the same size O(n). The full modal
mu-calculus and the negation normal form fragment are thus equally expressive
and concise.
In this paper we extend this result to the higher-order modal fixed point
logic (HFL), an extension of the modal mu-calculus with higher-order recursive
predicate transformers. We present a procedure that converts a formula into an
equivalent formula without negations of quadratic size in the worst case and of
linear size when the number of variables of the formula is fixed.Comment: In Proceedings FICS 2015, arXiv:1509.0282
A Strong Distillery
Abstract machines for the strong evaluation of lambda-terms (that is, under
abstractions) are a mostly neglected topic, despite their use in the
implementation of proof assistants and higher-order logic programming
languages. This paper introduces a machine for the simplest form of strong
evaluation, leftmost-outermost (call-by-name) evaluation to normal form,
proving it correct, complete, and bounding its overhead. Such a machine, deemed
Strong Milner Abstract Machine, is a variant of the KAM computing normal forms
and using just one global environment. Its properties are studied via a special
form of decoding, called a distillation, into the Linear Substitution Calculus,
neatly reformulating the machine as a standard micro-step strategy for explicit
substitutions, namely linear leftmost-outermost reduction, i.e., the extension
to normal form of linear head reduction. Additionally, the overhead of the
machine is shown to be linear both in the number of steps and in the size of
the initial term, validating its design. The study highlights two distinguished
features of strong machines, namely backtracking phases and their interactions
with abstractions and environments.Comment: Accepted at APLAS 201
Relational semantics of linear logic and higher-order model-checking
In this article, we develop a new and somewhat unexpected connection between
higher-order model-checking and linear logic. Our starting point is the
observation that once embedded in the relational semantics of linear logic, the
Church encoding of any higher-order recursion scheme (HORS) comes together with
a dual Church encoding of an alternating tree automata (ATA) of the same
signature. Moreover, the interaction between the relational interpretations of
the HORS and of the ATA identifies the set of accepting states of the tree
automaton against the infinite tree generated by the recursion scheme. We show
how to extend this result to alternating parity automata (APT) by introducing a
parametric version of the exponential modality of linear logic, capturing the
formal properties of colors (or priorities) in higher-order model-checking. We
show in particular how to reunderstand in this way the type-theoretic approach
to higher-order model-checking developed by Kobayashi and Ong. We briefly
explain in the end of the paper how his analysis driven by linear logic results
in a new and purely semantic proof of decidability of the formulas of the
monadic second-order logic for higher-order recursion schemes.Comment: 24 pages. Submitte
Collapsible Pushdown Automata and Recursion Schemes
International audienceWe consider recursion schemes (not assumed to be homogeneously typed, and hence not necessarily safe) and use them as generators of (possibly infinite) ranked trees. A recursion scheme is essentially a finite typed {deterministic term} rewriting system that generates, when one applies the rewriting rules ad infinitum, an infinite tree, called its value tree. A fundamental question is to provide an equivalent description of the trees generated by recursion schemes by a class of machines. In this paper we answer this open question by introducing collapsible pushdown automata (CPDA), which are an extension of deterministic (higher-order) pushdown automata. A CPDA generates a tree as follows. One considers its transition graph, unfolds it and contracts its silent transitions, which leads to an infinite tree which is finally node labelled thanks to a map from the set of control states of the CPDA to a ranked alphabet. Our contribution is to prove that these two models, higher-order recursion schemes and collapsible pushdown automata, are equi-expressive for generating infinite ranked trees. This is achieved by giving an effective transformations in both directions
Using models to model-check recursive schemes
We propose a model-based approach to the model checking problem for recursive
schemes. Since simply typed lambda calculus with the fixpoint operator,
lambda-Y-calculus, is equivalent to schemes, we propose the use of a model of
lambda-Y-calculus to discriminate the terms that satisfy a given property. If a
model is finite in every type, this gives a decision procedure. We provide a
construction of such a model for every property expressed by automata with
trivial acceptance conditions and divergence testing. Such properties pose
already interesting challenges for model construction. Moreover, we argue that
having models capturing some class of properties has several other virtues in
addition to providing decidability of the model-checking problem. As an
illustration, we show a very simple construction transforming a scheme to a
scheme reflecting a property captured by a given model.Comment: Long version of a paper presented at TLCA 201
A type system for PSPACE derived from light linear logic
We present a polymorphic type system for lambda calculus ensuring that
well-typed programs can be executed in polynomial space: dual light affine
logic with booleans (DLALB).
To build DLALB we start from DLAL (which has a simple type language with a
linear and an intuitionistic type arrow, as well as one modality) which
characterizes FPTIME functions. In order to extend its expressiveness we add
two boolean constants and a conditional constructor in the same way as with the
system STAB.
We show that the value of a well-typed term can be computed by an alternating
machine in polynomial time, thus such a term represents a program of PSPACE
(given that PSPACE = APTIME).
We also prove that all polynomial space decision functions can be represented
in DLALB.
Therefore DLALB characterizes PSPACE predicates.Comment: In Proceedings DICE 2011, arXiv:1201.034
- …