#12892: Toric fibration morphisms
--------------------------------------+-------------------------------------
       Reporter:  vbraun              |         Owner:  AlexGhitza        
           Type:  enhancement         |        Status:  needs_review      
       Priority:  major               |     Milestone:  sage-5.1          
      Component:  algebraic geometry  |    Resolution:                    
       Keywords:                      |   Work issues:                    
Report Upstream:  N/A                 |     Reviewers:  Andrey Novoseltsev
        Authors:  Volker Braun        |     Merged in:                    
   Dependencies:  #12361              |      Stopgaps:                    
--------------------------------------+-------------------------------------

Comment (by novoselt):

 I find the first patch a bit difficult to understand due to mixing several
 things defining the embedding: a cone and two dictionaries of rays. Also
 `defining_cone` argument is not documented in the constructor of the orbit
 morphism.

 Orbits are in 1:1 correspondence with cones of the original fan, so it
 makes perfect sense to pass this information and store it (as it is
 currently done in the patch).

 Mathematically, this is all that is needed, but since we have so far
 issues with supporting quotient lattices and instead the fan of the orbit
 lives in a "regular lattice", we need to keep the correspondence somehow.
 As it is done by some matrix, perhaps that's what we need to pass to the
 constructor and store.

 Instead, the current version constructs a codomain_ray->domain_ray
 dictionary, it is passed to the constructor and constructor reverses it
 into domain_ray->codomain_index dictionary. Note that the map does not
 have to be one-to-one for non-simplicial fans, so this dictionary just
 picks some random representative for a domain ray. The choice may affect
 the decision on whether embedding can be realized as a polynomial map or
 not.

 I also think it is confusing to store non-primitive generators for rays
 and treat a ray as not found if a non-primitive generator is found. We do
 represent rays throughout the code just by their generators, but it is
 always assumed that they are normalized.

 As a feature request it would be nice to have support for maps given by
 homogeneous polynomials in the other direction, i.e. a map from the 12
 orbit of P112 to P1 can be given as (0:z1:z2) -> (z1^2:z2) and this will
 work for all orbits with powers corresponding to that "non-primitivity of
 generators". Or is it already implemented and I am missing something?

 Anyway, concretely: how about passing and storing `defining_cone` and
 `projection_matrix` as base pieces of data and relying on them for
 consecutive computations?

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12892#comment:5>
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