Overview
- Editors:
-
-
Ursula Martin
-
Department of Mathematical and Computational Sciences, University of St Andrews, North Haugh, St Andrews, Fife, Scotland
-
Jeannette M. Wing
-
School of Computer Science, Carnegie Mellon University, Pittsburgh, USA
Access this book
Other ways to access
Table of contents (17 papers)
-
Front Matter
Pages i-viii
-
-
- Michel Bidoit, Rolf Hennicker
Pages 18-35
-
-
- Boutheina Chetali, Pierre Lescanne
Pages 55-68
-
- Christine Choppy, Michel Bidoit
Pages 69-85
-
- Urban Engberg, Peter Grønning, Leslie Lamport
Pages 86-97
-
- Gary Feldman, Joseph Wild
Pages 98-103
-
- David Guaspari, Carla Marceau, Wolfgang Polak
Pages 104-141
-
-
- Gary T. Leavens, Yoonsik Cheon
Pages 159-184
-
- Niels Mellergaard, Jørgen Staunstrup
Pages 185-200
-
- James B. Saxe, James J. Horning, John V. Guttag, Stephen J. Garland
Pages 201-226
-
- E. A. Scott, K. J. Norrie
Pages 227-245
-
-
-
-
- Jeannette M. Wing, Eugene Rollins, Amy Moormann Zaremski
Pages 297-312
-
Back Matter
Pages 313-315
About this book
The papers in this volume were presented at the First International Workshop on Larch, held at MIT Endicott House near Boston on 13-15 July 1992. Larch is a family of formal specification languages and tools, and this workshop was a forum for those who have designed the Larch languages, built tool support for them, particularly the Larch Prover, and used them to specify and reason about software and hardware systems. The Larch Project started in 1980, led by John Guttag at MIT and James Horning, then at Xerox/Palo Alto Research Center and now at Digital Equipment Corporation/Systems Research Center (DEC/SRC). Major applications have included VLSI circuit synthesis, medical device communications, compiler development and concurrent systems based on Lamport's TLA, as well as several applications to classical theorem proving and algebraic specification. Larch supports a two-tiered approach to specifying software and hardware modules. One tier of a specification is wrillen in the Larch Shared Language (LSL). An LSL specification describes mathematical abstractions such as sets, relations, and algebras; its semantics is defined in terms of first-order theories. The second tier is written in a Larch interface language, one designed for a specific programming language. An interface specification describes the effects of individual modules, e.g. state changes, resource allocation, and exceptions; its semantics is defined in terms of first-order predicates over two states, where state is defined in terms of the programming language's notion of state. Thus, LSL is programming language independent; a Larch interface language is programming language dependent.
Editors and Affiliations
-
Department of Mathematical and Computational Sciences, University of St Andrews, North Haugh, St Andrews, Fife, Scotland
Ursula Martin
-
School of Computer Science, Carnegie Mellon University, Pittsburgh, USA
Jeannette M. Wing