How to define module multiplication?

已查看 27 次
跳至第一个未读帖子

John H Palmieri

未读,
2023年9月19日 19:34:052023/9/19
收件人 sage-support
The mod 2 cohomology of a simplicial complex has the structure of a module over the mod 2 Steenrod algebra. I would like to be able to do this in Sage:

    sage: x  = (some element in a cohomology ring)
    sage: a = (some element of SteenrodAlgebra(2))
    sage: a * x

I have tried telling Sage that instances of CohomologyRing should be left modules over the Steenrod algebra (using the category framework) and then defining _mul_, _rmul_, _lmul_. I have had no luck: I just get

    TypeError: unsupported operand parent(s) for *: 'mod 2 Steenrod algebra, milnor basis' and 'Cohomology ring of RP^6 over Finite Field of size 2'

What should I be doing instead?

--
John

Kwankyu

未读,
2023年9月20日 05:08:152023/9/20
收件人 sage-support
Is you element in the cohomology ring an instance of ModuleElement?

Kwankyu

未读,
2023年9月20日 05:11:522023/9/20
收件人 sage-support
sage.rings.function_field.differential defines the space of differentials of a function field, which is a left module over the function field. You may consult the code there.

John H Palmieri

未读,
2023年9月20日 13:51:402023/9/20
收件人 sage-support
Very good, thank you. The "_acted_upon_" method was what I was missing.

  John
回复全部
回复作者
转发
0 个新帖子