拉格朗日插值学习笔记

在 Lagrange 之前,不妨先看看 CRT。

CRT

问题

\[\begin{cases} x \equiv r_1 \pmod {m_1} \\ x \equiv r_2 \pmod {m_2} \\ \vdots \\ x \equiv r_n \pmod {m_n} \end{cases}\]

其中 \(m_{1 \sim n}\) 两两互质。

解法

定义 \(e_i\) 为满足 \(e_i \equiv 1 \pmod {m_i}\) 且对于任意 \(j \ne i\)\(e_i \equiv 0 \pmod {m_j}\) 的数。

那么 \(x\) 就可以表示为 \(e_{1 \sim n}\) 的线性组合:\(\sum\limits_{i=1}^n r_i e_i\)

问题变为求解 \(e_i\)

\(M_i = \prod\limits_{j \ne i} m_j\)\(e_i = M_i \times [M_i]^{-1}_{\bmod m_i}\) 就是一个合理的构造。

Lagrange

已知 \(n\) 个点,插一个 \(n-1\) 次多项式:

\[f(k) = \sum\limits_{i=1}^n y_i \prod\limits_{j \ne i} \frac {k - x_j} {x_i - x_j} \]

时间复杂度 \(O(n^2)\)

推导

即求解:

\[\begin{cases} f(x) \equiv y_1 \pmod {x - x_1} \\ f(x) \equiv y_2 \pmod {x - x_2} \\ \vdots \\ f(x) \equiv y_n \pmod {x - x_n} \end{cases}\]

直接抄上中国剩余定理的推导:

定义 \(e_i\) 为满足 \(e_i \equiv 1 \pmod {x - x_i}\) 且对于任意 \(j \ne i\)\(e_i \equiv 0 \pmod {x - x_j}\) 的数。

那么 \(x\) 就可以表示为 \(e_{1 \sim n}\) 的线性组合:\(\sum\limits_{i=1}^n y_i e_i\)

问题变为求解 \(e_i\)

\(M_i = \prod\limits_{j \ne i} (x - x_j)\)\(e_i = M_i \times [M_i]^{-1}_{\bmod (x - x_i)}\) 就是一个合理的构造。

问题变为求解 \([M_i]^{-1}_{\bmod (x - x_i)}\)

注意到一些多项式运算的性质:

\[x \equiv a \pmod {x-a} \]

两边同时取 \(n\) 次方有:

\[x^n \equiv a^n \pmod {x-a} \]

不同的 \(n\) 次方线性组合,有:(令 \(f\) 为多项式函数)

\[f(x) \equiv f(a) \pmod {x-a} \]

常数的模意义下倒数就是它正常的倒数,有:

\[(f(x))^{-1} \equiv \frac 1 {f(a)} \pmod {x-a} \]

因此:

\[\left(\prod\limits_{j \ne i} (x - x_j)\right)^{-1} \equiv \frac 1 {\prod\limits_{j \ne i} (x_i - x_j)} \pmod {x - x_i} \]

代回去:

\[f(x) = \sum\limits_{i=1}^n y_i \prod\limits_{j \ne i} \frac {x - x_j} {x_i - x_j} \]

把变量名换的清楚一点,即:

\[f(k) = \sum\limits_{i=1}^n y_i \prod\limits_{j \ne i} \frac {k - x_j} {x_i - x_j} \]

扩展:连续点值的 Lagrange 插值

即对于每个 \(i\) 都有 \((x_i, y_i) = (i, f(i))\)

\[f(k) = \sum\limits_{i=1}^n y_i \frac {\prod\limits_{j=1}^{i-1} (k-j) \times \prod\limits_{j=i+1}^n (k-j)} {(-1)^{n-i} (i-1)! (n-i)!} \]

分子上两个 \(\prod\) 都能线性预处理,时间复杂度 \(O(n)\)

参考资料

【拉格朗日插值法的本质】拉格朗日,孙子,与每个人都能推出来的插值法_哔哩哔哩_bilibili

posted @ 2024-11-27 21:45  August_Light  阅读(136)  评论(0)    收藏  举报