如何在Python中用Z3求拉格朗日插值多项式?
我正在用Z3库和Python语言学习数学,我不知道怎样才能找到基于拉格朗日插值多项式的多项式? 例如 我想找到f(X)如何在Python中用Z3求拉格朗日插值多项式?,python,z3,polynomial-math,Python,Z3,Polynomial Math,我正在用Z3库和Python语言学习数学,我不知道怎样才能找到基于拉格朗日插值多项式的多项式? 例如 我想找到f(X) 我与Scipy合作得很好,但是当切换到Z3库时,我已经找不到更多的文档了:(我不知道如何在Z3的上下文中回答您的问题。 Z3不包含任何用于拉格朗日插值的内置解算器。 可以设置一组多项式等式,其中系数保持为符号。 然后你可以问Z3这个系统是否是可解的,它为系数生成一般的代数数,所以我不确定这是否适合你的应用。 当然,在python中,您可以编写: a, b, c = Real('
我与Scipy合作得很好,但是当切换到Z3库时,我已经找不到更多的文档了:(我不知道如何在Z3的上下文中回答您的问题。 Z3不包含任何用于拉格朗日插值的内置解算器。 可以设置一组多项式等式,其中系数保持为符号。 然后你可以问Z3这个系统是否是可解的,它为系数生成一般的代数数,所以我不确定这是否适合你的应用。 当然,在python中,您可以编写:
a, b, c = Real('a b c')
def f(X):
return a*X*X + b*X + c
solve(f(0) == y0, f(1) == y1, f(2) == y2)
其中,
y0
,y1
,y2
是常数。拉格朗日插值不同于逻辑克雷格插值。Z3是克雷格插值。您可能会感兴趣。
a, b, c = Real('a b c')
def f(X):
return a*X*X + b*X + c
solve(f(0) == y0, f(1) == y1, f(2) == y2)