I would like to propose a simple but large improvement to the 
commutative_dga package.
In short, one currently cannot use the package to create graded commutative 
algebras that include non-closed degree 0 terms.
(For example, this exclude the package from being used for the algebra of 
differential forms on a manifold, because any non-constant function is 
non-closed.)

For my purposes, this can be fixed easily, changing 1 line of code. 
However, I am unclear if this breaks parts of the module that I don't use.

As I understand it, the only reason that degree 0 doesn't work is in the 
constructor for a new CDGA.
If you pass a degree 0 generator, then the call in the constructor to 
create a g_algebra (line 1010) uses a TermOrder weighted by degree. But the 
TermOrder package assumes a polynomial ring with generators of positive 
weight, and so throws an error when you pass weight = degree = 0 generators.
This can be fixed by using weight = degree + 1, but I worry that this might 
break some non-obvious assumption elsewhere. (It will also maybe mean that 
your monomials are ordered slightly differently than expected.)

I can submit a pull request, but I read in the developer guide that it is 
best to start a discussion here first.

-- 
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 sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/5483cae3-e96e-4a55-a8f9-24bc215585aen%40googlegroups.com.

Reply via email to