# iteratedCone -- Computes a (possibly non-minimal) resolution of C in P^{g-1} starting from the relative canonical resolution of C in P(E)

## Synopsis

• Usage:
resC=iteratedCone(resX,e)
• Inputs:
• resX, , the relative canonical resolution
• e, a list, the type of the scroll $P(E)$
• Outputs:
• resC, , the resolution of C obtained by an iterated mapping cone

## Description

Given the relative canonical resolution of C on a normalized scroll $P(E)$, this function computes a (possibly non-minimal) free resolution of C in $P^{g-1}$ by an iterated mapping cone construction. For gonality k=3,4 the iterated mapping cone is always minimal. In these cases "iteratedCone" is much faster (for $g >9$) than computing the resolution via the resolution command.

 i1 : (g,k,n) = (8,5,1000) o1 = (8, 5, 1000) o1 : Sequence i2 : e = balancedPartition(k-1,g-k+1) o2 = {1, 1, 1, 1} o2 : List i3 : Ican = canCurveWithFixedScroll(g,k,n); ZZ o3 : Ideal of ----[t ..t ] 1009 0 7 i4 : betti res(Ican,DegreeLimit=>1) 0 1 2 3 o4 = total: 1 15 35 21 0: 1 . . . 1: . 15 35 21 o4 : BettiTally i5 : Jcan = curveOnScroll(Ican,g,k); ZZ o5 : Ideal of ----[pp ..pp , v..w] 1009 0 3 i6 : betti(resX = resCurveOnScroll(Jcan,g,2)) 0 1 2 3 o6 = total: 1 5 5 1 0: 1 . . . 1: . . . . 2: . 4 1 . 3: . 1 4 . 4: . . . . 5: . . . 1 o6 : BettiTally i7 : betti(resC = iteratedCone(resX,e)) 0 1 2 3 4 5 6 o7 = total: 1 15 41 54 41 15 1 0: 1 . . . . . . 1: . 15 35 27 6 . . 2: . . 6 27 35 15 . 3: . . . . . . 1 o7 : BettiTally