## Recursive Boolean Functions in HOL (1991)

Venue: | In 1991 International Tutorial and Workshop on the HOL Theorem Proving System and its Applications |

Citations: | 1 - 1 self |

### BibTeX

@INPROCEEDINGS{Andersen91recursiveboolean,

author = {Flemming Andersen and Kim Dam Petersen},

title = {Recursive Boolean Functions in HOL},

booktitle = {In 1991 International Tutorial and Workshop on the HOL Theorem Proving System and its Applications},

year = {1991},

pages = {367--377}

}

### OpenURL

### Abstract

The HOL system supports mechanized verification of specifications in polymorphic Higher Order Logic. HOL has facilities for defining primitive recursive functions, but no support for defining non-primitive recursive functions. This paper presents a package for defining recursive boolean functions in HOL as the minimal or maximal fixed point of a boolean function transformer. The implementation of the package is based on the results on fixed points in complete lattices by Tarski. Two examples on how to use the package are given. Both examples describe the definition of recursive boolean functions for specifying properties of parallel programs. 1 Introduction The proof generating system HOL includes facilities for constructing primitive recursive functions over the predefined types num (non-negative numbers) and list (finite lists), tools have been made for defining recursive data types and primitive recursive functions over these [13, 5], but no facilities exist for constructing funct...

### Citations

3463 |
Communication and Concurrency
- Milner
- 1989
(Show Context)
Citation Context ... Application The developed package may of course be used for any kind of recursive boolean functions. This means that implementation in HOL of any logic containing recursively defined properties e.g. =-=[4, 6, 3, 11, 15, 8] may take advantage -=-of the package. However, for the present only the inductively defined progress property "leadsto" in UNITY [4] and the CTL logic [3] have been applied. 4.1 The "leadsto" progress p... |

1543 | A Discipline of Programming - Dijkstra - 1976 |

778 | Parallel Program Design: A Foundation - Chandy, Misra - 1988 |

596 |
A lattice-theoretical fixpoint theorem and its applications
- Tarski
- 1955
(Show Context)
Citation Context ...ence recursively defined sets and fixed points of predicate transformers may be defined using the package. The technique for constructing recursive boolean functions is based on the results of Tarski =-=[17]-=- that characterize the fixed points of monotonic functions on complete lattices. Using the fact that boolean functions ordered by pointwise implication is a complete lattice, Tarski's results may be u... |

346 |
Denotational Semantics: A Methodology for Language Development
- Schmidt
- 1988
(Show Context)
Citation Context ...the relation leadsto is now defined as a predicate in the product of predicates p, q and the program P r. Traditionally only least fixed points are considered for defining the denotation of functions =-=[16, 12]-=-, but greatest fixed points are sometimes necessary for describing properties of programs as will be seen in the next example on the CTL logic [3]. To give a complete fixed point characterization of t... |

204 |
The Calculus of Computation
- Bradley, Manna
- 2007
(Show Context)
Citation Context ...the relation leadsto is now defined as a predicate in the product of predicates p, q and the program P r. Traditionally only least fixed points are considered for defining the denotation of functions =-=[16, 12]-=-, but greatest fixed points are sometimes necessary for describing properties of programs as will be seen in the next example on the CTL logic [3]. To give a complete fixed point characterization of t... |

77 | Automating recursive type definitions in higher order logic
- Melham
- 1988
(Show Context)
Citation Context ...e recursive functions over the predefined types num (non-negative numbers) and list (finite lists), tools have been made for defining recursive data types and primitive recursive functions over these =-=[13, 5]-=-, but no facilities exist for constructing functions that are not primitive recursive. This paper describes the implementation and use of a package which allows a wide class of recursive boolean funct... |

28 |
HOL: “A proof generating system for higher order logic
- Gordon
- 1987
(Show Context)
Citation Context ...ill describe the implementation of the functions for constructing specialized theorems concerning recursive functions defined by the package. Throughout this section HOL notation is used. We refer to =-=[10] for -=-the full details on this, here we will just mention that: ---- prefixes a theorem or a definition,s! is the universal quantifier 8, ? is the existential quantifier 9, and " the lambda abstraction... |

12 |
Predicate calculus and program semantics. Texts and monographs in computer science
- Dijkstra, Scholten
- 1990
(Show Context)
Citation Context ... Application The developed package may of course be used for any kind of recursive boolean functions. This means that implementation in HOL of any logic containing recursively defined properties e.g. =-=[4, 6, 3, 11, 15, 8] may take advantage -=-of the package. However, for the present only the inductively defined progress property "leadsto" in UNITY [4] and the CTL logic [3] have been applied. 4.1 The "leadsto" progress p... |

8 |
The Concurrency Workbench
- Cleveland, Parrow, et al.
- 1989
(Show Context)
Citation Context ... Application The developed package may of course be used for any kind of recursive boolean functions. This means that implementation in HOL of any logic containing recursively defined properties e.g. =-=[4, 6, 3, 11, 15, 8] may take advantage -=-of the package. However, for the present only the inductively defined progress property "leadsto" in UNITY [4] and the CTL logic [3] have been applied. 4.1 The "leadsto" progress p... |

1 |
Automating a Model Checker for recursive Modal
- Agerholm, Schj��dt
- 1990
(Show Context)
Citation Context ...oint of monotonic boolean function transformers. It is not a new idea to use the result of Tarski for recursive definitions in HOL; in [5, 9] systems for defining mutually recursive data types and in =-=[1]-=- a system for automatic model checking of recursive modal assertions of finite state systems is described. These systems use the results of Tarski for internally constructing recursive definitions. An... |

1 |
Automating mutually recursive Type Definitions
- Christiansen, Pedersen
- 1990
(Show Context)
Citation Context ...e recursive functions over the predefined types num (non-negative numbers) and list (finite lists), tools have been made for defining recursive data types and primitive recursive functions over these =-=[13, 5]-=-, but no facilities exist for constructing functions that are not primitive recursive. This paper describes the implementation and use of a package which allows a wide class of recursive boolean funct... |

1 |
Strarup Jensen and Anders Pilegaard and Ann-Grete Tan. Defining Mutually Recursive Types
- Peter
- 1990
(Show Context)
Citation Context ...i's results may be used to define the minimal and maximal fixed point of monotonic boolean function transformers. It is not a new idea to use the result of Tarski for recursive definitions in HOL; in =-=[5, 9]-=- systems for defining mutually recursive data types and in [1] a system for automatic model checking of recursive modal assertions of finite state systems is described. These systems use the results o... |

1 |
Proof Systems for HennesyMilner Logic. The
- Larsen
- 1988
(Show Context)
Citation Context |

1 |
A Package for Inductive Definitions in HOL
- Melham
(Show Context)
Citation Context ... state systems is described. These systems use the results of Tarski for internally constructing recursive definitions. Another tool for defining recursively defined boolean functions is described in =-=[14]-=-. The paper is organized as follows. In section 2 the theory behind the implementation of the package is described. This includes a description of the results of Tarski and showing their applicability... |