I'm somewhat new to Mathematica and want to check symbolic solutions to small positive definite symmetric matrices (like 3x3 in size), which I think should in general yield a symbolic solution since you can get eigenvalues symbolically (Which we want to assume to be all positive). I was trying Assuming[] directive, but it seems not to be evaluating well for constraints like this:
A = {{a00, a01, a02}, {a10, a11, a12}, {a20, a21, a22}}
ATA = Transpose[A]*A
Assuming[{a00, a01, a02, a11, a12, a22} \[Element] Reals ,
PositiveDefiniteMatrixQ[ATA]]
The last line gives False. Trying Eigenvalues[ATA]>0 also doesn't work. What is the correct way to define a symbolic positive definite symmetric matrix?
Qdo simple checks of whether something is true. If they can't determine this, they return false. $\endgroup$PositiveDefiniteMatrixQignoresAssumingand treats all variables as complex even thoughAssumingsays otherwise. $\endgroup$PositiveDefiniteMatrixQsays otherwise, namely, "PositiveDefiniteMatrixQ works for symbolic as well as numerical matrices.". $\endgroup$PositiveDefiniteMatrixQ[ATA]be False? It is not "explicitly positive definite." One might ask what that means. Well, I think it means that the matrix is, in its given form (and without assumptions), positive definite and cannot be not positive-definite. AndATAcan be not positive-definite, if, say, all the entries of A are zero. Since, according to the docs, "PositiveDefiniteMatrixQ[m]gives...Falseotherwise, I think theFalseresult is correct. $\endgroup$PositiveDefiniteMatrixQ[]returnsTrue? Come up with mathematically equivalent conditions even if Mathematica cannot apply them in whatever use-cases you have in mind? — Indeed, what use-cases do you have in mind? $\endgroup$