On Friday, 5 August 2016 18:23:03 UTC+10, Simon King wrote:

> So, my advice is: 
> - Start with one of the element base classes and implement arithmetics 
>   there (and be careful to comply with Sage's coercion model). 
> - Use the category framework to determine whether a parent it is a (say) 
>   ring or a module. 
> - CombinatorialFreeModule is convenient, but any time critical stuff 
>   should be implemented on the level of its elements. 
>

Hi Simon,

Would you mind expanding a little on this? I have some modules, for the 
symmetric groups for example, that are implemented using  
CombinatorialFreeModule, together with the realization code as there are 
several interesting bases. It's reasonably fast in "small" examples but I'd 
be happy if there was a way to make it faster. The indexing set for the 
basis has a lot of combinatorial data attached to it that described 
important properties of the module -- for example, it is graded and the 
indexing set gives the grading -- so I need the indexing set. The algebra 
action is defined by certain linear maps on the basis elements.. In 
different incarnations these modules are defined over Z, or any ring, or 
QQ[x]. How would you recommend implementing this?

Andrew

-- 
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 https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to