# der -- Module of logarithmic derivations

## Synopsis

• Usage:
der(A) or der(A,m)
• Inputs:
• A, , a central arrangement, possibly with repeated hyperplanes
• m, a list, optional list of multiplicities, one for each hyperplane
• Optional inputs:
• Outputs:
• , A matrix whose image is the module of logarithmic derivations corresponding to the (multi)arrangement A; see below.

## Description

The module of logarithmic derivations of an arrangement defined over a ring S is, by definition, the submodule of S-derivations with the property that D(f_i) is contained in the ideal generated by f_i for each linear form f_i in the arrangement.

More generally, if the linear form f_i is given a positive integer multiplicity m_i, then the logarithmic derivations are those D with the property that D(f_i) is in ideal(f_i^(m_i)) for each linear form f_i.

The jth column of the output matrix expresses the jth generator of the derivation module in terms of its value on each linear form, in order.

 i1 : R = QQ[x,y,z]; i2 : der arrangement {x,y,z,x-y,x-z,y-z} o2 = {1} | 1 y-z -yz+z2 | {1} | 1 y 0 | {1} | 1 x-z -xz+z2 | {1} | 1 0 0 | {1} | 1 x 0 | {1} | 1 x+y-z xy-xz-yz+z2 | 6 3 o2 : Matrix R <--- R

This method is implemented in such a way that any derivations of degree 0 are ignored. Equivalently, the arrangement A is forced to be essential: that is, the intersection of all the hyperplanes is the origin.

 i3 : prune image der typeA(3) 3 o3 = (QQ[x ..x ]) 1 4 o3 : QQ[x ..x ]-module, free, degrees {1..3} 1 4 i4 : prune image der typeB(4) -- A is said to be free if der(A) is a free module 4 o4 = (QQ[x ..x ]) 1 4 o4 : QQ[x ..x ]-module, free, degrees {1, 3, 5, 7} 1 4
not all arrangements are free:
 i5 : R = QQ[x,y,z]; i6 : A = arrangement {x,y,z,x+y+z} o6 = {x, y, z, x + y + z} o6 : Hyperplane Arrangement  i7 : betti res prune image der A 0 1 o7 = total: 4 1 1: 1 . 2: 3 1 o7 : BettiTally
If a list of multiplicities is not provided, the occurrences of each hyperplane are counted:
 i8 : R = QQ[x,y] o8 = R o8 : PolynomialRing i9 : prune image der arrangement {x,y,x-y,y-x,y,2*x} -- rank 2 => free 2 o9 = R o9 : R-module, free, degrees {2:3} i10 : prune image der(arrangement {x,y,x-y}, {2,2,2}) -- same thing 2 o10 = R o10 : R-module, free, degrees {2:3}

## Ways to use der :

• "der(CentralArrangement)"
• "der(CentralArrangement,List)"

## For the programmer

The object der is .