This is the first post in a multi-part series I'm writing on Weyl algebras and their applications.
One fun math fact I sometimes share with people is that you can use Weyl algebras to differentiate expressions, but the Wikipedia article on Weyl algebras doesn't explain how to do this or why Weyl algebras are cool, so I'll try my hand at explaining them.
You can actually do more with Weyl algebras than differentiate expressions (like integrating expressions!) but in this first post I'm going to focus just on differentiation.
The operator
The fundamental building block for all of the upcoming madness is that we're going to define an operator, named , which takes one argument (e.g. ), which we will write as: . Furthermore, we'll define the following rule for how behaves:
Division ring
Note that this is only possible if multiplication does not commute. In other words, it's no longer necessarily true that for any two expressions and . Because if multiplication were to commute then we'd get:
However, other things we know and love are still true, like:
| addition | multiplication | |
|---|---|---|
| identity | ||
| associativity | ||
| commutativity | ||
| inverse |
… and also:
| left distributivity | |
|---|---|
| right distributivity |
In other words, we are working with a division ring.
Carefully note that this means that the operator is not defined for all possible arguments. For example, you can't sensibly define because is not true when :
Differentiation
We can use this operator to differentiate expressions (which is why we use the partial derivative notation for this operator). Specifically, if we want to differentiate some expression with respect to then all we have to do is to compute the result of:
Let's try out a couple of examples. For example, if we were to differentiate with respect to we would compute the result like this (skipping as few steps as possible):
… which is exactly the right answer: the derivative of with respect to is .
Similarly, we can show that the derivative of with respect to is . This time we'll skip a few steps to keep things shorter:
The commutator
In fact, we can show that this trick works for all polynomials over , but in order to do that we'll need to introduce a little bit of notation to simplify things. We'll define a "commutator" operator that takes two arguments (e.g. and ), which we will write as . The behavior of this operator is defined by the following equation:
So using this operator we can now write our original equation defining the operator like this:
… and if we want to differentiate some expression with respect to we would compute:
So we can restate our prior results differentiating and like this:
Polynomial differentiation
Equipped with this new commutator we can prove that differentiates with respect to if is a polynomial. All we have to do is prove a few basic rules.
First, we need to prove that if we differentiate (a constant) with respect to then we get (just like the differentiation we learned in calculus):
Proof
Then we need to prove that if we differentiate with respect to then we get (just like the differentiation we learned in calculus):
Proof
Then we need to prove that differentiation distributes over addition (just like the differentiation we learned in calculus):
Proof
Finally, we need to prove that differentiation obeys the multiplication rule (just like the differentiation we learned in calculus):
Proof
… and since we can build polynomials out of those four building blocks (, , addition, and multiplication), if our differentiation behaves the same as traditional differentiation from calculus then we can guarantee it gives the same results when differentiating arbitary polynomials.
Moreover, we already proved that our differentiation gives the same result as traditional differentiation when differentiating , so we can extend this result to polynomials with negative exponents, too.
In fact, you can generalize this result to rational exponents, too, but I'm leaving that out of this post for now. That's … uh … an exercise for the reader.
Motivation
So you might wonder: what is the point of implementing differentiation in this way? What do we gain out of this approach?
There are two useful properties of this approach that we're going to make use of later on:
-
You can differentiate with respect to weird things
The argument of the operator doesn't have to be a variable! Later on in this series we're going to supply really weird arguments to this operator like:
… or:
… which is something that has no sensible equivalent in traditional differentiation but is actually a reasonable thing to do in the context of Weyl algebras and it gives well-behaved results.
-
This approach is notationally better-behaved
In traditional differentiation, you can't express a concept like unless you explicitly write out as an abstract function applied to an argument named . But, using Weyl algebras, you can express the same concept as , which means that can be substituted with an arbitary expression without breaking anything, which will prove to be an extremely handy property.
