Results 1  10
of
11
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. 264275, New Brunswick, NJ, July 2730 1996. mal basis for a conservative extension of the LF logical framework. ..."
Abstract

Cited by 222 (45 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. 264275, New Brunswick, NJ, July 2730 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 MiniML 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 cutelimination. 1 Introduction A logical framework is a formal system desig...
Reasoning with higherorder abstract syntax in a logical framework
, 2008
"... Logical frameworks based on intuitionistic or linear logics with highertype quantification have been successfully used to give highlevel, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natu ..."
Abstract

Cited by 93 (24 self)
 Add to MetaCart
Logical frameworks based on intuitionistic or linear logics with highertype quantification have been successfully used to give highlevel, modular, and formal specifications of many important judgments in the area of programming languages and inference systems. Given such specifications, it is natural to consider proving properties about the specified systems in the framework: for example, given the specification of evaluation for a functional programming language, prove that the language is deterministic or that evaluation preserves types. One challenge in developing a framework for such reasoning is that higherorder abstract syntax (HOAS), an elegant and declarative treatment of objectlevel abstraction and substitution, is difficult to treat in proofs involving induction. In this paper, we present a metalogic that can be used to reason about judgments coded using HOAS; this metalogic is an extension of a simple intuitionistic logic that admits higherorder quantification over simply typed λterms (key ingredients for HOAS) as well as induction and a notion of definition. The latter concept of definition is a prooftheoretic device that allows certain theories to be treated as “closed ” or as defining fixed points. We explore the difficulties of formal metatheoretic analysis of HOAS encodings by considering encodings of intuitionistic and linear logics, and formally derive the admissibility of cut for important subsets of these logics. We then propose an approach to avoid the apparent tradeoff between the benefits of higherorder abstract syntax and the ability to analyze the resulting encodings. We illustrate this approach through examples involving the simple functional and imperative programming languages PCF and PCF:=. We formally derive such properties as unicity of typing, subject reduction, determinacy of evaluation, and the equivalence of transition semantics and natural semantics presentations of evaluation.
Rules of definitional reflection
 In Symposium on Logic and Computer Science
, 1993
"... This paper discusses two rules of definitional reflection: The “logical ” version of definitional reflection as used in the extended logic programming language GCLA and the “ω”version of definitional reflection as proposed by Eriksson and Girard. The logical version is a Leftintroduction rule comp ..."
Abstract

Cited by 59 (9 self)
 Add to MetaCart
(Show Context)
This paper discusses two rules of definitional reflection: The “logical ” version of definitional reflection as used in the extended logic programming language GCLA and the “ω”version of definitional reflection as proposed by Eriksson and Girard. The logical version is a Leftintroduction rule completely analogous to the Leftintroduction rules for logical operators in Gentzenstyle sequent systems, whereas the ωversion extends the logical version by a principle related to the ωrule in arithmetic. Correspondingly, the interpretation of free variables differs between the two approaches, resulting in different principles of closure of inference rules under substitution. This difference is crucial for the computational interpretation of definitional reflection. 1
A Coverage Checking Algorithm for LF
, 2003
"... Coverage checking is the problem of deciding whether any closed term of a given type is an instance of at least one of a given set of patterns. It can be used to verify if a function defined by pattern matching covers all possible cases. This problem has a straightforward solution for the first ..."
Abstract

Cited by 42 (13 self)
 Add to MetaCart
Coverage checking is the problem of deciding whether any closed term of a given type is an instance of at least one of a given set of patterns. It can be used to verify if a function defined by pattern matching covers all possible cases. This problem has a straightforward solution for the firstorder, simplytyped case, but is in general undecidable in the presence of dependent types. In this paper we present a terminating algorithm for verifying coverage of higherorder, dependently typed patterns.
Elimination of Negation in a Logical Framework
, 2000
"... Logical frameworks with a logic programming interpretation such as hereditary Harrop formulae (HHF) [15] cannot express directly negative information, although negation is a useful specification tool. Since negationasfailure does not fit well in a logical framework, especially one endowed with ..."
Abstract

Cited by 10 (3 self)
 Add to MetaCart
(Show Context)
Logical frameworks with a logic programming interpretation such as hereditary Harrop formulae (HHF) [15] cannot express directly negative information, although negation is a useful specification tool. Since negationasfailure does not fit well in a logical framework, especially one endowed with hypothetical and parametric judgements, we adapt the idea of elimination of negation introduced in [21] for Horn logic to a fragment of higherorder HHF. This entails finding a middle ground between the Closed World Assumption usually associated with negation and the Open World Assumption typical of logical frameworks; the main technical idea is to isolate a set of programs where static and dynamic clauses do not overlap.
CutProperty And Negation As Failure
, 1994
"... What is the semantics of NegationasFailure in logic programming? We try to answer this question by prooftheoretic methods. A rule based sequent calculus is used in which a sequent is provable if, and only if, it is true in all threevalued models of the completion of a logic program. The main the ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
What is the semantics of NegationasFailure in logic programming? We try to answer this question by prooftheoretic methods. A rule based sequent calculus is used in which a sequent is provable if, and only if, it is true in all threevalued models of the completion of a logic program. The main theorem is that proofs in the sequent calculus can be transformed into SLDNFcomputations if, and only if, a program has the cutproperty. A fragment of the sequent calculus leads to a sound and complete semantics for SLDNFresolution with substitutions. It turns out that this version of SLDNFresolution is sound and complete with respect to threevalued possible world models of the completion for arbitrary logic programs and arbitrary goals. Since we are dealing with possibly nonterminating computations and constructive proofs, threevalued possible world models seem to be an appropriate semantics.
From Logic Programs to Inductive Definitions
 Logic: From Foundations to Applications, European Logic Colloquium ’93
, 1993
"... The threevalued Fitting/Kunen semantics is one of the best declarative semantics for negation as failure in logic programming. We show that the threevalued consequences of the completion of a logic program are exactly the fourvalued consequences of the completion. Since a fourvalued relation can ..."
Abstract

Cited by 9 (3 self)
 Add to MetaCart
(Show Context)
The threevalued Fitting/Kunen semantics is one of the best declarative semantics for negation as failure in logic programming. We show that the threevalued consequences of the completion of a logic program are exactly the fourvalued consequences of the completion. Since a fourvalued relation can be represented by two twovalued relations, the fourvalued completion semantics, and hence the threevalued Fitting/Kunen semantics, can be expressed in terms of classical consequences of an appropriate theory, which we call the partial completion of a logic program. We prove that SLDNFresolution is sound and complete with respect to the partial completion for a large class of normal logic programs, covering most programs of practical interest. This result can even be extended to SLDNFresolution with builtin predicates. The partial completion, which is always consistent, leads in a natural way to formal theories of inductive definitions. We argue that such theories are appropriate for verification and termination proofs of logic programs. 1
Pi: an Interactive Derivation Editor for the Calculus of Partial Inductive Definitions
 in proceedings of the 12th Conference on Automated Deduction (CADE12), forthcoming
, 1994
"... . Pi is a system for the interactive construction and editing of formal derivations in the calculus of finitary partial inductive definitions. This calculus can be used as a logical framework where object logics are specified, turning Pi into a derivation system for a particular object logic. Notewo ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
. Pi is a system for the interactive construction and editing of formal derivations in the calculus of finitary partial inductive definitions. This calculus can be used as a logical framework where object logics are specified, turning Pi into a derivation system for a particular object logic. Noteworthy features of Pi include: a graphic user interface where derivations are presented in tree form, direct manipulation of the derivation tree structure by selection using a mouse, and the ability to edit existing derivations by cutting and pasting as well as by changing the formulae occurring in a derivation. A simple facility for automatic theorem proving has been designed. 1. Introduction Pi is a program for the interactive construction of formal derivations, being developed at the Swedish Institute of Computer Science. The main design goals for the Pi system are: . To support the calculus of finitary partial inductive definitions  a formal system that can be used as a logical framewor...
ASufficient Substitutions in Mixed Contexts
"... ng infinitary system of PIDs). This property makes these calculi different from most (if not all) calculi based on more traditional logics. E.g. the calculus used in LambdaProlog [10] utilizes a similar notion of eigenvariables [11] but as there is no rule of definitional reflection in LambdaProlo ..."
Abstract
 Add to MetaCart
(Show Context)
ng infinitary system of PIDs). This property makes these calculi different from most (if not all) calculi based on more traditional logics. E.g. the calculus used in LambdaProlog [10] utilizes a similar notion of eigenvariables [11] but as there is no rule of definitional reflection in LambdaProlog the eigenvariables can safely be regarded as skolemfunctions. In [4] the exact formulation of a rule that correctly handles occurrences of eigenvariables in queries is given. This rule is a combination of the traditional rule of definitional reflection [7, 8] and a rule called the wrule similar in intent to a rule later suggested by Girard in [5]. The relationship between these rules and some of their properties are investigated by SchroederHeister in [12]. SchroederHeister also coins the name Dw for the rule suggested in<F8.72