# Blog articles/Mathematics

### From HaskellWiki

< Blog articles(Difference between revisions)

CaleGibbard (Talk | contribs) |
|||

(26 intermediate revisions by 7 users not shown) | |||

Line 1: | Line 1: | ||

− | + | 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 == | ||

+ | |||

+ | === General === | ||

* [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] | ||

* [http://scienceblogs.com/goodmath/2006/11/why_haskell.php Why Haskell?] | * [http://scienceblogs.com/goodmath/2006/11/why_haskell.php Why Haskell?] | ||

− | + | === Calculus and Differential Geometry === | |

* [http://sigfpe.blogspot.com/2006/09/practical-synthetic-differential.html Practical Synthetic Differential Geometry] | * [http://sigfpe.blogspot.com/2006/09/practical-synthetic-differential.html Practical Synthetic Differential Geometry] | ||

* [http://vandreev.wordpress.com/2006/12/04/non-standard-analysis-and-automatic-differentiation/ Non-standard analysis, automatic differentiation, Haskell] | * [http://vandreev.wordpress.com/2006/12/04/non-standard-analysis-and-automatic-differentiation/ Non-standard analysis, automatic differentiation, Haskell] | ||

− | + | === Algebraic Topology and Geometry === | |

* [http://sigfpe.blogspot.com/2006/08/algebraic-topology-in-haskell.html Algebraic Topology in Haskell] | * [http://sigfpe.blogspot.com/2006/08/algebraic-topology-in-haskell.html Algebraic Topology in Haskell] | ||

* [http://sigfpe.blogspot.com/2006/09/more-low-cost-geometric-algebra.html More Low Cost Geometric Algebra] | * [http://sigfpe.blogspot.com/2006/09/more-low-cost-geometric-algebra.html More Low Cost Geometric Algebra] | ||

− | |||

* [http://sigfpe.blogspot.com/2006/08/geometric-algebra-for-free_30.html Geometric Algebra for Free!] | * [http://sigfpe.blogspot.com/2006/08/geometric-algebra-for-free_30.html Geometric Algebra for Free!] | ||

− | + | === 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] | |

− | + | * [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 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 theory === | |

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

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

− | + | ||

− | + | * 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] | ||

+ | |||

+ | * [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] | ||

* [http://www.serpentine.com/blog/2007/01/11/two-dimensional-spatial-hashing-with-space-filling-curves/ Two-dimensional spatial hashing with space-filling curves] | * [http://www.serpentine.com/blog/2007/01/11/two-dimensional-spatial-hashing-with-space-filling-curves/ Two-dimensional spatial hashing with space-filling curves] | ||

− | + | === 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] | ||

− | + | === Numerics === | |

* The Division Bell | * The Division Bell | ||

** [http://praisecurseandrecurse.blogspot.com/2006/12/division-bell-tolls-for-me.html Part One] | ** [http://praisecurseandrecurse.blogspot.com/2006/12/division-bell-tolls-for-me.html Part One] | ||

Line 63: | Line 85: | ||

** [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 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 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 73: | Line 95: | ||

* [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 == | |

− | + | === 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 88: | Line 112: | ||

* [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 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 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] | ||

− | + | === Miscellaneous === | |

* [http://www.rubrication.net/2007/04/21/how-a-real-module-system-should-work/ ML, Haskell and Coq] | * [http://www.rubrication.net/2007/04/21/how-a-real-module-system-should-work/ ML, Haskell and Coq] | ||

* [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:Mathematics|*]] |

## Latest revision as of 15:22, 26 January 2012

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

For further references see the:

## Contents |

## [edit] 1 Haskell for mathematics

### [edit] 1.1 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?

### [edit] 1.2 Calculus and Differential Geometry

### [edit] 1.3 Algebraic Topology and Geometry

### [edit] 1.4 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

### [edit] 1.5 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

### [edit] 1.6 Set theory

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

### [edit] 1.7 Ring theory

### [edit] 1.8 Number theory

- Number theory and Haskell:

### [edit] 1.9 Cryptography and coding theory

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

### [edit] 1.10 Logic

### [edit] 1.11 Numerics

- The Division Bell

- Overloading Haskell numbers

## [edit] 2 Theorem proving

## [edit] 3 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)

## [edit] 4 Mathematics of Haskell

### [edit] 4.1 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.