Finding a lifting for a given subdivision
Posted: 23 Apr 2025, 14:55
The following code, which is from Tropical Computations in polymake by Hampe-Joswig,
gives a beautiful subdivision. On the other hand, as mentioned in the same paper a few pages later, one specific lifting function on the 15 points which yields our example triangulation is [6, 0,3, 1,-1/3,1, 3,-1/3,-1/3,0, 6,0,1,3,6]; in other words, the subdivision of the same points with respect to this weight vector is again Sigma.
My question: How did the authors come up with this vector? Is there an algorithmic way (using a polymake function, for example)? Surely, I can compute such a vector by hand if I work hard enough, but in some cases subdivision in hand might be quite complicated.
In fancy words, I'd like to find an "actual point" in the secondary cone of Sigma:
Thanks in advance!
Code: Select all
$points = [[0,0,4],[1,0,3],[0,1,3],[2,0,2],[1,1,2],[0,2,2], [3,0,1],[2,1,1],[1,2,1], [0,3,1],[4,0,0],[3,1,0], [2,2,0],[1,3,0],[0,4,0]];
$triangulation = [[0,1,2],[9,11,12],[9,12,13], [9,13,14],[1,2,5],[6,10,11],[3,6,11],[1,5,9],[1,3,11], [8,9,11],[1,4,9],[1,7,11],[7,8,11],[4,8,9],[1,4,7],[4,7,8]];
$pointMatrix =(ones_vector<Rational>(15)) | (new Matrix<Rational>($points));
$Sigma = new SubdivisionOfPoints(POINTS=>$pointMatrix, MAXIMAL_CELLS=>$triangulation);
$Sigma->VISUAL;My question: How did the authors come up with this vector? Is there an algorithmic way (using a polymake function, for example)? Surely, I can compute such a vector by hand if I work hard enough, but in some cases subdivision in hand might be quite complicated.
In fancy words, I'd like to find an "actual point" in the secondary cone of Sigma:
Code: Select all
$sc=$Sigma->secondary_cone();