Fermatの小定理とWilsonの定理を小学生でも理解できるほど初等的に証明します.
$p$を素数,$a$を$p$と互いに素な自然数とすると以下が成立する.
$\quad $$a^{p-1} \equiv1\pmod p$
$\quad $$1~a$までの自然数からなる周期$p$の数列は$a^{p}$通り存在し,このうち周期が$1$でないものは$a^{p}-a$通り存在する.しかしこれらは第$n$項を第$n+c$項$(c\in\mathbb{N})$とみなした数列がある数列と一致する場合この二つを区別しないことにより$p$の倍数通りであったことがわかる.
よって
$a^p-a\equiv0\pmod p$
$\Longrightarrow$$a^{p-1}\equiv1\pmod p$
が成立する.
$p$を素数とすると$(p-1)!\equiv-1\pmod p$が成立する.
$\quad $$p$を法として議論する.
$\quad $整数列$ \lbrace {a_k} \rbrace (k=0, \cdots,p-1)$は各$n\in\mathbb{N}$について$\sum_{k=0}^{n}{a_k}$は互いに異なり,$\sum_{k=0}^{p-1}{a_k}=0$であるとする.また,ある数列$\lbrace {a'_k}\rbrace$が上の条件を満たし,ある$c\in\mathbb{N}$が存在し,すべての$k$について$a_k=a'_{k+c}$を満たすとき$\lbrace{a_k}\rbrace$と$\lbrace{a'_k}\rbrace$を区別しない.このような$\lbrace{a_k}\rbrace$のとり方が$A_p$通りあるとする.
$\quad $ところで$0~p-1$のp個の数を$0$を先頭に周期$p$で並べた数列は$(p-1)!$通りあり,階差数列を考えるとただ一つの$\lbrace{a_k}\rbrace$が対応する.
$\quad $逆に,$\lbrace{a_k}\rbrace$についてすべての項が同じでなければ対応する$p$個の周期$p$の数列があり,すべての項が同じ$p-1$個の$\lbrace{a_k}\rbrace$は,対応はただ一つである.
よって
$(p-1)!+(p-1)^2=p{B_p}$
$
\Longrightarrow(p-1)!=-1
$
が成立する.
以上です.二つとも似たような議論なのが面白いと思いました.稚拙な文章を読んでいただきありがとうございました.