////////////////////////////////////////////////// // Modifications for Theta Graph yz-projections // ////////////////////////////////////////////////// // The following contains an example for Cell0_4 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 0_4: [0, -1, -5, -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^1); poly B34 = (5*t^5); 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+(25t10+119t6-t4+240t2-1)*x4+(-225t16+25t14-3965t12+144t10-15250t8+361t6-14157t4+242t2)*x3+(-225t20+26775t18-4240t16+111760t14-19503t12+100793t10-30129t8-29282t6-14641t4)*x2+y2+(27225t22+54450t20+147015t18+239580t16+251559t14+263538t12+131769t10)*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+(25t10+119t6+242t2)*x4+(-225t16+25t14-3965t12+34t10-15470t8+9t6-14641t4)*x3+(-2t2-2)*x2y+(-225t20+26775t18-1215t16+117810t14-3168t12+127413t10-2178t8)*x2+(110t8+110t6+242t4+242t2)*xy+y2+(27225t22+54450t20+147015t18+239580t16+251559t14+263538t12+131769t10)*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+(625t22+625t20+4125t18+4175t16+8811t14+8829t12-985t10-1035t8+18t6)*x4+(-2500t22-2500t20-16500t18-16600t16-34944t14-35090t12+3818t10+3676t8-872t6-726t4-242t2)*x3y+(3750t22+3750t20+24750t18+24800t16+52116t14+52409t12-5601t10-5030t8+2148t6+1855t4+625t2+4)*x2y2+(-2500t22-2500t20-16500t18-16500t16-34644t14-34864t12+3692t10+3192t8-1712t6-1492t4-504t2-4)*xy3+(625t22+625t20+4125t18+4125t16+8661t14+8716t12-923t10-798t8+428t6+373t4+126t2+1)*y4+(-258750t36-483125t34-6668375t32-12848375t30-41952975t28-71403620t26-106908524t24-142622323t22-117556671t20-91835428t18-46718492t16-1266142t14-526995t12-131769t10)*x3+(776250t36+1449375t34+20005125t32+38014375t30+123728575t28+208483610t26+308480562t24+409166159t22+330597141t20+255064202t18+128210596t16+810826t14+1596495t12+408375t10+2178t8)*x2y+(-776250t36-1449375t34-20005125t32-37749000t30-122663400t28-205619985t26-302358057t24-399815754t22-319560705t20-244843161t18-122238156t16+682974t14-1604250t12-414909t10-3267t8)*xy2+(258750t36+483125t34+6668375t32+12583000t30+40887800t28+68539995t26+100786019t24+133271918t22+106520235t20+81614387t18+40746052t16-227658t14+534750t12+138303t10+1089t8)*y3+(-14231250t48+1650566250t46+4821716250t44+19909245375t42+46313390250t40+95533324200t38+167414446350t36+227917137150t34+279266678100t32+270039354750t30+201726449100t28+126123052275t26+39970764900t24-1686643200t22-13176900t20)*x2+(28462500t48-3301132500t46-9260770000t44-37898220750t42-85219311750t40-169384295400t38-284808642200t36-357747221500t34-397529044050t32-316853117900t30-139186006300t28+6642446250t26+126235095250t24+133142325800t22+55590412900t20+11337990400t18+88578050t16)*xy+(-14231250t48+1650566250t46+4630385000t44+18949110375t42+42609655875t40+84692147700t38+142404321100t36+178873610750t34+198764522025t32+158426558950t30+69593003150t28-3321223125t26-63117547625t24-66571162900t22-27795206450t20-5668995200t18-44289025t16)*y2+(94708968750t58+569975793750t56+2516975071875t54+8453677629375t52+22825348115625t50+52495965509625t48+103167180430875t46+175741327824975t44+261729637881525t42+338694154660125t40+380543288288625t38+368004690501525t36+299097930129075t34+199480671544275t32+103741947824625t30+36450089020125t28+6221766521025t26+48230748225t24)*x+(-94708968750t58-569975793750t56-2516975071875t54-8453677629375t52-22825348115625t50-52495965509625t48-103167180430875t46-175741327824975t44-261729637881525t42-338694154660125t40-380543288288625t38-368004690501525t36-299097930129075t34-199480671544275t32-103741947824625t30-36450089020125t28-6221766521025t26-48230748225t24)*y drawTropicalCurve(newfnox,"max");