我想求$[a^3b^3c^3]$在$$ igg[1- igg( rac{a+a^2}{1-(a+a^2 )}+ rac{b+b^2}{1-(b+b^2)}+ rac{c+c^2}{1-(c+c^2)} igg) igg]^( -1)$$
我在互联网上研究了这个多变量生成函数的系数,但找不到有价值的东西。你能帮我用 Sagemath 计算系数吗?
注意=我不明白为什么 mathjax 语法在这里不起作用
你可能可以这样做:
R.<a, b, c> = LazyPowerSeriesRing(ZZ)
f = lambda x: (x + x**2)/(1 - (x + x**2))
g = 1/(1 - (f(a) + f(b) + f(c)))
p = g.coefficient(9)
p.coefficient([3, 3, 3])
# Prints 36138, see below for data type discussion.
我用
LazyPowerSeriesRing
来描述生成函数。使用 f
作为帮助程序来节省一些输入,我将 g
定义为您的问题的生成函数(除非我犯了错误)。如果您在问题中为该函数提供了一些实际的 Sage 代码,将会有所帮助。
本系列的
coefficient
方法采用单个整数参数。对于多元序列,该整数是“总”度数。因此,对于 a3b3c3 来说,这将是 9。该调用的结果是一个多项式,其中每个单项式的次数为 9。然后,我从该多项式中提取该特定次数组合的系数。
请注意,p.coefficient
返回的不是整数(如您所期望的),而是同一多元环的常数多项式。由于某种原因,
monomial_coefficient
似乎没有将学位列表作为参数。另请注意,多项式不定式在技术上与系列中的不定式不同,即使它们都打印为 a
、b
和 c
。所以你不能写p.monomial_coefficient(a**3 * b**3 * c**3)
。您可以采取以下方法之一:aa, bb, cc = p.parent().gens()
p.coefficient(aa**3 * bb**3 * cc**3) # Same as above, for comparison.
p.monomial_coefficient(aa**3 * bb**3 * cc**3) # An integer.
p.coefficient([3, 3, 3]).constant_coefficient() # Again an integer.
您还可以编写自己的便利助手:
def series_coeff(series, monomial):
p = monomial.polynomial()
return series.coefficient(p.degree()).monomial_coefficient(p)
series_coeff(g, a**3 * b**3 * c**3)
参考链接: