sage: R.<x,y> = GF(3)[]
sage: S = R.quo(ideal(y^4 + y - x^5))
sage: from sage.libs.singular.function import singular_function
sage: normalC = sage.libs.singular.function_factory.ff.normal__lib.normalC
sage: normalC(S.defining_ideal(), ['withGens'])[1][0]
// 'normalC' created a list, say nor, of three lists:
// To see the list type
nor;
// * nor[1] is a list of 1 ring(s)
// To access the i-th ring nor[1][i] give it a name, say Ri, and type e.g.
def R1 = nor[1][1]; setring R1; norid; normap;
// For the other rings type first (if R is the name of your original basering)
setring R;
// and then continue as for R1.
// Ri/norid is the affine algebra of the normalization of the i-th
// component R/P_i (where P_i is an associated prime of the input ideal id)
// and normap the normalization map from R to Ri/norid.
// * nor[2] is a list of 1 ideal(s), each ideal nor[2][i] consists of
// elements g1..gk of R such that the gj/gk generate the integral
// closure of R/P_i as sub-algebra in the quotient field of R/P_i, with
// gj/gk being mapped by normap to the j-th variable of Ri;
// * nor[3] shows the delta-invariant of each component and of id
// (-1 means infinite, and 0 that R/P_i resp. R/id is normal).
[y^4 + y, x^4*y, x^3*y^3 - x^3*y^2 + x^3*y, x^2*y^3 - x^2*y^2 + x^2*y, x^3*y^2 + x^3*y, x*y^3 - x*y^2 + x*y, x^4]
sage: