DocumentCode
1554851
Title
Debugging Larch shared language specifications
Author
Garland, Stephen J. ; Guttag, V. ; Horning, James J.
Author_Institution
Lab. for Comput. Sci., MIT, Cambridge, MA, USA
Volume
16
Issue
9
fYear
1990
fDate
9/1/1990 12:00:00 AM
Firstpage
1044
Lastpage
1057
Abstract
The checkability designed into the LSL (Larch shared language) is described, and two tools that help perform the checking are discussed. LP (the Larch power) is the principal debugging tool. Its design and development have been motivated primarily by work on LSL, but it also has other uses (e.g. reasoning about circuits and concurrent algorithms). Because of these other uses, and because they also tend to use LP to analyze Larch interface specifications, the authors have tried not to make LP too LSL-specific. Instead, they have chosen to build a second tool, LSLC (the LSL checker), to serve as a front-end to LP. LSLC checks the syntax and static semantics of LSL specifications and generates LP proof obligations from their claims. These proof obligations fall into three categories: consistency (that a specification does not contradict itself), theory containment (that a specification has intended consequences), and relative completeness (that a set of operators is adequately defined). An extended example illustrating how LP is used to debug LSL specifications is presented
Keywords
formal specification; inference mechanisms; parallel programming; program debugging; Larch power; Larch shared language specifications; checkability; concurrent algorithms; consistency; debugging; design; development; static semantics; theory containment; Algorithm design and analysis; Buildings; Costs; Crops; Debugging; Formal specifications; Laboratories; Logic testing; Modular construction; Specification languages;
fLanguage
English
Journal_Title
Software Engineering, IEEE Transactions on
Publisher
ieee
ISSN
0098-5589
Type
jour
DOI
10.1109/32.58789
Filename
58789
Link To Document