92 research outputs found
Virtual Evidence: A Constructive Semantics for Classical Logics
This article presents a computational semantics for classical logic using
constructive type theory. Such semantics seems impossible because classical
logic allows the Law of Excluded Middle (LEM), not accepted in constructive
logic since it does not have computational meaning. However, the apparently
oracular powers expressed in the LEM, that for any proposition P either it or
its negation, not P, is true can also be explained in terms of constructive
evidence that does not refer to "oracles for truth." Types with virtual
evidence and the constructive impossibility of negative evidence provide
sufficient semantic grounds for classical truth and have a simple computational
meaning. This idea is formalized using refinement types, a concept of
constructive type theory used since 1984 and explained here. A new axiom
creating virtual evidence fully retains the constructive meaning of the logical
operators in classical contexts.
Key Words: classical logic, constructive logic, intuitionistic logic,
propositions-as-types, constructive type theory, refinement types, double
negation translation, computational content, virtual evidenc
A Computational Approach to Reflective Meta-Reasoning about Languages with Bindings
We present a foundation for a computational meta-theory of languages with bindings implemented in a computer-aided formal reasoning environment. Our theory provides the ability to reason abstractly about operators, languages, open-ended languages, classes of languages, etc. The theory is based on the ideas of higher-order abstract syntax, with an appropriate induction principle parameterized over the language (i.e. a set of operators) being used. In our approach, both the bound and free variables are treated uniformly and this uniform treatment extends naturally to variable-length bindings. The implementation is reflective, namely there is a natural mapping between the meta-language of the theorem-prover and the object language of our theory. The object language substitution operation is mapped to the meta-language substitution and does not need to be defined recursively. Our approach does not require designing a custom type theory; in this paper we describe the implementation of this foundational theory within a general-purpose type theory. This work is fully implemented in the MetaPRL theorem prover, using the pre-existing NuPRL-like Martin-Lof-style computational type theory. Based on this implementation, we lay out an outline for a framework for programming language experimentation and exploration as well as a general reflective reasoning framework. This paper also includes a short survey of the existing approaches to syntactic reflection
On the strength of proof-irrelevant type theories
We present a type theory with some proof-irrelevance built into the
conversion rule. We argue that this feature is useful when type theory is used
as the logical formalism underlying a theorem prover. We also show a close
relation with the subset types of the theory of PVS. We show that in these
theories, because of the additional extentionality, the axiom of choice implies
the decidability of equality, that is, almost classical logic. Finally we
describe a simple set-theoretic semantics.Comment: 20 pages, Logical Methods in Computer Science, Long version of IJCAR
2006 pape
The use of proof plans in tactic synthesis
We undertake a programme of tactic synthesis. We first formalize the notion of
a tactic as a rewrite rule, then give a correctness criterion for this by means of a
reflection mechanism in the constructive type theory OYSTER. We further formalize
the notion of a tactic specification, given as a synthesis goal and a decidability
goal. We use a proof planner. CIAM. to guide the search for inductive proofs
of these, and are able to successfully synthesize several tactics in this fashion.
This involves two extensions to existing methods: context-sensitive rewriting and
higher-order wave rules. Further, we show that from a proof of the decidability
goal one may compile to a Prolog program a pseudo- tactic which may be run to
efficiently simulate the input/output behaviour of the synthetic tacti
Dependent Types for Pragmatics
This paper proposes the use of dependent types for pragmatic phenomena such
as pronoun binding and presupposition resolution as a type-theoretic
alternative to formalisms such as Discourse Representation Theory and Dynamic
Semantics.Comment: This version updates the paper for publication in LEU
- …