-- construct a numerically non extendable -- exceptional sequence in K_0(S) -- where S is a del Pezzo surface of -- degree 1 restart -- work in characteristic 0 kk = QQ -- blow up 8 points r = 8 ------------------ -- Notation 3.3 -- ------------------ -- K_0 ** QQ R = kk[h,e_1..e_r,b,Degrees=>{r+1:1,2}] R2 = R/(ideal super basis (3,R)+ideal(b^2)) -- intersection product on divisors intM = diagonalMatrix({1}|toList(r:-1)) -- canonical class k = -3*h + sum toList(e_1..e_r) -- intersection Product on K0 A = (vars R2)_{0..r} intA = A*intM*transpose A+2*b -- integration int = (v) -> ((2_kk)^-1*diff(sub(intA,ring v),v))_0_0 -- test: integration assert (-1 == sub(int(e_1*e_1),kk)) assert (1 == sub(int(h*h),kk)) assert (0 == sub(int(h*e_1),kk)) assert ((9-r) == sub(int(k*k),kk)) -- chern character of a divisor chernD = (D) -> (1+D+2_kk^-1*D*D) -- test: are group operations compatible? assert (chernD(e_1)*chernD(h) == chernD(e_1+h)) -- todd class todd = 1-k/2+b -- dual class dualize = (EE) -> sub(EE,apply((flatten entries sub(vars R2,ring EE))_{0..r},j->(j=>-j))) -- riemann roch rr = (C) -> int(C*sub(todd,ring C)) -- test: Rieman Roch for lines in IP^2 assert (rr(chernD(h)) == 3_kk) -- test: Rieman Roch for lines in IP^2 throu a point assert (rr(chernD(h-e_1)) == 2_kk); -- test: Riemann Roch for cubics in IP^2 assert (rr(chernD(3*h)) == 10_kk) -- test: Riemann Roch for the canonical bundle assert (rr(chernD(k)) == 1_kk) -- chernclasses -- from chern character -- -- r + c1 + 1/2 ( c1^2-2 c2) --chern0 = (D) -> sub(D,kk); -- the degree of the basis vectors of the intersection matrix (as in R2) -- is assumed to be in the 0st place of the degree vector --chern1 = (D) -> ((sum select(terms(D),i->1==(degree i)#0))) --chern2 = (D) -> (int(((2_kk)^-1*(chern1(D))^2-D))) --chernClean = (E) -> (chern0(E)+chern1(E)+b*(int(E))) -- Chi of pairs chiHom = (A,B) -> (rr(dualize(A)*B)) -- numerical semiorthogonality of an exceptional sequence isOrth = (ex) -> {0_R2} == keys tally flatten (apply(#ex,i->apply(i,j->chiHom(ex#i,ex#j)))) matrixOrth = (ex) -> matrix apply(ex,i->apply(ex,j->chiHom(j,i))) -- test: A known exceptional sequence (Remark 3.7) exBlock = {1_R2,chernD(h),chernD(2*h)}|apply(r,i->1-chernD(-e_(i+1))) assert isOrth exBlock matrixOrth exBlock -- | 1 0 0 0 0 0 0 0 0 0 0 | -- | 3 1 0 0 0 0 0 0 0 0 0 | -- | 6 3 1 0 0 0 0 0 0 0 0 | -- | 1 1 1 1 0 0 0 0 0 0 0 | -- | 1 1 1 0 1 0 0 0 0 0 0 | -- | 1 1 1 0 0 1 0 0 0 0 0 | -- | 1 1 1 0 0 0 1 0 0 0 0 | -- | 1 1 1 0 0 0 0 1 0 0 0 | -- | 1 1 1 0 0 0 0 0 1 0 0 | -- | 1 1 1 0 0 0 0 0 0 1 0 | -- | 1 1 1 0 0 0 0 0 0 0 1 | -- non extendable sequence of length 9 m9D = {k}|apply({2,3,4,5,6,7,8},i->k+e_i)|{k-2*e_1}; m9ch = apply(m9D,D->chernD(D)); -- test: is the length 9 sequence semiorthogonal? assert isOrth m9ch apply(entries matrixOrth m9ch,i->print toString i) -- | 1 0 0 0 0 0 0 0 0 | -- | 1 1 0 0 0 0 0 0 0 | -- | 1 0 1 0 0 0 0 0 0 | -- | 1 0 0 1 0 0 0 0 0 | -- | 1 0 0 0 1 0 0 0 0 | -- | 1 0 0 0 0 1 0 0 0 | -- | 1 0 0 0 0 0 1 0 0 | -- | 1 0 0 0 0 0 0 1 0 | -- | -2 -3 -3 -3 -3 -3 -3 -3 1 | ------------------------------ -- Proof of Proposition 3.8 -- ------------------------------ m10 = -h+3/2*b m11 = 2+2*k+h-3*e_1-b -- test: m10 orthogonal to length 9 sequence? apply(m9ch,m->assert (0==chiHom(m10,m))); -- test: m11 orthogonal to length 9 sequence? apply(m9ch,m->assert (0==chiHom(m11,m))); matrix apply({m10,m11},i->apply({m10,m11},j->chiHom(i,j))) -- | -1 1 | -- | -5 4 | S = kk[s,t] R2S = R2**S sm10tm11 = s*sub(m10,R2S)+t*sub(m11,R2S) Q = sub(chiHom(sm10tm11,sm10tm11),S) -- test: is Q the quadric in the paper use S assert (Q == -s^2-4*s*t+4*t^2) -- test: is there really no solution of Q=1 mod 4? tally flatten apply(4,sSol->apply(4,tSol-> assert (1 != sub(sub(Q,{s=>sSol,t=>tSol}),ZZ)%4)));