フェルマーの最終定理をMATLABで計算してみる

フェルマーの最終定理とは

\begin{align}
z^n=x^n+y^n (n>2)
\end{align}

を満たす自然数の組は存在しないというものである。\(n=2\)の場合はピタゴラスの定理となり解が存在する。この場合の解は直角三角形の斜辺の長さと解釈することができる。

今回はMATLABで関数を定義し計算を行う。なお入力の\(x,y,z\)はベクトルであり、次元を合わせてあれば大きさは問題にならない。

プログラムで表現する都合上

\begin{align}
z^n-x^n-y^n=0 (n>2)
\end{align}

が成り立つか調べている。以下ソースコード

x=[3,4]; y=[4,5]; z=[5,6];
n=3;

[f,~]=Fermat_last_theorem(x,y,z,n);

f

function [result,result1,result2] = Fermat_last_theorem(x,y,z,n)
if n<=2
    error('n > 2')
end
result1=x.^n+y.^n;
result2=z.^n;
result=result2-result1;
end

コメント

タイトルとURLをコピーしました