-
-
Notifications
You must be signed in to change notification settings - Fork 528
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix constructor of ConvexRationalPolyhedralCone #27423
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:2
How feasible is the first option? I imagine what has to be done is adding a flag and then making sure that it is checked in all functions (current and future) that may change the polyhedron. |
comment:3
Replying to @novoselt:
|
comment:4
What is the problem with option 2? Copying the whole PPL object (together with all its data) is doable and certainly not expensive unless it is gigantic. |
comment:5
Replying to @videlec:
Indeed, PPL has copy constructor which I believe does the right thing. |
comment:6
What if it is not gigantic, but there are 400 millions of them? What's the point to copy it if you specifically produced a PPL object to feed into constructor? Given that it is unlikely to be used "by accident", I think it should be kept as is, but the documentation should clearly say that it will be stored in a private attribute and will be assumed not to change. |
New commits:
|
Commit: |
Author: Vincent Delecroix |
Branch: u/vdelecroix/27423 |
Reviewer: Andrey Novoseltsev |
comment:8
Should it be "make a copy" rather than "take a copy"? |
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed branch from u/vdelecroix/27423 to |
The class
ConvexRationalPolyhedralCone
(sage/geometry/cone.py
) has an "advanced" constructor parameterPPL
that can be set to appl.polyhedron.C_Polyhedron
. However, before #23024, this attribute used to be set immutable in the constructor and this is not the case anymore (since pplpy does not support the mutability/immutability flag).This ticket stands to fix this possibly problematic behavior. Some options:
pplpy
make a copy of the polyhedron(this definitely should not be done - the reason for this parameter is to avoid any work when PPL representation is already constructed)CC: @novoselt
Component: geometry
Author: Vincent Delecroix
Branch/Commit:
d04b627
Reviewer: Andrey Novoseltsev
Issue created by migration from https://trac.sagemath.org/ticket/27423
The text was updated successfully, but these errors were encountered: