Results 1 -
6 of
6
A Linear Logical Framework
, 1996
"... We present the linear type theory LLF as the forAppeared in the proceedings of the Eleventh Annual IEEE Symposium on Logic in Computer Science --- LICS'96 (E. Clarke editor), pp. 264--275, New Brunswick, NJ, July 27--30 1996. mal basis for a conservative extension of the LF logical framework. LLF c ..."
Abstract
-
Cited by 203 (44 self)
- Add to MetaCart
We present the linear type theory LLF as the forAppeared in the proceedings of the Eleventh Annual IEEE Symposium on Logic in Computer Science --- LICS'96 (E. Clarke editor), pp. 264--275, New Brunswick, NJ, July 27--30 1996. mal basis for a conservative extension of the LF logical framework. LLF combines the expressive power of dependent types with linear logic to permit the natural and concise representation of a whole new class of deductive systems, namely those dealing with state. As an example we encode a version of Mini-ML with references including its type system, its operational semantics, and a proof of type preservation. Another example is the encoding of a sequent calculus for classical linear logic and its cut elimination theorem. LLF can also be given an operational interpretation as a logic programming language under which the representations above can be used for type inference, evaluation and cut-elimination. 1 Introduction A logical framework is a formal system desig...
Dependently Typed Functional Programs and their Proofs
, 1999
"... Research in dependent type theories [M-L71a] has, in the past, concentrated on its use in the presentation of theorems and theorem-proving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs ..."
Abstract
-
Cited by 61 (13 self)
- Add to MetaCart
Research in dependent type theories [M-L71a] has, in the past, concentrated on its use in the presentation of theorems and theorem-proving. This thesis is concerned mainly with the exploitation of the computational aspects of type theory for programming, in a context where the properties of programs may readily be specified and established. In particular, it develops technology for programming with dependent inductive families of datatypes and proving those programs correct. It demonstrates the considerable advantage to be gained by indexing data structures with pertinent characteristic information whose soundness is ensured by typechecking, rather than human effort. Type theory traditionally presents safe and terminating computation on inductive datatypes by means of elimination rules which serve as induction principles and, via their associated reduction behaviour, recursion operators [Dyb91]. In the programming language arena, these appear somewhat cumbersome and give rise to unappealing code, complicated by the inevitable interaction between case analysis on dependent types and equational reasoning on their indices which must appear explicitly in the terms. Thierry Coquand’s proposal [Coq92] to equip type theory directly with the kind of
A user's guide to ALF
, 1994
"... Contents 1 Introduction 2 2 A first example 3 3 Description of the system 10 3.1 The two main windows : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 10 3.2 The mouse : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11 3.3 The scratch area : : : : : : : : : : : : ..."
Abstract
-
Cited by 36 (2 self)
- Add to MetaCart
Contents 1 Introduction 2 2 A first example 3 3 Description of the system 10 3.1 The two main windows : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 10 3.2 The mouse : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11 3.3 The scratch area : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11 3.3.1 The File-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 11 3.3.2 The Define-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 12 3.3.3 The Construct-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : 12 3.3.4 The Edit-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 13 3.3.5 The Goal-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 14 3.3.6 The Context-menu : : : : : : : : : : : : : : : : : : : : : : : : : : : : 14 3.3.7 The View-menu
Finitary Partial Inductive Definitions as a General Logic
, 1994
"... . We describe how the calculus of partial inductive definitions is used to represent logics. This calculus includes the powerful principle of definitional reflection. We describe two conceptually different approaches to representing a logic, both making essential use of definitional reflection. In t ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
. We describe how the calculus of partial inductive definitions is used to represent logics. This calculus includes the powerful principle of definitional reflection. We describe two conceptually different approaches to representing a logic, both making essential use of definitional reflection. In the deductive approach, the logic is defined by its inference rules. Only the succedent rules (in a sequent calculus setting -- introduction rules in a natural deduction setting) need be given. The other rules are obtained implicitly using definitional reflection. In the semantic approach, the logic is defined using its valuation function. The latter approach often provides a more straightforward representation of logics with simple semantics but complicated proof systems. 1 Introduction: Finitary Partial Inductive Definitions We will describe how to use the calculus of partial inductive definitions as a general logic. That is, as a framework for representing various logics. Following common...
Consistency in ALF
, 1994
"... Introduction ALF is the implementation of a logical framework. This implies that ALF is an open system, we can use it for different approaches to Type Theory or even to encode conventional logic. ALF will only check whether our theories typecheck. We are responsible to make sure that the theory is ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
Introduction ALF is the implementation of a logical framework. This implies that ALF is an open system, we can use it for different approaches to Type Theory or even to encode conventional logic. ALF will only check whether our theories typecheck. We are responsible to make sure that the theory is consistent --- i.e. it is no problem to encode an inconsistent theory like System U in ALF. We could restrict ourselves to the monomorphic set theory as it is described in [NPS90], chapter 19. It is straightforward to implement this theory in ALF and to construct proof-objects by explicit definitions. However, this does not reflect the current usage of ALF, i.e.: ffl We want to be able to introduce new sets by giving a sequence of constructors. ffl We want to define non-canonical constants by pattern matching. Peter Dybjer has developed a notion of schemes to capture inductively defined sets [Dyb91, Dyb94]. Thierry Coq
Automating Inversion of Inductive Predicates in Coq
- In BRA Workshop on Types for Proofs and Programs
, 1995
"... . An inductive definition of a set is often informally presented by giving some rules that explain how to build the elements of the set. The closure property states that any object is in the set if and only if it has been generated according to the formation rules. This is enough to justify case ..."
Abstract
- Add to MetaCart
. An inductive definition of a set is often informally presented by giving some rules that explain how to build the elements of the set. The closure property states that any object is in the set if and only if it has been generated according to the formation rules. This is enough to justify case analysis reasoning: we can read the formation rules backwards to derive the necessary conditions for a given instance to hold. The problem of inversion consists in finding out these conditions. In this paper we address the problem of deriving inversion lemmas in logical frameworks based on Type Theory that have been extended with inductive definitions at the primitive level. These frameworks associate to each inductive definition a case analysis principle corresponding to the closure property. In this formal context, inversion lemmas can be seen as derived case analysis principles. Though they are intuitively simple they are curiously hard to formalize. We relate first inversion to co...

