A leisurely introduction to the applications of the material in Chapters 2–5, together with an introduction to the specification language Z, may be found in the following. Z is a cross between mathematics and a programming language, and uses horizontal and vertical lines extensively to try to make the mathematics more palatable.
An Introduction to Discrete Mathematics and Formal System Specification, D. C. Ince, Oxford University Press, 1988.
An account of the theory of how programs, data and computers are modelled, including an excellently readable introduction to program verification, may be found in the next book.
Fundamental Structures of Computer Science, William A. Wulf, Mary Shaw, Paul N. Hilfinger, and Lawrence Flon, Addison-Wesley Publishing Company, 1981.
Database design is covered extensively in the following two books. The second is probably more readable, though sometimes inaccurate.
An Introduction to Database Systems, C. J. Date, Addison-Wesley Publishing Company, 1986.
A Pascal Database Book, Julian R. Ullmann, Oxford University Press, 1985.
The subject matter of Chapter 8 is considerably extended in the following excellently readable book.
Theory of Finite Automata, with an Introduction to Formal Languages, John Carroll and Darrell Long, Prentice-Hall International, Inc., 1989.
The following is only for the mathematically mature. It covers formal languages, automata, the theory of computation, complexity theory, cryptography and Petri nets.