我希望证明涉及矩阵和向量的表达式的性质(可能是大规模的,但大小是固定的)。
例如,我想证明表达式的结果是一个对角线矩阵或三角形矩阵,或者它是正定的,...
为此,我想编码线性代数中众所周知的性质和恒等式,例如:
||x + y|| <= ||x|| + ||y||
(A * B) * C = A * (B * C)
det(A+B) = det(A) + det(B)
Tr(zA) = z * Tr(A)
(I + AB) ^ (-1) = I - A(I + BA) ^ (-1) * B
...
我尝试在Z3中实现这个功能。但即使是简单的属性也会返回未知或超时。我已经尝试了数组理论和量词。
我想知道是否可以使用SMT求解器来解决这个问题,还是说它不适合这种类型的问题?你能否通过给出一个小例子来提示一下?