A Swift Introduction to Projective Geometric Algebra

Поділитися
Вставка
  • Опубліковано 18 січ 2025

КОМЕНТАРІ • 302

  • @sudgylacmoe
    @sudgylacmoe  Рік тому +73

    Here are the notes that got too long to fit in the description:
    Note 1 (2:04): Credit for this "note" idea goes to the UA-camr Bismuth.
    Note 2 (4:59): You might notice that there could actually be two different angles that two lines can make. So which angle is the one we use? It actually depends! You see, I have neglected to mention that each line actually has a hidden orientation that can have an impact on calculations. I don't mention it here because it doesn't impact most of the calculations in this video, but this is one of the few exceptions. The dependence of the inner product on the orientation of lines won't matter much to us because the main thing I want the inner product for is the definition of parallel and perpendicular (which I'll get to in a moment), which doesn't depend on the orientation of the lines.
    Note 3 (12:58): If you think that this looks like homogeneous coordinates, that's right, because this is precisely homogeneous coordinates! In fact, this is the main point of connection between PGA and projective geometry. But in PGA we prefer to make lines/planes our vectors rather than points because the geometric and inner products don't work as we want them to if we make points our vectors.
    Note 4 (15:12): You might be wondering about why I picked (b, -a) rather than (-b, a), and the reason is that this is another case where the orientation of a line comes in. However, given that the two points at infinity are the negative of each other, they are scalar multiples of each other, so in some sense they represent the same point. Thus, it actually doesn't matter which of (b, -a) and (-b, a) we choose, so I just picked one.
    Note 5 (20:22): You might notice that I swapped an inner product while fusing the two projection equations. Your first instinct might be that this is fine because the inner product is symmetric, but then you might realize that this is not fine because the inner product in geometric algebra is not symmetric. So what gives? Well, between homogeneous multivectors, the inner product is always either symmetric or antisymmetric, and because scalar multiples don't affect what object our multivectors represent, the minus sign won't really matter to us. Thus, for our purposes, we can swap the inner product without really worrying about whether or not we should be introducing a minus sign.
    Note 6 (24:54): You might be wondering why I write the rotor transformation law as R†aR rather than RaR†, which is what many others use. In the end it's just a convention, and I prefer R†aR because many things feel more straightforward to me when using this convention. I might make a video or a short in the future expounding on this a bit.
    Note 7 (28:30): Not only is the magnitude of the lines important, but their orientation is as well! In fact, the relative orientation of the lines affects whether you rotate in a clockwise or counterclockwise direction. This is probably the only time in the video that the orientation of lines really matters. However, in my own work, I'll admit that I still don't really think of the orientation of lines/points when I'm exponentiating. I'll just look at the result, and if I see that something's off, I just throw in a minus sign then.
    Note 8 (51:21): You might be wondering how the symbols map to GA operations. * is the geometric product, ^ is the outer product, and & is the regressive product (while it wasn't used here, | is the inner product). The GA in this demonstration was done using the Python library kingdon: github.com/tBuLi/kingdon

    • @housamkak8005
      @housamkak8005 Рік тому +1

      your 8th note answered my question. And Note 7 made me really chuckle hahaha. Thank you for all this.

    • @housamkak8005
      @housamkak8005 Рік тому

      I am unable though to find the library in a quick search, can you link to it?

    • @HEHEHEIAMASUPAHSTARSAGA
      @HEHEHEIAMASUPAHSTARSAGA Рік тому +1

      Is there an intuitive reason why making hyperplanes our vectors works better than just making (homogeneous) points vectors?

    • @angeldude101
      @angeldude101 Рік тому +3

      @@HEHEHEIAMASUPAHSTARSAGA Because reflecting across 3 orthogonal planes is the same as reflecting across the point where they intersect. Thus it makes sense that composing three planes can result in a point. The other way around however does not apply. You can generate translations by reflecting across two points, but there's no way to generate rotations, and rotations are nice.

    • @angeldude101
      @angeldude101 Рік тому

      @@housamkak8005 Sudgy's notation given here seems to be standard, though I personally use a different convention.
      Outside of geometric algebra, ∧ and ∨ are the standard symbols for AND and OR respectively. There are also contexts outside of GA that use meets and joins and respectively use the symbols... ∧ and ∨. It might also be worth mentioning the intersection and union, which are both closely related to the AND and meet, and OR and join respectively, and use the symbols ∩ and ∪, which look a heck of a lot like the prior symbols.
      With this in mind, most programming languages represent AND as & and OR as |. Those are the symbols that I've come to prefer for the outer product and regressive product. The main thing it lacks is the visual similarity between ∧ and ^, though since ^ is usually used for XOR, it seemed as good a choice as any for the inner product. Oh, and also that it conflicts with the established approach, but I don't really care about that as much.

  • @noctis_rune
    @noctis_rune Рік тому +155

    I can't believe this is all free!

    • @imnimbusy2885
      @imnimbusy2885 Рік тому

      It is not your maths or his maths, her maths or theirs!
      It is *our maths*
      Union indestructible free republics
      Союз нерушимый республик свободных
      United forever Great Rus'
      Сплотила навеки Великая Русь
      Long live the one created by the will of the peoples
      Да здравствует созданный волей народов
      United, mighty Soviet Union!
      Единый, могучий Советский Союз!
      Hail, our free Fatherland
      Славься, Отечество наше свободное
      Friendship of peoples is a reliable stronghold!
      Дружбы народов надёжный оплот!
      Party of Lenin - the power of the people
      Партия Ленина - сила народная
      It leads us to the triumph of communism!
      Нас к торжеству коммунизма ведёт!
      Through the storms the sun of freedom shone for us
      Сквозь грозы сияло нам солнце свободы
      And the great Lenin lit the way for us
      И Ленин великий нам путь озарил
      He raised the nations to a just cause
      На правое дело он поднял народы
      Inspired us to work and deeds!
      На труд и на подвиги нас вдохновил!
      Hail, our free Fatherland
      Славься, Отечество наше свободное
      Friendship of peoples is a reliable stronghold!
      Дружбы народов надёжный оплот!
      Party of Lenin - the power of the people
      Партия Ленина - сила народная
      It leads us to the triumph of communism!
      Нас к торжеству коммунизма ведёт!
      In the victory of the immortal ideas of communism
      В победе бессмертных идей коммунизма
      We see the future of our country
      Мы видим грядущее нашей страны
      And the red banner of the glorious Fatherland
      И красному знамени славной Отчизны
      We will always be selflessly faithful!
      Мы будем всегда беззаветно верны!
      Hail, our free Fatherland
      Славься, Отечество наше свободное
      Friendship of peoples is a reliable stronghold!
      Дружбы народов надёжный оплот!
      Party of Lenin - the power of the people
      Партия Ленина - сила народная
      It leads us to the triumph of communism!
      Нас к торжеству коммунизма ведёт!

    • @TheAdhdGaming
      @TheAdhdGaming Рік тому

      math is free, getting hints/learning sometimes isnt.

    • @Buddahabrot
      @Buddahabrot Рік тому +3

      Yeah, now that I realize how expensive MATH-books are, this feels more and more like watching Robin Hood.😮😮

  • @caspermadlener4191
    @caspermadlener4191 Рік тому +41

    "Everything in this video can be derived from what is currently on screen."
    I have never seen this used before, but this is definitely the best way to establish the simplicity of the concept!

    • @APaleDot
      @APaleDot Рік тому +4

      Like the ancient Greeks

  • @kikivoorburg
    @kikivoorburg Рік тому +52

    Very excited to see this! Your introduction to VGA and STA were awesome, and I have no doubt this will be similar!
    Edit: and I should mention Zero to Geo is amazing too! Building up an entire field of mathematics from the ground up is no small feat!

  • @choochootraiin
    @choochootraiin Рік тому +17

    I took a graphics class before and discussed briefly about projective geometry. The whole things was kinda magical with the introduction of homogeneous coordinate that just kinda solve everything. Never thought how extended algebraic system could encapsulate all the geometric operations so elegantly... Thank you so much for opening my plebeian's mind

  • @angeldude101
    @angeldude101 Рік тому +55

    Not specific to this video, but I'd like to give a mention to the surprisingly consistent color scheme between your videos for the basis blades. They even have a near perfect match with the color scheme for the basis blades in a Swift Introduction to Spacetime Algebra, though with the e₀₁, e₀₂, and e₀₃ terms using the colors γ₁, γ₂, and γ₃ respectively, and the reverse. e₀ and γ₀, along with e₀₁₂₃ and γ₀₁₂₃, have completely different colors, but that's understandable since while they have similar relationships with the rest of the algebra, they also behave somewhat differently.
    For those not yet convinced of PGA, I recommend doing some reflection, and eventually you will see. ;)

    • @naturegirl1999
      @naturegirl1999 Рік тому

      Is reflection a pun? Nice! I like thinking of reflections as (180 degree=pi radian) rotations. Thinking of translations as rotation around a point of infinity is new to me, as is the point of infinity itself. I find PGA fascinating too, I’m not a mathematician, just like learning things every now and then

    • @angeldude101
      @angeldude101 Рік тому

      ​@@naturegirl1999 To be specific, a 180° rotation is a reflection across a "hyper-line" you could say. (Whatever a N-2 D subspace is when working in ND.)
      The further away said "hyper-line" is, scaling the angle down proportionally to the distance makes a rotation around said "hyper-line" become more and more straight and more closely resemble a translation more so than a rotation. A "point at infinity" (point being a "hyper-line" in 2D) is basically just taking the limit as the distance from this line approaches infinity. An odd quirk that makes more sense in elliptic geometry or when visualizing the N+1 dimensional embedding is that when the point in question actually "reaches" infinity, it becomes indistinguishable from a point at infinity in the exact opposite direction.

  • @averagecornenjoyer6348
    @averagecornenjoyer6348 Рік тому +8

    the part where you showed the code totally blew me away. i'm just speechless

  • @diribigal
    @diribigal Рік тому +27

    I was pretty familiar with VGA and Projective Geometry, but this video (especially the shot of all the different traditional formulas) is probably the best non-calculus argument for why GA is really useful, rather than merely fun/interesting. Excellent work!

  • @MattHudsonAtx
    @MattHudsonAtx Рік тому +4

    I keep coming back to this channel for more geometric algebra all the time. It's so clear.

  • @benp753
    @benp753 Рік тому +5

    @53:45 "it allows for a simple way to do n-dimensional rigid body dynamics"
    Now you're just flexing! I'm really looking forward to 7D video games with a realistic physics engine (that would of course be programmed for 2D then changing a single character to 7 at the beginning of the file). Geometric Algebra truly is powerful
    Thanks for this awesome video

  • @crochou8173
    @crochou8173 4 місяці тому +5

    21:28 we actually had to memorize this in my first year senior high. I could have cried

  • @suomeaboo
    @suomeaboo Рік тому +3

    You're the Geometric Algebra channel! Watching that video made me the most excited I've ever been about math!

  • @rodrigolopez3874
    @rodrigolopez3874 Рік тому +7

    I love it!!! I think I will spend some hours with my analytic geometry textbook redoing all the excercices with these new tools!!
    Thank you very much. This is awesome

  • @SplendidKunoichi
    @SplendidKunoichi Рік тому +6

    figuring out quaternions almost feels like unlocking the cordless drill of the physical sciences
    but this shit is literally magic

  • @jakersladder
    @jakersladder Рік тому +4

    So amazing! Thank you for all your work. In by opinion, your videos are the best source for approaching GA. This video makes me so excited because there is almost no approachable information on the different flavors of GA on UA-cam. I think the least amount of basic info available for any flavor is conformal geometric algebra. So I’m so excited to see if you will make a similar video for CGA. That being said, I get so pumped every time you upload a video and love what you are doing. Thank you so much!

  • @shahars3134
    @shahars3134 Рік тому +1

    Just came across this series and it has been a wonderful introduction to PGA. It’s so clear and I’m amazed how beautiful and elegant PGA is.

  • @MaxxTosh
    @MaxxTosh Рік тому +7

    Dude, thank you so much for all your hard work on this! Your OG GA video is one of my favorite math explainers of all time, and STA was up there too. I’m wondering what’s next, conformal GA?

  • @jhuyt-
    @jhuyt- Рік тому +2

    This is your best video yet, fantastic work!

  • @yegorwienski1236
    @yegorwienski1236 Рік тому +11

    Your videos are so great, thank you!

  • @AndrewBrownK
    @AndrewBrownK Рік тому +2

    51:38 and 51:53 are the absolute killer app for PGA. So dang excited

  • @AndrewBrownK
    @AndrewBrownK Рік тому +6

    1:45 I've also seen "Euclidean PGA" referred to as "Parabolic PGA" when contrasting "Elliptical PGA" and "Hyperbolic PGA". So in this way these are sometimes abbreviated PPGA, EPGA, and HPGA without "Euclidean" and "Elliptical" being ambiguous

    • @eflick
      @eflick Рік тому

      Thanks for the clarification 👌

  • @jeremyjedynak
    @jeremyjedynak Рік тому +4

    Another great video! Looking forward to a future one on Conformal GA!

  • @housamkak8005
    @housamkak8005 Рік тому +12

    Man you are the father of this topic on youtube by now. I really would like to see rigid body dynamics videos using pga. Amazing work I swear. How can I code that as well? U used an Algebra object, where was that defined?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +8

      Look into the bivector UA-cam channel, they have stuff on rigid body dynamics using PGA. The Algebra object was defined in the python package kingdon: github.com/tBuLi/kingdon

  • @d1namis
    @d1namis Рік тому +17

    I love PGA, it's a standard method in Russian School program, that is allowed to be used on Government Attestation Test to complete your school diploma. I love the simplistic approach to it in this video. We use a different notation, and our most used thing is formula for plane, normal and vector sum, and projection to 2D plane is a backbone to Vector Stereometrics. Things like perpendicularity and parallelism was always considered a time consuming process to formally notate at exams by PGA formulas and we was strongly advised to use traditional methods at that. I'm supper happy to watch this different view at that topic.

    • @onebronx
      @onebronx Рік тому +1

      Which schools teach PGA? It is definitely not a part of a standard high school curriculum, and even not a part of most university curriculums (unless, may be, you major in mathematics).

    • @d1namis
      @d1namis Рік тому +1

      @@onebronx in Russia it's a part of high school program. There is a separation: language education schools - "gymnasium", history and literature - "licey", and physics and mathematics - "physmat", there are also religion and sport focused schools as well, to specifically learn PGA in Russia you need to go do "physmat" schools or in "competetive math" classes in "gymnasium" or "licey" schools. We have right now 3 Government standard and licensed books for high school students about PGA and basic Vector Geometry. The one that i read was: Alternative ways of solving problems by Isaak Kushmir, Solving geometric problems with vector method - G.A. Klekovkin, and the most complete: Vectors at Exams - S.A. Shestakov. But all High schoolers is allowed to use PGA and Vector Geometry methods on Government Attestation Test. And small nuance about GAT - you need notate your solving process even if it's a test, because test question is usually "yes" or "no", but you can have a high variation of answers depend on method of solving. Enumeration Method is also valid, and you also allowed to use degrees and radian in answers. You can google: "примеры решения профильной математики с ЕГЭ" to look for some answers sheets.

    • @onebronx
      @onebronx Рік тому +2

      @@d1namisI looked into the last one (С.А Шестаков, Векторы на экзаменах. Векторный метод в стереометрии, 2005, available online), and I do not see any PGA there, just a standard vector algebra in R^3. The book tells nothing about multivectors, their different products (outer, geometric, "sandwiching"), projective space, linear space of lines, points/lines at infinity etc. Just a regular vector algebra (vector basis/coordinates, scalar product, dot product -- that's it), i.e. exactly what PGA tries to escape from.

    • @d1namis
      @d1namis Рік тому

      @@onebronx There is projections and infinite lines in that book, as far as i remember, but yes, most of that book is made for idiomatic solving thing approach.

    • @onebronx
      @onebronx Рік тому +2

      @@d1namis yes, there are projections in the book -- but those are just regular dot products, not projective spaces, big difference. There is no any Geometric Algebra in the book at all. I believe you just confused Geometric Algebra with Analytic Geometry (cartesian coordinates, lines, planes, conics etc).
      BTW, I also found a PDF of the Kushnir's book (Исаак Кушнир, Альтернативные способы решения задач (Геометрия), 2006) -- it is all regular planimetry and stereometry, no traces of PGA at all, too. And, as a participant of high school math olympiads and later a graduate of a polytechnical institute (not math major, but pretty math-heavy engineering, including computer graphics, where I'd certanly got benefits from GA), I never heard about [P]GA, Clifford algebras etc. Most probably only math majors and, may be, theroretical physicists studied them, but not high school/gymnasium/lyceum students.

  • @uwuzote
    @uwuzote Рік тому +2

    this is fire and lit my soul to learn as much as possible, thank you!

  • @oleg-avdeev
    @oleg-avdeev Рік тому +3

    This is incredible, thank you so much for doing these videos!

  • @TheJara123
    @TheJara123 Рік тому +1

    What a wonderful effort to bring down beautiful math to us...visuals..
    You are a math angel man!!

  • @andrean1086
    @andrean1086 Рік тому +6

    Waiting for CGA

  • @jacksonwilloughby7625
    @jacksonwilloughby7625 Рік тому +1

    It's really interesting to watch math videos as I progress through my studies. I can actually understand something now.

  • @tiripoulain
    @tiripoulain Рік тому +2

    This is awesome.

  • @YindiOfficial
    @YindiOfficial Рік тому +1

    you are TOO good at this oh my god

  • @TheSummoner
    @TheSummoner Рік тому +3

    What a treat!

  • @KipIngram
    @KipIngram Рік тому +1

    This is really remarkable stuff. I am working on a computing environment, based on a "souped up Forth" system, and I want to incorporate this stuff into it, along with several other things I've stumbled across. It's just a dream right now, but... we'll see.

  • @ebog4841
    @ebog4841 Рік тому +1

    YES!
    THANK YOU!
    this is the big one!
    Let's gooooooooooooooooo!

  • @evandrofilipe1526
    @evandrofilipe1526 Рік тому +2

    36:13
    What can you expect, these are different kinds of objects!
    **Anyway**
    48:45
    Get this man an ambulance that was brutal

  • @EvanMildenberger
    @EvanMildenberger Місяць тому +1

    Geometry highlights the intrinsic beauty of math!

  • @omargaber3122
    @omargaber3122 Рік тому +1

    Thank you from deep heart❤️

  • @BlackM3sh
    @BlackM3sh Рік тому

    21:26 There seems to have been a mistake where x and y got swapped. I plotted the point it in GeoGebra and it gave the wrong point, but on like a different line. I then tried switching the formula for x and y, and it then correctly projected the point onto the line.
    So seemingly the left expression is the y-value and right is the x-value.

  • @jakobthomsen1595
    @jakobthomsen1595 5 місяців тому +1

    Very elegant!

  • @ChaoticMagnet
    @ChaoticMagnet Рік тому +1

    Your videos are gold 🤩

  • @elidoz9522
    @elidoz9522 Рік тому +1

    woah, conformal geometric algebra might be just what I needed to become better at geometry
    finally I will be able transport my algebra skills to geometry in math competitions

  • @aprilschauer2545
    @aprilschauer2545 Рік тому +2

    Think I found a small caveat with something you said:
    9:29
    You say that the regressive product can be defined in terms of the geometric product, and suggest that “everything on the screen” is enough for this. I suppose there is a caveat which is that you also need a duality operator, which you understandably didn’t mention since it’s out of the scope of the video.
    As you said in your other very helpful video on the operations of GA, when a basis vector squares to 0, you have to use the hodge dual instead of the simpler pseudoscalar dual, if I understand correctly.
    In PGA, e0 squares to 0. So really you would have to also come up with a hodge dual table to use the regressive product in PGA, right?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      This whole thing with the dual and the regressive product is pretty messy in PGA. Yes, in this particular circumstance, you can't define the regressive product with purely the geometric product. However, once you have picked a basis (such as e1, e2, and e0 here), you can define the dual in terms of that basis and the geometric product, so "You can do everything with what's on the screen right here" is still true, because I showed the basis on screen as well. I guess I did cheat a little bit with including the regressive product in the statement about the geometric product, but I wanted to mention all of the other products being used without going into a long shpeal about basis-dependence right then. I probably should have put a note there.

    • @aprilschauer2545
      @aprilschauer2545 Рік тому +1

      @@sudgylacmoeThat’s totally fair! I think it could be a good topic for a short. Someone who watches this video and your other general video on the operations of GA would have enough info to make their own PGA implementation, which is great.

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      Yeah that other video was actually originally going to be a quick sidenote at the beginning of this video but then I realized it was getting way too long so I split it off into its own thing.

    • @aprilschauer2545
      @aprilschauer2545 Рік тому +1

      @@sudgylacmoe I actually find it to be the one I end up going back to most often because it’s so general! I think it’s good that it got its own video

  • @maxqutekerman907
    @maxqutekerman907 Рік тому +4

    Nice video. I hope you will eventually cover ideals of Clifford algebras and spinors! They might be hard to visualize though.

  • @dsgowo
    @dsgowo Рік тому +1

    I was waiting for this one!

  • @01binaryboy
    @01binaryboy Рік тому +1

    Finally started to understand GA thank you so much. Please enable thanks button

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      You can find that button in the description: www.patreon.com/sudgylacmoe

  • @oncedidactic
    @oncedidactic Рік тому +1

    Amazing video, thanks!!

  • @richardcoppin5332
    @richardcoppin5332 Рік тому +1

    One really cool observation is that the coefficient of e_0 is the (perpendicular) distance of the line/plane from the origin, multiplied by the magnitude of that line/plane;
    or conversely the perpendicular distance of a line from the origin is the coefficient of e_0 divided by the magnitude of the line, and similarly for a plane.

    • @angeldude101
      @angeldude101 9 місяців тому

      In general, the magnitude of the join of two normalized objects is the perpendicular distance between them. Taking the join of a point (like, say the origin) with a mirror (line in 2D, plane in 3D) gives a scalar, and the magnitude of a scalar is just its absolute value. If the point is the origin, all of the non-e0 components of the mirror get multiplied by 0, and the e0 component gets multiplied by 1. So the join of a mirror with the origin is 1 times the e0 component, plus a bunch of 0s, resulting in a scalar whose absolute value is there distance from that line to the origin.
      There are no coincidences in math; only special cases.

    • @davidhand9721
      @davidhand9721 8 місяців тому

      Oh snap, I just realized that the entire video went by without explaining how to compute a distance.

  • @map3935
    @map3935 Рік тому +2

    Great as always! Would you consider making a video about geometric calculus? It would be very interesting.

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      I've been asked this question enough now that I just added it as question 16 of my FAQ: ua-cam.com/users/postUgwGXciowesPuiRUlBJ4AaABCQ

    • @map3935
      @map3935 Рік тому

      @@sudgylacmoe Thanks for letting me know. Also I thought I was late and you wouldn't see my comment, it's nice that you check the comments on your videos once a while. Also I would love to see a geometric calculus series regardless of your mastery on it, I think it would be fun regardless of the number of mistakes or anything and you could just put a disclaimer at the start saying it is not a professional video but of course if you don't feel you're good enough no pressure.

  • @AriKath
    @AriKath Рік тому +1

    I'm excited!

  • @jexalinne5959
    @jexalinne5959 Рік тому +1

    13:35 Git yer MEAT PRODUCTS fresh OUTSIDE!! lmao im never gonna forget it now.
    (legitimately a fantastic and super informative video, i actually learned a lot)

  • @TheFerdi265
    @TheFerdi265 Рік тому +2

    I really need to recreate the PGA cube rotation code.
    This is absolutely amazing

    • @Saturos02
      @Saturos02 Рік тому +1

      Hey, I knew I had seen that username somewhere! I remember hoping for a more elegant and general framework some years ago in vector calculus class, and this seems really promising. Just having one set of general operations that will work in any dimension, no weird specifics like the cross product, it's definitely a much more intuitive and satisfactory approach. Would be interesting to see the different dimensional rotations you would get in the conformal extension.

    • @TheFerdi265
      @TheFerdi265 Рік тому +1

      @@Saturos02 What I nice suprise to see you here as well! Yeah, GA is something that has intrigued me for years, ever since I had seen the video on rotors and the paper on n-dimendional rigid body dynamics by Marc ten Bosch.
      I need to read into and experiment with it more, try and see if I can make some demoscene effects more cleanly with the PGA stuff.

    • @Saturos02
      @Saturos02 Рік тому

      @@TheFerdi265 Sounds like fun! I've only experimented a bit with fragment shaders, implemented a Möbius transform and some stuff. Didn't know demoscene was still actually a thing. I watch crystal dream 2 from time to time though, amazing time capsule :)

  • @moshyroth
    @moshyroth Рік тому +2

    Always looking forward to more geometric algebra lectures. Speaking of vectors, can we apply this topic to statistics?

  • @neoned71
    @neoned71 Рік тому +1

    Your content is amazing!! Eye opening to me and presumably to many!! Can you please do a video on where are we on explaining general relativity and quantum field theory using a flavour of geometric algebra? Maybe possible unification hope there? Would love to watch that from you. Thanks!!

  • @aleksanderjaworski1578
    @aleksanderjaworski1578 Рік тому +1

    Your videos are really good at exposition. To the point where one might fool oneself that one understood the content. Are there any exercises that you would recommend? Are you planning on composing a list of such exercises to verify one's knowledge?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      Not yet, but I'm planning on doing this when I eventually reach this point in From Zero to Geo.

  • @hosseinsadeghi4847
    @hosseinsadeghi4847 Рік тому +1

    Bro I truly live your videos.❤
    Can you tell us the name of application that you make the animation of your videos and the visual parts please?

  • @Tannz0rz
    @Tannz0rz Рік тому +2

    Are you going to create a video for CGA as well? Most of the concepts are similar so I presume it would be shorter than this video.

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      While I think this is a great idea, I currently don't know much CGA.

  • @Achrononmaster
    @Achrononmaster Рік тому +1

    A course on conformal GA would be awesome.

  • @96Vatras96
    @96Vatras96 Рік тому +1

    18:15 How did you get this result?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      ua-cam.com/video/2AKt6adG_OI/v-deo.html

  • @loganm2924
    @loganm2924 Рік тому +1

    Learning about projective algebraic geometry in class... come home and see this in my feed... maybe tomorrow :')

  • @gavintillman1884
    @gavintillman1884 Рік тому +1

    Great video. The penny hadn’t dropped until today that, because scaling doesn’t change anything in PGA, (A.B)B^-1 is essentially the same as (A.B)B. Neat! I’m not an experienced Discord user, I joined, but seem to be struggling to find the notes! Thanks.

  • @Jaylooker
    @Jaylooker Рік тому +1

    The rigid transformations look like group conjugations gng^-1 found in normal subgroups. Having projection be one operation also would simplify the Gram-Schmidt process. Projective geometry also works well with exterior algebra.

    • @ArrowofEntropy
      @ArrowofEntropy Рік тому +2

      Indeed, the conjugation we use in GA is the same as in group theory. For example in 3DPGA, rotors are elements of the (double cover of) the Special Euclidean group SE(3).

    • @ArrowofEntropy
      @ArrowofEntropy Рік тому +1

      Gram-Schmidt in GA is simply replaced by renormalizing your rotor, so there isn’t even a need for the projections done in the GM process. This has the advantage of keeping the bias smaller compared to GM since we don’t have to pick a favorite vector as our reference.

  • @pianochannel100
    @pianochannel100 7 місяців тому

    Span implies that you have a plane shape, how do we go from plane -> point? 9:44

    • @sudgylacmoe
      @sudgylacmoe  7 місяців тому

      The geometric interpretation of this linear space is completely different from the usual geometric interpretation of vectors as arrows. We instead think of vectors as lines (or as I describe later in the video, planes in 3D). The span of two lines is the set of all lines passing through their intersection, which for convenience we think of as just the point itself.

    • @pianochannel100
      @pianochannel100 7 місяців тому

      @@sudgylacmoe Ah excellent! Thank you so much!

  • @Al-xq4ec
    @Al-xq4ec 4 місяці тому +1

    What kind of dark magic was that? I am fucking amazed.

  • @gabitheancient7664
    @gabitheancient7664 Рік тому +1

    53:04 :0 that thing you told me when I asked about geometry problems using GA

  • @officiallyaninja
    @officiallyaninja Рік тому +4

    I assume this is the big video you've been teasing forever?

  • @jarredeagley1748
    @jarredeagley1748 Рік тому +1

    Why is it convention to write the second basis bivector as e20 instead of e02? Just ease of calculation?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      I picked e20 to make the correspondence with points simpler. It doesn't really matter what you pick as long as you are consistent.

    • @jarredeagley1748
      @jarredeagley1748 Рік тому

      @@sudgylacmoe Thanks! I glossed over that detail the first time I watched through this video and it confused me when I caught it this time.

  • @tommasoantonelli7176
    @tommasoantonelli7176 Рік тому +1

    Great content as always!
    Will you ever talk about Conformal Geometric Algebra in a video?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      I want to, but it will take a while since I currently don't know much.

    • @tommasoantonelli7176
      @tommasoantonelli7176 Рік тому

      @@sudgylacmoe That's fair, I was hoping you could make a video because I don't know much of that either 😅

  • @midou6104
    @midou6104 Рік тому

    17:06
    What is if the plan was curvy like a like it's ball or saddle

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      This would be the realm of elliptic or hyperbolic PGA, which I said at the beginning I wasn't going to cover.

    • @midou6104
      @midou6104 Рік тому

      @@sudgylacmoe
      Sorry maybe I did not pay attention

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      Oh I wasn't meaning to imply that you weren't

    • @midou6104
      @midou6104 Рік тому +1

      @@sudgylacmoe
      It's a great explainer I hope you win

  • @arthurreitz9540
    @arthurreitz9540 Рік тому +1

    This is so great, GA seems a bit clunky to me, but PGA is awesome
    Literally the vector representing the Kernel of a linear form, giving the hyperplan, which in itself gives the "projective" property (invariance by scalar multiplication)
    Also mid video I wondered if you could do circle and inversion, well now I'm happy 😊

    • @arthurreitz9540
      @arthurreitz9540 Рік тому

      Actually affine form
      And for the circles, i'd say quadratic forms ?

    • @ArrowofEntropy
      @ArrowofEntropy Рік тому

      A good thing to keep in mind is that the PGA mindset also carries over to all other GA’s. For example, also in ordinary 3D GA, you can think of vectors as planes *through the origin*, bivectors as lines *through the origin*, and the point as *the origin*. This plane based view makes it much easier IMHO to reason geometrically in any GA.

    • @angeldude101
      @angeldude101 Рік тому

      Circle inversion is just a special type of reflection, or perhaps reflections are just the special case of circle inversion when the circle in question has an infinite radius. In Conformal Geometric Algebra with the same interpretation as PGA (Most CGA sources treat grade-1 blades as points, though they're really 0-radius circles/spheres), grade-1 blades are circles/spheres, and can be reflected across just like a line/plane in PGA to get circle/sphere inversion.
      What most graphics programmers really care about though is scaling, which, at least for uniform scaling, can be achieved with two concentric circle/sphere inversions. In some cases, it may be useful to ignore most of CGA and instead just borrow its uniform scaling into PGA, which works since planes are just special cases of spheres, and so PGA is fully embedded withing CGA (though joins can be a tad weird if you try doing them the CGA way), and uniform scaling away from or towards a point keeps planes, lines, and points as planes, lines, and points.
      There is an alternate interpretation of CGA that lacks circles/spheres and has other objects in their place. It still has uniform scaling, though instead of the hyperbolic "boosts" that would result from two non-concentric circle/sphere inversions, it instead acts like a projection matrix, which is particularly useful when trying to use GA while taking advantage of the GPU.

  • @CouchTomato87
    @CouchTomato87 Рік тому +1

    Great video! I’ve noticed a ton of videos/lecture series on UA-cam are more focused on PGA than VGA. At some point could you do a comparison of VGA and PGA and what the benefits and downsides for each one are (and why you’d might want to use one over the other)?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +3

      I'll probably get there eventually in From Zero to Geo. However, here's a simple rule for this that works most of the time for PGA vs. VGA: If you care just about orientations and rotations around a single point, use VGA. If you want arbitrary orientations, rotations, and translations, use PGA.
      Also I find it funny how you say a ton of things on UA-cam are more focused on PGA when my whole channel up to this point has been almost VGA-exclusive.

    • @CouchTomato87
      @CouchTomato87 Рік тому +1

      @@sudgylacmoe haha yes I meant to say ‘other’ videos!

    • @angeldude101
      @angeldude101 9 місяців тому

      The biggest downsides of PGA are that the algebra gets bigger, and the fact that it requires you to abandon the notion of directions or points being grade-1 objects. The plane based view of PGA can actually be applied to VGA, giving mirrors and axes through the origin, but attempting to use the more traditional model for PGA requires a lot of extra, arguably unnecessary, structure that just complicates things further.

  • @emjizone
    @emjizone Рік тому

    16:10 @sudgylacmoe
    What if the lines have opposite directions?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      It will be the point at infinity in the other direction. (In fact, because these two points at infinity are scalar multiples of each other, in the homogeneous sense they represent the same point, so the meet here is the point at infinity in both directions.)

  • @JakobWierzbowski
    @JakobWierzbowski Рік тому +3

    Your intro sounds like a too-good-to-be-true ad 😀A thousand times yes. Better not turn out to be the Springfield mono-rail.

  • @kungfooman
    @kungfooman 28 днів тому

    16:19 To be fair, you did show the entirety of how you would do the regressive product in Linear Algebra, but only showed the Regressive Algebra symbol without any expansion, which would be quite long? Taking the dual of both points, outer product, dual again.

  • @taggosaurus
    @taggosaurus 11 місяців тому

    4:09 - Why does (2e2 + 2e0) represent the same line as (e2 + e0)? Doesn’t e0 shift the line? I think they should be two parallel lines, with the same vector being perpendicular to both of them.

    • @taggosaurus
      @taggosaurus 11 місяців тому

      Never mind, got it. You have to convert it to y + 1 = 0 to get it.

  • @AntiProtonBoy
    @AntiProtonBoy Рік тому

    Thanks for putting time into these videos. I have two questions: 1. You showed how to rotate geometry. Can these techniques implement shears? 2. Is conversion between PGA representation and 4x4 transformation matrices straight forward?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      1. In this case, no. PGA only does rigid transformations by design.
      2. Converting from a PGA rotor to a matrix is easy: See how the rotor affects the basis vectors, and that's the columns of your matrix. The other way is impossible in general because not all matrices are orthogonal.

  • @puqeko
    @puqeko Рік тому +5

    I'm interested in how you solved the overlapping transparent objects problem (mentioned at the end). Would you be open to sharing any hints on how you accomplished this? Either way, thank you for these great videos!

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +5

      The basic idea was to split up the shapes so that they wouldn't have any intersections, and then sorting them from back to front. The sorting is harder than you would think, and I did it by projecting the shapes onto the plane of the computer screen, finding a point in the intersection of the two shapes, and then seeing which of the two shapes is closer at that intersection point.

  • @theidioticbgilson1466
    @theidioticbgilson1466 Рік тому +2

    HYPE!!!!!!

  • @MultivectorAnalysis
    @MultivectorAnalysis Рік тому +1

    "You're a wizard, sudgy!"

  • @cmilkau
    @cmilkau Рік тому

    one concern i have with this inner product is that the same two lines yield a different inner product, depending on which coordinates they are represented by. In fact, you can always make the inner product equal to either 0 or 1 (however this would also change their magnitudes, so the definition of angles is unaffected)

  • @metachirality
    @metachirality Рік тому +2

    Im curious about how hyperbolic and elliptic PGA work.

    • @angeldude101
      @angeldude101 9 місяців тому

      Aside from "e0 doesn't contribute to the magnitude/inner product", pretty much everything applies as-is. Rotations are still rotations, and translations become translations in hyperbolic and elliptic space, which, like how Euclidean translations can be viewed as shears in the higher dimension, hyperbolic and elliptic translations become hyperbolic rotations and traditional rotations in the higher dimension.
      There are a few quirks of the geometry that can give potentially surprising results, like translating in elliptic geometry eventually getting you back to where you started, and 2D hyperbolic PGA having a noticeably finite "line at infinity", and points that can be said to be "beyond infinity". Also, while hyperbolic and elliptic geometry are more often visualized with stereographic projections, PGA actually favors the Beltrami-Klein model and gnomonic projection, which would get used automatically if using and existing plot intended for Euclidean PGA, so they may look different from how you might expect because of that, though they'd also look more like Euclidean PGA at the same time.

  • @Hector-bj3ls
    @Hector-bj3ls Рік тому +1

    Can't wait for chapter 5 now. I really like GA and I wish I was better at it.

  • @WaluigiisthekingASmith
    @WaluigiisthekingASmith Рік тому +1

    Finally the tease is over :)

  • @ywenp
    @ywenp Рік тому +1

    Very nice! I grasped the overview of PGA in some De Keninck's and Dorst's videos and books, but I find their style to be a bit impenetrable. Yours makes everything much clearer (eg. the profound reason why the *outer* product was actually appearing to *lower* the dimension of objects in PGA, which seemed backwards).
    One question: how would you compute the regressive product in PGA though? You can't just use A \/ B = (Ai /\ Bi) i^(-1) because i is non-invertible due to the degenerate metric.
    I know you mentioned a basis-dependent way of dualizing in your video on operators of GA, but is there a more principled way to do so in PGA?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      Annoyingly, in degenerate metrics, the dual actually *has* to be basis-dependent. So to calculate the dual and the regressive product in PGA you have to do something similar to what I showed in that video.

  • @NikolayMurzin
    @NikolayMurzin Рік тому +1

    Awesome video! Is it true then that in (3,1,1) GA (PGA + time vector) one can also do the whole Poincare group with rotors by adding Lorentz boosts? Is it the same as CGA?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      This is an active area of research, and I'm looking forward to seeing what is found out. I at least know it's not the same as CGA because CGA doesn't have a basis vector that squares to zero.

    • @NikolayMurzin
      @NikolayMurzin Рік тому

      @@sudgylacmoe But you can combine positive and negative vectors to make two independent null vectors (+)+(-) and (+)-(-), so choosing a single null turns {4,1,0} into {3,1,1} or {4,0,1}, and choosing both turns it into {3,0,2}, right?

    • @angeldude101
      @angeldude101 Рік тому +1

      ​@@NikolayMurzinWhile you can generate two null vectors from a positive and negative pair, those two null vectors aren't actually orthogonal to each other like they would be in Cl(3,0,2), nor would they be orthogonal to either of their terms like they would be in Cl(3,1,1) or Cl(4,0,1). They can still be interesting to examine on their own though and likely have some similarities.

  • @davidhand9721
    @davidhand9721 Рік тому +1

    But how do you calculate the regressive product? How does it relate to the geometric product?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      I originally was going to go into all of the details of how exactly to calculate all of the products in this video but it ended up getting way too long and split into its own video: ua-cam.com/video/2AKt6adG_OI/v-deo.html (this is timestamped to the part about the regressive product).

    • @davidhand9721
      @davidhand9721 Рік тому

      @@sudgylacmoe thanks!

  • @NonTwinBrothers
    @NonTwinBrothers Рік тому +2

    It actually took me a long while to realize that the symbols for meet (∧) and join (∨) look suspiciously similar to the symbols for set intersection (⋂), and set union (⋃) as they act accordingly. This may be obvious to some, but for myself it was a fun realization.
    (Well, I first realized for logical AND / OR, but it works here as well :)

    • @AkamiChannel
      @AkamiChannel Рік тому +1

      I didn't realize it! To help me remember, I imagined two people meeting face-to-face (up above ie ^) and "joining" down below (v)

    • @angeldude101
      @angeldude101 Рік тому

      This is why it upsets me that most GA libraries use ^ for the meet, & for the join, and | for the inner product. I mean, they literally use the symbols for AND (∧) and OR (∨), so naturally they should use the symbols for AND (&) and OR (|).

  • @chokza0238
    @chokza0238 Рік тому +1

    I think it could be interesting if you could do a video about complexification of real vector spaces and its properties with hermitian product

  • @Rubikorigami
    @Rubikorigami Рік тому +1

    Ooooo, loved the video ! Really nice and thorough, really helped me wrap my mind around it.
    One thing stands out though. I've been reading Doran and Lasenby's Geometric Algebra for Physicists, and in there they define the extra vector we add to get PGA as having magnitude +1 rather than 0. I'm having trouble wrapping my mind around what that changes, except for the fact that they don't use any kind of magnitude in the corresponding chapter. Do you have any pointers on this ? I'm not even sure how I could make the jump between both representations, or if it's even productive to do so

    • @angeldude101
      @angeldude101 Рік тому +1

      If the standard euclidean bases square to +1, then adding an additional basis vector that squares to +1 results in elliptic PGA, which is geometry on the surface of a hemisphere where opposing points on the equator are considered the same point. Make the basis vector's square -1 and you get hyperbolic PGA, letting you do geometry on the surface of a hyperboloid, whose "translations" look suspiciously like Lorentz boosts. If you're not on a hyperboloid or hyper-hemisphere and would rather stick to the familiar flat euclidean space, then the extra basis vector should square to 0. (Or you could add multiple additional basis vectors which have a linear combination that squares to 0, which is what's done in CGA.)

    • @AkamiChannel
      @AkamiChannel Рік тому

      I think the magnitude is +1, but it squares to 0. If this seems odd, consider the 2x2 matrix of form [0, a, 0, 0]. It's not just the 0 matrix, but when you square it, you do get the 0 matrix. Note that this leads to an algebra where things are generally non-invertible. I wonder if there is then a connection to the sedenions. Many view this non-invertibility as a huge negative "feature," but when you think about it, the derivative as an operation is not invertible (thus we add a +C when integrating), but clearly the derivative is an important operation! For more info, check out dual numbers online. Also, Wildberger has some interesting related videos in his "Famous Math Problems" playlist.

    • @AkamiChannel
      @AkamiChannel Рік тому

      @@angeldude101but I thought quaternion i j and k's square to -1 and this forms a unit algebra that is the double cover of the space of rotations in 3D (SO(3)), thus not a hyperbolic space at all.

    • @angeldude101
      @angeldude101 Рік тому

      @@AkamiChannel Quaternions do square to -1. They're also _not_ the basis of their algebra. They're the even subalgeba of Cl(3), which has 3 basis vectors that square to +1. Since the basis vectors all have the same square, the products of two of them all square to -1 and thus generate rotations. If one of the basis vectors squares to +1 and another squared to -1, then their product squares to +1 resulting in hyperbolic rotations. If either of them square to 0, then you get translations as seen in this video.

  • @7177YT
    @7177YT Рік тому +1

    Cool!❤

  • @lame_lexem
    @lame_lexem Рік тому +1

    this is a great video and demonstration of the basis for PGA, but i was wondering how this framework applies to real world problems, and the demo in the end of the video is a great example of that, but i would like to see more examples like maybe a textbook problems what are hard to solve using classic tools 🤔

    • @bivector
      @bivector Рік тому +1

      A tutorial at SIBGRAPI covered n-dimensional rigid body kinematics and dynamics in PGA : ua-cam.com/play/PLsSPBzvBkYjxrsTOr0KLDilkZaw7UE2Vc.html

  • @xelaxander
    @xelaxander Рік тому +1

    This feels like the ultimate life hack!

  • @joeeeee8738
    @joeeeee8738 Рік тому +1

    Great video! In 3D, what if 2 lines/3 planes don't intersect?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      Two lines usually don't intersect in 3D so you can't directly use the outer product to find the intersection point even if it does exist. For 3 planes, you'll get a point at infinity.

    • @angeldude101
      @angeldude101 Рік тому

      2 lines don't intersect in 3D euclidean space. When thinking about the higher dimensional embedding, the line is effectively a plane passing through the focal point for the 3D projection. Since that focal point is effectively the perspective from which you view the space, the plane through it appears simply as a line. This focal point can be thought of as your "eye," and also happens to often be written as "I."
      So where do two skew lines intersect? Your "I", aka the pseudoscalar.
      If you have 3 planes that are all parallel, taking their meet would give 0 not because they don't intersect, but because they all intersect at the same line at infinity, rather than just a point.

  • @PaulMurrayCanberra
    @PaulMurrayCanberra Рік тому

    Ok. Problem at about 4:30. If 2 times the coefficients gives us the same line, how can we unambiguously talk about a line having a magnitude?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      There are two different objects we're dealing with here:
      1. Geometric lines
      2. Vectors in the linear space of lines
      Everything in 2 represents something in 1, but this map is not injective. We have multiple vectors that represent the same line.

  • @nicholasparkin6054
    @nicholasparkin6054 4 місяці тому

    Hi Sudgylacmoe, do you plan to cover Conformal Geometric algebra?

    • @sudgylacmoe
      @sudgylacmoe  4 місяці тому

      At the current moment, no, but it is a subject I want to cover eventually. The main issue is that I just don't know much about it.

  • @alphalunamare
    @alphalunamare Рік тому +1

    ok you lost me at 2:40 ...it's like going to school again waiting for the penny to drop whilst reading a book that is supposed to be obvious. 2:50 Is x vertical or horizontal in this display?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      x is horizontal. The vector e1 represents the line x = 0, which is vertical.

    • @alphalunamare
      @alphalunamare Рік тому +1

      @@sudgylacmoe Thank you for the timely clarification, I must have had a brain fade! I totally get it now! :-)

  • @pianochannel100
    @pianochannel100 7 місяців тому

    5:32 this is a special case I believe. Only true when |a| = |b| = |1|

  • @Bolpat
    @Bolpat Рік тому +1

    *Is there an operator symbol for the geometric product?* It’s probably a stupid question. (I mean like + is the operator symbol for addition.) Because × is taken, ⋅ is taken, * or ∗ are essentially taken as well, so is there really no operator symbol for the geometric product?

    • @sudgylacmoe
      @sudgylacmoe  Рік тому +1

      In handwritten math, I never use a symbol for it. When programming I use *.

    • @Bolpat
      @Bolpat Рік тому +1

      @@sudgylacmoe Programming is probably the only context where you absolutely must have one.
      But good to know that I'm not crazy/stupid for not finding one somewhere online.
      Thanks for your response.

  • @strangeWaters
    @strangeWaters Рік тому +1

    I've wondered how PGA would look if you stopped normalizing everything. I know in Lengyel's version, non-normalized points act like point masses, and addition of non-normalized points describes the center of mass

    • @sudgylacmoe
      @sudgylacmoe  Рік тому

      That works in this version as well, even for other objects like lines and planes.

  • @guidosalescalvano9862
    @guidosalescalvano9862 7 місяців тому +1

    How do you calculate a dual?

    • @sudgylacmoe
      @sudgylacmoe  7 місяців тому

      I made a video talking about many of the operations in geometric algebra. Here it is timestamped to the section about duals: ua-cam.com/video/2AKt6adG_OI/v-deo.html

  • @davidhand9721
    @davidhand9721 8 місяців тому

    Any ideas about how to go about extending PGA into spacetime a la STA? It's easy enough to think of geometrically, with time-like lines forming object paths and space-like planes being full 3D volumes. However in implementation, there are a number of stumbling blocks I can anticipate, starting with how to blend the two concepts of vector. VGA/STA have vectors that indicate points/events with the coordinates equal to their components, whereas in PGA, vectors are equations that involve the coordinates, and the objects are formed from all points for which the equation equals zero. Very different concepts, and I'm not quite sure how to bridge them. Where does the metric fit, i.e. which basis vector(s) need to square negative in order to make all the transformations work?
    If I could fill in some of the blanks, I think it could be really interesting. You would be able to capture an object's motion through spacetime as an exponential rotor/motor, and maybe formulate forces that way.

    • @sudgylacmoe
      @sudgylacmoe  8 місяців тому

      This is an active area of research! I don't know much about it, but I do know that spacetime events are represented using pseudovectors, similar to how points are represented using pseudovectors in normal PGA.