////////////////////////////////////////////////// // Modifications for Theta Graph yz-projections // ////////////////////////////////////////////////// // 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) /////////////////////////////// // Case 7_2: [0, -1, -3, -2] // /////////////////////////////// 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^1); poly B34 = (5*t^3); poly B2 = (3*t^2); 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+(25t6+118t4+240t2-1)*x4+(-200t10-3846t8-14983t6-14038t4+242t2)*x3+(-225t14+22760t12+96047t10+82137t8-44770t6-14641t4)*x2+y2+(27225t16+174240t14+398574t12+383328t10+131769t8)*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+(25t6+119t4+242t2)*x4+(-200t10-3956t8-15445t6-14632t4)*x3+(-2t2-2)*x2y+(-225t14+25785t12+115407t10+126423t8-2178t6)*x2+(110t6+352t4+242t2)*xy+y2+(27225t16+174240t14+398574t12+383328t10+131769t8)*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+(625t14+4800t12+12954t10+7776t8-985t6+18t4)*x4+(-2500t14-19100t12-51590t10-31268t8+3092t6-872t4-242t2)*x3y+(3750t14+28550t12+77163t10+47086t8-3750t6+2148t4+625t2+4)*x2y2+(-2500t14-19000t12-51368t10-31452t8+2204t6-1712t4-504t2-4)*xy3+(625t14+4750t12+12842t10+7863t8-551t6+428t4+126t2+1)*y4+(-223750t24-6886425t22-48962239t20-149418058t18-224020105t16-163284145t14-47253000t12-1002154t10-131688t8)*x3+(671250t24+20121175t22+142203807t20+431935842t18+642841283t16+461337105t14+127289610t12+622t10+390972t8+2178t6)*x2y+(-671250t24-19852125t22-139862352t20-423776676t18-628231767t16-447079440t14-120054915t12+1502298t10-388926t8-3267t6)*xy2+(223750t24+6617375t22+46620784t20+141258892t18+209410589t16+149026480t14+40018305t12-500766t10+129642t8+1089t6)*y3+(-14490000t34+1445841000t32+18889822575t30+98405301825t28+273770223975t26+440614769625t24+409038669225t22+200718011475t20+37814987925t18-1697887125t16-13176900t14)*x2+(28980000t34-2502062000t32-32236574650t30-162520952100t28-426545687250t26-612857141550t24-429833193150t22-34653562950t20+143046705450t18+78383914950t16+11478544000t14+88578050t12)*xy+(-14490000t34+1251031000t32+16118287325t30+81260476050t28+213272843625t26+306428570775t24+214916596575t22+17326781475t20-71523352725t18-39191957475t16-5739272000t14-44289025t12)*y2+(96430950000t42+1680488988750t40+13088948684625t38+60121809188100t36+180920734174125t34+374523012141300t32+544396792475250t30+556013124057600t28+391464545882850t26+181294477476750t24+49923100316925t22+6305871379500t20+48230748225t18)*x+(-96430950000t42-1680488988750t40-13088948684625t38-60121809188100t36-180920734174125t34-374523012141300t32-544396792475250t30-556013124057600t28-391464545882850t26-181294477476750t24-49923100316925t22-6305871379500t20-48230748225t18)*y drawTropicalCurve(newfnox,"max");