of 26/26
Periods of Degree 2 Ehrhart Quasipolynomials Christopher O’Neill and Anastasia Chavez

Periods of Degree 2 Ehrhart Quasipolynomials Christopher O’Neill and Anastasia Chavez

  • View
    217

  • Download
    0

Embed Size (px)

Text of Periods of Degree 2 Ehrhart Quasipolynomials Christopher O’Neill and Anastasia Chavez

  • Periods of Degree 2 Ehrhart QuasipolynomialsChristopher ONeill and Anastasia Chavez

  • TopicsReview of polytopes, lattice point countingResults from readingsLatte introComplete Tour de Latte via an easy exampleOther examples in LattePlan of attack for remainder of project

  • Review of TopicV-Representations / H-RepresentationsInteger point enumerationEhrhart quasipolynomialDenominator of polytope / period of quasipolynomialPeriod collapse

  • Results from ReadingsMcAllister - Period collapse can happen with arbitrarily large denominatorsMethod of proof: cut into pieces, rearrangeExample of rational polytope whose polynomial is not the polynomial of any integral polytopeConjectures - Equidecomposable

  • Results from ReadingsMcAllister, Woods - Can find a polytope and quasipolynomial given dimension, denominator, and period2 Dimensions: Period collapses iff Lp(t) = At^2 + (B/2)t + 1, where A is the area of P, and B is the number of boundary points

  • LatteLATTice point EnumerationCounts lattice points, generates Ehrhart seriesWe will use it to find Ehrhart quasipolynomials of random 2d polytopes

  • LatteAll command line based3 main commands:cdd - convert between H, V repscount - count lattice pointsehrhart - find Ehrhart series

  • LatteNote - count/ehrhart only allow H-repsDenominator => need V-repThus, we need cdd

  • Latte ExampleRight triangle in 2 spaceV-representation - (0,0), (0,5), (5,0)H-representation - x1 >= 0, x2 >= 0, x1 + x2
  • Latte ExampleFirst step: cdd to convert V- to H-repInput file triangle.ext, outputs triangle.ineFormat of triangle.ext - * comments like this * m = # of vertices * d = dimension of polytope * numbertype = integral / rational V-representation begin m d+1 numbertype 1 v1 v2 ... ... ... end

  • Latte ExampleOur triangle.ext - V-representation begin 3 3 integer 1 0 0 1 5 0 1 0 5 endExecute cdd triangle.ext

  • Latte Examplecdd outputs triangle.ine - * cdd+: Double Description Method in C++:Version 0.77dev1 (Jan. 25, 2000) * Copyright (C) 1999, Komei Fukuda, [email protected] * Compiled for Rational Exact Arithmetic with GMP *Input File:triangle.ext(3x3) *HyperplaneOrder: LexMin *Degeneracy preknowledge for computation: None (possible degeneracy) *Hull computation is chosen. *Computation starts at Tue Mar 27 14:35:38 2007 * terminates at Tue Mar 27 14:35:38 2007 *Total processor time = 0 seconds * = 0h 0m 0s *Since hull computation is chosen, the output is a minimal inequality system *FINAL RESULT:-representation begin 3 3 rational 5 -1 -1 0 1 0 0 0 1 end

  • Latte ExampleSecond step - count lattice pointsInput file triangle.lat, output to promptFormat of triangle.lat - * comments like this are actually not allowed * pretend they are not here * m = # of hyperplanes (not necessarily # of facets!) * d = dimension of polytope * integers only! no fractions like cdd m d+1 b1 -a11 -a12 ... b2 -a21 -a22 ... ...

  • Latte ExampleOur triangle.lat - 3 3 5 -1 -1 0 1 0 0 0 1 10 0 1Note the lack of commentsAlso note the extra hyperplane we added

  • Latte ExampleCommand line output excerpts: Checking whether the input polytope is empty or not... Removing redundant inequalities and finding hidden equalities.... ... Ax
  • Latte ExampleExtra Latte function: ehrhartFinds Ehrhart series, not Ehrhart polynomialSame input file as count, outputs triangle.lat.rat, with unsimplified series

  • Latte ExampleOutput file triangle.lat.rat - x := (((((((1) + (-1)*t^1) * ((-933) * (-155)))^2) * (591328)) + ((-1) * ((((1) + (-1)*t^1) * (((-933) * (-11935)) + ((-434778) * (-155)))) + ((-1028)*t^1 * ((-933) * (-155)))) * ((((((1) + (-1)*t^1) * ((-933) * (-155)))^1) * (1088)) + ((-1) * ((((1) + (-1)*t^1) * (((-933) * (-11935)) + ((-434778) * (-155)))) + ((-1028)*t^1 * ((-933) * (-155)))) * (1)))) + ((-1) * (((1) + (-1)*t^1) * ((-933) * (-155))) * ((((1) + (-1)*t^1) * (((-933) * (-608685)) + ((-434778) * (-11935)) + ((-134926106) * (-155)))) + ((-1028)*t^1 * (((-933) * (-11935)) + ((-434778) * (-155)))) + ((-527878)*t^1 * ((-933) * (-155)))) * (1))) / ((((1) + (-1)*t^1) * ((-933) * (-155)))^3)) + ((((((-933) * (((1) + (-1)*t^1) * (-778)))^2) * (6612066)) + ((-1) * (((-933) * ((((1) + (-1)*t^1) * (-302253)) + ((3637) * (-778)))) + ((-434778) * (((1) + (-1)*t^1) * (-778)))) * (((((-933) * (((1) + (-1)*t^1) * (-778)))^1) * (3637)) + ((-1) * (((-933) * ((((1) + (-1)*t^1) * (-302253)) + ((3637) * (-778)))) + ((-434778) * (((1) + (-1)*t^1) * (-778)))) * (1)))) + ((-1) * ((-933) * (((1) + (-1)*t^1) * (-778))) * (((-933) * ((((1) + (-1)*t^1) * (-78182776)) + ((3637) * (-302253)) + ((6612066) * (-778)))) + ((-434778) * ((((1) + (-1)*t^1) * (-302253)) + ((3637) * (-778)))) + ((-134926106) * (((1) + (-1)*t^1) * (-778)))) * (1))) / (((-933) * (((1) + (-1)*t^1) * (-778)))^3)) + ((-1) * ((((((-155) * ((-778) * ((1) + (-1)*t^1)))^2) * (302253)) + ((-1) * (((-155) * (((-778) * (-253)*t^1) + ((-302253) * ((1) + (-1)*t^1)))) + ((-11935) * ((-778) * ((1) + (-1)*t^1)))) * (((((-155) * ((-778) * ((1) + (-1)*t^1)))^1) * (778)) + ((-1) * (((-155) * (((-778) * (-253)*t^1) + ((-302253) * ((1) + (-1)*t^1)))) + ((-11935) * ((-778) * ((1) + (-1)*t^1)))) * (1)))) + ((-1) * ((-155) * ((-778) * ((1) + (-1)*t^1))) * (((-155) * (((-778) * (-31878)*t^1) + ((-302253) * (-253)*t^1) + ((-78182776) * ((1) + (-1)*t^1)))) + ((-11935) * (((-778) * (-253)*t^1) + ((-302253) * ((1) + (-1)*t^1)))) + ((-608685) * ((-778) * ((1) + (-1)*t^1)))) * (1))) / (((-155) * ((-778) * ((1) + (-1)*t^1)))^3))):Needs to be simplified!!!

  • Latte ExampleMaple - algebraic manipulation software, similar to MathematicaAfter input to Maple, it gives us the series (1 + 18t + 6t^2)/(1-t)^3

  • More Latte ExamplesRational Polytopes - Another triangleVertices - (0,0), (0, 3), (1, 2/3)Hyperplanes - x2 >= 0, x1 + x2
  • More Latte Examplesrational.ext - V-representation begin 3 3 rational 1 0 0 1 1 2/3 1 3 0 endOutput of cdd rational.ext - H-representation begin 3 3 rational 3 -1 -3 0 0 1 0 1 -3/2 end

  • More Latte Examplesrational.lat (modified rational.ine) - 3 3 3 -1 -3 0 0 1 0 2 -3Some Output from count rational.lat - Checking whether the input polytope is empty or not... Removing redundant inequalities and finding hidden equalities.... Ax
  • Harder Latte Example7th dilate of the 5-cubeVertices - {0,7}^5Hyperplanes - 0
  • Harder Latte Examplelarge.ext - V-representation begin 32 6 integral 1 0 0 0 0 0 1 7 0 0 0 0 1 0 7 0 0 0 ... endlarge.ine - H-representation begin 10 6 0 0 0 0 0 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 ... end

  • Harder Latte ExampleOutput from count large.lat Ax
  • Next Steps to TakeWrite an algorithm to generate random rational 2-polytopes, and determine their Ehrhart quasipolynomial and periodImplement this algorithm using Latte commands and either Perl or C++Use the implementation to generate lots of examples of rational 2-polytopes and their Ehrhart quasipolynomials / periods

  • ReferencesTyrrell B. McAllister. Quasi-period Collapse in Rational Polytopes. 2007. Tyrrell B. McAllister, Kevin M. Woods. The Minimul Period of the Ehrhart Quasipolynomial of a Rational Polytope. 2007. Mattias Beck, Sinai Robins. Computing the Continuous Discretely. Springer, 2006.