0

我在处理 Pari 中的多项式和在文档中找到正确的命令时遇到了一些问题。

  1. 是否可以定义具有多个变量的多项式,例如 f(x,y)=x^2+y^2-1
  2. 如何以特定值评估先前定义的多项式(通过使用 Pol() )?
4

2 回答 2

3

是的,可以使用具有多个变量的多项式。例如x^2 + y^2 - 1是变量中的多项式xy。用于subst计算特定值的多项式。例如,subst(x^2 + y^2 - 1, y, 3)给出x^2 + 8.

PARI 假设任何未定义的变量都是多项式。上述工作是因为 x 和 y 没有被赋予另一个定义。出于这个原因,最好避免将 x 和 y 用于其他事情。例如,如果您输入x=5, thenx被定义为 5 并且将不再被解释为多项式。

Now f(x,y)=x^2+y^2-1不是多项式,而是具有两个形式参数x和的函数定义y。您可以f使用多项式参数调用xy获取多项式,也可以f使用其他参数调用。例如,f(x,y)返回多项式x^2 + y^2 - 1f(x, 3)返回x^2 + 8

的目的Pol()是将其他东西(例如向量)转换为多项式。例如,Pol([3,1,5])给出3*x^2 + x + 5.

于 2018-01-12T01:57:03.230 回答
1

PARI 也做幂级数。例如1/(1-x-x^2) + O(x^20)是幂级数展开最多 20 项。您需要指定所需的术语数(PARI 不会无限扩展)。用于Vec()转换为向量。例如,Vec(1/(1-x-x^2) + O(x^20))给出斐波那契数列的前 20 个项。

多变量幂级数也是可能的,但您需要注意变量优先级。如果您x用作主要幂级数变量(不确定)并y用作次要变量,它将起作用。另一方面,如果您想z用作主要变量和t次要变量,您可能会遇到问题,具体取决于第一次使用的z顺序t。变量的优先级是一个混乱的问题,最好通过知道它来避免,x并且y预定义的x优先级高于y.

(如果您有更多问题,请提交一个新问题 - 我真的不希望它成为所有 PARI 功能的博客!)

于 2018-01-12T16:57:27.767 回答