# New Nagasaka Example. > > restart; > with(LinearAlgebra): > read("ruppert_matrix.mpl"); > > f:= - 0.769142*y^6*x^4 - 0.791975*y^2*x^4 + 0.535324*y*x^4 + > 0.828448*x^4 > - 0.653187*y^3*x^3 + 0.320409*y^2*x^3 + 0.103376*y*x^3 + 0.475811*x^3 > + 0.996342*y^5*x^2 + 0.755931*y*x^2 - 0.941103*x^2 + 0.169204*y^5*x > - 0.243435*y*x - 0.838000*y^6 - 0.214451*y + 0.209513; 6 4 2 4 4 4 f := -.769142 y x - .791975 y x + .535324 y x + .828448 x 3 3 2 3 3 3 - .653187 y x + .320409 y x + .103376 y x + .475811 x 5 2 2 2 5 + .996342 y x + .755931 y x - .941103 x + .169204 y x 6 - .243435 y x - .838000 y - .214451 y + .209513 > #f:=subs({x=y,y=x},f); > m:=degree(f,x); > n:=degree(f,y); m := 4 n := 6 > phi:=add(add(c[i,j]*x^i*y^j,j=0..n),i=0..m); 4 5 2 6 3 3 phi := c[4, 5] x y + c[2, 6] x y + c[3, 0] x + c[3, 1] x y 3 2 3 3 3 4 + c[3, 2] x y + c[3, 3] x y + c[3, 4] x y 3 5 3 6 4 4 + c[3, 5] x y + c[3, 6] x y + c[4, 0] x + c[4, 1] x y 4 2 4 3 4 4 + c[4, 2] x y + c[4, 3] x y + c[4, 4] x y 4 6 3 4 5 + c[4, 6] x y + c[1, 3] x y + c[1, 4] x y + c[1, 5] x y 6 2 2 2 2 + c[1, 6] x y + c[2, 0] x + c[2, 1] x y + c[2, 2] x y 2 4 2 5 3 4 + c[2, 4] x y + c[2, 5] x y + c[0, 3] y + c[0, 4] y 5 6 + c[0, 5] y + c[0, 6] y + c[1, 0] x + c[1, 1] x y 2 2 + c[1, 2] x y + c[0, 1] y + c[0, 0] + c[0, 2] y 2 3 + c[2, 3] x y > Rphi:=ruppert(phi); > > Rf:=ruppert(f); > [ 88 x 53 Matrix ] Rphi := [ Data Type: anything ] [ Storage: rectangular ] [ Order: Fortran_order ] [ 88 x 53 Matrix ] Rf := [ Data Type: anything ] [ Storage: rectangular ] [ Order: Fortran_order ] > # Largest coeff of a abs(c[i,j])^2 is 514: > Norm(Rphi,Frobenius)^2; > cB:=514; 2 2 2 439 | c[1, 0] | + 374 | c[0, 1] | + 439 | c[3, 0] | 2 2 2 + 514 | c[4, 0] | + 514 | c[0, 0] | + 215 | c[3, 2] | 2 2 2 + 290 | c[0, 2] | + 299 | c[1, 1] | + 262 | c[0, 3] | 2 2 2 + 215 | c[1, 2] | + 274 | c[2, 1] | + 290 | c[0, 4] | 2 2 2 + 187 | c[1, 3] | + 190 | c[2, 2] | + 299 | c[3, 1] | 2 2 2 + 374 | c[0, 5] | + 162 | c[2, 3] | + 215 | c[1, 4] | 2 2 2 + 374 | c[4, 1] | + 514 | c[0, 6] | + 299 | c[1, 5] | 2 2 2 + 190 | c[2, 4] | + 290 | c[4, 2] | + 187 | c[3, 3] | 2 2 2 + 274 | c[2, 5] | + 439 | c[1, 6] | + 215 | c[3, 4] | 2 2 2 + 262 | c[4, 3] | + 414 | c[2, 6] | + 299 | c[3, 5] | 2 2 2 + 290 | c[4, 4] | + 439 | c[3, 6] | + 374 | c[4, 5] | 2 2 + 514 | c[4, 6] | + 414 | c[2, 0] | cB := 514 > #which is a lot better than what we get from Theorem 1 > cB_old:=(m*sqrt(2*m*n+n-1))^2; > cB_old := 848 > sigma:=SingularValues(Rf)[53]; sigma := .980937020014374994 > # So we get the following lower bound in the two norm: > sigma/sqrt(cB*1.0); .04326727713 > # As a relative bound: > sigma/sqrt(cB*1.0); .04326727713 > # a number of times better than Nagasaka's Bound: > %/0.0000045006*norm(f,2); 24106.97722 > >