> restart; with(Groebner); # SOLUTION OF PROBLEM ONE IN REVIEW SESSION [GB_Internals, MulMatrix, SetBasis, fglm_algo, gbasis, gsolve, hilbertdim, hilbertpoly, hilbertseries, inter_reduce, is_finite, is_solvable, leadcoeff, leadmon, leadterm, normalf, pretend_gbasis, reduce, spoly, termorder, testorder, univpoly] > f:=x^4+y^2+z^2-1; 4 2 2 f := x + y + z - 1 > g:=(x-1)^2+(y-1)^2+(z-1)^2; 2 2 2 g := (x - 1) + (y - 1) + (z - 1) > K:=[g,diff(g-l*f,x),diff(g-l*f,y),diff(g-l*f,z)]; [ 2 2 2 3 K := [(x - 1) + (y - 1) + (z - 1) , 2 x - 2 - 4 l x , 2 y - 2 - 2 l y, ] 2 z - 2 - 2 l z] > L:=gbasis(K,plex(l,x,y,z)); [ L := [ 5 4 3 2 8 7 6 -1080 z + 1561 z - 1470 z + 887 z - 320 z + 54 + 16 z - 128 z + 480 z , -z + y, 3 2 7 6 115 x - 127657 z + 90376 z - 37291 z + 7113 - 2704 z + 18304 z 5 4 - 58592 z + 110336 z , 7 6 5 4 3 2 ] 54 l - 16 z + 128 z - 480 z + 1080 z - 1561 z + 1470 z - 887 z + 266] > factor(L); [/ 6 5 4 3 2 \ 2 [\16 z - 96 z + 272 z - 440 z + 409 z - 212 z + 54/ (z - 1) , -z + y, 3 2 7 6 115 x - 127657 z + 90376 z - 37291 z + 7113 - 2704 z + 18304 z 5 4 - 58592 z + 110336 z , 7 6 5 4 3 2 ] 54 l - 16 z + 128 z - 480 z + 1080 z - 1561 z + 1470 z - 887 z + 266] > assign({solve(L[2],{y}), solve(L[3],{x})}); > rootlist:=[evalf(solve(L[1]))]; rootlist := [1., 1., 1.366090627 + 0.1107530376 I, 0.4604158085 + 0.5460360169 I, 1.173493565 + 1.464531289 I, 1.173493565 - 1.464531289 I, 0.4604158085 - 0.5460360169 I, 1.366090627 - 0.1107530376 I] > for z in rootlist do > print(['x'=x,'y'=y,'z'=z]); > od; [x = 1.0000004, y = 1., z = 1.] [x = 1.0000004, y = 1., z = 1.] [x = 0.843372 + 0.517731 I, y = 1.366090627 + 0.1107530376 I, z = 1.366090627 + 0.1107530376 I] [x = 0.2277882 - 0.76308711 I, y = 0.4604158085 + 0.5460360169 I, z = 0.4604158085 + 0.5460360169 I] [x = -1.07116 + 0.245359 I, y = 1.173493565 + 1.464531289 I, z = 1.173493565 + 1.464531289 I] [x = -1.07116 - 0.245359 I, y = 1.173493565 - 1.464531289 I, z = 1.173493565 - 1.464531289 I] [x = 0.2277882 + 0.76308711 I, y = 0.4604158085 - 0.5460360169 I, z = 0.4604158085 - 0.5460360169 I] [x = 0.843372 - 0.517731 I, y = 1.366090627 - 0.1107530376 I, z = 1.366090627 - 0.1107530376 I] > restart; F:=(x^2+y^2-4)*(x^2+y^2-1)+(x-3/2)^2+(y-3/2)^2; # SOLUTION > OF PROBLEM TWO 2 2 / 2 2 \ / 2 2 \ / 3\ / 3\ F := \x + y - 4/ \x + y - 1/ + |x - -| + |y - -| \ 2/ \ 2/ > G:=[diff(F,x),diff(F,y),F]; [ [ / 2 2 \ / 2 2 \ G := [2 x \x + y - 1/ + 2 \x + y - 4/ x + 2 x - 3, [ / 2 2 \ / 2 2 \ 2 y \x + y - 1/ + 2 \x + y - 4/ y + 2 y - 3, 2 2] / 2 2 \ / 2 2 \ / 3\ / 3\ ] \x + y - 4/ \x + y - 1/ + |x - -| + |y - -| ] \ 2/ \ 2/ ] > with(Groebner); gbasis(G,plex(x,y)); [GB_Internals, MulMatrix, SetBasis, fglm_algo, gbasis, gsolve, hilbertdim, hilbertpoly, hilbertseries, inter_reduce, is_finite, is_solvable, leadcoeff, leadmon, leadterm, normalf, pretend_gbasis, reduce, spoly, termorder, testorder, univpoly] [1] > # SOLUTION OF PROBLEM FOUR > restart; with(Groebner); [GB_Internals, MulMatrix, SetBasis, fglm_algo, gbasis, gsolve, hilbertdim, hilbertpoly, hilbertseries, inter_reduce, is_finite, is_solvable, leadcoeff, leadmon, leadterm, normalf, pretend_gbasis, reduce, spoly, termorder, testorder, univpoly] > F:=[x^2+y^2+z^2-1,x^2+y^2+z^2-2*x,2*x-3*y-z]; [ 2 2 2 2 2 2 ] F := [x + y + z - 1, x + y + z - 2 x, 2 x - 3 y - z] > with(Groebner); [GB_Internals, MulMatrix, SetBasis, fglm_algo, gbasis, gsolve, hilbertdim, hilbertpoly, hilbertseries, inter_reduce, is_finite, is_solvable, leadcoeff, leadmon, leadterm, normalf, pretend_gbasis, reduce, spoly, termorder, testorder, univpoly] > L:=gbasis(F,plex(x,y,z)); [ 2 ] L := [40 z - 8 z - 23, -1 + 3 y + z, -1 + 2 x] > assign({solve(L[2],{y}), solve(L[3],{x})}); > rootlist:=[solve(L[1])]; [1 3 (1/2) 1 3 (1/2)] rootlist := [-- + -- 26 , -- - -- 26 ] [10 20 10 20 ] > for z in rootlist do > print(['x'=x,'y'=y,'z'=z]); > od; [ 1 3 1 (1/2) 1 3 (1/2)] [x = -, y = -- - -- 26 , z = -- + -- 26 ] [ 2 10 20 10 20 ] [ 1 3 1 (1/2) 1 3 (1/2)] [x = -, y = -- + -- 26 , z = -- - -- 26 ] [ 2 10 20 10 20 ]