**A Practical Theory of Programming**

by Eric C.R. Hehner

**Publisher**: Springer 2006**ISBN/ASIN**: 0387941061**ISBN-13**: 9780387941066**Number of pages**: 243

**Description**:

Understanding programming and programming languages requires knowledge of the underlying theoretical model. This book explores aspects of programming that are amenable to mathematical proof. The author describes a programming theory which is much simpler and more comprehensive than the current theories to date. In the theoretical model, a specification is just a boolean expression and refinement is just an ordinary implication. The author develops a practical and broad method for writing precise specifications and designing programs whose executions probably satisfy the specifications.

Download or read it online for free here:

**Download link**

(multiple PDF files)

## Similar books

**Structure and Interpretation of Computer Programs**

by

**Harold Abelson, Gerald Jay Sussman, Julie Sussman**-

**McGraw-Hill**

The book teaches how to program by employing the tools of abstraction and modularity. The central philosophy is that programming is the task of breaking large problems into small ones. You will learn how to program and how to think about programming.

(

**12790**views)

**The Z Notation: A Reference Manual**

by

**J. M. Spivey**-

**Prentice Hall**

The standard Z notation for specifying and designing software has evolved over the best part of a decade. This an informal but rigorous reference manual is written with the everyday needs of readers and writers of Z specifications in mind.

(

**7166**views)

**Exploring Programming Language Architecture in Perl**

by

**Bill Hails**

This book presents an informal and friendly introduction to some of the core ideas in modern computer science, using the programming language Perl as its vehicle. The book takes the form of a series of working interpreters for the language PScheme.

(

**9953**views)

**Lecture Notes on the Lambda Calculus**

by

**Peter Selinger**-

**Dalhousie University**

Topics covered in these notes include the untyped lambda calculus, the Church-Rosser theorem, combinatory algebras, the simply-typed lambda calculus, the Curry-Howard isomorphism, weak and strong normalization, type inference, etc.

(

**7094**views)