## TkWinHOL: A Tool for Doing Window Inference in HOL (1995)

Venue: | In Proc. 1995 International Workshop on Higher Order Logic Theorem Proving and its Applications, Lecture |

Citations: | 4 - 2 self |

### BibTeX

@INPROCEEDINGS{Långbacka95tkwinhol:a,

author = {Thomas Långbacka and Rimvydas Ruksenas and Joakim von Wright},

title = {TkWinHOL: A Tool for Doing Window Inference in HOL},

booktitle = {In Proc. 1995 International Workshop on Higher Order Logic Theorem Proving and its Applications, Lecture},

year = {1995},

pages = {245--260},

publisher = {Springer-Verlag}

}

### OpenURL

### Abstract

Window inference is a method for contextual rewriting and refinement, supported by the HOL Window Inference Library. This paper describes a user-friendly interface for window inference. The interface permits the user to select subexpressions by pointing and clicking and to select transformations from menus. The correctness of each transformation step is proved automatically by the HOL system. The interface can be tailored to particular user-defined theories. One such extension, for program refinement, is described. 1 Introduction Though the original purpose of the HOL system [8] was as a tool for hardware verification, it has become popular also as a basis for software verification (see for example [1, 5, 7]). However, the theories built for supporting the software development process are normally difficult to use, especially if one does not have any previous detailed knowledge of the HOL system. In order to make such theories available to a general audience, it is essential that user...

### Citations

1212 | Tcl and the Tk Toolkit
- Ousterhout
- 1994
(Show Context)
Citation Context ...fashion. The basic user interface is called TkWinHOL, and it offers users a X-windows based graphical interface to the window inference system. 1 TkWinHOL is built using the Tcl/Tk programming system =-=[15]-=-, which is a general purpose environment for building user interfaces. We have managed to keep the system small but still efficient. TkWinHOL is also easy to extend and modify. Based on the TkWinHOL s... |

147 |
A calculus of refinements for program derivations
- Back
- 1988
(Show Context)
Citation Context ...erface as [19] or a specialised tools as [2]. This observation has motivated us to design a tool that supports development of provably correct programs within the framework of the Refinement Calculus =-=[3, 4, 6]-=-. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library [9, 10]. Window inference (originally described in [17]) supports the notion of context... |

109 |
Correctness preserving program refinements: proof theory and applications
- Back
- 1980
(Show Context)
Citation Context ...erface as [19] or a specialised tools as [2]. This observation has motivated us to design a tool that supports development of provably correct programs within the framework of the Refinement Calculus =-=[3, 4, 6]-=-. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library [9, 10]. Window inference (originally described in [17]) supports the notion of context... |

47 |
Formalising the hierarchical structure of practical mathematical reasoning
- Robinson, Staples
- 1989
(Show Context)
Citation Context ...of the Refinement Calculus [3, 4, 6]. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library [9, 10]. Window inference (originally described in =-=[17]-=-) supports the notion of contextual refinement which is an important ingredient in the refinement calculus as well. We also use the HOL theory for the Refinement Calculus [20]. On top of these package... |

43 |
Exploring Expect: A Tcl-based Toolkit for Automating Interactive Programs. pub-ORA:adr: O’Reilly & Associates
- Libes
- 1994
(Show Context)
Citation Context ...TkWinHOL TkWinHOL is a graphical user interface to the window library. It runs on UNIX based systems under X-windows. It requires the availability of the Tcl/Tk [15] programming system and the expect =-=[14]-=- extension to Tcl/Tk. The HOL environment supported is HOL90. TkWinHOL is designed to simplify the work a user has to do while transforming an initial focus towards the desired goal. One of the main f... |

33 | Extending the HOL theorem prover with a computer algebra system to reason about the reals
- Harrison, Théry
- 1993
(Show Context)
Citation Context ...on like HOL. Using expect makes it easy to run, for example, a computer algebra system simultaneously with HOL under the same interface. There are situations where this possibility could prove useful =-=[11]-=-. TkWinHOL relies on a special purpose pretty printer implemented in SML. Besides pretty printing terms this pretty printer also supplies information about the subterms of the pretty printed term. Thi... |

26 |
A Theorem Prover for UNITY in Higher Order Logic
- Andersen
- 1992
(Show Context)
Citation Context ...s described. 1 Introduction Though the original purpose of the HOL system [8] was as a tool for hardware verification, it has become popular also as a basis for software verification (see for example =-=[1, 5, 7]-=-). However, the theories built for supporting the software development process are normally difficult to use, especially if one does not have any previous detailed knowledge of the HOL system. In orde... |

23 | A new interface for HOL - ideas, issues and implementation
- Syme
- 1995
(Show Context)
Citation Context ...out to be a good choice also because of the fact that there is work going on using Tcl/Tk for interfacing to other aspects of the HOL system that we haven't considered (for example theorem retrieval) =-=[18]-=-, and there is a great potential for cooperation. 3.1 The basic appearance of TkWinHOL When TkWinHOL is started three windows appear on the screen. First there is a simple text editor window that offe... |

22 |
A window inference tool for refinement
- Grundy
- 1992
(Show Context)
Citation Context ... of provably correct programs within the framework of the Refinement Calculus [3, 4, 6]. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library =-=[9, 10]-=-. Window inference (originally described in [17]) supports the notion of contextual refinement which is an important ingredient in the refinement calculus as well. We also use the HOL theory for the R... |

11 | Correctness preserving program re nements: proof theory and applications.vol - Back |

11 | A calculus of re nements for program derivations - Back - 1988 |

10 |
Refinement calculus, part I: Sequential programs
- Back, Wright
(Show Context)
Citation Context ...erface as [19] or a specialised tools as [2]. This observation has motivated us to design a tool that supports development of provably correct programs within the framework of the Refinement Calculus =-=[3, 4, 6]-=-. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library [9, 10]. Window inference (originally described in [17]) supports the notion of context... |

9 | Mechanizing some advanced refinement concepts
- Wright, Hekanaho, et al.
- 1993
(Show Context)
Citation Context ... TkWinHOL has been customized into a Refinement Calculator -- a tool for program refinement. Program refinement The Refinement Calculator is based on a mechanisation of the Refinement Calculus in HOL =-=[12]-=-. In the Refinement Calculus, specifications are refined into programs through a sequence of transformation which preserve a refinement relation (preserving total correctness, see [3, 4, 6] for detail... |

8 | Refinement Concepts Formalized in Higher Order Logic
- Back, Wright
- 1990
(Show Context)
Citation Context ...s described. 1 Introduction Though the original purpose of the HOL system [8] was as a tool for hardware verification, it has become popular also as a basis for software verification (see for example =-=[1, 5, 7]-=-). However, the theories built for supporting the software development process are normally difficult to use, especially if one does not have any previous detailed knowledge of the HOL system. In orde... |

7 | A Proof Development System for the HOL Theorem Prover
- Thery
- 1993
(Show Context)
Citation Context ...knowledge of the HOL system. In order to make such theories available to a general audience, it is essential that users have support in the form of a user interface, either a general HOL interface as =-=[19]-=- or a specialised tools as [2]. This observation has motivated us to design a tool that supports development of provably correct programs within the framework of the Refinement Calculus [3, 4, 6]. Our... |

5 |
Mechanizing CSP trace theory in Higher Order Logic
- Camillieri
- 1990
(Show Context)
Citation Context ...s described. 1 Introduction Though the original purpose of the HOL system [8] was as a tool for hardware verification, it has become popular also as a basis for software verification (see for example =-=[1, 5, 7]-=-). However, the theories built for supporting the software development process are normally difficult to use, especially if one does not have any previous detailed knowledge of the HOL system. In orde... |

4 |
A Graphical Tool for Proving UNITY Progress
- Andersen, Petersen, et al.
- 1994
(Show Context)
Citation Context ... order to make such theories available to a general audience, it is essential that users have support in the form of a user interface, either a general HOL interface as [19] or a specialised tools as =-=[2]-=-. This observation has motivated us to design a tool that supports development of provably correct programs within the framework of the Refinement Calculus [3, 4, 6]. Our work is based on a number of ... |

3 |
HOL90 window library manual
- Grundy
- 1994
(Show Context)
Citation Context ... of provably correct programs within the framework of the Refinement Calculus [3, 4, 6]. Our work is based on a number of layers. The starting point is the HOL system and its Window Inference library =-=[9, 10]-=-. Window inference (originally described in [17]) supports the notion of contextual refinement which is an important ingredient in the refinement calculus as well. We also use the HOL theory for the R... |

3 | Re nement concepts formalized in higher order logic - Back, Wright - 1990 |

3 | A window inference tool for re nement - Grundy - 1992 |

1 |
TkWinHOL Users Guide
- Langbacka
(Show Context)
Citation Context ...f subterms by clicking the mouse. 3.3 Customising TkWinHOL In this section we briefly describe how one can customise TkWinHOL for some specific HOL theory. A more detailed description can be found in =-=[13]-=-. There are basically three things one might want to do: modify the basic pretty printer supplied with the environment, produce a parser suited for the theory used and add new choices to the menus or ... |

1 | Re nement calculus, part I: Sequential programs - Back, Wright - 1989 |

1 | HOL90 window librarymanual - Grundy - 1994 |

1 | Mechanising some advanced re nement concepts - Wright, Langbacka - 1993 |