Cramer 's rule - wikipedia Cramer 's rule In linear algebra, Cramer 's rule is an explicit formula for the solution of a system of linear equations with as many equations as unknowns, valid whenever the system has a unique solution. It expresses the solution in terms of the determinants of the ( square ) coefficient matrix and of matrices obtained from it by replacing one column by the vector of right - hand - sides of the equations. It is named after Gabriel Cramer ( 1704 -- 1752 ), who published the rule for an arbitrary number of unknowns in 1750, although Colin Maclaurin also published special cases of the rule in 1748 ( and possibly knew of it as early as 1729 ). Cramer 's rule is computationally very inefficient for systems of more than two or three equations ; its asymptotic complexity is O ( n n ! ) compared to elimination methods that have polynomial time complexity. Cramer 's rule is also numerically unstable even for 2 × 2 systems. Contents 1 General case 2 Proof 3 Finding inverse matrix 4 Applications 4.1 Explicit formulas for small systems 4.2 Differential geometry 4.2. 1 Ricci calculus 4.2. 2 Computing derivatives implicitly 4.3 Integer programming 4.4 Ordinary differential equations 5 Geometric interpretation 6 Other proofs 6.1 A proof by abstract linear algebra 6.2 A short proof 6.3 Proof using Clifford algebra 7 Incompatible and indeterminate cases 8 References 9 External links General case Consider a system of n linear equations for n unknowns, represented in matrix multiplication form as follows : A x = b ( displaystyle Ax = b ) where the n × n matrix A has a nonzero determinant, and the vector x = ( x 1,..., x n ) T ( displaystyle x = ( x_ ( 1 ), ldots, x_ ( n ) ) ^ ( mathrm ( T ) ) ) is the column vector of the variables. Then the theorem states that in this case the system has a unique solution, whose individual values for the unknowns are given by : x i = det ( A i ) det ( A ) i = 1,..., n ( displaystyle x_ ( i ) = ( \frac ( det ( A_ ( i ) ) ) ( det ( A ) ) ) qquad i = 1, ldots, n ) where A i ( displaystyle A_ ( i ) ) is the matrix formed by replacing the i - th column of A by the column vector b. A more general version of Cramer 's rule considers the matrix equation A X = B ( displaystyle AX = B ) where the n × n matrix A has a nonzero determinant, and X, B are n × m matrices. Given sequences 1 ≤ i 1 < i 2 <... < i k ≤ n ( displaystyle 1 leq i_ ( 1 ) < i_ ( 2 ) < ldots < i_ ( k ) leq n ) and 1 ≤ j 1 < j 2 <... < j k ≤ m ( displaystyle 1 leq j_ ( 1 ) < j_ ( 2 ) < ldots < j_ ( k ) leq m ), let X I, J ( displaystyle X_ ( I, J ) ) be the k × k submatrix of X with rows in I : = ( i 1,..., i k ) ( displaystyle I : = ( i_ ( 1 ), ldots, i_ ( k ) ) ) and columns in J : = ( j 1,..., j k ) ( displaystyle J : = ( j_ ( 1 ), ldots, j_ ( k ) ) ). Let A B ( I, J ) ( displaystyle A_ ( B ) ( I, J ) ) be the n × n matrix formed by replacing the i s ( displaystyle i_ ( s ) ) column of A by the j s ( displaystyle j_ ( s ) ) column of B, for all s = 1,..., k ( displaystyle s = 1, ldots, k ). Then det X I, J = det ( A B ( I, J ) ) det ( A ). ( displaystyle det X_ ( I, J ) = ( \frac ( det ( A_ ( B ) ( I, J ) ) ) ( det ( A ) ) ). ) In the case k = 1 ( displaystyle k = 1 ), this reduces to the normal Cramer 's rule. The rule holds for systems of equations with coefficients and unknowns in any field, not just in the real numbers. It has recently been shown that Cramer 's rule can be implemented in O ( n ) time, which is comparable to more common methods of solving systems of linear equations, such as Gaussian elimination ( consistently requiring 2.5 times as many arithmetic operations for all matrix sizes, while exhibiting comparable numeric stability in most cases ). Proof The proof for Cramer 's rule uses just two properties of determinants : linearity with respect to any given column ( taking for that column a linear combination of column vectors produces as determinant the corresponding linear combination of their determinants ), and the fact that the determinant is zero whenever two columns are equal ( which is implied by the basic property that the sign of the determinant flips if you switch two columns ). Fix the index j of a column. Linearity means that if we consider only column j as variable ( fixing the others arbitrarily ), the resulting function R → R ( assuming matrix entries are in R ) can be given by a matrix, with one row and n columns, that acts on column j. In fact this is precisely what Laplace expansion does, writing det ( A ) = C a +... + C a for certain coefficients C,..., C that depend on the columns of A other than column j ( the precise expression for these cofactors is not important here ). The value det ( A ) is then the result of applying the one - line matrix L = ( C C... C ) to column j of A. If L is applied to any other column k of A, then the result is the determinant of the matrix obtained from A by replacing column j by a copy of column k, so the resulting determinant is 0 ( the case of two equal columns ). Now consider a system of n linear equations in n unknowns x 1,..., x n ( displaystyle x_ ( 1 ), ldots, x_ ( n ) ), whose coefficient matrix is A, with det ( A ) assumed to be nonzero : a 11 x 1 + a 12 x 2 + ⋯ + a 1 n x n = b 1 a 21 x 1 + a 22 x 2 + ⋯ + a 2 n x n = b 2 ⋮ ⋮ ⋮ a n 1 x 1 + a n 2 x 2 + ⋯ + a n n x n = b n. ( displaystyle ( \begin ( matrix ) a_ ( 11 ) x_ ( 1 ) + a_ ( 12 ) x_ ( 2 ) + cdots + a_ ( 1n ) x_ ( n ) & = &b_ ( 1 ) a_ ( 21 ) x_ ( 1 ) + a_ ( 22 ) x_ ( 2 ) + cdots + a_ ( 2n ) x_ ( n ) & = &b_ ( 2 ) \vdots & \vdots & \vdots a_ ( n1 ) x_ ( 1 ) + a_ ( n2 ) x_ ( 2 ) + cdots + a_ ( nn ) x_ ( n ) & = &b_ ( n ). end ( matrix ) ) ) If one combines these equations by taking C times the first equation, plus C times the second, and so forth until C times the last, then the coefficient of x will become C a +... + C a = det ( A ), while the coefficients of all other unknowns become 0 ; the left hand side becomes simply det ( A ) x. The right hand side is C b +... + C b, which is L applied to the column vector b of the right hand side b. In fact what has been done here is multiply the matrix equation Ax = b on the left by L. Dividing by the nonzero number det ( A ) one finds the following equation, necessary to satisfy the system : x j = L ( j ) ⋅ b det ( A ). ( displaystyle x_ ( j ) = ( \frac ( L_ ( ( j ) ) cdot mathbf ( b ) ) ( det ( A ) ) ). ) But by construction the numerator is the determinant of the matrix obtained from A by replacing column j by b, so we get the expression of Cramer 's rule as a necessary condition for a solution. The same procedure can be repeated for other values of j to find values for the other unknowns. The only point that remains to prove is that these values for the unknowns, the only possible ones, do indeed together form a solution. But if the matrix A is invertible with inverse A, then x = A b will be a solution, thus showing its existence. To see that A is invertible when det ( A ) is nonzero, consider the n × n matrix M obtained by stacking the one - line matrices L on top of each other for j = 1,..., n ( this gives the adjugate matrix for A ). It was shown that L A = ( 0... 0 det ( A ) 0... 0 ) where det ( A ) appears at the position j ; from this it follows that MA = det ( A ) I. Therefore, 1 det ( A ) M = A − 1, ( displaystyle ( \frac ( 1 ) ( det ( A ) ) ) M = A ^ ( - 1 ), ) completing the proof. For other proofs, see below. Finding inverse matrix Main article : Invertible matrix § Methods of matrix inversion Let A be an n × n matrix. Then A adj ⁡ A = ( adj ⁡ A ) A = det ⁡ ( A ) I ( displaystyle A , operatorname ( adj ) A = ( operatorname ( adj ) A ) , A = operatorname ( det ) ( A ) I ) where adj ( A ) denotes the adjugate matrix of A, det ( A ) is the determinant, and I is the identity matrix. If det ( A ) is invertible in R, then the inverse matrix of A is A − 1 = 1 det ⁡ ( A ) adj ⁡ ( A ). ( displaystyle A ^ ( - 1 ) = ( \frac ( 1 ) ( operatorname ( det ) ( A ) ) ) operatorname ( adj ) ( A ). ) If R is a field ( such as the field of real numbers ), then this gives a formula for the inverse of A, provided det ( A ) ≠ 0. In fact, this formula will work whenever R is a commutative ring, provided that det ( A ) is a unit. If det ( A ) is not a unit, then A is not invertible. Applications. Explicit formulas for small systems Consider the linear system ( a 1 x + b 1 y = c 1 a 2 x + b 2 y = c 2 ( displaystyle left ( ( \begin ( matrix ) a_ ( 1 ) x + b_ ( 1 ) y& = ( color ( red ) c_ ( 1 ) ) a_ ( 2 ) x + b_ ( 2 ) y& = ( color ( red ) c_ ( 2 ) ) end ( matrix ) ) \right. ) which in matrix format is ( a 1 b 1 a 2 b 2 ) ( x y ) = ( c 1 c 2 ). ( displaystyle ( \begin ( bmatrix ) a_ ( 1 ) &b_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) end ( bmatrix ) ) ( \begin ( bmatrix ) x y end ( bmatrix ) ) = ( \begin ( bmatrix ) ( color ( red ) c_ ( 1 ) ) ( color ( red ) c_ ( 2 ) ) end ( bmatrix ) ). ) Assume a b − b a nonzero. Then, with help of determinants, x and y can be found with Cramer 's rule as x = c 1 b 1 c 2 b 2 a 1 b 1 a 2 b 2 = c 1 b 2 − b 1 c 2 a 1 b 2 − b 1 a 2, y = a 1 c 1 a 2 c 2 a 1 b 1 a 2 b 2 = a 1 c 2 − c 1 a 2 a 1 b 2 − b 1 a 2. ( displaystyle ( \begin ( aligned ) x& = ( \frac ( \begin ( vmatrix ) ( color ( red ) ( c_ ( 1 ) ) ) &b_ ( 1 ) ( color ( red ) ( c_ ( 2 ) ) ) &b_ ( 2 ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) end ( vmatrix ) ) ) = ( ( color ( red ) c_ ( 1 ) ) b_ ( 2 ) - b_ ( 1 ) ( color ( red ) c_ ( 2 ) ) over a_ ( 1 ) b_ ( 2 ) - b_ ( 1 ) a_ ( 2 ) ), quad y = ( \frac ( \begin ( vmatrix ) a_ ( 1 ) & ( color ( red ) ( c_ ( 1 ) ) ) a_ ( 2 ) & ( color ( red ) ( c_ ( 2 ) ) ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) end ( vmatrix ) ) ) = ( a_ ( 1 ) ( color ( red ) c_ ( 2 ) ) - ( color ( red ) c_ ( 1 ) ) a_ ( 2 ) over a_ ( 1 ) b_ ( 2 ) - b_ ( 1 ) a_ ( 2 ) ) end ( aligned ) ). ) The rules for 3 × 3 matrices are similar. Given ( a 1 x + b 1 y + c 1 z = d 1 a 2 x + b 2 y + c 2 z = d 2 a 3 x + b 3 y + c 3 z = d 3 ( displaystyle left ( ( \begin ( matrix ) a_ ( 1 ) x + b_ ( 1 ) y + c_ ( 1 ) z& = ( color ( red ) d_ ( 1 ) ) a_ ( 2 ) x + b_ ( 2 ) y + c_ ( 2 ) z& = ( color ( red ) d_ ( 2 ) ) a_ ( 3 ) x + b_ ( 3 ) y + c_ ( 3 ) z& = ( color ( red ) d_ ( 3 ) ) end ( matrix ) ) \right. ) which in matrix format is ( a 1 b 1 c 1 a 2 b 2 c 2 a 3 b 3 c 3 ) ( x y z ) = ( d 1 d 2 d 3 ). ( displaystyle ( \begin ( bmatrix ) a_ ( 1 ) &b_ ( 1 ) &c_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) &c_ ( 2 ) a_ ( 3 ) &b_ ( 3 ) &c_ ( 3 ) end ( bmatrix ) ) ( \begin ( bmatrix ) x y z end ( bmatrix ) ) = ( \begin ( bmatrix ) ( color ( red ) d_ ( 1 ) ) ( color ( red ) d_ ( 2 ) ) ( color ( red ) d_ ( 3 ) ) end ( bmatrix ) ). ) Then the values of x, y and z can be found as follows : x = d 1 b 1 c 1 d 2 b 2 c 2 d 3 b 3 c 3 a 1 b 1 c 1 a 2 b 2 c 2 a 3 b 3 c 3, y = a 1 d 1 c 1 a 2 d 2 c 2 a 3 d 3 c 3 a 1 b 1 c 1 a 2 b 2 c 2 a 3 b 3 c 3, and z = a 1 b 1 d 1 a 2 b 2 d 2 a 3 b 3 d 3 a 1 b 1 c 1 a 2 b 2 c 2 a 3 b 3 c 3. ( displaystyle x = ( \frac ( \begin ( vmatrix ) ( color ( red ) d_ ( 1 ) ) &b_ ( 1 ) &c_ ( 1 ) ( color ( red ) d_ ( 2 ) ) &b_ ( 2 ) &c_ ( 2 ) ( color ( red ) d_ ( 3 ) ) &b_ ( 3 ) &c_ ( 3 ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) &c_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) &c_ ( 2 ) a_ ( 3 ) &b_ ( 3 ) &c_ ( 3 ) end ( vmatrix ) ) ), quad y = ( \frac ( \begin ( vmatrix ) a_ ( 1 ) & ( color ( red ) d_ ( 1 ) ) &c_ ( 1 ) a_ ( 2 ) & ( color ( red ) d_ ( 2 ) ) &c_ ( 2 ) a_ ( 3 ) & ( color ( red ) d_ ( 3 ) ) &c_ ( 3 ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) &c_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) &c_ ( 2 ) a_ ( 3 ) &b_ ( 3 ) &c_ ( 3 ) end ( vmatrix ) ) ), ( \text ( and ) ) z = ( \frac ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) & ( color ( red ) d_ ( 1 ) ) a_ ( 2 ) &b_ ( 2 ) & ( color ( red ) d_ ( 2 ) ) a_ ( 3 ) &b_ ( 3 ) & ( color ( red ) d_ ( 3 ) ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 1 ) &b_ ( 1 ) &c_ ( 1 ) a_ ( 2 ) &b_ ( 2 ) &c_ ( 2 ) a_ ( 3 ) &b_ ( 3 ) &c_ ( 3 ) end ( vmatrix ) ) ). ) Differential geometry Ricci Calculus Cramer 's rule is used in the Ricci calculus in various calculations involving the Christoffel symbols of the first and second kind. In particular, Cramer 's rule can be used to prove that the divergence operator on a Riemannian manifold is invariant with respect to change of coordinates. We give a direct proof, suppressing the role of the Christoffel symbols. Let ( M, g ) ( displaystyle ( M, g ) ) be a Riemannian manifold equipped with local coordinates ( x 1, x 2,..., x n ) ( displaystyle ( x ^ ( 1 ), x ^ ( 2 ), dots, x ^ ( n ) ) ). Let A = A i ∂ ∂ x i ( displaystyle A = A ^ ( i ) ( \frac ( partial ) ( partial x ^ ( i ) ) ) ) be a vector field. We use the summation convention throughout. Theorem. The divergence of A ( displaystyle A ), div ⁡ A = 1 det g ∂ ∂ x i ( A i det g ), ( displaystyle operatorname ( div ) A = ( \frac ( 1 ) ( sqrt ( det g ) ) ) ( \frac ( partial ) ( partial x ^ ( i ) ) ) left ( A ^ ( i ) ( sqrt ( det g ) ) \right ), ) is invariant under change of coordinates. Proof Let ( x 1, x 2,..., x n ) ↦ ( x  ̄ 1,..., x  ̄ n ) ( displaystyle ( x ^ ( 1 ), x ^ ( 2 ), ldots, x ^ ( n ) ) mapsto ( ( \bar ( x ) ) ^ ( 1 ), ldots, ( \bar ( x ) ) ^ ( n ) ) ) be a coordinate transformation with non-singular Jacobian. Then the classical transformation laws imply that A = A  ̄ k ∂ ∂ x  ̄ k ( displaystyle A = ( \bar ( A ) ) ^ ( k ) ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( k ) ) ) ) where A  ̄ k = ∂ x  ̄ k ∂ x j A j ( displaystyle ( \bar ( A ) ) ^ ( k ) = ( \frac ( partial ( \bar ( x ) ) ^ ( k ) ) ( partial x ^ ( j ) ) ) A ^ ( j ) ). Similarly, if g = g m k d x m ⊗ d x k = g  ̄ i j d x  ̄ i ⊗ d x  ̄ j ( displaystyle g = g_ ( mk ) , dx ^ ( m ) otimes dx ^ ( k ) = ( \bar ( g ) ) _ ( ij ) , d ( \bar ( x ) ) ^ ( i ) otimes d ( \bar ( x ) ) ^ ( j ) ), then g  ̄ i j = ∂ x m ∂ x  ̄ i ∂ x k ∂ x  ̄ j g m k ( displaystyle ( \bar ( g ) ) _ ( ij ) = , ( \frac ( partial x ^ ( m ) ) ( partial ( \bar ( x ) ) ^ ( i ) ) ) ( \frac ( partial x ^ ( k ) ) ( partial ( \bar ( x ) ) ^ ( j ) ) ) g_ ( mk ) ). Writing this transformation law in terms of matrices yields g  ̄ = ( ∂ x ∂ x  ̄ ) T g ( ∂ x ∂ x  ̄ ) ( displaystyle ( \bar ( g ) ) = left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ^ ( \text ( T ) ) g left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ), which implies det g  ̄ = ( det ( ∂ x ∂ x  ̄ ) ) 2 det g ( displaystyle det ( \bar ( g ) ) = left ( det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) \right ) ^ ( 2 ) det g ). Now one computes div ⁡ A = 1 det g ∂ ∂ x i ( A i det g ) = det ( ∂ x ∂ x  ̄ ) 1 det g  ̄ ∂ x  ̄ k ∂ x i ∂ ∂ x  ̄ k ( ∂ x i ∂ x  ̄ l A  ̄ l det ( ∂ x ∂ x  ̄ ) − 1 det g  ̄ ). ( displaystyle ( \begin ( aligned ) operatorname ( div ) A& = ( \frac ( 1 ) ( sqrt ( det g ) ) ) ( \frac ( partial ) ( partial x ^ ( i ) ) ) left ( A ^ ( i ) ( sqrt ( det g ) ) \right ) & = det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ( \frac ( 1 ) ( sqrt ( det ( \bar ( g ) ) ) ) ) ( \frac ( partial ( \bar ( x ) ) ^ ( k ) ) ( partial x ^ ( i ) ) ) ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( k ) ) ) left ( ( \frac ( partial x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( ell ) ) ) ( \bar ( A ) ) ^ ( ell ) det ! left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ^ ( ! ! - 1 ) ! ( sqrt ( det ( \bar ( g ) ) ) ) \right ). end ( aligned ) ) ) In order to show that this equals 1 det g  ̄ ∂ ∂ x  ̄ k ( A  ̄ k det g  ̄ ) ( displaystyle ( \frac ( 1 ) ( sqrt ( det ( \bar ( g ) ) ) ) ) ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( k ) ) ) left ( ( \bar ( A ) ) ^ ( k ) ( sqrt ( det ( \bar ( g ) ) ) ) \right ) ), it is necessary and sufficient to show that ∂ x  ̄ k ∂ x i ∂ ∂ x  ̄ k ( ∂ x i ∂ x  ̄ l det ( ∂ x ∂ x  ̄ ) − 1 ) = 0 for all l, ( displaystyle ( \frac ( partial ( \bar ( x ) ) ^ ( k ) ) ( partial x ^ ( i ) ) ) ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( k ) ) ) left ( ( \frac ( partial x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( ell ) ) ) det ! left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ^ ( ! ! ! - 1 ) \right ) = 0 qquad ( \text ( for all ) ) ell, ) which is equivalent to ∂ ∂ x  ̄ l det ( ∂ x ∂ x  ̄ ) = det ( ∂ x ∂ x  ̄ ) ∂ x  ̄ k ∂ x i ∂ 2 x i ∂ x  ̄ k ∂ x  ̄ l. ( displaystyle ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( ell ) ) ) det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) = det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ( \frac ( partial ( \bar ( x ) ) ^ ( k ) ) ( partial x ^ ( i ) ) ) ( \frac ( partial ^ ( 2 ) x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( k ) partial ( \bar ( x ) ) ^ ( ell ) ) ). ) Carrying out the differentiation on the left - hand side, we get : ∂ ∂ x  ̄ l det ( ∂ x ∂ x  ̄ ) = ( − 1 ) i + j ∂ 2 x i ∂ x  ̄ l ∂ x  ̄ j det M ( i j ) = ∂ 2 x i ∂ x  ̄ l ∂ x  ̄ j det ( ∂ x ∂ x  ̄ ) ( − 1 ) i + j det ( ∂ x ∂ x  ̄ ) det M ( i j ) = ( ∗ ), ( displaystyle ( \begin ( aligned ) ( \frac ( partial ) ( partial ( \bar ( x ) ) ^ ( ell ) ) ) det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) & = ( - 1 ) ^ ( i + j ) ( \frac ( partial ^ ( 2 ) x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( ell ) partial ( \bar ( x ) ) ^ ( j ) ) ) det M ( i j ) & = ( \frac ( partial ^ ( 2 ) x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( ell ) partial ( \bar ( x ) ) ^ ( j ) ) ) det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ( \frac ( ( - 1 ) ^ ( i + j ) ) ( det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ) ) det M ( i j ) = ( ast ), end ( aligned ) ) ) where M ( i j ) ( displaystyle M ( i j ) ) denotes the matrix obtained from ( ∂ x ∂ x  ̄ ) ( displaystyle left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ) by deleting the i ( displaystyle i ) th row and j ( displaystyle j ) th column. But Cramer 's Rule says that ( − 1 ) i + j det ( ∂ x ∂ x  ̄ ) det M ( i j ) ( displaystyle ( \frac ( ( - 1 ) ^ ( i + j ) ) ( det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ) ) det M ( i j ) ) is the ( j, i ) ( displaystyle ( j, i ) ) th entry of the matrix ( ∂ x  ̄ ∂ x ) ( displaystyle left ( ( \frac ( partial ( \bar ( x ) ) ) ( partial x ) ) \right ) ). Thus ( ∗ ) = det ( ∂ x ∂ x  ̄ ) ∂ 2 x i ∂ x  ̄ l ∂ x  ̄ j ∂ x  ̄ j ∂ x i, ( displaystyle ( ast ) = det left ( ( \frac ( partial x ) ( partial ( \bar ( x ) ) ) ) \right ) ( \frac ( partial ^ ( 2 ) x ^ ( i ) ) ( partial ( \bar ( x ) ) ^ ( ell ) partial ( \bar ( x ) ) ^ ( j ) ) ) ( \frac ( partial ( \bar ( x ) ) ^ ( j ) ) ( partial x ^ ( i ) ) ), ) completing the proof. Computing derivatives implicitly Consider the two equations F ( x, y, u, v ) = 0 ( displaystyle F ( x, y, u, v ) = 0 ) and G ( x, y, u, v ) = 0 ( displaystyle G ( x, y, u, v ) = 0 ). When u and v are independent variables, we can define x = X ( u, v ) ( displaystyle x = X ( u, v ) ) and y = Y ( u, v ). ( displaystyle y = Y ( u, v ). ) Finding an equation for ∂ x ∂ u ( displaystyle ( dfrac ( partial x ) ( partial u ) ) ) is a trivial application of Cramer 's rule. Calculation of ∂ x ∂ u ( displaystyle ( dfrac ( partial x ) ( partial u ) ) ) First, calculate the first derivatives of F, G, x, and y : d F = ∂ F ∂ x d x + ∂ F ∂ y d y + ∂ F ∂ u d u + ∂ F ∂ v d v = 0 d G = ∂ G ∂ x d x + ∂ G ∂ y d y + ∂ G ∂ u d u + ∂ G ∂ v d v = 0 d x = ∂ X ∂ u d u + ∂ X ∂ v d v d y = ∂ Y ∂ u d u + ∂ Y ∂ v d v. ( displaystyle ( \begin ( aligned ) dF& = ( \frac ( partial F ) ( partial x ) ) dx+ ( \frac ( partial F ) ( partial y ) ) dy+ ( \frac ( partial F ) ( partial u ) ) du+ ( \frac ( partial F ) ( partial v ) ) dv = 0 ( 6pt ) dG& = ( \frac ( partial G ) ( partial x ) ) dx+ ( \frac ( partial G ) ( partial y ) ) dy+ ( \frac ( partial G ) ( partial u ) ) du+ ( \frac ( partial G ) ( partial v ) ) dv = 0 ( 6pt ) dx& = ( \frac ( partial X ) ( partial u ) ) du+ ( \frac ( partial X ) ( partial v ) ) dv ( 6pt ) dy& = ( \frac ( partial Y ) ( partial u ) ) du+ ( \frac ( partial Y ) ( partial v ) ) dv. end ( aligned ) ) ) Substituting dx, dy into dF and dG, we have : d F = ( ∂ F ∂ x ∂ x ∂ u + ∂ F ∂ y ∂ y ∂ u + ∂ F ∂ u ) d u + ( ∂ F ∂ x ∂ x ∂ v + ∂ F ∂ y ∂ y ∂ v + ∂ F ∂ v ) d v = 0 d G = ( ∂ G ∂ x ∂ x ∂ u + ∂ G ∂ y ∂ y ∂ u + ∂ G ∂ u ) d u + ( ∂ G ∂ x ∂ x ∂ v + ∂ G ∂ y ∂ y ∂ v + ∂ G ∂ v ) d v = 0. ( displaystyle ( \begin ( aligned ) dF& = left ( ( \frac ( partial F ) ( partial x ) ) ( \frac ( partial x ) ( partial u ) ) + ( \frac ( partial F ) ( partial y ) ) ( \frac ( partial y ) ( partial u ) ) + ( \frac ( partial F ) ( partial u ) ) \right ) du+ left ( ( \frac ( partial F ) ( partial x ) ) ( \frac ( partial x ) ( partial v ) ) + ( \frac ( partial F ) ( partial y ) ) ( \frac ( partial y ) ( partial v ) ) + ( \frac ( partial F ) ( partial v ) ) \right ) dv = 0 ( 6pt ) dG& = left ( ( \frac ( partial G ) ( partial x ) ) ( \frac ( partial x ) ( partial u ) ) + ( \frac ( partial G ) ( partial y ) ) ( \frac ( partial y ) ( partial u ) ) + ( \frac ( partial G ) ( partial u ) ) \right ) du+ left ( ( \frac ( partial G ) ( partial x ) ) ( \frac ( partial x ) ( partial v ) ) + ( \frac ( partial G ) ( partial y ) ) ( \frac ( partial y ) ( partial v ) ) + ( \frac ( partial G ) ( partial v ) ) \right ) dv = 0. end ( aligned ) ) ) Since u, v are both independent, the coefficients of du, dv must be zero. So we can write out equations for the coefficients : ∂ F ∂ x ∂ x ∂ u + ∂ F ∂ y ∂ y ∂ u = − ∂ F ∂ u ∂ G ∂ x ∂ x ∂ u + ∂ G ∂ y ∂ y ∂ u = − ∂ G ∂ u ∂ F ∂ x ∂ x ∂ v + ∂ F ∂ y ∂ y ∂ v = − ∂ F ∂ v ∂ G ∂ x ∂ x ∂ v + ∂ G ∂ y ∂ y ∂ v = − ∂ G ∂ v. ( displaystyle ( \begin ( aligned ) ( \frac ( partial F ) ( partial x ) ) ( \frac ( partial x ) ( partial u ) ) + ( \frac ( partial F ) ( partial y ) ) ( \frac ( partial y ) ( partial u ) ) & = - ( \frac ( partial F ) ( partial u ) ) ( 6pt ) ( \frac ( partial G ) ( partial x ) ) ( \frac ( partial x ) ( partial u ) ) + ( \frac ( partial G ) ( partial y ) ) ( \frac ( partial y ) ( partial u ) ) & = - ( \frac ( partial G ) ( partial u ) ) ( 6pt ) ( \frac ( partial F ) ( partial x ) ) ( \frac ( partial x ) ( partial v ) ) + ( \frac ( partial F ) ( partial y ) ) ( \frac ( partial y ) ( partial v ) ) & = - ( \frac ( partial F ) ( partial v ) ) ( 6pt ) ( \frac ( partial G ) ( partial x ) ) ( \frac ( partial x ) ( partial v ) ) + ( \frac ( partial G ) ( partial y ) ) ( \frac ( partial y ) ( partial v ) ) & = - ( \frac ( partial G ) ( partial v ) ). end ( aligned ) ) ) Now, by Cramer 's rule, we see that : ∂ x ∂ u = − ∂ F ∂ u ∂ F ∂ y − ∂ G ∂ u ∂ G ∂ y ∂ F ∂ x ∂ F ∂ y ∂ G ∂ x ∂ G ∂ y. ( displaystyle ( \frac ( partial x ) ( partial u ) ) = ( \frac ( \begin ( vmatrix ) - ( \frac ( partial F ) ( partial u ) ) & ( \frac ( partial F ) ( partial y ) ) - ( \frac ( partial G ) ( partial u ) ) & ( \frac ( partial G ) ( partial y ) ) end ( vmatrix ) ) ( \begin ( vmatrix ) ( \frac ( partial F ) ( partial x ) ) & ( \frac ( partial F ) ( partial y ) ) ( \frac ( partial G ) ( partial x ) ) & ( \frac ( partial G ) ( partial y ) ) end ( vmatrix ) ) ). ) This is now a formula in terms of two Jacobians : ∂ x ∂ u = − ( ∂ ( F, G ) ∂ ( u, y ) ) ( ∂ ( F, G ) ∂ ( x, y ) ). ( displaystyle ( \frac ( partial x ) ( partial u ) ) = - ( \frac ( left ( ( \frac ( partial ( F, G ) ) ( partial ( u, y ) ) ) \right ) ) ( left ( ( \frac ( partial ( F, G ) ) ( partial ( x, y ) ) ) \right ) ) ). ) Similar formulas can be derived for ∂ x ∂ v, ∂ y ∂ u, ∂ y ∂ v. ( displaystyle ( \frac ( partial x ) ( partial v ) ), ( \frac ( partial y ) ( partial u ) ), ( \frac ( partial y ) ( partial v ) ). ) Integer programming Cramer 's rule can be used to prove that an integer programming problem whose constraint matrix is totally unimodular and whose right - hand side is integer, has integer basic solutions. This makes the integer program substantially easier to solve. Ordinary differential equations Cramer 's rule is used to derive the general solution to an inhomogeneous linear differential equation by the method of variation of parameters. Geometric interpretation Geometric interpretation of Cramer 's rule. The areas of the second and third shaded parallelograms are the same and the second is x 1 ( displaystyle x_ ( 1 ) ) times the first. From this equality Cramer 's rule follows. Cramer 's rule has a geometric interpretation that can be considered also a proof or simply giving insight about its geometric nature. These geometric arguments work in general and not only in the case of two equations with two unknowns presented here. Given the system of equations a 11 x 1 + a 12 x 2 = b 1 a 21 x 1 + a 22 x 2 = b 2 ( displaystyle ( \begin ( matrix ) a_ ( 11 ) x_ ( 1 ) + a_ ( 12 ) x_ ( 2 ) & = b_ ( 1 ) a_ ( 21 ) x_ ( 1 ) + a_ ( 22 ) x_ ( 2 ) & = b_ ( 2 ) end ( matrix ) ) ) it can be considered as an equation between vectors x 1 ( a 11 a 21 ) + x 2 ( a 12 a 22 ) = ( b 1 b 2 ). ( displaystyle x_ ( 1 ) ( \binom ( a_ ( 11 ) ) ( a_ ( 21 ) ) ) + x_ ( 2 ) ( \binom ( a_ ( 12 ) ) ( a_ ( 22 ) ) ) = ( \binom ( b_ ( 1 ) ) ( b_ ( 2 ) ) ). ) The area of the parallelogram determined by ( a 11 a 21 ) ( displaystyle ( \binom ( a_ ( 11 ) ) ( a_ ( 21 ) ) ) ) and ( a 12 a 22 ) ( displaystyle ( \binom ( a_ ( 12 ) ) ( a_ ( 22 ) ) ) ) is given by the determinant of the system of equations : a 11 a 12 a 21 a 22. ( displaystyle ( \begin ( vmatrix ) a_ ( 11 ) &a_ ( 12 ) a_ ( 21 ) &a_ ( 22 ) end ( vmatrix ) ). ) In general, when there are more variables and equations, the determinant of n vectors of length n will give the volume of the parallelepiped determined by those vectors in the n - th dimensional Euclidean space. Therefore, the area of the parallelogram determined by x 1 ( a 11 a 21 ) ( displaystyle x_ ( 1 ) ( \binom ( a_ ( 11 ) ) ( a_ ( 21 ) ) ) ) and ( a 12 a 22 ) ( displaystyle ( \binom ( a_ ( 12 ) ) ( a_ ( 22 ) ) ) ) has to be x 1 ( displaystyle x_ ( 1 ) ) times the area of the first one since one of the sides has been multiplied by this factor. Now, this last parallelogram, by Cavalieri 's principle, has the same area as the parallelogram determined by ( b 1 b 2 ) = x 1 ( a 11 a 21 ) + x 2 ( a 12 a 22 ) ( displaystyle ( \binom ( b_ ( 1 ) ) ( b_ ( 2 ) ) ) = x_ ( 1 ) ( \binom ( a_ ( 11 ) ) ( a_ ( 21 ) ) ) + x_ ( 2 ) ( \binom ( a_ ( 12 ) ) ( a_ ( 22 ) ) ) ) and ( a 12 a 22 ) ( displaystyle ( \binom ( a_ ( 12 ) ) ( a_ ( 22 ) ) ) ). Equating the areas of this last and the second parallelogram gives the equation b 1 a 12 b 2 a 22 = a 11 x 1 a 12 a 21 x 1 a 22 = x 1 a 11 a 12 a 21 a 22 ( displaystyle ( \begin ( vmatrix ) b_ ( 1 ) &a_ ( 12 ) \b_ ( 2 ) &a_ ( 22 ) end ( vmatrix ) ) = ( \begin ( vmatrix ) a_ ( 11 ) x_ ( 1 ) &a_ ( 12 ) a_ ( 21 ) x_ ( 1 ) &a_ ( 22 ) end ( vmatrix ) ) = x_ ( 1 ) ( \begin ( vmatrix ) a_ ( 11 ) &a_ ( 12 ) a_ ( 21 ) &a_ ( 22 ) end ( vmatrix ) ) ) from which Cramer 's rule follows. Other proofs A proof by abstract linear Algebra This is a restatement of the proof above in abstract language. Consider the map x → = ( x 1,..., x n ) ↦ 1 det A ( det ( A 1 ),..., det ( A n ) ) ( displaystyle ( \vec ( x ) ) = ( x_ ( 1 ), ldots, x_ ( n ) ) mapsto ( \frac ( 1 ) ( det A ) ) ( det ( A_ ( 1 ) ), ldots, det ( A_ ( n ) ) ) ), where A i ( displaystyle A_ ( i ) ) is the matrix A ( displaystyle A ) with x → ( displaystyle ( \vec ( x ) ) ) substituted in the i ( displaystyle i ) th column, as in the Cramer 's rule. Because of linearity of determinant in every column, this map is linear. Observe that it sends the i ( displaystyle i ) th column of A ( displaystyle A ) to the i ( displaystyle i ) th basis vector e → i = ( 0,..., 1,..., 0 ) ( displaystyle ( \vec ( e ) ) _ ( i ) = ( 0, ldots, 1, ldots, 0 ) ) ( with 1 in the i ( displaystyle i ) th place ), because determinant of a matrix with a repeated column is 0. So we have a linear map which agrees with the inverse of A ( displaystyle A ) on the column space ; hence it agrees with A − 1 ( displaystyle A ^ ( - 1 ) ) on the span of the column space. Since A ( displaystyle A ) is invertible, the column vector span all of R n ( displaystyle mathbb ( R ) ^ ( n ) ), so our map really is the inverse of A ( displaystyle A ). The Cramer 's rule follows. A Short proof A short proof of Cramer 's rule can be given by noticing that x 1 ( displaystyle x_ ( 1 ) ) is the determinant of the matrix X 1 = ( x 1 0 0... 0 x 2 1 0... 0 x 3 0 1... 0 ⋮ ⋮ ⋮ ⋱ ⋮ x n 0 0... 1 ) ( displaystyle X_ ( 1 ) = ( \begin ( bmatrix ) x_ ( 1 ) &0&0& dots &0 \x_ ( 2 ) &1&0& dots &0 \x_ ( 3 ) &0&1& dots &0 \vdots & \vdots & \vdots & ddots & \vdots \x_ ( n ) &0&0& dots &1 end ( bmatrix ) ) ) On the other hand, assuming that our original matrix A is invertible, this matrix X 1 ( displaystyle X_ ( 1 ) ) has columns A − 1 b, A − 1 v 2,..., A − 1 v n ( displaystyle A ^ ( - 1 ) b, A ^ ( - 1 ) v_ ( 2 ), ldots, A ^ ( - 1 ) v_ ( n ) ), where v n ( displaystyle v_ ( n ) ) is the n - th column of the matrix A. Recall that the matrix A 1 ( displaystyle A_ ( 1 ) ) has columns b, v 2,..., v n ( displaystyle b, v_ ( 2 ), ldots, v_ ( n ) ). Hence we have x 1 = det ( X 1 ) = det ( A − 1 ) det ( A 1 ) = det ( A 1 ) det ( A ). ( displaystyle x_ ( 1 ) = det ( X_ ( 1 ) ) = det ( A ^ ( - 1 ) ) det ( A_ ( 1 ) ) = ( \frac ( det ( A_ ( 1 ) ) ) ( det ( A ) ) ). ) The proof for other x j ( displaystyle x_ ( j ) ) is similar. Proof using clifford Algebra Consider the system of three scalar equations in three unknown scalars x 1, x 2, x 3 ( displaystyle x_ ( 1 ), x_ ( 2 ), x_ ( 3 ) ) a 11 x 1 + a 12 x 2 + a 13 x 3 = c 1 a 21 x 1 + a 22 x 2 + a 23 x 3 = c 2 a 31 x 1 + a 32 x 2 + a 33 x 3 = c 3 ( displaystyle ( \begin ( aligned ) a_ ( 11 ) x_ ( 1 ) + a_ ( 12 ) x_ ( 2 ) + a_ ( 13 ) x_ ( 3 ) & = c_ ( 1 ) a_ ( 21 ) x_ ( 1 ) + a_ ( 22 ) x_ ( 2 ) + a_ ( 23 ) x_ ( 3 ) & = c_ ( 2 ) a_ ( 31 ) x_ ( 1 ) + a_ ( 32 ) x_ ( 2 ) + a_ ( 33 ) x_ ( 3 ) & = c_ ( 3 ) end ( aligned ) ) ) and assign an orthonormal vector basis e 1, e 2, e 3 ( displaystyle mathbf ( e ) _ ( 1 ), mathbf ( e ) _ ( 2 ), mathbf ( e ) _ ( 3 ) ) for G 3 ( displaystyle ( mathcal ( G ) ) _ ( 3 ) ) as a 11 e 1 x 1 + a 12 e 1 x 2 + a 13 e 1 x 3 = c 1 e 1 a 21 e 2 x 1 + a 22 e 2 x 2 + a 23 e 2 x 3 = c 2 e 2 a 31 e 3 x 1 + a 32 e 3 x 2 + a 33 e 3 x 3 = c 3 e 3 ( displaystyle ( \begin ( aligned ) a_ ( 11 ) mathbf ( e ) _ ( 1 ) x_ ( 1 ) + a_ ( 12 ) mathbf ( e ) _ ( 1 ) x_ ( 2 ) + a_ ( 13 ) mathbf ( e ) _ ( 1 ) x_ ( 3 ) & = c_ ( 1 ) mathbf ( e ) _ ( 1 ) a_ ( 21 ) mathbf ( e ) _ ( 2 ) x_ ( 1 ) + a_ ( 22 ) mathbf ( e ) _ ( 2 ) x_ ( 2 ) + a_ ( 23 ) mathbf ( e ) _ ( 2 ) x_ ( 3 ) & = c_ ( 2 ) mathbf ( e ) _ ( 2 ) a_ ( 31 ) mathbf ( e ) _ ( 3 ) x_ ( 1 ) + a_ ( 32 ) mathbf ( e ) _ ( 3 ) x_ ( 2 ) + a_ ( 33 ) mathbf ( e ) _ ( 3 ) x_ ( 3 ) & = c_ ( 3 ) mathbf ( e ) _ ( 3 ) end ( aligned ) ) ) Let the vectors a 1 = a 11 e 1 + a 21 e 2 + a 31 e 3 a 2 = a 12 e 1 + a 22 e 2 + a 32 e 3 a 3 = a 13 e 1 + a 23 e 2 + a 33 e 3 ( displaystyle ( \begin ( aligned ) mathbf ( a ) _ ( 1 ) & = a_ ( 11 ) mathbf ( e ) _ ( 1 ) + a_ ( 21 ) mathbf ( e ) _ ( 2 ) + a_ ( 31 ) mathbf ( e ) _ ( 3 ) mathbf ( a ) _ ( 2 ) & = a_ ( 12 ) mathbf ( e ) _ ( 1 ) + a_ ( 22 ) mathbf ( e ) _ ( 2 ) + a_ ( 32 ) mathbf ( e ) _ ( 3 ) mathbf ( a ) _ ( 3 ) & = a_ ( 13 ) mathbf ( e ) _ ( 1 ) + a_ ( 23 ) mathbf ( e ) _ ( 2 ) + a_ ( 33 ) mathbf ( e ) _ ( 3 ) end ( aligned ) ) ) Adding the system of equations, it is seen that c = c 1 e 1 + c 2 e 2 + c 3 e 3 = x 1 a 1 + x 2 a 2 + x 3 a 3 ( displaystyle ( \begin ( aligned ) mathbf ( c ) & = c_ ( 1 ) mathbf ( e ) _ ( 1 ) + c_ ( 2 ) mathbf ( e ) _ ( 2 ) + c_ ( 3 ) mathbf ( e ) _ ( 3 ) & = x_ ( 1 ) mathbf ( a ) _ ( 1 ) + x_ ( 2 ) mathbf ( a ) _ ( 2 ) + x_ ( 3 ) mathbf ( a ) _ ( 3 ) end ( aligned ) ) ) Using the exterior product, each unknown scalar x k ( displaystyle x_ ( k ) ) can be solved as c ∧ a 2 ∧ a 3 = x 1 a 1 ∧ a 2 ∧ a 3 c ∧ a 1 ∧ a 3 = x 2 a 2 ∧ a 1 ∧ a 3 c ∧ a 1 ∧ a 2 = x 3 a 3 ∧ a 1 ∧ a 2 x 1 = c ∧ a 2 ∧ a 3 a 1 ∧ a 2 ∧ a 3 x 2 = c ∧ a 1 ∧ a 3 a 2 ∧ a 1 ∧ a 3 = a 1 ∧ c ∧ a 3 a 1 ∧ a 2 ∧ a 3 x 3 = c ∧ a 1 ∧ a 2 a 3 ∧ a 1 ∧ a 2 = a 1 ∧ a 2 ∧ c a 1 ∧ a 2 ∧ a 3 ( displaystyle ( \begin ( aligned ) mathbf ( c ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) & = x_ ( 1 ) mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) mathbf ( c ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 3 ) & = x_ ( 2 ) mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 3 ) mathbf ( c ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) & = x_ ( 3 ) mathbf ( a ) _ ( 3 ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) \x_ ( 1 ) & = ( \frac ( mathbf ( c ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) ) ( mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) ) ) \x_ ( 2 ) & = ( \frac ( mathbf ( c ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 3 ) ) ( mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 3 ) ) ) = ( \frac ( mathbf ( a ) _ ( 1 ) wedge mathbf ( c ) wedge mathbf ( a ) _ ( 3 ) ) ( mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) ) ) \x_ ( 3 ) & = ( \frac ( mathbf ( c ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) ) ( mathbf ( a ) _ ( 3 ) wedge mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) ) ) = ( \frac ( mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( c ) ) ( mathbf ( a ) _ ( 1 ) wedge mathbf ( a ) _ ( 2 ) wedge mathbf ( a ) _ ( 3 ) ) ) end ( aligned ) ) ) For n equations in n unknowns, the solution for the k - th unknown x k ( displaystyle x_ ( k ) ) generalizes to x k = a 1 ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a n a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n = ( a 1 ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a n ) ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) − 1 = ( a 1 ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a n ) ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) = ( a 1 ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a n ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( − 1 ) n ( n − 1 ) 2 ( a n ∧ ⋯ ∧ a k ∧ ⋯ ∧ a 1 ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) = ( a n ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a 1 ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( a n ∧ ⋯ ∧ a k ∧ ⋯ ∧ a 1 ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( displaystyle ( \begin ( aligned ) x_ ( k ) & = ( \frac ( mathbf ( a ) _ ( 1 ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) & = ( mathbf ( a ) _ ( 1 ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ^ ( - 1 ) & = ( \frac ( ( mathbf ( a ) _ ( 1 ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ( ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ) & = ( \frac ( ( mathbf ( a ) _ ( 1 ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ( ( - 1 ) ^ ( \frac ( n ( n - 1 ) ) ( 2 ) ) ( mathbf ( a ) _ ( n ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( 1 ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ) & = ( \frac ( ( mathbf ( a ) _ ( n ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( 1 ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ( ( mathbf ( a ) _ ( n ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( 1 ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ) end ( aligned ) ) ) If a are linearly independent, then the x k ( displaystyle x_ ( k ) ) can be expressed in determinant form identical to Cramer 's Rule as x k = ( a n ∧ ⋯ ∧ ( c ) k ∧ ⋯ ∧ a 1 ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) ( a n ∧ ⋯ ∧ a k ∧ ⋯ ∧ a 1 ) ⋅ ( a 1 ∧ ⋯ ∧ a k ∧ ⋯ ∧ a n ) = a 1 ⋅ a 1 ⋯ a 1 ⋅ ( c ) k ⋯ a 1 ⋅ a n ⋮ ⋱ ⋮ ⋱ ⋮ a k ⋅ a 1 ⋯ a k ⋅ ( c ) k ⋯ a k ⋅ a n ⋮ ⋱ ⋮ ⋱ ⋮ a n ⋅ a 1 ⋯ a n ⋅ ( c ) k ⋯ a n ⋅ a n a 1 ⋅ a 1 ⋯ a 1 ⋅ a k ⋯ a 1 ⋅ a n ⋮ ⋱ ⋮ ⋱ ⋮ a k ⋅ a 1 ⋯ a k ⋅ a k ⋯ a k ⋅ a n ⋮ ⋱ ⋮ ⋱ ⋮ a n ⋅ a 1 ⋯ a n ⋅ a k ⋯ a n ⋅ a n − 1 = a 1 ⋮ a k ⋮ a n a 1 ⋯ ( c ) k ⋯ a n a 1 ⋮ a k ⋮ a n − 1 a 1 ⋯ a k ⋯ a n − 1 = a 1 ⋯ ( c ) k ⋯ a n a 1 ⋯ a k ⋯ a n − 1 = a 11... c 1 ⋯ a 1 n ⋮ ⋱ ⋮ ⋱ ⋮ a k 1 ⋯ c k ⋯ a k n ⋮ ⋱ ⋮ ⋱ ⋮ a n 1 ⋯ c n ⋯ a n n a 11... a 1 k ⋯ a 1 n ⋮ − 1 ( displaystyle ( \begin ( aligned ) x_ ( k ) & = ( \frac ( ( mathbf ( a ) _ ( n ) wedge cdots wedge ( mathbf ( c ) ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( 1 ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ( ( mathbf ( a ) _ ( n ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( 1 ) ) cdot ( mathbf ( a ) _ ( 1 ) wedge cdots wedge mathbf ( a ) _ ( k ) wedge cdots wedge mathbf ( a ) _ ( n ) ) ) ) ( 8pt ) & = ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( 1 ) cdot ( mathbf ( c ) ) _ ( k ) & cdots & mathbf ( a ) _ ( 1 ) cdot mathbf ( a ) _ ( n ) \vdots & ddots & \vdots & ddots & \vdots mathbf ( a ) _ ( k ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( k ) cdot ( mathbf ( c ) ) _ ( k ) & cdots & mathbf ( a ) _ ( k ) cdot mathbf ( a ) _ ( n ) \vdots & ddots & \vdots & ddots & \vdots mathbf ( a ) _ ( n ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( n ) cdot ( mathbf ( c ) ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) cdot mathbf ( a ) _ ( n ) end ( vmatrix ) ) ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( 1 ) cdot mathbf ( a ) _ ( k ) & cdots & mathbf ( a ) _ ( 1 ) cdot mathbf ( a ) _ ( n ) \vdots & ddots & \vdots & ddots & \vdots mathbf ( a ) _ ( k ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( k ) cdot mathbf ( a ) _ ( k ) & cdots & mathbf ( a ) _ ( k ) cdot mathbf ( a ) _ ( n ) \vdots & ddots & \vdots & ddots & \vdots mathbf ( a ) _ ( n ) cdot mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( n ) cdot mathbf ( a ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) cdot mathbf ( a ) _ ( n ) end ( vmatrix ) ) ^ ( - 1 ) ( 8pt ) & = ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) \vdots mathbf ( a ) _ ( k ) \vdots mathbf ( a ) _ ( n ) end ( vmatrix ) ) ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) & cdots & ( mathbf ( c ) ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) end ( vmatrix ) ) ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) \vdots mathbf ( a ) _ ( k ) \vdots mathbf ( a ) _ ( n ) end ( vmatrix ) ) ^ ( - 1 ) ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) end ( vmatrix ) ) ^ ( - 1 ) ( 8pt ) & = ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) & cdots & ( mathbf ( c ) ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) end ( vmatrix ) ) ( \begin ( vmatrix ) mathbf ( a ) _ ( 1 ) & cdots & mathbf ( a ) _ ( k ) & cdots & mathbf ( a ) _ ( n ) end ( vmatrix ) ) ^ ( - 1 ) ( 8pt ) & = ( \begin ( vmatrix ) a_ ( 11 ) & ldots &c_ ( 1 ) & cdots &a_ ( 1n ) \vdots & ddots & \vdots & ddots & \vdots a_ ( k1 ) & cdots &c_ ( k ) & cdots &a_ ( kn ) \vdots & ddots & \vdots & ddots & \vdots a_ ( n1 ) & cdots &c_ ( n ) & cdots &a_ ( nn ) end ( vmatrix ) ) ( \begin ( vmatrix ) a_ ( 11 ) & ldots &a_ ( 1k ) & cdots &a_ ( 1n ) \vdots end ( vmatrix ) ) ^ ( - 1 ) end ( aligned ) ) ) where ( c ) denotes the substitution of vector a with vector c in the k - th numerator position. Incompatible and indeterminate cases A system of equations is said to be incompatible or inconsistent when there are no solutions and it is called indeterminate when there is more than one solution. For linear equations, an indeterminate system will have infinitely many solutions ( if it is over an infinite field ), since the solutions can be expressed in terms of one or more parameters that can take arbitrary values. Cramer 's rule applies to the case where the coefficient determinant is nonzero. In the 2 × 2 case, if the coefficient determinant is zero, then the system is incompatible if the numerator determinants are nonzero, or indeterminate if the numerator determinants are zero. For 3 × 3 or higher systems, the only thing one can say when the coefficient determinant equals zero is that if any of the numerator determinants are nonzero, then the system must be incompatible. However, having all determinants zero does not imply that the system is indeterminate. A simple example where all determinants vanish ( equal zero ) but the system is still incompatible is the 3 × 3 system x + y + z = 1, x + y + z = 2, x + y + z = 3. References Jump up ^ Cramer, Gabriel ( 1750 ). `` Introduction à l'Analyse des lignes Courbes algébriques '' ( in French ). Geneva : Europeana. pp. 656 -- 659. Retrieved 2012 - 05 - 18. Jump up ^ Kosinski, A.A. ( 2001 ). `` Cramer 's Rule is due to Cramer ''. Mathematics Magazine. 74 : 310 -- 312. doi : 10.2307 / 2691101. Jump up ^ MacLaurin, Colin ( 1748 ). A Treatise of Algebra, in Three Parts. Jump up ^ Boyer, Carl B. ( 1968 ). A History of Mathematics ( 2nd ed. ). Wiley. p. 431. Jump up ^ Katz, Victor ( 2004 ). A History of Mathematics ( Brief ed. ). Pearson Education. pp. 378 -- 379. Jump up ^ Hedman, Bruce A. ( 1999 ). `` An Earlier Date for `` Cramer 's Rule '' '' ( PDF ). Historia Mathematica. 26 ( 4 ) : 365 -- 368. doi : 10.1006 / hmat. 1999.2247. Jump up ^ David Poole ( 2014 ). Linear Algebra : A Modern Introduction. Cengage Learning. p. 276. ISBN 978 - 1 - 285 - 98283 - 0. Jump up ^ Joe D. Hoffman ; Steven Frankel ( 2001 ). Numerical Methods for Engineers and Scientists, Second Edition,. CRC Press. p. 30. ISBN 978 - 0 - 8247 - 0443 - 8. Jump up ^ Thomas S. Shores ( 2007 ). Applied Linear Algebra and Matrix Analysis. Springer Science & Business Media. p. 132. ISBN 978 - 0 - 387 - 48947 - 6. Jump up ^ Nicholas J. Higham ( 2002 ). Accuracy and Stability of Numerical Algorithms : Second Edition. SIAM. p. 13. ISBN 978 - 0 - 89871 - 521 - 7. Jump up ^ Zhiming Gong ; M. Aldeen ; L. Elsner ( 2002 ). `` A note on a generalized Cramer 's rule ''. Linear Algebra and its Applications. 340 : 253 -- 254. doi : 10.1016 / S0024 - 3795 ( 01 ) 00469 - 4. Jump up ^ Ken Habgood ; Itamar Arel ( 2012 ). `` A condensation - based application of Cramerʼs rule for solving large - scale linear systems '' ( PDF ). Journal of Discrete Algorithms. 10 : 98 -- 109. doi : 10.1016 / j. jda. 2011.06. 007. Jump up ^ Levi - Civita, Tullio ( 1926 ). The Absolute Differential Calculus ( Calculus of Tensors ). Dover. pp. 111 -- 112. ISBN 9780486634012. Jump up ^ Robinson, Stephen M. ( 1970 ). `` A Short Proof of Cramer 's Rule ''. Mathematics Magazine. 43 : 94 -- 95. External links Wikibooks has a book on the topic of : Linear Algebra / Cramer 's Rule Proof of Cramer 's Rule WebApp descriptively solving systems of linear equations with Cramer 's Rule Online Calculator of System of linear equations Linear algebra Basic concepts Scalar Vector Vector space Scalar multiplication Vector projection Linear span Linear map Linear projection Linear independence Linear combination Basis Column space Row space Dual space Orthogonality Kernel Eigenvalues and eigenvectors Outer product Inner product space Dot product Transpose Gram -- Schmidt process Linear equations Vector algebra Cross product Triple product Seven - dimensional cross product Multilinear algebra Geometric algebra Exterior algebra Bivector Multivector Matrices Block Decomposition Invertible Minor Multiplication Rank Transformation Cramer 's rule Gaussian elimination Numerical Floating point Matrix Laboratory Numerical stability Basic Linear Algebra Subprograms ( BLAS ) Sparse matrix Comparison of linear algebra libraries Comparison of numerical analysis software Retrieved from `` https://en.wikipedia.org/w/index.php?title=Cramer%27s_rule&oldid=812188070 '' Categories : Linear algebra Theorems in algebra Determinants 1750 in science Hidden categories : CS1 French - language sources ( fr ) Talk Contents About Wikipedia Azərbaycanca Català Čeština Deutsch Ελληνικά Español Esperanto فارسی Français 한국어 हिन्दी Bahasa Indonesia Íslenska Italiano עברית Latina Latviešu Magyar Nederlands 日本 語 Norsk Polski Português Русский Shqip Slovenščina Српски / srpski Suomi Svenska தமிழ் Українська 中文 Edit links This page was last edited on 26 November 2017, at 14 : 17. Text is available under the Creative Commons Attribution - ShareAlike License ; additional terms may apply. By using this site, you agree to the Terms of Use and Privacy Policy. Wikipedia ® is a registered trademark of the Wikimedia Foundation, Inc., a non-profit organization. About Wikipedia

Question: can cramer's rule be used to solve any system of equations
Answer: Cramer's rule is an explicit formula for the solution of a system of linear equations with as many equations as unknowns, valid whenever the system has a unique solution. It expresses the solution in terms of the determinants of the (square) coefficient matrix and of matrices obtained from it by replacing one column by the vector of right-hand-sides of the equations.