# icFractions -- fractions integral over an affine domain

## Synopsis

• Usage:
icFractions R
• Inputs:
• R, a ring, an affine domain
• Outputs:
• a list, a list of fractions over R, generating the integral closure of R, as an R-algebra.

## Description

If the integral closure of R has not yet been computed, that computation is performed first. No extra computation is then involved to find the fractions.

 `i1 : R = QQ[x,y,z]/ideal(x^6-z^6-y^2*z^4);` ```i2 : icFractions R 3 2 x x o2 = {--, --, x, y, z} 2 z z o2 : List``` ```i3 : R' = integralClosure R o3 = R' o3 : QuotientRing``` ```i4 : gens R' o4 = {w , w , x, y, z} 4,0 3,0 o4 : List``` ```i5 : netList (ideal R')_* +--------------+ | 2 | o5 = |w z - x | | 3,0 | +--------------+ |w z - w x | | 4,0 3,0 | +--------------+ | 2 | |w x - w | | 4,0 3,0 | +--------------+ | 2 2 2| |w - y - z | | 4,0 | +--------------+```

Notice that the i-th fraction corresponds to the i-th generator of the integral closure. For instance, the variable w(3,0) = x2 /z.

## Caveat

(a) Currently in Macaulay2, fractions over quotients of polynomial rings do not have a nice normal form. In particular, sometimes the fractions are ’simplified’ to give much nastier looking fractions. We hope that in the near future, this misfeature will be corrected. (b) If you want to control the computation of the integral closure via optional arguments, then make sure you call integralClosure(Ring) first, since icFractions does not have optional arguments.