標籤(空格分隔): 未分類算法
抱歉,不打算講。函數
抱歉,不打算講。ui
抱歉,不打算講。spa
\(A(x)B_t(x)\equiv1(\mod x^{2^t})\)class
\(A(x)B_t(x)-1\equiv0(\mod x^{2^t})\)標籤
\((A(x)B_t(x)-1)^2\equiv0(\mod x^{2^{t+1}})\)生成
\((A(x)B_t(x))^2-2A(x)B_t(x)+1\equiv0(\mod x^{2^{t+1}})\)math
\(B_{t+1}(x)(A(x)B_t(x))^2-2B_{t+1}(x)A(x)B_t(x)+B_{t+1}(x)\equiv0(\mod x^{2^{t+1}})\)
\(B_{t+1}(x)\equiv 2B_t(x)-A(x)B_t^2(x)(\mod x^{2^{t+1}})\)
邊界條件\(B_0(x)=1\)。
設\(F(B_t(x))\equiv0(\mod x^{2^t})\)
把\(F(B_{t+1}(x))\)在\(B_t(x)\)處泰勒展開。
得\(F(B_{t+1}(x))=F(B_t(x))+\frac{F'(B_t(x))}{1!}(B_{t+1}(x)-B_t(x))\)
由於後面的項在\((\mod x^{2^{t+1}})\)下爲\(0\)。因此無論。
化簡一下(注意到\(F(B_{t+1}(x))\equiv0(\mod x^{2^{t+1}})\)。
得\(B_{t+1}(x)=B_t(x)-\frac{F(B_t(x))}{F'(B_t(x))}\)
會求逆和迭代後,多項式算法就沒有特別毒瘤的東西了。
設\(A^R(x)\)爲\(A(x)\)係數翻轉後的多項式,則\(A^R(x)=x^nA(\frac 1x)\)
\(A(x)=B(x)C(x)+R(x)\)其中\(A(x)\)的項數是\(n\),\(B(x)\)的項數是\(m\),\(R(x)\)的項數是\(m-1\)。
\(x^nA(\frac 1x)=x^mB(\frac 1x)x^{n-m}C(\frac 1x)+x^nR(\frac 1x)\)
\(A^R(x)=B^R(x)C^R(x)+x^{n-m+1}R^R(x)\)
咱們把它換到模\(x^{n-m+1}\)意義下。
就能夠用多項式求逆算\(C(x)\)了,而後帶回去,就能夠算\(R(x)\)了。
\(lnA(x)=B(x)\)
\(\frac {A'(x)}{A(x)}=B'(x)\)
\(B(x)=\int\frac{A'(x)}{A(x)}\)
\(F(B_t(x))=lnB_t(x)-A(x)\)
\(F'(B_t(x))=\frac 1{B(x)}\)
\(B_{t+1}(x)\equiv B_t(x)(1-lnB_t(x)+A(x))\)
\(F(B_t(x))=B_t^2(x)-A(x)\)
\(F'(B_t(x))=2B_t(x)\)
\(B_{t+1}(x)\equiv B_T(x)-\frac{B_t^2(x)-A(x)}{2B_t(x)}\)。
化簡一下就是\(B_{t+1}=\frac 12(B_t(x)+\frac {A(x)}{B_t(x)})\)
咕咕咕
咕咕咕
咕咕咕