Sylvester's Criterion Calculator
Introduction: What this Sylvester's Criterion Calculator does
This calculator tests the definiteness of a real symmetric matrix using Sylvester's criterion. For a chosen size (2×2, 3×3, or 4×4), you enter the entries of a symmetric matrix. The tool computes leading principal minors (determinants of the top-left k×k blocks) for strict definiteness and all principal minors for semidefinite cases, then classifies the matrix as positive definite, negative definite, positive semidefinite, negative semidefinite, or indefinite, when possible.
How to use the calculator
- Choose the matrix size. Select 2×2, 3×3, or 4×4 from the matrix size menu. The calculator supports only these sizes so that all necessary minors can be computed quickly.
-
Enter a real symmetric matrix.
Fill in the matrix entries using real numbers (integers, decimals, or
fractions in decimal form). Sylvester's criterion is stated for
real symmetric matrices, so in theory you should have
aij = aji. If you enter a non-symmetric matrix, the calculator stops and asks you to correct the mirrored entries before it applies the definiteness tests. - Run the test. Click the button to check definiteness. The script builds each leading principal submatrix, computes its determinant, and then analyzes the sign pattern of these determinants.
- Read the result summary. The output tells you whether the matrix is classified as positive definite, negative definite, semidefinite, or indefinite, and it shows the determinant values used to make that decision.
This is especially useful if you are checking Hessian matrices in optimization, testing covariance matrices in statistics, or analyzing stability in differential equations without computing eigenvalues explicitly.
Key formulas: leading principal minors and Sylvester's criterion
Let A be an n×n real symmetric matrix. For each k = 1, 2, …, n, the k-th leading principal minor is the determinant of the top-left k×k block of A. Denote this determinant by Δk.
In compact form, if we write the k×k leading principal submatrix as Ak, then
Delta_k = det(A_k)
For small matrices, this becomes very explicit. For a 2×2 matrix
A = [ [a, b],
[b, c] ]
- Δ1 = a
- Δ2 = det(A) = ac − b2
For a 3×3 matrix
A = [ [a, d, e],
[d, b, f],
[e, f, c] ]
- Δ1 = a
- Δ2 = det of the top-left 2×2 block = ab − d2
- Δ3 = det(A), which can be expanded by standard determinant formulas.
Sylvester's criterion for a real symmetric matrix states:
- A is positive definite if and only if Δk > 0 for all k = 1, …, n.
- A is negative definite if and only if the signs of Δk alternate starting with negative: Δ1 < 0, Δ2 > 0, Δ3 < 0, …
When some minors are zero, you cannot conclude strict definiteness, but you may still be able to recognize positive or negative semidefiniteness (see the limitations and special cases below).
Interpreting the calculator's results
The calculator examines the sign pattern of the leading principal minors for strict definiteness and all principal minors for semidefinite cases, then assigns one of the following labels:
- Positive definite – all leading principal minors are strictly positive.
- Negative definite – the signs alternate starting with negative: Δ1 < 0, Δ2 > 0, Δ3 < 0, and so on.
- Indefinite – the leading principal minors show a pattern that rules out positive or negative definiteness; in particular you see both positive and negative values in a way that does not match the alternating rule.
- Positive semidefinite – all principal minors are nonnegative, with at least one zero or near-zero value. The calculator checks every principal minor for the selected 2×2, 3×3, or 4×4 size before using this label.
- Negative semidefinite – the principal minors match the sign pattern for -A: odd-order principal minors are nonpositive and even-order principal minors are nonnegative, again with at least one zero or near-zero value.
Because the test is sensitive to small numerical values, the script treats determinants whose absolute value is extremely close to zero as zero within a small numerical tolerance. This helps avoid misclassifying matrices when rounding errors occur in floating-point arithmetic.
Worked examples
Example 1: 2×2 positive definite matrix
Consider the symmetric 2×2 matrix
A = [ [2, 1],
[1, 2] ].
The leading principal minors are
- Δ1 = 2
- Δ2 = det(A) = 2·2 − 1·1 = 3
Both minors are positive, so by Sylvester's criterion the matrix is positive definite. The quadratic form xTAx is strictly positive for every nonzero vector x.
Example 2: 3×3 positive definite matrix
Take the symmetric 3×3 matrix mentioned in the original explanation:
A = [ [4, 1, 2],
[1, 3, 0],
[2, 0, 5] ].
Then
- Δ1 = 4
- Δ2 = det of the top-left 2×2 block = 4·3 − 1·1 = 11
- Δ3 = det(A) = 44 (as computed by the underlying script).
All three minors are strictly positive, so the calculator will report that A is positive definite.
If we replace the 4 in the upper-left corner with −4, producing
B = [ [-4, 1, 2],
[ 1, 3, 0],
[ 2, 0, 5] ],
the signs of the minors change to an alternating pattern (negative, positive, negative), and the calculator classifies B as negative definite.
Summary of sign patterns and matrix types
The table below summarizes how the calculator interprets leading principal minors for strict definiteness and all principal minors for semidefinite cases.
| Condition checked | Typical classification | What it means for xTAx |
|---|---|---|
| Δk > 0 for all k = 1, …, n | Positive definite | Strictly positive for all nonzero x; unique minimum at the origin for the associated quadratic form. |
| Δ1 < 0, Δ2 > 0, Δ3 < 0, … (alternating signs) | Negative definite | Strictly negative for all nonzero x; unique maximum at the origin. |
| Principal minors rule out positive semidefiniteness and negative semidefiniteness | Indefinite | Takes both positive and negative values; typical of saddle points in optimization. |
| All principal minors are nonnegative, with at least one zero or near-zero value | Positive semidefinite | Never negative, but may be zero for some nonzero x. |
| Odd-order principal minors are nonpositive and even-order principal minors are nonnegative, with at least one zero or near-zero value | Negative semidefinite | Never positive, but may be zero for some nonzero x. |
| One or more Δk numerically very close to zero while others fit a definite pattern | Borderline / sensitive case | Classification may depend on numerical tolerance; consider rerunning with higher precision or symbolic methods. |
Limitations, assumptions, and special cases
- Real symmetric matrices only. Sylvester's criterion, and the interpretations used by this calculator, are valid for real symmetric matrices. The script does not automatically symmetrize your input; it uses the exact numbers you type. If your matrix is not symmetric, it asks you to correct the mirrored entries before continuing.
- Zero determinants and semidefiniteness. When one or more leading principal minors are exactly zero, strict definiteness is ruled out. The calculator then checks all principal minors to classify positive semidefinite, negative semidefinite, or indefinite behavior.
- Numerical rounding. Determinants are computed using floating-point arithmetic. Very small nonzero determinants may appear as zero within machine precision. To reduce misclassification, the script uses a tolerance and treats |Δk| below that threshold as zero. For highly ill-conditioned matrices, consider using exact or high-precision linear algebra tools.
- No eigenvalues or optimization solutions. This calculator does not compute eigenvalues, eigenvectors, or solve optimization problems. It applies determinant-based criteria: leading principal minors for strict definiteness and all principal minors for semidefiniteness.
- Matrix size limited to 4×4. For simplicity and performance, the interface currently supports 2×2, 3×3, and 4×4 matrices. Larger matrices require the same theory but more computation; for those, a CAS or numerical linear algebra package may be more appropriate.
Related calculators and further study
Once you know whether a matrix is positive or negative definite, you might want to explore related tools:
- Matrix determinant calculator – to compute determinants directly.
- Eigenvalue and eigenvector calculator – to confirm definiteness by checking that all eigenvalues are positive or all are negative.
- Hessian definiteness checker – to diagnose whether a critical point in an optimization problem is a minimum, maximum, or saddle point.
Together, these tools provide a practical toolkit for understanding the curvature and stability properties encoded in matrices across optimization, statistics, physics, and engineering.
Arcade Mini-Game: Sylvester's Criterion Calculator Calibration Run
Use this quick arcade run to practice separating useful scenario inputs from common planning mistakes before you rely on the calculator output.
Start the game, then use your pointer or arrow keys to catch useful inputs and avoid bad assumptions.
Status messages will appear here.
