Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Introduction Alg`ebre de Grassmann-Cayley math´ematiques appliqu´ees Alg`ebre de Grassmann-Cayley : • cas particulier des alg`ebres g´eom´etriques (geometric algebra) Vincent Nozick • englobe les outils de g´eom´etrie classique (de Rn) • de nouveaux op´erateurs • application dans le jeu vid´eo et la vision par ordinateur VincentNozick Alg`ebredeGrassmann-Cayley 1/53 VincentNozick Alg`ebredeGrassmann-Cayley 2/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Introduction Introduction alg`ebre = espace vectoriel et multiplication (cid:124) (cid:123)(cid:122) (cid:125) Espace vectoriel de Rn : addition Ensemble de vecteurs muni d’op´erations sur les vecteurs. multiplication scalaire Propri´et´es : Propri´et´es : (a,b,c ∈Rn, α ∈R) • le produit doit ˆetre associatif (a×b)×c =a×(b×c) • addition de vecteurs : a= b+c ? • pas d’obligation concernant la commutativit´e a×b =b×a • multiplication par un scalaire : a =αb • distributivit´e : α et β scalaires : • distributive sur l’addition : α(a+b) =αa+αb α(a+b) =αa+αb (α+β)a=αa+βa VincentNozick Alg`ebredeGrassmann-Cayley 3/53 VincentNozick Alg`ebredeGrassmann-Cayley 4/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Introduction Alg`ebre de Grassmann-Cayley Hermann Grassmann Exemples : progressive et regressive product (1844). • les nombres r´eels R. • les nombres complexes C. • les polynˆomes. Arthur Cayley (1821-1895) • les matrices. apllications des coordonn´ees homog`enes. • les quaternions. • ... David Hestenes (1933 ∼) remet l’alg`ebre g´eom´etrique au gouˆt du jour. VincentNozick Alg`ebredeGrassmann-Cayley 5/53 VincentNozick Alg`ebredeGrassmann-Cayley 6/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Wedge Product Scalaires Introduction : • outer / wedge product (en) ↔ produit ext´erieur (fr) Multiplication scalaire : • not´e a∧b (lire a “wedge” b, ou bien a “ext´erieur” b) soient α,β ∈R (scalaires) et a∈Rn (un vecteur) Propri´et´e principale : • a∧b exprime la surface (orient´ee) du parall´elogramme form´e α∧β =β∧α =βα par a et b. α∧a =a∧α = αa → multiplication standard • caract`ere orient´e : a∧b =−b∧a VincentNozick Alg`ebredeGrassmann-Cayley 7/53 VincentNozick Alg`ebredeGrassmann-Cayley 8/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Anticommutativit´e Mise `a l’´echelle Antisym´etrie : a∧b =−b∧a (propri´et´e la plus importante) Propri´et´e : Propri´et´e : a∧a =−a∧a ⇒ a∧a = 0 (αa)∧b =a∧(αb) =α(a∧b) VincentNozick Alg`ebredeGrassmann-Cayley 9/53 VincentNozick Alg`ebredeGrassmann-Cayley 10/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Distributivit´e soient α,β ∈R et a,b,c ∈Rn Propri´et´e : Multiplication scalaire : α∧β =β∧α =βα β∧a =a∧β =βa Antisym´etrie : a∧b =−b∧a (anticommutativit´e) ⇒a∧a= 0 Mise `a l’´echelle : a∧(βb) =β(a∧b) Distributivit´e : a∧(b+c) = (a∧b)+(a∧c) a∧(b+c) = (a∧b)+(a∧c) (a+b)∧c = (a∧c)+(b∧c) Associativit´e : (a∧b)∧c =a∧(b∧c) (alg`ebre) VincentNozick Alg`ebredeGrassmann-Cayley 11/53 VincentNozick Alg`ebredeGrassmann-Cayley 12/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Bivecteur Bivecteur en 2D D´efinition : (cid:18) (cid:19) (cid:18) (cid:19) Le wedge de deux vecteurs a et b de Rn donne un bivecteur a∧b, a = ax =a e +a e b = bx =b e +b e a x 1 y 2 b x 1 y 2 que l’on peut repr´esenter par une surface orient´ee : y y a∧b = (a e +a e ) ∧ (b e +b e ) x 1 y 2 x 1 y 2 = (a b )(e ∧e ) + (a b )(e ∧e ) x x 1 1 x y 1 2 + (a b )(e ∧e )+ (a b )(e ∧e ) y x 2 1 y y 2 2 = (a b −a b )(e ∧e ) x y y x 1 2 = (a b −a b )e x y y x 12 VincentNozick Alg`ebredeGrassmann-Cayley 13/53 VincentNozick Alg`ebredeGrassmann-Cayley 14/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Bivecteur Trivecteur Bivecteur en 3D: a b x x D´efinition : a = ay et b = by Le wedge de trois vecteurs a, b et c de Rn donne un trivecteur a b z z a∧b∧c, que l’on peut repr´esenter par un volume orient´e : a∧b = (a b −a b ) e +(a b −a b ) e +(a b −a b ) e x y y x 12 x z z x 13 y z z y 23 Remarques : • le bivecteur de R3 a∧b poss`ede 3 composantes. • dans R3, le wedge product correspond au produit vectoriel. (cid:44)→ bivecteur souvent confondu avec le vecteur. (cid:44)→ le produit vectoriel n’est pas associatif (a×b)×c(cid:54)=a×(b×c) (cid:44)→ le wedge est associatif et d´efini dans toutes les dimensions. VincentNozick Alg`ebredeGrassmann-Cayley 15/53 VincentNozick Alg`ebredeGrassmann-Cayley 16/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Trivecteur Trivecteur Trivecteur en 2D : soient trois vecteurs a, b et c de R2, d´ecompos´es selon les vecteurs Trivecteur en 3D: de bases (e1,e2) : a b c x x x (cid:18) a (cid:19) (cid:18) b (cid:19) (cid:18) c (cid:19) a= ay b = by et c = cy a = x b = x et c = x a b c a b c z z z y y y on a : (cid:16) (cid:17) a∧b∧c = c (a b −a b )+c (a b −a b )+c (a b −a b ) e z x y y x y x z z x x y z z y 123 a∧b∧c = (a e +a e ) ∧ (b e +b e ) ∧ (c e +c e ) x 1 y 2 x 1 y 2 x 1 y 2 a∧b ∧ c = (a b −a b )(e ∧e ) ∧ (c e +c e ) x y y x 1 2 x 1 y 2 = c (a b −a b )(e ∧e ∧e ) x x y y x 1 2 1 +cy(axby −aybx)(e1∧e2∧e2) Remarque : = 0 le trivecteur de R3 a∧b∧c n’a qu’une composante. ⇒ pas de trivecteurs dans R2. VincentNozick Alg`ebredeGrassmann-Cayley 17/53 VincentNozick Alg`ebredeGrassmann-Cayley 18/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Trivecteur k-blade k-blade: g´en´eralisation des scalaires, vecteurs, bivecteurs, trivecteurs, ... Produit mixte : (en 3D seulement) Grade d’une blade: nombre de vecteurs qu’il faut wedger pour obtenir l’entit´e voulue. a∧b∧c ⇔ (a×b)·c scalar → 0-blade ou` × est le produit vectoriel (de R3) et · est le produit scalaire. a → 1-blade a∧b → 2-blade a∧b∧c → 3-blade . . . . . . VincentNozick Alg`ebredeGrassmann-Cayley 19/53 VincentNozick Alg`ebredeGrassmann-Cayley 20/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Bases Propri´et´es des bases EnnD,lenombredebasesd’unk-vecteurestlecoefficientbinomial: En 4D (utilis´e dans P3) : (cid:18) (cid:19) n n! = k k!(n−k)! 1 scalaire (1) (grade 0) On a donc au total 2n bases. 4 vecteurs (e1,e2,e3,e4) (grade 1) 6 bivecteurs (e12,e13,e14,e23,e24,e34) (grade 2) dimension nombre de vecteurs ind´ependants de la base du k-blade 4 trivecteurs (e123,e124,e134,e234) (grade 3) 2 1 2 1 3 1 3 3 1 1 quadvecteur (e1234) (grade 4) 4 1 4 6 4 1 5 1 5 10 10 5 1 VincentNozick Alg`ebredeGrassmann-Cayley 21/53 VincentNozick Alg`ebredeGrassmann-Cayley 22/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Les bases duales Bases et bases duales de P3 (4D) 1 scalar 1 anti-quadvector (grade 0) Propri´et´e : e{i}∧e{i} =e1···n (1) (e1234) 4 vectors 4 anti-trivectors (grade 1) En 4D : (e1,e2,e3,e4) (e123,e124,e134,e234) e12= e34 6 bivectors 6 anti-bivectors (grade 2) e =−e e =−e e =−e 1 234 13 24 123 4 (e12,e13,e14,e23,e24,e34) (e12,e13,e14,e23,e24,e34) e = e e = e e = e 2 134 14 23 124 3 e3=−e124 e23= e14 e134=−e2 4 trivectors 4 anti-vectors (grade 3) e = e e =−e e = e 4 123 24 13 234 1 (e123,e124,e134,e234) (e1,e2,e3,e4) e = e 34 12 1 quadvector 1 anti-scalar (grade 4) (e1234) (1) VincentNozick Alg`ebredeGrassmann-Cayley 23/53 VincentNozick Alg`ebredeGrassmann-Cayley 24/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Wedge Product sur les bases duales Anti-wedge Product Introduction : • regressive / anti-wedge product (en) • not´e u∨v (lire u “anti-wedge” v) • propri´et´e : u∨v =u∧v Vecteurs et anti-vecteurs : Anti-wedge Product : (a e +a e +a e )∧(b e +b e +b e ) = (a b +a b +a b )e 1 1 2 2 3 3 1 1 2 2 3 3 1 1 2 2 3 3 123 Poss`ede les mˆemes propri´et´es que le wedge product mais sur les bases duales. (cid:44)→ ´evoque clairement le produit scalaire. Notations des bases : e ∨e ∨e → e 1 2 3 123 e ∨e ∨e → e 1 2 4 124 e ∨e ∨e → e 1 3 4 134 e ∨e ∨e → e 2 3 4 234 VincentNozick Alg`ebredeGrassmann-Cayley 25/53 VincentNozick Alg`ebredeGrassmann-Cayley 26/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Grade Grade wedge product : k-blade∧j-blade= (k+j)-blade anti-wedge product : k-blade∨j-blade= (k+j −n)-blade Wedge product : k-blade∧j-blade = (k+j)-blade Exemples dans P3 (4D) : Anti-wedge product : k-blade∨j-blade = (k+j −n)-blade 1-blade ∧ 2-blade = 3-blade vecteur bivecteur trivecteur 1-blade ∨ 3-blade = 0-blade anti-trivecteur anti-vecteur anti-quadvecteur vecteur trivecteur scalaire VincentNozick Alg`ebredeGrassmann-Cayley 27/53 VincentNozick Alg`ebredeGrassmann-Cayley 28/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Anti-wedge Mod`ele Homog`ene en 2D Repr´esentation homog`ene: coordonn´ees coordonn´ees Exemples 4D : cart´esiennes homog`enes • e ∨e =e ∧e =e =e (cid:44)→R2 (cid:44)→P2 1 2 1 2 12 34 • e ∨e = e ∧e = e =e 23 1 23 1 123 4 (cid:18) (cid:19) x • e ∨e =e ∧e = 0 x 23 13 23 13 x = x = y y • e1∨e234 =e1∧e234 =e1234 =1 w avec : • w (cid:54)= 0 pour un point fini. • w = 0 pour un point `a l’infini. VincentNozick Alg`ebredeGrassmann-Cayley 29/53 VincentNozick Alg`ebredeGrassmann-Cayley 30/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Droites Droites Droite dans P2 : l =a∧b l =a∧b =l e +l e +l e 1 12 2 13 3 23 V´erifications : • l∧a=a∧b∧a = 0 ⇒ a∈l x =xe +ye +we 1 2 3 • l∧b =a∧b∧b = 0 ⇒b ∈l • soit x ∈l → x = a+α(b−a)(∗) : Le produit l =a∧b repr´esente la droite passant par a et b : en effet, pour un point x ∈l, on a l∧x = 0, soit : (cid:0) (cid:1) l∧x = l∧ a+α(b−a) = l∧a+αl∧b−αl∧a (wl −yl +xl )e = 0 1 2 3 123 = 0 qui est bien l’´equation d’une droite en 2D (forme Hessienne). (*)pouraetbayantlamˆemecoord.homog`ene. VincentNozick Alg`ebredeGrassmann-Cayley 31/53 VincentNozick Alg`ebredeGrassmann-Cayley 32/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Droites Intersections x =l ∨l =x e +x e +x e =x(cid:48)e +x(cid:48)e +x(cid:48)e a b 1 12 2 13 3 23 1 1 2 2 3 3 D´eg´en´erescences : l =a∧b Intersection dans P2 : Le produit x =l ∨l repr´esente l’intersection des droites l et l : a b a b • en effet, pour une droite l passant par x, on a l∨x = 0, soit • si les points a et/ou b sont `a l’infini : ¸ca fonctionne encore. • si les points a et b sont confondus : l =a∧a = (0,0,0)(cid:62) (u l −u l +u l )e = 0 x 1 y 2 w 3 123 (cid:44)→droite d´eg´en´er´e de P2 qui est bien l’´equation d’une droite en 2D(forme Hessienne). • Par ailleurs, on a bien : • x∨l =l ∨l ∨l =0 ⇒ x∈l a a b a a • x∨l =l ∨l ∨l =0 ⇒ x∈l b a b b b VincentNozick Alg`ebredeGrassmann-Cayley 33/53 VincentNozick Alg`ebredeGrassmann-Cayley 34/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Intersections Bilan P2 Objets : point ∧ point = droite D´eg´en´erescences : droite ∨ droite = point intersection x =l ∨l a b Propri´et´es : point ∧ droite = 0 → point ∈ droite • si les droites la et lb sont parall`eles : x est un point `a l’infini droite ∧ point = 0 → point ∈ droite (cid:44)→ x = (x,y,0)(cid:62) point ∨ droite = 0 → point ∈ droite • si les droites l et l sont confondus : x =l ∨l = (0,0,0)(cid:62) droite ∨ point = 0 → point ∈ droite a b a a (cid:44)→point d´eg´en´er´e de P2 Remarque : x ∈l peut s’´ecrire des 2 fac¸ons : x∧l = 0 e et x∨l = 0 e 123 123 VincentNozick Alg`ebredeGrassmann-Cayley 35/53 VincentNozick Alg`ebredeGrassmann-Cayley 36/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Distance point/droite Mod`ele Homog`ene en 2D l = l e +l e +l e x =xe +ye +we Formules explicites : 1 12 2 13 3 23 1 2 3 Points : x = xe + ye + we 1 2 3 l∧x =wl −yl +xl = 0 1 2 3 x(cid:48) = x(cid:48)e + y(cid:48)e + w(cid:48)e 1 2 3 Line : l = l e + l e + l e 1 12 2 13 3 23 Distance point / droite : d =l∧x ⊥ x∧x(cid:48) = (xy(cid:48)−x(cid:48)y)e +(xz(cid:48)−x(cid:48)z)e +(yw(cid:48)−w(cid:48)y)e Sous 2 conditions : 12 13 23 • forme Hessienne normalis´ee : (cid:107)(l2,l3)(cid:62)(cid:107)2 = 1 l∧x = (wl1−yl2+xl3)e123 • coordonn´ee homog`ene `a 1 : w = 1 VincentNozick Alg`ebredeGrassmann-Cayley 37/53 VincentNozick Alg`ebredeGrassmann-Cayley 38/53 Wedgeproduct k-blades Basesduales P2 P3 Applications Wedgeproduct k-blades Basesduales P2 P3 Applications Mod`ele Homog`ene en 3D Droites Repr´esentation homog`ene : coordonn´ees coordonn´ees Droites de P3 : cart´esiennes homog`enes (cid:44)→ R3 (cid:44)→ P3 l =a∧b =l e +l e +l e +l e +l e +l e 1 12 2 13 3 14 4 23 5 24 6 34 x x y x = y x = Droites de Plu¨cker : z z w L={u :v} =(cid:8)(l ,l ,l )(cid:62) : (−l ,l ,−l )(cid:62)(cid:9) 3 5 6 4 2 1 avec : • w (cid:54)= 0 pour un point fini. • w = 0 pour un point `a l’infini. VincentNozick Alg`ebredeGrassmann-Cayley 39/53 VincentNozick Alg`ebredeGrassmann-Cayley 40/53
Description: