#### D.5.15.8 blowUpBO

Procedure from library `resolve.lib` (see resolve_lib).

Usage:
  blowUpBO (BO,C,e);
  BO = basic object, a list: ideal W,
  ideal J,
  intvec b,
  list Ex,
  ideal ab,
  intvec v,
  intvec w,
  matrix M
  C = ideal
  e = integer (0 usual blowing up, 1 deleting extra charts, 2 deleting
  no charts )

Assume:
  R = basering, a polynomial ring, W an ideal of R,
  J = ideal containing W,
  C = ideal containing J

Compute:
  the blowing up of BO[1] in C, the exceptional locus, the strict transform of BO[2]

Note:
  blowUpBO may be applied to basic objects in the sense of
  [Bravo, Encinas, Villamayor] in the following referred to as BO and
  to presentations in the sense of [Bierstone, Milman] in the following
  referred to as BM.

Return:
  a list l of length at most size(C),
  l[i] is a ring containing an object BO resp. BM:
  BO[1]=BM[1] an ideal, say Wi, defining the ambient space of the i-th chart of the blowing up
  BO[2]=BM[2] an ideal defining the strict transform
  BO[3] intvec, the first integer b such that in the original object (Delta^b(BO[2]))==1
  the subsequent integers have the same property for Coeff-Objects of BO[2] used when determining the center
  BM[3] intvec, BM[3][i] is the assigned multiplicity of BM[2][i]
  BO[4]=BM[4] the list of exceptional divisors
  BO[5]=BM[5] an ideal defining the map K[W] ----> K[Wi]
  BO[6]=BM[6] an intvec BO[6][j]=1 indicates that <BO[4][j],BO[2]>=1, i.e. the strict transform does not meet the j-th exceptional divisor
  BO[7] intvec, the index of the first blown-up object in the resolution process leading to this object for which the value of b was BO[3] the subsequent ones are the indices for the Coeff-Objects of BO[2] used when determining the center
  BM[7] intvec, BM[7][i] is the index at which the (2i-1)st entry of the invariant first reached its current maximal value
  BO[8]=BM[8] a matrix indicating that BO[4][i] meets BO[4][j] by BO[8][i,j]=1 for i < j
  BO[9] empty
  BM[9] the invariant

Example:

    LIB "resolve.lib";
    ring R=0,(x,y),dp;
    ideal W;
    ideal J=x2-y3;
    intvec b=1;
    list E;
    ideal abb=maxideal(1);
    intvec v;
    intvec w=-1;
    matrix M;
    intvec ma;
    list BO=W,J,b,E,abb,v,w,M,ma;
    ideal C=CenterBO(BO)[1];
    list blow=blowUpBO(BO,C,0);
    def Q=blow[1];
    setring Q;
    BO;
    ==> [1]:
    ==>    _[1]=0
    ==> [2]:
    ==>    _[1]=y(1)^2-x(2)
    ==> [3]:
    ==>    1
    ==> [4]:
    ==>    [1]:
    ==>       _[1]=x(2)
    ==> [5]:
    ==>    _[1]=x(2)*y(1)
    ==>    _[2]=x(2)
    ==> [6]:
    ==>    0
    ==> [7]:
    ==>    -1
    ==> [8]:
    ==>    _[1,1]=0
    ==> [9]:
    ==>    0

User manual for Singular version 4.4.1, 2025, generated by texi2html.