Sophie

Sophie

distrib > Mandriva > 9.0 > i586 > by-pkgid > 8d125f3514d54b70bf040165a2f5d2e4 > files > 336

maxima-5.6-1mdk.i586.rpm

<HTML>
<HEAD>
<!-- This HTML file has been created by texi2html 1.52
     from maxima.texi on 25 April 2001 -->

<TITLE>Maxima Manual - Groups</TITLE>
<link href="maxima_33.html" rel=Next>
<link href="maxima_31.html" rel=Previous>
<link href="maxima_toc.html" rel=ToC>

</HEAD>
<BODY>
<p>Go to the <A HREF="maxima_1.html">first</A>, <A HREF="maxima_31.html">previous</A>, <A HREF="maxima_33.html">next</A>, <A HREF="maxima_41.html">last</A> section, <A HREF="maxima_toc.html">table of contents</A>.
<P><HR><P>


<H1><A NAME="SEC98" HREF="maxima_toc.html#TOC98">Groups</A></H1>



<H2><A NAME="SEC99" HREF="maxima_toc.html#TOC99">Definitions for Groups</A></H2>
<P>
<DL>
<DT><U>Function:</U> <B>TODD_COXETER</B> <I>(relations,subgroup)</I>
<DD><A NAME="IDX807"></A>

</P>
<P>
Find the order of G/H where G is the Free Group modulo RELATIONS, and
H is the subgroup of G generated by SUBGROUP.  SUBGROUP is an optional
argument, defaulting to [].  In doing this it produces a
multiplication table for the right action of G on G/H, where the
cosets are enumerated [H,Hg2,Hg3,...]  This can be seen internally in
the $todd_coxeter_state.  The multiplication tables for the variables
are in table:todd_coxeter_state[2] Then table[i] gives the table for
the ith variable.  mulcoset(coset,i) := table[varnum][coset];

</P>
<P>
Example:

</P>

<PRE>
(C1) symet(n):=create_list(if (j - i) = 1 then (p(i,j))^^3 else
     if (not i = j) then (p(i,j))^^2 else p(i,i) , j,1,n-1,i,1,j);
						      &#60;3&#62;
(D1) SYMET(N) := CREATE_LIST(IF J - I = 1 THEN P(I, J)

			       &#60;2&#62;
 ELSE (IF NOT I = J THEN P(I, J)
 ELSE P(I, I)), J, 1, N - 1, I, 1, J)
(C2) p(i,j) :=concat(x,i).concat(x,j);
(D2)                P(I, J) := CONCAT(X, I) . CONCAT(X, J)
(C3) symet(5);
                        &#60;3&#62;                    &#60;2&#62;           &#60;3&#62;
(D3) [X1 . X1, (X1 . X2)   , X2 . X2, (X1 . X3)   , (X2 . X3)   , 

                      &#60;2&#62;                &#60;2&#62;           &#60;3&#62;
X3 . X3,     (X1 . X4)	 , (X2 . X4)   , (X3 . X4)   , X4 . X4]
(C4) todd_coxeter(d3);

Rows tried 426
(D4) 				      120
(C5) todd_coxeter(d3,[x1]);

Rows tried 213
(D5) 				      60
(C6) todd_coxeter(d3,[x1,x2]);

Rows tried 71
(D6) 				      20
(C7) table:todd_coxeter_state[2]$
(C8) table:todd_coxeter_state[2]$
(C9) table[1];
(D9) {Array: FIXNUM #(0 2 1 3 7 6 5 4 8 11 17 9 12 14 13 20
           16 10 18 19 15 0 0 0 0 0 0 0 0  0 0 0 0 0 0 0)}
</PRE>

<P>
Note only the elements 1 thru 20 of this array d9  are meaningful.
table[1][4] = 7 indicates coset4.var1 = coset7

</P>

</DL>

<P><HR><P>
<p>Go to the <A HREF="maxima_1.html">first</A>, <A HREF="maxima_31.html">previous</A>, <A HREF="maxima_33.html">next</A>, <A HREF="maxima_41.html">last</A> section, <A HREF="maxima_toc.html">table of contents</A>.
</BODY>
</HTML>