Larch: Languages and Tools for Formal Specification

Overview

This text addresses an important topic: the use of a formal specification language and supporting tools. Formal methods are becoming increasingly important to the practicing programmer; Springer-Verlag has a tradition of publishing books in this area. The book's subject, the Larch specification work at MIT and DEC, is respected amongst academic computer scientists. As plans begin for Larch tools to be distributed to the community, this book can serve as an invaluable reference. The authors of this text, James ...

See more details below
Paperback (Softcover reprint of the original 1st ed. 1993)
$119.00
BN.com price
Other sellers (Paperback)
  • All (5) from $88.29   
  • New (4) from $88.29   
  • Used (1) from $162.15   
Sending request ...

Overview

This text addresses an important topic: the use of a formal specification language and supporting tools. Formal methods are becoming increasingly important to the practicing programmer; Springer-Verlag has a tradition of publishing books in this area. The book's subject, the Larch specification work at MIT and DEC, is respected amongst academic computer scientists. As plans begin for Larch tools to be distributed to the community, this book can serve as an invaluable reference. The authors of this text, James Horning and John Guttag, want their book to reach people interested in implementing formal methods into practical use. This readable text makes extensive use of examples, and serves as both a reference manual and as a tutorial. Chapter 1 discusses the use of formal specifications in program development, providing a context for the technical material that follows. Chapter 2 contains a very short introduction to the notation of mathematical logic. The chapter is aimed at those with no background in logic, and provides all the logic background needed to understand the remainder of the book. The remaining six chapters of the book contains an in-depth look at Larch, and the authors' approach to the formal specification of program components.

Read More Show Less

Editorial Reviews

Booknews
Explains how formal specifications can make computer programming easier and the finished programs better. For practicing programmers, or undergraduates studying software engineering or formal methods. Assumes no training in mathematics or computer science, but some experience in programming. Annotation c. Book News, Inc., Portland, OR (booknews.com)
Read More Show Less

Product Details

  • ISBN-13: 9781461276364
  • Publisher: Springer New York
  • Publication date: 7/31/2012
  • Series: Monographs in Computer Science Series
  • Edition description: Softcover reprint of the original 1st ed. 1993
  • Edition number: 1
  • Pages: 250
  • Product dimensions: 6.14 (w) x 9.21 (h) x 0.57 (d)

Table of Contents

1 Specifications in Program Development.- 1.1 Programming with abstractions.- 1.2 Finding abstractions.- 1.3 The many roles of specification.- 1.4 Styles of specification.- 1.5 Formal specifications.- 2 A Little Bit of Logic.- 2.1 Basic logical concepts.- 2.2 Proof and consequences.- 3 An Introduction to Larch.- 3.1 Two-tiered specifications.- 3.2 LSL, the Larch Shared Language.- 3.3 Interface specifications.- 3.4 Relating implementations to specifications.- 3.5 LP, the Larch proof assistant.- 3.6 Lexical and typographic conventions.- 4 LSL: The Larch Shared Language.- 4.1 Equational specifications.- 4.2 Stronger theories.- 4.3 Combining traits.- 4.4 Renaming.- 4.5 Stating intended consequences.- 4.6 Recording assumptions.- 4.7 Built-in operators and overloading.- 4.8 Shorthands.- 4.9 Further examples.- 5 LCL: A Larch Interface Language for C.- 5.1 The relation between LCL and C.- 5.2 Function specifications.- 5.3 A guided tour through an LCL specification.- 6 LM3: A Larch Interface Language for Modula-3.- 6.1 The relation between LM3 and Modula-3.- 6.2 The LM3 semantic model.- 6.3 A guided tour through an LM3 specification.- 7 Using LP to Debug LSL Specifications.- 7.1 Semantic checks in LSL.- 7.2 Proof obligations for LSL specifications.- 7.3 Translating LSL traits into LP.- 7.4 Proof mechanisms in LP.- 7.5 Checking theory containment.- 7.6 Checking consistency.- 7.7 Extended example.- 7.8 Perspective.- 8 Conclusion.- A An LSL Handbook.- A.1 Introduction.- A.2 Foundations.- A.3 Integers.- A.4 Enumerations.- A.5 Containers.- A.6 Branching structures.- A.7 Maps.- A.8 Relations.- A.9 Graph theory.- A.10 Properties of single operators.- A.11 Properties of relational operators.- A.12 Orderings.- A.13 Lattice theory.- A.14 Group theory.- A.15 Number theory.- A.16 Floating point arithmetic.- B Implementations of Example LCL Interfaces.- C Lexical Forms and Initialization Files.- D Further Information and Tools.- E Classified Bibliography.- References.

Read More Show Less

Customer Reviews

Be the first to write a review
( 0 )
Rating Distribution

5 Star

(0)

4 Star

(0)

3 Star

(0)

2 Star

(0)

1 Star

(0)

Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation

Reminder:

  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

 
Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously

    If you find inappropriate content, please report it to Barnes & Noble
    Why is this product inappropriate?
    Comments (optional)