locally free (of finite rank). Functoriality D-modules on different algebraic varieties are connected by pullback and pushforward functors comparable to the ones for coherent sheaves. For a map f: X → Y of smooth varieties, the definitions are this: DX→Y := OX ⊗f−1(OY) f−1(DY) This is equipped with a left DX action in a way that emulates the chain rule, and with the natural right action of f−1(DY). The pullback is defined as f∗(M) := DX→Y ⊗f−1(DY) f−1(M). Here M is a left DY-module, while its pullback is a left module over X. This functor is right exact, its left derived functor is denoted Lf∗. Conversely, for a right DX-module N, f∗(N) := f∗(N ⊗DX DX→Y) is a right DY-module. Since this mixes the right exact tensor product with the left exact pushforward, it is common to set instead f∗(N) := Rf∗(N ⊗LDX DX→Y). Because of this, much of the theory of D-modules is developed using the full power of homological algebra, in particular derived categories. Holonomic modules Holonomic modules over the Weyl algebra It can be shown that the Weyl algebra is a (left and right) Noetherian ring. Moreover, it is simple, that is to say, its only two-sided ideal are the zero ideal and the whole ring. These properties make the study of D-modules manageable. Notably, standard notions from commutative algebra such as Hilbert polynomial, multiplicity and length of modules carry over to D-modules. More precisely, DX is equipped with the Bernstein filtration, that is, the filtration such that FpAn(K) consists of K-linear combinations of differential operators xα∂β with |α| + |β| ≤ p (using multiindex notation). The associated graded ring is seen to be isomorphic to the polynomial ring in 2n indeterminates. In particular it is commutative. Finitely generated D-modules M are endowed with so-called "good" filtrations F∗M, which are ones compatible with F∗An(K), essentially parallel to the situation of the Artin–Rees lemma. The Hilbert polynomial is defined to be the numerical polynomial that agrees with the function n ↦ dimK FnM for large n. The dimension d(M) of an An(K)-module M is defined to be the degree of the Hilbert polynomial. It is bounded by the Bernstein inequality n ≤ d(M) ≤ 2n. A module whose dimension attains the least possible value, n, is called holonomic. The A1(K)-module M = A1(K)/A1(K)P (see above) is holonomic for any nonzero differential operator P, but a similar claim for