Hi Daniel, On 2015-01-05, Daniel Krenn <[email protected]> wrote: > 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.
It is possible to implement something that is misleadingly called an action: You can tell parent A that multiplication with elements of parent B from the left resp. from the right shall be performed in a particular way. For example, this is done if B is an A-module. The action can specify a method of the elements that is used to compute the result. For example, looking at sage.structure.coerce_actions.LeftModuleAction._call_, you can see that LeftModuleAction uses the method `ModuleElement._rmul_`. So, to learn how to implement an action, look at sage.structure.coerce_actions. > [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. Then indeed F and G should better not be called construction functors. Best regards, Simon -- 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.
