8,231 research outputs found
Multi-level Contextual Type Theory
Contextual type theory distinguishes between bound variables and
meta-variables to write potentially incomplete terms in the presence of
binders. It has found good use as a framework for concise explanations of
higher-order unification, characterize holes in proofs, and in developing a
foundation for programming with higher-order abstract syntax, as embodied by
the programming and reasoning environment Beluga. However, to reason about
these applications, we need to introduce meta^2-variables to characterize the
dependency on meta-variables and bound variables. In other words, we must go
beyond a two-level system granting only bound variables and meta-variables.
In this paper we generalize contextual type theory to n levels for arbitrary
n, so as to obtain a formal system offering bound variables, meta-variables and
so on all the way to meta^n-variables. We obtain a uniform account by
collapsing all these different kinds of variables into a single notion of
variabe indexed by some level k. We give a decidable bi-directional type system
which characterizes beta-eta-normal forms together with a generalized
substitution operation.Comment: In Proceedings LFMTP 2011, arXiv:1110.668
A Focused Sequent Calculus Framework for Proof Search in Pure Type Systems
Basic proof-search tactics in logic and type theory can be seen as the
root-first applications of rules in an appropriate sequent calculus, preferably
without the redundancies generated by permutation of rules. This paper
addresses the issues of defining such sequent calculi for Pure Type Systems
(PTS, which were originally presented in natural deduction style) and then
organizing their rules for effective proof-search. We introduce the idea of
Pure Type Sequent Calculus with meta-variables (PTSCalpha), by enriching the
syntax of a permutation-free sequent calculus for propositional logic due to
Herbelin, which is strongly related to natural deduction and already well
adapted to proof-search. The operational semantics is adapted from Herbelin's
and is defined by a system of local rewrite rules as in cut-elimination, using
explicit substitutions. We prove confluence for this system. Restricting our
attention to PTSC, a type system for the ground terms of this system, we obtain
the Subject Reduction property and show that each PTSC is logically equivalent
to its corresponding PTS, and the former is strongly normalising iff the latter
is. We show how to make the logical rules of PTSC into a syntax-directed system
PS for proof-search, by incorporating the conversion rules as in
syntax-directed presentations of the PTS rules for type-checking. Finally, we
consider how to use the explicitly scoped meta-variables of PTSCalpha to
represent partial proof-terms, and use them to analyse interactive proof
construction. This sets up a framework PE in which we are able to study
proof-search strategies, type inhabitant enumeration and (higher-order)
unification
Cut Elimination for a Logic with Induction and Co-induction
Proof search has been used to specify a wide range of computation systems. In
order to build a framework for reasoning about such specifications, we make use
of a sequent calculus involving induction and co-induction. These proof
principles are based on a proof theoretic (rather than set-theoretic) notion of
definition. Definitions are akin to logic programs, where the left and right
rules for defined atoms allow one to view theories as "closed" or defining
fixed points. The use of definitions and free equality makes it possible to
reason intentionally about syntax. We add in a consistent way rules for pre and
post fixed points, thus allowing the user to reason inductively and
co-inductively about properties of computational system making full use of
higher-order abstract syntax. Consistency is guaranteed via cut-elimination,
where we give the first, to our knowledge, cut-elimination procedure in the
presence of general inductive and co-inductive definitions.Comment: 42 pages, submitted to the Journal of Applied Logi
Refinement Types for Logical Frameworks and Their Interpretation as Proof Irrelevance
Refinement types sharpen systems of simple and dependent types by offering
expressive means to more precisely classify well-typed terms. We present a
system of refinement types for LF in the style of recent formulations where
only canonical forms are well-typed. Both the usual LF rules and the rules for
type refinements are bidirectional, leading to a straightforward proof of
decidability of typechecking even in the presence of intersection types.
Because we insist on canonical forms, structural rules for subtyping can now be
derived rather than being assumed as primitive. We illustrate the expressive
power of our system with examples and validate its design by demonstrating a
precise correspondence with traditional presentations of subtyping. Proof
irrelevance provides a mechanism for selectively hiding the identities of terms
in type theories. We show that LF refinement types can be interpreted as
predicates using proof irrelevance, establishing a uniform relationship between
two previously studied concepts in type theory. The interpretation and its
correctness proof are surprisingly complex, lending support to the claim that
refinement types are a fundamental construct rather than just a convenient
surface syntax for certain uses of proof irrelevance
Multi-agent planning using an abductive : event calculus
Temporal reasoning within distributed Artificial Intelligence Systems is faced with the problem of concurrent streams of action. Well known, logic-based systems using the SITUATION CALCULUS solve the frame problem in a purely linear manner. Recent research, however, has revealed that the EVENT CALCULUS under the abduction principle is capable of nonlinear planning. In this report, we present a planning service module which incorporates this approach into a constraint logic framework and even allows a notion of strong nonlinearity. The work includes the axiomatisation of appropriate versions of the EVENT CALCULUS, the development of a suitably sound and complete proof procedure that supports abduction and the implementation of both of these layers on the constraint platform OZ. We demonstrate prototypically how this module, EVE, can be integrated into an existing multi-agent architecture and evaluate the behaviour of such agents within an application domain, the loading dock scenario
Using Inhabitation in Bounded Combinatory Logic with Intersection Types for Composition Synthesis
We describe ongoing work on a framework for automatic composition synthesis
from a repository of software components. This work is based on combinatory
logic with intersection types. The idea is that components are modeled as typed
combinators, and an algorithm for inhabitation {\textemdash} is there a
combinatory term e with type tau relative to an environment Gamma?
{\textemdash} can be used to synthesize compositions. Here, Gamma represents
the repository in the form of typed combinators, tau specifies the synthesis
goal, and e is the synthesized program. We illustrate our approach by examples,
including an application to synthesis from GUI-components.Comment: In Proceedings ITRS 2012, arXiv:1307.784
- …