PositiveSemidefiniteMatrixQ
✖
PositiveSemidefiniteMatrixQ
Details and Options

- A matrix m is positive semidefinite if Re[Conjugate[x].m.x]≥0 for all vectors x. »
- PositiveSemidefiniteMatrixQ works for symbolic as well as numerical matrices.
- For approximate matrices, the option Tolerance->t can be used to indicate that all eigenvalues λ satisfying λ≤t λmax are taken to be zero where λmax is an eigenvalue largest in magnitude.
- The option Tolerance has Automatic as its default value.
Examples
open allclose allBasic Examples (2)Summary of the most common use cases
Test if a 2×2 real matrix is explicitly positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-c31f7e

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-e0jun2

This means that the quadratic form for all vectors
:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-dbel4l

Visualize the values of the quadratic form:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-uu2a3

Test if a 3×3 Hermitian matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-wvw84j

Scope (10)Survey of the scope of standard use cases
Basic Uses (6)
Test if a real machine-precision matrix is explicitly positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-u5nvc8

Test if a complex matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gh9car

Test if an exact matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-18kovk

Use PositiveSemidefiniteMatrixQ with an arbitrary-precision matrix:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-h89ze5

A random matrix is typically not positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-e792ql

Use PositiveSemidefiniteMatrixQ with a symbolic matrix:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-3mvzb

The matrix becomes positive semidefinite when :

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-fz0wna

PositiveSemidefiniteMatrixQ works efficiently with large numerical matrices:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-bjhh1d

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-n2hz99


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-pcc5uf

Special Matrices (4)
Use PositiveSemidefiniteMatrixQ with sparse matrices:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-c1kclu


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-dkghyq

Use PositiveSemidefiniteMatrixQ with structured matrices:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-f39gxg


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-c0k3bb

The identity matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kkhgb9

HilbertMatrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ou7ra

Options (1)Common values & functionality for each option
Tolerance (1)
Generate a real-valued diagonal matrix with some random perturbation of order 10-12:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-35lu76


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-mrsvrl

Adjust the option Tolerance to accept matrices as positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cbjh4n

Applications (13)Sample problems that can be solved with this function
The Geometry and Algebra of Positive Semidefinite Matrices (5)
Consider a real, positive semidefinite 2×2 matrix and its associated real quadratic :

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-4qdqkt


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cwuc79
Because is positive definite, the level sets are ellipses:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-psoigb

The plot of will be an upward-facing elliptic paraboloid:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-d843tc

However, the ellipses can be degenerate, turning into lines:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-q0w79d


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gdejj8

The plot of is then a cylinder over a parabola:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cbyki8

In an even more extreme case, the level set can be the whole plane as :

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-orrko


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-dv555m

For a real, positive semidefinite matrix, the level sets are
-ellipsoids:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-4k07zj

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-rdk3t


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-z3j76n

In three dimensions, these can degenerate into cylinders over ellipses:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kkyuyx


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-m0es35


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-72h79


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-9fyb60

A Hermitian matrix defines a real-valued quadratic form by :

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-b1o4wi

If is positive semidefinite,
is non-negative for all inputs:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-7b0a2q

Visualize for real-valued inputs:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-iznf0y

For a real-valued matrix , only the symmetric part determines whether
is positive semidefinite. Write
with
symmetric and
antisymmetric:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-pextao


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-4lefur


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-w8i23t

As is real and symmetric
, meaning
is purely real:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-pz7f27

Similarly, as is real and antisymmetric
, or
is pure imaginary:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-b4fz3d

Thus, , so
is positive semidefinite if and only if
is:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ezj37z

For a complex-valued matrix , only the Hermitian part determines whether
is positive semidefinite. Write
with
Hermitian and
antihermitian:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-6c2p1w


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-dt5ung


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kk7abf

As is Hermitian,
, meaning
is purely real:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cyeors

Similarly, as is antihermitian,
, or
is pure imaginary:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-tuq2n3

Thus, , so
is positive semidefinite if and only if
is:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-wynbjl

Sources of Positive Definite Matrices (8)
A real Covariance matrix is always symmetric and positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-63zlf0


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-7qei0x

Compute SingularValueDecomposition[m] for a square matrix :

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kavoox
The matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-jvopwy

A Gram matrix is a symmetric matrix of dot products of
vectors:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-3omeb9
A Gram matrix is always positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-66kz55

Matrices drawn from WishartMatrixDistribution are real, symmetric and positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-fumfwl

The squares of Hermitian matrices are positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-qvq35b

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-vb9gbl


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-375ry9

Every antihermitian matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-xmavah

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-9jo6qx

The Lehmer matrix is symmetric positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ussbrh

Its inverse is tridiagonal, which is also symmetric positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-rrqk5z


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-jn6weu

The matrix Min[i,j] is always symmetric positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-w3rhb3

Its inverse is a tridiagonal matrix, which is also symmetric positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-zvrmcu


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-o26q63

Properties & Relations (13)Properties of the function, and connections to other functions
PositiveSemidefiniteMatrixQ[x] trivially returns False for any x that is not a matrix:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-dqapjm

A matrix is positive semidefinite if
for all vectors
:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gmli2h


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-mta52e


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-g6epke


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-baqk5m

A real matrix is positive semidefinite if and only if its symmetric part is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-9qtiwq

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-rb9q7z

In general, a matrix is positive semidefinite if and only if its Hermitian part is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-14t2ug

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-25vn6e

A real symmetric matrix is positive semidefinite if and only if its eigenvalues are all non-negative:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-lvrqac

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-y7xo3d


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ci3ch7

The statement is true of Hermitian matrices more generally:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-tcv068

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-xbmhv8

A general matrix can have all non-negative eigenvalues without being positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-uagz73


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-5sccn6

Equally, a matrix can be positive semidefinite without having non-negative eigenvalues:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-iq06qf


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-czg1x7

The failure is due to the eigenvalues being complex:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cg8694

The real part of the eigenvalues of a positive semidefinite matrix must be non-negative:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-7tody6

A diagonal matrix is positive semidefinite if and only if diagonal elements have non-negative real parts:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-7r565l


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-oufqfk

A positive semidefinite matrix has the general form with a diagonal positive semidefinite
:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ez2xwd

Split into its Hermitian and antihermitian parts:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gbg565

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-hypszb
By the spectral theorem, can be unitarily diagonalized using JordanDecomposition:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kxey6a
The matrix is diagonal with non-negative diagonal entries:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-86zpfk


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-354tyu


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-thgk4f

A matrix is positive semidefinite if and only if
is negative semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-d4t288

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ln3hz2

A positive definite matrix is always positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ro5rrb

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ohynei

There are positive semidefinite matrices that are not positive definite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-0te9r8

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-r6bqzu

A positive semidefinite matrix cannot be indefinite or negative semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-zm4l89

The determinant and trace of a real, symmetric, positive semidefinite matrix are non-negative:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-z5vlas

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-2y5rpx


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kiha9k

This is also true of positive semidefinite Hermitian matrices:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-1thw6z

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-1t41ye


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ubj972

A real symmetric positive semidefinite matrix has a uniquely defined square root
such that
:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-qh1735

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-l7wkfw


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-djh3oh


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-50d1ue

The square root is positive semidefinite and real symmetric:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-kys4zq

A Hermitian positive semidefinite matrix has a uniquely defined square root
such that
:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cw28te

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-538yei


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-6h193i


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-7vdutw

The square root is positive semidefinite and Hermitian:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ikzo31

The Kronecker product of two symmetric positive semidefinite matrices is symmetric and positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ehmcrn

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-guiykt


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-y09b1

Replacing one matrix in the product by a negative semidefinite one gives a negative semidefinite matrix:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-cs26x


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-ctcpno

Possible Issues (2)Common pitfalls and unexpected behavior
CholeskyDecomposition does not work with symmetric or Hermitian positive semidefinite matrices that are singular:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gb4v8k


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-fh02j4


PositiveSemidefiniteMatrixQ gives False unless it can prove a symbolic matrix is positive semidefinite:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-0vrwdm

Using a combination of Eigenvalues and Reduce can give more precise results:

https://wolfram.com/xid/0bhf3wgupbucv1cods4z-gixlky


https://wolfram.com/xid/0bhf3wgupbucv1cods4z-n8xyss

Wolfram Research (2014), PositiveSemidefiniteMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.
Text
Wolfram Research (2014), PositiveSemidefiniteMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.
Wolfram Research (2014), PositiveSemidefiniteMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.
CMS
Wolfram Language. 2014. "PositiveSemidefiniteMatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.
Wolfram Language. 2014. "PositiveSemidefiniteMatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html.
APA
Wolfram Language. (2014). PositiveSemidefiniteMatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html
Wolfram Language. (2014). PositiveSemidefiniteMatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html
BibTeX
@misc{reference.wolfram_2025_positivesemidefinitematrixq, author="Wolfram Research", title="{PositiveSemidefiniteMatrixQ}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html}", note=[Accessed: 26-March-2025
]}
BibLaTeX
@online{reference.wolfram_2025_positivesemidefinitematrixq, organization={Wolfram Research}, title={PositiveSemidefiniteMatrixQ}, year={2014}, url={https://reference.wolfram.com/language/ref/PositiveSemidefiniteMatrixQ.html}, note=[Accessed: 26-March-2025
]}