**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

**Comparative Studies of Programming Languages**

by

**Joey Paquet, Serguei A. Mokhov**-

**arXiv**

Lecture notes for the Comparative Studies of Programming Languages course. These notes include a compiled book of primarily related articles from the Wikipedia, as well as Comparative Programming Languages book and other resources.

(

**5929**views)

**Concrete Semantics: With Isabelle/HOL**

by

**Tobias Nipkow, Gerwin Klein**-

**Springer**

The book teaches the reader the art of precise logical reasoning and the practical use of a proof assistant as a tool for formal proofs about computer science artefacts. All the mathematics is formalised in Isabelle and much of it is executable.

(

**2759**views)

**Computational Category Theory**

by

**D.E. Rydeheard, R.M. Burstall**

The book is a bridge-building exercise between computer programming and category theory. Basic constructions of category theory are expressed as computer programs. It is a first attempt at connecting the abstract mathematics with concrete programs.

(

**14105**views)

**Dictionary of Programming Languages**

by

**Neal Ziring**

The Dictionary of Programming Languages is an online compendium of computer coding methods assembled to provide information and aid your appreciation for computer science history. The dictionary currently has over 120 entries.

(

**9308**views)