|
Size: 2195
Comment: help needed
|
Size: 2303
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 3: | Line 3: |
| * packages: lrs, cddlib, porta, 4ti2, polymake, coin/or, [[http://www.math.u-bordeaux1.fr/~enge/Vinci.html]] | See [[https://wiki.sagemath.org/OptiPolyGeom]] for a more recent page. * packages: lrs, cddlib, porta, 4ti2, [[https://www.polymake.org/doku.php|polymake]], coin/or, [[http://www.math.u-bordeaux1.fr/~enge/Vinci.html|Vinci]] |
| Line 28: | Line 30: |
| [[Note from Marshall Hampton: this is possible using the optional phc package: | [[Note from Marshall Hampton: this is possible using the optional phc package: |
| Line 52: | Line 54: |
| (from F. Chapoton) | I would like to work with polyhedral cones and fans (with toric geometry in mind). |
| Line 54: | Line 56: |
| I would like to work with polyhedral cones and fans (with toric geometry in mind), for instance | The following now works (sage 5.2): |
| Line 57: | Line 59: |
| cone1=PolyhedralCone([[1,0,0],[0,1,0],[0,0,1]]) cone2=PolyhedralCone([[-1,0,0],[0,1,0],[0,0,1]]) fan=PolyhedralFan([cone1,cone2]) |
sage: cone1 = Cone([[1,0,0],[0,1,0],[0,0,1]]) sage: cone2 = Cone([[-1,0,0],[0,1,0],[0,0,1]]) sage: fan = Fan([cone1,cone2]) |
| Line 62: | Line 64: |
| I would also need a conical convex hull algorithm | The '''Cone''' function can take many generators |
| Line 64: | Line 66: |
| cone3=ConicalHull([[1,0,0],[0,1,0],[0,0,1],[1,1,1]]) | sage: cone3 = Cone([[1,0,0],[0,1,0],[0,0,1],[1,1,1]]) |
| Line 66: | Line 68: |
| should return the cone | and then compute the extremal rays |
| Line 68: | Line 70: |
| PolyhedralCone([[1,0,0],[0,1,0],[0,0,1]]) | sage: cone3.rays() N(0, 0, 1), N(0, 1, 0), N(1, 0, 0) in 3-d lattice N |
| Line 71: | Line 77: |
| Some support for fans is contained in GroebnerFan, but this would be better if separated clearly. My long-term aim would be to compute the cone of strictly convex support functions of a complete fan. |
It is now possible (sage 6.2) compute the cone of strictly convex support functions of a complete fan. |
| Line 75: | Line 79: |
| fan.ample_cone() | sage: fan = Fan([cone3]) sage: ToricVariety(fan).Kaehler_cone() |
Polytopes requests
See https://wiki.sagemath.org/OptiPolyGeom for a more recent page.
packages: lrs, cddlib, porta, 4ti2, polymake, coin/or, Vinci
- optimal performance: important algorithms are reverse search (as in lrs, uses less memory), double description (track the duals, as in cdd and 4ti2)
- optimization: linear and integer programming (coin/or), semidefinite programming (any good software for this?)
- combinatorial aspects
- polymake puts a lot of these things together, but it does not build!
Bernstein's theorem
(this is coming from Daniel Erman).
R.<a,b>=QQ[] f1=a^2+a*b+b^2+1 f2=a*b^2+a^2*b+11 N1=f1.newton_polytope() N2=f2.newton_polytope() S=[N1,N2]
I would like to be able to compute the mixed volume of the collection of polytopes:
S.mixed_volume()
[[Note from Marshall Hampton: this is possible using the optional phc package:
from sage.interfaces.phc import phc phc.mixed_volume([f1,f2])
]]
The reason I want to do this is because I want to apply Bernstein's theorem to a polynomial system in affine space. So conceivably I'd like to ask:
F=[f1,f2] F.bernstein_bound()
In addition I'd like to be able to compute anything about N1 that can be done in polymake. For instance f-vector:
N1.f_vector()
How to deal with polyhedral fans ?
I would like to work with polyhedral cones and fans (with toric geometry in mind).
The following now works (sage 5.2):
sage: cone1 = Cone([[1,0,0],[0,1,0],[0,0,1]]) sage: cone2 = Cone([[-1,0,0],[0,1,0],[0,0,1]]) sage: fan = Fan([cone1,cone2])
The Cone function can take many generators
sage: cone3 = Cone([[1,0,0],[0,1,0],[0,0,1],[1,1,1]])
and then compute the extremal rays
sage: cone3.rays() N(0, 0, 1), N(0, 1, 0), N(1, 0, 0) in 3-d lattice N
It is now possible (sage 6.2) compute the cone of strictly convex support functions of a complete fan.
sage: fan = Fan([cone3]) sage: ToricVariety(fan).Kaehler_cone()
