
What I want to push is a 'mathematically sound' numeric prelude. A proper numerical prelude should have bona fide mathematical obects like groups, rings, and fields underlying common numerical classes.
Why not Clifford algebra: to simplify mathematical physics, mechanics, computer vision, improve neural networks etc.? That would probably be easier with OCaml-style categorical machine architecture. But then why not go for combinatorial stuff like matroids or graphs? More mathematics in a programming language won't harm general applications written in it. On the contrary, almost any human endeavor could be mathematically structured and thus programmed. Present languages are office-oriented for lack of mathematical knowledge and not any hidden virtue. Cheers, -Andrzej

On 3/25/07, Andrzej Jaworski
Why not Clifford algebra: to simplify mathematical physics, mechanics, computer vision, improve neural networks etc.?
If anyone wants a starting point, here's some Clifford algebra stuff I had fun implementing in Haskell: http://sigfpe.blogspot.com/2006/08/geometric-algebra-for-free_30.html http://sigfpe.blogspot.com/2006/09/more-low-cost-geometric-algebra.html The code has the potential for being made quite efficient - ie. much faster than the naive multiplication of elements in a Clifford algebra. But Clifford algebras really need dependent types... -- Dan

Hi Don, I noticed your Clifford Algebra some time ago and was impressed. Geometric Algebra with its infinite dimensional structures needs lazy evaluation so Haskell should shine, no doubt. It will be interesting to see how far GADT can help us from here. But first somebody should try to rewrite DoCon or start from scratch. This is a major job however but the literature is there and an assured path to fame:-) With your enthusiasm for implementing mathematics you must have attracted a handful of right guys to Haskell Don! the organization should start to think of some place for you in its future museum:-) Cheers, -Andrzej

Andrzej Jaworski wrote:
Hi Don,
I noticed your Clifford Algebra some time ago and was impressed. Geometric Algebra with its infinite dimensional structures needs lazy evaluation so Haskell should shine, no doubt.
What the? Some uses use the somewhat hazy idea of infinite dimensional Clifford algebras, notable some versions of quantum field theory, but most uses are quite finite dimensional.

I noticed your Clifford Algebra some time ago and was impressed. Geometric Algebra with its infinite dimensional structures needs lazy evaluation so Haskell should shine, no doubt
Some uses use the somewhat hazy idea of infinite dimensional Clifford algebras, notable some versions of quantum field theory, but most uses are quite finite dimensional.
GA is infinite in nature. It can be viewed mathematically as factorizable Clifford algebra but consistent geometrical interpretation is not possible as elements of Clifford algebra can be constructed by addition. Haskell cannot profit from functional analyses methods as yet - hence multidimensionality in geometrical context sprung to my mind. I didn't think Don wanted his examples to compete with tens of well groomed low-dimensional Clifford packages and libraries spanning Java, C, C++, all CAS-es, etc. On this level of presentation only multidimensionality can give Haskell any justice.
participants (3)
-
Andrzej Jaworski
-
Dan Piponi
-
Derek Elkins