zoukankan      html  css  js  c++  java
  • 拉格朗日反演

    拉格朗日反演

    设有两个多项式(F(x))(G(x)),两个多项式都是常数项为(0)(1)次项不为(0),如果满足(G(F(x))=x),则称(F(x))(G(x))互为复合逆,有

    [[x^n]F(x)={1over n}[x^{-1}]{1over G^n(x)} ]

    [[x^n]H(F(x))={1over n}[x^{-1}]H'(x){1over G^n(x)} ]

    其中([x^n]F(x))表示多项式(F(x))(n)次项系数。把(F)(G)交换位置也成立(大概……)

    前置芝士

    当我第一次看到这两个式子的时候是懵逼的,一个好好多项式的哪来的(x^{-1})

    然后看了看发现这好像是抽代里的芝士……我根本不会啊……

    然后随便看了看书……大概是这么定义的

    环:设(R)是一个非空集合,如果(R)上定义了两个代数运算(代数运算就代表有封闭性),一个是加法,一个是乘法,并且满足一下三个条件

    1.(R)对于加法成一个交换群(就是(R)对于加法成一个群,且这个加法满足交换律)

    2.乘法有结合律

    3.乘法对加法有分配律,即(a(b+c)=ab+ac,(b+c)a=ba+ca)(左右都有分配律)

    那么(R)就是一个环

    然后域的定义就是:如果(R)的乘法有单位元,满足交换律,并且每一个非(0)元都可逆,那么(R)就是一个域

    我们平时做的只是在形式幂级数环上的东西,就是形如(a_0+a_1x+a_2x^2+...),记为(F[[x]])(F)是一个域,(OI)里一般都是复数域或者模(P)意义下的域)

    首先它并不是一个域,因为形如(x)这种没有常数项的多项式是不可逆的

    然后我们需要一个域,是一个叫做分式环的东西(虽然叫环但它是个域),为所有形如(ab^{-1},a,bin R,b eq 0)的元素组成(这里除法只是个形式,并不需要(b)真的可逆)。我们把(F[[x]])的分式环记为(F((x)))

    然后(F((x)))中的每个元素都能表示成(...a_{-2}x^{-2}+a_{-1}x^{-1}+a_0+a_1x^1+a^2x^2+...)的形式

    为啥嘞?对于(F((x)))中的每一个元素(A(x)/B(x)),我们把(B(x))表示成(x^dB'(x))的形式,其中(B'(x))是一个常数项非(0)的多项式(不是导数),那么(B'(x))就可逆,计算出(A(x)/B'(x))之后,把每一项次数减去(d)就行了

    那么在(F((x)))下我们就不用担心(B(x))不可逆之类的问题了

    证明

    所以你叽里呱啦说了一大堆有什么用啊!

    对于(G(F(x))=x),我们可以写成

    [sum_{i=1}^infty a_iF^i(x)=x ]

    两边求导,得

    [sum_{i=1}^infty ia_iF^{i-1}(x)F'(x)=1 ]

    这里的(F'(x))就代表(F(x))的导数了

    我们两边同除以(F^n(x)),同时取(x^{-1})的系数

    [[x^{-1}]sum_{i=1}^infty ia_iF^{i-n-1}(x)F'(x)=[x^{-1}]{1over F^n(x)} ]

    对于左边,我们发现当(i eq n)的时候,(F^{i-n-1}(x)F'(x))等价于({1over i-n}(F^{i-n})'(x)),由于任何一个多项式求导之后(-1)次项都为(0)所以这一部分都不用去考虑,只要管(i=n)的时候就行了

    (i=n)的时候,有

    [egin{aligned} F^{-1}(x)F'(x) &={a_1+2a_2x+3a_3x^2+...over a_1x+a_2x^2+a_3x^3+...}\ &=frac{a_1+2a_2x+3a_3x^2+cdots}{a_1x}cdot frac{1}{1+left(frac{a_2}{a_1}x+frac{a_3}{a_1}x^2+cdots ight)}\ end{aligned} ]

    对于后面分母中那个多项式来说,因为它的常数项不为(0)所以它可逆,且它的逆常数项必为(1)。而前面那个多项式只有第一项次数为(-1),而且第一项的系数为(1)

    于是我们发现([x^{-1}]F^{-1}(x)F'(x)=1)

    代入原式中就有(a_n=[x^{-1}]{1over n}{1over F^n(x)})

    然后就证完了

    等会儿,你给我这式子了,那我咋求(x^{-1})?我的形式幂级数里可没有(-1)次项啊?

    因为(F(x))常数项为(0)(1)次项不为(0),我们令(F'(x)=F(x)/x),那么原式就能变成(a_n=[x^{-1}]{1over n}{x^nover F'^n(x)}=[x^{n-1}]{1over n}{1over F'^n(x)}),这就完全转化成形式幂级数的形式了,问题解决

  • 相关阅读:
    HTML3 / 4 / 4.1 / 5 版本升级过程中,变化是怎么样的
    HTML head内所有标签,及其作用
    HTML 和 XHTML和区别
    HTML DOCTYPE 都有哪些,它们之前的区别和用途分别是什么?
    eclipse中英文切换--四种方式
    Eclipse Class Decompiler---Java反编译插件
    jdk历史版本下载
    eclipse优化(部分)
    博客迁移到github
    JavaScript:同步、异步和事件循环
  • 原文地址:https://www.cnblogs.com/bztMinamoto/p/10476049.html
Copyright © 2011-2022 走看看