Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

implement action of DifferentialWeylAlgebra on polynomials #29928

Closed
mwageringel opened this issue Jun 21, 2020 · 9 comments
Closed

implement action of DifferentialWeylAlgebra on polynomials #29928

mwageringel opened this issue Jun 21, 2020 · 9 comments

Comments

@mwageringel
Copy link

This ticket implements the action of differential operators (from the Weyl algebra) on polynomials:

sage: W.<x,y> = DifferentialWeylAlgebra(QQ)
sage: dx, dy = W.differentials()
sage: dx.diff(x^3)
3*x^2
sage: (x*dx + dy + 1).diff(x^4*y^4 + 1)
5*x^4*y^4 + 4*x^4*y^3 + 1

Component: algebra

Author: Markus Wageringel

Branch/Commit: 7cdc6b0

Reviewer: Travis Scrimshaw

Issue created by migration from https://trac.sagemath.org/ticket/29928

@mwageringel mwageringel added this to the sage-9.2 milestone Jun 21, 2020
@mwageringel
Copy link
Author

Branch: u/gh-mwageringel/29928

@mwageringel
Copy link
Author

Commit: 7cdc6b0

@mwageringel
Copy link
Author

New commits:

7cdc6b0implement action of weyl algebra on polynomials

@mwageringel
Copy link
Author

Author: Markus Wageringel

@tscrim
Copy link
Collaborator

tscrim commented Jun 22, 2020

Reviewer: Travis Scrimshaw

@tscrim
Copy link
Collaborator

tscrim commented Jun 22, 2020

comment:2

This is good to have. Although I don't see why this needs the full Action framework. I guess there is a bit of an issue with overloading * between the action and the natural coercion. Perhaps we could have the action use the @ operator to distinguish the two. That being said, let's get this in as-is and do more based on this ticket later.

@mwageringel
Copy link
Author

comment:3

Thanks for the review. Mainly, I assumed using the action framework was the preferred way to implement this, but you are probably right that it is not entirely necessary.

Using the @ operator here sounds like a good option to me. Though, given the recent discussion on devel, it might be difficult to reach a consensus about this.

@tscrim
Copy link
Collaborator

tscrim commented Jun 25, 2020

comment:4

Well, I don't think we have to worry too much about multiplying matrices, but I see your point (and I might want to push to use @ for tensor products). However, it would be nice to overload some operator so we don't have to write f.diff(g). Maybe a shift operator >> or << would be good? Or the & operator?

@vbraun
Copy link
Member

vbraun commented Jul 8, 2020

Changed branch from u/gh-mwageringel/29928 to 7cdc6b0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants