Opened 5 years ago

Last modified 5 years ago

#22562 closed enhancement

Lattice point count with preprocessing — at Version 9

Reported by: mkoeppe Owned by:
Priority: major Milestone: sage-8.0
Component: geometry Keywords: days84
Cc: jipilab, vdelecroix, tscrim Merged in:
Authors: Matthias Koeppe Reviewers:
Report Upstream: N/A Work issues:
Branch: u/mkoeppe/lattice_point_count_with_preprocessing (Commits, GitHub, GitLab) Commit: 579b6beddfbafdcabd1e55710c6f1f9a6e8e9b1a
Dependencies: #22568, #22578 Stopgaps:

Status badges

Description (last modified by mkoeppe)

This ticket

  • provides a trivial Polyhedron_base.integral_points_count implementation that delegates to integral_points
  • moves the LattE-based integral_points implementation to Polyhedron_QQ
  • adds preprocessing (bounds tightening) to it and uses explicit enumeration when that is expected to be faster

Change History (9)

comment:1 Changed 5 years ago by mkoeppe

  • Dependencies set to #22497

comment:2 Changed 5 years ago by mkoeppe

  • Cc jipilab vdelecroix added

comment:3 Changed 5 years ago by mkoeppe

  • Branch set to u/mkoeppe/lattice_point_count_with_preprocessing

comment:4 Changed 5 years ago by mkoeppe

  • Commit set to 04f728639677cf615627e4aa713f4207dd61ec80
  • Dependencies changed from #22497 to #22497, #22577, #22568

New commits:

d5ff15422497: generic interface to LattE integrale count
04f7286WIP

comment:5 Changed 5 years ago by git

  • Commit changed from 04f728639677cf615627e4aa713f4207dd61ec80 to 48520a90a56268be6bb98de607522eb4eb42408c

Branch pushed to git repo; I updated commit sha1. New commits:

e0ce5a1count: Handle a case in which LattE prints no output
3ba2603Polyhedron_base.integral_points: Use bounding_box(integral_hull=True)
48520a9Move fancy integral_points_count into Polyhedron_QQ

comment:6 Changed 5 years ago by mkoeppe

This feature is now complete -- but the branch needs to be rebased onto its prereq tickets.

comment:7 Changed 5 years ago by mkoeppe

  • Dependencies changed from #22497, #22577, #22568 to #22497, #22577, #22568, #22578

comment:8 Changed 5 years ago by git

  • Commit changed from 48520a90a56268be6bb98de607522eb4eb42408c to 579b6beddfbafdcabd1e55710c6f1f9a6e8e9b1a

Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:

67eb1d7Change Polyhedron_ZZ to inherit from Polyhedron_QQ, not Polyhedron_base
79dd166Merge remote-tracking branch 'trac/u/mkoeppe/polyhedron_zz_should_inherit_from_polyhedron_qq__not_polyhedron_base' into 7.6.rc1+22568+22578
d08356c22578: Polyhedron.bounding_box: New keyword argument integral_hull, use it it .integral_points
486204fPolyhedron.bounding_box: Handle empty bounding box
18e7a74Fixing doctests and doing it so the order doesn't change in the future.
ac0ecd8Merge remote-tracking branch 'trac/public/geometry/polyhedron_bounding_box_integer_hull-22578' into 7.6.rc1+22568+22578
579b6bePolyhedron.integral_points_count: For QQ, use LattE with preprocessing. Otherwise delegate to integral_points.

comment:9 Changed 5 years ago by mkoeppe

  • Authors set to Matthias Koeppe
  • Cc tscrim added
  • Dependencies changed from #22497, #22577, #22568, #22578 to #22568, #22578
  • Description modified (diff)

Rebased on top of 7.6.rc1 and #22568, #22578.

Note: See TracTickets for help on using tickets.