Top
Back: elim_lib
Forward: elim
FastBack: algebra_lib
FastForward: grwalk_lib
Up: elim_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.4.3.1 blowup0

Procedure from library elim.lib (see elim_lib).

Usage:
blowup0(j[,s1,s2]); j ideal, s1,s2 nonempty strings

Create:
Create a presentation of the blowup ring of j

Return:
no return value

Note:
s1 and s2 are used to give names to the blownup ring and the blownup ideal (default: s1="j", s2="A")
Assume R = char,x(1..n),ord is the basering of j, and s1="j", s2="A" then the procedure creates a new ring with name Bl_jR
(equal to R[A,B,...])
Bl_jR = char,(A,B,...,x(1..n)),(dp(k),ord)
with k=ncols(j) new variables A,B,... and ordering wp(d1..dk) if j is homogeneous with deg(j[i])=di resp. dp otherwise for these vars. If k>26 or size(s2)>1, say s2="A()", the new vars are A(1),...,A(k). Let j_ be the kernel of the ring map Bl_jR -> R defined by A(i)->j[i], x(i)->x(i), then the quotient ring Bl_jR/j_ is the blowup ring of j in R (being isomorphic to R+j+j^2+...). Moreover the procedure creates a std basis of j_ with name j_ in Bl_jR.
This proc uses 'execute' or calls a procedure using 'execute'.

Display:
printlevel >=0: explain created objects (default)

Example:
 
LIB "elim.lib";
ring R=0,(x,y),dp;
poly f=y2+x3; ideal j=jacob(f);
blowup0(j);
==> 
==> // The proc created the ring Bl_jR (equal to R[A,B])
==> // it contains the ideal j_ , such that
==> //             Bl_jR/j_ is the blowup ring
==> // show(Bl_jR); shows this ring.
==> // Make Bl_jR the basering and see j_ by typing:
==>    setring Bl_jR;
==>    j_;
show(Bl_jR);
==> // ring: (0),(A,B,x,y),(wp(2,1),dp(2),C);
==> // minpoly = 0
==> // objects belonging to this ring:
==> // j_                   [0]  ideal, 1 generator(s)
setring Bl_jR;
j_;"";
==> j_[1]=2Ay-3Bx2
==> 
ring r=32003,(x,y,z),ds;
blowup0(maxideal(1),"m","T()");
==> 
==> // The proc created the ring Bl_mr (equal to r[T(1..3)])
==> // it contains the ideal m_ , such that
==> //             Bl_mr/m_ is the blowup ring
==> // show(Bl_mr); shows this ring.
==> // Make Bl_mr the basering and see m_ by typing:
==>    setring Bl_mr;
==>    m_;
show(Bl_mr);
==> // ring: (32003),(T(1),T(2),T(3),x,y,z),(wp(1,1,1),ds(3),C);
==> // minpoly = 0
==> // objects belonging to this ring:
==> // m_                   [0]  ideal, 3 generator(s)
setring Bl_mr;
m_;
==> m_[1]=T(1)y-T(2)x
==> m_[2]=T(1)z-T(3)x
==> m_[3]=T(2)z-T(3)y
kill Bl_jR, Bl_mr;


Top Back: elim_lib Forward: elim FastBack: algebra_lib FastForward: grwalk_lib Up: elim_lib Top: Singular Manual Contents: Table of Contents Index: Index About: About this document
            User manual for Singular version 3-0-1, October 2005, generated by texi2html.