1% Demonstration of the REDUCE SOLVE package.
2
3on fullroots;
4
5   % To get complete solutions.
6
7% Simultaneous linear fractional equations.
8
9solve({(a*x+y)/(z-1)-3,y+b+z,x-y},{x,y,z});
10
11
12      - 3*(b + 1)
13{{x=--------------,
14        a + 4
15
16      - 3*(b + 1)
17  y=--------------,
18        a + 4
19
20      - a*b - b + 3
21  z=----------------}}
22         a + 4
23
24
25
26% Use of square-free factorization together with recursive use of
27% quadratic and binomial solutions.
28
29solve((x**6-x**3-1)*(x**5-1)**2*x**2);
30
31
32Unknown: x
33
34    2*sqrt( - sqrt(5) - 5) + sqrt(10) - sqrt(2)
35{x=---------------------------------------------,
36                     4*sqrt(2)
37
38     - 2*sqrt( - sqrt(5) - 5) + sqrt(10) - sqrt(2)
39 x=------------------------------------------------,
40                      4*sqrt(2)
41
42    2*sqrt(sqrt(5) - 5) - sqrt(10) - sqrt(2)
43 x=------------------------------------------,
44                   4*sqrt(2)
45
46     - 2*sqrt(sqrt(5) - 5) - sqrt(10) - sqrt(2)
47 x=---------------------------------------------,
48                     4*sqrt(2)
49
50 x=1,
51
52 x=0,
53
54                    1/3
55    ( - sqrt(5) + 1)   *(sqrt(3)*i - 1)
56 x=-------------------------------------,
57                     1/3
58                  2*2
59
60                       1/3
61     - ( - sqrt(5) + 1)   *(sqrt(3)*i + 1)
62 x=----------------------------------------,
63                       1/3
64                    2*2
65
66                    1/3
67    ( - sqrt(5) + 1)
68 x=---------------------,
69            1/3
70           2
71
72                 1/3
73    (sqrt(5) + 1)   *(sqrt(3)*i - 1)
74 x=----------------------------------,
75                    1/3
76                 2*2
77
78                    1/3
79     - (sqrt(5) + 1)   *(sqrt(3)*i + 1)
80 x=-------------------------------------,
81                     1/3
82                  2*2
83
84                 1/3
85    (sqrt(5) + 1)
86 x=------------------}
87           1/3
88          2
89
90
91multiplicities!*;
92
93
94{2,2,2,2,2,2,1,1,1,1,1,1}
95
96
97
98% A singular equation without and with a consistent inhomogeneous term.
99
100solve(a,x);
101
102
103{}
104
105
106solve(0,x);
107
108
109{x=arbcomplex(1)}
110
111
112off solvesingular;
113
114
115
116solve(0,x);
117
118
119{}
120
121
122
123% Use of DECOMPOSE to solve high degree polynomials.
124
125solve(x**8-8*x**7+34*x**6-92*x**5+175*x**4-236*x**3+226*x**2-140*x+46);
126
127
128Unknown: x
129
130    sqrt( - sqrt( - 4*sqrt(3) - 3) - 3)*sqrt(2) + 2
131{x=-------------------------------------------------,
132                           2
133
134     - sqrt( - sqrt( - 4*sqrt(3) - 3) - 3)*sqrt(2) + 2
135 x=----------------------------------------------------,
136                            2
137
138    sqrt( - sqrt(4*sqrt(3) - 3) - 3)*sqrt(2) + 2
139 x=----------------------------------------------,
140                         2
141
142     - sqrt( - sqrt(4*sqrt(3) - 3) - 3)*sqrt(2) + 2
143 x=-------------------------------------------------,
144                           2
145
146    sqrt(sqrt( - 4*sqrt(3) - 3) - 3)*sqrt(2) + 2
147 x=----------------------------------------------,
148                         2
149
150     - sqrt(sqrt( - 4*sqrt(3) - 3) - 3)*sqrt(2) + 2
151 x=-------------------------------------------------,
152                           2
153
154    sqrt(sqrt(4*sqrt(3) - 3) - 3)*sqrt(2) + 2
155 x=-------------------------------------------,
156                        2
157
158     - sqrt(sqrt(4*sqrt(3) - 3) - 3)*sqrt(2) + 2
159 x=----------------------------------------------}
160                         2
161
162
163solve(x**8-88*x**7+2924*x**6-43912*x**5+263431*x**4-218900*x**3+
164           65690*x**2-7700*x+234,x);
165
166
167{x=sqrt( - i + 116) + 11,
168
169 x= - sqrt( - i + 116) + 11,
170
171 x=sqrt(i + 116) + 11,
172
173 x= - sqrt(i + 116) + 11,
174
175 x=4*sqrt(7) + 11,
176
177 x= - 4*sqrt(7) + 11,
178
179 x=2*sqrt(30) + 11,
180
181 x= - 2*sqrt(30) + 11}
182
183
184
185% Recursive use of inverses, including multiple branches of rational
186% fractional powers.
187
188solve(log(acos(asin(x**(2/3)-b)-1))+2,x);
189
190
191                 1                        1
192{x=sqrt(sin(cos(----) + 1) + b)*(sin(cos(----) + 1) + b),
193                  2                        2
194                 e                        e
195
196                    1                        1
197 x= - sqrt(sin(cos(----) + 1) + b)*(sin(cos(----) + 1) + b)}
198                     2                        2
199                    e                        e
200
201
202
203% Square-free factors that are unsolvable, being of fifth degree,
204% transcendental, or without a defined inverse.
205
206operator f;
207
208
209
210solve((x-1)*(x+1)*(x-2)*(x+2)*(x-3)*(x*log(x)-1)*(f(x)-1),x);
211
212
213{x=root_of(f(x_) - 1,x_,tag_4),
214
215 x=root_of(log(x_)*x_ - 1,x_,tag_3),
216
217 x=3,
218
219 x=2,
220
221 x=1,
222
223 x=-1,
224
225 x=-2}
226
227
228multiplicities!*;
229
230
231{1,1,1,1,1,1,1}
232
233
234
235% Factors with more than one distinct top-level kernel, the first factor
236% a cubic. (Cubic solution suppressed since it is too messy to be of
237% much use).
238
239off fullroots;
240
241
242
243solve((x**(1/2)-(x-a)**(1/3))*(acos x-acos(2*x-b))* (2*log x
244          -log(x**2+x-c)-4),x);
245
246
247     2            4          4     2
248    e *(sqrt(4*c*e  - 4*c + e ) - e )
249{x=-----------------------------------,
250                   4
251               2*(e  - 1)
252
253        2            4          4     2
254     - e *(sqrt(4*c*e  - 4*c + e ) + e )
255 x=--------------------------------------,
256                     4
257                 2*(e  - 1)
258
259                      2/3
260 x=root_of(( - a + x_)    - x_,x_,tag_9),
261
262 x=b}
263
264
265on fullroots;
266
267
268
269% Treatment of multiple-argument exponentials as polynomials.
270
271solve(a**(2*x)-3*a**x+2,x);
272
273
274    2*arbint(3)*i*pi + log(2)
275{x=---------------------------,
276             log(a)
277
278    2*arbint(2)*i*pi
279 x=------------------}
280         log(a)
281
282
283
284% A 12th degree reciprocal polynomial that is irreductible over the
285% integers, having a reduced polynomial that is also reciprocal.
286% (Reciprocal polynomials are those that have symmetric or antisymmetric
287% coefficient patterns.) We also demonstrate suppression of automatic
288% integer root extraction.
289
290solve(x**12-4*x**11+12*x**10-28*x**9+45*x**8-68*x**7+69*x**6-68*x**5+
29145*x**4-28*x**3+12*x**2-4*x+1);
292
293
294Unknown: x
295
296    sqrt( - sqrt(5) - 3)
297{x=----------------------,
298          sqrt(2)
299
300     - sqrt( - sqrt(5) - 3)
301 x=-------------------------,
302            sqrt(2)
303
304    2*sqrt( - sqrt(3)*i - 9) - sqrt(6)*i + sqrt(2)
305 x=------------------------------------------------,
306                      4*sqrt(2)
307
308     - 2*sqrt( - sqrt(3)*i - 9) - sqrt(6)*i + sqrt(2)
309 x=---------------------------------------------------,
310                        4*sqrt(2)
311
312    2*sqrt( - 3*sqrt(5) - 1) - sqrt(10) + 3*sqrt(2)
313 x=-------------------------------------------------,
314                       4*sqrt(2)
315
316     - 2*sqrt( - 3*sqrt(5) - 1) - sqrt(10) + 3*sqrt(2)
317 x=----------------------------------------------------,
318                        4*sqrt(2)
319
320    2*sqrt(sqrt(3)*i - 9) + sqrt(6)*i + sqrt(2)
321 x=---------------------------------------------,
322                     4*sqrt(2)
323
324     - 2*sqrt(sqrt(3)*i - 9) + sqrt(6)*i + sqrt(2)
325 x=------------------------------------------------,
326                      4*sqrt(2)
327
328    2*sqrt(3*sqrt(5) - 1) + sqrt(10) + 3*sqrt(2)
329 x=----------------------------------------------,
330                     4*sqrt(2)
331
332     - 2*sqrt(3*sqrt(5) - 1) + sqrt(10) + 3*sqrt(2)
333 x=-------------------------------------------------,
334                       4*sqrt(2)
335
336    i*(sqrt(5) - 1)
337 x=-----------------,
338           2
339
340    i*( - sqrt(5) + 1)
341 x=--------------------}
342            2
343
344
345
346% The treatment of factors with non-unique inverses by introducing
347% unique new real or integer indeterminant kernels.
348
349solve((sin x-a)*(2**x-b)*(x**c-3),x);
350
351
352{x=2*arbint(6)*pi + asin(a),
353
354 x=2*arbint(6)*pi - asin(a) + pi,
355
356    2*arbint(5)*i*pi + log(b)
357 x=---------------------------,
358             log(2)
359
360    1/c       2*arbint(4)*pi          2*arbint(4)*pi
361 x=3   *(cos(----------------) + sin(----------------)*i)}
362                    c                       c
363
364
365
366% Automatic restriction to principal branches.
367
368off allbranch;
369
370
371
372solve((sin x-a)*(2**x-b)*(x**c-3),x);
373
374
375{x=asin(a),
376
377    1/c
378 x=3   ,
379
380    log(b)
381 x=--------}
382    log(2)
383
384
385
386% Regular system of linear equations.
387
388solve({2*x1+x2+3*x3-9,x1-2*x2+x3+2,3*x1+2*x2+2*x3-7}, {x1,x2,x3});
389
390
391{{x1=-1,x2=2,x3=3}}
392
393
394
395% Underdetermined system of linear equations.
396
397on solvesingular;
398
399
400
401solve({x1-4*x2+2*x3+1,2*x1-3*x2-x3-5*x4+7,3*x1-7*x2+x3-5*x4+8},
402      {x1,x2,x3,x4});
403
404
405{{x1=4*arbcomplex(8) + 2*arbcomplex(7) - 5,
406
407  x2=arbcomplex(8) + arbcomplex(7) - 1,
408
409  x3=arbcomplex(7),
410
411  x4=arbcomplex(8)}}
412
413
414
415% Inconsistent system of linear equations.
416
417solve({2*x1+3*x2-x3-2,7*x1+4*x2+2*x3-8,3*x1-2*x2+4*x3-5},
418      {x1,x2,x3});
419
420
421{}
422
423
424
425% Overdetermined system of linear equations.
426
427solve({x1-x2+x3-12,2*x1+3*x2-x3-13,3*x2+4*x3-5,-3*x1+x2+4*x3+20},
428      {x1,x2,x3});
429
430
431{{x1=9,x2=-1,x3=2}}
432
433
434
435% Degenerate system of linear equations.
436
437operator xx,yy;
438
439
440
441yy(1) := -a**2*b**3-3*a**2*b**2-3*a**2*b+a**2*(xx(3)-2)-a*b-a*c+a*(xx(2)
442         -xx(5))-xx(4)-xx(5)+xx(1)-1;
443
444
445                                             2                      2  3
446yy(1) :=  - xx(5)*a - xx(5) - xx(4) + xx(3)*a  + xx(2)*a + xx(1) - a *b
447
448               2  2      2        2
449          - 3*a *b  - 3*a *b - 2*a  - a*b - a*c - 1
450
451
452yy(2) := -a*b**3-b**5+b**4*(-xx(4)-xx(5)+xx(1)-5)-b**3*c+b**3*(xx(2)
453         -xx(5)-3)+b**2*(xx(3)-1);
454
455
456          2            2                    2                            2
457yy(2) := b *( - xx(5)*b  - xx(5)*b - xx(4)*b  + xx(3) + xx(2)*b + xx(1)*b  - a*b
458
459                 3      2
460              - b  - 5*b  - b*c - 3*b - 1)
461
462
463yy(3) := -a*b**3*c-3*a*b**2*c-4*a*b*c+a*b*(-xx(4)-xx(5)+xx(1)-1)
464         +a*c*(xx(3)-1)-b**2*c-b*c**2+b*c*(xx(2)-xx(5));
465
466
467yy(3) :=  - xx(5)*a*b - xx(5)*b*c - xx(4)*a*b + xx(3)*a*c + xx(2)*b*c
468
469                           3          2                            2        2
470          + xx(1)*a*b - a*b *c - 3*a*b *c - 4*a*b*c - a*b - a*c - b *c - b*c
471
472
473yy(4) := -a**2-a*c+a*(xx(2)-xx(4)-2*xx(5)+xx(1)-1)-b**4-b**3*c-3*b**3
474         -3*b**2*c-2*b**2-2*b*c+b*(xx(3)-xx(2)-xx(4)+xx(1)-2)
475         +c*(xx(3)-1);
476
477
478yy(4) :=  - 2*xx(5)*a - xx(4)*a - xx(4)*b + xx(3)*b + xx(3)*c + xx(2)*a
479
480                                           2              4    3        3
481          - xx(2)*b + xx(1)*a + xx(1)*b - a  - a*c - a - b  - b *c - 3*b
482
483               2        2
484          - 3*b *c - 2*b  - 2*b*c - 2*b - c
485
486
487yy(5) := -2*a-3*b**3-9*b**2-11*b-2*c+3*xx(3)+2*xx(2)-xx(4)-3*xx(5)+xx(1)
488         -4;
489
490
491                                                                   3      2
492yy(5) :=  - 3*xx(5) - xx(4) + 3*xx(3) + 2*xx(2) + xx(1) - 2*a - 3*b  - 9*b
493
494          - 11*b - 2*c - 4
495
496
497soln  :=  solve({yy(1),yy(2),yy(3),yy(4),yy(5)},
498                {xx(1),xx(2),xx(3),xx(4),xx(5)});
499
500
501soln := {{xx(1)=arbcomplex(10) + arbcomplex(9) + 1,
502
503          xx(2)=arbcomplex(10) + a + b + c,
504
505                 3      2
506          xx(3)=b  + 3*b  + 3*b + 1,
507
508          xx(4)=arbcomplex(9),
509
510          xx(5)=arbcomplex(10)}}
511
512
513for i  :=  1:5 do xx(i) := part(soln,1,i,2);
514
515
516
517for i  :=  1:5 do write yy(i);
518
519
5200
521
5220
523
5240
525
5260
527
5280
529
530
531
532%  Single equations liftable to polynomial systems.
533
534solve ({a*sin x + b*cos x},{x});
535
536
537                    2    2
538              sqrt(a  + b ) - a
539{x= - 2*atan(-------------------),
540                      b
541
542                 2    2
543           sqrt(a  + b ) + a
544 x=2*atan(-------------------)}
545                   b
546
547
548solve ({a*sin(x+1) + b*cos(x+1)},{x});
549
550
551                    2    2
552              sqrt(a  + b ) - a
553{x= - 2*atan(-------------------) - 1,
554                      b
555
556                 2    2
557           sqrt(a  + b ) + a
558 x=2*atan(-------------------) - 1}
559                   b
560
561
562% Intersection of 2 curves: system with a free parameter.
563
564solve ({sqrt(x^2 + y^2)=r,0=sqrt(x)+ y**3-1},{x,y,r});
565
566
567     6      3
568{{x=y  - 2*y  + 1,
569
570  y=arbcomplex(12),
571
572          12      9      6      3    2
573  r=sqrt(y   - 4*y  + 6*y  - 4*y  + y  + 1)},
574
575     6      3
576 {x=y  - 2*y  + 1,
577
578  y=arbcomplex(11),
579
580             12      9      6      3    2
581  r= - sqrt(y   - 4*y  + 6*y  - 4*y  + y  + 1)}}
582
583
584solve ({e^x - e^(1/2 * x) - 7},{x});
585
586
587           - sqrt(29) + 1
588{x=2*log(-----------------),
589                 2
590
591          sqrt(29) + 1
592 x=2*log(--------------)}
593               2
594
595
596% Generally not liftable.
597
598   % variable inside and outside of sin.
599
600   solve({sin x + x - 1/2},{x});
601
602
603{x=root_of(2*sin(x_) + 2*x_ - 1,x_,tag_15)}
604
605
606   % Variable inside and outside of exponential.
607
608   solve({e^x - x**2},{x});
609
610
611                             - 1
612{x= - 2*lambert_w(-------------------------)}
613                   2*plus_or_minus(tag_16)
614
615
616   % Variable inside trigonometrical functions with different forms.
617
618   solve ({a*sin(x+1) + b*cos(x+2)},{x});
619
620
621                                                                        2    2
622{x=2*atan((cos(1)*a - sqrt(2*cos(2)*sin(1)*a*b - 2*cos(1)*sin(2)*a*b + a  + b )
623
624            - sin(2)*b)/(cos(2)*b + sin(1)*a)),
625
626                                                                        2    2
627 x=2*atan((cos(1)*a + sqrt(2*cos(2)*sin(1)*a*b - 2*cos(1)*sin(2)*a*b + a  + b )
628
629            - sin(2)*b)/(cos(2)*b + sin(1)*a))}
630
631
632   % Undetermined exponents.
633
634   solve({x^a - 2},{x});
635
636
637    1/a
638{x=2   }
639
640
641
642% Example taken from M.L. Griss, ACM Trans. Math. Softw. 2 (1976) 1.
643
644e1 := x1 - l/(3*k)$
645
646
647
648e2 := x2 - 1$
649
650
651
652e3 := x3 - 35*b6/(6*l)*x4 + 33*b11/(2*l)*x6 - 715*b15/(14*l)*x8$
653
654
655
656e4 := 14*k/(3*l)*x1 - 7*b4/(2*l)*x3 + x4$
657
658
659
660e5 := x5 - 891*b11/(40*l)*x6 +3861*b15/(56*l)*x8$
661
662
663
664e6 := -88*k/(15*l)*x1 + 22*b4/(5*l)*x3 - 99*b9/(8*l)*x5 +x6$
665
666
667
668e7 := -768*k/(5005*b13)*x1 + 576*b4/(5005*b13)*x3 -
669      324*b9/(1001*b13)*x5 + x7 - 16*l/(715*b13)*x8$
670
671
672
673e8 := 7*l/(143*b15)*x1 + 49*b6/(429*b15)*x4 - 21*b11/(65*b15)*x6 +
674      x8 - 7*b2/(143*b15)$
675
676
677
678solve({e1,e2,e3,e4,e5,e6,e7,e8},{x1,x2,x3,x4,x5,x6,x7,x8});
679
680
681       l
682{{x1=-----,
683      3*k
684
685  x2=1,
686
687                   2
688      5*(3*b2*k - l )
689  x3=-----------------,
690           6*k*l
691
692                             2        2
693      7*(45*b2*b4*k - 15*b4*l  - 8*k*l )
694  x4=------------------------------------,
695                         2
696                   36*k*l
697
698                                  2              2             2       4
699      2205*b2*b4*b6*k - 108*b2*k*l  - 735*b4*b6*l  - 392*b6*k*l  + 36*l
700  x5=--------------------------------------------------------------------,
701                                         3
702                                   32*k*l
703
704                                                2                  2
705  x6=(11*(893025*b2*b4*b6*b9*k - 11520*b2*b4*k*l  - 43740*b2*b9*k*l
706
707                              2            4                   2             4
708           - 297675*b4*b6*b9*l  + 3840*b4*l  - 158760*b6*b9*k*l  + 14580*b9*l
709
710                     4             4
711           + 2048*k*l ))/(11520*k*l ),
712
713                                                             2
714  x7=(47652707025*b11*b2*b4*b6*b9*k - 614718720*b11*b2*b4*k*l
715
716                                 2                             2
717       - 2334010140*b11*b2*b9*k*l  - 15884235675*b11*b4*b6*b9*l
718
719                           4                           2                     4
720       + 204906240*b11*b4*l  - 8471592360*b11*b6*b9*k*l  + 778003380*b11*b9*l
721
722                          4
723       + 109283328*b11*k*l  + 172398476250*b15*b2*b4*b6*b9*k
724
725                                 2                           2
726       - 2223936000*b15*b2*b4*k*l  - 8444007000*b15*b2*b9*k*l
727
728                                   2                     4
729       - 57466158750*b15*b4*b6*b9*l  + 741312000*b15*b4*l
730
731                                  2                      4                    4
732       - 30648618000*b15*b6*b9*k*l  + 2814669000*b15*b9*l  + 395366400*b15*k*l
733
734                               2                 4                   4
735       - 172872000*b2*b4*b6*k*l  + 8467200*b2*k*l  + 57624000*b4*b6*l
736
737                        4            6                         3
738       + 30732800*b6*k*l  - 2822400*l )/(7729722000*b13*b15*k*l ),
739
740                                                             2
741  x8=(7*(972504225*b11*b2*b4*b6*b9*k - 12545280*b11*b2*b4*k*l
742
743                                  2                           2
744          - 47632860*b11*b2*b9*k*l  - 324168075*b11*b4*b6*b9*l
745
746                            4                          2                    4
747          + 4181760*b11*b4*l  - 172889640*b11*b6*b9*k*l  + 15877620*b11*b9*l
748
749                           4                       2                4
750          + 2230272*b11*k*l  - 3528000*b2*b4*b6*k*l  + 172800*b2*k*l
751
752                           4                4          6                    4
753          + 1176000*b4*b6*l  + 627200*b6*k*l  - 57600*l ))/(24710400*b15*k*l )}}
754
755
756
757f1 := x1 - x*x2 - y*x3 + 1/2*x**2*x4 + x*y*x5 + 1/2*y**2*x6 +
758      1/6*x**3*x7 + 1/2*x*y*(x - y)*x8 - 1/6*y**3*x9$
759
760
761
762f2 := x1 - y*x3 + 1/2*y**2*x6 - 1/6*y**3*x9$
763
764
765
766f3 := x1 + y*x2 - y*x3 + 1/2*y**2*x4 - y**2*x5 + 1/2*y**2*x6 +
767      1/6*y**3*x7 + 1/2*y**3*x8 - 1/6*y**3*x9$
768
769
770
771f4 := x1 + (1 - x)*x2 - x*x3 + 1/2*(1 - x)**2*x4 - y*(1 - x)*x5 +
772      1/2*y**2*x6 + 1/6*(1 - x)**3*x7 + 1/2*y*(1 - x - y)*(1 - x)*x8
773      - 1/6*y**3*x9$
774
775
776
777f5 := x1 + (1 - x - y)*x2 + 1/2*(1 - x - y)**2*x4 +
778      1/6*(1 - x - y)**3*x7$
779
780
781
782f6 := x1 + (1 - x - y)*x3 + 1/2*(1 - x - y)*x6 +
783      1/6*(1 - x - y)**3*x9$
784
785
786
787f7 := x1 - x*x2 + (1 - y)*x3 + 1/2*x*x4 - x*(1 - y)*x5 +
788      1/2*(1 - y)**2*x6 - 1/6*x**3*x7 + 1/2*x*(1 - y)*(1 - y + x)*x8
789      + 1/6*(1-y)**3*x9$
790
791
792
793f8 := x1 - x*x2 + x*x3 + 1/2*x**2*x4 - x**2*x5 + 1/2*x**2*x6 +
794      1/6*x**3*x7 - 1/2*x**3*x8 + 1/6*x**3*x9$
795
796
797
798f9 := x1 - x*x2 + 1/2*x**2*x4 + 1/6*x**3*x7$
799
800
801
802solve({f1,f2,f3,f4,f5,f6,f7,f8,f9},{x1,x2,x3,x4,x5,x6,x7,x8,x9});
803
804
805{{x1=0,x2=0,x3=0,x4=0,x5=0,x6=0,x7=0,x8=0,x9=0}}
806
807
808solve({f1 - 1,f2,f3,f4,f5,f6,f7,f8,f9},{x1,x2,x3,x4,x5,x6,x7,x8,x9});
809
810
811               8         8      7  3       7  2       7         7       6  4
812{{x1=(y*( - 8*x *y + 10*x  + 9*x *y  - 49*x *y  + 85*x *y - 43*x  + 23*x *y
813
814                 6  3        6  2        6         6       5  5        5  4
815          - 128*x *y  + 266*x *y  - 246*x *y + 77*x  + 20*x *y  - 145*x *y
816
817                 5  3        5  2        5         5      4  6       4  5
818          + 383*x *y  - 512*x *y  + 329*x *y - 75*x  + 9*x *y  - 84*x *y
819
820                 4  4        4  3        4  2        4         4      3  7
821          + 276*x *y  - 469*x *y  + 464*x *y  - 233*x *y + 43*x  + 3*x *y
822
823                3  6       3  5        3  4        3  3        3  2       3
824          - 23*x *y  + 97*x *y  - 196*x *y  + 245*x *y  - 201*x *y  + 87*x *y
825
826                3      2  8       2  7       2  6       2  5       2  4
827          - 14*x  - 2*x *y  + 13*x *y  - 25*x *y  + 23*x *y  - 10*x *y
828
829                2  3       2  2       2        2        9         8         7
830          - 17*x *y  + 31*x *y  - 15*x *y + 2*x  - 2*x*y  + 10*x*y  - 24*x*y
831
832                  6         5         4         3        2            6      5
833          + 41*x*y  - 57*x*y  + 53*x*y  - 24*x*y  + 2*x*y  + x*y - 2*y  + 7*y
834
835               4      3    2       10        10      9  2       9         9
836          - 9*y  + 5*y  - y ))/(2*x  *y - 4*x   + 8*x *y  - 24*x *y + 20*x
837
838            8  3       8  2       8         8       7  4       7  3        7  2
839         + x *y  - 17*x *y  + 47*x *y - 31*x  - 24*x *y  + 92*x *y  - 105*x *y
840
841               7         7       6  5        6  4        6  3        6  2
842         + 18*x *y + 15*x  - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y
843
844                6        6       5  6        5  5        5  4        5  3
845         - 104*x *y + 4*x  - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y
846
847                5  2       5        5      4  7       4  6       4  5       4  4
848         - 278*x *y  + 83*x *y - 5*x  + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y
849
850                4  3       4  2       4      4       3  8        3  7
851         - 149*x *y  + 97*x *y  - 24*x *y + x  + 20*x *y  - 118*x *y
852
853                3  6        3  5        3  4       3  3      3  2      3
854         + 244*x *y  - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y
855
856               2  9       2  8        2  7        2  6        2  5       2  4
857         + 13*x *y  - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y
858
859               2  3      2  2        10         9         8          7
860         + 23*x *y  - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y
861
862                  6         5         4        3      9       8       7      6
863         + 100*x*y  - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y
864
865              5
866         + 2*y ),
867
868         10        10      9  2       9        9      8  3      8  2      8
869  x2=(2*x  *y - 2*x   + 5*x *y  - 12*x *y + 7*x  - 8*x *y  + 9*x *y  + 2*x *y
870
871          8       7  4       7  3       7  2       7         7      6  5
872       - x  - 15*x *y  + 65*x *y  - 83*x *y  + 52*x *y - 17*x  + 5*x *y
873
874            6  4       6  3       6  2       6         6       5  6        5  5
875       - 5*x *y  - 20*x *y  + 46*x *y  - 54*x *y + 20*x  + 23*x *y  - 151*x *y
876
877              5  4        5  3        5  2       5        5       4  7
878       + 321*x *y  - 338*x *y  + 166*x *y  - 13*x *y - 8*x  + 29*x *y
879
880              4  6        4  5        4  4        4  3        4  2       4
881       - 207*x *y  + 523*x *y  - 676*x *y  + 522*x *y  - 222*x *y  + 36*x *y
882
883          4       3  8        3  7        3  6        3  5        3  4
884       + x  + 16*x *y  - 103*x *y  + 300*x *y  - 463*x *y  + 433*x *y
885
886              3  3       3  2       3      2  9       2  7       2  6       2  5
887       - 268*x *y  + 98*x *y  - 15*x *y - x *y  + 22*x *y  - 54*x *y  + 60*x *y
888
889             2  4       2  3       2  2      2          10         9         8
890       - 56*x *y  + 44*x *y  - 17*x *y  + 2*x *y - 2*x*y   + 10*x*y  - 22*x*y
891
892               7         6         5         4        3      2      7      6
893       + 34*x*y  - 48*x*y  + 48*x*y  - 23*x*y  + 2*x*y  + x*y  - 2*y  + 7*y
894
895            5      4    3         10        10      9  2       9         9
896       - 9*y  + 5*y  - y )/(x*(2*x  *y - 4*x   + 8*x *y  - 24*x *y + 20*x
897
898               8  3       8  2       8         8       7  4       7  3
899            + x *y  - 17*x *y  + 47*x *y - 31*x  - 24*x *y  + 92*x *y
900
901                   7  2       7         7       6  5        6  4        6  3
902            - 105*x *y  + 18*x *y + 15*x  - 28*x *y  + 172*x *y  - 350*x *y
903
904                   6  2        6        6       5  6        5  5        5  4
905            + 308*x *y  - 104*x *y + 4*x  - 14*x *y  + 103*x *y  - 290*x *y
906
907                   5  3        5  2       5        5      4  7       4  6
908            + 401*x *y  - 278*x *y  + 83*x *y - 5*x  + 6*x *y  - 35*x *y
909
910                  4  5       4  4        4  3       4  2       4      4
911            + 14*x *y  + 90*x *y  - 149*x *y  + 97*x *y  - 24*x *y + x
912
913                  3  8        3  7        3  6        3  5        3  4
914            + 20*x *y  - 118*x *y  + 244*x *y  - 237*x *y  + 117*x *y
915
916                  3  3      3  2      3         2  9       2  8        2  7
917            - 21*x *y  - 7*x *y  + 2*x *y + 13*x *y  - 86*x *y  + 228*x *y
918
919                   2  6        2  5       2  4       2  3      2  2        10
920            - 294*x *y  + 204*x *y  - 86*x *y  + 23*x *y  - 2*x *y  + 4*x*y
921
922                    9         8          7          6         5         4
923            - 31*x*y  + 84*x*y  - 121*x*y  + 100*x*y  - 48*x*y  + 15*x*y
924
925                   3      9       8       7      6      5
926            - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y  + 2*y )),
927
928         9        9      8  2       8         8      7  3       7  2        7
929  x3=(2*x *y - 4*x  + 8*x *y  - 32*x *y + 26*x  + 9*x *y  - 70*x *y  + 131*x *y
930
931             7      6  4       6  3        6  2        6         6       5  5
932       - 66*x  + 7*x *y  - 73*x *y  + 226*x *y  - 253*x *y + 89*x  + 11*x *y
933
934             5  4        5  3        5  2        5         5       4  6
935       - 81*x *y  + 244*x *y  - 383*x *y  + 280*x *y - 73*x  + 13*x *y
936
937             4  5        4  4        4  3        4  2        4         4
938       - 89*x *y  + 235*x *y  - 367*x *y  + 360*x *y  - 189*x *y + 39*x
939
940            3  7       3  6        3  5        3  4        3  3        3  2
941       + 9*x *y  - 59*x *y  + 156*x *y  - 227*x *y  + 231*x *y  - 171*x *y
942
943             3         3      2  8       2  7       2  6       2  5       2  4
944       + 74*x *y - 13*x  + 3*x *y  - 21*x *y  + 62*x *y  - 78*x *y  + 51*x *y
945
946             2  3       2  2       2        2        8         7         6
947       - 35*x *y  + 30*x *y  - 14*x *y + 2*x  - 5*x*y  + 18*x*y  - 22*x*y
948
949            5         4         3      2            8      7      6    5      4
950       - x*y  + 21*x*y  - 13*x*y  + x*y  + x*y + 2*y  - 6*y  + 6*y  + y  - 6*y
951
952            3    2      10        10      9  2       9         9    8  3
953       + 4*y  - y )/(2*x  *y - 4*x   + 8*x *y  - 24*x *y + 20*x  + x *y
954
955               8  2       8         8       7  4       7  3        7  2
956         - 17*x *y  + 47*x *y - 31*x  - 24*x *y  + 92*x *y  - 105*x *y
957
958               7         7       6  5        6  4        6  3        6  2
959         + 18*x *y + 15*x  - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y
960
961                6        6       5  6        5  5        5  4        5  3
962         - 104*x *y + 4*x  - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y
963
964                5  2       5        5      4  7       4  6       4  5       4  4
965         - 278*x *y  + 83*x *y - 5*x  + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y
966
967                4  3       4  2       4      4       3  8        3  7
968         - 149*x *y  + 97*x *y  - 24*x *y + x  + 20*x *y  - 118*x *y
969
970                3  6        3  5        3  4       3  3      3  2      3
971         + 244*x *y  - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y
972
973               2  9       2  8        2  7        2  6        2  5       2  4
974         + 13*x *y  - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y
975
976               2  3      2  2        10         9         8          7
977         + 23*x *y  - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y
978
979                  6         5         4        3      9       8       7      6
980         + 100*x*y  - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y
981
982              5
983         + 2*y ),
984
985            9        9      8  2       8        8      7  3       7  2       7
986  x4=(2*(2*x *y - 2*x  + 4*x *y  - 10*x *y + 6*x  - 9*x *y  + 21*x *y  - 13*x *y
987
988             7       6  4       6  3        6  2       6         6       5  5
989          + x  - 18*x *y  + 88*x *y  - 130*x *y  + 74*x *y - 14*x  - 10*x *y
990
991                5  4        5  3        5  2       5         5      4  6
992          + 74*x *y  - 180*x *y  + 191*x *y  - 90*x *y + 15*x  + 4*x *y
993
994                4  5       4  4        4  3        4  2       4        4
995          - 18*x *y  - 20*x *y  + 105*x *y  - 111*x *y  + 47*x *y - 7*x
996
997                3  7       3  6        3  5        3  4       3  3      3  2
998          + 16*x *y  - 96*x *y  + 188*x *y  - 155*x *y  + 44*x *y  + 8*x *y
999
1000               3      3       2  8       2  7        2  6        2  5
1001          - 6*x *y + x  + 10*x *y  - 62*x *y  + 164*x *y  - 219*x *y
1002
1003                 2  4       2  3       2  2    2        9         8         7
1004          + 154*x *y  - 56*x *y  + 10*x *y  - x *y + x*y  - 13*x*y  + 45*x*y
1005
1006                  6         5         4         3        2      8      7      6
1007          - 72*x*y  + 64*x*y  - 35*x*y  + 12*x*y  - 2*x*y  + 2*y  - 7*y  + 9*y
1008
1009               5    4          10        10      9  2       9         9    8  3
1010          - 5*y  + y ))/(x*(2*x  *y - 4*x   + 8*x *y  - 24*x *y + 20*x  + x *y
1011
1012                  8  2       8         8       7  4       7  3        7  2
1013            - 17*x *y  + 47*x *y - 31*x  - 24*x *y  + 92*x *y  - 105*x *y
1014
1015                  7         7       6  5        6  4        6  3        6  2
1016            + 18*x *y + 15*x  - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y
1017
1018                   6        6       5  6        5  5        5  4        5  3
1019            - 104*x *y + 4*x  - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y
1020
1021                   5  2       5        5      4  7       4  6       4  5
1022            - 278*x *y  + 83*x *y - 5*x  + 6*x *y  - 35*x *y  + 14*x *y
1023
1024                  4  4        4  3       4  2       4      4       3  8
1025            + 90*x *y  - 149*x *y  + 97*x *y  - 24*x *y + x  + 20*x *y
1026
1027                   3  7        3  6        3  5        3  4       3  3      3  2
1028            - 118*x *y  + 244*x *y  - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y
1029
1030                 3         2  9       2  8        2  7        2  6        2  5
1031            + 2*x *y + 13*x *y  - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y
1032
1033                  2  4       2  3      2  2        10         9         8
1034            - 86*x *y  + 23*x *y  - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y
1035
1036                     7          6         5         4        3      9       8
1037            - 121*x*y  + 100*x*y  - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y
1038
1039                  7      6      5
1040            + 15*y  - 9*y  + 2*y )),
1041
1042         10        10      9  2       9        9      8  3       8  2       8
1043  x5=(2*x  *y - 2*x   + 7*x *y  - 16*x *y + 7*x  - 3*x *y  - 11*x *y  + 21*x *y
1044
1045          8       7  4       7  3       7  2       7         7      6  5
1046       - x  - 18*x *y  + 60*x *y  - 46*x *y  + 23*x *y - 17*x  - 4*x *y
1047
1048             6  4       6  3       6  2       6         6       5  6       5  5
1049       + 38*x *y  - 70*x *y  + 40*x *y  - 36*x *y + 20*x  + 14*x *y  - 86*x *y
1050
1051              5  4        5  3        5  2       5        5       4  7
1052       + 164*x *y  - 182*x *y  + 114*x *y  - 14*x *y - 8*x  + 24*x *y
1053
1054              4  6        4  5        4  4        4  3        4  2       4
1055       - 167*x *y  + 387*x *y  - 455*x *y  + 348*x *y  - 164*x *y  + 32*x *y
1056
1057          4       3  8        3  7        3  6        3  5        3  4
1058       + x  + 21*x *y  - 130*x *y  + 339*x *y  - 458*x *y  + 370*x *y
1059
1060              3  3       3  2       3        2  9       2  8        2  7
1061       - 211*x *y  + 81*x *y  - 14*x *y + 5*x *y  - 43*x *y  + 140*x *y
1062
1063              2  6        2  5       2  4       2  3       2  2      2
1064       - 209*x *y  + 165*x *y  - 86*x *y  + 42*x *y  - 16*x *y  + 2*x *y
1065
1066              9         8         7         6        5        4      3      2
1067       - 5*x*y  + 20*x*y  - 32*x*y  + 16*x*y  + 8*x*y  - 9*x*y  + x*y  + x*y
1068
1069            9      8      7    6      5      4    3           10        10
1070       + 2*y  - 6*y  + 6*y  + y  - 6*y  + 4*y  - y )/(x*y*(2*x  *y - 4*x
1071
1072                 9  2       9         9    8  3       8  2       8         8
1073            + 8*x *y  - 24*x *y + 20*x  + x *y  - 17*x *y  + 47*x *y - 31*x
1074
1075                  7  4       7  3        7  2       7         7       6  5
1076            - 24*x *y  + 92*x *y  - 105*x *y  + 18*x *y + 15*x  - 28*x *y
1077
1078                   6  4        6  3        6  2        6        6       5  6
1079            + 172*x *y  - 350*x *y  + 308*x *y  - 104*x *y + 4*x  - 14*x *y
1080
1081                   5  5        5  4        5  3        5  2       5        5
1082            + 103*x *y  - 290*x *y  + 401*x *y  - 278*x *y  + 83*x *y - 5*x
1083
1084                 4  7       4  6       4  5       4  4        4  3       4  2
1085            + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y  - 149*x *y  + 97*x *y
1086
1087                  4      4       3  8        3  7        3  6        3  5
1088            - 24*x *y + x  + 20*x *y  - 118*x *y  + 244*x *y  - 237*x *y
1089
1090                   3  4       3  3      3  2      3         2  9       2  8
1091            + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y + 13*x *y  - 86*x *y
1092
1093                   2  7        2  6        2  5       2  4       2  3      2  2
1094            + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y  + 23*x *y  - 2*x *y
1095
1096                   10         9         8          7          6         5
1097            + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y  + 100*x*y  - 48*x*y
1098
1099                    4        3      9       8       7      6      5
1100            + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y  + 2*y )),
1101
1102            9        9      8  2       8         8      7  3       7  2
1103  x6=(2*(2*x *y - 4*x  + 8*x *y  - 24*x *y + 16*x  - 2*x *y  - 19*x *y
1104
1105                7         7       6  4       6  3       6  2       6         6
1106          + 50*x *y - 23*x  - 20*x *y  + 71*x *y  - 46*x *y  - 15*x *y + 12*x
1107
1108               5  5       5  4        5  3        5  2       5        5
1109          - 8*x *y  + 82*x *y  - 195*x *y  + 155*x *y  - 46*x *y + 2*x
1110
1111               4  6       4  5       4  4        4  3        4  2       4
1112          + 8*x *y  - 11*x *y  - 81*x *y  + 184*x *y  - 142*x *y  + 46*x *y
1113
1114               4       3  6       3  5    3  4       3  3       3  2       3
1115          - 4*x  - 21*x *y  + 50*x *y  + x *y  - 60*x *y  + 49*x *y  - 14*x *y
1116
1117             3      2  8       2  7       2  6       2  5       2  4      2  3
1118          + x  + 6*x *y  - 34*x *y  + 82*x *y  - 99*x *y  + 54*x *y  - 8*x *y
1119
1120               2  2    2          8         7         6         5         4
1121          - 4*x *y  + x *y - 6*x*y  + 38*x*y  - 79*x*y  + 78*x*y  - 41*x*y
1122
1123                  3      2      7       6       5      4    3          10
1124          + 11*x*y  - x*y  - 4*y  + 10*y  - 10*y  + 5*y  - y ))/(y*(2*x  *y
1125
1126                 10      9  2       9         9    8  3       8  2       8
1127            - 4*x   + 8*x *y  - 24*x *y + 20*x  + x *y  - 17*x *y  + 47*x *y
1128
1129                  8       7  4       7  3        7  2       7         7
1130            - 31*x  - 24*x *y  + 92*x *y  - 105*x *y  + 18*x *y + 15*x
1131
1132                  6  5        6  4        6  3        6  2        6        6
1133            - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y  - 104*x *y + 4*x
1134
1135                  5  6        5  5        5  4        5  3        5  2       5
1136            - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y  - 278*x *y  + 83*x *y
1137
1138                 5      4  7       4  6       4  5       4  4        4  3
1139            - 5*x  + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y  - 149*x *y
1140
1141                  4  2       4      4       3  8        3  7        3  6
1142            + 97*x *y  - 24*x *y + x  + 20*x *y  - 118*x *y  + 244*x *y
1143
1144                   3  5        3  4       3  3      3  2      3         2  9
1145            - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y + 13*x *y
1146
1147                  2  8        2  7        2  6        2  5       2  4       2  3
1148            - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y  + 23*x *y
1149
1150                 2  2        10         9         8          7          6
1151            - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y  + 100*x*y
1152
1153                    5         4        3      9       8       7      6      5
1154            - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y  + 2*y )),
1155
1156          7  2      7      7    6  3      6  2      6        6      5  4
1157  x7=(6*(x *y  - 2*x *y + x  + x *y  - 4*x *y  + 5*x *y - 2*x  - 6*x *y
1158
1159                5  3       5  2       5        5      4  5       4  4
1160          + 26*x *y  - 38*x *y  + 21*x *y - 3*x  - 8*x *y  + 49*x *y
1161
1162                 4  3        4  2       4        4    3  6       3  5       3  4
1163          - 106*x *y  + 101*x *y  - 41*x *y + 5*x  - x *y  + 12*x *y  - 42*x *y
1164
1165                3  3       3  2       3      3      2  7       2  6       2  5
1166          + 69*x *y  - 52*x *y  + 15*x *y - x  + 4*x *y  - 27*x *y  + 59*x *y
1167
1168                2  4       2  3      2  2    2          8         7         6
1169          - 52*x *y  + 14*x *y  + 3*x *y  - x *y + 3*x*y  - 18*x*y  + 39*x*y
1170
1171                  5         4         3      2      7      6      5      4    3
1172          - 48*x*y  + 34*x*y  - 11*x*y  + x*y  + 2*y  - 5*y  + 6*y  - 4*y  + y )
1173
1174               10        10      9  2       9         9    8  3       8  2
1175      )/(x*(2*x  *y - 4*x   + 8*x *y  - 24*x *y + 20*x  + x *y  - 17*x *y
1176
1177                   8         8       7  4       7  3        7  2       7
1178             + 47*x *y - 31*x  - 24*x *y  + 92*x *y  - 105*x *y  + 18*x *y
1179
1180                   7       6  5        6  4        6  3        6  2        6
1181             + 15*x  - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y  - 104*x *y
1182
1183                  6       5  6        5  5        5  4        5  3        5  2
1184             + 4*x  - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y  - 278*x *y
1185
1186                   5        5      4  7       4  6       4  5       4  4
1187             + 83*x *y - 5*x  + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y
1188
1189                    4  3       4  2       4      4       3  8        3  7
1190             - 149*x *y  + 97*x *y  - 24*x *y + x  + 20*x *y  - 118*x *y
1191
1192                    3  6        3  5        3  4       3  3      3  2      3
1193             + 244*x *y  - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y
1194
1195                   2  9       2  8        2  7        2  6        2  5
1196             + 13*x *y  - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y
1197
1198                   2  4       2  3      2  2        10         9         8
1199             - 86*x *y  + 23*x *y  - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y
1200
1201                      7          6         5         4        3      9       8
1202             - 121*x*y  + 100*x*y  - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y
1203
1204                   7      6      5
1205             + 15*y  - 9*y  + 2*y )),
1206
1207               9    8  2       8         8      7  3       7  2       7
1208  x8=(2*( - 2*x  + x *y  - 10*x *y + 13*x  + 5*x *y  - 24*x *y  + 49*x *y
1209
1210                7      6  4       6  3       6  2       6         6      5  5
1211          - 30*x  + 8*x *y  - 41*x *y  + 75*x *y  - 78*x *y + 32*x  + 7*x *y
1212
1213                5  4       5  3       5  2       5         5    4  6      4  5
1214          - 35*x *y  + 61*x *y  - 56*x *y  + 41*x *y - 16*x  - x *y  + 9*x *y
1215
1216                4  4       4  3       4  2      4        4       3  7       3  6
1217          - 10*x *y  + 15*x *y  - 22*x *y  + 6*x *y + 3*x  - 10*x *y  + 57*x *y
1218
1219                 3  5       3  4       3  3       3  2       3        2  8
1220          - 107*x *y  + 91*x *y  - 55*x *y  + 34*x *y  - 10*x *y - 8*x *y
1221
1222                2  7        2  6        2  5       2  4       2  3       2  2
1223          + 46*x *y  - 105*x *y  + 116*x *y  - 63*x *y  + 23*x *y  - 11*x *y
1224
1225               2          9         8         7         6         5        4
1226          + 2*x *y - 2*x*y  + 16*x*y  - 42*x*y  + 54*x*y  - 34*x*y  + 6*x*y
1227
1228               3      2      8      7      6      5    4    3            10
1229          + x*y  + x*y  - 2*y  + 6*y  - 7*y  + 3*y  + y  - y ))/(x*y*(2*x  *y
1230
1231                 10      9  2       9         9    8  3       8  2       8
1232            - 4*x   + 8*x *y  - 24*x *y + 20*x  + x *y  - 17*x *y  + 47*x *y
1233
1234                  8       7  4       7  3        7  2       7         7
1235            - 31*x  - 24*x *y  + 92*x *y  - 105*x *y  + 18*x *y + 15*x
1236
1237                  6  5        6  4        6  3        6  2        6        6
1238            - 28*x *y  + 172*x *y  - 350*x *y  + 308*x *y  - 104*x *y + 4*x
1239
1240                  5  6        5  5        5  4        5  3        5  2       5
1241            - 14*x *y  + 103*x *y  - 290*x *y  + 401*x *y  - 278*x *y  + 83*x *y
1242
1243                 5      4  7       4  6       4  5       4  4        4  3
1244            - 5*x  + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y  - 149*x *y
1245
1246                  4  2       4      4       3  8        3  7        3  6
1247            + 97*x *y  - 24*x *y + x  + 20*x *y  - 118*x *y  + 244*x *y
1248
1249                   3  5        3  4       3  3      3  2      3         2  9
1250            - 237*x *y  + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y + 13*x *y
1251
1252                  2  8        2  7        2  6        2  5       2  4       2  3
1253            - 86*x *y  + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y  + 23*x *y
1254
1255                 2  2        10         9         8          7          6
1256            - 2*x *y  + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y  + 100*x*y
1257
1258                    5         4        3      9       8       7      6      5
1259            - 48*x*y  + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y  + 2*y )),
1260
1261               7  2      7        7      6  3       6  2      6        6    5  4
1262  x9=(6*( - 2*x *y  + 2*x *y + 4*x  - 4*x *y  + 16*x *y  - 6*x *y - 8*x  + x *y
1263
1264                5  3       5  2       5        5      4  5      4  4       4  3
1265          + 18*x *y  - 56*x *y  + 26*x *y + 3*x  + 4*x *y  - 6*x *y  - 40*x *y
1266
1267                4  2       4        4      3  6       3  5      3  4       3  3
1268          + 82*x *y  - 38*x *y + 2*x  - 6*x *y  + 15*x *y  - 9*x *y  + 32*x *y
1269
1270                3  2       3      3    2  7      2  5      2  4      2  3
1271          - 46*x *y  + 19*x *y - x  + x *y  - 5*x *y  + 2*x *y  - 7*x *y
1272
1273                2  2      2          8        7        6         5         4
1274          + 10*x *y  - 3*x *y - 2*x*y  + 9*x*y  - 4*x*y  - 16*x*y  + 22*x*y
1275
1276                 3      7      6      5      4      3          10        10
1277          - 9*x*y  - 2*y  + 2*y  + 2*y  - 4*y  + 2*y ))/(y*(2*x  *y - 4*x
1278
1279                 9  2       9         9    8  3       8  2       8         8
1280            + 8*x *y  - 24*x *y + 20*x  + x *y  - 17*x *y  + 47*x *y - 31*x
1281
1282                  7  4       7  3        7  2       7         7       6  5
1283            - 24*x *y  + 92*x *y  - 105*x *y  + 18*x *y + 15*x  - 28*x *y
1284
1285                   6  4        6  3        6  2        6        6       5  6
1286            + 172*x *y  - 350*x *y  + 308*x *y  - 104*x *y + 4*x  - 14*x *y
1287
1288                   5  5        5  4        5  3        5  2       5        5
1289            + 103*x *y  - 290*x *y  + 401*x *y  - 278*x *y  + 83*x *y - 5*x
1290
1291                 4  7       4  6       4  5       4  4        4  3       4  2
1292            + 6*x *y  - 35*x *y  + 14*x *y  + 90*x *y  - 149*x *y  + 97*x *y
1293
1294                  4      4       3  8        3  7        3  6        3  5
1295            - 24*x *y + x  + 20*x *y  - 118*x *y  + 244*x *y  - 237*x *y
1296
1297                   3  4       3  3      3  2      3         2  9       2  8
1298            + 117*x *y  - 21*x *y  - 7*x *y  + 2*x *y + 13*x *y  - 86*x *y
1299
1300                   2  7        2  6        2  5       2  4       2  3      2  2
1301            + 228*x *y  - 294*x *y  + 204*x *y  - 86*x *y  + 23*x *y  - 2*x *y
1302
1303                   10         9         8          7          6         5
1304            + 4*x*y   - 31*x*y  + 84*x*y  - 121*x*y  + 100*x*y  - 48*x*y
1305
1306                    4        3      9       8       7      6      5
1307            + 15*x*y  - 3*x*y  + 4*y  - 12*y  + 15*y  - 9*y  + 2*y ))}}
1308
1309
1310
1311% The following examples were discussed in Char, B.W., Fee, G.J.,
1312% Geddes, K.O., Gonnet, G.H., Monagan, M.B., Watt, S.M., "On the
1313% Design and Performance of the Maple System", Proc. 1984 Macsyma
1314% Users' Conference, G.E., Schenectady, NY, 1984, 199-219.
1315
1316% Problem 1.
1317
1318solve({ -22319*x0+25032*x1-83247*x2+67973*x3+54189*x4
1319       -67793*x5+81135*x6+22293*x7+27327*x8+96599*x9-15144,
1320       79815*x0+37299*x1-28495*x2-52463*x3+25708*x4 -55333*x5-
1321       2742*x6+83127*x7-29417*x8-43202*x9+93314, -29065*x0-77803*x1-
1322       49717*x2-64748*x3-68324*x4 -50162*x5-64222*x6-
1323       4716*x7+30737*x8+22971*x9+90348, 62470*x0+59658*x1-
1324       46120*x2+58376*x3-28208*x4 -74506*x5+28491*x6+21099*x7+29149*x8-
1325       20387*x9+36254, -98233*x0-26263*x1-63227*x2+34307*x3+92294*x4
1326       +10148*x5+3192*x6+24044*x7-83764*x8-1121*x9+13871,
1327       -20427*x0+62666*x1+27330*x2-78670*x3+9036*x4 +56024*x5-4525*x6-
1328       50589*x7-62127*x8-32846*x9+38466,
1329       -85609*x0+5424*x1+86992*x2+59651*x3-60859*x4 -55984*x5-
1330       6061*x6+44417*x7+92421*x8+6701*x9-9459,
1331       -68255*x0+19652*x1+92650*x2-93032*x3-30191*x4 -31075*x5-
1332       89060*x6+12150*x7-78089*x8-12462*x9+1027, 55526*x0-
1333       91202*x1+91329*x2-25919*x3-98215*x4 +30554*x5+913*x6-
1334       35751*x7+17948*x8-58850*x9+66583, 40612*x0+84364*x1-
1335       83317*x2+10658*x3+37213*x4 +50489*x5+72040*x6-
1336       21227*x7+60772*x8+95114*x9-68533});
1337
1338
1339Unknowns: {x0,x1,x2,x3,x4,x5,x6,x7,x8,x9}
1340
1341      4352444991703786550093529782474564455970663240687
1342{{x0=---------------------------------------------------,
1343      8420785423059099972039395927798127489505890997055
1344
1345      459141297061698284317621371232198410031030658042
1346  x1=---------------------------------------------------,
1347      1684157084611819994407879185559625497901178199411
1348
1349      1068462443128238131632235196977352568525519548284
1350  x2=---------------------------------------------------,
1351      1684157084611819994407879185559625497901178199411
1352
1353      1645748379263608982132912334741766606871657041427
1354  x3=---------------------------------------------------,
1355      1684157084611819994407879185559625497901178199411
1356
1357      25308331428404990886292916036626876985377936966579
1358  x4=----------------------------------------------------,
1359      42103927115295499860196979638990637447529454985275
1360
1361      17958909252564152456194678743404876001526265937527
1362  x5=----------------------------------------------------,
1363      42103927115295499860196979638990637447529454985275
1364
1365       - 50670056205024448621117426699348037457452368820774
1366  x6=-------------------------------------------------------,
1367       42103927115295499860196979638990637447529454985275
1368
1369       - 11882862555847887107599498171234654114612212813799
1370  x7=-------------------------------------------------------,
1371       42103927115295499860196979638990637447529454985275
1372
1373       - 273286267131634194631661772113331181980867938658
1374  x8=-----------------------------------------------------,
1375       8420785423059099972039395927798127489505890997055
1376
1377      46816360472823082478331070276129336252954604132203
1378  x9=----------------------------------------------------}}
1379      42103927115295499860196979638990637447529454985275
1380
1381
1382solve({ -22319*x0+25032*x1-83247*x2+67973*x3+54189*x4
1383        -67793*x5+81135*x6+22293*x7+27327*x8+96599*x9-15144,
1384        79815*x0+37299*x1-28495*x2-52463*x3+25708*x4 -55333*x5-
1385        2742*x6+83127*x7-29417*x8-43202*x9+93314, -29065*x0-77803*x1-
1386        49717*x2-64748*x3-68324*x4 -50162*x5-64222*x6-
1387        4716*x7+30737*x8+22971*x9+90348, 62470*x0+59658*x1-
1388        46120*x2+58376*x3-28208*x4-74506*x5+28491*x6+21099*x7+29149*x8-
1389        20387*x9+36254,-98233*x0-26263*x1-63227*x2+34307*x3+92294*x4
1390        +10148*x5+3192*x6+24044*x7-83764*x8-1121*x9+13871,
1391        -20427*x0+62666*x1+27330*x2-78670*x3+9036*x4 +56024*x5-4525*x6-
1392        50589*x7-62127*x8-32846*x9+38466,
1393        -85609*x0+5424*x1+86992*x2+59651*x3-60859*x4 -55984*x5-
1394        6061*x6+44417*x7+92421*x8+6701*x9-9459,
1395        -68255*x0+19652*x1+92650*x2-93032*x3-30191*x4 -31075*x5-
1396        89060*x6+12150*x7-78089*x8-12462*x9+1027, 55526*x0-
1397        91202*x1+91329*x2-25919*x3-98215*x4 +30554*x5+913*x6-
1398        35751*x7+17948*x8-58850*x9+66583, 40612*x0+84364*x1-
1399        83317*x2+10658*x3+37213*x4 +50489*x5+72040*x6-
1400        21227*x7+60772*x8+95114*x9-68533});
1401
1402
1403Unknowns: {x0,x1,x2,x3,x4,x5,x6,x7,x8,x9}
1404
1405      4352444991703786550093529782474564455970663240687
1406{{x0=---------------------------------------------------,
1407      8420785423059099972039395927798127489505890997055
1408
1409      459141297061698284317621371232198410031030658042
1410  x1=---------------------------------------------------,
1411      1684157084611819994407879185559625497901178199411
1412
1413      1068462443128238131632235196977352568525519548284
1414  x2=---------------------------------------------------,
1415      1684157084611819994407879185559625497901178199411
1416
1417      1645748379263608982132912334741766606871657041427
1418  x3=---------------------------------------------------,
1419      1684157084611819994407879185559625497901178199411
1420
1421      25308331428404990886292916036626876985377936966579
1422  x4=----------------------------------------------------,
1423      42103927115295499860196979638990637447529454985275
1424
1425      17958909252564152456194678743404876001526265937527
1426  x5=----------------------------------------------------,
1427      42103927115295499860196979638990637447529454985275
1428
1429       - 50670056205024448621117426699348037457452368820774
1430  x6=-------------------------------------------------------,
1431       42103927115295499860196979638990637447529454985275
1432
1433       - 11882862555847887107599498171234654114612212813799
1434  x7=-------------------------------------------------------,
1435       42103927115295499860196979638990637447529454985275
1436
1437       - 273286267131634194631661772113331181980867938658
1438  x8=-----------------------------------------------------,
1439       8420785423059099972039395927798127489505890997055
1440
1441      46816360472823082478331070276129336252954604132203
1442  x9=----------------------------------------------------}}
1443      42103927115295499860196979638990637447529454985275
1444
1445
1446
1447% The next two problems give the current routines some trouble and
1448% have therefore been commented out.
1449
1450% Problem 2.
1451
1452comment
1453solve({ 81*x30-96*x21-45, -36*x4+59*x29+26,
1454       -59*x26+5*x3-33, -81*x19-92*x23-21*x17-9, -46*x29-
1455       13*x22+22*x24+83, 47*x4-47*x14-15*x26-40, 83*x30+70*x17+56*x10-
1456       31, 10*x27-90*x9+52*x21+52, -33*x20-97*x26+20*x6-76,
1457       97*x16+41*x8-13*x12+66, 16*x16-52*x10-73*x28+49, -28*x1-53*x24-
1458       x27-67, -22*x26-29*x24+73*x10+8, 88*x18+61*x19-98*x9-55, 99*x28-
1459       91*x26+26*x21-95, -6*x18+25*x7-77*x2+99, 28*x13-50*x17-52*x14-64,
1460       -50*x20+26*x11+93*x2+77, -70*x8+74*x19-94*x26+86, -18*x18-2*x16-
1461       79*x23+91, 36*x26-13*x11-53*x25-5, 10*x7+57*x16-85*x10-14,
1462       -3*x27+44*x4+52*x22-1, 21*x11+20*x25-30*x4-83, 70*x2-97*x19-
1463       41*x26-50, -51*x8+95*x12-85*x26+45, 83*x30+41*x12+50*x2+53,
1464       -4*x26+69*x8-58*x5-95, 59*x27-78*x30-66*x23+16, -10*x20-36*x11-
1465       60*x1-59});
1466
1467
1468
1469% Problem 3.
1470comment
1471solve({ 115*x40+566*x41-378*x42+11401086415/6899901,
1472       560*x0-45*x1-506*x2-11143386403/8309444, -621*x1-
1473       328*x2+384*x3+1041841/64675, -856*x2+54*x3+869*x4-41430291/24700,
1474       596*x3-608*x4-560*x5-10773384/11075,
1475       -61*x4+444*x5+924*x6+4185100079/11278780, 67*x5-95*x6-
1476       682*x7+903866812/6618863, 196*x6+926*x7-930*x8-
1477       2051864151/2031976, -302*x7-311*x8-890*x9-14210414139/27719792,
1478       121*x8-781*x9-125*x10-4747129093/39901584, 10*x9+555*x10-
1479       912*x11+32476047/3471829, -151*x38+732*x39-
1480       397*x40+327281689/173242, 913*x10-259*x11-982*x12-
1481       18080663/5014020, 305*x11+9*x12-357*x13+1500752933/1780680,
1482       179*x12-588*x13+665*x14+8128189/51832, 406*x13+843*x14-
1483       833*x15+201925713/97774, 107*x14+372*x15+505*x16-
1484       5161192791/3486415, 720*x15-212*x16+607*x17-31529295571/7197760,
1485       951*x16-685*x17+148*x18+1034546543/711104, -654*x17-
1486       899*x18+543*x19+1942961717/1646560,
1487       -448*x18+673*x19+702*x20+856422818/1286375, 396*x19-
1488       196*x20+218*x21-4386267866/21303625, -233*x20-796*x21-373*x22-
1489       85246365829/57545250, 921*x21-368*x22+730*x23-
1490       93446707622/51330363, -424*x22+378*x23+727*x24-
1491       6673617931/3477462, -633*x23+565*x24-208*x25+8607636805/4092942,
1492       971*x24+170*x25-865*x26-25224505/18354, 937*x25+333*x26-463*x27-
1493       339307103/1025430, 494*x26-8*x27-50*x28+57395804/34695,
1494       530*x27+631*x28-193*x29-8424597157/680022,
1495       -435*x28+252*x29+916*x30+196828511/19593, 327*x29+403*x30-
1496       845*x31+8458823325/5927971, 246*x30+881*x31-
1497       394*x32+13624765321/156546826, 946*x31+169*x32-43*x33-
1498       53594199271/126093183, -146*x32+503*x33-
1499       363*x34+66802797635/15234909, -132*x33-
1500       686*x34+376*x35+8167530636/902635, -38*x34-188*x35-
1501       583*x36+1814153743/1124240, 389*x35+562*x36-688*x37-
1502       12251043951/5513560, -769*x37-474*x38-89*x39-2725415872/1235019,
1503       -625*x36-122*x37+468*x38+7725682775/4506736,
1504       839*x39+936*x40+703*x41+1912091857/1000749,
1505       -314*x41+102*x42+790*x43+7290073150/8132873, -905*x42-
1506       454*x43+524*x44-10110944527/4538233, 379*x43+518*x44-328*x45-
1507       2071620692/519645, 284*x44-979*x45+690*x46-915987532/16665,
1508       198*x45-650*x46-763*x47+548801657/11220, 974*x46+12*x47+410*x48-
1509       3831097561/51051, -498*x47-135*x48-230*x49-18920705/9282,
1510       665*x48+156*x49+34*x0-27714736/156585, -519*x49-366*x0-730*x1-
1511       2958446681/798985});
1512
1513
1514
1515% Problem 4.
1516
1517% This one needs the Cramer code --- it takes forever otherwise.
1518
1519on cramer;
1520
1521
1522
1523solve({ -b*k8/a+c*k8/a, -b*k11/a+c*k11/a,
1524       -b*k10/a+c*k10/a+k2,
1525        -k3-b*k9/a+c*k9/a, -b*k14/a+c*k14/a, -b*k15/a+c*k15/a,
1526        -b*k18/a+c*k18/a-k2, -b*k17/a+c*k17/a, -b*k16/a+c*k16/a+k4,
1527        -b*k13/a+c*k13/a-b*k21/a+c*k21/a+b*k5/a-c*k5/a,
1528        b*k44/a-c*k44/a, -b*k45/a+c*k45/a, -b*k20/a+c*k20/a,
1529        -b*k44/a+c*k44/a, b*k46/a-c*k46/a,
1530        b**2*k47/a**2-2*b*c*k47/a**2+c**2*k47/a**2,
1531        k3, -k4, -b*k12/a+c*k12/a-a*k6/b+c*k6/b,
1532        -b*k19/a+c*k19/a+a*k7/c-b*k7/c, b*k45/a-c*k45/a,
1533        -b*k46/a+c*k46/a, -k48+c*k48/a+c*k48/b-c**2*k48/(a*b),
1534        -k49+b*k49/a+b*k49/c-b**2*k49/(a*c), a*k1/b-c*k1/b,
1535        a*k4/b-c*k4/b, a*k3/b-c*k3/b+k9, -k10+a*k2/b-c*k2/b,
1536        a*k7/b-c*k7/b, -k9, k11, b*k12/a-c*k12/a+a*k6/b-c*k6/b,
1537        a*k15/b-c*k15/b, k10+a*k18/b-c*k18/b,
1538        -k11+a*k17/b-c*k17/b, a*k16/b-c*k16/b,
1539        -a*k13/b+c*k13/b+a*k21/b-c*k21/b+a*k5/b-c*k5/b,
1540        -a*k44/b+c*k44/b, a*k45/b-c*k45/b,
1541        a*k14/c-b*k14/c+a*k20/b-c*k20/b, a*k44/b-c*k44/b,
1542        -a*k46/b+c*k46/b, -k47+c*k47/a+c*k47/b-c**2*k47/(a*b),
1543        a*k19/b-c*k19/b, -a*k45/b+c*k45/b, a*k46/b-c*k46/b,
1544        a**2*k48/b**2-2*a*c*k48/b**2+c**2*k48/b**2,
1545        -k49+a*k49/b+a*k49/c-a**2*k49/(b*c), k16, -k17,
1546        -a*k1/c+b*k1/c, -k16-a*k4/c+b*k4/c, -a*k3/c+b*k3/c,
1547        k18-a*k2/c+b*k2/c, b*k19/a-c*k19/a-a*k7/c+b*k7/c,
1548        -a*k6/c+b*k6/c, -a*k8/c+b*k8/c, -a*k11/c+b*k11/c+k17,
1549        -a*k10/c+b*k10/c-k18, -a*k9/c+b*k9/c,
1550        -a*k14/c+b*k14/c-a*k20/b+c*k20/b,
1551        -a*k13/c+b*k13/c+a*k21/c-b*k21/c-a*k5/c+b*k5/c,
1552        a*k44/c-b*k44/c, -a*k45/c+b*k45/c, -a*k44/c+b*k44/c,
1553        a*k46/c-b*k46/c, -k47+b*k47/a+b*k47/c-b**2*k47/(a*c),
1554        -a*k12/c+b*k12/c, a*k45/c-b*k45/c, -a*k46/c+b*k46/c,
1555        -k48+a*k48/b+a*k48/c-a**2*k48/(b*c),
1556        a**2*k49/c**2-2*a*b*k49/c**2+b**2*k49/c**2, k8, k11, -k15,
1557        k10-k18, -k17, k9, -k16, -k29, k14-k32, -k21+k23-k31,
1558        -k24-k30, -k35, k44, -k45, k36, k13-k23+k39, -k20+k38,
1559        k25+k37, b*k26/a-c*k26/a-k34+k42, -2*k44, k45, k46,
1560        b*k47/a-c*k47/a, k41, k44, -k46, -b*k47/a+c*k47/a,
1561        k12+k24, -k19-k25, -a*k27/b+c*k27/b-k33, k45, -k46,
1562        -a*k48/b+c*k48/b, a*k28/c-b*k28/c+k40, -k45, k46,
1563        a*k48/b-c*k48/b, a*k49/c-b*k49/c, -a*k49/c+b*k49/c,
1564        -k1, -k4, -k3, k15, k18-k2, k17, k16, k22, k25-k7,
1565        k24+k30, k21+k23-k31, k28, -k44, k45, -k30-k6, k20+k32,
1566        k27+b*k33/a-c*k33/a, k44, -k46, -b*k47/a+c*k47/a, -k36,
1567        k31-k39-k5, -k32-k38, k19-k37, k26-a*k34/b+c*k34/b-k42,
1568        k44, -2*k45, k46, a*k48/b-c*k48/b, a*k35/c-b*k35/c-k41,
1569        -k44, k46, b*k47/a-c*k47/a, -a*k49/c+b*k49/c, -k40, k45,
1570        -k46, -a*k48/b+c*k48/b, a*k49/c-b*k49/c, k1, k4, k3, -k8,
1571        -k11, -k10+k2, -k9, k37+k7, -k14-k38, -k22, -k25-k37, -k24+k6,
1572        -k13-k23+k39, -k28+b*k40/a-c*k40/a, k44, -k45, -k27, -k44,
1573        k46, b*k47/a-c*k47/a, k29, k32+k38, k31-k39+k5, -k12+k30,
1574        k35-a*k41/b+c*k41/b, -k44, k45, -k26+k34+a*k42/c-b*k42/c,
1575        k44, k45, -2*k46, -b*k47/a+c*k47/a, -a*k48/b+c*k48/b,
1576        a*k49/c-b*k49/c, k33, -k45, k46, a*k48/b-c*k48/b,
1577        -a*k49/c+b*k49/c },
1578       {k1, k2, k3, k4, k5, k6, k7, k8, k9, k10, k11, k12, k13, k14,
1579        k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26,
1580        k27, k28, k29, k30, k31, k32, k33, k34, k35, k36, k37, k38,
1581        k39, k40, k41, k42, k43, k44, k45, k46, k47, k48, k49});
1582
1583
1584{{k1=0,
1585
1586  k2=0,
1587
1588  k3=0,
1589
1590  k4=0,
1591
1592  k5=0,
1593
1594  k6=0,
1595
1596  k7=0,
1597
1598  k8=0,
1599
1600  k9=0,
1601
1602  k10=0,
1603
1604  k11=0,
1605
1606  k12=0,
1607
1608  k13=0,
1609
1610  k14=0,
1611
1612  k15=0,
1613
1614  k16=0,
1615
1616  k17=0,
1617
1618  k18=0,
1619
1620  k19=0,
1621
1622  k20=0,
1623
1624  k21=0,
1625
1626  k22=0,
1627
1628  k23=arbcomplex(14),
1629
1630  k24=0,
1631
1632  k25=0,
1633
1634       arbcomplex(15)*a
1635  k26=------------------,
1636              c
1637
1638  k27=0,
1639
1640  k28=0,
1641
1642  k29=0,
1643
1644  k30=0,
1645
1646  k31=arbcomplex(14),
1647
1648  k32=0,
1649
1650  k33=0,
1651
1652       arbcomplex(15)*b
1653  k34=------------------,
1654              c
1655
1656  k35=0,
1657
1658  k36=0,
1659
1660  k37=0,
1661
1662  k38=0,
1663
1664  k39=arbcomplex(14),
1665
1666  k40=0,
1667
1668  k41=0,
1669
1670  k42=arbcomplex(15),
1671
1672  k43=arbcomplex(16),
1673
1674  k44=0,
1675
1676  k45=0,
1677
1678  k46=0,
1679
1680  k47=0,
1681
1682  k48=0,
1683
1684  k49=0}}
1685
1686
1687off cramer;
1688
1689
1690
1691% Problem 5.
1692
1693solve ({2*a3*b3+a5*b3+a3*b5, a5*b3+2*a5*b5+a3*b5,
1694        a5*b5, a2*b2, a4*b4, a5*b1+b5+a4*b3+a3*b4,
1695        a5*b3+a5*b5+a3*b5+a3*b3, a0*b2+b2+a4*b2+a2*b4+c2+a2*b0+a2*b1,
1696        a0*b0+a0*b1+a0*b4+a3*b2+b0+b1+b4+a4*b0+a4*b1+a2*b5+a4*b4+c1+c4
1697        +a5*b2+a2*b3+c0,
1698        -1+a3*b0+a0*b3+a0*b5+a5*b0+b3+b5+a5*b4+a4*b3+a4*b5+a3*b4+a5*b1
1699        +a3*b1+c3+c5,
1700        b4+a4*b1, a5*b3+a3*b5, a2*b1+b2, a4*b5+a5*b4, a2*b4+a4*b2,
1701        a0*b5+a5*b0+a3*b4+2*a5*b4+a5*b1+b5+a4*b3+2*a4*b5+c5,
1702        a4*b0+2*a4*b4+a2*b5+b4+a4*b1+a5*b2+a0*b4+c4,
1703        c3+a0*b3+2*b3+b5+a4*b3+a3*b0+2*a3*b1+a5*b1+a3*b4,
1704        c1+a0*b1+2*b1+a4*b1+a2*b3+b0+a3*b2+b4});
1705
1706
1707Unknowns: {a0,a2,a3,a4,a5,b0,b1,b2,b3,b4,b5,c0,c1,c2,c3,c4,c5}
1708
1709{{a0=arbcomplex(25),
1710
1711  a2=0,
1712
1713       - 1
1714  a3=------,
1715       b1
1716
1717  a4=0,
1718
1719  a5=0,
1720
1721  b0=arbcomplex(24),
1722
1723  b1=arbcomplex(23),
1724
1725  b2=0,
1726
1727  b3=0,
1728
1729  b4=0,
1730
1731  b5=0,
1732
1733  c0= - a0*b0 + b1,
1734
1735  c1= - a0*b1 - b0 - 2*b1,
1736
1737  c2=0,
1738
1739      b0 + 2*b1
1740  c3=-----------,
1741         b1
1742
1743  c4=0,
1744
1745  c5=0},
1746
1747 {a0=arbcomplex(20),
1748
1749  a2=arbcomplex(21),
1750
1751  a3=0,
1752
1753  a4=0,
1754
1755  a5=0,
1756
1757  b0=arbcomplex(22),
1758
1759  b1=0,
1760
1761  b2=0,
1762
1763  b3=-1,
1764
1765  b4=0,
1766
1767  b5=0,
1768
1769  c0= - a0*b0,
1770
1771  c1=a2 - b0,
1772
1773  c2= - a2*b0,
1774
1775  c3=a0 + 2,
1776
1777  c4=0,
1778
1779  c5=0},
1780
1781 {a0=arbcomplex(17),
1782
1783  a2=0,
1784
1785  a3=0,
1786
1787  a4=0,
1788
1789  a5=0,
1790
1791  b0=arbcomplex(18),
1792
1793  b1=arbcomplex(19),
1794
1795  b2=0,
1796
1797  b3=-1,
1798
1799  b4=0,
1800
1801  b5=0,
1802
1803  c0= - a0*b0 + b1,
1804
1805  c1= - a0*b1 - b0 - 2*b1,
1806
1807  c2=0,
1808
1809  c3=a0 + 2,
1810
1811  c4=0,
1812
1813  c5=0}}
1814
1815
1816
1817% Problem 6.
1818
1819solve({2*a3*b3+a5*b3+a3*b5, a5*b3+2*a5*b5+a3*b5,
1820       a4*b4, a5*b3+a5*b5+a3*b5+a3*b3, b1, a3*b3, a2*b2, a5*b5,
1821       a5*b1+b5+a4*b3+a3*b4, a0*b2+b2+a4*b2+a2*b4+c2+a2*b0+a2*b1,
1822       b4+a4*b1, b3+a3*b1, a5*b3+a3*b5, a2*b1+b2, a4*b5+a5*b4,
1823       a2*b4+a4*b2, a0*b0+a0*b1+a0*b4+a3*b2+b0+b1+b4+a4*b0+a4*b1
1824       +a2*b5+a4*b4+c1+c4+a5*b2+a2*b3+c0,-1+a3*b0+a0*b3+a0*b5+a5*b0
1825       +b3+b5+a5*b4+a4*b3+a4*b5+a3*b4+a5*b1+a3*b1+c3+c5,
1826       a0*b5+a5*b0+a3*b4+2*a5*b4+a5*b1+b5+a4*b3+2*a4*b5+c5,
1827       a4*b0+2*a4*b4+a2*b5+b4+a4*b1+a5*b2+a0*b4+c4,
1828       c3+a0*b3+2*b3+b5+a4*b3+a3*b0+2*a3*b1+a5*b1+a3*b4,
1829       c1+a0*b1+2*b1+a4*b1+a2*b3+b0+a3*b2+b4});
1830
1831
1832Unknowns: {a0,a2,a3,a4,a5,b0,b1,b2,b3,b4,b5,c0,c1,c2,c3,c4,c5}
1833
1834{}
1835
1836
1837% Example cited by Bruno Buchberger
1838%        in R.Janssen: Trends in Computer Algebra,
1839%     Springer, 1987
1840% Geometry of a simple robot,
1841%   l1,l2   length of arms
1842%   ci,si   cos and sin of rotation angles
1843
1844
1845solve( { c1*c2 -cf*ct*cp + sf*sp,
1846         s1*c2 - sf*ct*cp - cf*sp,
1847         s2 + st*cp,
1848         -c1*s2 - cf*ct*sp + sf*cp,
1849         -s1*s2 + sf*ct*sp - cf*cp,
1850         c2 - st*sp,
1851         s1 - cf*st,
1852         -c1 - sf*st,
1853         ct,
1854         l2*c1*c2 - px,
1855         l2*s1*c2 - py,
1856         l2*s2 + l1 - pz,
1857         c1**2 + s1**2 -1,
1858         c2**2 + s2**2 -1,
1859         cf**2 + sf**2 -1,
1860         ct**2 + st**2 -1,
1861         cp**2 + sp**2 -1},
1862      {c1,c2,s1,s2,py,cf,ct,cp,sf,st,sp});
1863
1864
1865                2               2     2
1866      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
1867{{c1=---------------------------------------,
1868              2               2     2
1869            l1  - 2*l1*pz - l2  + pz
1870
1871                   2               2     2
1872       - sqrt( - l1  + 2*l1*pz + l2  - pz )
1873  c2=---------------------------------------,
1874                       l2
1875
1876             2               2     2     2
1877      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1878  s1=---------------------------------------,
1879                2               2     2
1880         sqrt(l1  - 2*l1*pz - l2  + pz )
1881
1882       - l1 + pz
1883  s2=------------,
1884          l2
1885
1886  py
1887
1888                 2               2     2         2               2     2     2
1889     - sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1890  =-----------------------------------------------------------------------------
1891                                 2               2     2
1892                          sqrt(l1  - 2*l1*pz - l2  + pz )
1893
1894  ,
1895
1896             2               2     2     2
1897      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1898  cf=---------------------------------------,
1899                2               2     2
1900         sqrt(l1  - 2*l1*pz - l2  + pz )
1901
1902  ct=0,
1903
1904      l1 - pz
1905  cp=---------,
1906        l2
1907
1908                   2               2     2
1909       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
1910  sf=------------------------------------------,
1911               2               2     2
1912             l1  - 2*l1*pz - l2  + pz
1913
1914  st=1,
1915
1916                   2               2     2
1917       - sqrt( - l1  + 2*l1*pz + l2  - pz )
1918  sp=---------------------------------------},
1919                       l2
1920
1921                2               2     2
1922      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
1923 {c1=---------------------------------------,
1924              2               2     2
1925            l1  - 2*l1*pz - l2  + pz
1926
1927                   2               2     2
1928       - sqrt( - l1  + 2*l1*pz + l2  - pz )
1929  c2=---------------------------------------,
1930                       l2
1931
1932             2               2     2     2
1933      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1934  s1=---------------------------------------,
1935                2               2     2
1936         sqrt(l1  - 2*l1*pz - l2  + pz )
1937
1938       - l1 + pz
1939  s2=------------,
1940          l2
1941
1942  py
1943
1944                 2               2     2         2               2     2     2
1945     - sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1946  =-----------------------------------------------------------------------------
1947                                 2               2     2
1948                          sqrt(l1  - 2*l1*pz - l2  + pz )
1949
1950  ,
1951
1952                2               2     2     2
1953       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1954  cf=------------------------------------------,
1955                 2               2     2
1956          sqrt(l1  - 2*l1*pz - l2  + pz )
1957
1958  ct=0,
1959
1960       - l1 + pz
1961  cp=------------,
1962          l2
1963
1964                2               2     2
1965      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
1966  sf=---------------------------------------,
1967              2               2     2
1968            l1  - 2*l1*pz - l2  + pz
1969
1970  st=-1,
1971
1972                2               2     2
1973      sqrt( - l1  + 2*l1*pz + l2  - pz )
1974  sp=------------------------------------},
1975                      l2
1976
1977                2               2     2
1978      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
1979 {c1=---------------------------------------,
1980              2               2     2
1981            l1  - 2*l1*pz - l2  + pz
1982
1983                   2               2     2
1984       - sqrt( - l1  + 2*l1*pz + l2  - pz )
1985  c2=---------------------------------------,
1986                       l2
1987
1988                2               2     2     2
1989       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
1990  s1=------------------------------------------,
1991                 2               2     2
1992          sqrt(l1  - 2*l1*pz - l2  + pz )
1993
1994       - l1 + pz
1995  s2=------------,
1996          l2
1997
1998                2               2     2         2               2     2     2
1999      sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2000  py=--------------------------------------------------------------------------,
2001                                 2               2     2
2002                          sqrt(l1  - 2*l1*pz - l2  + pz )
2003
2004             2               2     2     2
2005      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2006  cf=---------------------------------------,
2007                2               2     2
2008         sqrt(l1  - 2*l1*pz - l2  + pz )
2009
2010  ct=0,
2011
2012       - l1 + pz
2013  cp=------------,
2014          l2
2015
2016                2               2     2
2017      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2018  sf=---------------------------------------,
2019              2               2     2
2020            l1  - 2*l1*pz - l2  + pz
2021
2022  st=-1,
2023
2024                2               2     2
2025      sqrt( - l1  + 2*l1*pz + l2  - pz )
2026  sp=------------------------------------},
2027                      l2
2028
2029                2               2     2
2030      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2031 {c1=---------------------------------------,
2032              2               2     2
2033            l1  - 2*l1*pz - l2  + pz
2034
2035                   2               2     2
2036       - sqrt( - l1  + 2*l1*pz + l2  - pz )
2037  c2=---------------------------------------,
2038                       l2
2039
2040                2               2     2     2
2041       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2042  s1=------------------------------------------,
2043                 2               2     2
2044          sqrt(l1  - 2*l1*pz - l2  + pz )
2045
2046       - l1 + pz
2047  s2=------------,
2048          l2
2049
2050                2               2     2         2               2     2     2
2051      sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2052  py=--------------------------------------------------------------------------,
2053                                 2               2     2
2054                          sqrt(l1  - 2*l1*pz - l2  + pz )
2055
2056                2               2     2     2
2057       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2058  cf=------------------------------------------,
2059                 2               2     2
2060          sqrt(l1  - 2*l1*pz - l2  + pz )
2061
2062  ct=0,
2063
2064      l1 - pz
2065  cp=---------,
2066        l2
2067
2068                   2               2     2
2069       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2070  sf=------------------------------------------,
2071               2               2     2
2072             l1  - 2*l1*pz - l2  + pz
2073
2074  st=1,
2075
2076                   2               2     2
2077       - sqrt( - l1  + 2*l1*pz + l2  - pz )
2078  sp=---------------------------------------},
2079                       l2
2080
2081                   2               2     2
2082       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2083 {c1=------------------------------------------,
2084               2               2     2
2085             l1  - 2*l1*pz - l2  + pz
2086
2087                2               2     2
2088      sqrt( - l1  + 2*l1*pz + l2  - pz )
2089  c2=------------------------------------,
2090                      l2
2091
2092             2               2     2     2
2093      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2094  s1=---------------------------------------,
2095                2               2     2
2096         sqrt(l1  - 2*l1*pz - l2  + pz )
2097
2098       - l1 + pz
2099  s2=------------,
2100          l2
2101
2102                2               2     2         2               2     2     2
2103      sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2104  py=--------------------------------------------------------------------------,
2105                                 2               2     2
2106                          sqrt(l1  - 2*l1*pz - l2  + pz )
2107
2108             2               2     2     2
2109      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2110  cf=---------------------------------------,
2111                2               2     2
2112         sqrt(l1  - 2*l1*pz - l2  + pz )
2113
2114  ct=0,
2115
2116      l1 - pz
2117  cp=---------,
2118        l2
2119
2120                2               2     2
2121      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2122  sf=---------------------------------------,
2123              2               2     2
2124            l1  - 2*l1*pz - l2  + pz
2125
2126  st=1,
2127
2128                2               2     2
2129      sqrt( - l1  + 2*l1*pz + l2  - pz )
2130  sp=------------------------------------},
2131                      l2
2132
2133                   2               2     2
2134       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2135 {c1=------------------------------------------,
2136               2               2     2
2137             l1  - 2*l1*pz - l2  + pz
2138
2139                2               2     2
2140      sqrt( - l1  + 2*l1*pz + l2  - pz )
2141  c2=------------------------------------,
2142                      l2
2143
2144             2               2     2     2
2145      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2146  s1=---------------------------------------,
2147                2               2     2
2148         sqrt(l1  - 2*l1*pz - l2  + pz )
2149
2150       - l1 + pz
2151  s2=------------,
2152          l2
2153
2154                2               2     2         2               2     2     2
2155      sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2156  py=--------------------------------------------------------------------------,
2157                                 2               2     2
2158                          sqrt(l1  - 2*l1*pz - l2  + pz )
2159
2160                2               2     2     2
2161       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2162  cf=------------------------------------------,
2163                 2               2     2
2164          sqrt(l1  - 2*l1*pz - l2  + pz )
2165
2166  ct=0,
2167
2168       - l1 + pz
2169  cp=------------,
2170          l2
2171
2172                   2               2     2
2173       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2174  sf=------------------------------------------,
2175               2               2     2
2176             l1  - 2*l1*pz - l2  + pz
2177
2178  st=-1,
2179
2180                   2               2     2
2181       - sqrt( - l1  + 2*l1*pz + l2  - pz )
2182  sp=---------------------------------------},
2183                       l2
2184
2185                   2               2     2
2186       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2187 {c1=------------------------------------------,
2188               2               2     2
2189             l1  - 2*l1*pz - l2  + pz
2190
2191                2               2     2
2192      sqrt( - l1  + 2*l1*pz + l2  - pz )
2193  c2=------------------------------------,
2194                      l2
2195
2196                2               2     2     2
2197       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2198  s1=------------------------------------------,
2199                 2               2     2
2200          sqrt(l1  - 2*l1*pz - l2  + pz )
2201
2202       - l1 + pz
2203  s2=------------,
2204          l2
2205
2206  py
2207
2208                 2               2     2         2               2     2     2
2209     - sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2210  =-----------------------------------------------------------------------------
2211                                 2               2     2
2212                          sqrt(l1  - 2*l1*pz - l2  + pz )
2213
2214  ,
2215
2216             2               2     2     2
2217      sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2218  cf=---------------------------------------,
2219                2               2     2
2220         sqrt(l1  - 2*l1*pz - l2  + pz )
2221
2222  ct=0,
2223
2224       - l1 + pz
2225  cp=------------,
2226          l2
2227
2228                   2               2     2
2229       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2230  sf=------------------------------------------,
2231               2               2     2
2232             l1  - 2*l1*pz - l2  + pz
2233
2234  st=-1,
2235
2236                   2               2     2
2237       - sqrt( - l1  + 2*l1*pz + l2  - pz )
2238  sp=---------------------------------------},
2239                       l2
2240
2241                   2               2     2
2242       - sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2243 {c1=------------------------------------------,
2244               2               2     2
2245             l1  - 2*l1*pz - l2  + pz
2246
2247                2               2     2
2248      sqrt( - l1  + 2*l1*pz + l2  - pz )
2249  c2=------------------------------------,
2250                      l2
2251
2252                2               2     2     2
2253       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2254  s1=------------------------------------------,
2255                 2               2     2
2256          sqrt(l1  - 2*l1*pz - l2  + pz )
2257
2258       - l1 + pz
2259  s2=------------,
2260          l2
2261
2262  py
2263
2264                 2               2     2         2               2     2     2
2265     - sqrt( - l1  + 2*l1*pz + l2  - pz )*sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2266  =-----------------------------------------------------------------------------
2267                                 2               2     2
2268                          sqrt(l1  - 2*l1*pz - l2  + pz )
2269
2270  ,
2271
2272                2               2     2     2
2273       - sqrt(l1  - 2*l1*pz - l2  + px  + pz )
2274  cf=------------------------------------------,
2275                 2               2     2
2276          sqrt(l1  - 2*l1*pz - l2  + pz )
2277
2278  ct=0,
2279
2280      l1 - pz
2281  cp=---------,
2282        l2
2283
2284                2               2     2
2285      sqrt( - l1  + 2*l1*pz + l2  - pz )*px
2286  sf=---------------------------------------,
2287              2               2     2
2288            l1  - 2*l1*pz - l2  + pz
2289
2290  st=1,
2291
2292                2               2     2
2293      sqrt( - l1  + 2*l1*pz + l2  - pz )
2294  sp=------------------------------------}}
2295                      l2
2296
2297
2298% Steady state computation of a prototypical chemical
2299% reaction network (the "Edelstein" network)
2300
2301solve(
2302 { alpha * c1 - beta * c1**2 - gamma*c1*c2 + epsilon*c3,
2303   -gamma*c1*c2 + (epsilon+theta)*c3 -eta *c2,
2304   gamma*c1*c2 + eta*c2 - (epsilon+theta) * c3},
2305  {c3,c2,c1});
2306
2307
2308               2
2309      c1*( - c1 *beta*gamma + c1*alpha*gamma - c1*beta*eta + alpha*eta)
2310{{c3=-------------------------------------------------------------------,
2311                        c1*gamma*theta - epsilon*eta
2312
2313      c1*( - c1*beta*epsilon - c1*beta*theta + alpha*epsilon + alpha*theta)
2314  c2=-----------------------------------------------------------------------,
2315                          c1*gamma*theta - epsilon*eta
2316
2317  c1=arbcomplex(26)}}
2318
2319
2320solve(
2321{( - 81*y1**2*y2**2 + 594*y1**2*y2 - 225*y1**2 + 594*y1*y2**2 - 3492*
2322y1*y2 - 750*y1 - 225*y2**2 - 750*y2 + 14575)/81,
2323( - 81*y2**2*y3**2 + 594*y2**2*y3 - 225*y2**2 + 594*y2*y3**2 - 3492*
2324y2*y3 - 750*y2 - 225*y3**2 - 750*y3 + 14575)/81,
2325( - 81*y1**2*y3**2 + 594*y1**2*y3 - 225*y1**2 + 594*y1*y3**2 - 3492*
2326y1*y3 - 750*y1 - 225*y3**2 - 750*y3 + 14575)/81,
2327(2*(81*y1**2*y2**2*y3 + 81*y1**2*y2*y3**2 - 594*y1**2*y2*y3 - 225*y1
2328**2*y2 - 225*y1**2*y3 + 1650*y1**2 + 81*y1*y2**2*y3**2 - 594*y1*
2329y2**2*y3 - 225*y1*y2**2 - 594*y1*y2*y3**2 + 2592*y1*y2*y3 + 2550
2330*y1*y2 - 225*y1*y3**2 + 2550*y1*y3 - 3575*y1 - 225*y2**2*y3 +
23311650*y2**2 - 225*y2*y3**2 + 2550*y2*y3 - 3575*y2 + 1650*y3**2 -
23323575*y3 - 30250))/81}, {y1,y2,y3});
2333
2334
2335           2
2336{{y1=(99*y3  - 582*y3
2337
2338                      4          3           2
2339       + 4*sqrt(243*y3  - 3348*y3  + 15282*y3  - 26100*y3 + 11875)*sqrt(2) - 125
2340
2341                2
2342      )/(3*(9*y3  - 66*y3 + 25)),
2343
2344           2
2345  y2=(99*y3  - 582*y3
2346
2347                      4          3           2
2348       - 4*sqrt(243*y3  - 3348*y3  + 15282*y3  - 26100*y3 + 11875)*sqrt(2) - 125
2349
2350                2
2351      )/(3*(9*y3  - 66*y3 + 25)),
2352
2353  y3=arbcomplex(27)},
2354
2355           2
2356 {y1=(99*y3  - 582*y3
2357
2358                      4          3           2
2359       - 4*sqrt(243*y3  - 3348*y3  + 15282*y3  - 26100*y3 + 11875)*sqrt(2) - 125
2360
2361                2
2362      )/(3*(9*y3  - 66*y3 + 25)),
2363
2364           2
2365  y2=(99*y3  - 582*y3
2366
2367                      4          3           2
2368       + 4*sqrt(243*y3  - 3348*y3  + 15282*y3  - 26100*y3 + 11875)*sqrt(2) - 125
2369
2370                2
2371      )/(3*(9*y3  - 66*y3 + 25)),
2372
2373  y3=arbcomplex(28)},
2374
2375      11      11      11
2376 {y1=----,y2=----,y3=----},
2377      3       3       3
2378
2379       - 5       - 5       - 5
2380 {y1=------,y2=------,y3=------}}
2381       3         3         3
2382
2383
2384% Another nice nonlinear system.
2385
2386solve({y=x+t^2,x=y+u^2},{x,y,u,t});
2387
2388
2389         2
2390{{x=y - t ,
2391
2392  y=arbcomplex(32),
2393
2394  u=t*i,
2395
2396  t=arbcomplex(31)},
2397
2398         2
2399 {x=y - t ,
2400
2401  y=arbcomplex(30),
2402
2403  u= - t*i,
2404
2405  t=arbcomplex(29)}}
2406
2407
2408% Example from Stan Kameny (relation between Gamma function values)
2409%   containing surds in the coefficients.
2410
2411solve({x54=x14/4,x54*x34=sqrt pi/sqrt 2*x32,x32=x12/2,
2412       x12=sqrt pi, x14*x34=pi*sqrt 2});
2413
2414
2415Unknowns: {x12,x14,x32,x34,x54}
2416
2417{{x12=sqrt(pi),
2418
2419  x14=4*arbcomplex(33),
2420
2421       sqrt(pi)
2422  x32=----------,
2423          2
2424
2425       sqrt(2)*pi
2426  x34=------------,
2427         4*x54
2428
2429  x54=arbcomplex(33)}}
2430
2431
2432% A system given by J. Hietarinta with complex coefficients.
2433
2434on complex;
2435
2436
2437
2438apu := {2*a - a6,2*b*c3 - 1,i - 2*x + 1,2*x**2 - 2*x + 1,n1 + 1}$
2439
2440
2441
2442solve apu;
2443
2444
2445Unknowns: {a,a6,b,c3,n1,x}
2446
2447     arbcomplex(35)
2448{{a=----------------,
2449           2
2450
2451  a6=arbcomplex(35),
2452
2453      1
2454  b=------,
2455     2*c3
2456
2457  c3=arbcomplex(34),
2458
2459  n1=-1,
2460
2461       1
2462  x=-------}}
2463     1 - i
2464
2465
2466clear apu;
2467
2468
2469
2470off complex;
2471
2472
2473
2474% a trivial system which led to a wrong result:
2475
2476{a**2*b - a*b**2 + 1, a**2*b + a*b**2 - 1}$
2477
2478
2479
2480solve ws;
2481
2482
2483Unknowns: {a,b}
2484
2485{}
2486
2487
2488% also communicated by Jarmo Hietarinta
2489
2490% More examples that can now be solved.
2491
2492solve({e^(x+y)-1,x-y},{x,y});
2493
2494
2495{{x=log(-1),y=log(-1)},{x=0,y=0}}
2496
2497
2498solve({e^(x+y)+sin x,x-y},{x,y});
2499
2500
2501                 2*y_
2502{{x=y,y=root_of(e     + sin(y_),y_,tag_18)}}
2503 % no algebraic solution exists.
2504
2505solve({e^(x+y)-1,x-y**2},{x,y});
2506
2507
2508     2          2
2509{{x=y ,y=0},{x=y ,y=-1}}
2510
2511
2512solve(e^(y^2) * e^y -1,y);
2513
2514
2515{y=0}
2516
2517
2518solve(e^(y^2 +y)-1,y);
2519
2520
2521{y=0}
2522
2523
2524solve(e^(y^2)-1,y);
2525
2526
2527{y=0}
2528
2529
2530solve(e^(y^2+1)-1,y);
2531
2532
2533{y=i,y= - i}
2534
2535
2536solve({e^(x+y+z)-1,x-y**2=1,x**2-z=2},{x,y,z});
2537
2538
2539     2
2540{{x=y  + 1,
2541
2542                         1                      1
2543                  asinh(---)             asinh(---)
2544                         2                      2
2545  y=sqrt(3)*cosh(------------)*i + sinh(------------),
2546                      3                      3
2547
2548     4      2
2549  z=y  + 2*y  - 1},
2550
2551     2
2552 {x=y  + 1,
2553
2554                            1                      1
2555                     asinh(---)             asinh(---)
2556                            2                      2
2557  y= - sqrt(3)*cosh(------------)*i + sinh(------------),
2558                         3                      3
2559
2560     4      2
2561  z=y  + 2*y  - 1},
2562
2563     2
2564 {x=y  + 1,
2565
2566                      1
2567               asinh(---)
2568                      2
2569  y= - 2*sinh(------------),
2570                   3
2571
2572     4      2
2573  z=y  + 2*y  - 1},
2574
2575     2            4      2
2576 {x=y  + 1,y=0,z=y  + 2*y  - 1}}
2577
2578
2579solve(e^(y^4+3y^2+y)-1,y);
2580
2581
2582                           2/3                   1/3  1/3
2583{y=(sqrt( - 3*(sqrt(5) + 3)    - 12*(sqrt(5) + 3)   *2    + 2*sqrt(
2584
2585                           2/3  2/3                1/3           1/3  1/6
2586            9*(sqrt(5) + 3)   *2    + (sqrt(5) + 3)   *sqrt(15)*3   *3
2587
2588                              1/3          1/3  1/6                   1/3
2589             + 3*(sqrt(5) + 3)   *sqrt(3)*3   *3    + 12*(sqrt(5) + 3)
2590
2591                  1/3           1/6      1/3          1/6      1/3   1/3  1/6
2592             + 2*6   *sqrt(15)*3    + 6*6   *sqrt(3)*3    + 6*2   )*3   *3
2593
2594               2/3                 1/3            1/3
2595          - 3*2   ) + (sqrt(5) + 3)   *sqrt(3) - 2   *sqrt(3))/(2
2596
2597                    1/6  1/6
2598      *(sqrt(5) + 3)   *2   *sqrt(3))}
2599
2600
2601% Transcendental equations proposed by Roger Germundsson
2602% <roger@isy.liu.se>
2603
2604eq1 := 2*asin(x) + asin(2*x) - PI/2;
2605
2606
2607        2*asin(2*x) + 4*asin(x) - pi
2608eq1 := ------------------------------
2609                     2
2610
2611eq2 := 2*asin(x) - acos(3*x);
2612
2613
2614eq2 :=  - acos(3*x) + 2*asin(x)
2615
2616eq3 := acos(x) - atan(x);
2617
2618
2619eq3 := acos(x) - atan(x)
2620
2621eq4 := acos(2*x**2 - 4*x -x) - 2*asin(x);
2622
2623
2624               2
2625eq4 := acos(2*x  - 5*x) - 2*asin(x)
2626
2627eq5 := 2*atan(x) - atan( 2*x/(1-x**2) );
2628
2629
2630              2*x
2631eq5 := atan(--------) + 2*atan(x)
2632              2
2633             x  - 1
2634
2635
2636sol1 := solve(eq1,x);
2637
2638
2639            sqrt(3) - 1
2640sol1 := {x=-------------}
2641                 2
2642
2643sol2 := solve(eq2,x);
2644
2645
2646            sqrt(17) - 3
2647sol2 := {x=--------------}
2648                 4
2649
2650sol3 := solve(eq3,x);
2651
2652
2653            sqrt(sqrt(5) - 1)
2654sol3 := {x=-------------------}
2655                 sqrt(2)
2656
2657sol4 := solve(eq4,x);
2658
2659
2660sol4 := {}
2661
2662sol5 := solve(eq5,x);
2663
2664
2665sol5 := {x=arbcomplex(37)}
2666   % This solution should be the open interval
2667			% (-1,1).
2668
2669% Example 52 of M. Wester: the function has no real zero although
2670%  REDUCE 3.5 and Maple tend to return 3/4.
2671
2672if solve(sqrt(x^2 +1) - x +2,x) neq {} then rederr "Illegal result";
2673
2674
2675
2676% Using a root_of expression as an algebraic number.
2677
2678solve(x^5 - x - 1,x);
2679
2680
2681             5
2682{x=root_of(x_  - x_ - 1,x_,tag_24)}
2683
2684
2685w:=rhs first ws;
2686
2687
2688               5
2689w := root_of(x_  - x_ - 1,x_,tag_24)
2690
2691
2692w^5;
2693
2694
2695          5
2696root_of(x_  - x_ - 1,x_,tag_24) + 1
2697
2698
2699w^5-w;
2700
2701
27021
2703
2704
2705clear w;
2706
2707
2708
2709% The following examples come from Daniel Lichtblau of WRI and were
2710% communicated by Laurent.Bernardin from ETH Zuerich.
2711
2712solve(x-Pi/2 = cos(x+Pi),x);
2713
2714
2715{x=root_of(2*cos(x_) - pi + 2*x_,x_,tag_26)}
2716
2717
2718solve(exp(x^2+x+2)-1,x);
2719
2720
2721    sqrt(7)*i - 1
2722{x=---------------}
2723          2
2724
2725
2726solve(log(sqrt(1+z)/sqrt(z-1))=x,z);
2727
2728
2729     2*x
2730    e    + 1
2731{z=----------}
2732     2*x
2733    e    - 1
2734
2735
2736solve({exp(x+3*y-2)=7,3^(2*x-y+4)=2},{x,y});
2737
2738
2739   x + 3*y      2
2740{{e        - 7*e =0},
2741
2742      2*x      y
2743 {81*3    - 2*3 =0}}
2744
2745
2746solve(a*3^(c*t)+b*3^((c+a)*t),t);
2747
2748
2749          - a
2750    log(------)
2751          b
2752{t=-------------}
2753     log(3)*a
2754
2755
2756solve(log(x+sqrt(x^2+a))=b,{x});
2757
2758
2759     2*b
2760    e    - a
2761{x=----------}
2762         b
2763      2*e
2764
2765
2766solve(z=log(w)/log(2)+w^2,w);
2767
2768
2769                              2
2770{w=root_of(log(w_) + log(2)*w_  - log(2)*z,w_,tag_29)}
2771
2772
2773solve(w*2^(w^2)=5,w);
2774
2775
2776              2
2777            w_
2778{w=root_of(2   *w_ - 5,w_,tag_31)}
2779
2780
2781solve(log(x/y)=1/y^2*(x+(1/x)),y);
2782
2783
2784                x        2    2
2785{y=root_of(log(----)*x*y_  - x  - 1,y_,tag_33)}
2786                y_
2787
2788
2789solve(exp(z)=w*z^(-n),z);
2790
2791
2792             n  z_
2793{z=root_of(z_ *e   - w,z_,tag_35)}
2794
2795
2796solve(-log(3)+log(2+y/3)/2-log(y/3)/2=(-I)/2*Pi,y);
2797
2798
2799     - 3
2800{y=------}
2801     5
2802
2803
2804solve(-log(x)-log(y/x)/2+log(2+y/x)/2=(-3*I)/2*Pi,y);
2805
2806
2807     - 2*x
2808{y=--------}
2809     2
2810    x  + 1
2811
2812
2813solve((I+1)*log(x)+(3*I+3)*log(x+3)=7,x);
2814
2815
2816             i         3*i   4       i         3*i   3        i         3*i   2
2817{x=root_of(x_ *(x_ + 3)   *x_  + 9*x_ *(x_ + 3)   *x_  + 27*x_ *(x_ + 3)   *x_
2818
2819                   i         3*i       7
2820            + 27*x_ *(x_ + 3)   *x_ - e ,x_,tag_37)}
2821
2822
2823solve(x+sqrt(x)=1,x);
2824
2825
2826     - sqrt(5) + 3
2827{x=----------------}
2828          2
2829
2830
2831solve({cos(1/5+alpha+x)=5,cos(2/5+alpha-x)=6},{alpha,x});
2832
2833
2834       5*alpha - 5*x + 2
2835{{cos(-------------------) - 6=0},
2836               5
2837
2838       5*alpha + 5*x + 1
2839 {cos(-------------------) - 5=0}}
2840               5
2841
2842
2843end;
2844
2845Tested on x86_64-pc-windows CSL
2846Time (counter 1): 688 ms  plus GC time: 46 ms
2847
2848End of Lisp run after 0.68+0.09 seconds
2849real 0.99
2850user 0.00
2851sys 0.04
2852