Product Details
The Haskell Road to Logic, Maths and Programming (Texts in Computing)

The Haskell Road to Logic, Maths and Programming (Texts in Computing)
By Kees Doets, van Jan Eijck

List Price: $25.00
Price: $22.50 & eligible for FREE Super Saver Shipping on orders over $25. Details

Availability: Usually ships in 24 hours
Ships from and sold by Amazon.com

39 new or used available from $15.12

Average customer review:

Product Details

  • Amazon Sales Rank: #89301 in Books
  • Published on: 2004-05-07
  • Original language: English
  • Number of items: 1
  • Binding: Paperback
  • 444 pages

Customer Reviews

The Haskell Road to Discrete Math5
Want to learn discrete math as in the non-calculus version of Math 101? Willing to work hard to learn it? Then this is the book for you! It is written in a user friendly style. The book has a chatty tone when explaining serious topics. The chat is the talk of experts, however, so it should never be underestimated. The book will teach you the functional programming language Haskell. This language is the most modern version of the Lisp family to have received any significant attention. It features advanced type features and lazy evaluation. The book covers all the "classic" topics of a discrete math course, to a considerable depth. Best of all, they are all implemented in Haskell. All except for the predicate calculus, that is. It would be a major piece of work indeed to have any implementation of this topic in a work at this level! The book teaches logic by example. One is taught the meaning, the rules and the insider's "recipes" of mathematical proofs. The book then covers the standard topics of sets, relations, functions, and induction / recursion with impressive computer implementations. The book goes on to a quick overview of the construction of the number systems of mathematics. It proceeds to a substantial treatment of combinatorics in a short space which includes implementation of polynomial solutions to recursion relations. Then it is on to corecursion, power series, and a hint of domain theory. The book ends with a modern chapter on the elements of set theory. All in all an excellent book! IMHO it is the best book out there on the topics in a discrete math course. It is amazing that all of this (except the serious parts of logic) could be implemented in Haskell so successfully. The one caveat about the book is that if you want to benefit fully from it, you are going to have to do some hard work.

Pascal's logic calculator machine incarnate!5
This book is breathtaking in its clarity and depth. I'm into the chapter on using Haskell to prove logical theorems.

One of my all-time favourite subjects in undergraduate study was Logic. That you could translate English language arguments into logical symbolism and test their validity and soundness by following a set of rules was, to me, a revelation. By following a number of logical inference rules, one could build an argument that proves the validity of a conclusion. The use of truth tables was intriguing and so simple in concept.

Blaise Pascal (French philosopher, and whose name was given to the Pascal programming language) speculated about the possibility of a logic calculating machine. Well, this book shows how you can do it with Haskell.

The Haskell Road To Logic, Maths and Programming provides Haskell source code that you can run to demonstrate the validity of all the traditional logical inference rules that I learned in Logic.

It's a pleasure to read.

modern approach to Mathematics foundations5
When I was a Math undergrad back in the 70's, we had a 5 hr course called Foundations of Mathematics. This was an intro to symbolic logic, propositional calculus, and methods of proof. Deadly boring, dry material that we either knew, grasped by intuition, or ignored.

This textbook covers this material in a constructive fashion by using the Haskell programming language. Haskell is a modern form of lisp, one of the original programming languages, from the '50's, the language used for most Artificial Intelligence work. The breadth of Haskell allows it to be used for logic and proof, as well as the usual numerical and string processing. Pattern matching and list processing is built into the basic structure of the Haskell language.

This text's exercises are mostly Haskell programming assignments. Turning the abstract ideas of the math into the concrete statements of Haskell (if statements in a program can be considered concrete) will make the ideas familiar and real. Free, useful versions of Haskell (Hugs) are available for readers or students to use, even on Windows systems. Any familiarity with any programming system and a text editor should be enough to get started.

What is the difference between proving a theorem and debugging a program ? The way I do it, not much. That has much to do with me, I am a programmer first, and a Math second. This statement is the Curry-Howard correspondence, connecting computability and proof or truth. This text is a step on that road to truth.

There are several other titles in this series. All of them sound fascinating. I will read them later.