Discrete Mathematics Using a Computer

Discrete Mathematics Using a Computer, by Cordelia Hall and John O'Donnell. Published by Springer, January 2000. Softcover, 360 pages, ISBN 1-85233-089-9. £16.95

This book introduces the main topics of discrete mathematics with a strong emphasis on applications to computer science. It uses computer programs to implement and illustrate the mathematical ideas, helping the reader to gain a concrete understanding of the abstract mathematics. The programs are also useful for practical calculations, and they can serve as a foundation for larger software packages.

Designed for first and second year undergraduate students, the book is also ideally suited to self-study. No prior knowledge of functional programming is required; the book and the online documentation provide everything you will need.

Software Tools for Discrete Mathematics

Download the Stdm software. There are also some older versions: Stdm1.lhs (oldest) and Stdm2.lhs

Read the Stdm User Manual

Using the Book: The Beseme Project at the University of Oklahoma

The Beseme Project at the University of Oklahoma Computer Science Department advocates Better Software Engineering through Mathematics Education. The Beseme project uses Discrete Mathematics Using a Computer, and they provide excellent support materials on their Web page, including lecture slides, handouts, sample examinations and more. Rex Page is the Principal Investigator.

The Haskell Programming Language

The software is written in the standard functional language Haskell 98 . The book contains a self-contained introduction to Haskell, and the reader is not assumed to have any prior knowledge of functional programming. Several good implementations of Haskell 98 are freely available, and nearly all computer platforms are supported, including Windows 2000/ME/NT/98/95, Macintosh, Unix and Linux. The interactive Hugs implementation is recommended for use with the book.

Instructor's Guide and Teaching Materials

An Instructor's Guide is available online.


This page is maintained by John O'Donnell (jtod@dcs.gla.ac.uk), and was last modified February 22, 2000.