/////////////////////////////////// // Modifications for Theta Graph // /////////////////////////////////// // The following contains an example for Cell7_2 combinatorial type of the modified tropical theta graphs in R^3. The curve can be visualized by means of projections. // We use the parameters b5, b4, b34, b2, where b3 = b34+b4, a5 = -b5^2, a4 = b4^2, a3 = b3^2, a2 = b2^2. we use this strategy since the modifications involve square roots. // The parameters w5,w3, w34, w2 satisfy: // PiecesTypeIICone[1][0].Hrepresentation() // (An inequality (1, -1, 0, 0) x + 0 >= 0, // An inequality (0, 0, -1, 1) x + 0 >= 0, // An inequality (-1, 2, 0, -1) x + 0 >= 0) // We want a cancellation, so we need in(b4^2) = in(b2*b5). We aim for a subdivision containing the edge x^2y--x^3. For this, we multiply our original vector by 3 (so we replace t by t^3) and take one term of b2 to be t^(6+e) for e =1, since we need ht(x3) >2*d34/3+w2+w3+7*w5/3 and we want integer heights. /////////////////////////////// // Case 7_2: [0, -3, -9, -6] // /////////////////////////////// LIB "all.lib"; LIB "poly.lib"; LIB "tropical.lib"; LIB "elim.lib"; ring rr = (0,t), (b2,b34,b4,b5, x,y,z),dp; poly f=y^2-x*(x-b2^2)*(x-(b4+b34)^2)*(x-b4^2)*(x+b5^2); // f; // b2^2*b34^2*b4^2*b5^2*x+2*b2^2*b34*b4^3*b5^2*x+b2^2*b4^4*b5^2*x+b2^2*b34^2*b4^2*x^2+2*b2^2*b34*b4^3*x^2+b2^2*b4^4*x^2-b2^2*b34^2*b5^2*x^2-2*b2^2*b34*b4*b5^2*x^2-2*b2^2*b4^2*b5^2*x^2-b34^2*b4^2*b5^2*x^2-2*b34*b4^3*b5^2*x^2-b4^4*b5^2*x^2-b2^2*b34^2*x^3-2*b2^2*b34*b4*x^3-2*b2^2*b4^2*x^3-b34^2*b4^2*x^3-2*b34*b4^3*x^3-b4^4*x^3+b2^2*b5^2*x^3+b34^2*b5^2*x^3+2*b34*b4*b5^2*x^3+2*b4^2*b5^2*x^3+b2^2*x^4+b34^2*x^4+2*b34*b4*x^4+2*b4^2*x^4-b5^2*x^4-x^5+y^2 setring(rr); poly B5 = (1); poly B4 = (2*t^3); poly B34 = (t^9); poly B2 = (4*t^6+t^7); map P2 = rr, B2, B34, B4, B5, x, y, z; poly ff = P2(f); ring r = (0,t),(x,y),dp; map newP2 = rr, 0,0,0,0,x,y,0; poly f2 = newP2(ff); // f2; // -x5+(t18+t14+8t13+20t12+8t6-1)*x4+(-t32-8t31-16t30-4t26-32t25-68t24-8t20-64t19-143t18+t14+8t13+4t12+8t6)*x3+(4t38+32t37+64t36+15t32+120t31+240t30+12t26+96t25+188t24-8t20-64t19-144t18-16t12)*x2+y2+(4t38+32t37+64t36+16t32+128t31+256t30+16t26+128t25+256t24)*x drawTropicalCurve(f2,"max"); /////////////////// // XZ-projection // /////////////////// poly B5 = newP2(B5); poly B4 = newP2(B4); poly B34 = newP2(B34); poly B2 = newP2(B2); poly B3 = B34 + B4; poly g2 = substitute(f2, y, y+B3*B4*B5*x-B5*x^2); // g2; // -x5+(t18+t14+8t13+20t12+8t6)*x4+(-t32-8t31-16t30-4t26-32t25-68t24-8t20-64t19-143t18+t14+8t13)*x3-2*x2y+(4t38+32t37+64t36+15t32+120t31+240t30+12t26+96t25+192t24-8t20-64t19-128t18)*x2+(4t12+8t6)*xy+y2+(4t38+32t37+64t36+16t32+128t31+256t30+16t26+128t25+256t24)*x drawTropicalCurve(g2,"max"); /////////////////// // ZY-projection // /////////////////// ring s = (0,t),(x,y,z),dp; map P = r, x,y; poly ff= P(f2); poly B5 = P(B5); poly B4 = P(B4); poly B3 = P(B3); poly B34 = P(B34); ideal I = (ff,z-y+B3*B4*B5*x-B5*x^2); poly fnox= eliminate(I,x)[1]; // Replace z by y and y by x so that the pictures are not flipped. ring r2 = (0,t),(x,y),dp; setring(r2); map PP = s,0,x,y; poly newfnox = PP(fnox); // newfnox; // x5-5*x4y+10*x3y2-10*x2y3+5*xy4-y5+(t36+6t30+t28+16t27+94t26+240t25+236t24-4t20-32t19-62t18+2t14+16t13+32t12)*x4+(-4t36-24t30-4t28-64t27-376t26-960t25-944t24+16t20+128t19+252t18-4t14-32t13-68t12-8t6)*x3y+(6t36+36t30+6t28+96t27+564t26+1440t25+1416t24-24t20-192t19-382t18+2t14+16t13+42t12+20t6+4)*x2y2+(-4t36-24t30-4t28-64t27-376t26-960t25-944t24+16t20+128t19+256t18-8t12-16t6-4)*xy3+(t36+6t30+t28+16t27+94t26+240t25+236t24-4t20-32t19-64t18+2t12+4t6+1)*y4+(t64+16t63+94t62+240t61+224t60+6t58+96t57+560t56+1408t55+1272t54+12t52+192t51+1104t50+2688t49+2258t48-42t44-336t43-768t42+2t40+32t39+200t38+576t37+561t36+4t34+64t33+370t32+912t31+784t30+t28+16t27+80t26+128t25)*x3+(-3t64-48t63-282t62-720t61-672t60-18t58-288t57-1680t56-4224t55-3816t54-36t52-576t51-3312t50-8064t49-6774t48+138t44+1104t43+2464t42-6t40-96t39-576t38-1536t37-1427t36-12t34-192t33-1106t32-2704t31-2428t30-3t28-48t27-236t26-352t25+40t24+8t20+64t19+128t18)*x2y+(3t64+48t63+282t62+720t61+672t60+18t58+288t57+1680t56+4224t55+3816t54+36t52+576t51+3312t50+8064t49+6774t48-144t44-1152t43-2544t42+6t40+96t39+564t38+1440t37+1299t36+12t34+192t33+1104t32+2688t31+2466t30+3t28+48t27+234t26+336t25-60t24-12t20-96t19-192t18)*xy2+(-t64-16t63-94t62-240t61-224t60-6t58-96t57-560t56-1408t55-1272t54-12t52-192t51-1104t50-2688t49-2258t48+48t44+384t43+848t42-2t40-32t39-188t38-480t37-433t36-4t34-64t33-368t32-896t31-822t30-t28-16t27-78t26-112t25+20t24+4t20+32t19+64t18)*y3+(-8t82-128t81-752t80-1920t79-1792t78-46t76-736t75-4292t74-10784t73-9792t72-80t70-1280t69-7344t68-17792t67-15104t66-15t64-240t63-1138t62-1424t61+992t60+54t58+864t57+5036t56+12640t55+11456t54+12t52+192t51+832t50+512t49-2048t48-64t44-512t43-1024t42)*x2+(16t82+256t81+1504t80+3840t79+3584t78+92t76+1472t75+8584t74+21568t73+19584t72+160t70+2560t69+14672t68+35456t67+29984t66+30t64+480t63+2180t62+2080t61-3264t60-108t58-1728t57-10272t56-26880t55-25328t54-24t52-384t51-1824t50-2304t49+2656t48+96t44+768t43+2240t42+128t36)*xy+(-8t82-128t81-752t80-1920t79-1792t78-46t76-736t75-4292t74-10784t73-9792t72-80t70-1280t69-7336t68-17728t67-14992t66-15t64-240t63-1090t62-1040t61+1632t60+54t58+864t57+5136t56+13440t55+12664t54+12t52+192t51+912t50+1152t49-1328t48-48t44-384t43-1120t42-64t36)*y2+(-16t94-256t93-1504t92-3840t91-3584t90-128t88-2048t87-11968t86-30208t85-27648t84-392t82-6272t81-36336t80-89984t79-79616t78-560t76-8960t75-51072t74-121856t73-100352t72-352t70-5632t69-30848t68-66560t67-43008t66-64t64-1024t63-4608t62-4096t61+8192t60+256t56+2048t55+4096t54)*x+(16t94+256t93+1504t92+3840t91+3584t90+128t88+2048t87+11968t86+30208t85+27648t84+392t82+6272t81+36336t80+89984t79+79616t78+560t76+8960t75+51072t74+121856t73+100352t72+352t70+5632t69+30848t68+66560t67+43008t66+64t64+1024t63+4608t62+4096t61-8192t60-256t56-2048t55-4096t54)*y drawTropicalCurve(newfnox,"max");