[Haskell-cafe] Mathematics in Programming - a book with Haskell examples

Xinyu LIU liuxinyu95 at gmail.com
Tue Aug 6 04:25:47 UTC 2024


Hello,

My book 'Mathematics in Programming' in English was published on
7/11/2024. This
book uses Haskell as the main tool for examples of mathematics ideas.

Springer link: https://link.springer.com/book/10.1007/978-981-97-2432-1
Amazon link:
https://www.amazon.com/Mathematics-Programming-Xinyu-Liu/dp/9819724317/


The book presents the mathematical view and tools of computer programming
with broad and friendly context. It explains the basic concepts such as
recursion, computation model, types, data, and etc. The book serves as an
introductory and reference guide to the engineers, students, researchers,
and professionals who are interested in functional programming, type
system, and computer programming languages.

The book covers seven topics. Firstly, it lays out the number system based
on Peano Axioms and demonstrates the isomorphic computer data structures.
Then, it introduces Lambda calculus as a computing model and recursion, an
important programming structure, with the Y-combinator. It next presents
the basic abstract algebra, including group and fields, and provides a
friendly introduction to Galois theory. After that, it uses category theory
as a tool to explain several concepts in computer programming, including
the type system, polymorphism, null handler, and recursive data types, then
followed by an application of program optimization. In the last two
chapters, the author shows how to program with the concept of infinity
through stream and lazy evaluation, and then explains the naïve set theory
and transfinite numbers, from which the logic paradox arises. Finally, it
introduces four historical views of mathematical foundation, as well as
Gödel’s incompleteness theorems developed in 1930s, and how they define the
boundaries of computer programming. Additionally, the book provides
biographies, stories, and anecdotes of 25 mathematicians, along with over
130 exercises and their corresponding answers.

Xinyu LIU
https://github.com/liuxinyu95 <https://github.com/liuxinyu95/unplugged>

*e*^(*π*i)+1 = 0
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/haskell-cafe/attachments/20240805/dd6fa013/attachment.html>


More information about the Haskell-Cafe mailing list