- Series: Texts in Computing
- Paperback: 450 pages
- Publisher: College Publications (May 7, 2004)
- Language: English
- ISBN-10: 0954300696
- ISBN-13: 978-0954300692
- Product Dimensions: 6.1 x 1 x 9.2 inches
- Shipping Weight: 1.4 pounds (View shipping rates and policies)
- Average Customer Review: 4.3 out of 5 stars See all reviews (18 customer reviews)
- Amazon Best Sellers Rank: #156,409 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
The Haskell Road to Logic, Maths and Programming. Second Edition (Texts in Computing)
Use the Amazon App to scan ISBNs and compare prices.
Frequently bought together
Customers who bought this item also bought
If you are a seller for this product, would you like to suggest updates through seller support?
Top Customer Reviews
Haskell is prominent in the title, but is secondary in the book. The vast majority of my time has been spent reading and performing proofs with with pencil and paper. The mathematics portions are all fairly rigorous. Once proofs are fully introduced, nearly all the exercises are proving theorems given in the book, or providing counter examples. There isn't much in the way of computational type exercises I've seen in some other discrete math texts, stuff like "what's the transitive closure of this relation". Instead, a theorem will be given and the author will ask you to prove it.
The Haskell exercises typically follow pure math introductions and exercises, and are used to help develop a stronger, more intuitive understating of the subjects. I can now write enough Haskell to take on the exercises, but to this point, the Haskell has all be very compact - 10 lines of code to answer a question at the max, usually more like 3. There's no way I could go and do something 'practical' with Haskell at this point, but I can grok some of it and am starting to appreciate functional programming.
This is easily the most challenging self study book I've taken on, but also the most rewarding. Not only have I gained proof writing knowledge, and a solid understanding of the fundamentals of modern mathematics, but it's helped me develop a measure of discipline in thought. I've noticed improvements in the clarity of my day to day software development - in design, development, and verification. The methodical approach to breaking down a proof into cases and sub-cases has been most helpful in that regard.
I recommend this to anyone, especially developers who haven't had the benefit of a thorough mathematical education.
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.
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.
Us workaday programmers have a hard time picking up maths or remembering the maths we learned in school. This book gives us a great alternative to grinding through old textbooks to learn the math we need in our projects. Really, the concreteness of seeing mathematical concepts implemented in working code can make all the difference.
I love this book so much, I can only wish there were more in the same vein. What about a 'Haskell Road to Linear Algebra', or a 'Haskell Road to Calculus'? Wouldn't such a series be magnificent?!
If I could ask for anything more from the authors, I would ask for more books like this! I can't praise the work enough!
I really recommend this book to math hobbits and/or Haskell newcomers. And thank you again Kees Doets and Jan van Eijck for several happy week and good time with reading and solving problems. That was really fun.
Most Recent Customer Reviews
It is 95% of math, and 5% of Haskell (I didn't measure it line by...Read more
As others have mentioned, this is really a math book that uses Haskell as a vehicle to teach the math.Read more