首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Z3RCF-Py证明当x=1时diff(x ^2,x) =2?

如何使用Z3RCF-Py证明当x=1时diff(x ^2,x) =2?
EN

Stack Overflow用户
提问于 2013-05-16 21:59:11
回答 1查看 117关注 0票数 2

我使用了以下代码:

代码语言:javascript
复制
eps = MkInfinitesimal()
print(( (1 + eps)**2- 1**2)/eps < 2.00000000001)
print(( (1 + eps)**2- 1**2)/eps > 2)

输出结果为:

代码语言:javascript
复制
True
True

其他例子:证明当x= pi时diff(x^2,x) = 2*pi,当x=e时diff(x^2,x) = 2*e

代码:

代码语言:javascript
复制
eps1 = MkInfinitesimal()
eps2 = MkInfinitesimal() # eps2 is infinitely smaller thant eps1
pi = Pi()
e = E()
print(( (pi + eps2)**2- pi**2)/eps2 < 2*pi + eps1)
print(( (pi + eps2)**2- pi**2)/eps2 > 2*pi)
print(( (e + eps2)**2- e**2)/eps2 < 2*e + eps1)
print(( (e + eps2)**2- e**2)/eps2 > 2*e)

输出:

代码语言:javascript
复制
True
True
True
True

其他例子:证明当x=e或x= pi时diff(x^3,x) = 3*x^2。

代码:

代码语言:javascript
复制
eps1 = MkInfinitesimal()
eps2 = MkInfinitesimal() # eps2 is infinitely smaller thant eps1
pi = Pi()
e = E()
print(( (pi + eps2)**3- pi**3)/eps2 < 3*pi**2 + eps1)
print(( (pi + eps2)**3- pi**3)/eps2 > 3*pi**2)
print(( (e + eps2)**3- e**3)/eps2 < 3*e**2 + eps1)
print(( (e + eps2)**3- e**3)/eps2 > 3*e**2)

输出:

代码语言:javascript
复制
True
True
True
True

其他示例:

代码:

代码语言:javascript
复制
[x] = MkRoots([-1, -1, 0, 0, 0, 1])
[y] = MkRoots([-197, 3131, -31*x**2, 0, 0, 0, 0, x])
[z] = MkRoots([-735*x*y, 7*y**2, -1231*x**3, 0, 0, y])
print(x.decimal(10))
print(y.decimal(10))
print(z.decimal(10))
eps1 = MkInfinitesimal()
eps2 = MkInfinitesimal() # eps2 is infinitely smaller thant eps1
print(( (x + eps2)**2- x**2)/eps2 < 2*x + eps1)
print(( (x + eps2)**2- x**2)/eps2 > 2*x)
print(( (y + eps2)**2- y**2)/eps2 < 2*y + eps1)
print(( (y + eps2)**2- y**2)/eps2 > 2*y)
print(( (z + eps2)**2- z**2)/eps2 < 2*z + eps1)
print(( (z + eps2)**2- z**2)/eps2 > 2*z)

输出:

代码语言:javascript
复制
1.1673039782?
0.0629726948?
31.4453571397?
True
True
True
True
True
True

这个证明是正确的吗?如果你有更好的证据,请告诉我。非常感谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-17 01:32:12

这是一个很好的例子。Z3Py的下一个正式版本中将提供Z3RCF API。

顺便说一句,你可以在Z3RCF中创建许多无穷小。每一个都比之前创建的小得多。下面是相同的示例,但它通过使用两个不同的无穷小来避免2.0000000001 (它也是可用的here)。

代码语言:javascript
复制
eps1 = MkInfinitesimal()
eps2 = MkInfinitesimal() # eps2 is infinitely smaller thant eps1
print(( (1 + eps2)**2- 1**2)/eps2 < 2 + eps1)
print(( (1 + eps2)**2- 1**2)/eps2 > 2)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16589491

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档