[Math] How does one compute the space of algebraic global differential forms $\Omega^i(X)$ on an affine complex scheme $X$

ag.algebraic-geometryderham-cohomologydifferential-forms

In 1963 Grothendieck introduced the algebraic de Rham cohomolog in a letter to Atiyah, later published in the Publications Mathématiques de l'IHES, N°29.
If $X$ is an algebraic scheme over $\mathbb C$ the definition is via the hypercohomology of the complex of Kähler differntial forms: $$H^i_{dR}(X)=\mathbb H^i(X,\Omega_{X/\mathbb C}^{\bullet})$$ If in particular$X$ is affine: $$H^i_{dR}(X)=h^i(\Omega_{X/\mathbb C}^\bullet (X))$$ If moreover $X$ is affine and smooth: $$H^i_{dR}(X)=H^i_{sing}(X(\mathbb C),\mathbb C)$$ so that we get a purely algebraic means of computing the cohomology of the set of closed points $X(\mathbb C)$ of our scheme provided with its transcendental topology (derived from the topology of the metric space $\mathbb C$).
In order to understand this algebraic de Rham cohomology I tried to compute some examples in the non smooth case, in particular for the cusp $V\subset \mathbb A^2_\mathbb C$ given by $y^2=x^3$.
The slightly surprising result is that $H^1_{dR}(V)$ is the one-dimensional complex vector space with basis the class of the differential form $x^2ydx$.
This is in stark contrast with the fact that $H^1_{sing}(V(\mathbb C),\mathbb C)=0$, since $V(\mathbb C)$ is homeomorphic to $\mathbb C$.
I made some very stupid preliminary mistakes: in particular I hadn't realised at the start of my calculation that $d(x^2ydx)=x^2dy\wedge dx=0$, as follows from the equality $2ydy=3x^2dx$ (and wedge-multiplying by $dy$).
In other words $\Omega^2(V)$ was more complicated than I thought: although I knew the formula for, say, the differentials of order one for a hypersurface $X=V(f)\subset \mathbb A^n_\mathbb C $, namely $\Omega^1(X)=\frac { \sum \mathcal O(X)dx_j}{\langle \sum \frac {\partial f}{\partial x_j} dx_j\rangle }$, I realized that I didn't know the algorithm for computing higher order global differentials.
This is the motivation for my

ACTUAL QUESTION
Given the subscheme $$X=V(f_1(x),f_2(x),\cdots, f_r(x))\subset \mathbb A^n_\mathbb C \quad (f_j(x)\in \mathbb C[x_1,\cdots, x_n]),$$ how does one compute the space of algebraic global differential forms $\Omega^i_{X/\mathbb C}(X)$ ?
(Ideally I'd love to learn an algorithm which for example would calculate $\Omega^2(V)$ for the cusp above in a picosecond)

Edit
The software showed me a related question that my computation for the cusp solves.
I have used this opportunity to write down the details of that computation as an answer to the related question.

Best Answer

This is not an answer, but is too long for a comment.

Macaulay 2 can compute the exterior powers of the cotangent sheaf of a projective variety, and it can compute the de Rham cohomology of the complement of an affine hypersurface. I link to the M2 book for a more complete description of the first approach, and to the M2 documentation for the de Rham cohomology of a complement. Although I think both approaches can be used to answer your question completely, I have not been able to figure it how to do it either way.

M2 uses the conormal sequence to find a presentation for the cotangent sheaf. Concretely, this is the Jacobian matrix of the homogeneous forms that cut out your ideal. For example, to compute the sheaf $\Omega^2(X)$ where $X$ is the subscheme defined by the homogeneous polynomial $y^2z-x^3$, one uses the following command:

X=Proj(QQ[x,y,z]/(y^2*z-x^3));
omega2=cotangentSheaf(2,X)

which returns the presentation matrix

cokernel {0} | 0 y 0 0 x2 0  -3x2 0   0   -3yz z4  0   |
         {1} | 0 0 y 0 0  x2 -2y  0   0   -2x  0   z4  |
         {3} | 0 0 0 0 0  0  0    -2y 3x2 0    -2x 3yz |

                                   1       1           1
coherent sheaf on X, quotient of OO   ++ OO  (-1) ++ OO  (-3)
                                   X       X           X

I do not know how to build the exterior derivative to relate the various wedge powers of omega. However, once that's done, M2 can do the hypercohomology spectral sequence. Maybe someone who knows how to do this will answer.

The second approach can compute something similar to the de Rham cohomology you want, since the cohomology of a complement is related by a long exact sequence to the Borel-Moore homology, which is the relative homology of the one-point compactification of $V$ rel the added point.

Here is how to compute the cohomology of the complement of $y^2=x^3$ in $\mathbb{C}^2$:

loadPackage("DModules");
R = QQ[x,y];
f = y^2-x^3;
deRham f

which returns

                 1
HashTable{0 => QQ }
                 1
          1 => QQ
          2 => 0

You can get more detailed information about the differential forms representing these classes by using

deRhamAll f

I hope someone else can explain the proper D-module calculation to answer the question!

Related Question