Skip to product information
1 of 1
Regular price £28.49 GBP
Regular price £37.99 GBP Sale price £28.49 GBP
Sale Sold out
Free UK Shipping

Freshly Printed - allow 8 days lead

Systematic Program Design
From Clarity to Efficiency

Describes a systematic program design method, starting with specifications of computations and deriving implementations by step-wise program analysis and transformations.

Yanhong Annie Liu (Author)

9781107610798, Cambridge University Press

Paperback / softback, published 20 May 2013

253 pages, 14 b/w illus. 90 exercises
23.5 x 15.5 x 1.6 cm, 0.43 kg

'It will prove very useful for graduate students who wish to start their literature review with a comprehensive example of the state of the art in formal methods, and it is an excellent platform for self-directed learning. This well-structured, comprehensive book reflects the author's experience and strong background in the field. Highly recommended.' L. Benedicenti, Choice

A systematic program design method can help developers ensure the correctness and performance of programs while minimizing the development cost. This book describes a method that starts with a clear specification of a computation and derives an efficient implementation by step-wise program analysis and transformations. The method applies to problems specified in imperative, database, functional, logic and object-oriented programming languages with different data, control and module abstractions. Designed for courses or self-study, this book includes numerous exercises and examples that require minimal computer science background, making it accessible to novices. Experienced practitioners and researchers will appreciate the detailed examples in a wide range of application areas including hardware design, image processing, access control, query optimization and program analysis. The last section of the book points out directions for future studies.

1. Introduction
2. Loops: incrementalize
3. Sets: incrementalize and implement
4. Recursion: iterate and incrementalize
5. Rules: iterate, incrementalize, and implement
6. Objects: incrementalize across module abstraction
7. Conclusion.

Subject Areas: Computer science [UY], Software Engineering [UMZ], Programming & scripting languages: general [UMX]

View full details