# Difference between revisions of "Blog articles/Mathematics"

From HaskellWiki

RossPaterson (talk | contribs) (update polynomials link) |
m (Post about Modal Logic added) |
||

(24 intermediate revisions by 6 users not shown) | |||

Line 1: | Line 1: | ||

− | Haskell and mathematics. | + | Articles using Haskell for mathematics, and the mathematics of Haskell. |

+ | |||

+ | For further references see the: | ||

+ | |||

+ | * [[Haskell_and_mathematics|Haskell math community]]. | ||

+ | * [[Blog_articles/Monads|Mathematics of monads]] | ||

== Haskell for mathematics == | == Haskell for mathematics == | ||

Line 6: | Line 11: | ||

* [http://sigfpe.blogspot.com/2006/01/eleven-reasons-to-use-haskell-as.html Eleven Reasons to use Haskell as a Mathematician] | * [http://sigfpe.blogspot.com/2006/01/eleven-reasons-to-use-haskell-as.html Eleven Reasons to use Haskell as a Mathematician] | ||

− | * [http://www.polyomino.f2s.com/ Haskell for Maths]: commutative algebra, combinatorics, number theory, and group theory libraries | + | * [http://www.polyomino.f2s.com/ Haskell for Maths]: commutative algebra, combinatorics, number theory, and group theory libraries ([http://haskellformaths.blogspot.com/ blog], [http://hackage.haskell.org/package/HaskellForMaths hackage]) |

* [http://sigfpe.blogspot.com/2006/09/learn-maths-with-haskell.html Learn Maths with Haskell] | * [http://sigfpe.blogspot.com/2006/09/learn-maths-with-haskell.html Learn Maths with Haskell] | ||

* [http://blog.mikael.johanssons.org/archive/2006/10/prototyping-thought/ Prototyping thought] | * [http://blog.mikael.johanssons.org/archive/2006/10/prototyping-thought/ Prototyping thought] | ||

Line 23: | Line 28: | ||

=== Geometry === | === Geometry === | ||

− | * [http://www.alpheccar.org/ | + | * [http://www.alpheccar.org/content/57.html Haskell, PDF and Penrose Tilings] |

− | + | * [http://www.kennknowles.com/blog/2007/11/20/visualizing-2d-convex-hull-using-gtk-and-opengl-in-haskell/ Visualizing 2D convex hull using Gtk and OpenGL in Haskell] | |

− | === Group | + | * [http://www.kennknowles.com/blog/2007/12/03/calculating-the-reflect-rotate-translate-normal-form-for-an-isometry-of-the-plane-in-haskell-and-verifying-it-with-quickcheck/ Calculating the reflect-rotate-translate normal form for an isometry of the plane in Haskell, and verifying it with QuickCheck.] |

+ | * [http://www.kennknowles.com/blog/2008/04/16/drawing-fractals-in-haskell-with-a-cursor-graphics-dsel-and-a-cute-list-representation/ Drawing fractals in Haskell with a cursor graphics DSEL and a cute list representation] | ||

+ | |||

+ | === Group theory === | ||

* [http://blog.mikael.johanssons.org/archive/2006/10/computational-group-theory-in-haskell-1-in-a-series/ Computational Group Theory in Haskell] | * [http://blog.mikael.johanssons.org/archive/2006/10/computational-group-theory-in-haskell-1-in-a-series/ Computational Group Theory in Haskell] | ||

* [http://blog.mikael.johanssons.org/archive/2006/07/carry-bits-and-group-cohomology/ Carry bits and group cohomology] | * [http://blog.mikael.johanssons.org/archive/2006/07/carry-bits-and-group-cohomology/ Carry bits and group cohomology] | ||

+ | * [http://sigfpe.blogspot.com/2007/06/monads-from-algebra-and-the-gray-code.html Monads from Algebra and the the Gray Code from Groups] | ||

+ | * [http://www.kennknowles.com/blog/2007/12/20/infinite-lazy-knuth-bendix-completion-for-monoids-in-haskell/ Infinite lazy Knuth-Bendix completion for monoids in Haskell] | ||

− | === Set | + | === Set theory === |

− | * [http:// | + | * Ordinals in Haskell |

− | * [http://japple.blogspot.com/2007/ | + | ** [http://japple.blogspot.com/2007/02/countable-ordinals-in-haskell.html Countable ordinals] |

+ | ** [http://japple.blogspot.com/2007/06/ordinals-part-2.html Uncountable ordinals and better representations for countable ordinals] | ||

+ | ** [http://blog.jbapple.com/2007/07/ord-countable-ordinals-and-idea-of.html Ord, Countable Ordinals, and an Idea of sigfpe] | ||

+ | * [http://japple.blogspot.com/2007/06/constructability-uncountability-and.html Constructability, Uncountability, and ω-Haskell] | ||

+ | * [http://community.livejournal.com/evan_tech/220036.html Defining a power set in one line] | ||

+ | ** [http://blog.mikedaum.com/2007/06/28/haskell-power/ Commentary on this powerset implementation] | ||

− | === Ring | + | === Ring theory === |

* [http://sambangu.blogspot.com/2006/12/polynomials-as-numbers Polynomials] ([http://sambangu.blogspot.com/2006/12/questions-on-haskell-style-and update]) | * [http://sambangu.blogspot.com/2006/12/polynomials-as-numbers Polynomials] ([http://sambangu.blogspot.com/2006/12/questions-on-haskell-style-and update]) | ||

− | === Number | + | === Number theory === |

− | * [http://cdsmith.wordpress.com/2007/06/24/learning-haskell-and-number-theory-gcd-and-higher-order-functions/ GCD and Higher Order Functions] | + | |

+ | * Number theory and Haskell: | ||

+ | ** [http://cdsmith.wordpress.com/2007/06/02/learning-number-theory-and-haskell-the-division-algorithm/ The Division Algorithm] | ||

+ | ** [http://cdsmith.wordpress.com/2007/06/03/learning-number-theory-and-haskell-more-quickcheck-and-divisors/ QuickCheck and Divisors] | ||

+ | ** [http://cdsmith.wordpress.com/2007/06/06/learning-number-theory-and-haskell-greatest-common-divisor/ Greatest Common Divisor] | ||

+ | ** [http://cdsmith.wordpress.com/2007/06/24/learning-haskell-and-number-theory-gcd-and-higher-order-functions/ GCD and Higher Order Functions] | ||

+ | ** [http://cdsmith.wordpress.com/2007/07/05/learning-haskell-and-number-theory-the-end-of-gcd/ The End of GCD] | ||

− | === Cryptography and | + | * [http://www.akalin.cx/2007/07/06/a-foray-into-number-theory-with-haskell/ A foray into number theory with Haskell] |

+ | |||

+ | === Cryptography and coding theory === | ||

* [http://vandreev.wordpress.com/2007/06/18/feistel-ciphers-and-des-in-haskell/ Feistel Ciphers and DES in Haskell] | * [http://vandreev.wordpress.com/2007/06/18/feistel-ciphers-and-des-in-haskell/ Feistel Ciphers and DES in Haskell] | ||

* [http://vandreev.wordpress.com/2007/01/07/arithmetic-coding/ Arithmetic coding in Haskell] | * [http://vandreev.wordpress.com/2007/01/07/arithmetic-coding/ Arithmetic coding in Haskell] | ||

Line 47: | Line 70: | ||

=== Logic === | === Logic === | ||

* [http://sigfpe.blogspot.com/2006/06/laws-of-form-opinion.html Laws of Form: An Opinion] | * [http://sigfpe.blogspot.com/2006/06/laws-of-form-opinion.html Laws of Form: An Opinion] | ||

+ | * [https://serokell.io/blog/incomplete-and-utter-introduction-to-modal-logic Incomplete and Utter Introduction to Modal Logic, Pt. 1] | ||

+ | * [https://serokell.io/blog/incomplete-and-utter-introduction-to-modal-logic Incomplete and Utter Introduction to Modal Logic, Pt. 2] | ||

=== Numerics === | === Numerics === | ||

Line 62: | Line 87: | ||

** [http://augustss.blogspot.com/2007/05/i-was-asked-if-my-fixed-number-module.html Dynamic epsilons in Haskell with a bit of type hackery] | ** [http://augustss.blogspot.com/2007/05/i-was-asked-if-my-fixed-number-module.html Dynamic epsilons in Haskell with a bit of type hackery] | ||

− | == Theorem | + | == Theorem proving == |

* [http://vandreev.wordpress.com/2006/12/24/quick-and-dirty-theorem-prover/ Quick and Dirty Theorem Prover] | * [http://vandreev.wordpress.com/2006/12/24/quick-and-dirty-theorem-prover/ Quick and Dirty Theorem Prover] | ||

− | == Quantum | + | == Quantum computing == |

* [http://sigfpe.blogspot.com/2007/02/essence-of-quantum-computing.html The Essence of Quantum Computing] | * [http://sigfpe.blogspot.com/2007/02/essence-of-quantum-computing.html The Essence of Quantum Computing] | ||

Line 72: | Line 97: | ||

* [http://sigfpe.blogspot.com/2007/03/independence-entanglement-and.html Independence, entanglement and decoherence with the quantum monad] | * [http://sigfpe.blogspot.com/2007/03/independence-entanglement-and.html Independence, entanglement and decoherence with the quantum monad] | ||

* [http://sigfpe.blogspot.com/2007/03/shor-quantum-error-correcting-code-and.html The Shor Quantum Error Correcting Code (and a Monad for Heat)] | * [http://sigfpe.blogspot.com/2007/03/shor-quantum-error-correcting-code-and.html The Shor Quantum Error Correcting Code (and a Monad for Heat)] | ||

− | |||

== Mathematics of Haskell == | == Mathematics of Haskell == | ||

− | === Category | + | === Category theoretic === |

* Category Theory and the Category of Haskell programs: | * Category Theory and the Category of Haskell programs: | ||

− | ** [http://www.alpheccar.org/ | + | ** [http://www.alpheccar.org/content/74.html Part 1] |

− | ** [http://www.alpheccar.org/en/ | + | ** [http://www.alpheccar.org/content/76.html Part 2] |

+ | ** [http://www.alpheccar.org/content/77.html Part 3] | ||

+ | |||

+ | * [http://en.wikibooks.org/wiki/Haskell/Category_theory Category theory and Haskell] | ||

* [http://sigfpe.blogspot.com/2006/11/why-isnt-listt-monad.html Why isn't ListT list a monad?] | * [http://sigfpe.blogspot.com/2006/11/why-isnt-listt-monad.html Why isn't ListT list a monad?] | ||

Line 87: | Line 114: | ||

* [http://sigfpe.blogspot.com/2006/10/games-strategies-and-self-composition.html Games, Strategies and the Self-Composition of the List Monad.] | * [http://sigfpe.blogspot.com/2006/10/games-strategies-and-self-composition.html Games, Strategies and the Self-Composition of the List Monad.] | ||

− | === Lambda and | + | === Lambda and combinator calculi === |

* [http://scienceblogs.com/goodmath/2006/09/programs_are_proofs_models_and_1.php Programs are Proofs: Models and Types in Lambda Calculus] | * [http://scienceblogs.com/goodmath/2006/09/programs_are_proofs_models_and_1.php Programs are Proofs: Models and Types in Lambda Calculus] | ||

* [http://www.onebadseed.com/blog/?p=51 Don't need the Y combinator] | * [http://www.onebadseed.com/blog/?p=51 Don't need the Y combinator] | ||

− | === Other | + | === Other formal logics === |

* [http://sigfpe.blogspot.com/2006/11/from-l-theorem-to-spreadsheet.html From Löb's Theorem to Spreadsheet Evaluation] | * [http://sigfpe.blogspot.com/2006/11/from-l-theorem-to-spreadsheet.html From Löb's Theorem to Spreadsheet Evaluation] | ||

Line 98: | Line 125: | ||

* [http://sigfpe.blogspot.com/2006/09/infinitesimal-types.html Infinitesimal Types] | * [http://sigfpe.blogspot.com/2006/09/infinitesimal-types.html Infinitesimal Types] | ||

* [http://www.alpheccar.org/en/posts/show/70 Djinn, Coq, Monad and a bit of Haskell] | * [http://www.alpheccar.org/en/posts/show/70 Djinn, Coq, Monad and a bit of Haskell] | ||

+ | * [http://disparatemathematician.blogspot.com/2007/07/peanos-axioms-iv-advanced-functions-and.html Peano's Axioms IV: Advanced Functions and Integers] | ||

+ | * [http://sigfpe.blogspot.com/2005/07/formal-power-series-and-haskell.html Formal Power Series and Haskell] | ||

[[Category:Tutorials]] | [[Category:Tutorials]] | ||

[[Category:Mathematics|*]] | [[Category:Mathematics|*]] |

## Latest revision as of 07:20, 16 April 2020

Articles using Haskell for mathematics, and the mathematics of Haskell.

For further references see the:

## Haskell for mathematics

### General

- Eleven Reasons to use Haskell as a Mathematician
- Haskell for Maths: commutative algebra, combinatorics, number theory, and group theory libraries (blog, hackage)
- Learn Maths with Haskell
- Prototyping thought
- Why Haskell?

### Calculus and Differential Geometry

### Algebraic Topology and Geometry

### Geometry

- Haskell, PDF and Penrose Tilings
- Visualizing 2D convex hull using Gtk and OpenGL in Haskell
- Calculating the reflect-rotate-translate normal form for an isometry of the plane in Haskell, and verifying it with QuickCheck.
- Drawing fractals in Haskell with a cursor graphics DSEL and a cute list representation

### Group theory

- Computational Group Theory in Haskell
- Carry bits and group cohomology
- Monads from Algebra and the the Gray Code from Groups
- Infinite lazy Knuth-Bendix completion for monoids in Haskell

### Set theory

- Ordinals in Haskell
- Constructability, Uncountability, and ω-Haskell
- Defining a power set in one line

### Ring theory

### Number theory

- Number theory and Haskell:

### Cryptography and coding theory

- Feistel Ciphers and DES in Haskell
- Arithmetic coding in Haskell
- Two-dimensional spatial hashing with space-filling curves

### Logic

- Laws of Form: An Opinion
- Incomplete and Utter Introduction to Modal Logic, Pt. 1
- Incomplete and Utter Introduction to Modal Logic, Pt. 2

### Numerics

- The Division Bell

- Overloading Haskell numbers

## Theorem proving

## Quantum computing

- The Essence of Quantum Computing
- Monads for vector spaces, probability and quantum mechanics pt. I
- Monads, Vector Spaces and Quantum Mechanics pt. II
- Independence, entanglement and decoherence with the quantum monad
- The Shor Quantum Error Correcting Code (and a Monad for Heat)

## Mathematics of Haskell

### Category theoretic

- Why isn't ListT list a monad?
- Reverse Engineering Machines with the Yoneda Lemma
- Variable substitution gives a...
- Games, Strategies and the Self-Composition of the List Monad.