Your talk was about Conformal Geometric Algebra (CGA) specifically, what got you into studying that?

I was at a conference – 2000 or so, a long time ago – and David Hestenes stood up and said: “Everyone seems to have forgotten these last few pages of my book.” – which was in 1984 – “It’s really useful. You can do all these things.” Then he outlined it and I was thinking: “Gosh, isn’t this interesting?”, so I started working on it and many of us started working from there.

You sort of set up your space to what you want it to be, right? Do you think there will be more spaces that people will try to work with?

There already are. CGA doesn’t deal with anything other than circles, spheres, lines and planes. I can intersect lines with any of those, but if I wanted to intersect with an ellipse, that’s actually quite tough. So, people have gone up to higher algebras to do these intersections, but you have to realize it’s 2n2n elements in your algebra. So, if you’ve got an 8-dimensional algebra, that’s 2828 elements. Then, you’ve got a lot of things to keep track of. If you want to do more complex things, you will need higher algebras, but then they’re very specific for doing that one thing.

When you set up your new space, can you sort of predict what will happen, or do you always have to think “I’ll look into it and I’ll see what I’ll find.”?

Yes, pretty much. In the early days of using CGA, we would add two things together and think: “Oh, this is amazing! It gives this.” Then you try to understand why it gave that. Or you dot two lines together and you think: “What does that give me?”. So, in the early days of anything, it’s always a bit of exploration. If you want to read about it, you’ll find a lot of books and papers about it.

You mentioned going from PGA and CGA could be a performance loss, but what are then the main benefits you get from moving to it anyway?

The main benefits are how much you’re actually doing with circles and spheres, really. PGA can’t do circles and spheres. We had a lot of bounding spheres for some projects and it’s very much like Inverse Kinematics. It’s extremely useful to have your primitives as circles and spheres, because all your joined angle constraints can be put in terms of that.