**Lagrangeov polynóm**, pomenovaný podľa Josepha Louisa Lagrangea, je v numerickej matematike interpolujúci polynóm pre danú množinu bodov v **Lagrangeovom tvare**. V roku 1779 ho objavil Edward Waring a v roku 1783 ho znovuobjavil Leonhard Euler.

Je povšimnutia hodné, že pre danú množinu bodov existuje len jeden polynóm (najmenšieho možného stupňa), ktorý interpoluje dané body. Preto je správnejšie o Lagrangeovom polynóme hovoriť ako o *Lagrangeovom tvare interpolujúceho polynómu,* než o *Lagrangeovom interpolujúcom polynóme*.

 Na obrázku je kubický Lagrangeov interpolujúci polynóm *L*(*x*) (zobrazený čiernou farbou) pre body (−9, 5), (−4, 2), (−1, −2) a (7, 9). Tento polynóm je súčtom konštantných faktorov bázických polynómov y0*ℓ*0(*x*), y1*ℓ*1(*x*), y2*ℓ*2(*x*) a y3*ℓ*3(*x*). Interpolujúci polynóm prechádza cez všetky štyri body, každý z bázických polynómov prechádza jedným z daných bodov a na *x*-ových súradniciach daných ostatnými bodmi má hodnotu 0.

Definícia
---------

Nech je daná množina *k* + 1 bodov

{\displaystyle (x\_{0},y\_{0}),\ldots ,(x\_{j},y\_{j}),\ldots ,(x\_{k},y\_{k})}
kde žiadne dve hodnoty {\displaystyle x\_{j}} nie sú rovnaké. Potom **interpolujúci polynóm v Lagrangeovom tvare** pre túto množinu bodov je lineárna kombinácia

{\displaystyle L(x):=\sum \_{j=0}^{k}y\_{j}\ell \_{j}(x)}
Lagrangeových bázických polynómov

{\displaystyle \ell \_{j}(x):=\prod \_{f=0,\,f\neq j}^{k}{\frac {x-x\_{f}}{x\_{j}-x\_{f}}}={\frac {(x-x\_{0})}{(x\_{j}-x\_{0})}}\cdots {\frac {(x-x\_{j-1})}{(x\_{j}-x\_{j-1})}}{\frac {(x-x\_{j+1})}{(x\_{j}-x\_{j+1})}}\cdots {\frac {(x-x\_{k})}{(x\_{j}-x\_{k})}}.}
Je povšimnutia hodné, že za predpokladu, že žiadne dve hodnoty {\displaystyle x\_{i}} nie sú rovnaké (a to ani nemôžu byť, keďže by daná úloha nedávala zmysel), platí {\displaystyle x\_{j}-x\_{f}\neq 0}, čiže daný výraz je vždy dobre definovaný.

Dôkaz
-----

Aby funkcia *L*(*x*) naozaj bola hľadaným interpolujúcim polynómom, musí platiť, že je to polynóm najviac *k* teho stupňa, pričom pre každé {\displaystyle 0\leq j\leq k} musí platiť {\displaystyle L(x\_{j})=y\_{j}}.

Ak toto tvrdenie platí pre všetky *j*, hovoríme, že daný polynóm je riešením interpolačného problému. 

Dokážeme teda dané tvrdenie:

1. Vo výraze {\displaystyle \ell \_{j}(x)} je *k* členov súčinu, pričom každý člen obsahuje práve *x* práve raz, teda *L*(*x*) (ktorý je tým pádom súčtom polynómov *k*-teho stupňa) musí byť tiež polynóm *k*-teho stupňa.
2. {\displaystyle \ell \_{j}(x\_{i})=\prod \_{f=0,\,f\neq j}^{k}{\frac {x\_{i}-x\_{f}}{x\_{j}-x\_{f}}}}

Skúmajme teraz, čo sa stane, ak rozvinime tento súčin. Keďže súčin vynecháva hodnotu {\displaystyle f=j}, ak {\displaystyle i=j}, tak všetky členy sú rovné {\displaystyle {\frac {x\_{j}-x\_{f}}{x\_{j}-x\_{f}}}=1} (lebo stále platí {\displaystyle x\_{j}\neq x\_{f}}). Ak {\displaystyle i\neq j}, jeden z členov súčinu, konkrétne ten, pre ktorý platí {\displaystyle f=i}, bude mať hodnotu {\displaystyle {\frac {x\_{i}-x\_{i}}{x\_{j}-x\_{i}}}=0}, a teda vynuluje celý súčin. Čiže platí

{\displaystyle \ell \_{j}(x\_{i})=\left\{{\begin{matrix}1,&{\mbox{ak }}j=i\\0,&{\mbox{ak }}j\neq i\end{matrix}}\right.=\delta \_{ji}}
kde {\displaystyle \delta \_{ij}} is the Kroneckerov symbol. Teda:

{\displaystyle L(x\_{i})=\sum \_{j=0}^{k}y\_{j}\ell \_{j}(x\_{i})=\sum \_{j=0}^{k}y\_{j}\delta \_{ji}=y\_{i}.}
To ale znamená, že *L*(*x*) je polynóm stupňa najviac *k*, pričom platí {\displaystyle L(x\_{i})=y\_{i}}.
Navyše, takýto interpolujúci polynóm je určený jednoznačne.

Zdroj
-----

*Tento článok je čiastočný alebo úplný preklad článku Lagrange polynomial na anglickej Wikipédii.*

Externé odkazy
--------------

* Článok na ALGLIB o polynomiálnej interpolácii s implementáciami metódy v jazykoch C++, C#, VBA a Pascal (po anglicky).
* Článok o Lagrangeových polynómoch na Wolfram MathWorld (po anglicky).
* Rôzne materiály k Lagrangeovej interpolácii (po anglicky).