# diffOpRing -- create and cache the ring of differential operators

## Synopsis

• Usage:
diffOpRing R
• Inputs:
• R, , in $n$ variables
• Outputs:
• , in $2n$ variables
• Consequences:
• the ring is cached in {tt R} under the key "DiffOpRing".

## Description

Takes a polynomial ring $R = \mathbb{K}[x_1,\dotsc,x_n]$ and creates the ring $S = R[dx_1,\dotsc,dx_n]$.

 i1 : R = QQ[x_1..x_3, a,b]; i2 : S = diffOpRing R; i3 : gens S o3 = {dx , dx , dx , da, db} 1 2 3 o3 : List i4 : coefficientRing S o4 = R o4 : PolynomialRing

Differential operators on $R$ have entries in $S$.

 i5 : ring diffOp(dx_3^2) === S o5 = true i6 : ring diffOp(a_R) === S o6 = true

Subsequent calls to diffOpRing will not create new rings

 i7 : diffOpRing R === S o7 = true

## Caveat

the created ring is not a Weyl algebra, it is a commutative ring