• 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