# naiveTruncation(Complex,ZZ,ZZ) -- drops all terms of a complex outside a given interval

## Synopsis

• Function: naiveTruncation
• Usage:
naiveTruncation(C, lo, hi)
• Inputs:
• C, ,
• lo, an integer, or -infinity or null (the latter two give no lower bound)
• hi, an integer, or infinity or null (the latter two give no upper bound)
• Outputs:
• ,

## Description

Returns a new complex which drops (sets to zero) all modules outside the given range.

 i1 : R = ZZ/101[a,b,c,d,e]; i2 : I = intersect(ideal(a,b),ideal(c,d,e)) o2 = ideal (b*e, a*e, b*d, a*d, b*c, a*c) o2 : Ideal of R i3 : C = freeResolution I 1 6 9 5 1 o3 = R <-- R <-- R <-- R <-- R 0 1 2 3 4 o3 : Complex i4 : naiveTruncation(C, 1, 2) 6 9 o4 = R <-- R 1 2 o4 : Complex i5 : C16 = naiveTruncation(C, 1, 6) 6 9 5 1 o5 = R <-- R <-- R <-- R 1 2 3 4 o5 : Complex i6 : isWellDefined C16 o6 = true i7 : naiveTruncation(C, 1, infinity) 6 9 5 1 o7 = R <-- R <-- R <-- R 1 2 3 4 o7 : Complex i8 : naiveTruncation(C, -13, 2) 1 6 9 o8 = R <-- R <-- R 0 1 2 o8 : Complex i9 : naiveTruncation(C, -infinity, 2) 1 6 9 o9 = R <-- R <-- R 0 1 2 o9 : Complex i10 : naiveTruncation(C, , 2) 1 6 9 o10 = R <-- R <-- R 0 1 2 o10 : Complex

Truncation gives rise to a natural short exact sequence of complexes.

 i11 : C' = naiveTruncation(C,, 1) 1 6 o11 = R <-- R 0 1 o11 : Complex i12 : C'' = naiveTruncation(C, 2, infinity) 9 5 1 o12 = R <-- R <-- R 2 3 4 o12 : Complex i13 : f = inducedMap(C, C') 1 1 o13 = 0 : R <--------- R : 0 | 1 | 6 6 1 : R <----------------------- R : 1 {2} | 1 0 0 0 0 0 | {2} | 0 1 0 0 0 0 | {2} | 0 0 1 0 0 0 | {2} | 0 0 0 1 0 0 | {2} | 0 0 0 0 1 0 | {2} | 0 0 0 0 0 1 | o13 : ComplexMap i14 : g = inducedMap(C'', C) 9 9 o14 = 2 : R <----------------------------- R : 2 {3} | 1 0 0 0 0 0 0 0 0 | {3} | 0 1 0 0 0 0 0 0 0 | {3} | 0 0 1 0 0 0 0 0 0 | {3} | 0 0 0 1 0 0 0 0 0 | {3} | 0 0 0 0 1 0 0 0 0 | {3} | 0 0 0 0 0 1 0 0 0 | {3} | 0 0 0 0 0 0 1 0 0 | {3} | 0 0 0 0 0 0 0 1 0 | {3} | 0 0 0 0 0 0 0 0 1 | 5 5 3 : R <--------------------- R : 3 {4} | 1 0 0 0 0 | {4} | 0 1 0 0 0 | {4} | 0 0 1 0 0 | {4} | 0 0 0 1 0 | {4} | 0 0 0 0 1 | 1 1 4 : R <------------- R : 4 {5} | 1 | o14 : ComplexMap i15 : assert isShortExactSequence(g,f)

There is another type of truncation, canonicalTruncation, which induces an isomorphism on (a range) of homology.