Joan Lasenby on Applications of Geometric Algebra in Engineering
Joan Lasenby is a University Reader in the Signal Processing and Communications Group of the Cambridge University Engineering Department, and is a College Lecturer and Director of Studies in Engineering at Trinity College. Here’s a list of her published work.
In this episode we talk about Joan’s research into 3D reconstruction from multiple cameras and her interest in geometric algebra.
00:00 – What’s a tangible example of geometric algebra?
1:20 – What is geometric algebra?
6:15 – What resparked interest in geometric algebra?
7:10 – Why is it important?
11:00 – When did Joan start working on it?
12:55 – Rotations
16:45 – Computer vision in the early 90s
19:00 – Joan’s fellowship at the Royal Society
23:00 – What’s changed in computer vision since the 90s to allow for Joan’s drone research?
29:35 – Machine learning in computer vision
31:20 – How Joan and her students are applying machine learning
34:30 – Unifying qualities of geometric algebra
40:30 – Joan’s paper ending up on Hacker News
45:00 – Where could geometric algebra take hold?
47:00 – Running and mobility
48:00 – Where to learn more about geometric algebra
Craig Cannon [00:00] – Hey, how’s it going? This is Craig Cannon and you’re listening to Y Combinator’s Podcast. Today’s episode is with Joan Lasenby. Joan is a university reader in the signal processing and communications group of the Cambridge University engineering department. She’s also a college lecturer and director of studies and engineering at Trinity College. In this episode, we talk about Joan’s research into 3D reconstruction for multiple cameras and her interest in geometric algebra. If you’d like to learn more about Joan’s work, I’ll link it up in the description. Alright, here we go. Joan, as we walk through geometric algebra, the best place to start might be through a more tangible example. You’re doing a project with drones here at Cambridge, can you explain that first?
Joan Lasenby [00:43] – Yes. We’re doing a project with drones. This is joint with the architecture department. What we’d like to do is use drones to look at the built environment generally. The built environment is made up of lots of lines. What we would like to do is to do a lot of our processing or vision processing with lines. Lines are much more difficult classically in computer vision than points. A lot of reconstruction is done with points, you get a point cloud, you can get structure from motion.
Craig Cannon [01:21] – Motion capture for instance, when you see someone in the suit with all the ping pong balls, they’re connecting points?
Joan Lasenby [01:26] – They’re all points, exactly. But then even, not with motion capture just with cameras that are moving you can get points, you can match points. We would like to do this with lines. Lines are difficult and are mathematical frameworks that we will use for this is geometric algebra.
Craig Cannon [01:46] – Okay, so let’s define it, start there.
Joan Lasenby [01:50] – Me? Shall I define it? And we’ll see if it ties in with–
Craig Cannon [01:54] – See if it makes sense.
Joan Lasenby [01:55] – What you’ve read about it. Do you want some history? Grassman, was a mathematician and Grassman had something called an outer product. For example, I can take two vectors. I can put a wedge between them, a wedge product or an outer product and I get A, wedge B. This quantity is now a different thing, and I’ll explain what that is. Grassman had this outer product. Clifford, William Clifford who was actually at Trinity before he moved to London. He came along and he extended this outer product. He effectively had an inner product plus an outer product. For example, if I have two vectors, A.B, where the dot is an inner product giving me a scalar and A edge B which gives me this other thing is a Clifford product. Seems like a strange thing to do. He had an algebra for this Clifford product which is called Clifford Algebra and has been in the mathematics literature and research program forever, since Clifford died.
Craig Cannon [03:21] – Which was?
Joan Lasenby [03:22] – In the 1870s. He died at the age of 34 I think of TB. He did a lot but clearly could have done much more.
Craig Cannon [03:32] – Right.
Joan Lasenby [03:34] – As a kind of applied tool, it wasn’t really used and it was David Hestenes who came in the 1960s and said, “Gosh, look at this, Clifford called it geometric algebra, I’m going to call it geometric algebra and I’m going to do all these wonderful things with it.” That’s the background. The basis is, so imagine I have scalars, so just numbers, vectors, so things with a magnitude and a direction. In 3D we can think of this as bivectors, they’re planes, right? Things that have had two vectors, that makes a plane. A plane would have a position and a magnitude and a handedness.
Craig Cannon [04:25] – What is that?
Joan Lasenby [04:27] – A handedness is, so suppose I have three points that make up a plane. I can sort of go from A to B to C or from A to C to B. If I take A wedge B to form my plane in vectors, then B where J will give me minus the plane.
Joan Lasenby [04:47] – You have to then start to think of these planes as geometric objects which have a sign as well. If I take vectors A wedge B wedge C, it gives me a volume. Again it will be an oriented volume. If I live in four dimensions, A wedge B, wedge C, wedge will give me a four volume. At some point I get to the highest element in space. In 3D that would be a volume, I can’t go any bigger and that has a special place in my algebra. Imagine I have in 3D, scalars plus vectors plus bivectors, plus trivectors. Points, lines, planes, volumes. I have an algebra which takes these things as objects and I can add them, I can multiply them, I can differentiate with respect to them. It’s the kind of abstract concept but it is amazingly powerful. That’s the kind of rough idea of–
Craig Cannon [05:59] – Right, how Clifford algebra moved to geometric algebra and this is all predating computers. This isn’t being rendered anywhere yet.
Joan Lasenby [06:09] – You mean in hardware? We have we have a community, not a massive community but there are lots of people who are very interested in potentially getting instructions for chipsets etc., FPGA it is… Of course we have quite a lot of programs that people have been building, so that the community can test these things out.
Craig Cannon [06:41] – What rekindled it in the 60s to make it happen now?
Joan Lasenby [06:48] – Dave Hestenes was doing his PhD and, he was a physicist and looking at space-time. Basically his PhD turned into a book called Space-Time Algebra from which, basically in the 80s people got hold of and started to get interested in, even though David had been working on it throughout, since the 60s. What started David on the Clifford Algebra, I am actually not quite sure. I’ll ask him. But you mean, what? But then he very quickly realized that this algebra simplified a lot of space-time physics.
Craig Cannon [07:37] – That’s kind of what I wanted to get at. What was the realization that made… Why is this important now?
Joan Lasenby [07:43] – Why is this important. In effect, space-time physics, quantum physics, relativity is extremely complicated and is… It’s the area where, you do have to have a lot of background knowledge and a lot of background mathematical knowledge. You do need to be proficient in for example for general relativity, you need differential geometry. You need a lot of these mathematical systems. You need a lot of tensor analysis. David could see that with this algebra, he could work entirely within an algebra of geometric objects, transformations between these objects, everything stayed in the algebra. Transformations like linear transformations functions were geometrically intuitive. There were mappings of objects to objects. They weren’t just tensors. We didn’t have to go to another space, a sort of dual space as you do in differential geometry. Things became easy and he started to see that you could interpret a lot of things like, Dirac matrices. Well, actually they’re not matrices at all. They were elements of the algebra and immediately, they became easy to deal with. His big motivation was that here was a unifying language for mathematics and physics basically. If you know this language, you can not only do, rigid body dynamics and engineering and classical mechanics, you can do linear algebra without matrices and without tensors, and you can do complex things in quantum, space-time physics with the same mathematical system.
Craig Cannon [09:52] – And this is not theorized, this is proven at this point? It’s all good, just to clarify–
Joan Lasenby [09:57] – It’s all good, yeah, yeah. It’s all good, absolutely.
Craig Cannon [09:58] – It’s not like this idea that maybe this might work someday.
Joan Lasenby [10:01] – No, but part of the problem is that we all, I mean your next question might be, well, if it’s so wonderful, well why doesn’t everyone use it?
Craig Cannon [10:09] – Right.
Joan Lasenby [10:11] – A, Clifford died when he was 34 and it was at the point where Gibbs-Heaviside came in and produced vector algebra and the cross-product. Have you ever thought about cross-product? If I have two vectors and I take A cross B, it gives me the vector which is perpendicular to the plane effectively. Now, that’s all very nice but it only works in 3D. It doesn’t work in any other dimension. Because in a plane, I’ve got In four dimensions there’s no concept of a perpendicular to a plane. But of course, we all grow up with vector calculus, linear algebra and matrices. Then we have our research areas, and it’s very difficult to actually to listen to somebody. If they come along and say, “I’ve got this super duper new mathematical system that you ought to take notice of.” Someone comes up to me and says, “Look at this.” I will say, “Well, I’ve got my own research and it takes me all my time to do what I’m doing.”
Craig Cannon [11:20] – Okay, and so what planted the seed in you that you wanted to follow this path?
Joan Lasenby [11:26] – Fo you want the truth?
Craig Cannon [11:28] – Sure, yeah, that was the goal.
Joan Lasenby [11:31] – The truth is my husband met David Hestenes, Antony Lasenby, he became fairly obsessed with geometric algebra. He is a cosmologist, he could see that there was this thing which told him what the Cauchy–Riemann equations are, the people who know it… That the Pauli matrices and the Dirac matrices in space-time quantum physics were just really interpretable. He became obsessed with it, totally obsessed. Anthony had a PhD student called Chris Doran. Chris and Anthony, they’ve written a book on geometric algebra, Geometric Algebra for Physicists. It was very difficult for me to actually talk to my husband at that point without actually finding out something about it. Because he thought it was one of the most exciting things he’d ever seen.
Craig Cannon [12:39] – And you were at the time just pursuing math PhD, what were you?
Joan Lasenby [12:43] – I was pregnant at the time. I was just about to have a baby. I did have some time actually because I was not that much time of course when you’ve got a small child, but I’d gone back as an engineer. I was a postdoc in engineering. I was doing imaging, I was imaging flames. That was a two-year postdoc position, but I actually then began to realize that this algebra would be really useful in parts of engineering, particularly things which involved rotations. Maybe I should talk about rotations. Because in engineering and physics, rotation, the way geometric algebra deals with rotations is totally key. Have you heard of quaternions?
Craig Cannon [13:38] – I’ve heard of them.
Joan Lasenby [13:39] – Quaternions are, well, if we go back, people rotate with rotation matrices that you have, say in three dimensions. You have a three by three matrix, you act on a vector and it rotates it. Now, a rotation has just three degrees of freedom which have nine components in a three by three matrix, and so they’re all constrained. Rotation matrices are not numerically nice to deal with because you have to keep them on the manifold. You have to make make sure if you change, if you update the rotation matrices, you have to make sure it’s at a basic constraints. It’s one of the things we use. Now in graphics etc. and satellite motion, it’s long been known that, the best things to use is quaternions. Other methods are Euler angles, rotation about the X axis, the Y axis and Z axis. But quaternions have been particularly nice because they are minimally parametrized, they have three components. They are smooth, they don’t suffer from singularity problems and Hamilton created quaternions as an extension of complex numbers.
Joan Lasenby [15:01] – Complex numbers, everybody, people know that complex number i, i effectively rotates in the plane, a multiplication by i. Hamilton spent many many years in his later life trying to extend complex numbers to three dimensions, and he came up with quaternions. Quaternions have these elements, i, j, k which all square to minus one. It’s like three…. Now, to start with, that’s pretty awful. But everybody knew they were great, so there’s libraries, people have been using quaternions since the early days of satellites. If you actually look at code, etc. people will use this for rotations. Now, very early on, it’s in David’s book that you see that if I square one of these bivectors in 3D, let’s take it in 3D for now. If I square it, if it’s a unit by that I get minus one. I have a real object that squares to minus one, which is kind of telling me that i, complex the unit imaginary and this j, k are probably unit planes. Turns out that the quaternions are just rotations. The i, j, k give you rotations about the unit planes in three dimensions. The X, Y, the Y, Z and the XZ plane. Immediately you see that, you can have complete generalizations of things that do rotations in any dimension.
Craig Cannon [16:52] – At that point you’re doing this postdoc position and you realize that you could apply.
Joan Lasenby [16:57] – Yes, not to flames but to–
Craig Cannon [16:59] – No, okay.
Joan Lasenby [17:01] – To mainly computer vision.
Craig Cannon [17:02] – What was the state of computer vision at this time, what year was this?
Joan Lasenby [17:10] – ’93, 1993?
Craig Cannon [17:15] – Okay, so not much happening.
Joan Lasenby [17:17] – Yeah, a lot of the… It was really starting to move forward. There was no machine learning in computer vision that but it was all geometry. It was basically all geometry. People had used projectible. People had been using the ideas of projective geometry in computer vision for a long time which is a four dimensional space, so was matrices. I rotate and translate things, and I have lots of cameras I want to find from my images the rotations and translations between my cameras. Once I’ve done that I could triangulate and I can do 3D reconstruction. There was also at that stage a lot of Bayesian statistics were coming in to computer vision, so tracking things in images.
Joan Lasenby [18:05] – Finding the most probable tracks in crowds.Computer vision was really starting to take off.
Craig Cannon [18:19] – So you finish up your two-year, you’re creating these flames, these graphics essentially. What do you jump into to actually give it a go?
Joan Lasenby [18:29] – I was extremely lucky because by that point I had two small children. I don’t know, have you heard the Royal Society?
Craig Cannon [18:36] – No.
Joan Lasenby [18:38] – The Royal Society, the body in London.
Craig Cannon [18:41] – Oh, okay.
Joan Lasenby [18:42] – Yeah, so you probably have because it has journals and lots of historical people with big names in history were fellows of the Royal Society. The Royal Society has something called university research fellows. I applied to do, it was probably quite a step for them because I probably applied to do applications of geometric algebra in engineering and they gave it to me. Then I had a five-year effectively postdoc and I could choose what teaching I did. The engineering department were very good. I didn’t need to do a lot of teaching or admin but I basically had kind of five years to try and get this off the ground.
Craig Cannon [19:30] – Kind of figure it out. What was an example of an early project?
Joan Lasenby [19:34] – Another project was actually with, I think at the time, the internet wasn’t really quite like it was today. But there was a mailing list and there was, somebody who call, Eduardo Bayro Corrochano who is now in Mexico but he put this email out on some listing. Anybody working with computer vision and geometric algebra. I actually contacted him. Those early days we did quite a lot of translating all the classic projective geometry computer vision which was quite mathematical at the time into geometric algebra.
Craig Cannon [20:25] – Gotcha.
Joan Lasenby [20:28] – This may sound kind of basic but, one of the really nice things about putting your problem etc. into geometric algebra is you have an origin, some inertial frame, everything is with respect to that. I rotate, translate that. I don’t have matrices so I don’t have to worry about coordinate systems, I don’t stack up coordinate system upon coordinate system and then worry about what on earth that translation vector, what coordinate system is that in. With a vision, we’re measuring things in an image. What coordinate frame is that in? It is right quite confusing and I know this for a fact because students are very confused about it all. When you’ve got a rotation, where’s it with respect to in these complicated systems, etc. This just makes life very very easy. And you almost can’t go wrong.
Craig Cannon [21:28] – Was the goal of this five-year period to then apply it to some product use or just do the basic research and see how it goes? What happened?
Joan Lasenby [21:38] – At that time, it was just really seeing what we could get out of it. I did some work with a company called PhaseSpace, they’re a motion capture company in the States not far from Berkeley. And looking at algorithms to calibrate cameras, because one of the things I haven’t mentioned is that there is another aspect to this system which is extremely useful. I’ve said that I have these geometric objects, my rotations are objects, so I can write down coordinate free expressions. But not only can I write them down, I can differentiate with respect to them easily. Because I have this algebra of objects, I can do calculus on them.
Joan Lasenby [22:24] – That’s quite hard to do conventionally because you’ve got people who can do it but you’re differentiating respect to a matrix or a tensor or a vector, all these. It’s a much harder, you can do it component wise but if I want to get close form solutions, doing the analytic stage of the calculus is extremely useful.
Craig Cannon [22:53] – The notion was that you could do it with less compute like you could render these things using geometric algebra faster?
Joan Lasenby [22:59] – No.
Craig Cannon [23:00] – Never, okay.
Joan Lasenby [23:02] – You can do it pretty fast. It’s more, it’s much easier to program up. It’s intuitive, you can think of what you want to do and I can program up on this high level. Underlying, you’ve got an algebra of a much bigger algebra than three-dimensional space–
Craig Cannon [23:20] – Right, of course.
Joan Lasenby [23:21] – So actually computation–
Craig Cannon [23:24] – There is more going on.
Joan Lasenby [23:24] – There is more going on. But at a higher level, I can get code to do all this for me. And at higher level, I can certainly rotate this object to this object, etc.
Craig Cannon [23:35] – In terms of this state of computer vision from then until now, what has progressed to make this drone project possible?
Joan Lasenby [23:44] – Okay, so this is an interesting question. David Hestenes and Garret Sobczyk wrote a book, this is a sort of, real reference book of Clifford algebra to geometric calculus, it’s got everything in there. It’s not a book you’d read, it’s a book that you go to find out–
Craig Cannon [24:06] – Go reference.
Joan Lasenby [24:07] – It’s a reference book. I’m sure they meant it for you to read. That was 1984 or so. In 1999, David gave a talk at a conference. He’d done a paper with Hongbo Li about something which was in the final few pages of this book. Of course, not many of us had ever got to the final few pages of this book. Which he called conformal geometric algebra. This is truly stunning for graphics and for visionary projects, projects which use vision. Conformal geometric algebra is a five dimensional space. Imagine you take Euclidean space, space we live in, you effectively add on two more vectors. One is the origin, one is a point to infinity. Projective geometry effectively adds on one more vector. This is a five dimensional space. You get this five space
Joan Lasenby [25:10] – and you think, well okay. What is this going to get me? Well, what this gets you is that points, lines, planes, circles and spheres become objects in the algebra. They’re objects. You give me a, it’s a C, this big C, it’s a circle. It’s a trivector in my five dimensional space. And rotors which are this class of objects that rotate, encompass rotations, translations, dilations and in the… Rotations, translations, dilations. You’ve suddenly got, for example set up, you give me three points, I immediately get the circle, that passes through. You give me four points, I give you this sphere. It’s an object. I use my rotor, I rotate it, I intersect them. It’s a beautiful language for graphics.
Joan Lasenby [26:14] – But because, from 1999 lots of people, fair number of people, Leo Dorst, Stephen Mann and Daniel Fontijne and Steve in Canada, Leo at Amsterdam wrote a book, Geometric Algebra for Computer Scientists. A lot of that was based on this conformal, just what you could do, just how easy it was to do things. Because lines are just objects, because I know how to sort of compare one line to another, because I can intersect lines and planes keeping this nice algebra, it becomes quite almost easy to see what I have to do to implement a variety of algorithms. It’s quite hard to intersect two spheres. People can do it–
Craig Cannon [27:15] – But it’s easy to imagine how it works.
Joan Lasenby [27:19] – Yeah, but you’ve got equations but here we just do have operators that do it between objects. And one of the beautiful things is, and we live in a Euclidean, for all extents and purposes, from what we see, it’s Euclidean. Now if you have a different underlying geometry, so if you have hyperbolic or spherical geometry, then in this algebra you have to change, in conformal algebra. Euclidean geometry is the thing that keeps the pointed infinity invariant. Then if I keep other things invariant, I get these other geometries and I can just use my standard apparatus and do exactly the same things, rotate my objects in hyperbolic space and rotate my objects in circle space, move them around. It’s a beautiful language for geometry. And I haven’t even touched on physics because a lot of de Sitter space, a lot of the cosmologists work in is a different geometry. Which you can use this for.
Craig Cannon [28:37] – Right, which is why it was appealing to your husband 30 years ago now–
Joan Lasenby [28:42] – Exactly. He started out by being amazed at how things like Cowley and the Dirac matrices, spinners were all just trivial in this algebra. Then he started to realize that these complicated transformations which are all written in tensor notation are actually, if you put them in geometric algebra, they are mappings between real things, like bivectors to bivectors or bivectors to vectors and things like this. As soon as you see it in this way, it enables you to sort of interpret things and then maybe move on. For example, so Anthony and Steve Gull, Chris Doran and David Hestenes are interested in theory of gravity in flat space which produces all, so their theory of gravity you could understand, if you understood the algebra basically.
Craig Cannon [29:51] – As you were saying before, the reason why people aren’t picking up geometric algebra is that you become kind of in a certain track and that you know what you know but right now, what are people using for modern computer vision to do comparable work?
Joan Lasenby [30:10] – Computer vision is really massively advanced.
Craig Cannon [30:16] – Of course, yeah.
Joan Lasenby [30:21] – Today, people are really now moving from geometry to machine learning. You’re using a little bit of geometry but you are learning to segment things, recognize things by giving it lots and lots of images. But you still have, we still have lots of geometric problems. We still have to extract things from images, if we’ve got moving cameras and things like that. I suppose it’s a case of geometric algebra won’t really give you anything that you can’t do conventionally. But what it might enable you to do is to see how to do that thing. For example, if I ask you how close is one line to another, I have a way of doing that in my algebra. If I could I could sit down and write it in conventional.
Craig Cannon [31:13] – Of course. Yeah.
Joan Lasenby [31:14] – But could I have actually thought of that conventionally? Probably not because I’m not clever enough. I need a set of tools which makes sense to me geometrically and physically, and I can then think, me and other people, kind of think about how to extend that.
Craig Cannon [31:41] – In your day to day research, how are you then applying machine learning because many of your PhD students are working on exactly that?
Joan Lasenby [31:51] – Okay, so it’s almost impossible to avoid machine learning. You can try, but you can’t avoid it. I have two sort of strands. Some students are applying conventional machine learning techniques. They change all the time, neural networks, recurrent neural networks, LSTMs to classical data like medical time series data. I don’t know how you can use geometric algebra for that. And doing image segmentation, etc. Classical image segmentation, well, I’m not sure how you can geometrical algebra into that. But as soon as it comes to anything involving like a moving camera, moving drone, multiple moving cameras, having streams of images, you want to match things, you want to triangulate, etc. Then it is almost the only way I know how to do it. It’s that aspect of it. And then, can we extend it? We know how to parameterize in this algebra on my lines, my planes, etc. Can I learn them? Can I learn these geometric objects. We’re keen on analyzing both sort of moving images which we’re going to extract, line, planes and also motion.
Joan Lasenby [33:25] – Can I actually parameterize my problem in terms of my geometric objects and learn then?
Craig Cannon [33:34] – Okay, and so for instance, like someone doing computer vision with a self-driving car, are they applying the same techniques that you’re applying to get these lines, or what would they use?
Joan Lasenby [33:46] – I think no. We have this huge amounts of research on self-driving cars and who knows what they’re doing. But primarily, people are using, if it’s not lidar, it’s single camera, multiple camera, lots of data, Bayesian methods for segmentation, following lines is easy. That’s not matching them or trying to reconstruct them, you’re just kind of following them. It’s really recognizing, if it’s a person, if it’s a road, if it’s a tree and you’ve got multiple sensors. You know exactly where you’re, GPS is really accurate these days. So, no is the answer I think. I don’t know.
Craig Cannon [34:43] – The question I’m kind of getting around to is like where are the other applications? In your instance, you’re rotating a camera, you want to map something, makes a lot of sense and then you can move it around but because you have the lines you can recreate the shape. What are the other use cases?
Joan Lasenby [35:00] – Well, I do think that its real use is this, the fact that it unifies, it’s a unifying language. If I know this, I can just work things out more easily. Instead of trying… If people have worked with computer vision they will know that often things that work so instead of a rotation matrix R, they try R transpose. And instead of a translation vector T, they try R transpose T and they mess around till it works because it’s highly confusing. You’ve got no such problem here. It’s very straightforward. Now, okay that’s not a good reason to use it if you’re proficient enough with classical techniques. But I can go into fields like thin shell elasticity. There is a student who is here at moment doing this, that is quite an involved field but if we put it in terms of I have these rotors, I have a surface, I can stretch them, I can translate them, then it’s just in the language of computer vision. It’s not in differential geometry, it’s not in anything else, it’s totally understandable process.
Craig Cannon [36:20] – You could see a world where then an artificial intelligence understands this and then can apply it anywhere and then you can then understand it.
Joan Lasenby [36:31] – Yeah. I think that’s where its strength lies, and in new physics. I think that because it unifies lots of different quantum mechanics and relativity and it’s not unifying quantum gravity but you can see that it’s system whereby you might be able to think of different ways forward.
Craig Cannon [37:01] – Right, okay, so it’s actually a better tool?
Joan Lasenby [37:04] – In a better tool. People are extremely clever. They will find ways of doing things that are stunningly clever, both are complicated and sophisticated.
Craig Cannon [37:20] – Where do you see limits right now?
Joan Lasenby [37:23] – It’s not computational anymore because we’re building up more and more tools. I think I can give you a website and you can try it out, and you don’t have to install anything because it’s an online Python notebook. You can have a play with it. So we are a community which is certainly moving forward. There still, not a lot of us. It’s not taught, it’s not taught. I teach my fourth years image-processing but I don’t teach them geometric algebra.
Craig Cannon [38:02] – Okay, is there an interest there to learn or they’re just like, “I don’t know.”
Joan Lasenby [38:08] – When you don’t know about it, you can’t really be interested in it. So it’s a… And students have no hang-ups. They learn it and I think great, it’s another tool– And use it. It enables you. I have a lot of confidence that if you give me a paper on, thin shell elasticity, it’s going to be tough because there’s tensors everywhere and I’ve got frames and frames and frames and dual frames and things. I can eventually understand it. These different fields, in fact there’s a colleague, Allan McRobie, he was using a sort of form of it in structures. There are fields, electromagnetism is also, I should have mentioned this, is a field whereby you really get huge simplification.
Joan Lasenby [39:08] – I am fairly confident I can model electromagnetic fields and do maybe some new engineering things using this if I had time.
Craig Cannon [39:20] – Okay, we were talking about programming before we started recording at lunch, and about going from MATLAB to Python, right? Have people tried to create a port in other words, like “Oh, you have this traditional equation, we can port it over and then you can understand it and see the value.” Has that happened yet?
Joan Lasenby [39:40] – No Not really. Most of the code is, enabling you to do things in a kind of transparent way, like I can wedge together two vectors or I can multiply two vectors together, I can form more, I can form my sphere, visualize it and I can do numerical, I can do lots of numerical computations with it fast. We can now do it quickly. But porting things is a kind of difficult one. Yeah, like you’re saying, well here’s my equations in terms of powerly spinners. What does it look like in geometric algebra? Well, kind of looks the same except your spinners aren’t spinners. It’s a difficult, that’s a very hard question to answer.
Craig Cannon [40:37] – Right, because it’s not so simple as like, “Oh, this is how you call this function.” It’s not the same at all, right? Okay, so this is sort of a weird random tangent but before when we met, you were telling me that a couple years ago someone posted on Hacker News one of your papers. What was it? What was it about? How did all this happen?
Joan Lasenby [40:57] – It was an invited paper in the millennium edition, so it was 2000 of Philosophical Transactions of Royal Society. We wrote a paper which was telling, just saying how geometric algebra was a unifying language and look at all these great things we can do in computer science engineering and physics. This is the way the world works, this is, you should do it. So it did… Some citation and it sat there until bizarrely, it was posted there and it was, a friend of mine who reads these things texted me and said, well, your paper is number one read on this Hacker News and I said well, what is that? Is that good or is that bad? I don’t know. Hard to know how it emerged and hard to know how many, I mean whether some people who looked at that and now are in our geometric algebra community who, sort of get interested and came along. Throughout the world now, there are groups and in the 1990 there were not many. There were little groups who were really keen on it but now there are groups, almost everywhere, they’re not big.
Craig Cannon [42:26] – Sure. Did you read the comments when it went up there?
Joan Lasenby [42:32] – I did, yeah. I mean they ranged from, “Wow this looks really cool,” to, “This looks crazy, and impossible to understand.” I thought, oh no, that wasn’t the–
Craig Cannon [42:46] – We’re not trying to communicate that.
Joan Lasenby [42:48] – I know, we did want to say that. To, “Gosh, this looks as though it can do everything.” They weren’t very detailed, it was more people beaming in and saying, do we short things? Although I don’t know whether I read them all.
Craig Cannon [43:01] – That’s the nature of the internet. You have to comment quickly. The person just falls off the front page and then your comments are–
Joan Lasenby [43:06] – Because of course, yeah, in the next five hours, it was probably gone.
Craig Cannon [43:09] – Right, exactly.
Joan Lasenby [43:10] – Sank down to 100.
Craig Cannon [43:11] – Right, but what do the folks who are, are there naysayers? Is that a community?
Joan Lasenby [43:18] – Sorry, what?
Craig Cannon [43:19] – Are there naysayers of geometric algebra
Joan Lasenby [43:27] – I wouldn’t say so. There are people who, there are lots of people who think, “Yeah, that looks interesting but really I can do it anyway and I have. I am the world’s expert in Pauli matrices or whatever. Why do I need to put my matrix in terms of a vector?” People think in different ways. To them that is the way of doing it. That’s always been the way of doing it. I don’t think there are people who say, “Hh this is complete rubbish,” there are just people who say, “Oh yeah, but what’s it going to get me?” I don’t think people, it’s not the kind of thing where you could say it’s wrong ’cause it’s not wrong. It’s just a tool which depends whether you want to invest the time ’cause you think about multiplying vectors together and things like this. It’s anti-commutative, it’s not a commutative algebra. Immediately you throw away everything you’ve learned as a kid and through school and through university. It makes perfect sense once you’re into it but there’s a little, there’s a little hump–
Craig Cannon [44:42] – There’s a learning curve, yeah, you have to throw some things away.
Joan Lasenby [44:45] – It’s much easier for younger people to do that.
Craig Cannon [44:47] – Sure, that makes sense.
Joan Lasenby [44:49] – Because they have no real prejudices.
Craig Cannon [44:50] – Right, okay.
Joan Lasenby [44:51] – They say yeah, it’s another another thing, it’s like machine learning, oh yeah. Another algorithm, I’ll program it up now. And so yeah, I think probably there are people who who do think, well, why should I bother. But I don’t think they would say, no, it’s a wrong thing to do. One shouldn’t do that, one should use matrices.
Craig Cannon [45:15] – In your educated opinion, where do you see this really taking hold in the next, I don’t know, thinking about it in the practical sense, so many people who are listening to YC podcasts are entrepreneurs or engineers or studying, where do you see people applying things like this?
Joan Lasenby [45:36] – Clearly in the fields of, fundamental theoretical advances, so physics or the aspects of physics that we’re not quite sure about, where I see it will have some effect. Because it enables you to think and it enables you to think in different ways. In engineering, there are lots of fields and I don’t know whether we’d be, is there a killer application where if I could do it everyone would say, “Whoa, this is the way to go?”
Craig Cannon [46:16] – Right.
Joan Lasenby [46:17] – I don’t know. As I say, what I would like to see is that people, people had it in their toolbox. There are lots of very very clever people around who can cope with very hard, sophisticated physics and maps. There are a lot of people who are maybe not quite so clever and they need the right tools in order to do these complex things. I see it as actually this provides these people with a real, a lot of people have a lot of geometric insight but maybe not the mathematical sophistication. I think this will certainly sort of, give them a big advantage because it seems to me to be the way the world works. This, if it’s a unifying language it’s what we should be writing our equations in. So I’m not sure that’s answered your question.
Craig Cannon [47:18] – No, that’s actually a great answer. Yeah, I believe that. I like it a lot too. If you weren’t working on this, do you have thoughts on where you might apply your energy?
Joan Lasenby [47:31] – It’s interesting because I have always had, I’m a runner. So I’ve been a runner since I was a kid. I am absolutely convinced that even if you don’t run, as you get older, you need to move and you need to keep your body moving independently. The muscles move independently, you need to keep healthy. I probably would be doing something which tried to get everybody out and moving. That was not what you were expecting–
Craig Cannon [48:07] – No, it’s great.
Joan Lasenby [48:09] – But I look at people and as I get older and life could be so much better for them if they kept mobile and they looked after their body. A slight obsession of mine, but anyway…
Craig Cannon [48:23] – Yeah, no, that’s great. That’s totally awesome. I guess then my last question is, if someone wants to learn more about this and actually start trying it out, where should they go?
Joan Lasenby [48:38] – Lots of books available and I, people will probably be annoyed with me if I don’t mention their books. David Hestenes have three books, Space-Time Algebra, probably not the place to start. New Foundations of Classical Mechanics and Geometric Algebra, Clifford Algebra to Geometric Calculus. Now they’re great books. My husband, Anthony and Chris Doran have a book, Geometric Algebra for Physicists. Leo Dorst, Stephen Mann, and Daniel Fontijne have a book which is Geometric Algebra for Computer Scientists. Eduardo Bayro Corrochano has books which are more focused on robotics. There are lots of books out there, lots of review articles, lots of conference proceedings, lots of code now. People you can kind of get code for MATLAB, for C, for Python. We’ve been using now a package by an American guy called Alex who wrote a Clifford package and we’ve been integrating it into… One of my students Hugo who you met has created a web version. The big problem with a lot of these things, you have to download the package, you got the package, you’ve got to get the NumPy, you’ve got to get all these other things–
Craig Cannon [50:07] – You got to get it all working.
Joan Lasenby [50:08] – Got to get it working, and if you’re on Linux, this tends to not go well, if you’re on Windows, it’s like impossible. Not impossible but your average person would probably think, you know what, no. But we we’re working to try and get a web version so people can actually go on, try it out with some readme files and a bit of graphics so you can see it. There’s loads of stuff out there at the moment–
Craig Cannon [50:31] – Where can they find that if they want to? Is it on your site or?
Joan Lasenby [50:35] – It is, so Hugo and Alex have been working on this and I can give you the web address.
Craig Cannon [50:45] – Okay, we can put it in the blog post.
Joan Lasenby [50:46] – Yeah, they’re just releasing it to the world.
Craig Cannon [50:50] – Perfect, alright.
Joan Lasenby [50:52] – We’re going to have people test it out and say email back and say, “This doesn’t work.”
Craig Cannon [50:58] – Alright, thank you so much for your time.
Joan Lasenby [51:00] – Okay, been a pleasure.
Craig Cannon [51:01] – Alright, thanks for listening. As always you can find the transcript and the video at blog.ycombinator.com. If you have a second, it would be awesome to give us a rating and review wherever you find your podcasts. See you next time.