{VERSION 6 0 "IBM INTEL NT" "6.0" } {USTYLETAB {CSTYLE "Maple Input" -1 0 "Courier" 0 1 255 0 0 1 0 1 0 0 1 0 0 0 0 1 }{CSTYLE "2D Math" -1 2 "Times" 0 1 0 0 0 0 0 0 2 0 0 0 0 0 0 1 }{CSTYLE "2D Output" 2 20 "" 0 1 0 0 255 1 0 0 0 0 0 0 0 0 0 1 } {CSTYLE "" -1 256 "" 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 }{PSTYLE "Normal " -1 0 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Text Output" -1 6 1 {CSTYLE "" -1 -1 "Courier" 1 10 0 0 255 1 2 2 2 2 2 1 2 1 3 1 }1 1 0 0 0 0 1 0 1 0 2 2 0 1 }{PSTYLE "Maple Output" -1 11 1 {CSTYLE "" -1 -1 "Times" 1 12 0 0 0 1 2 2 2 2 2 2 1 1 1 1 }3 3 0 0 0 0 1 0 1 0 2 2 0 1 }} {SECT 0 {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "restart:\nwith(GfG); " }}{PARA 6 "" 1 "" {TEXT -1 71 "GfG - Groebner for Grassmann 0.3 beta (December 20, 2007) says Hello..." }}{PARA 6 "" 1 "" {TEXT -1 21 "22 \+ functions exported" }}{PARA 6 "" 1 "" {TEXT -1 81 "===>If you find thi s packages useful, please let us know about your derived work." }} {PARA 6 "" 1 "" {TEXT -1 106 "===>You can contact us at http://math.tn tech.edu/rafal/ or http://clifford.physik.uni-konstanz.de/~fauser/" }} {PARA 6 "" 1 "" {TEXT -1 44 "Clifford package with 84 functions loaded ..." }}{PARA 6 "" 1 "" {TEXT -1 83 "Increase verbosity by infolevel[`f unction`]=val -- use online help > ?Bigebra[help]" }}{PARA 6 "" 1 "" {TEXT -1 43 "Bigebra package with 33 functions loaded..." }}{PARA 11 " " 1 "" {XPPMATH 20 "6#79%-CommonFactorG%$DegG%(GDivideG%(GGbasisG%%GLC MG%(GReduceG%'GSpolyG%'InvDegG%'InvLexG%*InvRevLexG%'LCoeffG%%LMonG%&L TermG%$LexG%'RevLexG%-isadmissibleG%)leftmostG%*makealphaG%+minGGbasis G%)multidegG%*rightmostG%&tildeG%(versionG" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 27 "with(linalg):\nB:=diag(0$9):" }}}{EXCHG {PARA 0 "> \+ " 0 "" {MPLTEXT 1 0 31 "eval(makealiases(9,'ordered')):" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 10 "version();" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%L+++++++++++++++++++++++++++++++++++++++++++G" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%fpGfG~-~Groebner~for~Grassmann~-~A~Ma ple~11~Package~for~Groebner~Bases~for~Grassmann~AlgebrasG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%`pLast~revised:~December~20,~2007~(Source~file :~Groebner.for.Grassmann_M11_20xii07.mws)G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%_oCopyright~2006-2008~by~Rafal~Ablamowicz~(*)~and~Bert fried~Fauser~($)G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%!G" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#%H(*)~Department~of~Mathematics,~Box~5054G" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#%gn~~~~Tennessee~Technological~Univers ity,~Cookeville,~TN~38505G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%U~~~~te l:~USA~(931)~372-3662,~fax:~USA~(931)~372-6353G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%;~~~~rablamowicz@tntech.eduG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%B~~~~http://math.tntech.edu/rafal/G" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#%!G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%Y($)~Universi t\"at~Konstanz,~Fachbereich~Physik,~Fach~M678G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%<~~~~78457~Konstanz,~GermanyG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%E~~~~Bertfried.Fauser@uni-konstanz.deG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%T~~~~http://clifford.physik.uni-konstanz.de/|irfa user/G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%B~~~~http://math.tntech.edu /rafal/G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%!G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%`p++++++++++++This~is~GfG~-~Groebner~for~Grassmann~for ~Maple~11~version~0.3++++++++++++G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 10 "Example 1:" } }}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "cbas:=cbasis(3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%cbasG7*%#IdG%#e1G%#e2G%#e3G%$e12G%$e13G%$ e23G%%e123G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 20 "map(makealph a,cbas);" }}{PARA 6 "" 1 "" {TEXT -1 122 "Cliplus has been loaded. Def initions for type/climon and type/clipolynom now include &C and &C[K]. Type ?cliprod for help." }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*-%'RTABL EG6%\"*o:7^\"-%'VECTORG6#7+\"\"!F,F,F,F,F,F,F,F,&%'VectorG6#%$rowG-F%6 %\"*o<7^\"-F)6#7+\"\"\"F,F,F,F,F,F,F,F,F--F%6%\"*3oM^\"-F)6#7+F,F7F,F, F,F,F,F,F,F--F%6%\"*3qM^\"-F)6#7+F,F,F7F,F,F,F,F,F,F--F%6%\"*3sM^\"-F) 6#7+F7F7F,F,F,F,F,F,F,F--F%6%\"*3uM^\"-F)6#7+F7F,F7F,F,F,F,F,F,F--F%6% \"*3wM^\"-F)6#7+F,F7F7F,F,F,F,F,F,F--F%6%\"*3yM^\"-F)6#7+F7F7F7F,F,F,F ,F,F,F-" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 99 "Example 2: Grassmann monomials sorted fr om the greatest to the smallest according to each order.\n\n" }{TEXT 256 232 "Definition: We say that an order T on Grassmann monomials is \+ admissible if\n\n1. m > 1 for every monomial m in the Grassmann basis \n2. If m_2 > m_1 then m_l m_2 m_r > m_l m_1 m_r for every m_1, m_2, m _l, and m_r in the Grassmann basis\n" }{TEXT -1 3429 "\nIn the followi ng we sort Grassmann monomials in the basis for /\\ R^3 according to e ach monomial order. Notice that:\n\n1. RevLex, InvRevLex, and InvDeg[L ex] orders are NOT admissible because they violate the first condition that m > 1 for every m in the Grassmann basis.\n\nNOTE: Not all of th ese orders below are admissible, for example, RevLex, InvRevLex, and I nvDeg[Lex] orders are NOT admissible because they violate the first co ndition that m > 1 for every m in the Grassmann basis. The remaining o rders are admissible. Check procedure 'isadmissible'\n\nLet a monomial m = e^alpha = (e1^alpha1 &w e2^alpha2) &w (...) &w (e9^alpha9) where \+ alpha = [alpha1, alpha2, ..., alpha9]. Of course, each alphai = 0 or 1 as ei^alphai = &w(ei,ei,...,ei) = 0 if alphai >=2. We also agree that ei^0 = Id in the Grassmann algebra /\\. We will refer to the list alp ha also as a vector. \n\nIn the following let m1 = e^alpha and m2 = e^ beta.\n\n'Lex(m1,m2)' returns true if either the difference vector alp ha - beta is the zero vector or the leftmost non-zero entry in alpha - beta is positive, in which case we say m1 >= m2. Otherwise it returns false, in which case we say that m1 < m2. For example, it gives a lex icographic order on generators e1>e2>...>e9 (NOT ADMISSIBLE in general but admissible in Grassmann algebra).\n\n'InvLex(m1,m2)' returns tru e if either the difference vector alpha - beta is the zero vector or t he rightmost non-zero entry in alpha - beta is positive, in which case we say m1 >= m2. Otherwise it returns false, in which case we say tha t m1 < m2. For example, it gives the inverse lexicographic order on ge nerators e9>e8>...>e1 (NOT ADMISSIBLE in general and not admissible in Grassmann algebra) \n\n'RevLex(m1,m2)' returns true if either the di fference vector alpha - beta is the zero vector or the rightmost non-z ero entry in alpha - beta is negative, in which case we say m1 >= m2. \+ Otherwise it returns false, in which case we say that m1 < m2. For exa mple, it gives the reverse lexicographic order on generators e1>e2>... >e9 (NOT ADMISSIBLE in general and not admissible in Grassmann algebra ) \n\n'InvRevLex(m1,m2)' returns true if either the difference vector alpha - beta is the zero vector or the leftmost non-zero entry in alp ha - beta is negative, in which case we say m1 >= m2. Otherwise it ret urns false, in which case we say that m1 < m2. For example, it gives t he reverse lexicographic order on generators e1>e2>...>e9 (NOT ADMISSI BLE in general but admissible in Grassmann algebra) \n\n'Deg' procedu re takes as index (parameter) any of the above monomial orders T and u ses that order to resolve total degree ties: It first computes a degre e (grade) of two monomial terms m1, m2, and it returns true if the tot al degree |m1| > |m2|. When |m1| < |m2| it returns false, and when the degrees are equal |m1| = |m2|, it uses the order T to determine the o rder. (NOT ADMISSIBLE in general but admissible in Grassmann algebra) \n\n'InvDeg' procedure takes as index (parameter) any of the above mon omial orders T and uses that order to resolve total degree ties: It fi rst computes a degree (grade) of two monomial terms m1, m2, and it ret urns false if the total degree |m1| > |m2|. When |m1| < |m2| it return s true, and when the degrees are equal |m1| = |m2|, it uses the order \+ T to determine the order. (NOT ADMISSIBLE in general but admissible i n Grassmann algebra for all orders T except InvDeg[Lex] is not admissi ble)\n\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 551 "cbas:=cbasis(3 );\n\"Lex order gives\"=sort(cbas,Lex);\n\"InvLex order gives\"=sort(c bas,InvLex);\n\"RevLex order gives\"=sort(cbas,RevLex); #No t admissible because 1 > m for every m instead of m > 1 for every m\n \"InvRevLex order gives\"=sort(cbas,InvRevLex); #Not admissible b ecause 1 > m for every m instead of m > 1 for every m\n\"Deg[Lex] orde r gives\"=sort(cbas,Deg[Lex]);\n\"Deg[InvLex] order gives\"=sort(cbas, Deg[InvLex]);\n\"InvDeg[Lex] order gives\"=sort(cbas,InvDeg[Lex]); #N ot admissible because 1 > m for every m instead of m > 1 for every m\n " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%cbasG7*%#IdG%#e1G%#e2G%#e3G%$e1 2G%$e13G%$e23G%%e123G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q0Lex~order~ gives6\"7*%%e123G%$e12G%$e13G%#e1G%$e23G%#e2G%#e3G%#IdG" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#/Q3InvLex~order~gives6\"7*%%e123G%$e23G%$e13G%#e 3G%$e12G%#e2G%#e1G%#IdG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q3RevLex~o rder~gives6\"7*%#IdG%#e1G%#e2G%$e12G%#e3G%$e13G%$e23G%%e123G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q6InvRevLex~order~gives6\"7*%#IdG%#e3G%#e2G %$e23G%#e1G%$e13G%$e12G%%e123G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q5D eg[Lex]~order~gives6\"7*%%e123G%$e12G%$e13G%$e23G%#e1G%#e2G%#e3G%#IdG " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q8Deg[InvLex]~order~gives6\"7*%%e 123G%$e23G%$e13G%$e12G%#e3G%#e2G%#e1G%#IdG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/Q8InvDeg[Lex]~order~gives6\"7*%#IdG%#e1G%#e2G%#e3G%$e1 2G%$e13G%$e23G%%e123G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" } }}{EXCHG {PARA 0 "" 0 "" {TEXT -1 648 "Example 2: Procedure 'isadmissi ble' checks whether the given order is admissible. It takes as input a list of Grassmann monomials (in CLIFFORD, they are of type 'clibasmon ', and one of the monomial orders. It returns true of the order as adm issible and false if it is not admissible. Note, that this procedure h as a remember table to speed up computations but this remember table i s forgotten when Maple is closed. A local function in this procedure c alled 'Fwedge' is essentially the same as Clifford:-wedge except that \+ it has a remember table and remembers products of Grassmann monomials. Its remember table is also erased when Maple is closed.\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 92 "cbas:=cbasis(4):\nT:=[Lex,InvLex,Re vLex,InvRevLex,Deg[Lex],Deg[InvLex],InvDeg[Lex]]:nops(T);\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 154 "for morder in T do\nflag:=isadmissible(cbas,morder):\nmorder1 :=convert(morder,string):\nprintf(\"Monomial order %s is admissible: % s\\n\",morder1,flag);\nend do;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%f lagG%%trueG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(morder1GQ$Lex6\"" }} {PARA 6 "" 1 "" {TEXT -1 38 "Monomial order Lex is admissible: true" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%%trueG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(morder1GQ'InvLex6\"" }}{PARA 6 "" 1 "" {TEXT -1 41 " Monomial order InvLex is admissible: true" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%&falseG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%( morder1GQ'RevLex6\"" }}{PARA 6 "" 1 "" {TEXT -1 42 "Monomial order Rev Lex is admissible: false" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%& falseG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(morder1GQ*InvRevLex6\"" } }{PARA 6 "" 1 "" {TEXT -1 45 "Monomial order InvRevLex is admissible: \+ false" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%%trueG" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%(morder1GQ3GfG:-Deg[GfG:-Lex]6\"" }}{PARA 6 " " 1 "" {TEXT -1 53 "Monomial order GfG:-Deg[GfG:-Lex] is admissible: t rue" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%%trueG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(morder1GQ6GfG:-Deg[GfG:-InvLex]6\"" }}{PARA 6 " " 1 "" {TEXT -1 56 "Monomial order GfG:-Deg[GfG:-InvLex] is admissible : true" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%flagG%&falseG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%(morder1GQ6GfG:-InvDeg[GfG:-Lex]6\"" }} {PARA 6 "" 1 "" {TEXT -1 57 "Monomial order GfG:-InvDeg[GfG:-Lex] is a dmissible: false" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 119 "p1:=5*e18+5*e6we8we9-5*e2we 3we8;\nL:=convert(cliterms(p1),list);\nsort(L,Deg[Lex]);\ncbas:=cbasis (3):\nsort(cbas,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p1G,( *&\"\"&\"\"\"%$e18GF(F(*&F'F(%%e689GF(F(*&F'F(%%e238GF(!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"LG7%%$e18G%%e238G%%e689G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%%%e238G%%e689G%$e18G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*%%e123G%$e12G%$e13G%$e23G%#e1G%#e2G%#e3G%#IdG" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 177 "Example 3: Procedures LTerm, LMon, and LCoeff return the leading term, the leading monomial, and the leading coefficient for a Grassmann polynomial for a stated monomial order.\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "p:=Id+e4+e6we7-3*e3we9+e1+e2;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"pG,.%#IdG\"\"\"%#e4GF'%$e67GF'*&\"\"$F'% $e39GF'!\"\"%#e1GF'%#e2GF'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "L:=convert(cliterms(p),list);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#> %\"LG7(%#IdG%#e1G%#e2G%$e39G%$e67G%#e4G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 52 "sort(L,Lex);\nLTerm(p,Lex),LMon(p,Lex),LCoeff(p,Lex); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7(%#e1G%#e2G%$e39G%#e4G%$e67G%#IdG " }}{PARA 11 "" 1 "" {XPPMATH 20 "6%%#e1GF#\"\"\"" }}}{EXCHG {PARA 0 " > " 0 "" {MPLTEXT 1 0 72 "sort(L,Deg[Lex]);\nLTerm(p,Deg[Lex]),LMon(p, Deg[Lex]),LCoeff(p,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7(%$e 39G%$e67G%#e1G%#e2G%#e4G%#IdG" }}{PARA 11 "" 1 "" {XPPMATH 20 "6%,$*& \"\"$\"\"\"%$e39GF&!\"\"F'!\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 968 "Example 4: Procedure \+ 'CommonFactor' finds a common Grassmann factor in two Grassmann monomi als x and y. If the overlap between the two monomials is empty, the pr ocedure returns the identity element Id. Note that common factor of mo nomials x and y may differ in sign from the common factor of y and x. \+ \n\n'CommonFactor' is Grassmann's original 'regressive' product, which he computed in his first extension theory A1 using the 'rule of the c ommon factor'. Here 'CommonFactor makes use of two aspects of a Grade d Hopf algebra, we can compute the meet (dual of join=wedge) in a Gras smann algebra using the volume element. Thereby depending on the dimen sion. Common factor looks into the smallest Grassmann algebra which co ntains the monomials x and y and extracts the coefficient of the highe st grade element (volume form). In this way, the common factor functio n becomes independent of an 'ambient dimension' and loses its weak dep endence on the (weight of) the metric. " }}{PARA 0 "" 0 "" {TEXT -1 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "CommonFactor(e1we2,e1w e3);\nCommonFactor(e1we3,e1we2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$ %#e1G!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%#e1G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 16 "cbas:=cbasis(3);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%cbasG7*%#IdG%#e1G%#e2G%#e3G%$e12G%$e13G%$e23G%%e123G " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "f:=(m1,m2)->CommonFacto r(m1,m2);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"fGf*6$%#m1G%#m2G6\"6$ %)operatorG%&arrowGF)-_%$GfGG%-CommonFactorG6$9$9%F)F)F)" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 120 "for m1 in cbas do\n for m2 in c bas do\nprintf(\"The common factor of %a and %a is %a \\n\",m1,m2,f(m1 ,m2));\nend do end do:" }}{PARA 6 "" 1 "" {TEXT -1 37 "The common fact or of Id and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common fact or of Id and e1 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common fact or of Id and e2 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common fact or of Id and e3 is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common fact or of Id and e12 is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common fac tor of Id and e13 is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common fa ctor of Id and e23 is Id " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common f actor of Id and e123 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e1 and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e1 and e1 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e1 and e2 is -Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The commo n factor of e1 and e3 is -Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The comm on factor of e1 and e12 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The com mon factor of e1 and e13 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The co mmon factor of e1 and e23 is Id " }}{PARA 6 "" 1 "" {TEXT -1 39 "The c ommon factor of e1 and e123 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e2 and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e2 and e1 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e2 and e2 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e2 and e3 is -Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "Th e common factor of e2 and e12 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 39 "T he common factor of e2 and e13 is -Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e2 and e23 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e2 and e123 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e3 and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e3 and e1 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e3 and e2 is Id " }}{PARA 6 "" 1 "" {TEXT -1 37 "The common factor of e3 and e3 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e3 and e12 is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e3 and e13 is e3 " }}{PARA 6 "" 1 " " {TEXT -1 38 "The common factor of e3 and e23 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e3 and e123 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e12 and Id is Id " }}{PARA 6 " " 1 "" {TEXT -1 38 "The common factor of e12 and e1 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e12 and e2 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e12 and e3 is Id " }} {PARA 6 "" 1 "" {TEXT -1 40 "The common factor of e12 and e12 is e12 \+ " }}{PARA 6 "" 1 "" {TEXT -1 40 "The common factor of e12 and e13 is - e1 " }}{PARA 6 "" 1 "" {TEXT -1 40 "The common factor of e12 and e23 i s -e2 " }}{PARA 6 "" 1 "" {TEXT -1 41 "The common factor of e12 and e1 23 is e12 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e13 an d Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e13 a nd e1 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e13 \+ and e2 is -Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e1 3 and e3 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e 13 and e12 is e1 " }}{PARA 6 "" 1 "" {TEXT -1 40 "The common factor of e13 and e13 is e13 " }}{PARA 6 "" 1 "" {TEXT -1 40 "The common factor of e13 and e23 is -e3 " }}{PARA 6 "" 1 "" {TEXT -1 41 "The common fac tor of e13 and e123 is e13 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The common factor of e23 and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The commo n factor of e23 and e1 is Id " }}{PARA 6 "" 1 "" {TEXT -1 38 "The comm on factor of e23 and e2 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 38 "The com mon factor of e23 and e3 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The co mmon factor of e23 and e12 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The \+ common factor of e23 and e13 is e3 " }}{PARA 6 "" 1 "" {TEXT -1 40 "Th e common factor of e23 and e23 is e23 " }}{PARA 6 "" 1 "" {TEXT -1 41 "The common factor of e23 and e123 is e23 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e123 and Id is Id " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e123 and e1 is e1 " }}{PARA 6 "" 1 " " {TEXT -1 39 "The common factor of e123 and e2 is e2 " }}{PARA 6 "" 1 "" {TEXT -1 39 "The common factor of e123 and e3 is e3 " }}{PARA 6 " " 1 "" {TEXT -1 41 "The common factor of e123 and e12 is e12 " }} {PARA 6 "" 1 "" {TEXT -1 41 "The common factor of e123 and e13 is e13 \+ " }}{PARA 6 "" 1 "" {TEXT -1 41 "The common factor of e123 and e23 is \+ e23 " }}{PARA 6 "" 1 "" {TEXT -1 43 "The common factor of e123 and e12 3 is e123 " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 1454 "Example 5: \+ Procedure GDivide divides a Grassmann polynomial p1 by another Grassma nn polynomial p2 in the admissible order 'MonOrder' entered as a secon d argument. The user needs to know first whether this monomial order i s admissible (use procedure 'isadmissible' first). This procedure retu rns the remainder r of the division of p1 by p2 that is, a polynomial r such that p1 = wedge(q,p2) + r where r is a polynomial such that GD ivide(r,p2) = r, that is, r cannot be further reduced by dividing it b y p2.\n\nNote that GDivide and GLCM (defined below) need the reversion . The reversion is a map into the opposite algebra and introduces sign s due to the generation of the algebra by left multiplication turned i nto right multiplication. The natural order of the opposite algebra wo uld possibly be a decreasing order on the indices like e32, e421, e321 etc. One should keep in mind that ordering may be reversed when we u se a contravariant functor like /\\ --F--> /\\^op.\n\nWhen extending \+ Groebner for Grassmann to Clifford algebras, all GDivide, GLCM, etc., \+ functions will then need the correct (possibly containing antisymmetri c) parts either !\n\nThis procedure may be used with an optional fourt h argument of type 'symbol': If used that way, it returns the remained r r and the quotient q as a sequence r,q (that is, r first and q secon d).\n\nGDivide:=proc(p1,p2,MonOrder)\ndivide p2 into p1 [divide p1 by \+ p2], or, write p1 = q &w p2 + r, or q &w p2 = p1 - r \n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "p1:=2*e1we2-3*e4+5*e1we2we3;" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p1G,(*&\"\"#\"\"\"%$e12GF(F(*&\"\"$ F(%#e4GF(!\"\"*&\"\"&F(%%e123GF(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 12 "p2:=e2-e1+7;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p2 G,(%#e2G\"\"\"%#e1G!\"\"\"\"(F'" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 55 "r:=GDivide(p1,p2,Deg[Lex]);\nr = GDivide(r,p2,Deg[Lex]);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"rG,(*&\"\"$\"\"\"%#e4GF(!\"\"*&\"# NF(%$e23GF(F(*&\"#9F(%#e2GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/,(* &\"\"$\"\"\"%#e4GF'!\"\"*&\"#NF'%$e23GF'F'*&\"#9F'%#e2GF'F'F$" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 187 "Note that it is possible to find \+ a Grassmann polynomial q (the quotient) in the Grassmann algebra /\\R^ n, where n = max(maxindex(p1),maxindex(p2)), such that q &w p2 = p1 - \+ r, as follows:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 63 "r,q:=GD ivide(p1,p2,Deg[Lex],'q');\np1 = Clifford:-wedge(q,p2)+r;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>6$%\"rG%\"qG6$,(*&\"\"$\"\"\"%#e4GF+!\"\"*&\"# NF+%$e23GF+F+*&\"#9F+%#e2GF+F+,(*&\"\"#F+F3F+F-*(\"\"%F+\"\"(F-%$e12GF +F+*&\"\"&F+F0F+F-" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/,(*&\"\"#\"\"\" %$e12GF'F'*&\"\"$F'%#e4GF'!\"\"*&\"\"&F'%%e123GF'F'F$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 24 "Let's change the order:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 50 "r:=GDivide(p1,p2,InvLex);\nr =GDivi de(r,p2,InvLex);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"rG,(*&\"\"$\" \"\"%#e4GF(!\"\"*&\"#NF(%$e13GF(F(*&\"#9F(%#e1GF(F(" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#/,(*&\"\"$\"\"\"%#e4GF'!\"\"*&\"#NF'%$e13GF'F'*&\"#9F '%#e1GF'F'F$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 187 "Note that it is \+ possible to find a Grassmann polynomial q (the quotient) in the Grassm ann algebra /\\R^n, where n = max(maxindex(p1),maxindex(p2)), such tha t q &w p2 = p1 - r, as follows:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "r,q:=GDivide(p1,p2,InvLex,'q');\np1 = Clifford:-wedge (q,p2)+r;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>6$%\"rG%\"qG6$,(*&\"\"$ \"\"\"%#e4GF+!\"\"*&\"#NF+%$e13GF+F+*&\"#9F+%#e1GF+F+,(*&\"\"#F+F3F+F- *(\"\"%F+\"\"(F-%$e12GF+F+*&\"\"&F+F0F+F-" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/,(*&\"\"#\"\"\"%$e12GF'F'*&\"\"$F'%#e4GF'!\"\"*&\"\"&F '%%e123GF'F'F$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {EXCHG {PARA 0 "" 0 "" {TEXT -1 1074 "Example 6: Procedure GLCM is the Grassmann LCM of two Grassmann monomials of type 'climon' or 'clibasm on'. It uses the fact that AP = Clifford:-RC(A,reversion(C)), where Cl ifford:-RC is the right contraction of A by C: It contracts out the ri ght factor C, that is, A = AP &w C. Similarly, it extracts in the same way the C factor from the lft in B, that is, B = C &w BP, where C is \+ the common factor (overlap of indices) of A and B. It returns a list [ AP, C, BP]. In the special case of no overlap, it returns C = Id, that is, [A,Id,B].\n\nNote: We temporarily set B = diag(1$9) so that each \+ basis vector e_i would contact to 1, that is, LC(e_i,e_j) = RC(e_i,e_j ) = 1, when i = j, and 0, when i <> j.\n\nWarning: GLCM returns signed factors of the least common multiple of monomials m1 and m2 \n\nActua lly a Grassmann algebra is a graded commutative algebra! Hence a bimod ule is graded commutative isomorphic to a left or right module. In thi s sense, a Grassmann algebra behaves like a (graded) commutative algeb ra. The sign accounts for the right action written as left action! \n " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 208 "cbas;\np1:=7*e2+5*e2we 3;\n# right actions \nra:=map((x)->wedge(p1,x),cbas);\n# left action w ritten as right action\nla:=map((x)->drop_t(&map(gswitch(&t(x,p1),1),1 ,wedge)),cbas);\ndiff=1/2*(ra-la);\nsumm=1/2*(ra+la);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7*%#IdG%#e1G%#e2G%#e3G%$e12G%$e13G%$e23G%%e123G" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p1G,&*&\"\"(\"\"\"%#e2GF(F(*&\"\"& F(%$e23GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#raG7*,&*&\"\"(\"\" \"%#e2GF)F)*&\"\"&F)%$e23GF)F),&*&F(F)%$e12GF)!\"\"*&F,F)%%e123GF)F)\" \"!,$*&F(F)F-F)F)F4,$*&F(F)F3F)F1F4F4" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#laG7*,&*&\"\"(\"\"\"%#e2GF)F)*&\"\"&F)%$e23GF)F),&*&F(F)%$e12GF) F)*&F,F)%%e123GF)F)\"\"!,$*&F(F)F-F)!\"\"F3,$*&F(F)F2F)F6F3F3" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#/%%diffG7*\"\"!,$*&\"\"(\"\"\"%$e12GF* !\"\"F&,$*&F)F*%$e23GF*F*F&F&F&F&" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/ %%summG7*,&*&\"\"(\"\"\"%#e2GF)F)*&\"\"&F)%$e23GF)F),$*&F,F)%%e123GF)F )\"\"!F1F1,$*&F(F)F0F)!\"\"F1F1" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 558 "In tangle notation the first computation is done using the wedge \+ (a product tangle 2 inputs 1 output) \n\nThe right action written as l eft action picks up some signs due to the graded commutativity. We nee d this signs to be able to write all actions as left actions only. Thi s is also the source of the fact that we need to concentrate only on o ne overlap, since a Grassmann monom cannot have two identical parts du e to the graded commutativity. A Grassmann (and later a Clifford) alge bra is hence much more commutative than noncommutative (algebra of wor ds) \n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 83 "m1:=e1we2we3we5;m 2:=e4we3we2;\nGLCM(m1,m2);\nwedge(op(%));\nGLCM(m2,m1);\nwedge(op(%)); " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#m1G%&e1235G" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%#m2G%)e4we3we2G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6# 7%%$e15G%$e23G,$%#e4G!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%'e12345 G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%,$%#e4G!\"\",$%&e3we2GF&%$e15G " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%'e12345G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 342 "Example 7: GSpoly computes an S-polynomial for two Grassmann polynomials p1 a nd p2 for the stated monomial order MonOrder as follows.\n\ncf1,lm1:=L Coeff(p1,MonOrder),LMon(p1,MonOrder);\ncf2,lm2:=LCoeff(p2,MonOrder),LM on(p2,MonOrder);\nlst:=GLCM(lm1,lm2);\n\nThen, the S-polynomial is Cli fford:-wedge(p1,lst[3])/cf1-Clifford:-wedge(lst[1],p2)/cf2;\n\n" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 41 "p1:=rd_clipolynom();\np2:=rd _clipolynom();" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p1G,&*&\"\"$\"\" \"%&e3568GF(F(*&F'F(%$e16GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p 2G,&*&\"#6\"\"\"%#IdGF(F(*&F'F(%&e3678GF(F(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 166 "MonOrder:=Deg[Lex]:\n'p1'=p1,'p2'=p2;\nSpoly:=GSp oly(p1,p2,MonOrder);\n##############################\n'p1'=p1,'p2'=p2; \nMonOrder:=InvLex:\nSpoly:=GSpoly(p1,p2,MonOrder);\n\n" }}{PARA 11 " " 1 "" {XPPMATH 20 "6$/%#p1G,&*&\"\"$\"\"\"%&e3568GF(F(*&F'F(%$e16GF(F (/%#p2G,&*&\"#6F(%#IdGF(F(*&F0F(%&e3678GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&SpolyG,&%%e167G\"\"\"%#e5G!\"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6$/%#p1G,&*&\"\"$\"\"\"%&e3568GF(F(*&F'F(%$e16GF(F(/%#p2G ,&*&\"#6F(%#IdGF(F(*&F0F(%&e3678GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&SpolyG,&%%e167G\"\"\"%#e5G!\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 184 "Example 8: P rocedure GReduce reduces a Grassmann polynomial p with respect to a li st [p1,...,pn] of n Grassmann monomials for the given monomial order e ntered as the third argument. \n\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "p1:=2*e1-3*e1we3;\nLTerm(p1,Deg[Lex]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%#p1G,&*&\"\"#\"\"\"%#e1GF(F(*&\"\"$F(%$e13GF(! \"\"" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&\"\"$\"\"\"%$e13GF&!\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 30 "p2:=Id+e3;\nLTerm(p2,Deg[ Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p2G,&%#IdG\"\"\"%#e3GF'" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#%#e3G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 29 "p3:=2*e1;\nLTerm(p3,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%#p3G,$*&\"\"#\"\"\"%#e1GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&\"\"#\"\"\"%#e1GF&F&" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "p:=-2*e1we2+e2we3;\nLTerm(p,Deg[Lex]);" }}{PARA 11 " " 1 "" {XPPMATH 20 "6#>%\"pG,&*&\"\"#\"\"\"%$e12GF(!\"\"%$e23GF(" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#,$*&\"\"#\"\"\"%$e12GF&!\"\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 34 "r:=GReduce(p,[p1,p2,p3],Deg[ Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"rG%#e2G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 77 "r=GDivide(r,p1,Deg[Lex]);\nr=GDivid e(r,p2,Deg[Lex]);\nr=GDivide(r,p3,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%#e2GF$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%#e2GF$" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#/%#e2GF$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 18 "Change the order:\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 32 "r:=GReduce(p,[p1,p2,p3],InvLex);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"rG%#e2G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 71 "r=GDivide(r,p1,InvLex);\nr=GDivide(r,p2,InvLex);\nr=GDivide(r,p3,I nvLex);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%#e2GF$" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#/%#e2GF$" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%#e2GF$ " }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 311 "Example 9: Procedure 'GGbasis' computes a Groebner \+ basis for the ideal generated by a list of Grassmann polynomials F = [ p1,p2,p3] with respect to the monomial order MonOrder that needs to be admissible. It seems (this needs to be checked) that this basis can b e used for solving the ideal membership problem. \n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 53 "F:=[p1,p2,p3];\nn:=max(op(map(Clifford:-m axindex,F)));" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"FG7%,&*&\"\"#\"\" \"%#e1GF)F)*&\"\"$F)%$e13GF)!\"\",&%#IdGF)%#e3GF),$*&F(F)F*F)F)" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"nG\"\"$" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 61 "c1,c2,c3:=rd_clipolynom(n),rd_clipolynom(n),rd_cli polynom(n);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>6%%#c1G%#c2G%#c3G6%,(* &\"\"&\"\"\"%#IdGF,F,*&F+F,%$e13GF,F,*&F+F,%#e2GF,!\"\",&*&\"\"'F,F-F, F,*&\"\"%F,%$e23GF,F2,$*&F+F,F-F,F2" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 95 "p_in:=wedge(c1,p1)+wedge(c2,p2)+wedge(c3,p3);\np_out: =p_in+2*Id+3*e2;\nGReduce(p_out,F,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%p_inG,.*&\"#5\"\"\"%$e12GF(F(*&\"#:F(%$e13GF(!\"\"*& F+F(%%e123GF(F-*&\"\"'F(%#IdGF(F(*&\"\"%F(%$e23GF(F-*&F1F(%#e3GF(F(" } }{PARA 11 "" 1 "" {XPPMATH 20 "6#>%&p_outG,0*&\"#5\"\"\"%$e12GF(F(*&\" #:F(%$e13GF(!\"\"*&F+F(%%e123GF(F-*&\"\")F(%#IdGF(F(*&\"\"%F(%$e23GF(F -*&\"\"'F(%#e3GF(F(*&\"\"$F(%#e2GF(F(" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#,&*&\"\"#\"\"\"%#IdGF&F&%#e2G!\"\"" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 23 "G:=GGbasis(F,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%\"GG7%,&*(\"\"#\"\"\"\"\"$!\"\"%#e1GF)F+%$e13GF),&%#IdGF)%#e3G F)F," }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 64 "rem1:=GReduce(p_in, G,Deg[Lex]);\nrem2:=GReduce(p_out,G,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%rem1G,$*&\"\"%\"\"\"%#e2GF(!\"\"" }}{PARA 11 "" 1 " " {XPPMATH 20 "6#>%%rem2G,&*&\"\"#\"\"\"%#IdGF(F(%#e2G!\"\"" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 117 "Example 10: This procedure computes the minimal Groebne r basis from a Groebner basis for a monomial order MonOrder.\n" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 31 "minG:=minGGbasis(G,Deg[Lex]) ;\n " }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>%%minGG7$,&%#IdG\"\"\"%#e3GF( %#e1G" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 28 "GReduce(G[1],minG, Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#\"\"!" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 72 ". \nWe check if the minG Groebner basis does also reduce the polynomial \+ p:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 316 "'rem0' = GReduce(p,[ p1,p2,p3],Deg[Lex]); #remainder after reducing p w.r.t. the original p olynomials p1,p2,p3 \n'rem1' = GReduce(p,G,Deg[Lex]); #remain der after reducing p w.r.t. the Groebner basis G\n'rem2' = GReduce(p,m inG,Deg[Lex]); #remainder after reducing p w.r.t. the minimal Gr oebner basis minG\n" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%%rem0G%#e2G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%%rem1G%#e2G" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#/%%rem2G%#e2G" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 155 " Further check, that the minG Groebner basis reduces the G Groebner bas is to zero, showing that all polynomials in G are in the ideal generat ed by minG too:" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 37 "map((x)- >GReduce(x,minG,Deg[Lex]),G);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#7%\" \"!F$F$" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 106 "NOTE: Further checkin g is needed to make sure that procedures GGbasis and minGGbasis comput e what we want." }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 278 "Example 11: Procedure 'multideg' computes the multidegr ee of a Grassmann polynomial with respect to a monomial order entered \+ as a second argument. It returns a vector with entries 1 and 0 that re presents the leading monomial of the polynomial with respect to the ch osen order.\n" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 42 "f := -3*Id -3*e36-3*e2389+e1568+e349+e1256;" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#>% \"fG,.*&\"\"$\"\"\"%#IdGF(!\"\"*&F'F(%$e36GF(F**&F'F(%&e2389GF(F*%&e15 68GF(%%e349GF(%&e1256GF(" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 21 "multideg(f,Deg[Lex]);" }}{PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6% \"*ob3]\"-%'VECTORG6#7+\"\"\"F+\"\"!F,F+F+F,F,F,&%'VectorG6#%$rowG" }} }{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 19 "multideg(f,InvLex);" }} {PARA 11 "" 1 "" {XPPMATH 20 "6#-%'RTABLEG6%\"*oBLi\"-%'VECTORG6#7+\" \"!\"\"\"F,F+F+F+F+F,F,&%'VectorG6#%$rowG" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}} {EXCHG {PARA 0 "> " 0 "" {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "> " 0 " " {MPLTEXT 1 0 0 "" }}}{EXCHG {PARA 0 "" 0 "" {TEXT -1 34 "Cookeville/ Konstanz, July 23, 2007" }}}}{MARK "85 0 0" 0 }{VIEWOPTS 1 1 0 1 1 1803 1 1 1 1 }{PAGENUMBERS 0 1 2 33 1 1 }{RTABLE_HANDLES 151121568 151121768 151346808 151347008 151347208 151347408 151347608 151347808 150085568 162332368 }{RTABLE M7R0 I6RTABLE_SAVE/151121568X*%(integerG6"6"[gl!$%!!!"*"*""!F'F'F'F'F'F'F'F'F& } {RTABLE M7R0 I6RTABLE_SAVE/151121768X*%(integerG6"6"[gl!$%!!!"*"*"""""!F(F(F(F(F(F(F(F& } {RTABLE M7R0 I6RTABLE_SAVE/151346808X*%(integerG6"6"[gl!$%!!!"*"*""!"""F'F'F'F'F'F'F'F& } {RTABLE M7R0 I6RTABLE_SAVE/151347008X*%(integerG6"6"[gl!$%!!!"*"*""!F'"""F'F'F'F'F'F'F& } {RTABLE M7R0 I6RTABLE_SAVE/151347208X*%(integerG6"6"[gl!$%!!!"*"*"""F'""!F(F(F(F(F(F(F& } {RTABLE M7R0 I6RTABLE_SAVE/151347408X*%(integerG6"6"[gl!$%!!!"*"*"""""!F'F(F(F(F(F(F(F& } {RTABLE M7R0 I6RTABLE_SAVE/151347608X*%(integerG6"6"[gl!$%!!!"*"*""!"""F(F'F'F'F'F'F'F& } {RTABLE M7R0 I6RTABLE_SAVE/151347808X*%(integerG6"6"[gl!$%!!!"*"*"""F'F'""!F(F(F(F(F(F& } {RTABLE M7R0 I6RTABLE_SAVE/150085568X*%(integerG6"6"[gl!$%!!!"*"*"""F'""!F(F'F'F(F(F(F& } {RTABLE M7R0 I6RTABLE_SAVE/162332368X*%(integerG6"6"[gl!$%!!!"*"*""!"""F(F'F'F'F'F(F(F& }