////////////////////////////////////////////////// // Modifications for Theta Graph yz-projections // ////////////////////////////////////////////////// // The following contains an example for Cell2_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) /////////////////////////////// // Case 2_2: [0, -2, -4, -3] // /////////////////////////////// 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+t^2); poly B4 = (11*t^2); poly B34 = (5*t^4); poly B2 = (3*t^3); 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+(25t8+119t6+241t4-2t2-1)*x4+(-225t14-3990t12-15319t10-14136t8+603t6+242t4)*x3+(27000t18+115325t16+108026t14-49632t12-44770t10-14641t8)*x2+y2+(27225t22+174240t20+398574t18+383328t16+131769t14)*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+(25t8+119t6+242t4)*x4+(-225t14-3990t12-15429t10-14598t8+9t6)*x3+(-2t2-2)*x2y+(27000t18+118350t16+127386t14-5346t12-2178t10)*x2+(110t8+352t6+242t4)*xy+y2+(27225t22+174240t20+398574t18+383328t16+131769t14)*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+(625t18+4750t16+12836t14+7740t12-885t10+104t8+18t6)*x4+(-2500t18-19000t16-51244t14-30734t12+3376t10-1264t8-872t6-242t4)*x3y+(3750t18+28500t16+76766t14+45875t12-4896t10+2764t8+2148t6+645t4+20t2+4)*x2y2+(-2500t18-19000t16-51144t14-30508t12+3208t10-2132t8-1712t6-524t4-20t2-4)*xy3+(625t18+4750t16+12786t14+7627t12-802t10+533t8+428t6+131t4+5t2+1)*y4+(-258750t32-7030875t30-48880050t28-148141545t26-221742663t24-162331134t22-48710850t20-2956395t18-998550t16-130833t14+81t12)*x3+(776250t32+21092625t30+146109400t28+439795635t26+649059429t24+457954670t22+117646668t20-5763045t18-190490t16+314859t14-4335t12+2178t10)*x2y+(-776250t32-21092625t30-145844025t28-437481135t26-640975149t24-443435304t22-103403727t20+13079160t18+1783560t16-276039t14+6381t12-3267t10)*xy2+(258750t32+7030875t30+48614675t28+145827045t26+213658383t24+147811768t22+34467909t20-4359720t18-594520t16+92013t14-2127t12+1089t10)*y3+(1707750000t44+20789060625t42+105610633875t40+288989946000t38+456978879000t36+411723380250t34+186068580750t32+19949723100t30-10776324600t28-1952896275t26-103482225t24-13176900t22)*x2+(-3415500000t44-41195458750t42-205768856500t40-544195330750t38-794518978650t36-557889427800t34+13365498900t32+326425125600t30+242554672200t28+82033266150t26+13633360400t24+760599950t22+88578050t20)*xy+(1707750000t44+20597729375t42+102884428250t40+272097665375t38+397259489325t36+278944713900t34-6682749450t32-163212562800t30-121277336100t28-41016633075t26-6816680200t24-380299975t22-44289025t20)*y2+(94708968750t56+1652540484375t54+12888348350625t52+59287308324750t50+178716646689075t48+370767731303475t46+540579406212450t44+554733260145900t42+393833881277100t40+185535593612325t38+53355840889725t36+7914118612950t34+469950844275t32+48230748225t30)*x+(-94708968750t56-1652540484375t54-12888348350625t52-59287308324750t50-178716646689075t48-370767731303475t46-540579406212450t44-554733260145900t42-393833881277100t40-185535593612325t38-53355840889725t36-7914118612950t34-469950844275t32-48230748225t30)*y drawTropicalCurve(newfnox,"max");