#9972: Add toric lattice morphisms
-------------------------------------+--------------------------------------
   Reporter:  novoselt               |       Owner:  mhampton  
       Type:  enhancement            |      Status:  needs_work
   Priority:  major                  |   Milestone:  sage-4.6  
  Component:  geometry               |    Keywords:            
     Author:  Andrey Novoseltsev     |    Upstream:  N/A       
   Reviewer:  Volker Braun           |      Merged:            
Work_issues:  switch to FanMorphism  |  
-------------------------------------+--------------------------------------

Comment(by novoselt):

 In an effort to be less stubborn, here is what I think I should do if we
 cannot live with the existing interface:

  1. Keep internal fields `_ambient` and `_ambient_ray_indices` which can
 be related either to a cone or a fan (from the coding point of view these
 situations are similar and it is very convenient to treat them together -
 I know for sure since my initial version didn't do it).
  2. Remove `ambient()` and `ambient_ray_indices()` methods. In the code we
 still can use attributes since they always must be set in the constructor.
 Also remove `adjacent` and `facet_of` methods from cones and
 `star_generator_indices` and `star_generators` from cones of fan. The
 class `Cone_of_fan` becomes completely unnecessary and should be
 discarded.
  3. Add methods corresponding to the above ones with respect to an
 explicit ambient (of course, there is no analog for `ambient` itself
 anymore):
  {{{
 sage: ambient_cone.ray_indices(cone)
 sage: ambient_cone.adjacent_faces(cone)
 sage: ambient_cone.faces_with_facet(cone)
 sage: fan.ray_indices(cone)
 sage: fan.adjacent_cones(cone)
 sage: fan.cones_with_facet(cone)
 sage: fan.star_generators(cone)
 sage: fan.star_generator_indices(cone)
 }}}
  Cones still will cache all this stuff for their own `_ambient` in a hope
 that it will be useful later and that's how usually they will be called.

 But I still need some voting before performing such a change.

 I still think that it is convenient to have a default for "the thing
 before dot" above. This opinion is based on actually working with such
 structures, so maybe I have bad habits, but that's what I prefer. I also
 still think that it is natural in mathematics. E.g. Fulton on p.52 defines
 Star(tau), where it is assumed that tau is a cone in some fan. In a lot of
 papers using reflexive polytopes people introduce some notation for dual
 faces. I have never seen such a notation mentioning the ambient polytope,
 yet the notion of a dual face does not make sense without one. One can
 argue that a face is supposed to know its ambient, because it is a face
 and not just a standalone polytope. But with this line of thoughts I think
 toric divisors may require a cone of an appropriate fan as an input. Or we
 can agree that we will use any input cone and try to interpret it as a
 cone in this appropriate fan, in which case it is our responsibility to
 ensure that we do such an interpretation correctly. It is also common to
 fix some index set and then use it to index rays of the fan, their
 generators, corresponding homogeneous variables, and divisors. So I still
 think that these indices are relevant beyond the implementation guts of
 cones...

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/9972#comment:33>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to