# diff(Matrix,Matrix) -- differentiate a matrix by a matrix

## Synopsis

• Function: diff
• Usage:
diff(m,n)
• Inputs:
• m, , a map m : F <--- P between free modules of ranks f and p.
• n, , a map n : G <--- Q between free modules of ranks g and q.
• Outputs:
• , with the shape h : dual F ** G <--- dual P ** Q, whose entry in the slot hg*i+j,q*k+l is the result of differentiating nj,l by the differential operator corresponding to mi,k.

## Description

The arguments m and n may also be vectors or ring elements.
 i1 : R = QQ[a,b,c][x,y,z] o1 = R o1 : PolynomialRing i2 : m = transpose vars R o2 = {-1, 0} | x | {-1, 0} | y | {-1, 0} | z | 3 1 o2 : Matrix R <--- R i3 : n = matrix{{x^2-a*y^3, x^3-z^2*y, x*y-b, x*z-c}} o3 = | -ay3+x2 x3-yz2 xy-b xz-c | 1 4 o3 : Matrix R <--- R i4 : diff(m,n) o4 = {1, 0} | 2x 3x2 y z | {1, 0} | -3ay2 -z2 x 0 | {1, 0} | 0 -2yz 0 x | 3 4 o4 : Matrix R <--- R