This volume offers a new, "hands-on" approach to teaching Discrete Mathematics. A simple functional language is used to allow students to experiment with mathematical notations, which are traditionally difficult to pick up. This practical approach provides students with instant feedback and also allows lecturers to monitor progress easily. All the material needed to use the book will be available via ftp (the software is freely available and runs on Mac, PC and Unix platforms), including a special module which implements the concepts to be learned. No prior knowledge of Functional Programming is required: apart from List Comprehension (which is comprehensively covered in the text), everything the students need is either provided for them, or can be picked up easily as they go along. An Instructors Guide will also be available on the web, to help lecturers adapt existing courses.
Discrete Mathematics Using a Computer offers a new, "hands-on" approach to teaching Discrete Mathematics. Using software that is freely available on Mac, PC and Unix platforms, the functional language Haskell allows students to experiment with mathematical notations and concepts -- a practical approach that provides students with instant feedback and allows lecturers to monitor progress easily.
This second edition of the successful textbook contains significant additional material on the applications of formal methods to practical programming problems. There are more examples of induction proofs on small programs, as well as a new chapter showing how a mathematical approach can be used to motivate AVL trees, an important and complex data structure.
Designed for 1st and 2nd year undergraduate students, the book is also well suited for self-study. No prior knowledge of functional programming is required; everything the student needs is either provided or can be picked up easily as they go along.
Key features include:
· Numerous exercises and examples
· A web page with software tools and additional practice problems, solutions, and explanations, as well as course slides
· Suggestions for further reading
Complete with an accompanying instructor's guide, available via the web, this volume is intended as the primary teaching text for Discrete Mathematics courses, but will also provide useful reading for Conversion Masters and Formal Methods courses.
Visit the book’s Web page at: http://www.dcs.gla.ac.uk/~jtod/discrete-mathematics/