# Singular          #### D.5.8.1 blowUp

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

Usage:
blowUp(J,C[,W][,E]);
W,J,C = ideals,
E = list

Assume:
J = ideal containing W ( W = 0 if not specified)
C = ideal containing J
E = list of smooth hypersurfaces (e.g. exceptional divisors)

Note:
W the ideal of the ambient space, C the ideal of the center of the blowup and J the ideal of the variety
Important difference to blowUp2:
- the ambient space V(W) is blown up and V(J) transformed in it
- V(C) is assumed to be non-singular

Compute:
the blowing up of W in C, the exceptional locus, the strict transform of J and the blowup map

Return:
list, say l, of size at most size(C),

l[i] is the affine ring corresponding to the i-th chart each l[i] contains the ideals
- aS, ideal of the blownup ambient space
- sT, ideal of the strict transform
- eD, ideal of the exceptional divisor
- bM, ideal corresponding to the blowup map

l[i] also contains a list BO, which can best be viewed with showBO(BO) detailed information on the data type BO can be viewed via the command showDataTypes();

Example:
 ```LIB "resolve.lib"; ring R=0,(x,y),dp; ideal J=x2-y3; ideal C=x,y; list blow=blowUp(J,C); def Q=blow; setring Q; aS; ==> aS=0 sT; ==> sT=y(1)^2-x(2) eD; ==> eD=x(2) bM; ==> bM=x(2)*y(1) ==> bM=x(2) ```

### Misc 