Home Online Manual
Top
Back: picksFormula
Forward: ellipticNFDB
FastBack: Tropical Geometry
FastForward: realizationMatroids_lib
Up: polymake_lib
Top: Singular Manual
Contents: Table of Contents
Index: Index
About: About this document

D.13.1.16 ellipticNF

Procedure from library polymake.lib (see polymake_lib).

Usage:
ellipticNF(polygon); polygon list

Assume:
polygon is a list of integer vectors in the plane such that their convex hull C has precisely one interior lattice point; i.e. C is the Newton polygon of an elliptic curve

Purpose:
compute the normal form of the polygon with respect to the unimodular affine transformations T=A*x+v; there are sixteen different normal forms (see e.g. Bjorn Poonen, Fernando Rodriguez-Villegas: Lattice Polygons and the number 12. Amer. Math. Monthly 107 (2000), no. 3, 238--250.)

Return:
list, L such that
L[1] : list whose entries are the vertices of the normal form of the polygon
L[2] : the matrix A of the unimodular transformation
L[3] : the translation vector v of the unimodular transformation
L[4] : list such that the ith entry is the image of polygon[i] under the unimodular transformation T

Example:
 
LIB "polymake.lib";
ring r=0,(x,y),dp;
// the Newton polygon of the following polynomial
//     has precisely one interior point
poly f=x22y11+x19y10+x17y9+x16y9+x12y7+x9y6+x7y5+x2y3;
list polygon=newtonPolytopeLP(f);
// its lattice points are
polygon;
// find its normal form
list nf=ellipticNF(polygon);
// the vertices of the normal form are
nf[1];
// it has been transformed by the unimodular affine transformation A*x+v
// with matrix A
nf[2];
// and translation vector v
nf[3];
// the 3rd lattice point ...
polygon[3];
// ... has been transformed to
nf[4][3];