14.3 Solution via a Prestrategy
We now apply a strategy to see how one might discover this theorem. The formalities of what a
strategy is are not important here. This chapter is designed to illustrate NCProcess and allied
commands. For a description of the formalities of a strategy see [HS] or for a sketch see Chapter
16.
Before running NCProcess1, we must declare A, B and C to be knowns and the remaining
variables to be unknowns. The “**” below denotes matrix multiplication.
In[1]:=Get["NCGB.m"];
In[2]:=SetNonCommuative[A,B,C0,m1,m2,n1,n2];
In[3]:=SetKnowns[A,B,C];
In[4]:=SetUnknowns[m1,m2,n1,n2,a,b,c,e,f,g];
|
We now set the variable FAC equal to the list of polynomials in §14.2.
In[5]:=FAC = {A**m1 - m1**a - m2**f**c,
A**m2 - m2**e,
B - m1**b - m2**f,
-c + C0**m1,
-g + C0**m2,
n1**m1 - 1,
n1**m2,
n2**m1,
n2**m2 - 1,
m1**n1 + m2**n2 - 1};
|
The commands above and below will be explained in Chapter 15.
The command which produces the output in the file Spreadsheet1.dvi is the following.
In[6]:= result = NCProcess1[FAC,2,"Spreadsheet1"];
|
Here NCProcess1 is being applied to the set of relations FAC for 2 iterations. The NCProcess1
command has two outputs, one will be stored in result and the other will be stored in the file
Spreadsheet1.dvi. The Spreadsheet1.dvi file appears below and is likely to be more
interesting and useful than the value of result. The file created by NCProcess is a list of
equations whose solution set is the same as the solution set for FAC. (We added the <===
appearing below after the spreadsheet was created.) The → below can be read as an equal
sign.
THE ORDER IS NOW THE FOLLOWING:
A < B < C ≪ m1 ≪ m2 ≪ n1 ≪ n2 ≪ a ≪ b ≪ c ≪ e ≪ f ≪ g
______________________
__________________________ YOUR SESSION HAS DIGESTED _____________________________________
__________________________ THE FOLLOWING RELATIONS ______________________________________
_________________________________________________________________________________
THE FOLLOWING VARIABLES HAVE BEEN SOLVED FOR:
The corresponding rules are the following:
_________________________________________________________________________________
________________________
USER CREATIONS APPEAR BELOW ___________________________________
_________________________________________________________________________________
_________________________________________________________________________________
____________________ SOME RELATIONS WHICH APPEAR BELOW _____________________________
______________________________ MAY BE UNDIGESTED ___________________________________________
_________________________________________________________________________________
THE FOLLOWING VARIABLES HAVE NOT BEEN SOLVED FOR:
{m1,m2,n1,n2}
_________________________________________________________________________________
2.0 The expressions with unknown variables {n1,m1}
and knowns {A,B,C}
(1 - m1 n1)Am1 + -1(1 - m1 n1)BC m1 = 0 <===
|
_________________________________________________________________________________
2.0 The expressions with unknown variables {n1,m2}
and knowns {A}
_________________________________________________________________________________
2.0 The expressions with unknown variables {n2,m1}
and knowns {A,B,C}
_________________________________________________________________________________
2.0 The expressions with unknown variables {n2,m2}
and knowns {}
_________________________________________________________________________________
4.0 The expressions with unknown variables {n2,n1,m2,m1}
and knowns {}
The above “spreadsheet” indicates that the unknowns a, b, c, e, f and g are solved for and
states their values. The following are facts about the output: (1) there are no equations
in 1 unknown, (2) there are 4 categories of equations in 2 unknowns and (3) there is
one category of equations in 4 unknowns. A user must observe that the first equation
which
we marked with <=== becomes an equation in the unknown quantity m1 n1 when
multiplied on the right by n1. This motivates the creation of a new variable P defined by
setting
 | (14.3) |
The user may notice at this point that the second equation marked with <=== is an equation in
only one unknown quantity m2 n2 once the above assignment has been made and P1 is considered
known.
These observations lead us to “select” (see footnote corresponding to O2 in §15.2) the equations
m1 n1 - P1 and m2 n2 - 1 + m1n1. Since we selected an equation in m1 n1 and an equation in
m2 n2, it is reasonable to select the the equations n1 m1 - 1, and n2 m2 - 1 because they have
exactly the same unknowns. While useless at this point we illustrate the command GetCategory
with the following examples
In[10]:= GetCategory[{n1,m1},NCPAns ]
Out[10]= { n1**m1 - 1 }
In[11]:= GetCategory[{n1,m1,n2,m2},NCPAns ]
Out[11]= {m2**n2 + m1**n1 - 1 }
|
Run NCProcess1 again
with (14.3) added and P1 declared known as well as A, B and C declared known. See Chapter 15.4
for the precise call. The output is:
THE ORDER IS NOW THE FOLLOWING:
A < B < C < P1 ≪ m1 ≪ m2 ≪ n1 ≪ n2 ≪ a ≪ b ≪ c ≪ e ≪ f ≪ g
________________
__________________________ YOUR SESSION HAS DIGESTED _____________________________________
__________________________ THE FOLLOWING RELATIONS ______________________________________
_________________________________________________________________________________
THE FOLLOWING VARIABLES HAVE BEEN SOLVED FOR:
The corresponding rules are the following:
_________________________________________________________________________________
The expressions with unknown variables {}
and knowns {A,B,C,P1}
AP1 + -1P1 A + -1(1 + -1P1)BC P1 = 0
|
_________________________________________________________________________________
________________________ USER CREATIONS APPEAR BELOW ___________________________________
_________________________________________________________________________________
_________________________________________________________________________________
____________________ SOME RELATIONS WHICH APPEAR BELOW _____________________________
______________________________ MAY BE UNDIGESTED ___________________________________________
_________________________________________________________________________________
THE FOLLOWING VARIABLES HAVE NOT BEEN SOLVED FOR:
{m1,m2,n1,n2}
_________________________________________________________________________________
2.0 The expressions with unknown variables {n1,m1}
and knowns {P1}
_________________________________________________________________________________
2.0 The expressions with unknown variables {n2,m2}
and knowns {}
_________________________________________________________________________________
4.0 The expressions with unknown variables {n2,n1,m2,m1}
and knowns {}
Note that the equations in the above display which are in the undigested section (i.e.,
below the lowest set of bold lines) are repeats of those which are in the digested section
(i.e., above the lowest set of bold lines). The symbol ⇑ indicates that the polynomial
equation also appears as a user select on the spreadsheet. We relist these particular
equations simply as a convenience for categorizing them. We will see how this helps us in
§14.4. Since all equations are digested, we have finished using NCProcess1 (see S4).
As we shall see, this output spreadsheet leads directly to the theorem about factoring
systems.