The approximation sequence of a module M over a Gorenstein ring is the versal short exact sequence $$0\to P \to M' \to M \to 0$$ where M' is a maximal Cohen-Macaulay module and P is a module of finite projective dimension, as defined by Auslander and Buchweitz.
i1 : S = ZZ/101[a,b]/ideal(a^3+b^3) o1 = S o1 : QuotientRing |
i2 : R = S/ideal(a*b) o2 = R o2 : QuotientRing |
i3 : M = R^1/(ideal vars R)^2 o3 = cokernel | a2 0 b2 | 1 o3 : R-module, quotient of R |
i4 : approximationSequence M o4 = 0 <-- cokernel | a2 0 b2 | <-- cokernel | b2 a2 | <-- subquotient (| b2 a2 |, | b2 a2 |) <-- 0 0 1 2 3 4 o4 : ChainComplex |
The object approximationSequence is a function closure.