M2
M2 copied to clipboard
RingMap from WeylAlgebra to AssociativeAlgebra is broken
Here's a minimal example, note the swapped order x,dx and dy,y:
needsPackage "AssociativeAlgebras"
D = ZZ/101[x,dx, WeylAlgebra => {x => dx}]
R = ZZ/101<|dy,y|>/(dy*y - 1 - y*dy)
f = map(R, D, {y,dy})
f(dx*x) -- gives y*dy + 2, should be y*dy+1
f(x*dx) -- gives y*dy + 1, should be y*dy
Related: #2828
cc: @christineBerkesch
After chatting with @mikestillman about this, I tried changing ringmap.cpp to add an explicit check for the weyl algebra, with an accompanying block that is the same as for other noncommutative rings, but with a multiplication reversed in order. It didn't seem to fix the problem though. But I don't trust that I compiled from source correctly/that my new block is actually executing, because a print command that I put in isn't triggering when it should. See here for the change I attempted.