Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This stuff really isn't that hard once it is described well (which doesn't need to involve any simplification). I can't wait to see what happens to the programming community once these notions are embraced with the love and respect that it deserves. If anything is going to make a big dent in the field, on a 5-10 year horizon, it'll be this. What we need to do is not to think of it (modern concepts in pure mathematics, especially from algebra) as something separate from programming, but to allow it to mix and skew the fundamental language that we use to reason about coding.


I'm curious: why and how do you think Exterior Algebra will have such an impact on programming in general? What programming constructs that EA capture that are currently not well-abstracted (apart from graphics/linear algebra)? And can EA not be expressed anyway in modern languages with expressive typing systems such at Haskell/Scala which even have higher-kinded types?


Maybe some admixture of machine learning meets compressive sensing meets logic meets complexity theory, and maybe some new software development tools/paradigms too


I don't think this will make a big dent on account of geometry being fundamentally simpler and easier to reason about than language in general, and thus mathematicians dealing in geometry have a much more workable framework for employing an algebraic approach than do computer scientists.

I think if these ideas were going to be revolutionary, they'd already have been. They're not new, unfamiliar, or esoteric, they are in standard curricula.


Exterior algebra is elegant. It simplifies some things. But it's mainstream mathematics. For example, it's covered in the little Spivak (not to be confused with his elementary Calculus book).

As a pure CS person, I'm more interested in advances that push forward constructive mathematics (which has a huge overlap with CS). That's why Martin-Löf's type theory and its further development into HoTT as a new alternative foundation for mathematics is something I'm following with great interest.


The way people interact with differential forms and tangent bundles and so on is somewhat different (and takes much more conceptual machinery) than the way multivectors and geometric algebra (“Clifford algebra”) would best be presented to novices or non-mathematicians.


Yes but also no. One of the most fascinating applications I've seen is here: http://versor.mat.ucsb.edu (and in subsequent work).

There's already a decent tl;dr of the approach on that page, but the tl;dr of that tl;dr is that conformal geometric algebra seems to provide not only a rich language of geometric operations but--importantly!--these operations seem to compose intuitively and interpolate well ("well" in the same way interpolation between quaternions afford the most-natural interpolation between 3D transforms).

The work there uses it to develop tools for parametric design...I'd be very curious to see it extended (e.g. to include time dimensions).

What is notable though is that whereas a lot of the "hype" around geometric algebra revolves around the ostensible intuitiveness--"look, we only need Maxwell's equation, singular, in GA"--actually using it effectively seems to require acquisition of a lot of vocabulary and concepts (e.g. to make use of versor you need to know about blades, rotors, etc.)...the learning curve to use the material is actually steep. That wouldn't prevent it being used as the backend of some tool, but the idea that GA is intuitive and "easier" than alternatives doesn't seem to hold up in practice (IMHO)...at least for uses like these.

Then there's the efficiency issues in that, in general, each term in a k-dimensional geometric algebra will have 2^k coefficients (and thus adding two terms is ~ 2^k operations and multiplying is ~ 2^(k+1))...a good implementation will have a lot of difficult tradeoffs to consider.


It is intuitive and easier in the sense that when you don’t have that vocabulary and bag of concepts – trying to work in some other formalism – all of your arguments end up being much more complicated and cluttered.

As for the number of scalar parameters involved: if anyone wanted to put significant time and money in, as has been done with matrix computation libraries, most of the 0×0 multiplications can be skipped, and the rest can be efficiently SIMDized, etc.

If the concern is bandwidth over the wire, there are often ways to compress things. E.g. we can take the stereographic projection of a rotor and then reduce the precision to save a lot of I/O without losing accuracy.


For anyone else curious, versor is on github: https://github.com/wolftype/versor




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: