Differences between revisions 18 and 19
 ⇤ ← Revision 18 as of 2018-04-22 10:59:24 → Size: 11674 Editor: Winfried Comment: ← Revision 19 as of 2018-08-05 09:08:53 → ⇥ Size: 12299 Editor: jipilab Comment: Deletions are marked like this. Additions are marked like this. Line 60: Line 60: * Thematic tutorial on polyhedron in Sage [[https://trac.sagemath.org/ticket/22572|#22572]] Line 64: Line 63: * Change error message in construction of polyhedron object [[https://trac.sagemath.org/ticket/24835|#24835]] Line 66: Line 64: * Implement stacking onto a face of a polyhedron [[https://trac.sagemath.org/ticket/24847|#24847]] * Implement join of polytopes [[https://trac.sagemath.org/ticket/24848|#24848]] * Implement one point suspension and face split of polyhedron [[https://trac.sagemath.org/ticket/24886|#24886]] * The polar of a polyhedron should carry the backend used [[https://trac.sagemath.org/ticket/25081|#25081]] Line 72: Line 66: * Update normaliz 3.5.3 and pynormaliz 1.12 in Sage. Now Positive review. [[https://trac.sagemath.org/ticket/22984|#22984]] Line 75: Line 68: * Fixed: Change error message in construction of polyhedron object [[https://trac.sagemath.org/ticket/24835|#24835]] * Fixed: Update normaliz 3.5.3 and pynormaliz 1.12 in Sage. [[https://trac.sagemath.org/ticket/22984|#22984]] * Fixed: Thematic tutorial on polyhedron in Sage [[https://trac.sagemath.org/ticket/22572|#22572]] * Fixed: Implement stacking onto a face of a polyhedron [[https://trac.sagemath.org/ticket/24847|#24847]] * Fixed: Implement join of polytopes [[https://trac.sagemath.org/ticket/24848|#24848]] * Fixed: Implement one point suspension and face split of polyhedron [[https://trac.sagemath.org/ticket/24886|#24886]] * Fixed: The polar of a polyhedron should carry the backend used [[https://trac.sagemath.org/ticket/25081|#25081]] Line 79: Line 81: * Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 [[https://trac.sagemath.org/ticket/22984|#22984]]: repair of performance loss Line 82: Line 83: * fixed: getProjectionCone might segfault [[https://github.com/Normaliz/Normaliz/issues/180]] * fixed: BadInputException for ProjectCone [[https://github.com/Normaliz/Normaliz/issues/181]] Line 92: Line 91: * Normaliz 3.5.4 released * fixed: Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 [[https://trac.sagemath.org/ticket/22984|#22984]]: repair of performance loss * fixed: getProjectionCone might segfault [[https://github.com/Normaliz/Normaliz/issues/180]] * fixed: BadInputException for ProjectCone [[https://github.com/Normaliz/Normaliz/issues/181]] * fixed: Normaliz 3.5.4 released Line 116: Line 120: * Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 [[https://trac.sagemath.org/ticket/22984|#22984]] Line 121: Line 124: Line 137: Line 139: === Sage 8.3 === * Improvements:   * Upgrade scipoptsuite to 5.0.1   * #24152: Bug when converting a Sage polyhedron into Polymake pexpect   * #22984: Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 [[https://trac.sagemath.org/ticket/22984|#22984]]   * #22572: Add a thematic tutorial on the polyhedron class   * #25081: The polar of a polyhedron should carry the backend used.   * #24846: Make the face lattice of a polyhedron a lattice   * #24835: Change error message in construction of polyhedron object * New methods for polyhedron:   * join of polytopes   * one-point suspension and face split of polyhedron   * (sub)direct sums of polytopes

# A Roadmap for Optimization and Polyhedral Geometry softwares interactions

## (around Sage, (PyQ)Normaliz, SCIP, e-antic, Polymake, and others)

This page is intended to describe the current status of development of Sage related to optimization and polyhedral geometry.

## Future & Current Projects

• Extend the usage of Normaliz in Sage
• Extend the polyhedral geometry component of sage
• Polyhedral arrangements and complexes

## Tickets

Here are some practical lists of tickets:

## Meta-tickets

There are already a few meta-tickets related to this topic:

## To do

• Test the algebraic polytopes #25097

• Make Polyhedron_normaliz accept algebraic stuff, related to #25097 (adapt _init_from_Hrepresentation)

• Add known irrational polytope to the library of polytopes
• repr of NumberFields (the parents) should indicate its embedding if there is one #21161 (this ticket will help in debugging and have good feedback)

• Thematic Tutorial for Py(Q)Normaliz installation/Usage in Sage
• Increase documentation in Py(Q)Normaliz
• Update PyQNormaliz by adding lattice points, integer hull and volume
• Deprecate the opacity argument for plot3d and use alpha #21984

• Make Ehrhart (quasi)polynomial accessible through normaliz (and consisten with the current one) #18957

## Progress Report Timeline

### April 2018

#### Sage

Here are improvements realized during the Coding Sprints at the IMA in Minneapolis to objects related to polyhedron in Sage:

• Make features of normaliz accessible #25091

• number_field_elements_from_algebraics should create embedded number field elements #20181 Sage-devel discussion

• Helper functions and improvements in the normaliz backend #25097

• Improve the output of repr_pretty for Polyhedron #24837

• Construct RationalPolyhedralFan from possibly overlapping cones #25122

• polygon3d ignores the "alpha" (and equivalent "opacity") argument #25095

• PolyhedralComplex: preliminary implementation, see #20877

• Fixed: Change error message in construction of polyhedron object #24835

• Fixed: Update normaliz 3.5.3 and pynormaliz 1.12 in Sage. #22984

• Fixed: Thematic tutorial on polyhedron in Sage #22572

• Fixed: Implement stacking onto a face of a polyhedron #24847

• Fixed: Implement join of polytopes #24848

• Fixed: Implement one point suspension and face split of polyhedron #24886

• Fixed: The polar of a polyhedron should carry the backend used #25081

#### (Q)Normaliz

• Upgrade normaliz to 3.5.4 and pynormaliz to 1.16 #25090: Ehrhart series and triangulation of polytope also for inhomogeneous input

• Algebraic polytopes in Qnormaliz using e-antic #25097: convex hull computation completed, improvement of Qnormaliz input and output, control of interrupts and parallelization via libQnormaliz, lattice points, integer hull and volume added. Qnormaliz should be essentially complete now.

• General getters for cone properties. The getters can be used in future interfaces to make access to Normaliz cone properties easier
• resetGrading method for cone: Can be used to replace the grading and redo certain Normaliz computation without having to delete
• degree indepenent properties, such as hilbert bases.
• documentation of QNormaliz written
• extensive tests of QNormaliz
• link from libQnormaliz to libnormaliz in preparation for lattice point computation in algebraic polytopes
• further attempts to improve QNormaliz output (not yet complete)
• work on the C++ wrapper of e-antic
• fixed: Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 #22984: repair of performance loss

• fixed: getProjectionCone might segfault https://github.com/Normaliz/Normaliz/issues/180

• fixed: Normaliz 3.5.4 released

#### Py(Q)Normaliz

PyNormaliz (last version is 1.17):

PyQNormaliz (current beta is 0.2, not available on PIPy):

#### PyScipOpt

Sage devel discussion

• Upgrade scipoptsuite to 5.0.1 #24662

• Add SCIP backend using PySCIPOpt #21003

#### Polymake

• Upgrade polymake to version 3.2r2 (current interface breaks) #24905

### Sage 8.3

• Improvements:
• #24152: Bug when converting a Sage polyhedron into Polymake pexpect
• #22984: Upgrade normaliz to 3.5.3 and pynormaliz to 1.12 #22984

• #22572: Add a thematic tutorial on the polyhedron class
• #25081: The polar of a polyhedron should carry the backend used.
• #24846: Make the face lattice of a polyhedron a lattice
• #24835: Change error message in construction of polyhedron object
• New methods for polyhedron:
• join of polytopes
• one-point suspension and face split of polyhedron
• (sub)direct sums of polytopes

### Sage 8.2

• Improvements:
• Library of polytopes accepts a backend parameter
• Fixed _facet_adjacency_matrix of non-full-dim. polyhedron
• Optimize count lattice points of polytopes
• New methods for polyhedron:
• get_integral_point

### Sage 8.1

• Improvements:
• Fixed equation handling in .to_linear_program and integral_points_count
• Fixed sage_input to include the backend used
• Improved the polyhedron constructor
• Fixed .affine_hull() raising an assertion error
• Volume function handling better the different measures depending on the engine used

### Sage 8.0

Here is a sample of changes related to Polyhedral Geometry in this release.

• Highlights:
• Integration with Latte (function .integrate() )
• New class for Voronoi Diagrams
• Backend polymake for polyhedron
• Improvements:
• Fixed CartesianProduct with distinct dimensions

• Fixed an error in .is_lattice_polytope()
• Fixed overflow in integral_points()
• Fixed normaliz backend with empty polyhedron
• New methods for Polyhedron:
• integral_points_count()

### Sage 7.6

Here is a sample of changes related to Polyhedral Geometry in this release:

• Improvements:
• documentation of Combinatorial and Discrete Geometry
• combinatorial_automorphism_group
• Fixes on .volume()
• Fixes in integral_points()
• New methods for Polyhedron:
• .is_inscribed()
• .neighborliness()
• .is_neighborly()
• .normal_fan()
• .face_fan()
• .is_combinatorially_isomorphic()
• .face_truncation()
• New methods for SimplicialComplexes:

• star of a face
• stellar subdivision
• Generic interface to latte integrale:
• count points

## A list of other Polyhedral Geometry softwares

What are other softwares dealing with polyhedral geometry? Here is a non-exhaustive list.

OptiPolyGeom (last edited 2020-09-13 16:43:51 by mathzeta2)