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

**Partial Evaluation and Automatic Program Generation**

by

**Neil D. Jones, Carsten K. Gomard, Peter Sestoft**-

**Prentice Hall**

The book about partial evaluation, a program optimization technique also known as program specialization. It presents principles for constructing partial evaluators for a variety of programming languages, and gives references to the literature.

(

**14157**views)

**Lecture Notes on Static Analysis**

by

**Michael I. Schwartzbach**-

**IT University of Copenhagen**

These notes present principles and applications of static analysis of programs. We cover type analysis, lattice theory, control flow graphs, dataflow analysis, fixed-point algorithms, narrowing and widening, control flow analysis, pointer analysis.

(

**5951**views)

**Elements of Programming**

by

**Alexander Stepanov, Paul McJones**-

**Semigroup Press**

This book applies the deductive method to programming by affiliating programs with the abstract mathematical theories. Specification of these theories, algorithms and theorems and lemmas describing their properties are presented together.

(

**3214**views)

**The Design and Implementation of Probabilistic Programming Languages**

by

**Noah D. Goodman, Andreas Stuhlmüller**-

**dippl.org**

This book explains how to implement PPLs by lightweight embedding into a host language. We illustrate this by designing WebPPL, a small PPL embedded in Javascript. We show how to implement several algorithms for universal probabilistic inference.

(

**4199**views)