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.

Reply via email to