-- -*- M2-comint -*- hash: 6842643242960838932

i1 : R=QQ[x,y];

i2 : S=QQ[a,b,c,d];

i3 : Pi = map(R, S, {x^3, x^2*y, x*y^2, y^3});

o3 : RingMap R <-- S

i4 : isBirationalOntoImage(Pi, Verbosity=>0)

o4 = true

i5 : isBirationalMap(Pi,  Verbosity=>0)

o5 = false

i6 : A = QQ[z_0..z_6];

i7 : H=map(A^4,4,(i,j)->A_(i+j));

             4      4
o7 : Matrix A  <-- A

i8 : SH=sub(H,{z_5=>0,z_6=>0})

o8 = | z_0 z_1 z_2 z_3 |
     | z_1 z_2 z_3 z_4 |
     | z_2 z_3 z_4 0   |
     | z_3 z_4 0   0   |

             4      4
o8 : Matrix A  <-- A

i9 : sh=map(A, A, transpose jacobian ideal det SH );

o9 : RingMap A <-- A

i10 : isBirationalOntoImage(sh, Verbosity=>0)

o10 = false

i11 : B=QQ[t_0..t_4];

i12 : li=map(B,A,matrix{{t_0..t_4,0,0}});

o12 : RingMap B <-- A

i13 : phi=li*sh;

o13 : RingMap B <-- A

i14 : isBirationalOntoImage(phi, HybridLimit=>2)
isBirationalOntoImageSimis: About to find the image of the map.  If you know the image, 
        you may want to use the AssumeDominant option if this is slow.

o14 = true

i15 : 
