Results

**1 - 5**of**5**### Coinductive Pearl: Modular First-Order Logic Completeness

"... Codatatypes are regrettably absent from many programming languages and proof assistants. We make a case for their usefulness by revisiting a classic result: the completeness theorem for first-order logic established through a Gentzen system. Codatatypes help capture the essence of the proof, which e ..."

Abstract
- Add to MetaCart

Codatatypes are regrettably absent from many programming languages and proof assistants. We make a case for their usefulness by revisiting a classic result: the completeness theorem for first-order logic established through a Gentzen system. Codatatypes help capture the essence of the proof, which establishes an abstract property of derivation trees independently of the concrete syntax or inference rules. This separation of concerns simplifies the presentation, especially for readers acquainted with lazy data structures. The proof is formalized in Isabelle/HOL and demonstrates the recently introduced definitional package for codatatypes and its integration with Isabelle’s Haskell code generator.

### Witnessing (Co)datatypes

"... Datatypes and codatatypes are useful for specifying and reasoning about (possibly infinite) computational processes. The interactive theorem prover Isabelle/HOL has recently been extended with a definitional package that supports both. Here we describe a complete procedure for deriving nonemptiness ..."

Abstract
- Add to MetaCart

Datatypes and codatatypes are useful for specifying and reasoning about (possibly infinite) computational processes. The interactive theorem prover Isabelle/HOL has recently been extended with a definitional package that supports both. Here we describe a complete procedure for deriving nonemptiness witnesses in the general mutually recursive, nested case—nonemptiness being a proviso for introducing new types in higher-order logic. The nonemptiness problem also provides an illuminating case study that shows the package in action, tracing its journey from abstract category theory to hands-on functionality.

### also, Australian National University

"... Abstract. We describe a comprehensive HOL mechanisation of the theory of ordinal numbers, focusing on the basic arithmetic operations. Mechanised results include the existence of fixpoints such as ε0, the existence of normal forms, and the validation of algorithms used in the ACL2 theorem-proving sy ..."

Abstract
- Add to MetaCart

Abstract. We describe a comprehensive HOL mechanisation of the theory of ordinal numbers, focusing on the basic arithmetic operations. Mechanised results include the existence of fixpoints such as ε0, the existence of normal forms, and the validation of algorithms used in the ACL2 theorem-proving system. 1

### Automatic Proofs and Refutations for . . .

, 2012

"... This thesis describes work on two components of the interactive theorem prover Isabelle/HOL that generate proofs and counterexamples for higher-order conjectures by harnessing external first-order reasoners. Our primary contribution is the development of Nitpick, a counterexample generator that bui ..."

Abstract
- Add to MetaCart

This thesis describes work on two components of the interactive theorem prover Isabelle/HOL that generate proofs and counterexamples for higher-order conjectures by harnessing external first-order reasoners. Our primary contribution is the development of Nitpick, a counterexample generator that builds on a first-order relational model finder based on a Boolean satisfiability (SAT) solver. Nitpick supports (co)inductive predicates and datatypes as well as (co)recursive functions. A novel aspect of this work is the use of a monotonicity inference to prune the search space and to soundly interpret infinite types with finite sets, leading to considerable speed and precision improvements. In a case study, Nitpick was successfully applied to an Isabelle formalization of the C++ memory model. Our second main contribution is the further development of the Sledgehammer proof tool. This tool heuristically selects facts relevant to the conjecture to prove,

### Nominal Coalgebraic Data Types . . .

"... We investigate final coalgebras in nominal sets. This allows us to define types of infinite data with binding for which all constructions automatically respect alpha equivalence. We give applications to the infinitary lambda calculus. ..."

Abstract
- Add to MetaCart

We investigate final coalgebras in nominal sets. This allows us to define types of infinite data with binding for which all constructions automatically respect alpha equivalence. We give applications to the infinitary lambda calculus.