Adjugate[m]
gives the adjugate of a square matrix m.
Adjugate
Adjugate[m]
gives the adjugate of a square matrix m.
Details
- The adjugate is also known as the classical adjoint or the adjunct matrix.
- The adjugate of an invertible matrix m is given by Inverse[m]Det[m].
- The matrix product of a matrix m with its adjugate is equal to the determinant of m multiplied by an identity matrix of the same size as m.
- The matrix m can be numerical or symbolic, but must be square.
- Adjugate[m] formats as
in StandardForm and TraditionalForm. »
Examples
open all close allBasic Examples (3)
Compute the adjugate of a 2×2 matrix:
Adjugate[{{5, 4}, {4, 11}}]Compute the adjugate for a symbolic matrix:
m = {{a, b}, {c, d}};Adjugate[m]//MatrixFormCompute the adjugate for a 3×3 matrix:
m = {{15, 3, 4}, {3, 15, 11}, {-2, 1, 7}};Adjugate[m].m == Det[m]IdentityMatrix[Length[m]]Scope (10)
Basic Uses (6)
Adjugate for a machine-precision matrix:
Adjugate[{{43.2, 25.1}, {27.1, 41.2}}]Adjugate for a complex matrix:
Adjugate[{{E^5, 1, 3 - 2I}, {1 + I, (π/2), 5}, {0, 1, -4}}]//MatrixFormAdjugate[{{4, 3}, {3, 4}}]Adjugate for an arbitrary-precision matrix:
N[{{π, Sqrt[2], E}, {(1/Sqrt[2]), 1 + Sqrt[2], 2 π}, {-(1/Sqrt[2]) + 2 π, -1 + Sqrt[2], 2 E - 2 π}}, 12]//MatrixFormAdjugate[%]//MatrixFormAdjugate for a symbolic matrix:
Adjugate[{{a, b, c}, {d, e, f}, {g, h, i}}]//MatrixFormAdjugate[m]Special Matrices (4)
Adjugate of a sparse matrix is returned as a normal matrix:
SparseArray[{{1, 3} -> 1, {2, 2} -> 2, {3, 1} -> 3}, {3, 3}]Adjugate[%]Adjugates of structured matrices:
SymmetrizedArray[{{1, 1} -> 3, {2, 2} -> 1, {3, 1} -> -5}, {3, 3}, Symmetric[All]]Adjugate[%]QuantityArray[Partition[Range[9], 3], {"Meters", "Seconds", "Kilograms"}]Adjugate[%]The identity matrix is its own adjugate:
Adjugate[IdentityMatrix[3]]Adjugate[HilbertMatrix[5]]Applications (4)
Compute a cofactor using Adjugate:
cofactor[m_, {i_, j_}] := Adjugate[m][[j, i]]m = (| | | | | |
| - | - | - | - | - |
| 6 | 0 | 4 | 9 | 5 |
| 1 | 9 | 3 | 1 | 2 |
| 5 | 4 | 5 | 3 | 8 |
| 3 | 9 | 8 | 2 | 5 |
| 4 | 1 | 6 | 6 | 4 |);cofactor[m, {1, 3}]Apply[And, Table[cofactor[m, {i, j}] == (-1) ^ (i + j)Det[Drop[m, {i}, {j}]], {i, Length[m]}, {j, Length[m]}], {0, 1}]Compute the inverse of a matrix using Adjugate:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};1 / Det[m] Adjugate[m]//MatrixFormCompare with Inverse:
Inverse[m]//MatrixFormUse Adjugate to solve a linear equation:
m = {{1, 1, 1}, {1, 2, 3}, {1, 4, 9}};
b = {1, 2, 3};Adjugate[m].b / Det[m]Compare with LinearSolve:
LinearSolve[m, b]Define a function for computing the Gaussian curvature of a surface represented as an implicit Cartesian equation:
gaussianCurvature[f_, {x_, y_, z_}] := Module[{grad, hess},
grad = Grad[f, {x, y, z}];
hess = Grad[grad, {x, y, z}];
grad.Adjugate[hess].grad / (grad.grad) ^ 2]The implicit Cartesian equation of a surface with icosahedral symmetry:
icosurf[x_, y_, z_] := 1 - x^2 - y^2 - 2 x (x^4 - 10 x^2 y^2 + 5 y^4) z - z^2 + 5 (x^2 + y^2)^2 z^2 - 5 (x^2 + y^2) z^4 + z^6 - (x^2 + y^2 + z^2)^3Compute its Gaussian curvature:
icogc[x_, y_, z_] = Simplify[gaussianCurvature[icosurf[x, y, z], {x, y, z}]];Short[%, 10]Visualize regions of positive (red) and negative (blue) Gaussian curvature on the surface:
ContourPlot3D[icosurf[x, y, z] == 0, {x, -9 / 8, 9 / 8}, {y, -9 / 8, 9 / 8}, {z, -9 / 8, 9 / 8}, ColorFunction -> Function[{x, y, z}, ColorData["ThermometerColors"][LogisticSigmoid[10icogc[x, y, z]]]], ColorFunctionScaling -> False, Mesh -> None, PlotPoints -> 31]Properties & Relations (5)
m.Adjugate[m] is equal to Det[m] times an identity matrix of the same size:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};m.Adjugate[m] == Det[m]IdentityMatrix[Length[m]]Inverse[m] is equal to the adjugate divided by the determinant:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};Inverse[m] == Adjugate[m] / Det[m]For an n×n matrix m, Adjugate[m] equals LinearSolve[m,Det[m]IdentityMatrix[n]]:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};Adjugate[m] == LinearSolve[m, Det[m]IdentityMatrix[Length[m]]]For an n×n matrix m, Det[Adjugate[m]]==Det[m]n-1:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};Det[Adjugate[m]] == Det[m]^Length[m] - 1Minors[m] can be computed using Adjugate:
m = RandomInteger[9, {5, 5}];
Reverse[Minors[m], {1, 2}] == Transpose[Adjugate[m]]Table[(-1) ^ (i + j), {i, Length[m]}, {j, Length[m]}]Possible Issues (1)
Neat Examples (2)
Define a function for computing the adjugate polynomial of a square matrix:
adjugatePolynomial[A_ ? SquareMatrixQ, x_] := With[{n = Length[A]}, Sum[Sum[Product[((-1)^id[[l]] + 1/l^id[[l]](id[[l]]!))Tr[MatrixPower[A, l]]^id[[l]], {l, n - 1}], {id, FrobeniusSolve[Range[n - 1], n - s - 1]}]x^s, {s, 0, n - 1}]]Compute the adjugate polynomial of a matrix:
m = {{1, 1, 1}, {1, 2, 3}, {1, 4, 9}};ap[x_] = adjugatePolynomial[m, x]Evaluating the adjugate polynomial of a matrix at the matrix itself gives the adjugate:
MatrixFunction[ap, m]//FullSimplifyAdjugate[m]Define a function for computing the iterated adjugate of a square matrix:
iteratedAdjugate[A_ ? SquareMatrixQ, k_Integer ? NonNegative] := With[{n = Length[A]},
Det[A]^((n - 1)^k - (-1)^k/n) - Boole[OddQ[k]]If[OddQ[k], Adjugate[A], A]]Compute the first few iterates for a matrix:
m = {{1, 3, 5}, {7, 1, -1}, {8, 4, 1}};Table[iteratedAdjugate[m, k], {k, 0, 5}]This is equivalent to using NestList with Adjugate:
NestList[Adjugate, m, 5]Tech Notes
Related Guides
History
Text
Wolfram Research (2021), Adjugate, Wolfram Language function, https://reference.wolfram.com/language/ref/Adjugate.html.
CMS
Wolfram Language. 2021. "Adjugate." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Adjugate.html.
APA
Wolfram Language. (2021). Adjugate. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Adjugate.html
BibTeX
@misc{reference.wolfram_2026_adjugate, author="Wolfram Research", title="{Adjugate}", year="2021", howpublished="\url{https://reference.wolfram.com/language/ref/Adjugate.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_adjugate, organization={Wolfram Research}, title={Adjugate}, year={2021}, url={https://reference.wolfram.com/language/ref/Adjugate.html}, note=[Accessed: 13-June-2026]}