# Creation Functions

The general creation function for sheaves takes a graded module representing the sheaf and a scheme $X$ on which it is supported. Special constructors are provided in the cases of the structure sheaf of $X$ and the canonical sheaf of $X$, when $X$ is locally Cohen-Macaulay and equidimensional. The user may also ask for Serre twists of a given sheaf. Other constructions deriving new sheaves from existing sheaves will be described in later sections.

## `Sheaf(M, X): ModMPol, Sch -> ShfCoh`

Given an ordinary projective scheme $X$ and a module $M$ over the coordinate ring of the ambient of $X$, such that $M$ is annihilated by the defining ideal of $X$, this function returns the sheaf defined by graded module $M$ on scheme $X$.

## `StructureSheaf(X): Sch -> ShfCoh`

## `StructureSheaf(X, n): Sch, RngIntElt -> ShfCoh`

Given an ordinary projective scheme $X$, this function returns the structure sheaf ${{\cal O}_X}$ for $X$, which is the sheaf defined by the coordinate ring $R_X$ of $X$, as a module. If the intrinsic is called with a second integer-valued argument $n$, the object returned is a twisted version of the sheaf, that is, Serre’s twisting sheaf ${{\cal O}_X}(n)$, which has $R_X(n)$ as its associated graded module (see Section 5, Chapter II of [[Hartshorne, 1977](../../references.md#cite-hartshorne)]). These are all invertible sheaves on $X$ and ${{\cal O}_X}(1)$ is the sheaf ${{\cal O}_X}(H)$ corresponding to the class of a hyperplane divisor $H$ on $X$.

## `CanonicalSheaf(X): Sch -> ShfCoh`

## `CanonicalSheaf(X, n): Sch, RngIntElt -> ShfCoh`

Given an ordinary projective scheme $X$, this function returns the canonical sheaf $K_X$ for $X$. The scheme $X$ should be an ordinary projective scheme which is equidimensional and locally Cohen-Macaulay. That is, all of the primary components of $X$ should have the same dimension and its local rings should all be Cohen-Macaulay rings. These conditions aren’t checked by Magma as the necessary computations can be very expensive in general. A non-singular variety always satisfies these conditions, and many singular normal varieties do also. For example, any curve or normal surface will be equidimensional and locally Cohen-Macaulay. The stronger condition of being *arithmetically* Cohen-Macaulay, can be checked by invoking the intrinsic [`IsArithmeticallyCohenMacaulay`](shf:preds.md#function-shf-arith-cm) with the structure sheaf of $X$ as argument.

Under these conditions, $X$ has a canonical sheaf $K_X$, defined up to isomorphism, which acts as a dualising sheaf. See Section 7, Chapter III of [[Hartshorne, 1977](../../references.md#cite-hartshorne)] and Chapter 21 of [[Eisenbud, 1995](../../references.md#cite-eisenbudcommalg)] for the module-theoretic background. For non-singular varieties, the canonical sheaf is the usual one: the highest alternating power of the sheaf of Kahler differentials. The function returns the canonical sheaf of $X$. It is computed from the dual complex to the minimal free resolution of the coordinate ring of $X$.

If the intrinsic is invoked with an additional integer argument $n$, it returns the $n$th Serre twist (see below) of the canonical sheaf $K_X(n)$. For a non-singular variety of dimension $d$, the map into projective space corresponding to $K_X(d-1)$ is the important *adjunction map*.

## `Twist(S, n): ShfCoh, RngIntElt -> ShfCoh`

Given a sheaf $S$, the function returns the $n$th Serre twist of ${\cal S}$, ${\cal S}(n) \cong {\cal S}\otimes_{{{\cal O}_X}}{{\cal O}_X}(n)$. If $M$ is a module giving ${\cal S}$, then $M(n)$ gives ${\cal S}(n)$.

## `Example: Creat Exs (ex-ac24b9)`

We construct some sheaves associated with the smooth cubic surface defined by $x^3+y^3+z^3+t^3$ in $P^3$.

```magma
> P<x,y,z,t> := ProjectiveSpace(Rationals(),3);
> R := CoordinateRing(P);
> X := Scheme(P,x^3+y^3+z^3+t^3);
> OX := StructureSheaf(X);

```

We first examine the underlying graded module of the structure sheaf.

```magma
> Module(OX);
Reduced Module R^1/<relations>
Relations:
[x^3 + y^3 + z^3 + t^3]

```

Observe that the canonical sheaf $KX$ of $X$ is isomorphic to the twist $OX(-1)$ of the structure sheaf.

```magma
> KX := CanonicalSheaf(X);
> Module(KX);
Reduced Module R^1/<relations> with grading [1]
Relations:
[x^3 + y^3 + z^3 + t^3]
> Module(StructureSheaf(X,-1));
Reduced Module R^1/<relations> with grading [1]
Relations:
[x^3 + y^3 + z^3 + t^3]

```

Note that the module column weights are the negations of the Serre twist indices!

```magma
> Module(Twist(OX,-1));
Reduced Module R^1/<relations> with grading [1]
Relations (Groebner basis):
[x^3 + y^3 + z^3 + t^3]

```

The equations $x=z, y=t$ define an (exceptional) line in $X$. We can get its structure sheaf as a sheaf on $X$ using the basic `Sheaf` constructor. The associated invertible sheaf ${\cal L}(Y)$ of $Y$ as a divisor on $X$ can be obtained from the `DivisorToSheaf` intrinsic described later in the chapter.

```magma
> IY := ideal<R|[x+z,y+t]>; // ideal of line
> OY := Sheaf(QuotientModule(IY),X);
> Module(OY);
Graded Module R^1/<relations>
Relations:
[x + z],
[y + t]
> Scheme(OY);
Scheme over Rational Field defined by
x^3 + y^3 + z^3 + t^3

```

## `SheafOfDifferentials(X): Sch -> ShfCoh`

```magma
Maximize: BoolElt                    Default: false
```

Given an ordinary projective scheme $X$, this function returns the sheaf of $1$-differentials on $X$, $\Omega^1_{X/k}$. The function computes the natural representing module for the sheaf coming from the embedding of $X$ in projective space (see Section 8, Chapter II of [[Hartshorne, 1977](../../references.md#cite-hartshorne)]). If the parameter `Maximize` is `true`, then the maximal module representing this sheaf is computed and used to define it (see next section).

## `TangentSheaf(X): Sch -> ShfCoh`

```magma
Maximize: BoolElt                    Default: false
```

For an ordinary projective scheme $X$, this function returns the sheaf of tangent vectors for $X$. The function computes the natural representing module for these sheaves coming from the embedding of $X$ in projective space (see Section 8, Chapter II of [[Hartshorne, 1977](../../references.md#cite-hartshorne)]). If the parameter `Maximize` is `true`, then the maximal module representing this sheaf is computed and used to define it (see next section).

Combining either of the above intrinsics with the [`IsLocallyFree`](shf:preds.md#function-shf-loc-free) intrinsic, this gives an alternative method for checking non-singularity on varieties that are known to be (locally) Cohen-Macaulay. It is best to use the sheaf of differentials since that is generally easier to compute. This approach can be much faster for varieties having high codimension than the usual Jacobian method.

## `HorrocksMumfordBundle(P): Prj -> ShfCoh`

The projective space $P$ should be ordinary projective 4-space ${\bf P}^4$ over a field. The function returns the locally free rank 2 sheaf on $P$ which represents the Horrocks-Mumford bundle (see [[Horrocks and Mumford, 1973](../../references.md#cite-hormum73)]). The scheme of vanishing of a general global section of this sheaf is a two dimensional Abelian variety in $P$.
