关于在线使用Z3Py应用Routh-Hurwitz定理的问题

时间:2013-05-08 13:51:20

标签: z3

示例1:

enter image description here

我们使用以下代码

应用RH定理
K = Real('K')
print simplify(And(12 - 3*K >0 , 20 + 0.25*K >0))

,输出为:

¬(K ≥ 4) ∧ ¬(K ≤ -80)

示例2:

enter image description here

我们使用以下代码

应用RH定理
K, a1, a2, a3 = Reals('K a1 a2 a3')
a1 = 20 + 1.5*K
a2 = 4
a3 = 4*K -100
print simplify(And(a1 > 0 , a3 > 0, a1*a2 > a3))

,输出

¬(K ≤ -40/3) ∧ ¬(K ≤ 25) ∧ ¬(K ≤ -90)

示例3:

enter image description here

我们使用以下代码

应用RH定理
K = Real('K')
a1 = 10
a2 = 30 - 2.4*K
a3 =  2
a4 = 100 + 5*K
print simplify(And(a4 > 0, a1*a2*a3 > a3**2 + a4*a1**2))

,输出

¬(K ≤ -20) ∧ ¬(K ≥ -2351/137)

示例4:

enter image description here

我们使用以下代码

应用RH定理
u, s, d, g, N, b , a = Reals('u s d g N b a')
c1 = 2*u + s + d + g
prove(Implies(And(u > 0, s > 0, d >0, g >0), c1 > 0))
c2 = u*g + u**2 + s*u + 2*d*u + s*d + s*g + d*g
c3 = d*u**2 - N*a*b*s + d*u*g + s*d*u + s*d*g
prove(Implies(And(u > 0, s > 0, d >0, g >0, a >0, b > 0, N >0), c1*c2 > c3))

,输出为:

proved
proved

剩余RH条件:c3> 0导致

enter image description here

示例5:

enter image description here

我们使用以下代码

应用RH定理
u, s1, s2, d, g, N, b , a = Reals('u s1 s2 d g N b a')
c1 = d + 3*u + s1 + g + s2
prove(Implies(And(u > 0, s1 > 0, s2 > 0, d >0, g >0), c1 > 0))
c2 = s2*g + 3*d*u + d*g + d*s1+ s1*s2 + 3*u**2 + 2*s2*u + 2*s1*u+ s1*g + 2*u*g + d*s2 
c3 = 2*d*u*g + s1*u*g + 2*d*s2*u + 3*d*u**2 + d*g*s1 + s1*s2*g + u**3 + u*s2*g +  2*d*s1*u + s1*s2*u + g*u**2 + d*g*s2 + s1*u**2 + d*s1*s2 + s2*u**2
prove(Implies(And(u > 0, s1 > 0, s2 >0, d >0, g >0, a >0, b > 0, N >0), c3 > 0))
c4 = d*g*u**2 + d*s2*u**2 + s1*d*u*g + s1*d*s2*u + s1*d*s2*g - N*a*b*s1*s2 + d*u**3 +  s1*d*u**2 + d*u*s2*g
prove(Implies(And(u > 0, s1 > 0, s2 >0, d >0, g >0, a >0, b > 0, N >0), c1*c2*c3 >  c3**2 + c4*c1**2))

,输出为:

proved
proved
proved

它也可以在线试用here

剩余RH条件:c4> 0导致

enter image description here

问题:

  1. 如果您知道更有效的代码解决此类问题,请与我们联系

  2. 如何简化示例1,2和3的输出。

  3. 对于示例4,如何解决c3> 0使用Z3Py然后得到Ro

  4. 的公式
  5. 对于示例5,如何解决c4> 0使用Z3Py然后得到Ro

  6. 的公式

    非常感谢。

0 个答案:

没有答案