I have two groups A and B whose elements can be multiplied in a group C (constructed out of A and B). Due to the nature of those groups, C *cannot* be discovered by a functorial construction [1] as pushout.
Therefore I propose to add either a method _discover_coercion_ or _pushout_ to parents, which returns None by default and can be overridden in the actual parent. These functions will be called by either sage.structure.coerce.CoercionModel_cache_maps.discover_coercion or sage.categories.pushout.pushout respectively. If they return None, then the current implementation is used, otherwise their result. What do you think about this? Which of those two should be used? (I favour _discover_coercion_ at the moment) Best wishes Daniel [1] We have something like A = F(ZZ) and B = G(ZZ), but D = (F*G)(ZZ) is something completely different than C. In particular, there is no coercion from A to D or B to D. -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.
