The ZeroDimensionalSolvePackage package constructor provides operations for computing symbolically the complex or real roots of zero-dimensional algebraic systems.
The package provides no multiplicity information (i.e. some returned roots may be double or higher) but only distinct roots are returned.
Complex roots are given by means of univariate representations of irreducible regular chains. These representations are computed by the univariateSolve operation (by calling the InternalRationalUnivariateRepresentationPackage package constructor which does the job).
Real roots are given by means of tuples of coordinates lying in the RealClosure of the coefficient ring. They are computed by the realSolve and positiveSolve operations. The former computes all the solutions of the input system with real coordinates whereas the later concentrate on the solutions with (strictly) positive coordinates. In both cases, the computations are performed by the RealClosure constructor.
Both computations of complex roots and real roots rely on triangular decompositions. These decompositions can be computed in two different ways. First, by a applying the zeroSetSplit operation from the REGSET domain constructor. In that case, no Groebner bases are computed. This strategy is used by default. Secondly, by applying the zeroSetSplit from LEXTRIPK. To use this later strategy with the operations univariateSolve, realSolve and positiveSolve one just needs to use an extra boolean argument.
Note that the way of understanding triangular decompositions is detailed in the example of the RegularTriangularSet constructor.
The ZeroDimensionalSolvePackage constructor takes three arguments.The first one R is the coefficient ring; it must belong to the categories OrderedRing, EuclideanDomain, CharacteristicZero and RealConstant. This means essentially that R is Integer or Fraction(Integer). The second argument ls is the list of variables involved in the systems to solve. The third one MUST BE concat(ls,s) where s is an additional symbol used for the univariate representations. The abbreviation for ZeroDimensionalSolvePackage is ZDSOLVE.
We illustrate now how to use the constructor ZDSOLVE by two examples: the Arnborg and Lazard system and the L-3 system (Aubry and Moreno Maza). Note that the use of this package is also demonstrated in the example of the LexTriangularPackage constructor.
Define the coefficient ring.
R := Integer
Integer
Type: Domain
Define the lists of variables:
ls : List Symbol := [x,y,z,t]
[x,y,z,t]
Type: List Symbol
and:
ls2 : List Symbol := [x,y,z,t,new()$Symbol]
[x,y,z,t,%A]
Type: List Symbol
Call the package:
pack := ZDSOLVE(R,ls,ls2)
ZeroDimensionalSolvePackage(Integer,[x,y,z,t],[x,y,z,t,%A])
Type: Domain
Define a polynomial system (Arnborg-Lazard)
p1 := x**2*y*z + x*y**2*z + x*y*z**2 + x*y*z + x*y + x*z + y*z
2 2 2
x y z + (x y + (x + x + 1)y + x)z + x y
Type: Polynomial Integer
p2 := x**2*y**2*z + x*y**2*z**2 + x**2*y*z + x*y*z + y*z + x + z
2 2 2 2 2
x y z + (x y + (x + x + 1)y + 1)z + x
Type: Polynomial Integer
p3 := x**2*y**2*z**2 + x**2*y**2*z + x*y**2*z + x*y*z + x*z + z + 1
2 2 2 2 2
x y z + ((x + x)y + x y + x + 1)z + 1
Type: Polynomial Integer
lp := [p1, p2, p3]
2 2 2
[x y z + (x y + (x + x + 1)y + x)z + x y,
2 2 2 2 2
x y z + (x y + (x + x + 1)y + 1)z + x,
2 2 2 2 2
x y z + ((x + x)y + x y + x + 1)z + 1]
Type: List Polynomial Integer
Note that these polynomials do not involve the variable t; we will use it in the second example.
First compute a decomposition into regular chains (i.e. regular triangular sets).
triangSolve(lp)$pack
[
{
20 19 18 17 16 15 14 13 12
z - 6z - 41z + 71z + 106z + 92z + 197z + 145z + 257z
+
11 10 9 8 7 6 5 4 3
278z + 201z + 278z + 257z + 145z + 197z + 92z + 106z + 71z
+
2
- 41z - 6z + 1
,
19 18 17 16
14745844z + 50357474z - 130948857z - 185261586z
+
15 14 13 12
- 180077775z - 338007307z - 275379623z - 453190404z
+
11 10 9 8
- 474597456z - 366147695z - 481433567z - 430613166z
+
7 6 5 4
- 261878358z - 326073537z - 163008796z - 177213227z
+
3 2
- 104356755z + 65241699z + 9237732z - 1567348
*
y
+
19 18 17 16 15
1917314z + 6508991z - 16973165z - 24000259z - 23349192z
+
14 13 12 11 10
- 43786426z - 35696474z - 58724172z - 61480792z - 47452440z
+
9 8 7 6 5
- 62378085z - 55776527z - 33940618z - 42233406z - 21122875z
+
4 3 2
- 22958177z - 13504569z + 8448317z + 1195888z - 202934
,
3 2 3 2 2 2
((z - 2z)y + (- z - z - 2z - 1)y - z - z + 1)x + z - 1}
]
Type: List RegularChain(Integer,[x,y,z,t])
We can see easily from this decomposition (consisting of a single regular chain) that the input system has 20 complex roots.
Then we compute a univariate representation of this regular chain.
univariateSolve(lp)$pack
[
[
complexRoots =
12 11 10 9 8 7 6 5 4 3
? - 12? + 24? + 4? - 9? + 27? - 21? + 27? - 9? + 4?
+
2
24? - 12? + 1
,
coordinates =
[
11 10 9 8 7 6
63x + 62%A - 721%A + 1220%A + 705%A - 285%A + 1512%A
+
5 4 3 2
- 735%A + 1401%A - 21%A + 215%A + 1577%A - 142
,
11 10 9 8 7 6
63y - 75%A + 890%A - 1682%A - 516%A + 588%A - 1953%A
+
5 4 3 2
1323%A - 1815%A + 426%A - 243%A - 1801%A + 679
,
z - %A]
]
,
6 5 4 3 2
[complexRoots= ? + ? + ? + ? + ? + ? + 1,
5 3
coordinates= [x - %A ,y - %A ,z - %A]]
,
2
[complexRoots= ? + 5? + 1,coordinates= [x - 1,y - 1,z - %A]]]
Type: List Record(complexRoots: SparseUnivariatePolynomial Integer,
coordinates: List Polynomial Integer)
We see that the zeros of our regular chain are split into three components. This is due to the use of univariate polynomial factorization.
Each of these components consist of two parts. The first one is an irreducible univariate polynomial p(?) which defines a simple algebraic extension of the field of fractions of R. The second one consists of multivariate polynomials pol1(x,%A), pol2(y,%A) and pol3(z,%A). Each of these polynomials involve two variables: one is an indeterminate x, y or z of the input system lp and the other is %A which represents any root of p(?). Recall that this %A is the last element of the third parameter of ZDSOLVE. Thus any complex root ? of p(?) leads to a solution of the input system lp by replacing %A by this ? in pol1(x,%A), pol2(y,%A) and pol3(z,%A). Note that the polynomials pol1(x,%A), pol2(y,%A) and pol3(z,%A) have degree one w.r.t. x, y or z respectively. This is always the case for all univariate representations. Hence the operation univariateSolve replaces a system of multivariate polynomials by a list of univariate polynomials, what justifies its name. Another example of univariate representations illustrates the LexTriangularPackage package constructor.
We now compute the solutions with real coordinates:
lr := realSolve(lp)$pack
[
[%B1,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B1 - ------- %B1 - ------- %B1 + -------- %B1
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B1 + -------- %B1 + ------ %B1 + --------- %B1
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B1 + --------- %B1 + --------- %B1 + --------- %B1
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B1 + ------- %B1 + ------ %B1 + ------- %B1
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B1 + -------- %B1 - ---- %B1 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B1 + ------ %B1 + ------- %B1 - ------- %B1
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B1 - -------- %B1 - -------- %B1 - ------ %B1
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B1 - -------- %B1 - -------- %B1 - ------- %B1
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B1 - -------- %B1 - -------- %B1 - -------- %B1
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B1 - -------- %B1 - ------- %B1 + ------
26117 705159 705159 705159
]
,
[%B2,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B2 - ------- %B2 - ------- %B2 + -------- %B2
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B2 + -------- %B2 + ------ %B2 + --------- %B2
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B2 + --------- %B2 + --------- %B2 + --------- %B2
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B2 + ------- %B2 + ------ %B2 + ------- %B2
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B2 + -------- %B2 - ---- %B2 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B2 + ------ %B2 + ------- %B2 - ------- %B2
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B2 - -------- %B2 - -------- %B2 - ------ %B2
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B2 - -------- %B2 - -------- %B2 - ------- %B2
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B2 - -------- %B2 - -------- %B2 - -------- %B2
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B2 - -------- %B2 - ------- %B2 + ------
26117 705159 705159 705159
]
,
[%B3,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B3 - ------- %B3 - ------- %B3 + -------- %B3
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B3 + -------- %B3 + ------ %B3 + --------- %B3
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B3 + --------- %B3 + --------- %B3 + --------- %B3
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B3 + ------- %B3 + ------ %B3 + ------- %B3
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B3 + -------- %B3 - ---- %B3 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B3 + ------ %B3 + ------- %B3 - ------- %B3
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B3 - -------- %B3 - -------- %B3 - ------ %B3
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B3 - -------- %B3 - -------- %B3 - ------- %B3
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B3 - -------- %B3 - -------- %B3 - -------- %B3
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B3 - -------- %B3 - ------- %B3 + ------
26117 705159 705159 705159
]
,
[%B4,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B4 - ------- %B4 - ------- %B4 + -------- %B4
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B4 + -------- %B4 + ------ %B4 + --------- %B4
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B4 + --------- %B4 + --------- %B4 + --------- %B4
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B4 + ------- %B4 + ------ %B4 + ------- %B4
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B4 + -------- %B4 - ---- %B4 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B4 + ------ %B4 + ------- %B4 - ------- %B4
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B4 - -------- %B4 - -------- %B4 - ------ %B4
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B4 - -------- %B4 - -------- %B4 - ------- %B4
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B4 - -------- %B4 - -------- %B4 - -------- %B4
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B4 - -------- %B4 - ------- %B4 + ------
26117 705159 705159 705159
]
,
[%B5,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B5 - ------- %B5 - ------- %B5 + -------- %B5
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B5 + -------- %B5 + ------ %B5 + --------- %B5
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B5 + --------- %B5 + --------- %B5 + --------- %B5
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B5 + ------- %B5 + ------ %B5 + ------- %B5
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B5 + -------- %B5 - ---- %B5 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B5 + ------ %B5 + ------- %B5 - ------- %B5
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B5 - -------- %B5 - -------- %B5 - ------ %B5
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B5 - -------- %B5 - -------- %B5 - ------- %B5
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B5 - -------- %B5 - -------- %B5 - -------- %B5
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B5 - -------- %B5 - ------- %B5 + ------
26117 705159 705159 705159
]
,
[%B6,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B6 - ------- %B6 - ------- %B6 + -------- %B6
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B6 + -------- %B6 + ------ %B6 + --------- %B6
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B6 + --------- %B6 + --------- %B6 + --------- %B6
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B6 + ------- %B6 + ------ %B6 + ------- %B6
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B6 + -------- %B6 - ---- %B6 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B6 + ------ %B6 + ------- %B6 - ------- %B6
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B6 - -------- %B6 - -------- %B6 - ------ %B6
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B6 - -------- %B6 - -------- %B6 - ------- %B6
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B6 - -------- %B6 - -------- %B6 - -------- %B6
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B6 - -------- %B6 - ------- %B6 + ------
26117 705159 705159 705159
]
,
[%B7,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B7 - ------- %B7 - ------- %B7 + -------- %B7
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B7 + -------- %B7 + ------ %B7 + --------- %B7
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B7 + --------- %B7 + --------- %B7 + --------- %B7
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B7 + ------- %B7 + ------ %B7 + ------- %B7
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B7 + -------- %B7 - ---- %B7 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B7 + ------ %B7 + ------- %B7 - ------- %B7
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B7 - -------- %B7 - -------- %B7 - ------ %B7
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B7 - -------- %B7 - -------- %B7 - ------- %B7
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B7 - -------- %B7 - -------- %B7 - -------- %B7
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B7 - -------- %B7 - ------- %B7 + ------
26117 705159 705159 705159
]
,
[%B8,
1184459 19 2335702 18 5460230 17 79900378 16
------- %B8 - ------- %B8 - ------- %B8 + -------- %B8
1645371 548457 182819 1645371
+
43953929 15 13420192 14 553986 13 193381378 12
-------- %B8 + -------- %B8 + ------ %B8 + --------- %B8
548457 182819 3731 1645371
+
35978916 11 358660781 10 271667666 9 118784873 8
-------- %B8 + --------- %B8 + --------- %B8 + --------- %B8
182819 1645371 1645371 548457
+
337505020 7 1389370 6 688291 5 3378002 4
--------- %B8 + ------- %B8 + ------ %B8 + ------- %B8
1645371 11193 4459 42189
+
140671876 3 32325724 2 8270 9741532
--------- %B8 + -------- %B8 - ---- %B8 - -------
1645371 548457 343 1645371
,
91729 19 487915 18 4114333 17 1276987 16
- ------ %B8 + ------ %B8 + ------- %B8 - ------- %B8
705159 705159 705159 235053
+
13243117 15 16292173 14 26536060 13 722714 12
- -------- %B8 - -------- %B8 - -------- %B8 - ------ %B8
705159 705159 705159 18081
+
5382578 11 15449995 10 14279770 9 6603890 8
- ------- %B8 - -------- %B8 - -------- %B8 - ------- %B8
100737 235053 235053 100737
+
409930 7 37340389 6 34893715 5 26686318 4
- ------ %B8 - -------- %B8 - -------- %B8 - -------- %B8
6027 705159 705159 705159
+
801511 3 17206178 2 4406102 377534
- ------ %B8 - -------- %B8 - ------- %B8 + ------
26117 705159 705159 705159
]
]
Type: List List RealClosure Fraction Integer
The number of real solutions for the input system is:
# lr
8
Type: PositiveInteger
Each of these real solutions is given by a list of elements in RealClosure(R). In these 8 lists, the first element is a value of z, the second of y and the last of x. This is logical since by setting the list of variables of the package to [x,y,z,t] we mean that the elimination ordering on the variables is t < z < y < x. Note that each system treated by the ZDSOLVE package constructor needs only to be zero-dimensional w.r.t. the variables involved in the system it-self and not necessarily w.r.t. all the variables used to define the package.
We can approximate these real numbers as follows. This computation takes between 30 sec. and 5 min, depending on your machine.
[ [approximate(r,1/1000000) for r in point] for point in lr]
[
10048059
[- --------,
2097152
4503057316985387943524397913838966414596731976211768219335881208385516_
314058924567176091423629695777403099833360761048898228916578137094309_
838597331137202584846939132376157019506760357601165917454986815382098_
789094851523420392811293126141329856546977145464661495487825919941188_
447041722440491921567263542158028061437758844364634410045253024786561_
923163288214175
/
4503057283025245488516511806985826635083100693757320465280554706865644_
949577509916867201889438090408354817931718593862797624551518983570793_
048774424291488708829840324189200301436123314860200821443733790755311_
243632919864895421704228949571290016119498807957023663865443069392027_
148979688266712323356043491523434068924275280417338574817381189277066_
143312396681216
,
2106260768823475073894798680486016596249607148690685538763683715020639_
680858649650790055889505646893309447097099937802187329095325898785247_
249020717504983660482075156618738724514685333060011202964635166381351_
543255982200250305283981086837110614842307026091211297929876896285681_
830479054760056380762664905618462055306047816191782011588703789138988_
1895
/
2106260609498464192472113804816474175341962953296434102413903142368757_
967685273888585590975965211778862189872881953943640246297357061959812_
326103659799025126863258676567202342106877031710184247484181423288921_
837681237062708470295706218485928867400771937828499200923760593314168_
901000666373896347598118228556731037072026474496776228383762993923280_
0768
]
,
2563013
[- -------,
2097152
-
2611346176791927789698617693237757719238259963063541781922752330440_
189899668072928338490768623593207442125925986733815932243504809294_
837523030237337236806668167446173001727271353311571242897
/
1165225400505222530583981916004589143757226610276858990008790134819_
914940922413753983971394019523433320408139928153188829495755455163_
963417619308395977544797140231469234269034921938055593984
,
3572594550275917221096588729615788272998517054675603239578198141006034_
091735282826590621902304466963941971038923304526273329316373757450061_
9789892286110976997087250466235373
/
1039548269345598936877071244834026055800814551120170592200522366591759_
409659486442339141029452950265179989960104811875822530205346505131581_
2439017247289173865014702966308864
]
,
1715967
[- -------,
2097152
-
4213093533784303521084839517977082390377261503969586224828998436606_
030656076359374564813773498376603121267822565801436206939519951465_
18222580524697287410022543952491
/
9441814144185374458649692034349224052436597470966253663930641960795_
805882585493199840191699917659443264824641135187383583888147867340_
19307857605820364195856822304768
,
7635833347112644222515625424410831225347475669008589338834162172501904_
994376346730876809042845208919919925302105720971453918982731389072591_
4035
/
2624188764086097199784297610478066633934230467895851602278580978503784_
549205788499019640602266966026891580103543567625039018629887141284916_
75648
]
,
437701
[- -------,
2097152
1683106908638349588322172332654225913562986313181951031452750161441497_
473455328150721364868355579646781603507777199075077835213366484533654_
91383623741304759
/
1683106868095213389001709982705913638963077668731226111167785188004907_
425226298680325887810962614140298597366984264887998908377068799998454_
23381649008099328
,
4961550109835010186422681013422108735958714801003760639707968096646912_
82670847283444311723917219104249213450966312411133
/
4961549872757738315509192078210209029852897118611097126236384040829376_
59261914313170254867464792718363492160482442215424
]
,
222801
[-------,
2097152
-
8994884880402428265107595121970691427136045692541978275573001865213_
759921588137716696126349101655220195142994932299137183241705867672_
383477
/
1167889998665026372177765100691888582708969960229934769690835752457_
077779416435209473767866507769405888942764587718542434255625992456_
372224
,
-
2389704888133156878320801544373808395612771509208491019847452991885_
509546519525467839016613593999693886640036283570552321155037871291_
458703265
/
5355487273645096326090403286689931905988225444685411433221593833681_
192957562833671468654290340746993656285925599117602120446183443145_
479421952
]
,
765693
[-------,
2097152
8558969219816716267873244761178198088724698958616670140213765754322002_
303251685786118678330840203328837654339523418704917749518340772512899_
000391009630373148561
/
2941442445533010790976428411376393499815580215945856917906452535495723_
013856818941702330228779890141296236721138154231997238917322156711965_
2444639331719460159488
,
-
2057618230582572101247650324860242561111302581543588808843923662767_
549382241659362712290777612800192921420574408948085193743688582762_
2246433251878894899015
/
2671598203325735538097952353501450220576313759890835097091722520642_
710198771902667183948906289863714759678360292483949204616471537777_
775324180661095366656
]
,
5743879
[-------,
2097152
1076288816968906847955546394773570208171456724942618614023663123574768_
960850434263971398072546592772662158833449797698617455397887562900072_
984768000608343553189801693408727205047612559889232757563830528688953_
535421809482771058917542602890060941949620874083007858366669453501766_
24841488732463225
/
3131768957080317946648461940023552044190376613458584986228549631916196_
601616219781765615532532294746529648276430583810894079374566460757823_
146888581195556029208515218838883200318658407469399426063260589828612_
309231596669129707986481319851571942927230340622934023923486703042068_
1530440845099008
,
-
2113286699185750918364120475565458437870172489865485994389828135335_
264444665284557526492734931691731407872701432935503473348172076098_
720545849008780077564160534317894688366119529739980502944162668550_
098127961950496210221942878089359674925850594427768502251789758706_
752831632503615
/
1627615584937987580242906624347104580889144466168459718043153839408_
372525533309808070363699585502216011211087103263609551026027769414_
087391148126221168139781682587438075322591466131939975457200522349_
838568964285634448018562038272378787354460106106141518010935617205_
1706396253618176
]
,
19739877
[--------,
2097152
-
2997249936832703303799015804861520949215040387500707177701285766720_
192530579422478953566024359860143101547801638082771611160372212874_
847778035809872843149225484238365858013629341705321702582333350918_
009601789937023985935304900460493389873837030853410347089908880814_
853981132018464582458800615394770741699487295875960210750215891948_
814476854871031530931295467332190133702671098200902282300510751860_
7185928457030277807397796525813862762239286996106809728023675
/
2308433274852278590728910081191811023906504141321432646123936794873_
933319270608960702138193417647898360620229519176632937631786851455_
014766027206259022252505551741823688896883806636602574431760472240_
292093196729475160247268834121141893318848728661844434927287285112_
897080767552864895056585864033178565910387065006112801516403522741_
037360990556054476949527059227070809593049491257519554708879259595_
52929920110858560812556635485429471554031675979542656381353984
,
-
5128189263548228489096276397868940080600938410663080459407966335845_
009264109490520459825316250084723010047035024497436523038925818959_
289312931584701353927621435434398674263047293909122850133851990696_
490231566094371994333795070782624011727587749989296611277318372294_
624207116537910436554574146082884701305543912620419354885410735940_
157775896602822364575864611831512943973974715166920465061850603762_
87516256195847052412587282839139194642913955
/
2288281939778439330531208793181290471183631092455368990386390824243_
509463644236249773080647438987739144921607794682653851741189091711_
741868145114978337284191822497675868358729486644730856622552687209_
203724411800481405702837198310642291275676195774614443815996713502_
629391749783590041470860127752372996488627742672487622480063268808_
889324891850842494934347337603075939980268208482904859678177751444_
65749979827872616963053217673201717237252096
]
]
Type: List List Fraction Integer
We can also concentrate on the solutions with real (strictly) positive coordinates:
lpr := positiveSolve(lp)$pack
[]
Type: List List RealClosure Fraction Integer
Thus we have checked that the input system has no solution with strictly positive coordinates.
Let us define another polynomial system (L-3).
f0 := x**3 + y + z + t- 1
3
z + y + x + t - 1
Type: Polynomial Integer
f1 := x + y**3 + z + t -1
3
z + y + x + t - 1
Type: Polynomial Integer
f2 := x + y + z**3 + t-1
3
z + y + x + t - 1
Type: Polynomial Integer
f3 := x + y + z + t**3 -1
3
z + y + x + t - 1
Type: Polynomial Integer
lf := [f0, f1, f2, f3]
3 3 3 3
[z + y + x + t - 1,z + y + x + t - 1,z + y + x + t - 1,z + y + x + t - 1]
Type: List Polynomial Integer
First compute a decomposition into regular chains (i.e. regular triangular sets).
lts := triangSolve(lf)$pack
[
2 3 3
{t + t + 1, z - z - t + t,
3 2 2 3 6 3 3 2
(3z + 3t - 3)y + (3z + (6t - 6)z + 3t - 6t + 3)y + (3t - 3)z
+
6 3 9 6 3
(3t - 6t + 3)z + t - 3t + 5t - 3t
,
x + y + z}
,
16 13 10 7 4 2
{t - 6t + 9t + 4t + 15t - 54t + 27,
15 14 13 12 11
4907232t + 40893984t - 115013088t + 22805712t + 36330336t
+
10 9 8 7
162959040t - 159859440t - 156802608t + 117168768t
+
6 5 4 3
126282384t - 129351600t + 306646992t + 475302816t
+
2
- 1006837776t - 237269088t + 480716208
*
z
+
54 51 48 46 45 43 42
48t - 912t + 8232t - 72t - 46848t + 1152t + 186324t
+
40 39 38 37 36 35
- 3780t - 543144t - 3168t - 21384t + 1175251t + 41184t
+
34 33 32 31 30
278003t - 1843242t - 301815t - 1440726t + 1912012t
+
29 28 27 26 25
1442826t + 4696262t - 922481t - 4816188t - 10583524t
+
24 23 22 21 20
- 208751t + 11472138t + 16762859t - 857663t - 19328175t
+
19 18 17 16 15
- 18270421t + 4914903t + 22483044t + 12926517t - 8605511t
+
14 13 12 11 10
- 17455518t - 5014597t + 8108814t + 8465535t + 190542t
+
9 8 7 6 5 4
- 4305624t - 2226123t + 661905t + 1169775t + 226260t - 209952t
+
3
- 141183t + 27216t
,
3 2 2 3 6 3 3 2
(3z + 3t - 3)y + (3z + (6t - 6)z + 3t - 6t + 3)y + (3t - 3)z
+
6 3 9 6 3
(3t - 6t + 3)z + t - 3t + 5t - 3t
,
3
x + y + z + t - 1}
,
2 2 2
{t,z - 1,y - 1,x + y}, {t - 1,z,y - 1,x + y}, {t - 1,z - 1,z y + 1,x},
16 13 10 7 4 2
{t - 6t + 9t + 4t + 15t - 54t + 27,
29 28 27 26 25
4907232t + 40893984t - 115013088t - 1730448t - 168139584t
+
24 23 22 21
738024480t - 195372288t + 315849456t - 2567279232t
+
20 19 18 17
937147968t + 1026357696t + 4780488240t - 2893767696t
+
16 15 14 13
- 5617160352t - 3427651728t + 5001100848t + 8720098416t
+
12 11 10 9
2331732960t - 499046544t - 16243306272t - 9748123200t
+
8 7 6 5
3927244320t + 25257280896t + 10348032096t - 17128672128t
+
4 3 2
- 14755488768t + 544086720t + 10848188736t + 1423614528t
+
- 2884297248
*
z
+
68 65 62 60 59 57 56
- 48t + 1152t - 13560t + 360t + 103656t - 7560t - 572820t
+
54 53 52 51 50 49
71316t + 2414556t + 2736t - 402876t - 7985131t - 49248t
+
48 47 46 45 44
1431133t + 20977409t + 521487t - 2697635t - 43763654t
+
43 42 41 40 39
- 3756573t - 2093410t + 71546495t + 19699032t + 35025028t
+
38 37 36 35 34
- 89623786t - 77798760t - 138654191t + 87596128t + 235642497t
+
33 32 31 30 29
349607642t - 93299834t - 551563167t - 630995176t + 186818962t
+
28 27 26 25
995427468t + 828416204t - 393919231t - 1076617485t
+
24 23 22 21
- 1609479791t + 595738126t + 1198787136t + 4342832069t
+
20 19 18 17
- 2075938757t - 4390835799t - 4822843033t + 6932747678t
+
16 15 14 13
6172196808t + 1141517740t - 4981677585t - 9819815280t
+
12 11 10 9
- 7404299976t - 157295760t + 29124027630t + 14856038208t
+
8 7 6 5
- 16184101410t - 26935440354t - 3574164258t + 10271338974t
+
4 3 2
11191425264t + 6869861262t - 9780477840t - 3586674168t + 2884297248
,
3 3 2 6 3 9 6 3
(3z + (6t - 6)z + (6t - 12t + 3)z + 2t - 6t + t + 3t)y
+
3 3 6 3 2 9 6 3 12 9
(3t - 3)z + (6t - 12t + 6)z + (4t - 12t + 11t - 3)z + t - 4t
+
6 3
5t - 2t
,
3
x + y + z + t - 1}
,
2
{t - 1,z - 1,y,x + z},
8 7 6 5 4 3 2
{t + t + t - 2t - 2t - 2t + 19t + 19t - 8,
7 6 5 4 3
2395770t + 3934440t - 3902067t - 10084164t - 1010448t
+
2
32386932t + 22413225t - 10432368
*
z
+
7 6 5 4 3
- 463519t + 3586833t + 9494955t - 8539305t - 33283098t
+
2
35479377t + 46263256t - 17419896
,
4 3 3 6 3 2 3
3z + (9t - 9)z + (12t - 24t + 9)z + (- 152t + 219t - 67)z
+
6 4 3
- 41t + 57t + 25t - 57t + 16
*
y
+
3 4 6 3 3 3 2
(3t - 3)z + (9t - 18t + 9)z + (- 181t + 270t - 89)z
+
6 4 3 7 6 4 3
(- 92t + 135t + 49t - 135t + 43)z + 27t - 27t - 54t + 396t
+
- 486t + 144
,
3
x + y + z + t - 1}
,
3
{t,z - t + 1,y - 1,x - 1}, {t - 1,z,y,x}, {t,z - 1,y,x}, {t,z,y - 1,x},
{t,z,y,x - 1}]
Type: List RegularChain(Integer,[x,y,z,t])
Then we compute a univariate representation.
univariateSolve(lf)$pack
[[complexRoots= ?,coordinates= [x - 1,y - 1,z + 1,t - %A]],
[complexRoots= ?,coordinates= [x,y - 1,z,t - %A]],
[complexRoots= ? - 1,coordinates= [x,y,z,t - %A]],
[complexRoots= ?,coordinates= [x - 1,y,z,t - %A]],
[complexRoots= ?,coordinates= [x,y,z - 1,t - %A]],
[complexRoots= ? - 2,coordinates= [x - 1,y + 1,z,t - 1]],
[complexRoots= ?,coordinates= [x + 1,y - 1,z,t - 1]],
[complexRoots= ? - 1,coordinates= [x - 1,y + 1,z - 1,t]],
[complexRoots= ? + 1,coordinates= [x + 1,y - 1,z - 1,t]],
6 3 2
[complexRoots= ? - 2? + 3? - 3,
3 3
coordinates= [2x + %A + %A - 1,2y + %A + %A - 1,z - %A,t - %A]]
,
5 3 2
[complexRoots= ? + 3? - 2? + 3? - 3,
3
coordinates= [x - %A,y - %A,z + %A + 2%A - 1,t - %A]]
,
4 3 2
[complexRoots= ? - ? - 2? + 3,
3 3 3
coordinates= [x + %A - %A - 1,y + %A - %A - 1,z - %A + 2%A + 1,t - %A]]
,
[complexRoots= ? + 1,coordinates= [x - 1,y - 1,z,t - %A]],
6 3 2
[complexRoots= ? + 2? + 3? - 3,
3 3
coordinates= [2x - %A - %A - 1,y + %A,2z - %A - %A - 1,t + %A]]
,
6 4 3 2
[complexRoots= ? + 12? + 20? - 45? - 42? - 953,
coordinates =
5 4 3 2
[12609x + 23%A + 49%A - 46%A + 362%A - 5015%A - 8239,
5 4 3 2
25218y + 23%A + 49%A - 46%A + 362%A + 7594%A - 8239,
5 4 3 2
25218z + 23%A + 49%A - 46%A + 362%A + 7594%A - 8239,
5 4 3 2
12609t + 23%A + 49%A - 46%A + 362%A - 5015%A - 8239]
]
,
5 3 2
[complexRoots= ? + 12? - 16? + 48? - 96,
3
coordinates= [8x + %A + 8%A - 8,2y - %A,2z - %A,2t - %A]]
,
5 4 3 2
[complexRoots= ? + ? - 5? - 3? + 9? + 3,
coordinates =
3 3 3
[2x - %A + 2%A - 1, 2y + %A - 4%A + 1, 2z - %A + 2%A - 1,
3
2t - %A + 2%A - 1]
]
,
4 3 2
[complexRoots= ? - 3? + 4? - 6? + 13,
coordinates =
3 2 3 2
[9x - 2%A + 4%A - %A + 2, 9y + %A - 2%A + 5%A - 1,
3 2 3 2
9z + %A - 2%A + 5%A - 1, 9t + %A - 2%A - 4%A - 1]
]
,
4 2
[complexRoots= ? - 11? + 37,
coordinates =
2 2 2 2
[3x - %A + 7,6y + %A + 3%A - 7,3z - %A + 7,6t + %A - 3%A - 7]
]
,
[complexRoots= ? + 1,coordinates= [x - 1,y,z - 1,t + 1]],
[complexRoots= ? + 2,coordinates= [x,y - 1,z - 1,t + 1]],
[complexRoots= ? - 2,coordinates= [x,y - 1,z + 1,t - 1]],
[complexRoots= ?,coordinates= [x,y + 1,z - 1,t - 1]],
[complexRoots= ? - 2,coordinates= [x - 1,y,z + 1,t - 1]],
[complexRoots= ?,coordinates= [x + 1,y,z - 1,t - 1]],
4 3 2
[complexRoots= ? + 5? + 16? + 30? + 57,
coordinates =
3 2 3 2
[151x + 15%A + 54%A + 104%A + 93, 151y - 10%A - 36%A - 19%A - 62,
3 2 3 2
151z - 5%A - 18%A - 85%A - 31, 151t - 5%A - 18%A - 85%A - 31]
]
,
4 3 2
[complexRoots= ? - ? - 2? + 3,
3 3 3
coordinates= [x - %A + 2%A + 1,y + %A - %A - 1,z - %A,t + %A - %A - 1]]
,
4 3 2
[complexRoots= ? + 2? - 8? + 48,
coordinates =
3 3 3
[8x - %A + 4%A - 8,2y + %A,8z + %A - 8%A + 8,8t - %A + 4%A - 8]
]
,
5 4 3 2
[complexRoots= ? + ? - 2? - 4? + 5? + 8,
3 3 3
coordinates= [3x + %A - 1,3y + %A - 1,3z + %A - 1,t - %A]]
,
3
[complexRoots= ? + 3? - 1,coordinates= [x - %A,y - %A,z - %A,t - %A]]]
Type: List Record(complexRoots: SparseUnivariatePolynomial Integer,
coordinates: List Polynomial Integer)
Note that this computation is made from the input system lf.
However it is possible to reuse a pre-computed regular chain as follows:
ts := lts.1
2 3 3
{t + t + 1, z - z - t + t,
3 2 2 3 6 3 3 2
(3z + 3t - 3)y + (3z + (6t - 6)z + 3t - 6t + 3)y + (3t - 3)z
+
6 3 9 6 3
(3t - 6t + 3)z + t - 3t + 5t - 3t
,
x + y + z}
Type: RegularChain(Integer,[x,y,z,t])
univariateSolve(ts)$pack
[
4 3 2
[complexRoots= ? + 5? + 16? + 30? + 57,
coordinates =
3 2 3 2
[151x + 15%A + 54%A + 104%A + 93, 151y - 10%A - 36%A - 19%A - 62,
3 2 3 2
151z - 5%A - 18%A - 85%A - 31, 151t - 5%A - 18%A - 85%A - 31]
]
,
4 3 2
[complexRoots= ? - ? - 2? + 3,
3 3 3
coordinates= [x - %A + 2%A + 1,y + %A - %A - 1,z - %A,t + %A - %A - 1]]
,
4 3 2
[complexRoots= ? + 2? - 8? + 48,
coordinates =
3 3 3
[8x - %A + 4%A - 8,2y + %A,8z + %A - 8%A + 8,8t - %A + 4%A - 8]
]
]
Type: List Record(complexRoots: SparseUnivariatePolynomial Integer,
coordinates: List Polynomial Integer)
realSolve(ts)$pack
[]
Type: List List RealClosure Fraction Integer
We compute now the full set of points with real coordinates:
lr2 := realSolve(lf)$pack
[[0,- 1,1,1], [0,0,1,0], [1,0,0,0], [0,0,0,1], [0,1,0,0], [1,0,%B37,- %B37],
[1,0,%B38,- %B38], [0,1,%B35,- %B35], [0,1,%B36,- %B36], [- 1,0,1,1],
[%B32,
1 15 2 14 1 13 4 12 11 11 4 10
-- %B32 + -- %B32 + -- %B32 - -- %B32 - -- %B32 - -- %B32
27 27 27 27 27 27
+
1 9 14 8 1 7 2 6 1 5 2 4 3
-- %B32 + -- %B32 + -- %B32 + - %B32 + - %B32 + - %B32 + %B32
27 27 27 9 3 9
+
4 2
- %B32 - %B32 - 2
3
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B32 - -- %B32 - -- %B32 + -- %B32 + -- %B32 + -- %B32
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B32 - -- %B32 - -- %B32 - - %B32 - - %B32 - - %B32 - %B32
54 27 54 9 6 9
+
2 2 1 3
- - %B32 + - %B32 + -
3 2 2
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B32 - -- %B32 - -- %B32 + -- %B32 + -- %B32 + -- %B32
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B32 - -- %B32 - -- %B32 - - %B32 - - %B32 - - %B32 - %B32
54 27 54 9 6 9
+
2 2 1 3
- - %B32 + - %B32 + -
3 2 2
]
,
[%B33,
1 15 2 14 1 13 4 12 11 11 4 10
-- %B33 + -- %B33 + -- %B33 - -- %B33 - -- %B33 - -- %B33
27 27 27 27 27 27
+
1 9 14 8 1 7 2 6 1 5 2 4 3
-- %B33 + -- %B33 + -- %B33 + - %B33 + - %B33 + - %B33 + %B33
27 27 27 9 3 9
+
4 2
- %B33 - %B33 - 2
3
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B33 - -- %B33 - -- %B33 + -- %B33 + -- %B33 + -- %B33
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B33 - -- %B33 - -- %B33 - - %B33 - - %B33 - - %B33 - %B33
54 27 54 9 6 9
+
2 2 1 3
- - %B33 + - %B33 + -
3 2 2
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B33 - -- %B33 - -- %B33 + -- %B33 + -- %B33 + -- %B33
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B33 - -- %B33 - -- %B33 - - %B33 - - %B33 - - %B33 - %B33
54 27 54 9 6 9
+
2 2 1 3
- - %B33 + - %B33 + -
3 2 2
]
,
[%B34,
1 15 2 14 1 13 4 12 11 11 4 10
-- %B34 + -- %B34 + -- %B34 - -- %B34 - -- %B34 - -- %B34
27 27 27 27 27 27
+
1 9 14 8 1 7 2 6 1 5 2 4 3
-- %B34 + -- %B34 + -- %B34 + - %B34 + - %B34 + - %B34 + %B34
27 27 27 9 3 9
+
4 2
- %B34 - %B34 - 2
3
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B34 - -- %B34 - -- %B34 + -- %B34 + -- %B34 + -- %B34
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B34 - -- %B34 - -- %B34 - - %B34 - - %B34 - - %B34 - %B34
54 27 54 9 6 9
+
2 2 1 3
- - %B34 + - %B34 + -
3 2 2
,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B34 - -- %B34 - -- %B34 + -- %B34 + -- %B34 + -- %B34
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B34 - -- %B34 - -- %B34 - - %B34 - - %B34 - - %B34 - %B34
54 27 54 9 6 9
+
2 2 1 3
- - %B34 + - %B34 + -
3 2 2
]
,
[- 1,1,0,1], [- 1,1,1,0],
[%B23,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B23 - -- %B23 - -- %B23 + -- %B23 + -- %B23 + -- %B23
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B23 - -- %B23 - -- %B23 - - %B23 - - %B23 - - %B23 - %B23
54 27 54 9 6 9
+
2 2 1 3
- - %B23 + - %B23 + -
3 2 2
,
%B30,
1 15 1 14 1 13 2 12 11 11
- %B30 + -- %B23 + -- %B23 + -- %B23 - -- %B23 - -- %B23
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B23 + -- %B23 + -- %B23 + -- %B23 + - %B23 + - %B23
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B23 + - %B23 - - %B23 - -
9 3 2 2
]
,
[%B23,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B23 - -- %B23 - -- %B23 + -- %B23 + -- %B23 + -- %B23
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B23 - -- %B23 - -- %B23 - - %B23 - - %B23 - - %B23 - %B23
54 27 54 9 6 9
+
2 2 1 3
- - %B23 + - %B23 + -
3 2 2
,
%B31,
1 15 1 14 1 13 2 12 11 11
- %B31 + -- %B23 + -- %B23 + -- %B23 - -- %B23 - -- %B23
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B23 + -- %B23 + -- %B23 + -- %B23 + - %B23 + - %B23
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B23 + - %B23 - - %B23 - -
9 3 2 2
]
,
[%B24,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B24 - -- %B24 - -- %B24 + -- %B24 + -- %B24 + -- %B24
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B24 - -- %B24 - -- %B24 - - %B24 - - %B24 - - %B24 - %B24
54 27 54 9 6 9
+
2 2 1 3
- - %B24 + - %B24 + -
3 2 2
,
%B28,
1 15 1 14 1 13 2 12 11 11
- %B28 + -- %B24 + -- %B24 + -- %B24 - -- %B24 - -- %B24
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B24 + -- %B24 + -- %B24 + -- %B24 + - %B24 + - %B24
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B24 + - %B24 - - %B24 - -
9 3 2 2
]
,
[%B24,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B24 - -- %B24 - -- %B24 + -- %B24 + -- %B24 + -- %B24
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B24 - -- %B24 - -- %B24 - - %B24 - - %B24 - - %B24 - %B24
54 27 54 9 6 9
+
2 2 1 3
- - %B24 + - %B24 + -
3 2 2
,
%B29,
1 15 1 14 1 13 2 12 11 11
- %B29 + -- %B24 + -- %B24 + -- %B24 - -- %B24 - -- %B24
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B24 + -- %B24 + -- %B24 + -- %B24 + - %B24 + - %B24
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B24 + - %B24 - - %B24 - -
9 3 2 2
]
,
[%B25,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B25 - -- %B25 - -- %B25 + -- %B25 + -- %B25 + -- %B25
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B25 - -- %B25 - -- %B25 - - %B25 - - %B25 - - %B25 - %B25
54 27 54 9 6 9
+
2 2 1 3
- - %B25 + - %B25 + -
3 2 2
,
%B26,
1 15 1 14 1 13 2 12 11 11
- %B26 + -- %B25 + -- %B25 + -- %B25 - -- %B25 - -- %B25
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B25 + -- %B25 + -- %B25 + -- %B25 + - %B25 + - %B25
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B25 + - %B25 - - %B25 - -
9 3 2 2
]
,
[%B25,
1 15 1 14 1 13 2 12 11 11 2 10
- -- %B25 - -- %B25 - -- %B25 + -- %B25 + -- %B25 + -- %B25
54 27 54 27 54 27
+
1 9 7 8 1 7 1 6 1 5 1 4 3
- -- %B25 - -- %B25 - -- %B25 - - %B25 - - %B25 - - %B25 - %B25
54 27 54 9 6 9
+
2 2 1 3
- - %B25 + - %B25 + -
3 2 2
,
%B27,
1 15 1 14 1 13 2 12 11 11
- %B27 + -- %B25 + -- %B25 + -- %B25 - -- %B25 - -- %B25
54 27 54 27 54
+
2 10 1 9 7 8 1 7 1 6 1 5
- -- %B25 + -- %B25 + -- %B25 + -- %B25 + - %B25 + - %B25
27 54 27 54 9 6
+
1 4 2 2 1 1
- %B25 + - %B25 - - %B25 - -
9 3 2 2
]
,
[1,%B21,- %B21,0], [1,%B22,- %B22,0], [1,%B19,0,- %B19], [1,%B20,0,- %B20],
1 3 1 1 3 1 1 3 1
[%B17,- - %B17 + -,- - %B17 + -,- - %B17 + -],
3 3 3 3 3 3
1 3 1 1 3 1 1 3 1
[%B18,- - %B18 + -,- - %B18 + -,- - %B18 + -]]
3 3 3 3 3 3
Type: List List RealClosure Fraction Integer
The number of real solutions for the input system is:
#lr2
27
Type: PositiveInteger
Another example of computation of real solutions illustrates the LexTriangularPackage package constructor.
We concentrate now on the solutions with real (strictly) positive coordinates:
lpr2 := positiveSolve(lf)$pack
1 3 1 1 3 1 1 3 1
[[%B40,- - %B40 + -,- - %B40 + -,- - %B40 + -]]
3 3 3 3 3 3
Type: List List RealClosure Fraction Integer
Finally, we approximate the coordinates of this point with 20 exact digits:
[approximate(r,1/10**21)::Float for r in lpr2.1]
[0.3221853546 2608559291, 0.3221853546 2608559291, 0.3221853546 2608559291,
0.3221853546 2608559291]
Type: List Float
See Also: