Results 1 - 10
of
11
Mechanizing Coinduction and Corecursion in Higher-order Logic
- Journal of Logic and Computation
, 1997
"... A theory of recursive and corecursive definitions has been developed in higher-order logic (HOL) and mechanized using Isabelle. Least fixedpoints express inductive data types such as strict lists; greatest fixedpoints express coinductive data types, such as lazy lists. Wellfounded recursion expresse ..."
Abstract
-
Cited by 38 (5 self)
- Add to MetaCart
A theory of recursive and corecursive definitions has been developed in higher-order logic (HOL) and mechanized using Isabelle. Least fixedpoints express inductive data types such as strict lists; greatest fixedpoints express coinductive data types, such as lazy lists. Wellfounded recursion expresses recursive functions over inductive data types; corecursion expresses functions that yield elements of coinductive data types. The theory rests on a traditional formalization of infinite trees. The theory is intended for use in specification and verification. It supports reasoning about a wide range of computable functions, but it does not formalize their operational semantics and can express noncomputable functions also. The theory is illustrated using finite and infinite lists. Corecursion expresses functions over infinite lists; coinduction reasons about such functions. Key words. Isabelle, higher-order logic, coinduction, corecursion Copyright c fl 1996 by Lawrence C. Paulson Content...
Inductive datatypes in HOL - lessons learned in Formal-Logic Engineering
- Theorem Proving in Higher Order Logics: TPHOLs ’99, LNCS 1690
, 1999
"... Isabelle/HOL has recently acquired new versions of definitional packages for inductive datatypes and primitive recursive functions. In contrast to its predecessors and most other implementations, Isabelle/HOL datatypes may be mutually and indirect recursive, even infinitely branching. We also su ..."
Abstract
-
Cited by 30 (5 self)
- Add to MetaCart
Isabelle/HOL has recently acquired new versions of definitional packages for inductive datatypes and primitive recursive functions. In contrast to its predecessors and most other implementations, Isabelle/HOL datatypes may be mutually and indirect recursive, even infinitely branching. We also support inverted datatype definitions for characterizing existing types as being inductive ones later. All our constructions are fully definitional according to established HOL tradition. Stepping back from the logical details, we also see this work as a typical example of what could be called "Formal-Logic Engineering". We observe that building realistic theorem proving environments involves further issues rather than pure logic only. 1
A Fixedpoint Approach to (Co)Inductive and (Co)Datatype Definitions
, 1997
"... This paper presents a fixedpoint approach to inductive definitions. Instead of using a syntactic test such as "strictly positive," the approach lets definitions involve any operators that have been proved monotone. It is conceptually simple, which has allowed the easy implementation of mutual re ..."
Abstract
-
Cited by 19 (2 self)
- Add to MetaCart
This paper presents a fixedpoint approach to inductive definitions. Instead of using a syntactic test such as "strictly positive," the approach lets definitions involve any operators that have been proved monotone. It is conceptually simple, which has allowed the easy implementation of mutual recursion and iterated definitions. It also handles coinductive definitions: simply replace the least fixedpoint by a greatest fixedpoint. The method
Semantics of General References by a Hierarchy of Gödel Numberings
"... We demonstrate a semantic model of general references --- that is, mutable memory cells that may contain values of any (statically-checked) closed type, including other references. Our model is in terms of execution sequences on a von Neumann machine; thus, it can be used in a Proof-Carrying Code sy ..."
Abstract
-
Cited by 3 (3 self)
- Add to MetaCart
We demonstrate a semantic model of general references --- that is, mutable memory cells that may contain values of any (statically-checked) closed type, including other references. Our model is in terms of execution sequences on a von Neumann machine; thus, it can be used in a Proof-Carrying Code system where the skeptical consumer checks even the proofs of the typing rules. Our proof is machine-checked in the Twelf metalogic.
A Comparison of HOL and ALF Formalizations of a Categorical Coherence Theorem
- In Theorem Proving in Higher Order Logic (HOL'96). Springer LNCS
, 1996
"... . We compare formalizations of an example from elementary category theory in the systems HOL (an implementation of Church's classical simple type theory) and ALF (an implementation of MartinL of's intuitionistic type theory). The example is a proof of coherence for monoidal categories which was extr ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
. We compare formalizations of an example from elementary category theory in the systems HOL (an implementation of Church's classical simple type theory) and ALF (an implementation of MartinL of's intuitionistic type theory). The example is a proof of coherence for monoidal categories which was extracted from a proof of normalization for monoids. It makes essential use of the identification of proofs and programs which is fundamental to intuitionistic type theory. This aspect is naturally highlighted in the ALF formalization. However, it was possible to develop a similar formalization of the proof in HOL. The most interesting aspect of the developments concerned the implementation of diagram chasing. In particular, the HOL development was greatly facilitated by an implementation of tool support for equational reasoning in Standard ML. 1 Introduction We compare the two proof assistants ALF and HOL by using them for implementing a proof in elementary category theory 3 . This proof was...
Foundational, Compositional (Co)datatypes for Higher-Order Logic -- Category Theory Applied to Theorem Proving
"... Higher-order logic (HOL) forms the basis of several popular interactive theorem provers. These follow the definitional approach, reducing high-level specifications to logical primitives. This also applies to the support for datatype definitions. However, the internal datatype construction used in H ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
Higher-order logic (HOL) forms the basis of several popular interactive theorem provers. These follow the definitional approach, reducing high-level specifications to logical primitives. This also applies to the support for datatype definitions. However, the internal datatype construction used in HOL4, HOL Light, and Isabelle/HOL is fundamentally noncompositional, limiting its efficiency and flexibility, and it does not cater for codatatypes. We present a fully modular framework for constructing (co)datatypes in HOL, with support for mixed mutual and nested (co)recursion. Mixed (co)recursion enables type definitions involving both datatypes and codatatypes, such as the type of finitely branching trees of possibly infinite depth. Our framework draws heavily from category theory. The key notion is that of a rich type constructor—a functor satisfying specific properties preserved by interesting categorical operations. Our ideas are formalized in Isabelle and implemented as a new definitional package, answering a long-standing user request.
Formalizing a Proof of Coherence for Monoidal Categories
, 1996
"... this paper, we present a formalization of the proof in the HOL theorem prover [5], which is based on simple type theory. The formalization is considerably simpler than the ALF formalization, both theoretically and practically. Just like ALF, HOL does not directly support equational reasoning in diag ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
this paper, we present a formalization of the proof in the HOL theorem prover [5], which is based on simple type theory. The formalization is considerably simpler than the ALF formalization, both theoretically and practically. Just like ALF, HOL does not directly support equational reasoning in diagram chasing. However, HOL comes with the functional programming language ML. This made it possible with a very limited programming effort to support diagram chasing at such a level that proofs in HOL were more or less as abstract as informal proofs on paper. The user does not have to worry about applying transitivity, congruence and associativity rules, only about specifying the main steps, just like in a paper-and-pencil proof. The ideas for the tool support are inspired by Paulson's higher order conversions for rewriting [11] and might be useful for other purposes than category theory. They only require the presence of a congruence (i.e. equality-like) relation as in, for instance, bisimularity proofs in program verification. Below, we first give a brief introduction to category theory in Section 2 and to the HOL system in Section 3. In Section 4 the formalization of a monoid of binary words is presented, including the normalization theorem. The formalization of a monoidal category of binary words is presented in Section 5 and in Section 6 the proof of a coherence theorem for this category is presented. Section 7 presents the tool support for diagram chasing. 2 Category Theory
BOOTSTRAPPING INDUCTIVE AND COINDUCTIVE TYPES IN HASCASL
, 812
"... Abstract. We discuss the treatment of initial datatypes and final process types in the wide-spectrum language HasCASL. In particular, we present specifications that illustrate how datatypes and process types arise as bootstrapped concepts using HasCASL’s type class mechanism, and we describe constru ..."
Abstract
- Add to MetaCart
Abstract. We discuss the treatment of initial datatypes and final process types in the wide-spectrum language HasCASL. In particular, we present specifications that illustrate how datatypes and process types arise as bootstrapped concepts using HasCASL’s type class mechanism, and we describe constructions of types of finite and infinite trees that establish the conservativity of datatype and process type declarations adhering to certain reasonable formats. The latter amounts to modifying known constructions from HOL to avoid unique choice; in categorical terminology, this means that we establish that quasitoposes with an internal natural numbers object support initial algebras and final coalgebras for a range of polynomial functors, thereby partially generalising corresponding results from topos theory. Moreover, we present similar constructions in categories of internal complete partial orders in quasitoposes.
BOOTSTRAPPING INDUCTIVE AND COINDUCTIVE TYPES IN HASCASL
, 2007
"... Vol. 4 (4:17) 2008, pp. 1–27 ..."

