Results 1 - 10
of
13
Categorical Logic
- A CHAPTER IN THE FORTHCOMING VOLUME VI OF HANDBOOK OF LOGIC IN COMPUTER SCIENCE
, 1995
"... ..."
Semantic Foundations for Embedding HOL in Nuprl
- ALGEBRAIC METHODOLOGY AND SOFTWARE TECHNOLOGY
, 1996
"... We give a new semantics for Nuprl's constructive type theory that justifies a useful embedding of the logic of the HOL theorem prover inside Nuprl. The embedding gives Nuprl effective access to most of the large body of formalized mathematics that the HOL community has amassed over the las ..."
Abstract
-
Cited by 32 (2 self)
- Add to MetaCart
We give a new semantics for Nuprl's constructive type theory that justifies a useful embedding of the logic of the HOL theorem prover inside Nuprl. The embedding gives Nuprl effective access to most of the large body of formalized mathematics that the HOL community has amassed over the last decade. The new semantics is dramatically simpler than the old, and gives a novel and general way of adding set-theoretic equivalence classes to untyped functional programming languages.
Importing mathematics from hol into Nuprl
- Theorem Proving in Higher Order Logics (TPHOLs 1996), volume 1125 of LNCS
, 1996
"... Abstract. Nuprl and HOL are both tactic-based interactive theorem provers for higher-order logic, and both have been used in many substantial applications over the last decade. However, the HOL community has accumulated a much larger collection of formalized mathematics of the kind useful for hardwa ..."
Abstract
-
Cited by 29 (2 self)
- Add to MetaCart
(Show Context)
Abstract. Nuprl and HOL are both tactic-based interactive theorem provers for higher-order logic, and both have been used in many substantial applications over the last decade. However, the HOL community has accumulated a much larger collection of formalized mathematics of the kind useful for hardware and software veri cation. This collection would be of great bene t in applying Nuprl to veri cation problems of real practical interest. This paper describes a connection we have implemented between HOL and Nuprl that gives Nuprl e ective access to mathematics formalized in HOL. In designing this connection, we had to overcome a number of problems related to di erences in the logics, logical infrastructures and stylistic conventions of Nuprl and HOL. 1
Modular Reasoning in Isabelle
, 1999
"... The concept of locales for Isabelle enables local definition and assumption for interactive mechanical proofs. Furthermore, dependent types are constructed in Isabelle/HOL for first class representation of structure. These two concepts are introduced briefly. Although each of them has proved use ..."
Abstract
-
Cited by 13 (2 self)
- Add to MetaCart
(Show Context)
The concept of locales for Isabelle enables local definition and assumption for interactive mechanical proofs. Furthermore, dependent types are constructed in Isabelle/HOL for first class representation of structure. These two concepts are introduced briefly. Although each of them has proved useful in itself, their real power lies in combination. This paper illustrates by examples from abstract algebra how this combination works and argues that it enables modular reasoning.
A Classical Set-Theoretic Model of Polymorphic Extensional Type Theory
, 1997
"... . We give a new semantic foundation for type theories in the lineage of Martin-Lof's "polymorphic extensional" type theory, and use it to give a model of the constructive type theory of the interactive theorem proving system Nuprl. These type theories are based on an operational seman ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
(Show Context)
. We give a new semantic foundation for type theories in the lineage of Martin-Lof's "polymorphic extensional" type theory, and use it to give a model of the constructive type theory of the interactive theorem proving system Nuprl. These type theories are based on an operational semantics of an untyped programming language. We show how to integrate classical set-theoretic objects, such as functions-as-graphs and equivalence classes, into this operational framework. The new semantics is dramatically simpler than the previous ones, and enables direct reasoning about classical mathematics. A practical consequence is that it justifies a useful embedding of the logic of the HOL theorem prover that gives Nuprl effective access to most of the large body of formalized mathematics that the HOL community has amassed over the years. 1 Introduction The so-called "polymorphic extensional" type theory of Martin-Lof (Martin-Lof, 1982) has two features that set it apart from other constructive type t...
A comparative study of Coq and HOL
- In Proceedings of the 10th International Conference on Theorem Proving in Higher Order Logics, Lecture Notes in Computer Science
, 1997
"... Abstract. This paper illustrates the dierences between the style of theory mechanisation of Coq and of HOL. This comparative study is based on the mechanisation of fragments of the theory of computation in these systems. Examples from these implementations are given to sup-port some of the arguments ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
(Show Context)
Abstract. This paper illustrates the dierences between the style of theory mechanisation of Coq and of HOL. This comparative study is based on the mechanisation of fragments of the theory of computation in these systems. Examples from these implementations are given to sup-port some of the arguments discussed in this paper. The mechanisms for specifying denitions and for theorem proving are discussed separately, building in parallel two pictures of the dierent approaches of mechani-sation given by these systems. 1
Quotients in Simple Type Theory
- Manuscript, Math. Inst
, 1994
"... Introduction Quotients are used throughout mathematics for constructing new objects from old, by collapsing part of the structure, see for example any textbook on algebra or topology. Here we give a completely general description of such quotients in a type theoretic language. We assume a simple ty ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
(Show Context)
Introduction Quotients are used throughout mathematics for constructing new objects from old, by collapsing part of the structure, see for example any textbook on algebra or topology. Here we give a completely general description of such quotients in a type theoretic language. We assume a simple type theory, together with a predicate logic to reason about types and terms. Then quotients can be described as a left adjoint to a certain equality-predicate functor. This gives us all the rules we need: formation, introduction, elimination and (fi)- and (j)-conversions for quotients. These will be described in the next section below. Subsequently, the new syntax is put to use in constructing Z from N, a poset from a preorder, the abelianization of a group, and tensor products\Omega and sums \Phi of abelian groups. All these constructions involve taking a suitable quotient. They will be de
Strongly-typed Theory of Structures And Behaviours
- Correct Hardware Design and Verification Methods, Lecture Notes In Computer Science
, 1993
"... This paper describes an approach to capturing the relation between circuits and their behaviours within a formal theory. The method exploits dependent types to achieve a rigorous yet theoretically simple connection between circuits (treated as graphs) and their behavioural specifications (treate ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
(Show Context)
This paper describes an approach to capturing the relation between circuits and their behaviours within a formal theory. The method exploits dependent types to achieve a rigorous yet theoretically simple connection between circuits (treated as graphs) and their behavioural specifications (treated as predicates). An example is given of a behavioural extraction function and it is shown how a type for modules can be defined that is sufficiently fine to guarantee that the behaviour of a module will satisfy its behavioural specification. The method is discussed in relation to VHDL and in relation to formal synthesis, (a process whereby one starts with a behavioural specification and, using an interactive goal-directed approach, ends up with a circuit and a formal proof that it satisfies the given behavioural specification).