-
-
Notifications
You must be signed in to change notification settings - Fork 480
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
Bug in the associahedron object #25183
Comments
comment:2
I think I took care of it in #27798. |
This comment has been minimized.
This comment has been minimized.
Author: Jonathan Kliem |
comment:3
This branch should fix the bug. Feel free to change it, alter it, abonden it, etc. Maybe there is a better way to obtain the correct parent, i.e. improve the following lines:
New commits:
|
Commit: |
Branch: public/25183 |
Dependencies: 27798 |
Changed dependencies from 27798 to #27798 |
comment:6
Once #27798 is done, I'm going to rebase it and solve the merge conflict. At the moment it seems pointless to me. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:10
I think I got things fixed now. Suggestions for better solutions are welcome. |
comment:12
That looks good to me. Might be good to have some feedback from Travis or Frédéric on the cartan side of things, if they are done properly. I would put this to positive review since the error appears to be fixed. |
Reviewer: Jean-Philippe Labbé |
comment:13
I don't have any comments on the Cartan side as you are not really doing anything with them. However, I do have one comment about this code block: for typ1 in ancestors_of_associahedron:
if typ1 in mro:
return typ1(parent, Vrep, Hrep, **kwds) My understanding is there is no subclass relations among the classes in for typ1 in mro:
if typ1 in ancestors_of_associahedron:
return typ1(parent, Vrep, Hrep, **kwds) as |
Changed branch from public/25183 to public/25183-reb |
comment:15
Changed to order of iteration, such that it only runs once through mro now. |
Changed reviewer from Jean-Philippe Labbé to Jean-Philippe Labbé, Travis Scrimshaw |
comment:16
Thanks. LGTM. |
Changed branch from public/25183-reb to |
The following lines currently occur:
The construction
as_polyhedron
initializes the new (face-)polyhedron viaP.__class__(parent, Vrep, None)
. In the case of the associahedron, this does not give a valid object, as the associahedron requires a cartan type as well.Same (or similar problem) with:
minkowski_sum
,minkowski_difference
,translation
,dilation
,convex_hull
,intersection
(actually even worse as coercion fails),polar
.We fix the initialization of the associahedron to now require the cartan type on
__init__
(before it was assumed to be set after initialization).Further we have
__new__
return the correct parent class such that e.g. the face of anAssociahedron_class_ppl
is constructed asPolyhedron_ppl
.We fix
_coerce_map_from_
to take into account that no general polyhedron can be coerced to an associahedron.We manually set the correct pushout of polyhedra over ZZ and associahedra (over QQ) to be polyhedra over QQ.
Depends on #27798
CC: @fchapoton @stumpc5 @tscrim @mo271 @jplab @LaisRast
Component: geometry
Keywords: associahedron
Author: Jonathan Kliem
Branch/Commit:
d9083b7
Reviewer: Jean-Philippe Labbé, Travis Scrimshaw
Issue created by migration from https://trac.sagemath.org/ticket/25183
The text was updated successfully, but these errors were encountered: