根据$a_k$,$b_k$
的一些非线性约束,我必须找到以下傅里叶级数表达式的可行集合:
$ x(t)= {a_0+ \sum_{k=1}^{\infty} (a_k\cos(2\pi f_0 kt)+(b_k\sin(2\pi f_0 kt))}
$a_k$,$b_k$
和$a_0$
的约束是
$ L \leq a_0 \leq U $
$ Lower_bound \leq a_k^2+b_k^2 \leq Upper_bound
我可以使用Z3吗?
除此之外,我可以将Z3用于具有复杂功率的指数函数,例如:在傅立叶变换表达式中。
答案 0 :(得分:2)
不幸的是,Z3不支持超常函数,例如sin
,cos
和指数函数。当前版本只能处理非线性多项式约束。
您可以考虑MetiTarski theorem prover。顺便说一下,MetiTarski使用Z3来放电非线性多项式约束。