Różnica pomiędzy stronami "Testy pierwszości. Liczby pseudopierwsze Lucasa i liczby silnie pseudopierwsze Lucasa. Test BPSW" i "CRT, twierdzenia Lagrange'a, Wilsona i Fermata, kryterium Eulera, symbole Legendre'a i Jacobiego"

Z Henryk Dąbrowski
(Różnica między stronami)
Przejdź do nawigacji Przejdź do wyszukiwania
 
 
Linia 1: Linia 1:
<div style="text-align:right; font-size: 130%; font-style: italic; font-weight: bold;">11.01.2023</div>
+
<div style="text-align:right; font-size: 130%; font-style: italic; font-weight: bold;">22.03.2023</div>
  
 
__FORCETOC__
 
__FORCETOC__
Linia 5: Linia 5:
  
  
== Ciągi Lucasa ==
+
== Chińskie twierdzenie o&nbsp;resztach ==
  
<span style="font-size: 110%; font-weight: bold;">Definicja L1</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J1</span><br/>
Niech <math>P, Q \in \mathbb{Z} \setminus \{0\}</math> oraz <math>D = P^2 - 4 Q \neq 0</math>. Ciągi Lucasa <math>U_n = U_n (P, Q)</math> i <math>V_n = V_n (P, Q)</math> definiujemy następująco
+
Niech <math>a, u \in \mathbb{Z}</math> i <math>m, n \in \mathbb{Z}_+</math> i <math>\gcd (m, n) = 1</math>. Kongruencja
  
::<math>U_n = {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} = {\small\frac{\alpha^n - \beta^n}{\sqrt{D}}}</math>
+
::<math>u \equiv a \pmod{m n}</math>
  
::<math>V_n = \alpha^n + \beta^n</math>
+
jest równoważna układowi kongruencji
  
gdzie liczby
+
::<math>\begin{align}
 +
u &\equiv a \pmod{m} \\
 +
u &\equiv a \pmod{n}
 +
\end{align}</math>
  
::<math>\alpha = {\small\frac{P + \sqrt{D}}{2}}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
<math>\Longrightarrow</math><br/>
 +
Jeżeli liczba <math>u - a</math> jest podzielna przez iloczyn <math>m n</math>, to tym bardziej jest podzielna przez dowolny czynnik tego iloczynu, skąd wynika natychmiast wypisany układ kongruencji.
  
::<math>\beta = {\small\frac{P - \sqrt{D}}{2}}</math>
+
<math>\Longleftarrow</math><br/>
 +
Z kongruencji
  
są pierwiastkami równania <math>x^2 - P x + Q = 0</math>.
+
::<math>u \equiv a \pmod{m}</math>
  
 +
wynika, że <math>u - a = k m</math>, zaś z&nbsp;kongruencji
  
 +
::<math>u \equiv a \pmod{n}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L2</span><br/>
+
otrzymujemy <math>n \, | \, (u - a)</math>, czyli <math>n \, | \, k m</math>. Ponieważ <math>\gcd (m, n) = 1</math>, zatem <math>n \, | \, k</math> (zobacz C72) i&nbsp;istnieje taka liczba całkowita <math>s</math>, że <math>k = s n</math>, czyli <math>u - a = s n m</math>, a&nbsp;stąd <math>u \equiv a \pmod{m n}</math>. Co kończy dowód.<br/>
Zauważmy, że:
+
&#9633;
 +
{{\Spoiler}}
  
::<math>P = \alpha + \beta</math>
 
  
::<math>Q = \alpha \beta</math>
 
  
::<math>\sqrt{D} = \alpha - \beta</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J2</span><br/>
 +
Dla dowolnych liczb <math>a, b \in \mathbb{Z}</math> i&nbsp;względnie pierwszych liczb <math>m, n \in \mathbb{Z}_+</math> istnieje dokładnie jedna taka liczba <math>c</math> (określona modulo <math>m n</math>), że prawdziwy jest układ kongruencji
  
::<math>U_0 = 0</math>, <math>U_1 = 1</math>, <math>V_0 = 2</math> i <math>V_1 = P</math>
+
::<math>\begin{align}
 +
c & \equiv a \pmod{m} \\
 +
c & \equiv b \pmod{n}
 +
\end{align}</math>
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Z&nbsp;założenia liczby <math>m</math> i <math>n</math> są względnie pierwsze, zatem na mocy lematu Bézouta (C.71) istnieją takie liczby <math>x, y \in \mathbb{Z}</math>, że
  
Warunek <math>P^2 - 4 Q \neq 0</math> wyklucza następujące pary <math>(P, Q)</math>
+
::<math>m x + n y = 1</math>
  
::<math>(0, 0), (\pm 2, 1), (\pm 4, 4), (\pm 6, 9), (\pm 8, 16), (\pm 10, 25), (\pm 12, 36), ..., (\pm 2 n, n^2), ...</math>
+
Niech <math>c = a n y + b m x</math>. Modulo <math>m</math> dostajemy
  
 +
::<math>c \equiv a n y \pmod{m}</math>
  
 +
::<math>c \equiv a (1 - m x) \pmod{m}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L3</span><br/>
+
::<math>c \equiv a \pmod{m}</math>
Oczywiście liczby <math>\alpha</math> i <math>\beta</math> są również pierwiastkami równania
 
  
::<math>x^{n + 2} - P x^{n + 1} + Q x^n = 0</math>
+
Natomiast modulo <math>n</math> mamy
  
Wynika stąd, że ciągi <math>(\alpha^n)</math> i <math>(\beta^n)</math> spełniają równania rekurencyjne
+
::<math>c \equiv b m x \pmod{n}</math>
  
::<math>\alpha^{n + 2} = P \alpha^{n + 1} - Q \alpha^n</math>
+
::<math>c \equiv b (1 - n y) \pmod{n}</math>
  
::<math>\beta^{n + 2} = P \beta^{n + 1} - Q \beta^n</math>
+
::<math>c \equiv b \pmod{n}</math>
  
Ciągi Lucasa <math>(U_n)</math> i <math>(V_n)</math> spełniają identyczne równania rekurencyjne jak ciągi <math>(\alpha^n)</math> i <math>(\beta^n)</math>. Istotnie, odejmując i&nbsp;dodając stronami wypisane powyżej równania, otrzymujemy
+
Pokazaliśmy tym samym istnienie szukanej liczby <math>c</math>. Przypuśćmy, że istnieją dwie takie liczby <math>c</math> i <math>d</math>. Z założenia <math>m \, | \, (d - a)</math> i <math>m \, | \, (c - a)</math>, zatem <math>m</math> dzieli różnicę tych liczb, czyli <math>m \, | \, (d - c)</math>. Podobnie pokazujemy, że <math>n \, | \, (d - c)</math>. Ponieważ liczby <math>m</math> i <math>n</math> są względnie pierwsze, to <math>m n \, | \, (d - c)</math> (zobacz C73), co oznacza, że
  
::<math>U_{n + 2} = P U_{n + 1} - Q U_n</math>
+
::<math>d \equiv c \pmod{m n}</math>.
  
::<math>V_{n + 2} = P V_{n + 1} - Q V_n</math>
+
Czyli możemy powiedzieć, że wybrana przez nas liczba <math>c</math> jest określona modulo <math>m n</math> i&nbsp;tak rozumiana jest dokładnie jedna. W szczególności istnieje tylko jedna liczba <math>c</math> taka, że <math>1 \leqslant c \leqslant m n</math>.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
Dlatego możemy zdefiniować ciągi Lucasa <math>(U_n)</math> i <math>(V_n)</math> w&nbsp;sposób równoważny
 
  
  
 +
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J3 (chińskie twierdzenie o&nbsp;resztach)</span><br/>
 +
Niech <math>a, b, c, u \in \mathbb{Z}</math> i <math>m, n \in \mathbb{Z}_+</math> oraz niech <math>\gcd (m, n) = 1</math>. Istnieje dokładnie jedna liczba <math>c</math> (określona modulo <math>m n</math>) taka, że kongruencja
  
<span style="font-size: 110%; font-weight: bold;">Definicja L4</span><br/>
+
::<math>u \equiv c \pmod{m n}</math>
Niech <math>P, Q \in \mathbb{Z} \setminus \{0\}</math> oraz <math>D = P^2 - 4 Q \neq 0</math>. Ciągi Lucasa <math>(U_n)</math> i <math>(V_n)</math> określone są następującymi wzorami rekurencyjnymi
 
  
::<math>U_0 = 0</math>, <math>U_1 = 1</math>, <math>U_n = P U_{n - 1} - Q U_{n - 2}</math>
+
jest równoważna układowi kongruencji
  
::<math>V_0 = 2</math>, <math>V_1 = P</math>, <math>V_n = P V_{n - 1} - Q V_{n - 2}</math>
+
::<math>\begin{align}
 +
u & \equiv a \pmod{m} \\
 +
u & \equiv b \pmod{n}
 +
\end{align}</math>
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Z&nbsp;twierdzenia J2 wiemy, że istnieje dokładnie jedna liczba <math>c</math> (określona modulo <math>m n</math>) taka, że prawdziwy jest układ kongruencji
  
 +
::<math>\begin{align}
 +
c & \equiv a \pmod{m} \\
 +
c & \equiv b \pmod{n}
 +
\end{align}</math>
  
<span style="font-size: 110%; font-weight: bold;">Przykład L5</span><br/>
+
Korzystając z&nbsp;tego rezultatu i&nbsp;twierdzenia J1, otrzymujemy
Początkowe wyrazy ciągów Lucasa
 
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: left; margin-right: auto;"
+
::<math>u \equiv c \pmod{m n} \qquad \Longleftrightarrow \qquad
|-
+
\begin{array}{l}
! <math>\boldsymbol{n}</math> !! <math>\boldsymbol{U_n (P, Q)}</math> !! <math>\boldsymbol{V_n (P, Q)}</math>
+
  u \equiv c \; \pmod{m} \\
|-
+
  u \equiv c \; \pmod{n} \\
| &nbsp;&nbsp;<math>0</math>&nbsp;&nbsp; || <math>0</math> || <math>2</math>
+
\end{array} \qquad \Longleftrightarrow \qquad
|-
+
\begin{array}{l}
| &nbsp;&nbsp;<math>1</math>&nbsp;&nbsp; || <math>1</math> || <math>P</math>
+
  u \equiv a \; \pmod{m} \\
|-
+
  u \equiv b \:\, \pmod{n} \\
| &nbsp;&nbsp;<math>2</math>&nbsp;&nbsp; || <math>P</math> || <math>P^2 - 2 Q</math>
+
\end{array} </math>
|-
 
| &nbsp;&nbsp;<math>3</math>&nbsp;&nbsp; || <math>P^2 - Q</math> || <math>P^3 - 3 P Q</math>
 
|-
 
| &nbsp;&nbsp;<math>4</math>&nbsp;&nbsp; || <math>P^3 - 2 P Q</math> || <math>P^4 - 4 P^2 Q + 2 Q^2</math>
 
|-
 
| &nbsp;&nbsp;<math>5</math>&nbsp;&nbsp; || <math>P^4 - 3 P^2 Q + Q^2</math> || <math>P^5 - 5 P^3 Q + 5 P Q^2</math>
 
|-
 
| &nbsp;&nbsp;<math>6</math>&nbsp;&nbsp; || <math>P^5 - 4 P^3 Q + 3 P Q^2</math> || <math>P^6 - 6 P^4 Q + 9 P^2 Q^2 - 2 Q^3</math>
 
|-
 
| &nbsp;&nbsp;<math>7</math>&nbsp;&nbsp; || <math>P^6 - 5 P^4 Q + 6 P^2 Q^2 - Q^3</math> || <math>P^7 - 7 P^5 Q + 14 P^3 Q^2 - 7 P Q^3</math>
 
|-
 
| &nbsp;&nbsp;<math>8</math>&nbsp;&nbsp; || <math>P^7 - 6 P^5 Q + 10 P^3 Q^2 - 4 P Q^3</math> || <math>P^8 - 8 P^6 Q + 20 P^4 Q^2 - 16 P^2 Q^3 + 2 Q^4</math>
 
|-
 
| &nbsp;&nbsp;<math>9</math>&nbsp;&nbsp; || <math>P^8 - 7 P^6 Q + 15 P^4 Q^2 - 10 P^2 Q^3 + Q^4</math> || <math>P^9 - 9 P^7 Q + 27 P^5 Q^2 - 30 P^3 Q^3 + 9 P Q^4</math>
 
|}
 
  
 +
Co należało pokazać.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L6</span><br/>
 
W PARI/GP możemy napisać prosty kod, który pozwoli obliczyć wartości wyrazów <math>U_n (P, Q)</math> i <math>V_n (P, Q)</math>
 
  
<span style="font-size: 90%; color:black;">LucasU(n, P, Q) = '''if'''( n == 0, 0, '''if'''( n == 1, 1, P*LucasU(n-1, P, Q) - Q*LucasU(n-2, P, Q) ) )</span>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J4</span><br/>
 +
Chińskie twierdzenie o&nbsp;resztach<ref name="CRT1"/> (CRT<ref name="CRT2"/>) pozostaje prawdziwe w&nbsp;przypadku układu skończonej liczby kongruencji. Założenie, że moduły <math>m</math> i <math>n</math> są względnie pierwsze, jest istotne. Przykładowo układ kongruencji
  
<span style="font-size: 90%; color:black;">LucasV(n, P, Q) = '''if'''( n == 0, 2, '''if'''( n == 1, P, P*LucasV(n-1, P, Q) - Q*LucasV(n-2, P, Q) ) )</span>
+
::<math>\begin{align}
 +
u &\equiv 1 \pmod{4} \\
 +
u &\equiv 3 \pmod{8}
 +
\end{align}</math>
  
 +
nie może być zapisany w&nbsp;postaci jednej równoważnej kongruencji, bo nie istnieją liczby, które spełniałyby powyższy układ jednocześnie. Łatwo zauważamy, że rozwiązaniem pierwszego równania jest <math>u = 4 k + 1</math>, które dla liczb <math>k</math> parzystych i&nbsp;nieparzystych ma postać
  
 +
::<math>u = 8 j + 1, \qquad u = 8 j + 5</math>
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L7</span><br/>
+
i nie może być <math>u \equiv 3 \pmod{8}</math>.
Niech <math>D = P^2 - 4 Q</math>. Wyrazy ciągów Lucasa można przedstawić w&nbsp;postaci sumy
 
  
::<math>2^{n - 1} U_n = \sum_{k = 0}^{\lfloor (n - 1) / 2 \rfloor} \binom{n}{2 k + 1} P^{n - 2 k - 1} D^k</math>
 
  
::<math>2^{n - 1} V_n = \sum_{k = 0}^{\lfloor n / 2 \rfloor} \binom{n}{2 k} P^{n - 2 k} D^k</math>
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J5</span><br/>
Oznaczmy <math>\delta = \sqrt{D}</math>, zatem <math>2 \alpha = P + \delta</math> i <math>2 \beta = P - \delta</math>. Ze wzoru dwumianowego, mamy
+
Niech <math>u, a_1, \ldots, a_k \in \mathbb{Z}</math> i <math>m_1, \ldots, m_k \in \mathbb{Z}_+</math>. Pokazać, że jeżeli liczby <math>m_1, \ldots, m_k</math> są parami względnie pierwsze (czyli <math>\gcd (m_i, m_j) = 1</math> dla <math>i \neq j</math>), to istnieje dokładnie jedna liczba <math>c</math> (określona modulo <math>m_1 \cdot \ldots \cdot m_k</math>) taka, że układ kongruencji
  
::<math>2^n \alpha^n = (P + \delta)^n = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} \delta^j</math>
+
::<math>\begin{align}
 +
u & \equiv a_1 \pmod{m_1} \\
 +
  & \cdots \\
 +
u & \equiv a_k \pmod{m_k}
 +
\end{align}</math>
  
::<math>2^n \beta^n = (P - \delta)^n = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} (- \delta)^j</math>
+
można zapisać w&nbsp;sposób równoważny w&nbsp;postaci kongruencji
  
Obliczając sumę powyższych wzorów, otrzymujemy
+
::<math>u \equiv c \;\; \pmod{m_1 \cdot \ldots \cdot m_k}</math>
  
::<math>2^n (\alpha^n + \beta^n) = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} (\delta^j + (- \delta)^j)</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 +
Indukcja matematyczna. Twierdzenie jest prawdziwe dla liczby <math>k = 2</math> (zobacz J3). Zakładając prawdziwość twierdzenia dla liczby naturalnej <math>k \geqslant 2</math>, dla liczby <math>k + 1</math> otrzymujemy układ kongruencji
  
:::::<math>\quad \: = \sum_{k = 0}^{\lfloor n / 2 \rfloor} \binom{n}{2 k} P^{n - 2 k} \cdot 2 \delta^{2 k}</math>
+
::<math>\begin{align}
 +
u & \equiv c \quad \;\, \pmod{m_1 \cdot \ldots \cdot m_k} \\
 +
u & \equiv a_{k + 1} \pmod{m_{k + 1}}
 +
\end{align}</math>
  
:::::<math>\quad \: = 2 \sum_{k = 0}^{\lfloor n / 2 \rfloor} \binom{n}{2 k} P^{n - 2 k} D^k</math>
+
gdzie skorzystaliśmy z&nbsp;założenia indukcyjnego. Z&nbsp;twierdzenia J3 wynika, że układ ten można zapisać w&nbsp;sposób równoważny w&nbsp;postaci kongruencji
  
gdzie <math>j = 2 k</math> i&nbsp;sumowanie przebiega od <math>k = 0</math> do <math>k = \lfloor n / 2 \rfloor</math>
+
::<math>u \equiv c' \pmod{m_1 \cdot \ldots \cdot m_k m_{k + 1}}</math>
  
Zatem
+
gdzie liczba <math>c'</math> jest dokładnie jedna i&nbsp;jest określona modulo <math>m_1 \cdot \ldots \cdot m_k m_{k + 1}</math>. Zatem twierdzenie jest prawdziwe dla <math>k + 1</math>. Co kończy dowód indukcyjny.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
::<math>2^{n - 1} V_n = \sum_{k = 0}^{\lfloor n / 2 \rfloor} \binom{n}{2 k} P^{n - 2 k} D^k</math>
 
  
  
Obliczając różnicę tych wzorów, mamy
+
<span style="font-size: 110%; font-weight: bold;">Przykład J6</span><br/>
 +
Dysponujemy pewną ilością kulek. Grupując je po <math>5</math>, zostają nam <math>3</math>, a&nbsp;kiedy próbujemy ustawić je po <math>7</math>, zostają nam <math>4</math>. Jaka najmniejsza ilość kulek spełnia te warunki? Rozważmy układ kongruencji
  
::<math>2^n (\alpha^n - \beta^n) = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} (\delta^j - (- \delta)^j)</math>
+
::<math>\begin{align}
 +
n &\equiv 3 \pmod{5} \\
 +
n &\equiv 4 \pmod{7}
 +
\end{align}</math>
  
:::::<math>\quad \: = \sum_{k = 0}^{\lfloor (n - 1) / 2 \rfloor} \binom{n}{2 k + 1} P^{n - 2 k - 1} \cdot 2 \delta^{2 k + 1}</math>
+
Z chińskiego twierdzenia o&nbsp;resztach wiemy, że powyższy układ możemy zapisać w&nbsp;postaci równoważnej kongruencji modulo <math>35</math>. Jeśli chcemy zaoszczędzić sobie trudu, to wystarczy skorzystać z&nbsp;PARI/GP. Wpisując proste polecenie
  
:::::<math>\quad \: = 2 \delta \sum_{k = 0}^{\lfloor (n - 1) / 2 \rfloor} \binom{n}{2 k + 1} P^{n - 2 k - 1} D^k</math>
+
<span style="font-size: 90%; color:black;">chinese( Mod(3,5), Mod(4,7) )</span>
  
gdzie <math>j = 2 k + 1</math> i&nbsp;sumowanie przebiega od <math>k = 0</math> do <math>k = \lfloor (n - 1) / 2 \rfloor</math>
+
uzyskujemy wynik <code>Mod(18, 35)</code>, zatem równoważna kongruencja ma postać
  
 +
::<math>n \equiv 18 \pmod{35}</math>
  
Zatem
+
Jest to zarazem odpowiedź na postawione pytanie: najmniejsza liczba kulek wynosi <math>18</math>.
  
::<math>2^{n - 1} \cdot {\small\frac{\alpha^n - \beta^n}{\sqrt{D}}} = 2^{n - 1} U_n = \sum_{k = 0}^{\lfloor (n - 1) / 2 \rfloor} \binom{n}{2 k + 1} P^{n - 2 k - 1} D^k</math>
+
Gdybyśmy chcieli rozważać bardziej rozbudowany układ kongruencji, przykładowo
  
Co należało pokazać.<br/>
+
::<math>\begin{align}
&#9633;
+
n &\equiv 1 \pmod{2} \\
{{\Spoiler}}
+
n &\equiv 2 \pmod{3} \\
 +
n &\equiv 3 \pmod{5} \\
 +
n &\equiv 4 \pmod{7} \\
 +
n &\equiv 5 \pmod{11}
 +
\end{align}</math>
  
 +
to argumenty należy zapisać w&nbsp;postaci wektora
  
 +
<span style="font-size: 90%; color:black;">chinese( [Mod(1,2), Mod(2,3), Mod(3,5), Mod(4,7), Mod(5,11)] )</span>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L8</span><br/>
+
Otrzymujemy <code>Mod(1523, 2310)</code>.
Korzystając z&nbsp;twierdzenia L7, możemy napisać proste funkcje do znajdowania postaci kolejnych wyrazów <math>U_n (P, Q)</math> i <math>V_n (P, Q)</math>
 
  
<span style="font-size: 90%; color:black;">U(n) = 2^(1 - n)*'''sum'''(k=0, '''floor'''((n-1)/2), '''binomial'''(n, 2*k+1) * P^(n-2*k-1) * (P^2-4*Q)^k)</span>
 
  
<span style="font-size: 90%; color:black;">V(n) = 2^(1 - n)*'''sum'''(k=0, '''floor'''(n/2), '''binomial'''(n, 2*k) * P^(n-2*k) * (P^2-4*Q)^k)</span>
 
  
  
  
Często możemy spotkać założenie <math>P \geqslant 1</math>. Poniższe twierdzenie wyjaśnia, dlaczego tak jest.
+
== Wielomiany ==
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L9</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J7</span><br/>
Jeżeli <math>(U_n)</math> i <math>(V_n)</math> są ciągami Lucasa, to
+
Niech <math>W_n (x)</math> będzie dowolnym wielomianem stopnia <math>n</math>. Wielomian <math>W_n (x)</math> można przedstawić w&nbsp;postaci
  
::<math>U_n (- P, Q) = (- 1)^{n - 1} U_n (P, Q)</math>
+
::<math>W_n (x) = W_n (s) + (x - s) V_{n - 1} (x)</math>
  
::<math>V_n (- P, Q) = (- 1)^n V_n (P, Q)</math>
+
gdzie <math>V_{n - 1} (x)</math> jest wielomianem stopnia <math>n - 1</math>, a&nbsp;współczynniki wiodące wielomianów <math>W_n (x)</math> i <math>V_{n - 1} (x)</math> są sobie równe.
  
 
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
Niech
+
Z założenia <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math>, gdzie <math>a_n \neq 0</math>. Zauważmy, że
 
 
::<math>\alpha = \frac{P + \sqrt{D}}{2} \qquad \qquad \;\; \beta = \frac{P - \sqrt{D}}{2}</math>
 
 
 
::<math>a = \frac{- P + \sqrt{D}}{2} \qquad \qquad b = \frac{- P - \sqrt{D}}{2}</math>
 
  
Liczby <math>\alpha, \beta</math> oraz <math>a, b</math> są odpowiednio pierwiastkami równań
+
::<math>W_n (x) - W_n (s) = \sum_{k = 0}^{n} a_k x^k - \sum_{k = 0}^{n} a_k s^k</math>
  
::<math>x^2 - P x + Q = 0</math>
+
::::::<math>\quad \; = \sum_{k = 1}^{n} a_k (x^k - s^k)</math>
  
::<math>x^2 + P x + Q = 0</math>
+
Dla <math>k \geqslant 1</math> prawdziwy jest wzór
  
Zatem definiują one ciągi Lucasa
+
::<math>x^k - s^k = (x - s) \sum_{j = 1}^{k} x^{k - j} s^{j - 1}</math>
  
::<math>U_n (P, Q) = \frac{\alpha^n - \beta^n}{\alpha - \beta} \qquad \qquad \;\; V_n (P, Q) = \alpha^n + \beta^n</math>
+
::::<math>\;\,\, = (x - s) (x^{k - 1} + s x^{k - 2} + \ldots + s^{k - 2} x + s^{k - 1})</math>
  
::<math>U_n (- P, Q) = \frac{a^n - b^n}{a - b} \qquad \qquad V_n (- P, Q) = a^n + b^n</math>
+
::::<math>\;\,\, = (x - s) U^{(k)} (x)</math>
  
Zauważmy, że
+
Gdzie przez <math>U^{(k)} (x) = \sum_{j = 1}^{k} x^{k - j} s^{j - 1}</math> oznaczyliśmy wielomian, którego stopień jest równy <math>k - 1</math>. Zatem możemy napisać
  
::<math>\alpha - \beta = a - b = \sqrt{D}</math>
+
::<math>W_n (x) - W_n (s) = (x - s) \sum_{k = 1}^{n} a_k U^{(k)} (x)</math>
  
::<math>\frac{a}{\beta} = \frac{b}{\alpha} = - 1</math>
+
Suma wypisana po prawej stronie jest pewnym wielomianem <math>V_{n - 1} (x)</math>. Ponieważ ze wszystkich wielomianów <math>a_k U^{(k)} (x)</math>, wielomian <math>a_n U^{(n)} (x)</math> ma największy stopień równy <math>n - 1</math>, to stopień wielomianu <math>V_{n - 1} (x)</math> jest równy <math>n - 1</math>. Czyli
  
Łatwo znajdujemy
+
::<math>W_n (x) - W_n (s) = (x - s) V_{n - 1} (x)</math>
  
::<math>U_n (- P, Q) = \frac{a^n - b^n}{a - b} = \frac{(- \beta)^n - (- \alpha)^n}{\sqrt{D}} = (- 1)^n \cdot \frac{\beta^n - \alpha^n}{\alpha - \beta} = (- 1)^{n - 1} \cdot U_n (P, Q)</math>
+
Niech <math>V_n (x) = \sum_{k = 0}^{n - 1} b_k x^k</math>. Mamy
  
::<math>V_n (- P, Q) = a^n + b^n = (- \beta)^n + (- \alpha)^n = (- 1)^n \cdot (\alpha^n + \beta^n) = (- 1)^n \cdot V_n (P, Q)</math>
+
::<math>\sum_{k = 0}^{n} a_k x^k - W_n (s) = \sum_{k = 0}^{n - 1} b_k x^{k + 1} + s \sum_{k = 0}^{n - 1} b_k x^k</math>
  
Co należało pokazać.<br/>
+
Porównując wyrazy o&nbsp;największym stopniu, łatwo zauważamy, że <math>a_n = b_{n - 1}</math>. Czyli współczynnik wiodący wielomianu <math>V_{n - 1} (x)</math> jest równy <math>a_n</math>. Co należało pokazać.<br/>
 
&#9633;
 
&#9633;
 
{{\Spoiler}}
 
{{\Spoiler}}
Linia 216: Linia 242:
  
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L10</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Definicja J8</span><br/>
Pokazać, że jeżeli <math>P, Q \in \mathbb{Z} \setminus \{ 0 \}</math> i <math>D = P^2 - 4 Q \neq 0</math>, to
+
Wielomian <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math>, gdzie <math>a_0, \ldots, a_n \in \mathbb{Z}</math> oraz <math>a_n \neq 0</math>, będziemy nazywali wielomianem całkowitym stopnia <math>n</math>.
  
::<math>U_n (2 P, 4 Q) = 2^{n - 1} U_n (P, Q)</math>
 
  
::<math>V_n (2 P, 4 Q) = 2^n V_n (P, Q)</math>
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
+
<span style="font-size: 110%; font-weight: bold;">Definicja J9</span><br/>
Niech
+
Powiemy, że wielomian całkowity <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math> jest stopnia <math>n</math> modulo <math>p</math>, gdzie <math>p</math> jest liczbą pierwszą, jeżeli <math>p \nmid a_n</math>. Jeżeli każdy współczynnik <math>a_k</math>, gdzie <math>k = 0, 1, \ldots, n</math>, jest podzielny przez <math>p</math>, to stopień wielomianu <math>W_n (x)</math> modulo <math>p</math> jest nieokreślony.
  
::<math>\alpha = {\small\frac{P + \sqrt{D}}{2}} \qquad \qquad \;\; \beta = {\small\frac{P - \sqrt{D}}{2}}</math>
 
  
::<math>a = P + \sqrt{D} \qquad \qquad \;\; b = P - \sqrt{D}</math>
 
  
Liczby <math>\alpha, \beta</math> oraz <math>a, b</math> są odpowiednio pierwiastkami równań
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J10</span><br/>
 +
Niech <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math> będzie wielomianem całkowitym i <math>m \in \mathbb{Z}_+</math>. Jeżeli prawdziwa jest kongruencja <math>x \equiv y \pmod{m}</math>, to
  
::<math>x^2 - P x + Q = 0</math>
+
::<math>W_n (x) \equiv W_n (y) \pmod{m}</math>
  
::<math>x^2 - 2 P x + 4 Q = 0</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Dla <math>k \geqslant 1</math> wyrażenie <math>x^k - y^k</math> jest podzielne przez <math>x - y</math>, co łatwo pokazać stosując indukcję matematyczną lub zauważając, że
  
Zatem definiują one ciągi Lucasa
+
::<math>x^k - y^k = (x - y) \sum_{j = 1}^{k} x^{k - j} y^{j - 1}</math>
  
::<math>U_n (P, Q) = {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} \qquad \qquad \;\;\; V_n (P, Q) = \alpha^n + \beta^n</math>
+
Z założenia <math>m \, | \, (x - y)</math>, zatem dla <math>k \geqslant 1</math> mamy <math>m \, | \, (x^k - y^k)</math>. Wynika stąd, że prawdziwe są kongruencje
  
::<math>U_n (2 P, 4 Q) = {\small\frac{a^n - b^n}{a - b}} \qquad \qquad V_n (2 P, 4 Q) = a^n + b^n</math>
+
::<math>\begin{align}
 +
  a_0 & \equiv a_0 \;\;\:\, \pmod{m}\\
 +
  a_1 x & \equiv a_1 y \;\, \pmod{m}\\
 +
  a_2 x^2 & \equiv a_2 y^2 \pmod{m}\\
 +
  & \cdots \\
 +
  a_n x^n & \equiv a_n y^n \pmod{m}
 +
\end{align}</math>
  
Zauważmy, że
+
Dodając wypisane kongruencje stronami, otrzymujemy
  
::<math>\alpha - \beta = \sqrt{D}</math>
+
::<math>W_n (x) \equiv W_n (y) \pmod{m}</math>
 
 
::<math>a - b = 2 \sqrt{D}</math>
 
 
 
::<math>{\small\frac{a}{\alpha}} = {\small\frac{b}{\beta}} = 2</math>
 
 
 
Łatwo znajdujemy
 
 
 
::<math>U_n (2 P, 4 Q) = {\small\frac{a^n - b^n}{a - b}} = {\small\frac{(2 \alpha)^n - (2 \beta)^n}{2 \sqrt{D}}} = 2^{n - 1} \cdot {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} = 2^{n - 1} U_n (P, Q)</math>
 
 
 
::<math>V_n (2 P, 4 Q) = a^n + b^n = (2 \alpha)^n + (2 \beta)^n = 2^n (\alpha^n + \beta^n) = 2^n V_n (P, Q)</math>
 
  
 
Co należało pokazać.<br/>
 
Co należało pokazać.<br/>
Linia 262: Linia 282:
  
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L11</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J11</span><br/>
Pokazać, że jeżeli <math>Q \in \mathbb{Z} \setminus \{ 0 \}</math> oraz <math>P = 4 Q - 1</math>, to
+
Niech <math>W(x)</math> będzie wielomianem całkowitym. Rozważmy kongruencję
  
::<math>U_{2 k} (P, P Q) = - (- P)^k U_{2 k} (1, Q)</math>
+
::<math>W(x) \equiv 0 \pmod{m n} \qquad \qquad \qquad (1)</math>
  
::<math>U_{2 k + 1} (P, P Q) = (- P)^k V_{2 k + 1} (1, Q)</math>
+
gdzie liczby <math>m</math> i <math>n</math> są względnie pierwsze.
  
::<math>V_{2 k} (P, P Q) = (- P)^k V_{2 k} (1, Q)</math>
+
Kongruencja ta jest równoważna układowi kongruencji
  
::<math>V_{2 k + 1} (P, P Q) = - (- P)^{k + 1} U_{2 k + 1} (1, Q)</math>
+
::<math>\begin{align}
 +
  W (x) &\equiv 0 \pmod{m}\\
 +
  W (x) &\equiv 0 \pmod{n}
 +
\end{align} \qquad \qquad \qquad \; (2)</math>
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
+
Zatem problem szukania rozwiązań kongruencji <math>(1)</math> możemy sprowadzić do szukania rozwiązań układu kongruencji <math>(2)</math>. W&nbsp;szczególności wynika stąd, że jeżeli któraś z&nbsp;kongruencji <math>(2)</math> nie ma rozwiązania, to kongruencja <math>W(x) \equiv 0 \pmod{m n}</math> również nie ma rozwiązania.
Niech
 
  
::<math>\alpha = {\small\frac{1 + \sqrt{- P}}{2}} \qquad \qquad \beta = {\small\frac{1 - \sqrt{- P}}{2}}</math>
+
Załóżmy, że każda z&nbsp;kongruencji <math>(2)</math> ma przynajmniej jedno rozwiązanie i&nbsp;niech
  
::<math>a = {\small\frac{P + \sqrt{- P}}{2}} \qquad \qquad b = {\small\frac{P - \sqrt{- P}}{2}}</math>
+
:* <math>x \equiv a \pmod{m}</math> będzie pierwiastkiem kongruencji <math>W (x) \equiv 0 \pmod{m}</math>
 +
:* <math>x \equiv b \pmod{n}</math> będzie pierwiastkiem kongruencji <math>W (x) \equiv 0 \pmod{n}</math>
  
Liczby <math>\alpha, \beta</math> oraz <math>a, b</math> są odpowiednio pierwiastkami równań
+
Pierwiastki te tworzą układ kongruencji
  
::<math>x^2 - x + {\small\frac{P + 1}{4}} = 0</math>
+
::<math>\begin{align}
 +
x &\equiv a \pmod{m} \\
 +
x &\equiv b \pmod{n}
 +
\end{align} \qquad \qquad \qquad \qquad (3)</math>
  
::<math>x^2 - P x + {\small\frac{P (P + 1)}{4}} = 0</math>
+
Z chińskiego twierdzenia o&nbsp;resztach wiemy, że układ ten możemy zapisać w&nbsp;postaci równoważnej
  
Z założenia <math>P = 4 Q - 1</math>, zatem
+
::<math>x \equiv c \pmod{m n}</math>
  
::<math>x^2 - x + Q = 0</math>
+
Zauważmy, że liczba <math>c</math> określona modulo <math>m n</math> jest rozwiązaniem kongruencji <math>(1)</math>. Istotnie z&nbsp;twierdzenia J10 mamy
  
::<math>x^2 - P x + P Q = 0</math>
+
::<math>\begin{align}
 +
  W (c) &\equiv W (a) \equiv 0 \pmod{m} \\
 +
  W (c) &\equiv W (b) \equiv 0 \pmod{n}
 +
\end{align}</math>
  
Czyli definiują one ciągi Lucasa
+
ale liczby <math>m, n</math> są względnie pierwsze, zatem otrzymujemy, że
  
::<math>U_n (1, Q) = {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} \qquad \qquad \:\:\: V_n (1, Q) = \alpha^n + \beta^n</math>
+
::<math>W (c) \equiv 0 \pmod{m n}</math>
  
::<math>U_n (P, P Q) = {\small\frac{a^n - b^n}{a - b}} \qquad \qquad V_n (P, P Q) = a^n + b^n</math>
+
Wynika stąd, że każdemu układowi rozwiązań <math>(3)</math> odpowiada dokładnie jedno rozwiązanie kongruencji <math>(1)</math>.
  
Zauważmy, że
+
Podsumujmy: jeżeli kongruencje
  
::<math>\alpha - \beta = a - b = \sqrt{- P}</math>
+
::<math>\begin{align}
 +
  W (x) &\equiv 0 \pmod{m}\\
 +
  W (x) &\equiv 0 \pmod{n}
 +
\end{align}</math>
  
::<math>{\small\frac{a}{\beta}} = {\small\frac{P + \sqrt{- P}}{1 - \sqrt{- P}}} = \sqrt{- P}</math>
+
mają odpowiednio <math>r</math> i <math>s</math> pierwiastków, to liczba różnych układów kongruencji <math>(3)</math> jest równa iloczynowi <math>r s</math> i&nbsp;istnieje <math>r s</math> różnych rozwiązań kongruencji
  
::<math>{\small\frac{b}{\alpha}} = {\small\frac{P - \sqrt{- P}}{1 + \sqrt{- P}}} = - \sqrt{- P}</math>
+
::<math>W(x) \equiv 0 \pmod{m n}</math>
  
  
Łatwo znajdujemy
 
  
::<math>U_{2 k} (P, P Q) = \frac{a^{2 k} - b^{2 k}}{a - b} = \frac{\left( \beta \sqrt{- P} \right)^{2 k} - \left( - \alpha \sqrt{- P} \right)^{2 k}}{\sqrt{- P}} = \frac{(- P)^k (\beta^{2 k} - \alpha^{2 k})}{\alpha - \beta} = - (- P)^k U_{2 k} (1, Q)</math>
 
  
  
::<math>U_{2 k + 1} (P, P Q) = \frac{a^{2 k + 1} - b^{2 k + 1}}{a - b} = \frac{\left( \beta \sqrt{- P} \right)^{2 k + 1} - \left( - \alpha \sqrt{- P} \right)^{2 k + 1}}{\sqrt{- P}} = (- P)^k (\beta^{2 k + 1} + \alpha^{2 k + 1}) = (- P)^k V_{2 k + 1} (1, Q)</math>
+
== Twierdzenie Lagrange'a ==
  
 +
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J12</span><br/>
 +
Kongruencja
  
::<math>V_{2 k} (P, P Q) = a^{2 k} + b^{2 k} = \left( \beta \sqrt{- P} \right)^{2 k} + \left( - \alpha \sqrt{- P} \right)^{2 k} = (- P)^k (\alpha^{2 k} + \beta^{2 k}) = (- P)^k V_{2 k} (1, Q)</math>
+
::<math>a_1 x + a_0 \equiv 0 \pmod{p}</math>
  
 +
gdzie <math>p \nmid a_1</math>, ma dokładnie jedno rozwiązanie modulo <math>p</math>.
  
::<math>V_{2 k + 1} (P, P Q) = a^{2 k + 1} + b^{2 k + 1} = \left( \beta \sqrt{- P} \right)^{2 k + 1} + \left( - \alpha \sqrt{- P} \right)^{2 k + 1} = (- P)^{k + 1} \cdot \frac{\beta^{2 k + 1} - \alpha^{2 k + 1}}{\sqrt{- P}} = - (- P)^{k + 1} U_{2 k + 1} (1, Q)</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
  
Co należało pokazać.<br/>
+
'''A. Istnienie rozwiązania'''
&#9633;
 
{{\Spoiler}}
 
  
 +
Ponieważ rozpatrywaną kongruencję możemy zapisać w&nbsp;postaci <math>a_1 x + a_0 = k p</math>, to istnienie liczb <math>x</math> i <math>k</math>, dla których ta równość jest prawdziwa, wynika z&nbsp;twierdzenia C74. Poniżej przedstawimy jeszcze jeden sposób znalezienia rozwiązania.
  
 +
Ponieważ <math>\gcd (a_1, p) = 1</math>, to istnieją takie liczby <math>r, s</math>, że <math>a_1 r + p s = 1</math> (zobacz C71 - lemat Bézouta). Zauważmy, że <math>p \nmid r</math>, bo gdyby tak było, to liczba pierwsza <math>p</math> dzieliłaby wyrażenie <math>a_1 r + p s</math>, ale jest to niemożliwe, bo <math>a_1 r + p s = 1</math>. Czyli modulo <math>p</math> mamy
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L12</span><br/>
+
::<math>a_1 r \equiv 1 \pmod{p}</math>
Pokazać, że jeżeli <math>Q \in \mathbb{Z} \setminus \{ 0 \}</math> oraz <math>P = 4 Q + 1</math>, to
 
  
::<math>U_{2 k} (P, P Q) = P^k U_{2 k} (1, - Q)</math>
+
Mnożąc rozpatrywaną kongruencję przez <math>r</math>, otrzymujemy
  
::<math>U_{2 k + 1} (P, P Q) = P^k V_{2 k + 1} (1, - Q)</math>
+
::<math>a_1 r x + a_0 r \equiv 0 \pmod{p}</math>
  
::<math>V_{2 k} (P, P Q) = P^k V_{2 k} (1, - Q)</math>
+
Zatem
  
::<math>V_{2 k + 1} (P, P Q) = P^{k + 1} U_{2 k + 1} (1, - Q)</math>
+
::<math>x \equiv - a_0 r \pmod{p}</math>
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
+
'''B. Brak innych rozwiązań'''
Niech
 
  
::<math>\alpha = {\small\frac{1 + \sqrt{P}}{2}} \qquad \qquad \beta = {\small\frac{1 - \sqrt{P}}{2}}</math>
+
Przypuśćmy, że istnieją dwa różne rozwiązania kongruencji
  
::<math>a = {\small\frac{P + \sqrt{P}}{2}} \qquad \qquad b = {\small\frac{P - \sqrt{P}}{2}}</math>
+
::<math>a_1 x + a_0 \equiv 0 \pmod{p}</math>
  
Liczby <math>\alpha, \beta</math> oraz <math>a, b</math> są odpowiednio pierwiastkami równań
+
Jeśli oznaczymy je przez <math>x_1</math> i <math>x_2</math>, to otrzymamy
  
::<math>x^2 - x - {\small\frac{P - 1}{4}} = 0</math>
+
::<math>a_1 x_1 + a_0 \equiv 0 \equiv a_1 x_2 + a_0 \pmod{p}</math>
  
::<math>x^2 - P x + {\small\frac{P (P - 1)}{4}} = 0</math>
+
Czyli
  
Z założenia <math>P = 4 Q + 1</math>, zatem
+
::<math>a_1 x_1 \equiv a_1 x_2 \pmod{p}</math>
  
::<math>x^2 - x - Q = 0</math>
+
::<math>p \, | \, a_1 (x_1 - x_2)</math>
  
::<math>x^2 - P x + P Q = 0</math>
+
Ponieważ <math>p \nmid a_1</math>, to z&nbsp;lematu Euklidesa (C72) otrzymujemy natychmiast <math>p \, | \, (x_1 - x_2)</math>. Skąd wynika, że <math>x_1 \equiv x_2 \pmod{p}</math>, wbrew założeniu, że <math>x_1</math> i <math>x_2</math> są dwoma różnymi rozwiązaniami. Co kończy dowód.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
Czyli definiują one ciągi Lucasa
 
  
::<math>U_n (1, - Q) = {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} \qquad \qquad V_n (1, - Q) = \alpha^n + \beta^n</math>
 
  
::<math>U_n (P, P Q) = {\small\frac{a^n - b^n}{a - b}} \qquad \qquad V_n (P, P Q) = a^n + b^n</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J13 (Joseph Louis Lagrange, 1768)</span><br/>
 +
Jeżeli wielomian <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math> ma stopień <math>n</math> modulo <math>p</math>, gdzie <math>n \geqslant 1</math>, to kongruencja
  
Zauważmy, że
+
::<math>W_n (x) \equiv 0 \pmod{p}</math>
  
::<math>\alpha - \beta = a - b = \sqrt{P}</math>
+
ma co najwyżej <math>n</math> rozwiązań.
  
::<math>{\small\frac{a}{\alpha}} = {\small\frac{P + \sqrt{P}}{1 + \sqrt{P}}} = \sqrt{P}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Indukcja matematyczna. Z&nbsp;J12 wiemy, że dowodzone twierdzenie jest prawdziwe dla <math>n = 1</math>. Załóżmy, że twierdzenie jest prawdziwe dla wszystkich liczb całkowitych dodatnich nie większych od <math>n - 1</math>. Niech wielomian <math>W_n (x)</math> ma stopień <math>n</math> modulo <math>p</math>. Jeżeli kongruencja
  
::<math>{\small\frac{b}{\beta}} = {\small\frac{P - \sqrt{P}}{1 - \sqrt{P}}} = - \sqrt{P}</math>
+
::<math>W_n (x) \equiv 0 \pmod{p}</math>
  
 +
nie ma żadnego rozwiązania, to dowodzone twierdzenie jest prawdziwe dla <math>n</math>. Przypuśćmy teraz, że wypisana wyżej kongruencja ma przynajmniej jeden pierwiastek <math>x \equiv s \pmod{p}</math>. Korzystając z&nbsp;twierdzenia J7, możemy napisać
  
Łatwo znajdujemy
+
::<math>W_n (x) - W_n (s) = (x - s) V_{n - 1} (x)</math>
  
::<math>U_{2 k} (P, P Q) = \frac{a^{2 k} - b^{2 k}}{a - b} = \frac{\left( \alpha \sqrt{P} \right)^{2 k} - \left( - \beta \sqrt{P} \right)^{2 k}}{\sqrt{P}} = \frac{P^k (\alpha^{2 k} - \beta^{2 k})}{\alpha - \beta} = P^k U_{2 k} (1, - Q)</math>
+
gdzie wielomian <math>V_{n - 1} (x)</math> ma stopień <math>n - 1</math> modulo <math>p</math>, bo wielomiany <math>W_n (x)</math> oraz <math>V_{n - 1} (x)</math> mają jednakowe współczynniki wiodące.
  
  
::<math>U_{2 k + 1} (P, P Q) = \frac{a^{2 k + 1} - b^{2 k + 1}}{a - b} = \frac{\left( \alpha \sqrt{P} \right)^{2 k + 1} - \left( - \beta \sqrt{P} \right)^{2 k + 1}}{\sqrt{P}} = P^k (\alpha^{2 k + 1} + \beta^{2 k + 1}) = P^k V_{2 k + 1} (1, - Q)</math>
+
Z założenia <math>x \equiv s \pmod{p}</math> jest jednym z&nbsp;pierwiastków kongruencji <math>W_n (x) \equiv 0 \pmod{p}</math>, zatem modulo <math>p</math> otrzymujemy
  
 +
::<math>W_n (x) \equiv (x - s) V_{n - 1} (x) \pmod{p}</math>
  
::<math>V_{2 k} (P, P Q) = a^{2 k} + b^{2 k} = \left( \alpha \sqrt{P} \right)^{2 k} + \left( - \beta \sqrt{P} \right)^{2 k} = P^k (\alpha^{2 k} + \beta^{2 k}) = P^k V_{2 k} (1, - Q)</math>
+
Ponieważ <math>p</math> jest liczbą pierwszą, to z&nbsp;rozpatrywanej kongruencji
  
 +
::<math>W_n (x) \equiv 0 \pmod{p}</math>
  
::<math>V_{2 k + 1} (P, P Q) = a^{2 k + 1} + b^{2 k + 1} = \left( \alpha \sqrt{P} \right)^{2 k + 1} + \left( - \beta \sqrt{P} \right)^{2 k + 1} = P^{k + 1} \cdot \frac{\alpha^{2 k + 1} - \beta^{2 k + 1}}{\sqrt{P}} = P^{k + 1} U_{2 k + 1} (1, - Q)</math>
+
wynika, że musi być (zobacz C72)
  
Co należało pokazać.<br/>
+
::<math>x \equiv s \pmod{p} \qquad \qquad \text{lub} \qquad \qquad V_{n - 1} (x) \equiv 0 \pmod{p}</math>
&#9633;
 
{{\Spoiler}}
 
  
  
 +
Z założenia indukcyjnego kongruencja
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L13</span><br/>
+
::<math>V_{n - 1} (x) \pmod{p}</math>
Dla wyrazów ciągów Lucasa prawdziwe są wzory
 
  
{| class="wikitable plainlinks"  style="display: inline-table; margin-left: 5px; margin-right: 50px; font-size: 100%; text-align: left;"
+
ma co najwyżej <math>n - 1</math> rozwiązań, zatem kongruencja
|-
 
| <math>1.</math> || <math>U_{m + n} = U_m U_{n + 1} - Q U_{m - 1} U_n</math> ||
 
|-
 
| <math>2.</math> || <math>V_{m + n} = V_m V_n - Q^n V_{m - n}</math> || <math>m \geqslant n</math>
 
|-
 
| <math>3.</math> || <math>U_{m + n} = U_m V_n - Q^n U_{m - n}</math> || <math>m \geqslant n</math>
 
|-
 
| <math>4.</math> || <math>V_{m + n} = D U_m U_n + Q^n V_{m - n}</math> || <math>m \geqslant n</math>
 
|-
 
| <math>5.</math> || <math>U_m V_n - V_m U_n = 2 Q^n U_{m - n}</math> || <math>m \geqslant n</math>
 
|-
 
| <math>6.</math> || <math>U^2_n = U_{n - 1} U_{n + 1} + Q^{n - 1}</math> ||
 
|-
 
| <math>7.</math> || <math>V^2_n = V_{n - 1} V_{n + 1} - D Q^{n - 1}</math> ||
 
|}
 
{| class="wikitable plainlinks"  style="display: inline-table; margin-left: 5px; margin-right: 50px; font-size: 100%; text-align: left;"
 
|-
 
| <math>\;\; 8.</math> || <math>2 U_{m + n} = U_m V_n + V_m U_n</math> ||
 
|-
 
| <math>\;\; 9.</math> || <math>2 V_{m + n} = V_m V_n + D U_m U_n</math> ||
 
|-
 
| <math>10.</math> || <math>V_m V_n - D U_m U_n = 2 Q^n V_{m - n}</math> || <math>m \geqslant n</math>
 
|-
 
| <math>11.</math> || <math>U_{2 n} = U_n V_n</math> ||
 
|-
 
| <math>12.</math> || <math>V_{2 n} = V^2_n - 2 Q^n</math> ||
 
|-
 
| <math>13.</math> || <math>V_{2 n} = D U^2_n + 2 Q^n</math> ||
 
|-
 
| <math>14.</math> || <math>V^2_n - D U^2_n = 4 Q^n</math> ||
 
|-
 
| <math>15.</math> || <math>D U_n = 2 V_{n + 1} - P V_n</math> ||
 
|-
 
| <math>16.</math> || <math>V_n = 2 U_{n + 1} - P U_n</math> ||
 
|-
 
| <math>17.</math> || <math>D U_n = V_{n + 1} - Q V_{n - 1}</math> || <math>n \geqslant 1</math>
 
|-
 
| <math>18.</math> || <math>V_n = U_{n + 1} - Q U_{n - 1}</math> || <math>n \geqslant 1</math>
 
|}
 
{| class="wikitable plainlinks"  style="display: inline-table; margin-left: 5px; margin-right: 50px; font-size: 100%; text-align: left;"
 
|-
 
| <math>19.</math> || <math>U_{2 n} = 2 U_n U_{n + 1} - P U^2_n</math>
 
|-
 
| <math>20.</math> || <math>U_{2 n + 1} = U^2_{n + 1} - Q U^2_n</math>
 
|-
 
| <math>21.</math> || <math>U_{2 n + 2} = P U^2_{n + 1} - 2 Q U_n U_{n + 1}</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
::<math>W_n (x) \equiv 0 \pmod{p}</math>
'''Wzory 1. - 7. najłatwiej udowodnić korzystając z&nbsp;definicji L1.'''
 
  
Wzór 1.
+
ma nie więcej niż <math>n</math> rozwiązań. Co należało pokazać.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
::<math>U_{m + n} = {\small\frac{\alpha^{m + n} - \beta^{m + n}}{\alpha - \beta}}</math>
 
  
:::<math>\quad \: = {\small\frac{\alpha^m - \beta^m}{\alpha - \beta}} \cdot {\small\frac{\alpha^{n + 1} - \beta^{n + 1}}{\alpha - \beta}} - \alpha \beta \cdot {\small\frac{\alpha^{m - 1} - \beta^{m - 1}}{\alpha - \beta}} \cdot {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}}</math>
 
  
:::<math>\quad \: = U_m U_{n + 1} - Q U_{m - 1} U_n</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J14</span><br/>
 +
Jeżeli kongruencja
  
 +
::<math>a_n x^n + a_{n - 1} x^{n - 1} + \ldots + a_1 x + a_0 \equiv 0 \pmod{p}</math>
  
Wzór 2.
+
ma więcej niż <math>n</math> rozwiązań, to wszystkie współczynniki <math>a_k</math>, gdzie <math>k = 0, \ldots, n</math>, muszą być podzielne przez <math>p</math>.
  
::<math>V_{m + n} = \alpha^{m + n} + \beta^{m + n}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Niech <math>S \subset \{ 0, 1, \ldots, n \}</math> będzie zbiorem takim, że dla każdego <math>k \in S</math> jest <math>p \nmid a_k</math>. Przypuśćmy, że <math>S</math> jest zbiorem niepustym. Niech <math>j</math> oznacza największy element zbioru <math>S</math>. Jeżeli <math>j = 0</math>, to wielomian <math>W_n (x) = \sum_{k = 0}^{n} a_k x^k</math> jest stopnia <math>0</math> modulo <math>p</math> i
  
:::<math>\quad \;\! = (\alpha^m + \beta^m) (\alpha^n + \beta^n) - \alpha^n \beta^n \cdot (\alpha^{m - n} + \beta^{m - n})</math>
+
::<math>a_0 \not\equiv 0 \pmod{p}</math>
  
:::<math>\quad \;\! = V_m V_n - Q^n V_{m - n}</math>
+
Konsekwentnie, dla dowolnego <math>x \in \mathbb{Z}</math> jest
  
 +
::<math>a_n x^n + a_{n - 1} x^{n - 1} + \ldots + a_1 x + a_0 \not\equiv 0 \pmod{p}</math>
  
Wzór 3.
+
bo dla każdego <math>1 \leqslant k \leqslant n</math> mamy <math>a_k \equiv 0 \pmod{p}</math>. Zatem rozpatrywana kongruencja nie ma ani jednego rozwiązania, czyli rozwiązań nie może być więcej niż <math>n</math>.
  
::<math>U_{m + n} = {\small\frac{\alpha^{m + n} - \beta^{m + n}}{\alpha - \beta}}</math>
+
W przypadku gdy <math>j \neq 0</math>, z&nbsp;twierdzenia Lagrange'a wynika, że rozpatrywana kongruencja ma nie więcej niż <math>j \leqslant n</math> rozwiązań, ponownie wbrew założeniu, że kongruencja ta ma więcej niż <math>n</math> rozwiązań. Uczynione przypuszczenie, że <math>S</math> jest zbiorem niepustym, okazało się fałszywe, zatem zbiór <math>S</math> musi być zbiorem pustym. Co należało pokazać.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
:::<math>\quad \: = {\small\frac{(\alpha^m - \beta^m) (\alpha^n + \beta^n)}{\alpha - \beta}} - {\small\frac{\alpha^n \beta^n \cdot (\alpha^{m - n} - \beta^{m - n})}{\alpha - \beta}}</math>
 
  
:::<math>\quad \: = U_m V_n - Q^n U_{m - n}</math>
 
  
 +
<span style="font-size: 110%; font-weight: bold;">Przykład J15</span><br/>
 +
Z twierdzenia Lagrange'a wynika, że kongruencja
  
Wzór 4.
+
::<math>x^p - x - 1 \equiv 0 \pmod{p}</math>
  
::<math>V_{m + n} = \alpha^{m + n} + \beta^{m + n}</math>
+
ma co najwyżej <math>p</math> rozwiązań. W&nbsp;rzeczywistości nie ma ani jednego rozwiązania, bo z&nbsp;twierdzenia Fermata wiemy, że dla dowolnej liczby pierwszej <math>p</math> jest
  
:::<math>\quad \;\! = (\alpha - \beta)^2 \cdot {\small\frac{\alpha^m - \beta^m}{\alpha - \beta}} \cdot {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} + \alpha^n \beta^n \cdot (\alpha^{m - n} + \beta^{m - n})</math>
+
::<math>x^p \equiv x \pmod{p}</math>
  
:::<math>\quad \;\! = D U_m U_n + Q^n V_{m - n}</math>
 
  
  
Wzór 5.
+
<span style="font-size: 110%; font-weight: bold;">Przykład J16</span><br/>
 +
Zauważmy, że w&nbsp;przypadku, gdy <math>n \geqslant p</math>, możemy zawsze wielomian przekształcić do postaci takiej, że <math>n < p</math>. Niech <math>p = 5</math> i
  
::<math>U_m V_n - V_m U_n = {\small\frac{\alpha^m - \beta^m}{\alpha - \beta}} \cdot (\alpha^n + \beta^n) - (\alpha^m + \beta^m) \cdot {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}}</math>
+
::<math>W(x) = x^{15} + 11 x^{11} + 5 x^5 + 2 x^2 + x + 1</math>
  
::::::<math>\;\;\: = 2 \cdot \alpha^n \beta^n \cdot {\small\frac{\alpha^{m - n} - \beta^{m - n}}{\alpha - \beta}}</math>
+
Ponieważ <math>x^5 \equiv x \pmod{5}</math>, to
  
::::::<math>\;\;\: = 2 Q^n U_{m - n}</math>
+
::<math>W(x) \equiv x^3 + 11 x^3 + 5 x + 2 x^2 + x + 1 \equiv 12 x^3 + 2 x^2 + 6 x + 1 \pmod{5}</math>
  
 +
Co wynika również z&nbsp;faktu, że <math>W(x)</math> można zapisać w&nbsp;postaci
  
Wzór 6.
+
::<math>W(x) = x^{15} + 11 x^{11} + 5 x^5 + 2 x^2 + x + 1 = (x^5 - x) (x^{10} + 12 x^6 + 12 x^2 + 5) + 12 x^3 + 2 x^2 + 6 x + 1</math>
  
::<math>U^2_n = \left( {\small\frac{\alpha^n - \beta^n}{\alpha - \beta}} \right)^2</math>
+
ale <math>x^5 - x \equiv 0 \pmod{5}</math> na mocy twierdzenia Fermata.
  
:::<math>\;\! = {\small\frac{\alpha^{n - 1} - \beta^{n - 1}}{\alpha - \beta}} \cdot {\small\frac{\alpha^{n + 1} - \beta^{n + 1}}{\alpha - \beta}} + \alpha^{n - 1} \beta^{n - 1}</math>
 
  
:::<math>\;\! = U_{n - 1} U_{n + 1} + Q^{n - 1}</math>
 
  
  
Wzór 7.
 
  
::<math>V^2_n = (\alpha^n + \beta^n)^2</math>
 
  
:::<math>\;\! = (\alpha^{n - 1} + \beta^{n - 1}) (\alpha^{n + 1} + \beta^{n + 1}) - (\alpha - \beta)^2 \cdot \alpha^{n - 1} \beta^{n - 1}</math>
 
  
:::<math>\;\! = V_{n - 1} V_{n + 1} - D Q^{n - 1}</math>
 
  
 +
== Twierdzenie Wilsona ==
  
'''Wzory 8. - 18. można łatwo udowodnić, korzystając ze wzorów 1. - 7.'''
 
  
Wzór 8. Policzyć sumę wzoru 3. pomnożonego przez <math>2</math> i&nbsp;wzoru 5.
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J17 (John Wilson, 1770)</span><br/>
 +
Liczba całkowita <math>p \geqslant 2</math> jest liczbą pierwszą wtedy i&nbsp;tylko wtedy, gdy
  
Wzór 9. Policzyć sumę wzorów 2. i 4.
+
::<math>(p - 1) ! \equiv - 1 \pmod{p}</math>
  
Wzór 10. Połączyć wzory 2. i 4.
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
<math>\Longleftarrow</math><br/>
 +
Przypuśćmy, że prawdziwa jest kongruencja <math>(p - 1) ! \equiv - 1 \pmod{p}</math> oraz <math>p</math> jest liczbą złożoną. Zatem liczba <math>p</math> ma dzielnik <math>d</math> taki, że <math>2 \leqslant d \leqslant p - 1</math>. Ponieważ <math>d \, | \, p</math>, to prawdziwa jest kongruencja
  
Wzór 11. We wzorze 3. położyć <math>m = n</math>.
+
::<math>(p - 1) ! \equiv - 1 \pmod{d}</math>
  
Wzór 12. We wzorze 2. położyć <math>m = n</math>.
+
czyli
  
Wzór 13. We wzorze 4. położyć <math>m = n</math>.
+
::<math>0 \equiv - 1 \pmod{d}</math>
  
Wzór 14. We wzorze 10. położyć <math>m = n</math> lub połączyć wzory 12. i 13.
+
co jest niemożliwe.
  
Wzór 15. We wzorze 9. położyć <math>m = 1</math>.
+
<math>\Longrightarrow</math><br/>
 +
Łatwo sprawdzamy, że twierdzenie jest prawdziwe dla <math>p = 2</math>. Niech teraz <math>p</math> będzie liczbą pierwszą nieparzystą. Rozważmy wielomiany
  
Wzór 16. We wzorze 8. położyć <math>m = 1</math>.
+
::<math>W(x) = (x - 1) (x - 2) \cdot \ldots \cdot (x - (p - 1))</math>
  
Wzór 17. We wzorze 15. położyć <math>V_{n + 1} = P V_n - Q V_{n - 1}</math>.
+
oraz
  
Wzór 18. We wzorze 16. położyć <math>U_{n + 1} = P U_n - Q U_{n - 1}</math>.
+
::<math>V(x) = x^{p - 1} - 1</math>
  
 +
Zauważmy, że
  
'''Wzory 19. - 21. to wzory, które wykorzystamy w&nbsp;przyszłości do szybkiego obliczania wartości wyrazów <math>U_n</math> i <math>V_n</math> modulo.'''
+
:* stopnie tych wielomianów są równe <math>p - 1</math>
 +
:* współczynniki wiodące są równe <math>1</math>
 +
:* wyrazy wolne są równe odpowiednio <math>(p - 1) !</math> oraz <math>- 1</math>
 +
:* wielomiany mają <math>p - 1</math> rozwiązań modulo <math>p</math>
  
Wzór 19. Wystarczy połączyć wzory 11. oraz 16.
+
Niech
  
Wzór 20. Wystarczy we wzorze 1. położyć <math>m = n + 1</math>.
+
::<math>U(x) = W (x) - V (x)</math>
  
Wzór 21. Kładąc we wzorze 19. <math>n \rightarrow n + 1</math>, otrzymujemy
+
Zauważmy, że
  
::<math>U_{2 n + 2} = 2 U_{n + 1} U_{n + 2} - P U^2_{n + 1} \qquad (*)</math>
+
:* stopień wielomianu <math>U(x)</math> jest równy <math>p - 2 \geqslant 1</math>, ponieważ wyrazy o&nbsp;najwyższym stopniu uległy redukcji
 +
:* wielomian <math>U(x)</math> ma <math>p - 1</math> rozwiązań modulo <math>p</math>, bo dla każdego <math>k \in \{ 1, 2, \ldots, p - 1 \}</math> mamy <math>U(k) = W (k) - V (k) \equiv 0 \pmod{p}</math>
  
Kładąc we wzorze 1. <math>m = n + 2</math>, mamy
+
Z twierdzenia Lagrange'a wiemy, że wielomian <math>U(x)</math> nie może mieć więcej niż <math>p - 2</math> rozwiązań modulo <math>p</math>. Zatem z&nbsp;twierdzenia J14 wynika natychmiast, że liczba pierwsza <math>p</math> musi dzielić każdy współczynnik <math>a_k</math> wielomianu <math>U(x)</math> i&nbsp;w&nbsp;szczególności musi dzielić wyraz wolny, który jest równy <math>(p - 1) ! + 1</math>. Co należało pokazać.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
::<math>U_{2 n + 2} = U_{n + 2} U_{n + 1} - Q U_{n + 1} U_n</math>
 
  
Czyli
 
  
::<math>2 U_{2 n + 2} = 2 U_{n + 1} U_{n + 2} - 2 Q U_n U_{n + 1}</math>
 
  
Odejmując od powyższego wzoru wzór <math>(*)</math>, dostajemy wzór 21.
 
  
::<math>U_{2 n + 2} = P U^2_{n + 1} - 2 Q U_n U_{n + 1}</math>
+
== Twierdzenie Fermata ==
 +
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J18 (Pierre de Fermat, 1640)</span><br/>
 +
Niech <math>a \in \mathbb{Z}</math>. Jeżeli <math>p</math> jest liczbą pierwszą
  
Co należało pokazać.<br/>
+
:* to liczba <math>a^p - a</math> jest podzielna przez <math>p</math>, czyli <math>a^p \equiv a \pmod p</math>
&#9633;
+
:* i&nbsp;jeśli dodatkowo <math>p \nmid a</math>, to liczba <math>a^{p - 1} - 1</math> jest podzielna przez <math>p</math>, czyli <math>a^{p - 1} \equiv 1 \pmod p</math>
{{\Spoiler}}
 
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
'''Punkt 1.'''
  
 +
Zauważmy, że<br/>
 +
a) twierdzenie jest prawdziwe dla <math>a = 0</math><br/>
 +
b) w&nbsp;przypadku, gdy <math>p = 2</math> wyrażenie <math>a^p - a = a^2 - a = a (a - 1)</math> jest podzielne przez <math>2</math>, bo jedna z&nbsp;liczb <math>a - 1</math> i <math>a</math> jest liczbą parzystą<br/>
 +
c) w&nbsp;przypadku, gdy <math>p</math> jest liczbą pierwszą nieparzystą i&nbsp;twierdzenie jest prawdziwe dla <math>a \geqslant 1</math>, to jest też prawdziwe dla <math>- a</math>, bo
 +
::<math>(- a)^p - (- a) = (- 1)^p a^p + a = - a^p + a = - (a^p - a)</math><br/>
  
  
 +
Zatem wystarczy pokazać, że dla ustalonej liczby pierwszej nieparzystej <math>p</math> twierdzenie jest prawdziwe dla każdego <math>a \in \mathbb{Z}_+</math>.
  
== Obliczanie wyrazów ciągu Lucasa modulo <math>m</math> ==
+
Indukcja matematyczna. Dla <math>a = 1</math> mamy <math>1^p - 1 = 0</math> zatem liczba pierwsza <math>p</math> jest dzielnikiem rozważanego wyrażenia. Zakładając, że twierdzenie jest prawdziwe dla <math>a</math>, czyli <math>p|a^p - a</math>, otrzymujmy dla <math>a + 1</math>
  
<span style="font-size: 110%; font-weight: bold;">Przykład L14</span><br/>
+
::<math>(a + 1)^p - (a + 1) = \sum_{k = 0}^{p} \binom{p}{k} \cdot a^k - a - 1</math>
Pokażemy, jak wykorzystać podane w&nbsp;twierdzeniu L13 wzory 19, 20, 21 i 16
 
  
::<math>U_{2 n} = 2 U_n U_{n + 1} - P U^2_n</math>
+
:::::::<math>\;\;\,\, = 1 + \sum_{k = 1}^{p - 1} \binom{p}{k} \cdot a^k + a^p - a - 1</math>
  
::<math>U_{2 n + 1} = U^2_{n + 1} - Q U^2_n</math>
+
:::::::<math>\;\;\,\, = a^p - a + \sum^{p - 1}_{k = 1} \binom{p}{k} \cdot a^k</math>
  
::<math>U_{2 n + 2} = P U^2_{n + 1} - 2 Q U_n U_{n + 1}</math>
 
  
::<math>V_n = 2 U_{n + 1} - P U_n</math>
+
Z założenia indukcyjnego <math>p|a^p - a</math>, zaś <math>\binom{p}{k} = {\small\frac{p!}{k! \cdot (p - k) !}}</math> dla <math>k = 1, 2, \ldots, p - 1</math> jest podzielne przez <math>p</math> (ponieważ <math>p</math> dzieli licznik, ale nie dzieli mianownika). Zatem <math>(a + 1)^p - (a + 1)</math> jest podzielne przez liczbę pierwszą <math>p</math>.
  
do szybkiego obliczania wyrazów ciągu Lucasa modulo <math>m</math>.
+
'''Punkt 2.'''
  
 +
Z punktu 1. wiemy, że liczba pierwsza <math>p</math> dzieli <math>a^p - a = a (a^{p - 1} - 1)</math>. Jeżeli <math>p \nmid a</math>, to z&nbsp;lematu Euklidesa (zobacz twierdzenie C72) wynika natychmiast, że <math>p</math> dzieli <math>a^{p - 1} - 1</math>.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
Niech <math>P = 3</math>, <math>Q = 1</math>, <math>D = P^2 - 4 Q = 5</math>, <math>n = 22 = (10110)_2 = \sum_{j = 0}^{4} a_j \cdot 2^j</math>.
 
  
W tabeli przedstawione są kolejne kroki, jakie musimy wykonać, aby policzyć <math>U_n = U_{22}</math> modulo <math>m = 23</math>.
 
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: center; margin-right: auto;"
 
|-
 
! <math>\boldsymbol{j}</math> !! <math>\boldsymbol{a_j}</math> !! <math>\boldsymbol{k_j}</math> !! <math>\boldsymbol{U_{k_j}}</math> !! <math>\boldsymbol{U_{k_j + 1}}</math>
 
|-
 
| <math>4</math> || <math>1</math> || <math>(1)_2 = 1</math> || <math>U_1 = 1</math> || <math>U_2 = P = 3</math>
 
|-
 
| <math>3</math> || <math>0</math> || <math>(10)_2 = 2</math> || <math>U_2 = 2 U_1 U_2 - 3 U^2_1 = 6 - 3 = 3</math> || <math>U_3 = U^2_2 - 1 = 8</math>
 
|-
 
| <math>2</math> || <math>1</math> || <math>(101)_2 = 5</math> || <math>U_5 = U^2_3 - U^2_2 = 64 - 9 = 55 \equiv 9</math> || <math>U_6 = 3 U_3^2 - 2 U_2 U_3 = 192 - 48 = 144 \equiv 6</math>
 
|-
 
| <math>1</math> || <math>1</math> || <math>(1011)_2 = 11</math> || <math>U_{11} = U^2_6 - U^2_5 \equiv 36 - 81 \equiv - 45 \equiv 1</math> || <math>U_{12} = 3 U_6^2 - 2 U_5 U_6 \equiv 108 - 108 \equiv 0</math>
 
|-
 
| <math>0</math> || <math>0</math> || <math>(10110)_2 = 22</math> || <math>U_{22} = 2 U_{11} U_{12} - 3 U^2_{11} \equiv 0 - 3 \equiv 20</math> || <math>U_{23} = U^2_{12} - U^2_{11} \equiv 0 - 1 \equiv 22</math>
 
|}
 
  
W kolumnie <math>a_j</math> wypisujemy kolejne cyfry liczby <math>n = 22 = (10110)_2</math> zapisanej w&nbsp;układzie dwójkowym. Liczby w&nbsp;kolumnie <math>k_j</math> tworzymy, biorąc kolejne (od prawej do lewej) cyfry liczby <math>n</math> w&nbsp;zapisie dwójkowym. Postępując w&nbsp;ten sposób, w&nbsp;ostatnim wierszu mamy <math>k_j = n</math> i&nbsp;wyliczamy liczby <math>U_n</math> i <math>U_{n + 1}</math> modulo <math>m</math>.
 
  
Dla uproszczenia zapisu i&nbsp;ułatwienia zrozumienia liczbę <math>k_j</math> oznaczymy jako <math>r</math>, a <math>k_{j + 1}</math> jako <math>s</math>. Zauważmy, że
+
== Kryterium Eulera ==
  
:* tabela jest zbudowana tak, że musimy znaleźć wyrazy ciągu Lucasa o&nbsp;indeksie <math>r = k_j</math> oraz o&nbsp;indeksie o&nbsp;jeden większym: <math>r + 1 = k_j + 1</math>
+
<span style="font-size: 110%; font-weight: bold;">Definicja J19</span><br/>
:* przejście do następnego wiersza (w dół) oznacza, że musimy znaleźć wyrazy o&nbsp;indeksie <math>s = k_{j + 1}</math> oraz o&nbsp;indeksie o&nbsp;jeden większym: <math>s + 1</math>
+
Niech <math>p</math> będzie liczbą pierwszą i <math>a \in \mathbb{Z}</math>. Powiemy, że liczba <math>a</math> jest liczbą kwadratową modulo <math>p</math>, jeżeli kongruencja
:* przechodząc do następnego wiersza, dotychczasowa liczba <math>r = k_j</math> powiększa się o&nbsp;kolejną cyfrę ( <math>0</math> lub <math>1</math> ), którą dopisujemy z&nbsp;prawej strony
 
:* dodanie na końcu liczby <math>r = k_j</math> zera podwaja liczbę <math>r</math>, czyli <math>s = k_{j + 1} = 2 r</math> oraz <math>s + 1 = 2 r + 1</math>
 
:* dodanie na końcu liczby <math>r = k_j</math> jedynki podwaja liczbę <math>r</math> i&nbsp;zwiększą ją o&nbsp;jeden, czyli <math>s = k_{j + 1} = 2 r + 1</math> oraz <math>s + 1 = 2 r + 2</math>
 
  
 +
::<math>x^2 \equiv a \pmod{p}</math>
  
Dlatego, jeżeli kolejną dodaną cyfrą jest zero, to korzystamy ze wzorów
+
ma rozwiązanie, czyli istnieje taka liczba <math>k \in \mathbb{Z}</math>, że <math>p \, | \, (k^2 - a)</math>.
  
::<math>U_s = U_{2 r} = 2 U_r U_{r + 1} - P U^2_r</math>
+
Powiemy, że liczba <math>a</math> jest liczbą niekwadratową modulo <math>p</math>, jeżeli kongruencja
  
::<math>U_{s + 1} = U_{2 r + 1} = U^2_{r + 1} - Q U^2_r</math>
+
::<math>x^2 \equiv a \pmod{p}</math>
  
Gdy kolejną dodaną cyfrą jest jeden, to stosujemy wzory
+
nie ma rozwiązania.
  
::<math>U_s = U_{2 r + 1} = U^2_{r + 1} - Q U^2_r</math>
 
  
::<math>U_{s + 1} = U_{2 r + 2} = P U^2_{r + 1} - 2 Q U_r U_{r + 1}</math>
 
  
 +
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J20</span><br/>
 +
Jeżeli <math>p</math> jest liczbą pierwszą nieparzystą, to wśród liczb <math>1, 2, \ldots, p - 1</math> istnieje dokładnie <math>{\small\frac{p - 1}{2}}</math> liczb kwadratowych modulo <math>p</math> i&nbsp;tyle samo liczb niekwadratowych modulo <math>p</math>.
  
Korzystając ze wzoru <math>V_n = 2 U_{n + 1} - P U_n</math>, mamy
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Zauważmy, że w&nbsp;rozważanym zbiorze liczb <math>\{ 1, 2, \ldots, p - 1 \}</math>, kwadraty liczb <math>k</math> i <math>p - k</math> są takimi samymi liczbami modulo <math>p</math>, co wynika z&nbsp;oczywistej kongruencji
  
::<math>V_{22} = 2 U_{23} - 3 U_{22} \equiv 44 - 60 \equiv - 16 \equiv 7 \pmod{23}</math>
+
::<math>k^2 \equiv (p - k)^2 \pmod{p}</math>
  
Ostatecznie otrzymujemy
+
Pozwala to wypisać pary liczb, których kwadraty są identyczne modulo <math>p</math>
  
::<math>U_{22} \equiv 20 \pmod{23} \quad</math> oraz <math>\quad V_{22} \equiv 7 \pmod{23}</math>
+
::<math>(1, p - 1), (2, p - 2), \ldots, \left( {\small\frac{p - 1}{2}}, p - {\small\frac{p - 1}{2}} \right)</math>
  
 +
Ponieważ
  
 +
::<math>p - {\small\frac{p - 1}{2}} = {\small\frac{p + 1}{2}} = {\small\frac{p - 1}{2}} + 1</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L15</span><br/>
+
to wypisane pary wyczerpują cały zbiór <math>\{ 1, 2, \ldots, p - 1 \}</math>. Co więcej, liczby <math>1^2, 2^2, \ldots, \left( {\small\frac{p - 1}{2}} \right)^2</math> są wszystkie różne modulo <math>p</math>. Istotnie, przypuśćmy, że <math>1 \leqslant i, j \leqslant {\small\frac{p - 1}{2}}</math> oraz <math>i \neq j</math>, a&nbsp;jednocześnie <math>i^2 \equiv j^2 \pmod{p}</math>. Gdyby tak było, to mielibyśmy
Uogólniając postępowanie przedstawione w&nbsp;przykładzie L14, możemy napisać program w&nbsp;PARI/GP do szybkiego obliczania wyrazów ciągu Lucasa <math>U_n (P, Q)</math> i <math>V_n (P, Q)</math> modulo <math>m</math>.
 
  
<span style="font-size: 90%; color:black;">modLucas(n, P, Q, m) =
+
::<math>(i - j) (i + j) \equiv 0 \pmod{p}</math>
{
 
'''local'''(A, i, s, U, U2, V, W, W2);
 
'''if'''( m == 1, '''return'''([0, 0]) );
 
'''if'''( n == 0, '''return'''([0, 2 % m]) );
 
A = '''digits'''(n, 2); \\ otrzymujemy wektor cyfr liczby n w układzie dwójkowym
 
s = '''length'''(A); \\ długość wektora A
 
U = 1;
 
W = P;
 
i = 1;
 
'''while'''( i++ <= s,
 
        '''if'''( A[i] == 0,  U2 = 2*U*W - P*U^2;  W2 = W^2 - Q*U^2 );
 
        '''if'''( A[i] == 1,  U2 = W^2 - Q*U^2;  W2 = P*W^2 - 2*Q*U*W );
 
        U = U2 % m;
 
        W = W2 % m;
 
      );
 
V = (2*W - P*U) % m;
 
'''return'''([U, V]);
 
}</span>
 
  
 +
Łatwo zauważamy, że jest to niemożliwe, bo żaden z&nbsp;czynników nie jest podzielny przez <math>p</math>, co wynika z&nbsp;prostych oszacowań
  
 +
::<math>1 \leqslant | i - j | \leqslant i + j < p - 1</math>
  
 +
::<math>2 < i + j < p - 1</math>
  
  
== Podzielność wyrazów <math>U_n (P, Q)</math> przez liczbę pierwszą nieparzystą ==
+
Ponieważ (z definicji) liczba <math>a</math> jest liczbą kwadratową modulo <math>p</math>, jeżeli kongruencja
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L16</span><br/>
+
::<math>x^2 \equiv a \pmod{p}</math>
Niech <math>p</math> będzie liczbą pierwszą nieparzystą. W&nbsp;przypadku, gdy <math>p \nmid P Q</math> nie możemy nic powiedzieć o&nbsp;podzielności wyrazów <math>U_n</math> przez <math>p</math>. Przykładowo, jeżeli <math>P \equiv 1 \pmod{p} \;</math> <math>\text{i} \;\; Q \equiv 1 \pmod{p}</math>, to modulo <math>p</math>, mamy
 
  
::<math>(U_n) \equiv (0, 1, 1, 0, - 1, - 1, 0, 1, 1, 0, - 1, - 1, 0, 1, 1, 0, - 1, - 1, 0, 1, 1, 0, - 1, - 1, \ldots)</math>
+
ma rozwiązanie, to liczba kwadratowa modulo <math>p</math> musi przystawać do pewnego kwadratu modulo <math>p</math>.
  
W przypadku, gdy <math>P \equiv 2 \pmod{p} \;</math> <math>\text{i} \;\; Q \equiv 1 \pmod{p}</math>, to modulo <math>p</math> mamy
+
Wynika stąd, że różnych liczb kwadratowych modulo <math>p</math> jest tyle samo, co kwadratów <math>1^2, 2^2, \ldots, \left( {\small\frac{p - 1}{2}} \right)^2</math>. Czyli jest ich dokładnie <math>{\small\frac{p - 1}{2}}</math>. Pozostałe liczby w&nbsp;zbiorze <math>\{ 1, 2, \ldots, p - 1 \}</math> to liczby niekwadratowe modulo <math>p</math> i&nbsp;jest ich również <math>{\small\frac{p - 1}{2}}</math>. Co należało pokazać.<br/>
 
+
&#9633;
::<math>(U_n) \equiv (0, 1, 2, \ldots, p - 1, 0, 1, 2, \ldots, p - 1, 0, 1, 2, \ldots, p - 1, \ldots)</math>
+
{{\Spoiler}}
 
 
Sytuacja wygląda inaczej, gdy <math>p \, | \, P Q</math>.
 
  
  
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L17</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J21 (kryterium Eulera, 1748)</span><br/>
Niech <math>p</math> będzie liczbą pierwszą nieparzystą.
+
Niech <math>p</math> będzie liczbą pierwszą nieparzystą i <math>p \nmid a</math>. Modulo <math>p</math> mamy
  
 
::{| border="0"  
 
::{| border="0"  
|-style=height:1.9em
+
|-style=height:2.5em
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>\; p \, | \, P \;</math> <math>\text{i} \;\; p \, | \, Q , \;</math> to <math>\; p \, | \, U_n \;</math> dla <math>n \geqslant 2</math>
+
| &#9679;&nbsp;&nbsp;&nbsp; || liczba <math>a</math> jest liczbą kwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy <math>a^{(p - 1) / 2} \equiv 1 \pmod{p}</math>
|-style=height:1.9em
+
|-style=height:2.5em
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>\; p \, | \, P \;</math> <math>\text{i} \;\; p \nmid Q , \;</math> to <math>\; p \, | \, U_{2 n} \;</math> i <math>\; p \nmid U_{2 n + 1}</math>
+
| &#9679;&nbsp;&nbsp;&nbsp; || liczba <math>a</math> jest liczbą niekwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy <math>a^{(p - 1) / 2} \equiv - 1 \pmod{p}</math>
|-style=height:1.9em
 
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>\; p \nmid P \;</math> <math>\text{i} \;\; p \, | \, Q , \;</math> to <math>\; p \nmid U_n \;</math> dla <math>n \geqslant 1</math>
 
|-style=height:1.9em
 
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>\; p \, | \, Q , \;</math> to <math>\; p \, | \, U_n</math>, gdzie <math>n \geqslant 2</math>, wtedy i&nbsp;tylko wtedy, gdy <math>\; p \, | \, P</math>
 
|-style=height:1.9em
 
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>\; p \nmid P \;</math> <math>\text{i} \;\; p \, | \, D , \;</math> to <math>\; p \, | \, U_n \;</math> wtedy i&nbsp;tylko wtedy, gdy <math>p \, | \, n</math>
 
 
|}
 
|}
  
Założenie, że <math>p \nmid P</math> w&nbsp;ostatnim punkcie jest istotne. Gdy <math>\; p \, | \, P \;</math> i <math>\; p \, | \, D , \;</math> to <math>\; p \, | \, Q \;</math> i&nbsp;otrzymujemy punkt pierwszy.
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 
 
'''Punkt 1.'''
 
'''Punkt 1.'''
  
Ponieważ <math>U_2 = P</math>, zatem <math>p \, | \, U_2</math>. Dla <math>n \geqslant 3</math> wyrażenie <math>U_n = P U_{n - 1} - Q U_{n - 2}</math> jest podzielne przez <math>p</math>.
+
Niech <math>Q \subset \{ 1, 2, \ldots, p - 1 \}</math> będzie zbiorem wszystkich liczb kwadratowych modulo <math>p</math>, a <math>S \subset \{ 1, 2, \ldots, p - 1 \}</math> będzie zbiorem wszystkich rozwiązań kongruencji
  
'''Punkt 2.'''
+
::<math>x^{(p - 1) / 2} \equiv 1 \pmod{p}</math>
 +
 
 +
Zauważmy, że
  
Indeksy parzyste. Indukcja matematyczna. Mamy <math>U_0 = 0</math> i <math>U_2 = P</math>, zatem <math>p \, | \, U_0</math> i <math>p \, | \, U_2</math>. Zakładając, że <math>p \, | \, U_{2 n}</math>, z definicji ciągu <math>(U_k)</math>, otrzymujemy dla <math>U_{2 n + 2}</math>
+
::{| border=1 style="border-collapse: collapse;"
 +
|-style=height:2.5em
 +
| &nbsp;&nbsp;&nbsp;'''A'''&nbsp;&nbsp;&nbsp; || &nbsp;&nbsp;&nbsp;<math>| Q | = {\small\frac{p - 1}{2}}</math> || &nbsp;&nbsp;&nbsp;zobacz J20
 +
|-style=height:2.5em
 +
| &nbsp;&nbsp;&nbsp;'''B'''&nbsp;&nbsp;&nbsp; || &nbsp;&nbsp;&nbsp;<math>| S | \leqslant {\small\frac{p - 1}{2}}</math> || &nbsp;&nbsp;&nbsp;zobacz twierdzenie Lagrange'a J13
 +
|-style=height:2.5em
 +
| &nbsp;&nbsp;&nbsp;'''C'''&nbsp;&nbsp;&nbsp; || &nbsp;&nbsp;&nbsp;jeżeli <math>a \in Q</math>, to <math>a \in S \qquad </math> || &nbsp;&nbsp;&nbsp;wynika z&nbsp;ciągu implikacji:<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>a \in Q \qquad \Longrightarrow \qquad a \equiv k^2 \pmod{p}</math><br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>a \equiv k^2 \pmod{p} \qquad \Longrightarrow \qquad a^{(p - 1) / 2} \equiv (k^2)^{(p - 1) / 2} \equiv k^{p - 1} \equiv 1 \pmod{p}</math>&nbsp;&nbsp;&nbsp;<br/> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>a^{(p - 1) / 2} \equiv 1 \pmod{p} \qquad \Longrightarrow \qquad a \in S</math>
 +
|-style=height:2.5em
 +
| &nbsp;&nbsp;&nbsp;'''D'''&nbsp;&nbsp;&nbsp; || &nbsp;&nbsp;&nbsp;<math>Q \subseteq S</math> || &nbsp;&nbsp;&nbsp;z punktu '''C''' wynika, że '''każdy''' element zbioru <math>Q</math> należy do zbioru <math>S</math>
 +
|}
  
::<math>U_{2 n + 2} = P U_{2 n - 1} - Q U_{2 n}</math>
 
  
Z założenia indukcyjnego wynika, że <math>p \, | \, U_{2 n + 2}</math>, zatem na mocy zasady indukcji matematycznej twierdzenie jest prawdziwe dla wszystkich <math>n \geqslant 0</math>.
+
Łącząc rezultaty z&nbsp;tabeli, otrzymujemy
  
Indeksy nieparzyste. Indukcja matematyczna. Mamy <math>U_1 = 1</math> i <math>U_3 = P^2 - Q</math>, zatem <math>p \nmid U_1</math> i <math>p \nmid U_3</math>. Zakładając, że <math>p \nmid U_{2 n - 1}</math>, z definicji ciągu <math>(U_k)</math>, otrzymujemy dla <math>U_{2 n + 1}</math>
+
::<math>{\small\frac{p - 1}{2}} = | Q | \leqslant | S | \leqslant {\small\frac{p - 1}{2}}</math>
  
::<math>U_{2 n + 1} = P U_{2 n} - Q U_{2 n - 1}</math>
+
Skąd łatwo widzimy, że
  
Z założenia indukcyjnego wynika, że <math>p \nmid U_{2 n + 1}</math>, zatem na mocy zasady indukcji matematycznej twierdzenie jest prawdziwe dla wszystkich <math>n \geqslant 1</math>.
+
::<math>| Q | = | S | = {\small\frac{p - 1}{2}}</math>
  
'''Punkt 3.'''
+
Ponieważ <math>Q \subseteq S</math>, a&nbsp;zbiory <math>Q</math> i <math>S</math> są równoliczne, to zbiory te są równe (zobacz J22). Prostą konsekwencją równości zbiorów <math>Q</math> i <math>S</math> jest stwierdzenie
  
Indukcja matematyczna. Mamy <math>U_1 = 1</math> i <math>U_2 = P</math>, zatem <math>p \nmid U_1</math> i <math>p \nmid U_2</math>. Zakładając, że <math>p \nmid U_n</math> zachodzi dla wszystkich liczb całkowitych dodatnich nie większych od <math>n</math>, z&nbsp;definicji ciągu <math>(U_n)</math>
+
::{| border=0 style="background: #EEEEEE;"
otrzymujemy dla <math>n + 1</math>
+
|-style=height:2.0em
 +
|&nbsp;&nbsp;&nbsp;liczba <math>a</math> jest liczbą kwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy <math>a^{(p - 1) / 2} \equiv 1 \pmod{p}</math>&nbsp;&nbsp;&nbsp;
 +
|}
  
::<math>U_{n + 1} = P U_n - Q U_{n - 1}</math>
+
Co kończy dowód punktu pierwszego.
  
Z założenia indukcyjnego wynika, że <math>p \nmid U_{n + 1}</math>, zatem na mocy zasady indukcji matematycznej twierdzenie jest prawdziwe dla wszystkich liczb <math>n \geqslant 1</math>.
+
'''Punkt 2.'''
  
'''Punkt 4.'''
+
Z udowodnionego już punktu pierwszego wynika<ref name="logic1"/>, że
  
Wynika z&nbsp;punktów pierwszego i&nbsp;trzeciego.
+
::{| border=0 style="background: #EEEEEE;"
 +
|-style=height:2.0em
 +
|&nbsp;&nbsp;&nbsp;liczba <math>a</math> jest liczbą niekwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy <math>a^{(p - 1) / 2} \not\equiv 1 \pmod{p}</math>&nbsp;&nbsp;&nbsp;
 +
|}
  
'''Punkt 5.'''
+
Z twierdzenia Fermata
  
Z twierdzenia L7 wiemy, że
+
::<math>a^{p - 1} - 1 = (a^{(p - 1) / 2} - 1) \cdot (a^{(p - 1) / 2} + 1) \equiv 0 \pmod{p}</math>
  
::<math>2^{n - 1} U_n = \sum_{k = 0}^{\lfloor (n - 1) / 2 \rfloor} \binom{n}{2 k + 1} P^{n - 2 k - 1} D^k</math>
+
wynika natychmiast, że jeżeli <math>a^{(p - 1) / 2} - 1 \not\equiv 0 \pmod{p}</math>, to musi być
  
::::<math>\;\; = n P^{n - 1} + \binom{n}{3} P^{n - 3} D + \binom{n}{5} P^{n - 5} D^2 + \ldots +
+
::<math>a^{(p - 1) / 2} + 1 \equiv 0 \pmod{p}</math>
\begin{cases}
 
n P D^{(n - 2) / 2} & \text{gdy }n\text{ jest parzyste} \\
 
D^{(n - 1) / 2} & \text{gdy }n\text{ jest nieparzyste}
 
\end{cases}</math>
 
  
Z założenia <math>p \, | \, D</math>, zatem modulo <math>p</math> dostajemy
+
Fakt ten pozwala sformułować uzyskaną równoważność bardziej precyzyjnie
  
::<math>2^{n - 1} U_n \equiv n P^{n - 1} \pmod{p}</math>
+
::{| border=0 style="background: #EEEEEE;"
 +
|-style=height:2.0em
 +
|&nbsp;&nbsp;&nbsp;liczba <math>a</math> jest liczbą niekwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy <math>a^{(p - 1) / 2} \equiv - 1 \pmod{p}</math>&nbsp;&nbsp;&nbsp;
 +
|}
  
Ponieważ <math>p \nmid P</math>, zatem <math>p \, | \, U_n</math> wtedy i&nbsp;tylko wtedy, gdy <math>p \, | \, n</math>.
 
 
Co należało pokazać.<br/>
 
Co należało pokazać.<br/>
 
&#9633;
 
&#9633;
Linia 747: Linia 722:
  
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L18</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J22</span><br/>
Jeżeli <math>d</math> jest nieparzystym dzielnikiem <math>Q</math>, to dla <math>n \geqslant 2</math> jest
+
Niech <math>A</math> i <math>B</math> będą zbiorami skończonymi. Pokazać, że jeżeli <math>A \subseteq B \;\; \text{i} \;\; | A | = | B |</math>, to <math>\; A = B</math>.
  
::<math>U_n \equiv P^{n - 1} \pmod{d}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 +
Ponieważ zbiór <math>A</math> jest podzbiorem zbioru <math>B</math>, to zbiór <math>B</math> można przedstawić w&nbsp;postaci sumy zbiorów <math>A</math> i <math>C</math> takich, że żaden element zbioru <math>C</math> nie jest elementem zbioru <math>A</math>. Zatem
  
W szczególności, gdy liczba pierwsza nieparzysta <math>p</math> jest dzielnikiem <math>Q</math> i <math>p \nmid P</math>, to
+
::<math>B = A \cup C \qquad \text{i} \qquad A \cap C = \varnothing</math>
  
::<math>U_p \equiv 1 \pmod{p}</math>
+
Ponieważ z&nbsp;założenia zbiory <math>A</math> i <math>C</math> są rozłączne, to wiemy, że
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
::<math>| A \cup C | = | A | + | C |</math>
Oznaczmy <math>\delta = \sqrt{D}</math>, zatem <math>2 \alpha = P + \delta</math> i <math>2 \beta = P - \delta</math>. Ze wzoru dwumianowego, mamy
 
  
::<math>2^n \alpha^n = (P + \delta)^n = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} \delta^j</math>
+
Czyli
  
::<math>2^n \beta^n = (P - \delta)^n = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} (- \delta)^j</math>
+
::<math>| B | = | A \cup C | = | A | + | C |</math>
  
 +
Skąd wynika, że <math>| C | = 0</math>, zatem zbiór <math>C</math> jest zbiorem pustym i&nbsp;otrzymujemy natychmiast <math>B = A</math>. Co należało pokazać.
  
Obliczając różnicę wyjściowych wzorów, mamy
 
  
::<math>2^n (\alpha^n - \beta^n) = \sum_{j = 0}^{n} \binom{n}{j} P^{n - j} (\delta^j - (- \delta)^j) =</math>
+
<span style="border-bottom-style: double;">Uwaga (przypadek zbiorów skończonych)</span><br/>
 +
Najczęściej prawdziwe jest jedynie oszacowanie <math>| A \cup C | \leqslant | A | + | C |</math>, bo niektóre elementy mogą zostać policzone dwa razy. Elementy liczone dwukrotnie to te, które należą do iloczynu zbiorów <math>| A |</math> i <math>| C |</math>, zatem od sumy <math>| A | + | C |</math> musimy odjąć liczbę elementów iloczynu zbiorów <math>| A |</math> i <math>| C |</math>. Co daje ogólny wzór<ref name="sumazbiorow"/>
  
:::::<math>\quad \: = \underset{j \; \text{nieparzyste}}{\sum_{j = 1}^{n}} \binom{n}{j} P^{n - j} \cdot 2 \delta^j</math>
+
::<math>| A \cup C | = | A | + | C | - | A \cap C |</math><br/>
 +
&#9633;
 +
{{\Spoiler}}
  
:::::<math>\quad \: = 2 \underset{j \; \text{nieparzyste}}{\sum_{j = 1}^{n}} \binom{n}{j} P^{n - j} \cdot \delta \cdot D^{(j - 1) / 2}</math>
 
  
Rozpatrując powyższą równość modulo <math>Q</math> dostajemy (zobacz L43)
 
  
::<math>2^{n - 1} \cdot {\small\frac{\alpha^n - \beta^n}{\delta}} = 2^{n - 1} U_n \equiv \underset{j \; \text{nieparzyste}}{\sum_{j = 1}^{n}} \binom{n}{j} P^{n - j} \cdot P^{j - 1}</math>
 
  
:::::::::<math>\;\:\: \equiv P^{n - 1} \underset{j \; \text{nieparzyste}}{\sum_{j = 1}^{n}} \binom{n}{j}</math>
 
  
:::::::::<math>\;\:\: \equiv 2^{n - 1} P^{n - 1}</math>
 
  
Czyli
 
  
::<math>2^{n - 1} (U_n - P^{n - 1}) \equiv 0 \pmod{Q}</math>
 
  
Ponieważ <math>Q</math> dzieli <math>2^{n - 1} (U_n - P^{n - 1})</math>, to tym bardziej <math>d</math> dzieli <math>2^{n - 1} (U_n - P^{n - 1})</math>. Z założenia <math>\gcd (d, 2^{n - 1}) = 1</math>, zatem <math>d</math> dzieli <math>U_n - P^{n - 1}</math> (zobacz C72).
 
  
W przypadku szczególnym, gdy <math>d = p</math>, gdzie <math>p</math> jest nieparzystą liczbą pierwszą i <math>p \nmid P</math>, z&nbsp;twierdzenia Fermata otrzymujemy natychmiast
 
  
::<math>U_p \equiv P^{p - 1} \equiv 1 \pmod{p}</math>
+
== Symbol Legendre'a ==
  
Co należało pokazać.<br/>
+
<span style="font-size: 110%; font-weight: bold;">Definicja J23</span><br/>
&#9633;
+
Niech <math>p</math> będzie liczbą pierwszą nieparzystą i <math>a \in \mathbb{Z}</math>. Symbolem Legendre'a<ref name="legendre1"/> nazywamy funkcję <math>a</math> i <math>p</math> zdefiniowaną następująco
{{\Spoiler}}
 
  
 +
::<math>\left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} =
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } \, a \, \text{ jest liczbą kwadratową modulo } \, p \,  \text{ oraz } \, p \nmid a \\
 +
      - 1 & \text{gdy } \, a \, \text{ jest liczbą niekwadratową modulo } \, p \\
 +
\;\;\: 0 & \text{gdy } \, p \, | \, a
 +
\end{cases}</math>
  
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L19</span><br/>
 
Niech <math>D = P^2 - 4 Q</math>, a <math>(D \, | \, p)</math> oznacza symbol Legendre'a, gdzie <math>p</math> jest liczbą pierwszą nieparzystą i <math>p \nmid Q</math>. Mamy
 
  
::{| border="0"
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J24</span><br/>
|-style=height:2em
+
Powyższa definicja pozwala nam zapisać kryterium Eulera w&nbsp;zwartej formie, która obejmuje również przypadek, gdy <math>p \, | \, a</math>
| &#9679;&nbsp;&nbsp;&nbsp; <math>U_p \equiv (D \, | \, p) \pmod{p}</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>(D \, | \, p) = - 1 , \;</math> to <math>\; p \, | \, U_{p + 1}</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli <math>(D \, | \, p) = 1 , \;</math> to <math>\; p \, | \, U_{p - 1}</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
::<math>a^{(p - 1) / 2} \equiv \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} \pmod{p}</math>
'''Punkt 1.'''
 
  
Zauważmy, że przypadek gdy <math>p \, | \, Q</math>, omówiliśmy w&nbsp;twierdzeniu poprzednim. Z&nbsp;założenia <math>p</math> jest liczbą pierwszą nieparzystą. Z&nbsp;twierdzenia L7, w&nbsp;przypadku nieparzystego <math>n = p</math>, otrzymujemy
 
  
::<math>2^{p - 1} U_p = p P^{p - 1} + \binom{p}{3} P^{p - 3} D + \binom{p}{5} P^{p - 5} D^2 + \ldots + \binom{p}{p-2} P^2 D^{(p - 3) / 2} + D^{(p - 1) / 2}</math>
 
  
Ponieważ dla każdego <math>k \in [1, p - 1]</math> (zobacz L43)
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J25*</span><br/>
 +
Niech <math>a, b \in \mathbb{Z}</math> oraz <math>p, q</math> będą nieparzystymi liczbami pierwszymi. Symbol Legendre'a ma następujące właściwości
  
::<math>\binom{p}{k} \equiv 0 \pmod{p}</math>
+
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: left; margin-right: auto;"
 +
|-
 +
| &nbsp;&nbsp;1.&nbsp;&nbsp; || <math>\left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} \,\, = \,\, 0 \quad \Longleftrightarrow \quad \gcd (a, p) > 1</math>
 +
|-
 +
| &nbsp;&nbsp;2.&nbsp;&nbsp; || <math>a \equiv b \pmod p \quad \Longrightarrow \quad \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} = \left( {\small\frac{b}{p}} \right)_{\small{\!\! L}}</math>
 +
|-
 +
| &nbsp;&nbsp;3.&nbsp;&nbsp; || <math>\left( {\small\frac{a b}{p}} \right)_{\small{\!\! L}} \,\, = \,\, \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} \cdot  \left( {\small\frac{b}{p}} \right)_{\small{\!\! L}}</math>
 +
|-
 +
| &nbsp;&nbsp;4.&nbsp;&nbsp; || <math>a^{(p - 1) / 2} \equiv \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} \pmod{p}</math>
 +
|-
 +
| &nbsp;&nbsp;5.&nbsp;&nbsp; || <math>\left( {\small\frac{1}{p}} \right)_{\small{\!\! L}} \,\, = \,\, 1</math>
 +
|-
 +
| &nbsp;&nbsp;6.&nbsp;&nbsp; || <math>\left( {\small\frac{- 1}{p}} \right)_{\small{\!\! L}} \,\, = \,\, (- 1)^{\tfrac{p - 1}{2}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } p \equiv 1 \pmod{4} \\
 +
      - 1 & \text{gdy } p \equiv 3 \pmod{4}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;7.&nbsp;&nbsp; || <math>\left( {\small\frac{2}{p}} \right)_{\small{\!\! L}} \,\, = \,\, (- 1)^{\tfrac{p^2 - 1}{8}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } p \equiv 1, 7 \pmod{8} \\
 +
      - 1 & \text{gdy } p \equiv 3, 5 \pmod{8}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;8.&nbsp;&nbsp; || <math>\left( {\small\frac{- 2}{p}} \right)_{\small{\!\! L}} \,\, = \,\, (- 1)^{\tfrac{(p - 1)(p - 3)}{8}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } p \equiv 1, 3 \pmod{8} \\
 +
      - 1 & \text{gdy } p \equiv 5, 7 \pmod{8}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;9.&nbsp;&nbsp; || <math>\left( {\small\frac{p}{q}} \right)_{\small{\!\! L}} \,\, = \,\, \left( {\small\frac{q}{p}} \right)_{\small{\!\! L}} \cdot (-1)^{\tfrac{q - 1}{2} \cdot \tfrac{p - 1}{2}} \,\, = \,\, \left( {\small\frac{q}{p}} \right)_{\small{\!\! L}} \cdot
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } p \equiv 1 \pmod{4} \;\;\; \text{lub} \;\;\; q \equiv 1 \pmod{4} \\
 +
      - 1 & \text{gdy } p \equiv q \equiv 3 \pmod{4}
 +
  \end{cases}</math>
 +
|}
  
to modulo <math>p</math> dostajemy (zobacz J24)
 
  
::<math>2^{p - 1} U_p \equiv U_p \equiv D^{(p - 1) / 2} \equiv (D \, | \, p) \pmod{p}</math>
 
  
'''Punkt 2.'''
 
  
Zauważmy, że warunek <math>(D \, | \, p) = - 1</math> nie może być spełniony, gdy <math>p \, | \, Q</math>. Istotnie, gdy <math>p \, | \, Q</math>, to <math>D = P^2 - 4 Q \equiv P^2 \pmod{p}</math>, czyli
 
  
::<math>(D \, | \, p) = (P^2 \, | \, p) = (P \, | \, p)^2 = 0 , \;</math> gdy <math>p \, | \, P</math>
 
  
lub
 
  
::<math>(D \, | \, p) = (P^2 \, | \, p) = (P \, | \, p)^2 = 1 , \;</math> gdy <math>p \nmid P</math>
 
  
i nie może być <math>(D \, | \, p) = - 1</math>.
+
== Symbol Jacobiego ==
  
Dla parzystego <math>n = p + 1</math> otrzymujemy z&nbsp;twierdzenia L7
+
<span style="font-size: 110%; font-weight: bold;">Definicja J26</span><br/>
 +
Niech liczby <math>a \in \mathbb{Z}</math> i <math>m \in \mathbb{Z}_+</math> będą względnie pierwsze. Powiemy, że liczba <math>a</math> jest liczbą kwadratową modulo <math>m</math>, jeżeli kongruencja
  
::<math>2^p U_{p + 1} = (p + 1) P^p + \binom{p + 1}{3} P^{p - 2} D + \binom{p + 1}{5} P^{p - 4} D^2 + \ldots + \binom{p + 1}{p - 2} P^3 D^{(p - 3) / 2} + (p + 1) P D^{(p - 1) / 2}</math>
+
::<math>x^2 \equiv a \pmod{m}</math>
  
Ponieważ dla <math>k \in [2, p - 1]</math> (zobacz L44)
+
ma rozwiązanie, czyli istnieje taka liczba <math>k \in \mathbb{Z}</math>, że <math>m \, | \, (k^2 - a)</math>.
  
::<math>\binom{p + 1}{k} \equiv 0 \pmod{p}</math>
+
Powiemy, że liczba <math>a</math> jest liczbą niekwadratową modulo <math>m</math>, jeżeli kongruencja
  
to modulo <math>p</math> dostajemy
+
::<math>x^2 \equiv a \pmod{m}</math>
  
::<math>2 U_{p + 1} \equiv P + P D^{(p - 1) / 2} \pmod{p}</math>
+
nie ma rozwiązania.
  
  
Z założenia <math>D</math> jest liczbą niekwadratową modulo <math>p</math>, zatem <math>D^{(p - 1) / 2} \equiv - 1 \pmod{p}</math> (zobacz J21). Skąd wynika natychmiast, że
 
  
::<math>2 U_{p + 1} \equiv 0 \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J27</span><br/>
 +
Ponieważ często można spotkać definicję liczb kwadratowych i niekwadratowych modulo <math>m</math>, w której warunek <math>\gcd (a, m) = 1</math> zostaje pominięty, to Czytelnik powinien zawsze upewnić się, jaka definicja jest stosowana. Najczęściej w takim przypadku liczba <math>0</math> nie jest uznawana za liczbę kwadratową modulo <math>m</math>.
  
Czyli <math>p \, | \, U_{p + 1}</math>.
+
Przykładowo:
  
'''Punkt 3.'''
+
::<math>\left\{ 0^2, 1^2, 2^2, 3^2, 4^2, 5^2, 6^2, 7^2, 8^2, 9^2 \right\} \equiv \left\{ 0, 1, 4, 9, 6, 5, 6, 9, 4, 1 \right\} \pmod{10}</math>
  
Dla parzystego <math>n = p - 1</math> otrzymujemy z&nbsp;twierdzenia L7
+
Liczby kwadratowe modulo <math>10</math> to <math>\left\{ 1, 9 \right\}</math>, a niekwadratowe to <math>\left\{ 3, 7 \right\}</math>. Liczby <math>\left\{ 0, 2, 4, 5, 6, 8 \right\}</math> nie są ani liczbami kwadratowymi, ani liczbami niekwadratowymi modulo <math>10</math>.
  
::<math>2^{p - 2} U_{p - 1} = (p - 1) P^{p - 2} + \binom{p - 1}{3} P^{p - 4} D + \binom{p - 1}{5} P^{p - 6} D^2 + \ldots + \binom{p - 1}{p - 4} P^3 D^{(p - 5) / 2} + (p - 1) P D^{(p - 3) / 2}</math>
+
Jeśli odrzucimy warunek <math>\gcd (a, m) = 1</math>, to liczbami kwadratowymi modulo <math>10</math> będą <math>\left\{ 0, 1, 4, 5, 6, 9 \right\}</math>, a niekwadratowymi <math>\left\{ 2, 3, 7, 8 \right\}</math>.
  
Ponieważ dla <math>k \in [0, p - 1]</math> (zobacz L45)
+
Inny przykład. Niech <math>m = 210 = 2 \cdot 3 \cdot 5 \cdot 7</math>. W zależności od przyjętej definicji najmniejszą liczbą niekwadratową modulo <math>m</math> będzie albo <math>11</math>, albo <math>2</math>.
  
::<math>\binom{p - 1}{k} \equiv (- 1)^k \pmod{p}</math>
 
  
to modulo <math>p</math> mamy
 
  
::<math>2^{p - 2} U_{p - 1} \equiv - (P^{p - 2} + P^{p - 4} D + P^{p - 6} D^2 + \ldots + P D^{(p - 3) / 2}) \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J28</span><br/>
 +
Niech liczby <math>m, n \in \mathbb{Z}_+</math> i <math>\gcd (m, n) = 1</math>. Pokazać, że liczba <math>a \in \mathbb{Z}</math> jest liczbą kwadratową modulo <math>m n</math> wtedy i&nbsp;tylko wtedy, gdy jest liczbą kwadratową modulo <math>m</math> i&nbsp;modulo <math>n</math>.
  
::::<math>\quad \,\, \equiv - P (P^{p - 3} + P^{p - 5} D + P^{p - 7} D^2 + \ldots + D^{(p - 3) / 2}) \pmod{p}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 +
Niech <math>W(x) = x^2 - a</math>. Zauważmy, że liczba <math>a</math> jest liczbą kwadratową modulo <math>m</math> wtedy i&nbsp;tylko wtedy, gdy kongruencja <math>W(x) \equiv 0 \pmod{m}</math> ma rozwiązanie. Dalsza analiza problemu przebiega dokładnie tak, jak to zostało przedstawione w&nbsp;uwadze J11.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
  
Z założenia <math>D</math> jest liczbą kwadratową modulo <math>p</math> (zobacz J19), zatem istnieje taka liczba <math>R</math>, że
 
  
::<math>D \equiv R^2 \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Definicja J29</span><br/>
 +
Symbol Jacobiego<ref name="jacobi1"/> <math>\left( {\small\frac{a}{n}} \right)_{\small{\!\! J}}</math> jest uogólnieniem symbolu Legendre'a <math>\left( {\small\frac{a}{p}} \right)_{\small{\!\! L}}</math> dla dodatnich liczb nieparzystych.
 +
Niech <math>n = \prod_i p_i^{\alpha_i}</math> będzie rozkładem liczby <math>n</math> na czynniki pierwsze, wtedy
  
Ponieważ
+
::<math>\left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} = \prod_i \left( {\small\frac{a}{p_i}} \right)_{\small{\!\! L}}^{\!\! \alpha_i}</math>
  
:* <math>(D \, | \, p) = 1</math>, to <math>p \nmid D</math>, zatem <math>p \nmid R</math>
 
:* z&nbsp;założenia <math>p \nmid Q</math>, to <math>P^2 - R^2 \equiv P^2 - D \equiv 4 Q \not\equiv 0 \pmod{p}</math>
 
  
  
Czyli
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J30</span><br/>
 +
Zauważmy, że w&nbsp;przypadku gdy <math>n = 1</math>, po prawej stronie mamy „pusty” iloczyn (bez jakiegokolwiek czynnika). Podobnie jak „pustej” sumie przypisujemy wartość zero, tak „pustemu” iloczynowi przypisujemy wartość jeden. Zatem dla dowolnego <math>a \in \mathbb{Z}</math> jest <math>\left( {\small\frac{a}{1}} \right)_{\small{\!\! J}} = 1</math>.
  
::<math>2^{p - 2} U_{p - 1} \equiv - P (P^{p - 3} + P^{p - 5} R^2 + P^{p - 7} R^4 + \ldots + R^{p - 3}) \pmod{p}</math>
 
  
  
Uwzględniając, że <math>P^2 - R^2 \not\equiv 0 \pmod{p}</math>, możemy napisać
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J31*</span><br/>
 +
Niech <math>a, b \in \mathbb{Z}</math> oraz <math>m, n \in \mathbb{Z}_+</math> i <math>m, n</math> będą liczbami nieparzystymi. Symbol Jacobiego ma następujące właściwości
  
::<math>2^{p - 2} (P^2 - R^2) U_{p - 1} \equiv - P (P^2 - R^2) (P^{p - 3} + P^{p - 5} R^2 + P^{p - 7} R^4 + \ldots + R^{p - 3}) \pmod{p}</math>
+
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: left; margin-right: auto;"
 +
|-
 +
| &nbsp;&nbsp;1.&nbsp;&nbsp; || <math>\left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} \,\, = \,\, 0 \quad \Longleftrightarrow \quad \gcd (a, n) > 1</math>
 +
|-
 +
| &nbsp;&nbsp;2.&nbsp;&nbsp; || <math>a \equiv b \pmod n \quad \Longrightarrow \quad \left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} = \left( {\small\frac{b}{n}} \right)_{\small{\!\! J}}</math>
 +
|-
 +
| &nbsp;&nbsp;3.&nbsp;&nbsp; || <math>\left( {\small\frac{a b}{n}} \right)_{\small{\!\! J}} \,\, = \,\, \left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} \cdot  \left( {\small\frac{b}{n}} \right)_{\small{\!\! J}}</math>
 +
|-
 +
| &nbsp;&nbsp;4.&nbsp;&nbsp; || <math>\left( {\small\frac{a}{m n}} \right)_{\small{\!\! J}} \,\, = \,\, \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} \cdot  \left( {\small\frac{a}{n}} \right)_{\small{\!\! J}}</math>
 +
|-
 +
| &nbsp;&nbsp;5.&nbsp;&nbsp; || <math>\left( {\small\frac{1}{n}} \right)_{\small{\!\! J}} \,\, = \,\, 1</math>
 +
|-
 +
| &nbsp;&nbsp;6.&nbsp;&nbsp; || <math>\left( {\small\frac{- 1}{n}} \right)_{\small{\!\! J}} \,\, = \,\, (- 1)^{\tfrac{n - 1}{2}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } n \equiv 1 \pmod{4} \\
 +
      - 1 & \text{gdy } n \equiv 3 \pmod{4}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;7.&nbsp;&nbsp; || <math>\left( {\small\frac{2}{n}} \right)_{\small{\!\! J}} \,\, = \,\, (- 1)^{\tfrac{n^2 - 1}{8}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } n \equiv 1, 7 \pmod{8} \\
 +
      - 1 & \text{gdy } n \equiv 3, 5 \pmod{8}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;8.&nbsp;&nbsp; || <math>\left( {\small\frac{- 2}{n}} \right)_{\small{\!\! J}} \,\, = \,\, (- 1)^{\tfrac{(n - 1)(n - 3)}{8}} \,\, = \,\,
 +
  \begin{cases}
 +
\;\;\: 1 & \text{gdy } n \equiv 1, 3 \pmod{8} \\
 +
      - 1 & \text{gdy } n \equiv 5, 7 \pmod{8}
 +
  \end{cases}</math>
 +
|-
 +
| &nbsp;&nbsp;9.&nbsp;&nbsp; || <math>\left( {\small\frac{m}{n}} \right)_{\small{\!\! J}} \,\, = \,\, \left( {\small\frac{n}{m}} \right)_{\small{\!\! J}} \cdot (-1)^{\tfrac{n - 1}{2} \cdot \tfrac{m - 1}{2}} \,\, = \,\, \left( {\small\frac{n}{m}} \right)_{\small{\!\! J}} \cdot
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } m \equiv 1 \pmod{4} \;\;\; \text{lub} \;\;\; n \equiv 1 \pmod{4} \\
 +
      - 1 & \text{gdy } m \equiv n \equiv 3 \pmod{4}  
 +
  \end{cases}</math>
 +
|}
  
::::::::<math>\equiv - P (P^{p - 1} - R^{p - 1}) \pmod{p}</math>
 
  
::::::::<math>\equiv 0 \pmod{p}</math>
 
  
Zauważmy, że wynik nie zależy od tego, czy <math>p \, | \, P</math>, czy <math>p \nmid P</math>. Skąd wynika
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J32</span><br/>
 +
Zauważmy, że poza zmienionym założeniem tabela z&nbsp;powyższego twierdzenia i&nbsp;tabela z&nbsp;twierdzenia J25 różnią się jedynie punktem czwartym. Oczywiście jest to tylko podobieństwo formalne – symbol Legendre'a i&nbsp;symbol Jacobiego są różnymi funkcjami.
  
::<math>U_{p - 1} \equiv 0 \pmod{p}</math>
 
  
Co należało pokazać.<br/>
 
&#9633;
 
{{\Spoiler}}
 
  
 +
<span style="font-size: 110%; font-weight: bold;">Uwaga J33</span><br/>
 +
Zauważmy, że w&nbsp;przypadku, gdy <math>m</math> jest liczbą nieparzystą
  
 +
:* jeżeli <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1</math>, to <math>a</math> jest liczbą niekwadratową modulo <math>m</math>
 +
:* jeżeli <math>a</math> jest liczbą niekwadratową modulo <math>m</math>, to '''nie musi być''' <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1</math>
 +
:* jeżeli <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = + 1</math>, to <math>a</math> '''nie musi być''' liczbą kwadratową modulo <math>m</math>
 +
:* jeżeli <math>a</math> jest liczbą kwadratową modulo <math>m</math>, to jest <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = + 1</math>
  
Aby zapisać punkty 2. i 3. twierdzenia L19 (i tylko te punkty) w&nbsp;zwartej formie, musimy założyć, że <math>\gcd (p, D) = 1</math>. Otrzymujemy<br/>
+
Przykład: jeżeli <math>\gcd (a, m) = 1</math>, to <math>\left( {\small\frac{a}{m^2}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}}^2 = + 1</math>, ale <math>a</math> może być liczbą niekwadratową modulo <math>m^2</math>.
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L20</span><br/>
 
Jeżeli <math>p</math> jest liczbą pierwszą nieparzystą i <math>\gcd (p, Q D) = 1</math>, to
 
  
::<math>U_{p - (D \, | \, p)} \equiv 0 \pmod{p}</math>
+
Modulo <math>9</math> liczbami niekwadratowymi są: <math>2, 5, 8</math>. Modulo <math>25</math> liczbami niekwadratowymi są: <math>2, 3, 7, 8, 12, 13, 17, 18, 22, 23</math>.
  
  
  
 +
<span style="font-size: 110%; font-weight: bold;">Uwaga J34</span><br/>
 +
Wszystkie liczby kwadratowe i&nbsp;niekwadratowe modulo <math>m</math> można łatwo znaleźć, wykorzystując prosty program:
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
 +
<span style="font-size: 90%; color:black;">QRandQNR(m) =
 +
{
 +
'''local'''(k, S, V);
 +
S = [];
 +
V = [];
 +
'''for'''(k = 1,  m - 1, '''if'''( '''gcd'''(k, m) > 1, '''next'''() ); S = '''concat'''(S, k));
 +
S = '''Set'''(S); \\ zbiór liczb względnie pierwszych z m
 +
'''for'''(k = 1,  m - 1, '''if'''( '''gcd'''(k, m) > 1, '''next'''() ); V = '''concat'''(V, k^2 % m));
 +
V = '''Set'''(V); \\ zbiór liczb kwadratowych modulo m
 +
'''print'''("QR: ", V);
 +
'''print'''("QNR: ", '''setminus'''(S, V)); \\ różnica zbiorów S i V
 +
}</span>
 +
<br/>
 +
{{\Spoiler}}
  
== Liczby pseudopierwsze Lucasa ==
 
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L21</span><br/>
 
Z twierdzenia L20 wiemy, że liczby pierwsze nieparzyste <math>p</math> takie, że <math>p \nmid Q D</math> są dzielnikami wyrazów ciągu Lucasa <math>U_{p - (D \, | \, p)}</math>, gdzie <math>(D \, | \, p)</math> oznacza symbol Legendre'a. Jeśli zastąpimy symbol Legendre'a symbolem Jacobiego, to będziemy mogli badać prawdziwość tego twierdzenia dla liczb złożonych i&nbsp;łatwo przekonamy się, że dla pewnych liczb złożonych <math>m</math> kongruencja
 
  
::<math>U_{m - (D \, | \, m)} \equiv 0 \pmod{m}</math>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J35</span><br/>
 +
Pokazać, że
  
również jest prawdziwa. Prowadzi to definicji liczb pseudopierwszych Lucasa.
+
::<math>\left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 12}{m}} \right)_{\small{\!\! J}} =
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } m = 6 k + 1 \\
 +
\;\;\: 0 & \text{gdy } m = 6 k + 3 \\
 +
      - 1 & \text{gdy } m = 6 k + 5
 +
\end{cases}</math>
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 +
Zauważmy, że
  
 +
::<math>\left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 1}{m}} \right)_{\small{\!\! J}} \cdot \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}}</math>
  
<span style="font-size: 110%; font-weight: bold;">Definicja L22</span><br/>
+
::::<math>\; = (- 1)^{\tfrac{m - 1}{2}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} \cdot \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}}</math>
Powiemy, że liczba złożona nieparzysta <math>m</math> jest liczbą pseudopierwszą Lucasa dla parametrów <math>P</math> i <math>Q</math> (symbolicznie: LPSP( <math>P, Q</math> )), jeżeli <math>\gcd (m, Q D) = 1</math> i
 
  
::<math>U_{m - (D \, | \, m)} \equiv 0 \pmod{m}</math>
+
::::<math>\; = (- 1)^{m - 1} \cdot \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}}</math>
  
gdzie <math>(D \, | \, m)</math> oznacza symbol Jacobiego.
+
::::<math>\; = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}}</math>
  
 +
bo <math>m</math> jest liczbą nieparzystą.
  
 +
Rozważmy liczby nieparzyste <math>m</math> postaci <math>6 k + r</math>, gdzie <math>r = 1, 3, 5</math>. Mamy
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L23</span><br/>
+
::<math>\left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}}</math>
Jeżeli liczba złożona nieparzysta <math>m</math> jest liczbą pseudopierwszą Lucasa dla parametrów <math>P = a + 1</math> i <math>Q = a</math>, gdzie <math>a \geqslant 2</math>, to jest liczbą pseudopierwszą Fermata przy podstawie <math>a</math>.
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
::::<math>\; = \left( {\small\frac{6 k + r}{3}} \right)_{\small{\!\! J}}</math>
Połóżmy we wzorze definiującym ciąg Lucasa
 
  
::<math>U_m = {\small\frac{\alpha^m - \beta^m}{\alpha - \beta}}</math>
+
::::<math>\; = \left( {\small\frac{r}{3}} \right)_{\small{\!\! J}}</math>
  
<math>\alpha = a</math> i <math>\beta = 1</math>. Odpowiada to parametrom <math>P = \alpha + \beta = a + 1</math>, <math>Q = \alpha \beta = a</math>, <math>D = (\alpha - \beta)^2 = (a - 1)^2</math>.
+
::::<math>\; =
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } r = 1 \\
 +
\;\;\: 0 & \text{gdy } r = 3 \\
 +
      - 1 & \text{gdy } r = 5
 +
\end{cases}</math>
  
Ponieważ musi być <math>\gcd (m, Q D) = 1</math>, to mamy <math>\gcd (m, (a - 1) a) = 1</math> i&nbsp;wynika stąd, że <math>(D \, | \, m) = 1</math>. Z&nbsp;założenia <math>m</math> jest liczbą pseudopierwszą Lucasa dla parametrów <math>P = a + 1</math> i <math>Q = a</math>, zatem
+
bo odpowiednio dla <math>r = 1, 3, 5</math> jest
  
::<math>U_{m - 1} (a + 1, a) \equiv 0 \pmod{m}</math>
+
::<math>\left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} = 1</math>
  
Czyli
+
::<math>\left( {\small\frac{3}{3}} \right)_{\small{\!\! J}} = 0</math>
  
::<math>{\small\frac{a^{m - 1} - 1}{a - 1}} \equiv 0 \pmod{m}</math>
+
::<math>\left( {\small\frac{5}{3}} \right)_{\small{\!\! J}} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{9 - 1}{8}} = - 1</math>
  
Jeżeli <math>m \biggr\rvert {\small\frac{a^{m - 1} - 1}{a - 1}}</math>, to tym bardziej <math>m \big\rvert (a^{m - 1} - 1)</math> i&nbsp;możemy napisać
+
Łatwo zauważamy, że
  
::<math>a^{m - 1} - 1 \equiv 0 \pmod{m}</math>
+
::<math>\left( {\small\frac{- 12}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 3 \cdot 2^2}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} \cdot \left( {\small\frac{2}{m}} \right)_{\small{\!\! J}}^{\! 2} = \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}}</math>
  
Zatem <math>m</math> jest liczbą pseudopierwszą Fermata przy podstawie <math>a</math>. Co należało pokazać.<br/>
+
Co należało pokazać.<br/>
 
&#9633;
 
&#9633;
 
{{\Spoiler}}
 
{{\Spoiler}}
Linia 962: Linia 1018:
  
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L24</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J36</span><br/>
Wykorzystując funkcje <code>jacobi(a, n)</code> i <code>modLucas(n, P, Q, m)</code> (zobacz J37, L15) możemy napisać prosty program, który sprawdza, czy dla liczby nieparzystej <math>m</math> prawdziwe jest twierdzenie L20.
+
Pokazać, że
  
<span style="font-size: 90%; color:black;">isPrimeOr<span style="background-color: #fee481;">LPSP</span>(m, P, Q) =  
+
::<math>\left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} =  
{
+
\begin{cases}
  '''local'''(D, js);
+
  \;\;\: 1 & \text{gdy } m = 12 k \pm 1 \\
D = P^2 - 4*Q;
+
  \;\;\: 0 & \text{gdy } m = 12 k \pm 3 \\
'''if'''( gcd(m, 2*Q*D) > 1, '''return'''(0) );
+
      - 1 & \text{gdy } m = 12 k \pm 5
  js = jacobi(D, m);
+
\end{cases}</math>
'''if'''( modLucas(m - js, P, Q, m)[1] == 0, '''return'''(1), '''return'''(0) );
 
}
 
  
  
 +
::<math>\left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} =
 +
\begin{cases}
 +
\;\;\: 1 & \text{gdy } m = 10 k \pm 1 \\
 +
\;\;\: 0 & \text{gdy } m = 10 k + 5 \\
 +
      - 1 & \text{gdy } m = 10 k \pm 3
 +
\end{cases}</math>
  
<span style="font-size: 110%; font-weight: bold;">Przykład L25</span><br/>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
Poniższa tabela zawiera najmniejsze liczby pseudopierwsze Lucasa dla różnych parametrów <math>P</math> i <math>Q</math>
 
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: right; margin-right: auto;"
+
'''Punkt 1.'''
! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>\boldsymbol{P}</math><br/><math>\boldsymbol{Q}</math>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
! <math>\boldsymbol{1}</math> !! <math>\boldsymbol{2}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math> !! <math>\boldsymbol{10}</math>
 
|-
 
! <math>\boldsymbol{- 5}</math>
 
| <math>253</math> || <math>121</math> || <math>57</math> || <math>217</math> || style="background-color: yellow" | <math>323</math> || <math>69</math> || <math>121</math> || <math>253</math> || <math>9</math> || style="background-color: yellow" | <math>143</math>
 
|-
 
! <math>\boldsymbol{- 4}</math>
 
| <math>9</math> || style="background-color: yellow" | <math>323</math> || <math>91</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>15</math> || style="background-color: yellow" | <math>119</math> || <math>57</math> || <math>9</math> || <math>9</math> || <math>9</math>
 
|-
 
! <math>\boldsymbol{- 3}</math>
 
| <math>217</math> || <math>91</math> || style="background-color: yellow" | <math>527</math> || <math>25</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>65</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>323</math>
 
|-
 
! <math>\boldsymbol{- 2}</math>
 
| <math>341</math> || style="background-color: yellow" | <math>209</math> || style="background-color: yellow" | <math>39</math> || <math>49</math> || <math>49</math> || style="background-color: yellow" | <math>15</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>35</math> || <math>9</math> || <math>85</math>
 
|-
 
! <math>\boldsymbol{- 1}</math>
 
| style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>119</math> || <math>9</math> || <math>9</math> || style="background-color: yellow" | <math>143</math> || <math>25</math> || <math>33</math> || <math>9</math> || style="background-color: yellow" | <math>15</math>
 
|-
 
! <math>\boldsymbol{1}</math>
 
| <math>25</math> || style="background-color: red" | <math></math> || <math>21</math> || style="background-color: yellow" | <math>65</math> || style="background-color: yellow" | <math>115</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>209</math> || <math>9</math> || style="background-color: yellow" | <math>35</math>
 
|-
 
! <math>\boldsymbol{2}</math>
 
| <math>1541</math> || <math>9</math> || <math>341</math> || style="background-color: yellow" | <math>35</math> || <math>21</math> || <math>85</math> || <math>9</math> || style="background-color: yellow" | <math>15</math> || <math>9</math> || style="background-color: yellow" | <math>35</math>
 
|-
 
! <math>\boldsymbol{3}</math>
 
| style="background-color: yellow" | <math>629</math> || style="background-color: yellow" | <math>559</math> || <math>25</math> || <math>91</math> || <math>49</math> || <math>49</math> || style="background-color: yellow" | <math>35</math> || <math>55</math> || <math>25</math> || style="background-color: yellow" | <math>35</math>
 
|-
 
! <math>\boldsymbol{4}</math>
 
| style="background-color: yellow" | <math>119</math> || <math>25</math> || style="background-color: yellow" | <math>209</math> || style="background-color: red" | <math></math> || <math>85</math> || <math>21</math> || style="background-color: yellow" | <math>119</math> || style="background-color: yellow" | <math>65</math> || <math>9</math> || style="background-color: yellow" | <math>115</math>
 
|-
 
! <math>\boldsymbol{5}</math>
 
| <math>9</math> || style="background-color: yellow" | <math>143</math> || <math>49</math> || style="background-color: yellow" | <math>143</math> || style="background-color: yellow" | <math>323</math> || <math>217</math> || style="background-color: yellow" | <math>39</math> || <math>9</math> || <math>9</math> || <math>9</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
::<math>\left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k}{2}} = \left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{6 k} = 1</math>
<span style="font-size: 90%; color:black;">FirstLPSP(Stop) =  
 
\\ najmniejsze LPSP(P,Q) < Stop;  dla 1<=P<=10 i -5<=Q<=5
 
{
 
'''local'''(D, m, P, Q);
 
Q = -6;
 
'''while'''( Q++ <= 5,
 
        '''if'''( Q == 0, '''next'''() );
 
        P = 0;
 
        '''while'''( P++ <= 10,
 
              D = P^2 - 4*Q;
 
              '''if'''( D == 0,
 
                  '''print'''("Q= ", Q, "  P= ", P, "  ------------------");
 
                  '''next'''();
 
                );
 
              m = 3;
 
              '''while'''( m < Stop,
 
                      '''if'''( isPrimeOr<span style="background-color: #fee481;">LPSP</span>(m, P, Q) &&  !'''isprime'''(m),
 
                          '''print'''("Q= ", Q, "  P= ", P, "  m= ", m, "  (D|m)= ", jacobi(D, m));
 
                          '''break'''();
 
                        );
 
                      m = m + 2;
 
                    );
 
            );
 
      );
 
}</span>
 
<br/>
 
{{\Spoiler}}
 
  
Żółtym tłem oznaczyliśmy te najmniejsze liczby pseudopierwsze Lucasa, dla których <math>(D \, | \, m) = - 1</math>.
+
::<math>\left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 5}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 4}{2}} = \left( {\small\frac{5}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 2)} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} = - 1</math>
  
 +
::<math>\left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 7}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 6}{2}} = \left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 3)} = - 1</math>
  
 +
::<math>\left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 11}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 10}{2}} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 5)} = (- 1) \cdot (- 1) = 1</math>
  
<span style="font-size: 110%; font-weight: bold;">Przykład L26</span><br/>
+
'''Punkt 2.'''
Ilość liczb LPSP(<math>P, Q</math>) mniejszych od <math>10^9</math>
 
 
 
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: right; margin-right: auto;"
 
! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>\boldsymbol{P}</math><br/><math>\boldsymbol{Q}</math>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
! <math>\boldsymbol{1}</math> !! <math>\boldsymbol{2}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math> !! <math>\boldsymbol{10}</math>
 
|-
 
! <math>\boldsymbol{- 5}</math>
 
| <math>4266</math> || <math>4935</math> || <math>4278</math> || <math>4981</math> || <math>6363</math> || <math>6028</math> || <math>5202</math> || <math>4426</math> || <math>5832</math> || <math>6027</math>
 
|-
 
! <math>\boldsymbol{- 4}</math>
 
| <math>4599</math> || <math>4152</math> || <math>9272</math> || <math>5886</math> || <math>6958</math> || <math>4563</math> || <math>5600</math> || <math>9509</math> || <math>7007</math> || <math>4142</math>
 
|-
 
! <math>\boldsymbol{- 3}</math>
 
| <math>4265</math> || <math>5767</math> || <math>4241</math> || <math>5114</math> || <math>5859</math> || <math>7669</math> || <math>6083</math> || <math>6120</math> || <math>4420</math> || <math>5096</math>
 
|-
 
! <math>\boldsymbol{- 2}</math>
 
| <math>5361</math> || <math>4389</math> || <math>5063</math> || <math>5632</math> || <math>5364</math> || <math>5228</math> || <math>5859</math> || <math>10487</math> || <math>5370</math> || <math>9798</math>
 
|-
 
! <math>\boldsymbol{- 1}</math>
 
| <math>4152</math> || <math>5886</math> || <math>4563</math> || <math>9509</math> || <math>4142</math> || <math>6273</math> || <math>5773</math> || <math>4497</math> || <math>5166</math> || <math>5305</math>
 
|-
 
! <math>\boldsymbol{1}</math>
 
| <math>282485800</math> || style="background-color: red" | <math></math> || <math>6567</math> || <math>7669</math> || <math>7131</math> || <math>10882</math> || <math>8626</math> || <math>8974</math> || <math>8509</math> || <math>8752</math>
 
|-
 
! <math>\boldsymbol{2}</math>
 
| <math>7803</math> || <math>449152466</math> || <math>5597</math> || <math>5886</math> || <math>6509</math> || <math>5761</math> || <math>8115</math> || <math>6945</math> || <math>8380</math> || <math>7095</math>
 
|-
 
! <math>\boldsymbol{3}</math>
 
| <math>5974</math> || <math>8768</math> || <math>282485800</math> || <math>5767</math> || <math>5651</math> || <math>5632</math> || <math>6640</math> || <math>5725</math> || <math>6058</math> || <math>7050</math>
 
|-
 
! <math>\boldsymbol{4}</math>
 
| <math>10749</math> || <math>282485800</math> || <math>14425</math> || style="background-color: red" | <math></math> || <math>9735</math> || <math>6567</math> || <math>8164</math> || <math>7669</math> || <math>7608</math> || <math>7131</math>
 
|-
 
! <math>\boldsymbol{5}</math>
 
| <math>5047</math> || <math>15127</math> || <math>6155</math> || <math>15127</math> || <math>4152</math> || <math>5146</math> || <math>4423</math> || <math>5526</math> || <math>6289</math> || <math>9509</math>
 
|}
 
 
 
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
 
<span style="font-size: 90%; color:black;">NumOfLPSP(Stop) =
 
\\ ilość liczb pseudopierwszych Lucasa LPSP(P,Q) < Stop;  dla 1<=P<=10 i -5<=Q<=5
 
{
 
'''local'''(D, m, P, Q);
 
Q = -6;
 
'''while'''( Q++ <= 5,
 
        '''if'''( Q == 0, '''next'''() );
 
        P = 0;
 
        '''while'''( P++ <= 10,
 
              D = P^2 - 4*Q;
 
              '''if'''( D == 0, '''print'''("Q= ", Q, "  P= ", P, "  ------------------"); '''next'''() );
 
              s = 0;
 
              m = 3;
 
              '''while'''( m < Stop,
 
                      '''if'''( isPrimeOr<span style="background-color: #fee481;">LPSP</span>(m, P, Q)  &&  !'''isprime'''(m), s++ );
 
                      m = m + 2;
 
                    );
 
              '''print'''("Q= ", Q, "  P= ", P, "  s= ", s);
 
            );
 
      );
 
}</span>
 
<br/>
 
{{\Spoiler}}
 
  
 +
Zauważmy, że
  
 +
::<math>\left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} =  \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{5 - 1}{2}}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L27</span><br/>
+
::::<math>\; = (- 1)^{m - 1} \cdot \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}}</math>
Dla <math>(P, Q) = (1, 1)</math> ciąg Lucasa <math>(U_n)</math> ma postać
 
  
::<math>(U_n) = (0, 1, 1, 0, - 1, - 1, 0, 1, 1, 0, - 1, - 1, 0, 1, 1, 0, - 1, - 1, 0, 1, 1, \ldots)</math>
+
::::<math>\; = \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}}</math>
  
Stosując indukcję matematyczną, udowodnimy, że <math>U_{3 k} = 0</math>. Łatwo sprawdzamy, że dla <math>k = 0</math> i <math>k = 1</math> wzór jest prawdziwy. Zakładając prawdziwość wzoru dla wszystkich liczb naturalnych nie większych od <math>k</math>, otrzymujemy dla <math>k + 1</math> (zobacz L13 p.3)
+
bo <math>m</math> jest liczbą nieparzystą.
  
::<math>U_{3 (k + 1)} = U_{3 k + 3} = U_{3 k} V_3 - U_{3 (k - 1)} = 0</math>
+
Rozważmy liczby nieparzyste <math>m</math> postaci <math>10 k + r</math>, gdzie <math>r = 1, 3, 5, 7, 9</math>. Mamy
  
Co kończy dowód. Zbadajmy liczby pseudopierwsze Lucasa dla <math>(P, Q) = (1, 1)</math>.
+
::<math>\left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}}</math>
  
Mamy <math>D = P^2 - 4 Q = - 3</math>. Wynika stąd, że nie może być <math>3 \, | \, m</math>, bo mielibyśmy <math>\gcd (m, Q D) = 3 > 1</math>.
+
::::<math>\; = \left( {\small\frac{10 k + r}{5}} \right)_{\small{\!\! J}}</math>
  
Z zadania J35 wiemy, że
+
::::<math>\; = \left( {\small\frac{r}{5}} \right)_{\small{\!\! J}}</math>
  
::<math>(- 3 \, | \, m) =
+
::::<math>\; =
 
\begin{cases}
 
\begin{cases}
  \;\;\: 1 & \text{gdy } m = 6 k + 1 \\
+
  \;\;\: 1 & \text{gdy } r = 1 \\
  \;\;\: 0 & \text{gdy } m = 6 k + 3 \\
+
      - 1 & \text{gdy } r = 3 \\
       - 1 & \text{gdy } m = 6 k + 5
+
  \;\;\: 0 & \text{gdy } r = 5 \\
 +
       - 1 & \text{gdy } r = 7 \\
 +
\;\;\: 1 & \text{gdy } r = 9
 
\end{cases}</math>
 
\end{cases}</math>
  
Ponieważ <math>3 \nmid m</math>, to wystarczy zbadać przypadki <math>m = 6 k + 1</math> i <math>m = 6 k + 5</math>. W&nbsp;pierwszym przypadku jest
+
bo odpowiednio dla <math>r = 1, 3, 5, 7, 9</math> jest
  
::<math>U_{m - (- 3 \, | \, m)} = U_{6 k + 1 - 1} = U_{6 k} = 0</math>
+
::<math>\left( {\small\frac{1}{5}} \right)_{\small{\!\! J}} = 1</math>
  
W drugim przypadku, gdy <math>m = 6 k + 5</math>, dostajemy
+
::<math>\left( {\small\frac{3}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{-2}{5}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{(5 - 1)(5 - 3)}{8}} = -1</math>
  
::<math>U_{m - (- 3 \, | \, m)} = U_{6 k + 5 + 1} = U_{6 (k + 1)} = 0</math>
+
::<math>\left( {\small\frac{5}{5}} \right)_{\small{\!\! J}} = 0</math>
  
Zatem dla dowolnej liczby nieparzystej <math>m</math> niepodzielnej przez <math>3</math> jest
+
::<math>\left( {\small\frac{7}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{2}{5}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{25 - 1}{8}} = - 1</math>
  
::<math>U_{m - (- 3 \, | \, m)} \equiv 0 \pmod{m}</math>
+
::<math>\left( {\small\frac{9}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{3}{5}} \right)_{\small{\!\! J}}^{\! 2} = 1</math>
  
Czyli liczbami pseudopierwszymi Lucasa dla parametrów <math>(P, Q) = (1, 1)</math> będą liczby nieparzyste <math>m</math>, które nie są podzielne przez <math>3</math> i&nbsp;nie są liczbami pierwszymi. Ilość takich liczb nie większych od <math>10^k</math> możemy łatwo znaleźć poleceniem
+
Co należało pokazać.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
'''for'''(k = 1, 9, s = 0; '''forstep'''(m = 3, 10^k, 2, '''if'''( m%6 <> 3, s = s + !'''isprime'''(m) )); '''print'''(s))
 
  
  
 +
<span style="font-size: 110%; font-weight: bold;">Uwaga J37</span><br/>
 +
Wykorzystując podane w&nbsp;twierdzeniu J31 właściwości symbolu Jacobiego, możemy napisać prostą funkcję w&nbsp;PARI/GP znajdującą jego wartość. Zauważmy, że nie potrzebujemy znać rozkładu liczby <math>n</math> na czynniki pierwsze.
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L28</span><br/>
+
<span style="font-size: 90%; color:black;">jacobi(a, n) =
Pokazać, że ilość liczb pseudopierwszych Lucasa dla parametrów <math>(P, Q) = (2, 2)</math> nie większych od <math>10^k</math> możemy znaleźć poleceniem
+
{
 +
'''local'''(r, w);
 +
'''if'''( n <= 0 || n % 2 == 0, '''return'''("Error") );
 +
a = a % n; \\ korzystamy ze wzoru (a|n) = (b|n), gdy a &equiv; b (mod n)
 +
w = 1;
 +
'''while'''( a <> 0,
 +
        '''while'''( a % 2 == 0, a = a/2; r = n % 8; '''if'''( r == 3 || r == 5, w = -w ) );
 +
        \\ usunęliśmy czynnik 2 ze zmiennej a, uwzględniając, że (2|n) = -1, gdy n &equiv; 3,5 (mod 8)
 +
        \\ teraz zmienne a oraz n są nieparzyste
 +
        r = a; \\ zmienna r tylko przechowuje wartość a
 +
        a = n;
 +
        n = r;
 +
        '''if'''( a % 4 == 3 && n % 4 == 3, w = -w );
 +
        \\ zamieniliśmy zmienne, uwzględniając, że (a|n) = - (n|a), gdy a &equiv; n &equiv; 3 (mod 4)
 +
        a = a % n;
 +
      );
 +
'''if'''( n == 1, '''return'''(w), '''return'''(0) ); \\ n jest teraz równe gcd(a, n)
 +
}</span>
  
'''for'''(k = 1, 9, s = 0; '''forstep'''(m = 3, 10^k, 2, s = s + !'''isprime'''(m)); '''print'''(s))
 
  
  
 +
<span style="font-size: 110%; font-weight: bold;">Uwaga J38</span><br/>
 +
Jeżeli <math>m</math> jest liczbą pierwszą, to symbol Jacobiego jest symbolem Legendre'a, czyli <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! L}}</math>. Jeżeli <math>m</math> jest liczbą złożoną, to symbol Legendre'a <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! L}}</math> nie istnieje, a&nbsp;symbol Jacobiego <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}}</math> dostarcza jedynie ograniczonych informacji.
  
 +
W przyszłości symbol Legendre'a / Jacobiego będziemy zapisywali w&nbsp;formie uproszczonej <math>(a \, | \, m)</math> i&nbsp;nie będziemy rozróżniali tych symboli. Interpretacja zapisu jest prosta:
  
 +
:* jeżeli '''wiemy''', że <math>m</math> jest liczbą pierwszą, to symbol <math>(a \, | \, m)</math> jest symbolem Legendre'a
 +
:* jeżeli '''wiemy''', że <math>m</math> jest liczbą złożoną, to symbol <math>(a \, | \, m)</math> jest symbolem Jacobiego
 +
:* jeżeli '''nie wiemy''', czy <math>m</math> jest liczbą pierwszą, czy złożoną, to symbol <math>(a \, | \, m)</math> jest symbolem Jacobiego
  
== Metoda Selfridge'a wyboru parametrów <math>P</math> i <math>Q</math> ==
 
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L29</span><br/>
 
Twierdzenie L20 możemy wykorzystać do testowania pierwszości liczb. Ponieważ musi być spełniony warunek <math>\gcd (m, Q D) = 1</math>, to nie każda para liczb <math>P, Q</math> (np. wybrana losowo) nadaje się do przeprowadzenia testu. Zawsze będziemy zmuszeni określić zasadę postępowania, która doprowadzi do wyboru właściwej pary <math>P, Q</math>.
 
  
Robert Baillie i&nbsp;Samuel Wagstaff przedstawili<ref name="BaillieWagstaff1"/> dwie metody wyboru parametrów dla testu Lucasa. Ograniczymy się do omówienia tylko pierwszej z&nbsp;nich (metodę zaproponował John Selfridge).
 
  
Rozważmy ciąg <math>a_k = (- 1)^k (2 k + 1)</math>, gdzie <math>k \geqslant 2</math>, czyli <math>a_k = (5, - 7, 9, - 11, 13, - 15, \ldots)</math>. Niech <math>D</math> będzie pierwszym wyrazem ciągu <math>(a_k)</math>, dla którego jest <math>(a_k \, | \, m) = - 1</math>. Dla tak ustalonego <math>D</math> przyjmujemy <math>P = 1</math> i <math>Q = (1 - D) / 4</math>.
 
  
Tabela przedstawia początkowe wartości <math>Q</math>, jakie otrzymamy, stosując tę metodę.
+
== Rozwiązywanie kongruencji <math>x^2 \equiv a \pmod{m}</math> ==
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: right; margin-right: auto;"
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J39</span><br/>
! <math>\boldsymbol{k}</math>
+
Niech <math>p</math> będzie liczbą pierwszą nieparzystą, zaś <math>a</math> liczbą całkowitą taką, że <math>\gcd (a, p) = 1</math>. Kongruencja
| <math>2</math> || <math>3</math> || <math>4</math> || <math>5</math> || <math>6</math> || <math>7</math> || <math>8</math> || <math>9</math> || <math>10</math> || <math>11</math> || <math>12</math> || <math>13</math> || <math>14</math> || <math>15</math> || <math>16</math> || <math>17</math> || <math>18</math> || <math>19</math> || <math>20</math>
 
|-
 
!  <math>\boldsymbol{a_k}</math>  
 
| <math>5</math> || <math>-7</math> || <math>9</math> || <math>-11</math> || <math>13</math> || <math>-15</math> || <math>17</math> || <math>-19</math> || <math>21</math> || <math>-23</math> || <math>25</math> || <math>-27</math> || <math>29</math> || <math>-31</math> || <math>33</math> || <math>-35</math> || <math>37</math> || <math>-39</math> || <math>41</math>
 
|-
 
<math>\boldsymbol{Q}</math>
 
| <math>-1</math> || <math>2</math> || style="background-color: red" | <math>-2</math> || <math>3</math> || <math>-3</math> || <math>4</math> || <math>-4</math> || <math>5</math> || <math>-5</math> || <math>6</math> || style="background-color: red" | <math>-6</math> || <math>7</math> || <math>-7</math> || <math>8</math> || <math>-8</math> || <math>9</math> || <math>-9</math> || <math>10</math> || <math>-10</math>
 
|}
 
  
 +
::<math>x^2 \equiv a \pmod{p^n}</math>
  
Zauważmy, że
+
ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy kongruencja
:* jeżeli liczba nieparzysta <math>m</math> jest liczbą kwadratową, to wybór <math>D</math> nie będzie możliwy
 
:* w&nbsp;przypadku zastosowania tej metody znajdziemy tylko liczby pierwsze lub pseudopierwsze Lucasa, które spełniają kongruencję <math>U_{m + 1} \equiv 0 \pmod{m}</math>, czyli tylko część liczb pseudopierwszych Lucasa określonych w&nbsp;definicji L22
 
  
 +
::<math>x^2 \equiv a \pmod{p}</math>
  
Ponieważ Baillie i&nbsp;Wagstaff określili metodę zaproponowaną przez Selfridge'a jako metodę A, to pozostaniemy przy tej nazwie. Korzystając ze wzoru rekurencyjnego
+
ma rozwiązanie.
  
::<math> a_{k+1} =
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
  \begin{cases}
 
  \qquad \qquad 5 & \text{gdy } k = 1\\
 
      - a_k - 2 * \mathop{\textnormal{sign}}( a_k ) & \text{gdy } k \geqslant 2
 
  \end{cases}</math>
 
  
możemy łatwo napisać odpowiednią funkcję znajdującą liczby <math>P, Q</math> według tej metody.
+
<math>\Large{\Longrightarrow}</math>
  
<span style="font-size: 90%; color:black;">MethodA(m) =
+
Z założenia kongruencja <math>x^2 \equiv a \pmod{p^n}</math> ma rozwiązanie. Zatem istnieje taka liczba <math>r \in \mathbb{Z}</math>, że
{
 
'''local'''(a, js);
 
a = 5;
 
'''while'''( 1,
 
        js = jacobi(a, m);
 
        '''if'''( js == 0  &&  a % m <> 0, '''return'''([0, 0]) );
 
        '''if'''( js == -1, '''return'''([1, (1 - a)/4]) );
 
        a = -a - 2*'''sign'''(a);
 
      );
 
}</span>
 
  
Wyjaśnienia wymaga druga linia kodu w&nbsp;pętli <code>while</code>. Wiemy, że (zobacz J31)
+
::<math>r^2 \equiv a \pmod{p^n}</math>
  
::<math>(a \, | \, m) = 0 \quad \qquad \Longleftrightarrow \quad \qquad \gcd (a, m) > 1</math>
+
Ponieważ <math>p^n \, | \, (r^2 - a)</math>, to tym bardziej <math>p \, | \, (r^2 - a)</math>, co oznacza, że prawdziwa jest kongruencja
  
Jednak z&nbsp;faktu, że <math>\gcd (a, m) > 1</math> nie wynika natychmiast, że liczba <math>m</math> jest liczbą złożoną. Rozważmy dwa przypadki: gdy <math>m \, | \, a</math> i <math>m \nmid a</math>.
+
::<math>r^2 \equiv a \pmod{p}</math>
  
Gdy <math>\gcd (a, m) > 1</math> i <math>m \, | \, a</math>, to <math>\gcd (a, m) = \gcd (k \cdot m, m) = m > 1</math> i&nbsp;nie jesteśmy w&nbsp;stanie rozstrzygnąć, czy liczba <math>m</math> jest liczbą pierwszą, czy złożoną. Widać to dobrze na prostych przykładach
+
Skąd wynika natychmiast, że kongruencja <math>x^2 \equiv a \pmod{p}</math> ma rozwiązanie.
  
::<math>\gcd (7, 7) = \gcd (14, 7) = 7 > 1</math>
+
<math>\Large{\Longleftarrow}</math>
  
::<math>\gcd (15, 15) = \gcd (30, 15) = 15 > 1</math>
+
Indukcja matematyczna. Z&nbsp;uczynionego w&nbsp;twierdzeniu założenia wiemy, że kongruencja <math>x^2 \equiv a \pmod{p}</math> ma rozwiązanie. Zatem twierdzenie jest prawdziwe dla <math>n = 1</math>. Załóżmy teraz (założenie indukcyjne), że kongruencja
  
Gdy <math>\gcd (a, m) > 1</math> i <math>m \nmid a</math>, to <math>m</math> jest liczbą złożoną. Ponieważ <math>m \nmid a</math>, to <math>a = k \cdot m + r</math>, gdzie <math>r \in [1, m - 1]</math>. Mamy
+
::<math>x^2 \equiv a \pmod{p^n}</math>
  
::<math>\gcd (a, m) = \gcd (k \cdot m + r, m) = \gcd (r, m) = d</math>
+
ma rozwiązanie <math>x \equiv u_n \pmod{p^n}</math> i&nbsp;pokażmy, że twierdzenie jest prawdziwe dla <math>n + 1</math>, czyli że rozwiązanie ma kongruencja
  
Musi być <math>d > 1</math>, bo założyliśmy, że <math>\gcd (a, m) > 1</math> i&nbsp;musi być <math>d < m</math>, bo <math>d \leqslant r \leqslant m - 1</math>. Zatem <math>d</math> jest dzielnikiem nietrywialnym liczby <math>m</math> i <math>m</math> jest liczbą złożoną.
+
::<math>x^2 \equiv a \pmod{p^{n + 1}}</math>
  
Omawiana linia kodu zapewnia wysłanie informacji o&nbsp;tym, że liczba <math>m</math> jest liczbą złożoną (zwrot wektora [0, 0]). W&nbsp;przypadku, gdy nie mamy takiej pewności, kontynuujemy szukanie liczby <math>a</math>, takiej że <math>(a \, | \, m) = - 1</math>, pozostawiając zbadanie pierwszości liczby <math>m</math> na kolejnym etapie testowania.
+
Wiemy, że liczba <math>u_n</math> jest określona modulo <math>p^n</math>. Nie tracąc ogólności, możemy założyć, że <math>1 \leqslant u_n < p^n</math>. Wartość <math>u_n</math> może zostać wybrana dowolnie (modulo <math>p^n</math>), ale musi zostać ustalona — wymaga tego precyzja i&nbsp;czytelność dowodu. Zatem
  
 +
::<math>u^2_n - a = k p^n</math>
  
Uważny Czytelnik dostrzeże, że nie zbadaliśmy, czy spełniony jest warunek <math>\gcd (m, Q) = 1</math>. Nie musimy tego robić, bo zwracana przez funkcję <code>MethodA()</code> liczba <math>Q</math> jest względnie pierwsza z <math>m</math>. Omówimy ten problem dokładnie w&nbsp;zadaniu L30. Poniżej pokażemy, że nawet gdyby było <math>\gcd (m, Q) > 1</math>, to złożona liczba <math>m</math> nie zostanie uznana za liczbę pseudopierwszą Lucasa.
+
Zauważmy, że liczba <math>k</math> jest jednoznacznie określona, bo wartość <math>u_n</math> została ustalona. Ponieważ <math>\gcd (2 u_n, p) = 1</math>, to równanie
  
Zauważmy, że jeżeli <math>m</math> jest liczbą złożoną i&nbsp;ma dzielnik pierwszy <math>p < m</math>, który dzieli <math>Q</math>, to <math>p \, | \, Q</math> i <math>p \nmid P</math> (bo <math>P = 1</math>), zatem <math>p \nmid U_k</math> dla <math>k \geqslant 1</math> (zobacz L17), czyli nie może być
+
::<math>2 u_n \cdot s - p \cdot l = - k</math>
  
::<math>U_{m + 1} (1, Q) \equiv 0 \pmod{m}</math>
+
ma rozwiązanie (zobacz C74). Niech liczby <math>s_0</math> i <math>l_0</math> będą rozwiązaniem tego równania. Zatem
  
bo mielibyśmy
+
::<math>2 u_n \cdot s_0 - p \cdot l_0 = - k</math>
  
::<math>U_{m + 1} (1, Q) \equiv 0 \pmod{p}</math>
+
::<math>2 u_n \cdot s_0 p^n - l_0 \cdot p^{n + 1} = - k p^n</math>
  
a to jest niemożliwe. Zatem program wykorzystujący twierdzenie L20 wykryje złożoność liczby <math>m</math>.
+
::<math>2 u_n \cdot s_0 p^n - l_0 \cdot p^{n + 1} = - ( u^2_n - a )</math>
  
Łatwo pokażemy, że nie jest możliwe, aby liczba <math>m</math> była liczbą pierwszą i&nbsp;była dzielnikiem <math>Q</math>. Jeżeli <math>m</math> jest liczbą pierwszą, to istnieje dokładnie <math>\tfrac{m - 1}{2}</math> liczb kwadratowych modulo <math>p</math> i <math>\tfrac{m - 1}{2}</math> liczb niekwadratowych modulo <math>p</math>, zatem rozpoczynając od wyrazu <math>a_2</math> możemy dojść co najwyżej do wyrazu o&nbsp;indeksie <math>k = \tfrac{m - 1}{2} + 2</math>, czyli
+
::<math>u^2_n + 2 u_n \cdot s_0 p^n = a + l_0 \cdot p^{n + 1}</math>
  
::<math>| a_k | \leqslant m + 4</math>
+
Modulo <math>p^{n + 1}</math> dostajemy
  
Skąd wynika, że
+
::<math>u^2_n + 2 u_n \cdot s_0 p^n \equiv a \pmod{p^{n + 1}}</math>
  
::<math>| Q | = \left| {\small\frac{1 - a_k}{4}} \right| \leqslant {\small\frac{m + 5}{4}} < m</math>
+
::<math>(u_n + s_0 p^n)^2 \equiv a \pmod{p^{n + 1}}</math>
  
Ostatnia nierówność jest prawdziwa dla <math>m > {\small\frac{5}{3}}</math>, czyli dla wszystkich liczb pierwszych. Ponieważ <math>| Q | < m</math>, w&nbsp;przypadku gdy <math>m</math> jest liczbą pierwszą, to <math>m</math> nie może być dzielnikiem liczby <math>Q</math>.
+
bo <math>p^{n + 1} \, | \, p^{2 n}</math>. Zatem liczba <math>u_{n + 1} = u_n + s_0 p^n</math> jest rozwiązaniem kongruencji
  
 +
::<math>x^2 \equiv a \pmod{p^{n + 1}}</math>
  
 +
Pokazaliśmy tym samym prawdziwość tezy indukcyjnej, co kończy dowód indukcyjny.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L30</span><br/>
 
Pokazać, że w&nbsp;przypadku, gdy dla kolejnych liczb <math>a_k = (- 1)^k (2 k + 1)</math> sprawdzamy, czy konsekwencją <math>(a_k \, | \, m) = 0</math> jest złożoność liczby <math>m</math>, to dla każdej liczby <math>Q</math> wyznaczonej metodą Selfridge'a jest <math>\gcd (Q, m) = 1</math>.
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 
Niech <math>m = 21</math>. Rozpoczniemy od przykładu liczb <math>a_k = (- 1)^k (2 k + 1)</math> dla <math>k = 0, 1, \ldots, m - 1</math>.
 
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: center; margin-right: auto;"
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J40</span><br/>
! <math>\boldsymbol{k}</math> !! <math>\boldsymbol{0}</math> !!  !!  !!  !!  !!  !!  !!  !!  !!  !! <math>\boldsymbol{(m-1)/2}</math> !!  !!  !!  !!  !!  !!  !!  !!  !!  !! <math>\boldsymbol{m-1}</math>
+
Dla niewielkich modułów rozwiązania dowolnej kongruencji możemy znaleźć przez bezpośrednie sprawdzenie. Omówimy teraz rozwiązania kongruencji <math>x^2 \equiv a \pmod{2^n}</math> dla <math>n = 1, 2, 3</math>. Ponieważ zakładamy, że <math>\gcd (a, m) = \gcd (a, 2^n) = 1</math>, to <math>a</math> musi być liczbą nieparzystą, zaś <math>x</math> nie może być liczbą parzystą. Istotnie, gdyby tak było, to mielibyśmy <math>0 \equiv 1 \pmod{2}</math>, bo <math>2 \, | \, 2^n</math>.
|-
 
! <math>\boldsymbol{k}</math>  
 
| <math>0</math> || <math>1</math> || <math>2</math> || <math>3</math> || <math>4</math> || <math>5</math> || <math>6</math> || <math>7</math> || <math>8</math> || <math>9</math> || <math>10</math> || <math>11</math> || <math>12</math> || <math>13</math> || <math>14</math> || <math>15</math> || <math>16</math> || <math>17</math> || <math>18</math> || <math>19</math> || <math>20</math>
 
|-
 
! <math>\boldsymbol{a_k}</math>
 
| <math>1</math> || <math>-3</math> || <math>5</math> || <math>-7</math> || <math>9</math> || <math>-11</math> || <math>13</math> || <math>-15</math> || <math>17</math> || <math>-19</math> || <math>21</math> || <math>-23</math> || <math>25</math> || <math>-27</math> || <math>29</math> || <math>-31</math> || <math>33</math> || <math>-35</math> || <math>37</math> || <math>-39</math> || <math>41</math>
 
|-
 
! <math>\boldsymbol{R_m(a_k)}</math>  
 
| <math>1</math> || <math>18</math> || <math>5</math> || <math>14</math> || <math>9</math> || <math>10</math> || <math>13</math> || <math>6</math> || <math>17</math> || <math>2</math> || <math>0</math> || <math>19</math> || <math>4</math> || <math>15</math> || <math>8</math> || <math>11</math> || <math>12</math> || <math>7</math> || <math>16</math> || <math>3</math> || <math>20</math>
 
|}
 
  
Zauważmy, że modulo <math>21</math> ciąg <math>(a_k) = (1, - 3, 5, - 7, \ldots, 37, - 39, 41)</math> jest identyczny z&nbsp;ciągiem <math>(0, 1, 2, \ldots, 19, 20)</math>, a&nbsp;ciąg <math>(| a_k |)</math> to kolejne liczby nieparzyste od <math>1</math> do <math>2 m - 1</math>.
+
Kongruencja
  
 +
::<math>x^2 \equiv a \pmod{2}</math>
  
Poniżej pokażemy, dlaczego musi być <math>\gcd (Q, m) = 1</math>, gdzie <math>Q</math> jest liczbą wyznaczoną metodą Selfridge'a (o ile sprawdzana jest złożoność liczby <math>m</math> przy testowaniu kolejnych liczb <math>a_k</math>). Pogrubioną czcionką zaznaczone są symbole Jacobiego, które wykryły złożoność liczby <math>m</math>. Gdyby nie była badana złożoność, to wyliczona zostałaby wartość <math>Q</math> na podstawie innego wyrazu ciągu <math>a_k</math> (ten symbol Jacobiego został zapisany zwykłą czcionką).
+
ma dokładnie jedno rozwiązanie <math>x \equiv 1 \pmod{2}</math>.
  
::<math>m = 3 , \;\; (5 \, | \, 3) = - 1 , \;\; Q = - 1 , \;\; \gcd (m, Q) = 1</math>
+
Kongruencja
  
::<math>m = 5 , \;\; (5 \, | \, 5) = 0 , \;\; (- 7 \, | \, 5) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1 \;\;</math> (zauważmy, że <math>(5 \, | \, 5) = 0</math> nie pozwala wnioskować o&nbsp;złożoności)
+
::<math>x^2 \equiv a \pmod{4}</math>
  
::<math>m = 7 , \;\; (5 \, | \, 7) = - 1 , \;\; Q = - 1 , \;\; \gcd (m, Q) = 1</math>
+
ma dwa rozwiązania, gdy <math>a \equiv 1 \pmod{4}</math>. Rozwiązaniami są: <math>x \equiv 1, 3 \pmod{4}</math>. W&nbsp;przypadku, gdy <math>a \equiv 3 \pmod{4}</math> kongruencja nie ma rozwiązań.
  
::<math>m = 9 , \;\; </math> (liczba kwadratowa)
+
Kongruencja
  
::<math>m = 11 , \;\; (- 11 \, | \, 11) = 0 , \;\; (13 \, | \, 11) = - 1 , \;\; Q = - 3 , \;\; \gcd (m, Q) = 1 \;\;</math> (zauważmy, że <math>(- 11 \, | \, 11) = 0</math> nie pozwala wnioskować o&nbsp;złożoności)
+
::<math>x^2 \equiv a \pmod{8}</math>
  
::<math>m = 13 , \;\; (5 \, | \, 13) = - 1 , \;\; Q = - 1 , \;\; \gcd (m, Q) = 1</math>
+
ma cztery rozwiązania, gdy <math>a \equiv 1 \pmod{8}</math>. Rozwiązaniami są: <math>x \equiv 1, 3, 5, 7 \pmod{8}</math>. W&nbsp;przypadku, gdy <math>a \equiv 3, 5, 7 \pmod{8}</math> kongruencja nie ma rozwiązań.
  
::<math>m = 15 , \;\; \boldsymbol{(5 \, | \, 15) = 0} , \;\; (13 \, | \, 15) = - 1 , \;\; Q = - 3 , \;\; \gcd (m, Q) = 3 \;\;</math> (gdyby nie zbadano złożoności)
 
  
::<math>m = 17 , \;\; (5 \, | \, 17) = - 1 , \;\; Q = - 1 , \;\; \gcd (m, Q) = 1</math>
 
  
::<math>m = 19 , \;\; (- 7 \, | \, 19) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J41</span><br/>
 +
Niech <math>n \geqslant 3</math> i <math>a</math> będzie liczbą nieparzystą. Kongruencja
  
::<math>m = 21 , \;\; \boldsymbol{(- 7 \, | \, 21) = 0} , \;\; (- 11 \, | \, 21) = - 1 , \;\; Q = 3 , \;\; \gcd (m, Q) = 3 \;\;</math> (gdyby nie zbadano złożoności)
+
::<math>x^2 \equiv a \pmod{2^n}</math>
  
 +
ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy kongruencja
  
Niech <math>m \geqslant 23</math>. Wiemy, że w&nbsp;ciągu <math>(5, - 7, 9, \ldots, \pm m, \mp (m + 2), \ldots, - (2 m - 3), 2 m - 1)</math> wystąpią liczby <math>a_k</math> takie, że <math>(a_k \, | \, m) = - 1</math>. Warunek <math>(a_k \, | \, m) = 0</math> oznacza, że <math>(2 k + 1 \, | \, m) = 0</math>, bo
+
::<math>x^2 \equiv a \pmod{8}</math>
  
::<math>(a_k \, | \, m) = ((- 1)^k (2 k + 1) \, | \, m) = ((- 1)^k \, | \, m) \cdot (2 k + 1 \, | \, m) = (- 1 \, | \, m)^k \cdot (2 k + 1 \, | \, m) = \pm (2 k + 1 \, | \, m)</math>
+
ma rozwiązanie.
  
Jeżeli będą spełnione warunki <math>(a_k \, | \, m) = 0</math> i <math>R_m (a_k) \neq 0</math>, to liczba <math>m</math> będzie liczbą złożoną.
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
  
Wypiszmy kolejne próby dla <math>m \geqslant 23</math>. Liczba <math>r</math> jest numerem próby.
+
<math>\Large{\Longrightarrow}</math>
  
::<math>r = 1 , \;\; a_{r + 1} = 5</math>
+
Z założenia kongruencja <math>x^2 \equiv a \pmod{2^n}</math> ma rozwiązanie, zatem istnieje taka liczba <math>r \in \mathbb{Z}</math>, że
  
::{| border="0"
+
::<math>r^2 \equiv a \pmod{2^n}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(5 \, | \, m) = 1</math> || <math>5 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(5 \, | \, m) = 0</math> || <math>5 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(5 \, | \, m) = - 1 \quad</math> || <math>5 \nmid m</math> || <math>D = 5 , \;\; Q = - 1 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec'''
 
|}
 
  
::<math>r = 2 , \;\; a_{r + 1} = - 7</math>
+
Ponieważ <math>2^n \, | \, (r^2 - a)</math>, gdzie <math>n \geqslant 3</math>, to tym bardziej <math>2^3 \, | \, (r^2 - a)</math>. Co oznacza, że prawdziwa jest kongruencja
  
::{| border="0"
+
::<math>r^2 \equiv a \pmod{2^3}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = 1</math> || <math>7 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = 0</math> || <math>7 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = - 1 \quad</math> || <math>7 \nmid m</math> || <math>D = -7 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec'''
 
|}
 
  
::<math>r = 3</math>, <math>a_{r + 1} = 9</math>
+
Skąd wynika natychmiast, że kongruencja <math>x^2 \equiv a \pmod{8}</math> ma rozwiązanie.
  
::{| border="0"
+
<math>\Large{\Longleftarrow}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) = 1</math> || <math>3 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) = 0</math> || <math>3 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) \neq - 1 \quad</math> || - - - - || bo <math>9</math> jest liczbą kwadratową
 
|}
 
  
 +
Indukcja matematyczna. Z&nbsp;uczynionego w&nbsp;twierdzeniu założenia wiemy, że kongruencja <math>x^2 \equiv a \pmod{8}</math> ma rozwiązanie. Zatem twierdzenie jest prawdziwe dla <math>n = 3</math>. Załóżmy teraz (założenie indukcyjne), że kongruencja
  
Po wykonaniu trzech prób niezakończonych sukcesem (tzn. wykryciem złożoności <math>m</math> lub ustaleniem wartości liczb <math>D</math> i <math>Q</math>) wiemy, że <math>m</math> nie jest podzielna przez żadną z&nbsp;liczb pierwszych <math>p = 3, 5, 7</math>.
+
::<math>x^2 \equiv a \pmod{2^n}</math>
  
::<math>r</math>-ta próba, gdzie <math>r \geqslant 4 , \;\;</math> wyraz <math>a_{r + 1}</math>
+
ma rozwiązanie <math>x \equiv u_n \pmod{2^n}</math> i&nbsp;pokażemy, że twierdzenie jest prawdziwe dla <math>n + 1</math>, czyli że rozwiązanie ma kongruencja
  
::{| border="0"
+
::<math>x^2 \equiv a \pmod{2^{n + 1}}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 1} \, | \, m) = 1</math> || żadna liczba pierwsza <math>p \leqslant | a_{r + 1} | = 2 r + 3</math> nie dzieli liczby <math>m \quad</math> &nbsp;&nbsp;&nbsp;  || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 1} \, | \, m) = 0</math> || A. jeżeli <math>m \, | \, a_{r + 1}</math><sup>( * )</sup><br/>B. jeżeli <math>m \nmid a_{r + 1}</math> || A. przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math> <br/> B. <math>a_{r + 1} \, | \, m</math><sup>( ** )</sup>, '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 1} \, | \, m) = - 1 \quad</math> || żadna liczba pierwsza <math>p \leqslant | a_{r + 1} | = 2 r + 3</math> nie dzieli liczby <math>m \quad</math> &nbsp;&nbsp;&nbsp;  || <math>D = a_{r + 1}</math>, <math>Q = {\small\frac{1 - a_{r + 1}}{4}}</math>, '''koniec'''
 
|}
 
  
<sup>( * )</sup> jest to możliwe tylko dla <math>a_{r + 1} = a_{(m - 1) / 2} = m</math>
+
Z założenia istnieje taka liczba <math>k</math>, że <math>u^2_n - a = k \cdot 2^n</math>. Niech
  
<sup>( ** )</sup> zauważmy, że jeżeli <math>m \nmid a_{r + 1}</math>, to <math>\gcd (a_{r + 1}, m) = | a_{r + 1} |</math>, bo gdyby liczba <math>| a_{r + 1} |</math> była liczbą złożoną, to żaden z&nbsp;jej dzielników pierwszych nie dzieliłby liczby <math>m</math>
+
::<math>r =
 +
  \begin{cases}
 +
  0 & \text{gdy } k \text{ jest liczbą parzystą}\\
 +
  1 & \text{gdy } k \text{ jest liczbą nieparzystą}
 +
  \end{cases}</math>
  
 +
Zauważmy, że
  
Jeżeli nie została wykryta złożoność liczby <math>m</math>, to żadna z&nbsp;liczb pierwszych <math>p \leqslant | a_{r + 1} | = 2 r + 3</math> nie dzieli liczby <math>m</math>. Zatem <math>\gcd (Q, m) > 1</math> może być tylko w&nbsp;przypadku, gdy pewna liczba pierwsza <math>q \geqslant 2 r + 5</math> będzie wspólnym dzielnikiem liczb <math>Q</math> i <math>m</math>, ale jest to niemożliwe, bo
+
::<math>(u_n + r \cdot 2^{n - 1})^2 - a = u^2_n - a + 2^n r + r^2 \cdot 2^{2 n - 2}</math>
  
::<math>| Q | = \left| {\small\frac{1 - a_{r + 1}}{4}} \right| \leqslant {\small\frac{| a_{r + 1} | + 1}{4}} = {\small\frac{2 r + 4}{4}} < 2 r + 5 \leqslant q</math>
+
::::::::<math>\;\! = k \cdot 2^n + 2^n r + r^2 \cdot 2^{2 n - 2}</math>
  
Przedostatnia (ostra) nierówność jest prawdziwa dla wszystkich <math>r</math> naturalnych.<br/>
+
::::::::<math>\;\! = 2^n (k + r) + r^2 \cdot 2^{2 n - 2}</math>
&#9633;
 
{{\Spoiler}}
 
  
 +
::::::::<math>\;\! \equiv 0 \pmod{2^{n + 1}}</math>
  
 +
bo <math>k + r</math> jest liczbą parzystą, a&nbsp;dla <math>n \geqslant 3</math> mamy <math>2 n - 2 \geqslant n + 1</math>. Zatem liczba <math>u_{n + 1} = u_n + r \cdot 2^{n - 1}</math> jest rozwiązaniem kongruencji
  
<span style="font-size: 110%; font-weight: bold;">Zadanie L31</span><br/>
+
::<math>x^2 \equiv a \pmod{2^{n + 1}}</math>
Zmodyfikujmy metodę Selfridge'a w&nbsp;taki sposób, że będziemy rozpoczynali próby nie od wyrazu <math>a_2 = 5</math>, ale od wyrazu <math>a_3 = - 7</math>. Pokazać, że w&nbsp;przypadku, gdy dla kolejnych liczb <math>a_k = (- 1)^k (2 k + 1)</math> sprawdzamy, czy konsekwencją <math>(a_k \, | \, m) = 0</math> jest złożoność liczby <math>m</math>, to dla każdej liczby <math>Q</math> wyznaczonej tak zmodyfikowaną metodą Selfridge'a jest <math>\gcd (Q, m) = 1</math>.
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
+
Pokazaliśmy tym samym prawdziwość tezy indukcyjnej, co kończy dowód indukcyjny.<br/>
Poniżej pokażemy, dlaczego musi być <math>\gcd (Q, m) = 1</math>, gdzie <math>Q</math> jest liczbą wyznaczoną zmodyfikowaną metodą Selfridge'a (o ile sprawdzana jest złożoność liczby <math>m</math> przy testowaniu kolejnych liczb <math>a_k</math>). Pogrubioną czcionką zaznaczone są symbole Jacobiego, które wykryły złożoność liczby <math>m</math>. Gdyby nie była badana złożoność, to wyliczona zostałaby wartość <math>Q</math> na podstawie innego wyrazu ciągu <math>a_k</math> (ten symbol Jacobiego został zapisany zwykłą czcionką).
+
&#9633;
 
+
{{\Spoiler}}
::<math>m = 3 , \;\; (- 7 \, | \, 3) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
 
 
 
::<math>m = 5 , \;\; (- 7 \, | \, 5) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
 
 
 
::<math>m = 7 , \;\; (- 7 \, | \, 7) = 0 , \;\; (- 11 \, | \, 7) = - 1 , \;\; Q = 3 , \;\; \gcd (m, Q) = 1</math> (zauważmy, że <math>(- 7 \, | \, 7) = 0</math> nie pozwala wnioskować o&nbsp;złożoności)
 
 
 
::<math>m = 9 , \;\; </math> (liczba kwadratowa)
 
  
::<math>m = 11 , \;\; (- 11 \, | \, 11) = 0 , \;\; (13 \, | \, 11) = - 1 , \;\; Q = - 3 , \;\; \gcd (m, Q) = 1 \;\;</math> (zauważmy, że <math>(- 11 \, | \, 11) = 0</math> nie pozwala wnioskować o&nbsp;złożoności)
 
  
::<math>m = 13 , \;\; (- 7 \, | \, 13) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
+
<span style="font-size: 110%; font-weight: bold;">Wniosek J42</span><br/>
 +
Jeżeli <math>a</math> jest liczbą nieparzystą, to kongruencja <math>x^2 \equiv a \pmod{2^n}</math> ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy <math>a</math> jest postaci <math>2 k + 1</math>, <math>4 k + 1</math> lub <math>8 k + 1</math> w&nbsp;zależności od tego, czy <math>n = 1</math>, czy <math>n = 2</math>, czy <math>n \geqslant 3</math>.
  
::<math>m = 15 , \;\; \boldsymbol{(9 \, | \, 15) = 0} , \;\; (13 \, | \, 15) = - 1 , \;\; Q = - 3 , \;\; \gcd (m, Q) = 3 \;\;</math> (gdyby nie zbadano złożoności)
 
  
::<math>m = 17 , \;\; (- 7 \, | \, 17) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
 
  
::<math>m = 19 , \;\; (- 7 \, | \, 19) = - 1 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1</math>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J43</span><br/>
 +
Niech <math>m = p^{\alpha_1}_1 \cdot \ldots \cdot p^{\alpha_s}_s</math> i <math>\gcd (a, m) = 1</math>. Z&nbsp;chińskiego twierdzenia o&nbsp;resztach (zobacz J3 i&nbsp;J11) wynika, że kongruencja <math>x^2 \equiv a \pmod{m}</math> ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy ma rozwiązanie każda z&nbsp;kongruencji
  
::<math>m = 21 , \;\; \boldsymbol{(- 7 \, | \, 21) = 0} , \;\; (- 11 \, | \, 21) = - 1 , \;\; Q = 3 , \;\; \gcd (m, Q) = 3 \;\;</math> (gdyby nie zbadano złożoności)
+
::<math>\begin{align}
 +
x^2 & \equiv a \pmod{p^{\alpha_1}_1} \\
 +
    & \,\,\,\cdots \\
 +
x^2 & \equiv a \pmod{p^{\alpha_s}_s} \\
 +
\end{align}</math>
  
 +
Z definicji J23, twierdzeń J39 i&nbsp;J41, uwagi J40 i&nbsp;wniosku J42 otrzymujemy
  
Niech <math>m \geqslant 23</math>. Wiemy, że w&nbsp;ciągu <math>( - 7, 9, \ldots, \pm m, \mp (m + 2), \ldots, - (2 m - 3), 2 m - 1)</math> wystąpią liczby <math>a_k</math> takie, że <math>(a_k \, | \, m) = - 1</math>. Warunek <math>(a_k \, | \, m) = 0</math> oznacza, że <math>(2 k + 1 \, | \, m) = 0</math>, bo
 
  
::<math>(a_k \, | \, m) = ((- 1)^k (2 k + 1) \, | \, m) = ((- 1)^k \, | \, m) \cdot (2 k + 1 \, | \, m) = (- 1 \, | \, m)^k \cdot (2 k + 1 \, | \, m) = \pm (2 k + 1 \, | \, m)</math>
 
  
Jeżeli będą spełnione warunki <math>(a_k \, | \, m) = 0</math> i <math>R_m (a_k) \neq 0</math>, to liczba <math>m</math> będzie liczbą złożoną.
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J44</span><br/>
 +
Niech <math>m \in \mathbb{Z}_+</math> i <math>\gcd (a, m) = 1</math>. Kongruencja
  
Wypiszmy kolejne próby dla <math>m \geqslant 23</math>. Liczba <math>r</math> jest numerem próby.
+
::<math>x^2 \equiv a \pmod{m}</math>
  
::<math>r = 1 , \;\; a_{r + 2} = - 7</math>
+
ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy
  
 
::{| border="0"  
 
::{| border="0"  
|-style=height:2em
+
|-style=height:1em
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = 1</math> || <math>7 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
+
| &#9679;&nbsp;&nbsp;&nbsp; dla każdego nieparzystego dzielnika pierwszego <math>p</math> liczby <math>m</math> jest&nbsp; <math>\left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} = 1</math>
|-style=height:2em
+
|-style=height:1em
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = 0</math> || <math>7 \, | \, m</math> || '''koniec'''
+
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli&nbsp; <math>8 \, | \, m</math>, &nbsp;to&nbsp; <math>8 \, | \, ( a - 1 )</math>
|-style=height:2em
+
|-style=height:2.5em
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 7 \, | \, m) = - 1 \quad</math> || <math>7 \nmid m</math> || <math>D = - 7 , \;\; Q = 2 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec'''
+
| &#9679;&nbsp;&nbsp;&nbsp; jeżeli&nbsp; <math>8 \nmid m</math>, &nbsp;ale&nbsp; <math>4 \, | \, m</math>, &nbsp;to&nbsp; <math>4 \, | \, ( a - 1 )</math>
 
|}
 
|}
  
::<math>r = 2 , \;\; a_{r + 2} = 9</math>
 
  
::{| border="0"
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) = 1</math> || <math>3 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) = 0</math> || <math>3 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(9 \, | \, m) \neq - 1 \quad</math> || - - - - || bo <math>9</math> jest liczbą kwadratową
 
|}
 
  
::<math>r = 3 , \;\; a_{r + 2} = - 11</math>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J45</span><br/>
 +
Rozwiązać kongruencję, gdzie <math>p</math> jest liczbą pierwszą nieparzystą
  
::{| border="0"
+
::<math>x^2 + rx + s \equiv 0 \pmod{p}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 11 \, | \, m) = 1</math> || <math>11 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 11 \, | \, m) = 0</math> || <math>11 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 11 \, | \, m) = - 1 \quad</math> || <math>11 \nmid m</math> || <math>D = - 11 , \;\; Q = 3 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec''' (bo liczby złożone <math>m = 3 k</math> zostały usunięte w&nbsp;poprzedniej próbie, <math>r = 2</math>)
 
|}
 
  
::<math>r = 4 , \;\; a_{r + 2} = 13</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
 +
Ponieważ <math>\gcd (2, p) = 1</math>, to nie zmniejszając ogólności kongruencję powyższą możemy zapisać w&nbsp;postaci
  
::{| border="0"
+
::<math>4 x^2 + 4 rx + 4 s \equiv 0 \pmod{p}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(13 \, | \, m) = 1</math> || <math>13 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(13 \, | \, m) = 0</math> || <math>13 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(13 \, | \, m) = - 1 \quad</math> || <math>13 \nmid m</math> || <math>D = 13 , \;\; Q = - 3 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec''' (bo liczby złożone <math>m = 3 k</math> zostały usunięte w&nbsp;próbie o&nbsp;numerze <math>r = 2</math>)
 
|}
 
  
::<math>r = 5 , \;\; a_{r + 2} = - 15</math>
+
::<math>(2 x + r)^2 - r^2 + 4 s \equiv 0 \pmod{p}</math>
  
::{| border="0"
+
::<math>(2 x + r)^2 \equiv r^2 - 4 s \pmod{p}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 15 \, | \, m) = 1</math> || <math>5 \nmid m \quad</math> || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 15 \, | \, m) = 0</math> || <math>5 \, | \, m</math> || '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(- 15 \, | \, m) = - 1 \quad</math> || <math>5 \nmid m</math> || <math>D = - 15 , \;\; Q = 4 , \;\; \gcd (m, Q) = 1 , \;\;</math> '''koniec'''
 
|}
 
  
 +
Widzimy, że rozpatrywana kongruencja ma rozwiązanie wtedy i&nbsp;tylko wtedy, gdy liczba <math>r^2 - 4 s</math> jest liczbą kwadratową modulo <math>p</math>. Istotnie, jeśli jest liczbą kwadratową, to istnieje taka liczba <math>b</math>, że <math>b^2 \equiv r^2 - 4 s \pmod{p}</math>, zatem otrzymujemy
  
Po wykonaniu pięciu prób niezakończonych sukcesem (tzn. wykryciem złożoności <math>m</math> lub ustaleniem wartości liczb <math>D</math> i <math>Q</math>) wiemy, że <math>m</math> nie jest podzielna przez żadną z&nbsp;liczb pierwszych <math>p = 3, 5, 7, 11, 13</math>.
+
::<math>(2 x + r)^2 \equiv b^2 \pmod{p}</math>
  
::<math>r</math>-ta próba, gdzie <math>r \geqslant 6 , \;\;</math> wyraz <math>a_{r + 2}</math>
+
::<math>2 x + r \equiv \pm b \pmod{p}</math>
  
::{| border="0"
+
::<math>x \equiv {\small\frac{p + 1}{2}} \cdot (- r \pm b) \pmod{p}</math>
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 2} \, | \, m) = 1</math> || żadna liczba pierwsza <math>p \leqslant | a_{r + 2} | = 2 r + 5</math> nie dzieli liczby <math>m \quad</math> &nbsp;&nbsp;&nbsp;  || przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math>
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 2} \, | \, m) = 0</math> || A. jeżeli <math>m \, | \, a_{r + 2}</math><sup>( * )</sup><br/>B. jeżeli <math>m \nmid a_{r + 2}</math> || A. przechodzimy do kolejnego wyrazu ciągu <math>(a_k)</math> <br/> B. <math>a_{r + 1} \, | \, m</math><sup>( ** )</sup>, '''koniec'''
 
|-style=height:2em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>(a_{r + 2} \, | \, m) = - 1 \quad</math> || żadna liczba pierwsza <math>p \leqslant | a_{r + 2} | = 2 r + 5</math> nie dzieli liczby <math>m \quad</math> &nbsp;&nbsp;&nbsp;  || <math>D = a_{r + 2}</math>, <math>Q = {\small\frac{1 - a_{r + 2}}{4}}</math>, '''koniec'''
 
|}
 
  
<sup>( * )</sup> jest to możliwe tylko dla <math>a_{r + 2} = a_{(m - 1) / 2} = m</math>
+
Jeśli <math>r^2 - 4 s</math> nie jest liczbą kwadratową modulo <math>p</math>, to kongruencja
  
<sup>( ** )</sup> zauważmy, że jeżeli <math>m \nmid a_{r + 2}</math>, to <math>\gcd (a_{r + 2}, m) = | a_{r + 2} |</math>, bo gdyby liczba <math>| a_{r + 2} |</math> była liczbą złożoną, to żaden z&nbsp;jej dzielników pierwszych nie dzieliłby liczby <math>m</math>
+
::<math>(2 x + r)^2 \equiv r^2 - 4 s \pmod{p}</math>
  
 +
nie ma rozwiązania. Wynika stąd, że równoważna jej kongruencja
  
Jeżeli nie została wykryta złożoność liczby <math>m</math>, to żadna z&nbsp;liczb pierwszych <math>p \leqslant | a_{r + 2} | = 2 r + 5</math> nie dzieli liczby <math>m</math>. Zatem <math>\gcd (Q, m) > 1</math> może być tylko w&nbsp;przypadku, gdy pewna liczba pierwsza <math>q \geqslant 2 r + 7</math> będzie wspólnym dzielnikiem liczb <math>Q</math> i <math>m</math>, ale jest to niemożliwe, bo
+
::<math>x^2 + rx + s \equiv 0 \pmod{p}</math>
  
::<math>| Q | = \left| {\small\frac{1 - a_{r + 2}}{4}} \right| \leqslant {\small\frac{| a_{r + 2} | + 1}{4}} = {\small\frac{2 r + 6}{4}} < 2 r + 7 \leqslant q</math>
+
również nie ma rozwiązania.<br/>
 
 
Przedostatnia (ostra) nierówność jest prawdziwa dla wszystkich <math>r</math> naturalnych.<br/>
 
 
&#9633;
 
&#9633;
 
{{\Spoiler}}
 
{{\Spoiler}}
Linia 1490: Linia 1361:
  
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L32</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Zadanie J46</span><br/>
Przyjmując metodę Selfridge'a wyboru parametrów <math>P, Q</math> dla testu Lucasa, możemy łatwo napisać odpowiedni program w&nbsp;PARI/GP testujący pierwszość liczb
+
Rozwiązać kongruencję
 +
 
 +
::<math>5 x^2 + 6 x + 8 \equiv 0 \pmod{19}</math>
  
<span style="font-size: 90%; color:black;">LucasTest(m) =
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
{
+
Mnożąc obie strony kongruencji przez <math>4</math>, otrzymujemy
'''local'''(P, Q, X);
 
'''if'''( m % 2 == 0, '''return'''(m == 2) );
 
'''if'''( '''issquare'''(m), '''return'''(0) ); \\ sprawdzamy, czy m nie jest liczbą kwadratową
 
X = MethodA(m);
 
P = X[1];
 
Q = X[2];
 
'''if'''( P == 0, '''return'''(0) ); \\ jeżeli P = 0, to m jest liczbą złożoną
 
'''if'''( modLucas(m + 1, P, Q, m)[1] == 0, '''return'''(1), '''return'''(0) );
 
}</span>
 
  
 +
::<math>x^2 + 24 x + 32 \equiv 0 \pmod{19}</math>
  
 +
::<math>x^2 + 5 x + 13 \equiv 0 \pmod{19}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L33</span><br/>
+
::<math>4 x^2 + 4 \cdot 5 x + 4 \cdot 13 \equiv 0 \pmod{19}</math>
Najmniejsze liczby pseudopierwsze Lucasa, które pojawiają się przy zastosowaniu metody Selfridge'a wyboru parametrów <math>P</math> i <math>Q</math>, to
 
  
::<math>323, 377, 1159, 1829, 3827, 5459, 5777, 9071, 9179, 10877, 11419, 11663, 13919, 14839, 16109, 16211, 18407, 18971, 19043, 22499, \ldots</math>
+
::<math>(2 x + 5)^2 - 25 + 52 \equiv 0 \pmod{19}</math>
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
::<math>(2 x + 5)^2 - 6 + 14 \equiv 0 \pmod{19}</math>
<span style="font-size: 90%; color:black;">'''forstep'''(k=1, 3*10^4, 2, '''if'''( LucasTest(k) && !'''isprime'''(k), '''print'''(k)) )</span>
 
<br/>
 
{{\Spoiler}}
 
  
 +
::<math>(2 x + 5)^2 \equiv - 8 \pmod{19}</math>
  
 +
::<math>(2 x + 5)^2 \equiv 7^2 \pmod{19}</math>
  
Tabela przedstawia ilość takich liczb nie większych od <math>10^n</math>
+
::<math>2 x + 5 \equiv \pm 7 \pmod{19}</math>
  
::{| class="wikitable plainlinks"  style="font-size: 90%; text-align: right; margin-right: auto;"
+
::<math>2 x \equiv - 5 \pm 7 \pmod{19}</math>
! <math>\boldsymbol{n}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math>
 
|-
 
| #LPSP <math>< 10^n</math> (metoda Selfridge'a) || <math>2</math> || <math>9</math> || <math>57</math> || <math>219</math> || <math>659</math> || <math>1911</math> || <math>5485</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
Mnożąc obie strony kongruencji przez <math>10</math>, otrzymujemy: <math>x \equiv 13 \pmod{19}</math> lub <math>x \equiv 1 \pmod{19}</math>.
<span style="font-size: 90%; color:black;">'''for'''(n=3, 9, s=0; '''forstep'''(k = 1, 10^n, 2, '''if'''( LucasTest(k) && !'''isprime'''(k), s++ ) ); '''print'''("n= ", n, "  ", s) )</span>
 
<br/>
 
{{\Spoiler}}
 
  
 +
Nieco spostrzegawczości pozwala znaleźć rozwiązanie kongruencji natychmiast. W&nbsp;naszym przypadku wystarczyło zauważyć, że
  
 +
::<math>x^2 + 5 x + 13 \equiv x^2 - 14 x + 13 \equiv (x - 1) (x - 13) \pmod{19}</math><br/>
 +
&#9633;
 +
{{\Spoiler}}
  
  
  
== Liczby silnie pseudopierwsze Lucasa ==
 
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L34</span><br/>
 
Jeżeli <math>p</math> jest liczbą pierwszą nieparzystą taką, że <math>\gcd (p, Q D) = 1</math> oraz <math>p - (D \, | \, p) = 2^r w</math>, gdzie <math>w</math> jest liczbą nieparzystą, to spełniony jest dokładnie jeden z&nbsp;warunków
 
  
::<math>U_w \equiv 0 \pmod{p}</math>
+
== Najmniejsze liczby niekwadratowe modulo ==
  
lub
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J47</span><br/>
 +
Najmniejsze liczby niekwadratowe modulo przedstawiamy Czytelnikowi jedynie jako pewną ciekawostkę. Jednocześnie jest to nietrudny temat, który pozwala lepiej poznać i&nbsp;zrozumieć liczby kwadratowe modulo, liczby niekwadratowe modulo, symbol Legendre'a i&nbsp;symbol Jacobiego.
  
::<math>V_{2^k w} \equiv 0 \pmod{p} \qquad</math> dla pewnego <math>k \in [0, r - 1]</math>
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 
Wiemy (zobacz L20), że jeżeli <math>p</math> jest liczbą pierwszą nieparzystą taką, że <math>\gcd (p, Q D) = 1</math>, to <math>p \, | \, U_{p - (D \, | \, p)}</math>. Z&nbsp;założenia jest <math>p - (D \, | \, p) = 2^r w</math>, zatem <math>p \, | \, U_{2^r w}</math>. Ponieważ założyliśmy, że <math>p \nmid Q</math> i <math>p \nmid D</math>, to ze wzoru <math>V^2_n - D U^2_n = 4 Q^n</math> (zobacz L13 p.14) wynika natychmiast, że <math>p</math> nie może dzielić jednocześnie liczb <math>U_n</math> i <math>V_n</math>.
 
  
Korzystając ze wzoru <math>U_{2 n} = U_n V_n</math> (zobacz L13 p.11), otrzymujemy
 
  
::{| border="0"
+
{| style="border-spacing: 5px; border: 2px solid black; background: transparent;"
|-style=height:3em
+
| &nbsp;'''A.''' Najmniejsze liczby niekwadratowe modulo <math>p</math>&nbsp;
| &#9679;&nbsp;&nbsp;&nbsp; || <math>p \, | \, U_{2^r w} \;\; \Longleftrightarrow \;\; p \, | \, U_{2^{r - 1} w} \cdot V_{2^{r - 1} w} \quad</math> || Jeżeli <math>p \, | \, V_{2^{r - 1} w}</math>, to twierdzenie jest dowiedzione. Jeżeli <math>p \nmid V_{2^{r - 1} w}</math>, to <math>p \, | \, U_{2^{r - 1} w}</math>.
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>p \, | \, U_{2^{r - 1} w} \;\; \Longleftrightarrow \;\; p \, | \, U_{2^{r - 2} w} \cdot V_{2^{r - 2} w} \quad</math> || Jeżeli <math>p \, | \, V_{2^{r - 2} w}</math>, to twierdzenie jest dowiedzione. Jeżeli <math>p \nmid V_{2^{r - 2} w}</math>, to <math>p \, | \, U_{2^{r - 2} w}</math>.
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>.................</math> ||
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>p \, | \, U_{4 w} \;\; \Longleftrightarrow \;\; p \, | \, U_{2 w} \cdot V_{2 w}</math> || Jeżeli <math>p \, | \, V_{2 w}</math>, to twierdzenie jest dowiedzione. Jeżeli <math>p \nmid V_{2 w}</math>, to <math>p \, | \, U_{2 w}</math>.
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>p \, | \, U_{2 w} \;\; \Longleftrightarrow \;\; p \, | \, U_w \cdot V_w</math> || Jeżeli <math>p \, | \, V_w</math>, to twierdzenie jest dowiedzione. Jeżeli <math>p \nmid V_w</math>, to <math>p \, | \, U_w</math>.
 
 
|}
 
|}
  
Z powyższego wynika, że musi być spełniony jeden z wypisanych w twierdzeniu warunków.
+
<span style="font-size: 110%; font-weight: bold;">Przykład J48</span><br/>
 +
W tabeli przedstawiliśmy najmniejsze liczby niekwadratowe modulo <math>p</math>
  
 
+
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: center; margin-right: auto;"
Zauważmy teraz, że jeżeli liczba pierwsza <math>p</math> dzieli <math>V_w</math>, to <math>p \nmid U_w</math>, bo <math>p</math> nie może jednocześnie być dzielnikiem liczb <math>U_w</math> i <math>V_w</math>.
+
! <math>\boldsymbol{m}</math>
 
+
| <math>3</math> || <math>5</math> || <math>7</math> || <math>9</math> || <math>11</math> || <math>13</math> || <math>15</math> || <math>17</math> || <math>19</math> || <math>21</math> || <math>23</math> || <math>25</math> || <math>27</math> || <math>29</math> || <math>31</math> || <math>33</math> || <math>35</math> || <math>37</math> || <math>39</math> || <math>41</math> || <math>43</math> || <math>45</math> || <math>47</math> || <math>49</math> || <math>51</math>
Zauważmy też, że jeżeli dla pewnego <math>k \in [1, r - 1]</math> liczba pierwsza <math>p</math> dzieli <math>V_{2^k w}</math>, to <math>p</math> nie dzieli żadnej liczby <math>V_{2^j w}</math> dla <math>j \in [0, k - 1] \;\; \text{i} \;\; p \nmid U_w</math>. Istotnie:
+
|-
 
+
!  <math>\boldsymbol{\mathbb{n}( p )}</math>  
::{| border="0"
+
| <math>2</math> || <math>2</math> || <math>3</math> || <math>-</math> || <math>2</math> || <math>2</math> || <math>-</math> || <math>3</math> || <math>2</math> || <math>-</math> || <math>5</math> || <math>-</math> || <math>-</math> || <math>2</math> || <math>3</math> || <math>-</math> || <math>-</math> || <math>2</math> || <math>-</math> || <math>3</math> || <math>2</math> || <math>-</math> || <math>5</math> || <math>-</math> || <math>-</math>
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || jeżeli <math>p \, | \, V_{2^k w}</math>, to <math>p \nmid U_{2^k w} \;\; \text{i} \;\; U_{2^k w} = U_{2^{k - 1} w} V_{2^{k - 1} w}</math>, zatem <math>p</math> nie może być dzielnikiem żadnej z liczb <math>U_{2^{k - 1} w} \;\; \text{i} \;\; V_{2^{k - 1} w}</math>
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || jeżeli <math>p \nmid U_{2^{k - 1} w} \;\; \text{i} \;\; U_{2^{k - 1} w} = U_{2^{k - 2} w} V_{2^{k - 2} w}</math>, to <math>p</math> nie może być dzielnikiem żadnej z liczb <math>U_{2^{k - 2} w} \;\; \text{i} \;\; V_{2^{k - 2} w}</math>
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || <math>.................</math> ||  
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || jeżeli <math>p \nmid U_{4 w} \;\; \text{i} \;\; U_{4 w} = U_{2 w} V_{2 w}</math>, to <math>p</math> nie może być dzielnikiem żadnej z liczb <math>U_{2 w} \;\; \text{i} \;\; V_{2 w}</math>
 
|-style=height:3em
 
| &#9679;&nbsp;&nbsp;&nbsp; || jeżeli <math>p \nmid U_{2 w} \;\; \text{i} \;\; U_{2 w} = U_w V_w</math>, to <math>p</math> nie może być dzielnikiem żadnej z liczb <math>U_w \;\; \text{i} \;\; V_w</math>
 
 
|}
 
|}
  
  
Co dowodzi, że spełniony jest dokładnie jeden z <math>r + 1</math> warunków:
 
  
::<math>U_w \equiv 0 \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J49</span><br/>
 +
Do wyszukiwania liczb <math>\mathbb{n} = \mathbb{n} (p)</math> Czytelnik może wykorzystać prostą funkcję napisaną w&nbsp;PARI/GP
  
::<math>V_{2^k w} \equiv 0 \pmod{p} \qquad</math> gdzie <math>k \in [0, r - 1]</math>
+
<span style="font-size: 90%; color:black;">A(p) =
 +
{
 +
'''if'''( p == 2, '''return'''(0) );
 +
'''if'''( !'''isprime'''(p), '''return'''(0) );
 +
'''forprime'''(q = 2, p, '''if'''( jacobi(q, p) == -1, '''return'''(q) ));
 +
}</span>
  
Co należało pokazać.<br/>
+
Zauważmy, że choć wyliczamy symbol Jacobiego, to jest to w&nbsp;rzeczywistości symbol Legendre'a, '''bo wiemy''', że liczba <math>p</math> jest liczbą pierwszą (w przypadku, gdy <math>p</math> jest liczbą złożoną, funkcja zwraca zero).
&#9633;
 
{{\Spoiler}}
 
  
  
  
Konsekwentnie definiujemy liczby pseudopierwsze<br/>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J50</span><br/>
<span style="font-size: 110%; font-weight: bold;">Definicja L35</span><br/>
+
Niech <math>\mathbb{n} \in \mathbb{Z}_+</math> i&nbsp;niech <math>p</math> będzie liczbą pierwszą nieparzystą. Jeżeli <math>\mathbb{n}</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math>, to jest liczbą pierwszą.
Powiemy, że liczba złożona nieparzysta <math>m</math> jest liczbą silnie pseudopierwszą Lucasa (SLPSP) dla parametrów <math>P</math> i <math>Q</math>, jeżeli <math>\gcd (m, Q D) = 1</math> oraz <math>m - (D \, | \, m) = 2^r w</math>, gdzie <math>w</math> jest liczbą nieparzystą i&nbsp;spełniony jest jeden z&nbsp;warunków
 
  
::<math>U_w \equiv 0 \pmod{m}</math>
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Przypuśćmy, że <math>\mathbb{n} = a b</math> jest liczbą złożoną, gdzie <math>1 < a, b < \mathbb{n}</math>. Z&nbsp;założenia <math>\mathbb{n}</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math>, zatem liczby <math>a, b</math> są liczbami kwadratowymi modulo <math>p</math>. Z&nbsp;definicji liczb kwadratowych muszą istnieć takie liczby <math>r, s</math>, że
  
lub
+
::<math>r^2 \equiv a \pmod{p}</math>
  
::<math>V_{2^k w} \equiv 0 \pmod{m} \;</math> dla pewnego <math>k \in [0, r - 1]</math>
+
::<math>s^2 \equiv b \pmod{p}</math>
  
 +
Skąd wynika, że
  
 +
::<math>\mathbb{n} = a b \equiv (r s)^2 \pmod{p}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L36</span><br/>
+
Wbrew założeniu, że <math>\mathbb{n}</math> jest liczbą niekwadratową modulo <math>p</math>.<br/>
Każda liczba SLPSP(<math>P, Q</math>) jest LPSP(<math>P, Q</math>). Korzystając ze zdefiniowanych wcześniej funkcji: <code>modPower(a, n, m)</code>, <code>jacobi(a, n)</code> i <code>modLucas(n, P, Q, m)</code> (zobacz K2, J37, L15), możemy napisać prosty program, który sprawdza, czy liczba <math>m</math> spełnia jeden z&nbsp;warunków podanych w&nbsp;twierdzeniu L34.
+
&#9633;
 +
{{\Spoiler}}
  
<span style="font-size: 90%; color: black;">isPrimeOr<span style="background-color: #fee481;">SLPSP</span>(m, P, Q) =
 
{
 
'''local'''(a, b, c, D, js, k, r, w, X);
 
D = P^2 - 4*Q;
 
'''if'''( gcd(m, 2*Q*D) > 1, '''return'''(0) );
 
js = jacobi(D, m);
 
r = '''valuation'''(m - js, 2); \\ znajdujemy wykładnik, z jakim liczba 2 występuje w m - js
 
w = (m - js) / 2^r;
 
X =  modLucas(w, P, Q, m);
 
a = X[1]; \\ U_w(P, Q) % m
 
b = X[2]; \\ V_w(P, Q) % m
 
'''if'''( a == 0 || b == 0, '''return'''(1) ); \\ b == 0 to przypadek k == 0
 
'''if'''( r == 1, '''return'''(0) ); \\ nie ma dalszych przypadków
 
c = modPower(Q, w, m); \\ Q^w % m
 
k = 0;
 
\\ sprawdzamy warunek V_(2^k * w) % m = 0; korzystamy ze wzoru V_(2*t) = (V_t)^2 - 2*Q^t
 
'''while'''( k++ < r,
 
        b = (b^2 - 2*c) % m;
 
        '''if'''( b == 0, '''return'''(1) );
 
        c = c^2 % m;
 
      );
 
'''return'''(0);
 
}</span>
 
  
  
 +
<span style="font-size: 110%; font-weight: bold;">Zadanie J51</span><br/>
 +
Pokazać, że najmniejszą liczbą niekwadratową modulo <math>p</math> jest
  
<span style="font-size: 110%; font-weight: bold;">Przykład L37</span><br/>
+
:* &nbsp;liczba <math>2</math> wtedy i&nbsp;tylko wtedy, gdy <math>p = 8 k \pm 3</math>
Poniższa tabela zawiera najmniejsze liczby silnie pseudopierwsze Lucasa dla różnych parametrów <math>P</math> i <math>Q</math>
+
:* &nbsp;liczba <math>3</math> wtedy i&nbsp;tylko wtedy, gdy <math>p = 24 k \pm 7</math>
 +
:* &nbsp;liczba <math>\geqslant 5</math> wtedy i&nbsp;tylko wtedy, gdy <math>p = 24 k \pm 1</math>
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: right; margin-right: auto;"
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Rozwiązanie|Hide=Ukryj rozwiązanie}}
! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>\boldsymbol{P}</math><br/><math>\boldsymbol{Q}</math>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
+
Z właściwości symbolu Legendre'a (zobacz J25 p.7) wiemy, że
! <math>\boldsymbol{1}</math> !! <math>\boldsymbol{2}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math> !! <math>\boldsymbol{10}</math>
 
|-
 
! <math>\boldsymbol{- 5}</math>
 
| <math>253</math> || <math>121</math> || style="background-color: yellow" | <math>143</math> || <math>781</math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>299</math> || <math>121</math> || style="background-color: yellow" | <math>407</math> || <math>9</math> || style="background-color: yellow" | <math>143</math>
 
|-
 
! <math>\boldsymbol{- 4}</math>
 
| <math>9</math> || <math>4181</math> || <math>341</math> || <math>169</math> || <math>33</math> || style="background-color: yellow" | <math>119</math> || <math>57</math> || <math>9</math> || <math>9</math> || <math>9</math>
 
|-
 
! <math>\boldsymbol{- 3}</math>
 
| style="background-color: yellow" | <math>799</math> || <math>121</math> || style="background-color: yellow" | <math>527</math> || <math>25</math> || <math>85</math> || style="background-color: yellow" | <math>209</math> || style="background-color: yellow" | <math>55</math> || style="background-color: yellow" | <math>35</math> || <math>169</math> || <math>529</math>
 
|-
 
! <math>\boldsymbol{- 2}</math>
 
| <math>2047</math> || style="background-color: yellow" | <math>989</math> || <math>161</math> || <math>49</math> || <math>49</math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>35</math> || <math>9</math> || <math>265</math>
 
|-
 
! <math>\boldsymbol{- 1}</math>
 
| <math>4181</math> || <math>169</math> || style="background-color: yellow" | <math>119</math> || <math>9</math> || <math>9</math> || style="background-color: yellow" | <math>629</math> || <math>25</math> || <math>33</math> || <math>9</math> || style="background-color: yellow" | <math>51</math>
 
|-
 
! <math>\boldsymbol{1}</math>
 
| <math>25</math> || style="background-color: red" | <math></math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>209</math> || style="background-color: yellow" | <math>527</math> || style="background-color: yellow" | <math>35</math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>559</math> || <math>9</math> || <math>49</math>
 
|-
 
! <math>\boldsymbol{2}</math>
 
| style="background-color: yellow" | <math>5459</math> || <math>9</math> || <math>2047</math> || <math>169</math> || <math>21</math> || <math>253</math> || <math>9</math> || style="background-color: yellow" | <math>15</math> || <math>9</math> || <math>49</math>
 
|-
 
! <math>\boldsymbol{3}</math>
 
| style="background-color: yellow" | <math>899</math> || style="background-color: yellow" | <math>5983</math> || <math>25</math> || <math>121</math> || <math>49</math> || <math>49</math> || style="background-color: yellow" | <math>35</math> || <math>55</math> || <math>25</math> || style="background-color: yellow" | <math>35</math>
 
|-
 
! <math>\boldsymbol{4}</math>
 
| style="background-color: yellow" | <math>899</math> || <math>25</math> || <math>1541</math> || style="background-color: red" | <math></math> || <math>341</math> || style="background-color: yellow" | <math>323</math> || style="background-color: yellow" | <math>377</math> || style="background-color: yellow" | <math>209</math> || <math>9</math> || style="background-color: yellow" | <math>527</math>
 
|-
 
! <math>\boldsymbol{5}</math>
 
| <math>9</math> || style="background-color: yellow" | <math>527</math> || <math>49</math> || style="background-color: yellow" | <math>527</math> || <math>4181</math> || <math>781</math> || style="background-color: yellow" | <math>39</math> || <math>9</math> || <math>9</math> || <math>9</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
::<math>\left( {\small\frac{2}{p}} \right)_{\small{\!\! L}} \,\, =  
<span style="font-size: 90%; color:black;">FirstSLPSP(Stop) =
+
  \,\,  
\\ najmniejsze SLPSP(P,Q) < Stop;  dla 1<=P<=10 i -5<=Q<=5
+
   \begin{cases}
{
+
\;\;\: 1 & \text{gdy } p \equiv 1, 7 \pmod{8} \\
'''local'''(D, m, P, Q);
+
      - 1 & \text{gdy } p \equiv 3, 5 \pmod{8}
Q = -6;
+
   \end{cases}</math>
  '''while'''( Q++ <= 5,
 
        '''if'''( Q == 0, '''next'''() );
 
        P = 0;
 
        '''while'''( P++ <= 10,
 
              D = P^2 - 4*Q;
 
              '''if'''( D == 0,  
 
                  '''print'''("Q= ", Q, "   P= ", P, "  ------------------");
 
                  '''next'''();
 
                );
 
              m = 3;
 
              '''while'''( m < Stop,
 
                      '''if'''( isPrimeOr<span style="background-color: #fee481;">SLPSP</span>(m, P, Q)  &&  !'''isprime'''(m),  
 
                          '''print'''("Q= ", Q, "   P= ", P, "  m= ", m, "  (D|m)= ", jacobi(D, m));
 
                          '''break'''();
 
                        );
 
                      m = m + 2;
 
                    );
 
            );
 
      );
 
}</span>
 
<br/>
 
{{\Spoiler}}
 
  
Żółtym tłem oznaczyliśmy te najmniejsze liczby pseudopierwsze Lucasa, dla których <math>(D \, | \, m) = - 1</math>.
+
Wynika stąd natychmiast, dla liczb pierwszych <math>p</math> postaci <math>8 k \pm 3</math> (i tylko dla takich liczb) liczba <math>2</math> jest liczbą niekwadratową, czyli również najmniejszą liczbą niekwadratową modulo <math>p</math>.
  
 +
Z zadania J36 wynika, że liczba <math>3</math> jest liczbą niekwadratową jedynie dla liczb pierwszych postaci <math>12 k \pm 5</math>. Zatem dla liczb pierwszych, które są jednocześnie postaci <math>p = 8 k \pm 1</math> i <math>p = 12 j \pm 5</math>, liczba <math>3</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math>. Z&nbsp;czterech warunków
  
 +
::<math>p = 8 k + 1 \quad \text{i} \quad p = 12 j + 5</math>
  
<span style="font-size: 110%; font-weight: bold;">Przykład L38</span><br/>
+
::<math>p = 8 k + 1 \quad \text{i} \quad p = 12 j + 7</math>
Ilość liczb SLPSP(<math>P, Q</math>) mniejszych od <math>10^9</math>
 
  
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: right; margin-right: auto;"
+
::<math>p = 8 k + 7 \quad \text{i} \quad p = 12 j + 5</math>
! &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<math>\boldsymbol{P}</math><br/><math>\boldsymbol{Q}</math>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 
! <math>\boldsymbol{1}</math> !! <math>\boldsymbol{2}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math> !! <math>\boldsymbol{10}</math>
 
|-
 
! <math>\boldsymbol{- 5}</math>
 
| <math>1056</math> || <math>1231</math> || <math>1184</math> || <math>1264</math> || <math>2278</math> || <math>1284</math> || <math>1181</math> || <math>1174</math> || <math>1281</math> || <math>1429</math>
 
|-
 
! <math>\boldsymbol{- 4}</math>
 
| <math>1043</math> || <math>1165</math> || <math>2139</math> || <math>1316</math> || <math>1151</math> || <math>1079</math> || <math>1112</math> || <math>2377</math> || <math>1197</math> || <math>989</math>
 
|-
 
! <math>\boldsymbol{- 3}</math>
 
| <math>952</math> || <math>1514</math> || <math>1055</math> || <math>1153</math> || <math>1135</math> || <math>2057</math> || <math>998</math> || <math>1202</math> || <math>1077</math> || <math>1112</math>
 
|-
 
! <math>\boldsymbol{- 2}</math>
 
| <math>1282</math> || <math>1092</math> || <math>1212</math> || <math>1510</math> || <math>1155</math> || <math>1179</math> || <math>1173</math> || <math>2240</math> || <math>1089</math> || <math>2109</math>
 
|-
 
! <math>\boldsymbol{- 1}</math>
 
| <math>1165</math> || <math>1316</math> || <math>1079</math> || <math>2377</math> || <math>989</math> || <math>1196</math> || <math>1129</math> || <math>1050</math> || <math>1055</math> || <math>1147</math>
 
|-
 
! <math>\boldsymbol{1}</math>
 
| <math>282485800</math> || style="background-color: red" | <math></math> || <math>2278</math> || <math>2057</math> || <math>2113</math> || <math>2266</math> || <math>4053</math> || <math>2508</math> || <math>2285</math> || <math>3083</math>
 
|-
 
! <math>\boldsymbol{2}</math>
 
| <math>1776</math> || <math>449152466</math> || <math>1282</math> || <math>1316</math> || <math>1645</math> || <math>1413</math> || <math>1564</math> || <math>1595</math> || <math>1683</math> || <math>1435</math>
 
|-
 
! <math>\boldsymbol{3}</math>
 
| <math>1621</math> || <math>1553</math> || <math>282485800</math> || <math>1514</math> || <math>1530</math> || <math>1510</math> || <math>1588</math> || <math>1549</math> || <math>1468</math> || <math>1692</math>
 
|-
 
! <math>\boldsymbol{4}</math>
 
| <math>2760</math> || <math>282485800</math> || <math>2978</math> || style="background-color: red" | <math></math> || <math>2137</math> || <math>2278</math> || <math>1995</math> || <math>2057</math> || <math>2260</math> || <math>2113</math>
 
|-
 
! <math>\boldsymbol{5}</math>
 
| <math>1314</math> || <math>2392</math> || <math>1497</math> || <math>2392</math> || <math>1165</math> || <math>1268</math> || <math>1227</math> || <math>1411</math> || <math>1253</math> || <math>2377</math>
 
|}
 
  
 +
::<math>p = 8 k + 7 \quad \text{i} \quad p = 12 j + 7</math>
  
 +
Drugi i&nbsp;trzeci nie są możliwe, bo modulo <math>4</math> otrzymujemy
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
::<math>p \equiv 1 \pmod{4} \quad \text{i} \quad p \equiv 3 \pmod{4}</math>
<span style="font-size: 90%; color:black;">NumOfSLPSP(Stop) =
 
\\ ilość liczb silnie pseudopierwszych Lucasa SLPSP(P,Q) < Stop;  dla 1<=P<=10 i -5<=Q<=5
 
{
 
'''local'''(D, m, P, Q);
 
Q = -6;
 
'''while'''( Q++ <= 5,
 
        '''if'''( Q == 0, '''next'''() );
 
        P = 0;
 
        '''while'''( P++ <= 10,
 
              D = P^2 - 4*Q;
 
              '''if'''( D == 0, '''print'''("Q= ", Q, "  P= ", P, "  ------------------"); '''next'''() );
 
              s = 0;
 
              m = 3;
 
              '''while'''( m < Stop,
 
                      '''if'''( isPrimeOr<span style="background-color: #fee481;">SLPSP</span>(m, P, Q)  &&  !'''isprime'''(m), s++ );
 
                      m = m + 2;
 
                    );
 
              '''print'''("Q= ", Q, "  P= ", P, "  s= ", s);
 
            );
 
      );
 
}</span>
 
<br/>
 
{{\Spoiler}}
 
  
 +
::<math>p \equiv 3 \pmod{4} \quad \text{i} \quad p \equiv 1 \pmod{4}</math>
  
 +
a z&nbsp;pierwszego i&nbsp;czwartego mamy
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L39</span><br/>
+
::<math>3 p = 24 k + 3 \quad \text{i} \quad 2 p = 24 j + 10 \qquad \;\: \Longrightarrow \qquad p = 24 (k - j) - 7 \qquad \Longrightarrow \qquad p \equiv - 7 \pmod{24}</math>
Można pokazać<ref name="Arnault1"/>, że dla liczby złożonej nieparzystej <math>m \neq 9</math> i&nbsp;ustalonego <math>D</math> ilość par <math>P, Q</math> takich, że
 
  
:* <math>0 \leqslant P, Q < m</math>
+
::<math>3 p = 24 k + 21 \quad \text{i} \quad 2 p = 24 j + 14 \qquad \Longrightarrow \qquad p = 24 (k - j) + 7 \qquad \Longrightarrow \qquad p \equiv 7 \pmod{24}</math>
:* <math>\gcd (Q, m) = 1</math>
 
:* <math>P^2 - 4 Q \equiv D \pmod{m}</math>
 
:* <math>m</math> jest SLPSP(<math>P, Q</math>)
 
  
nie przekracza <math>\tfrac{4}{15} n</math>.
+
Zauważmy, że problem mogliśmy zapisać w&nbsp;postaci układu kongruencji
  
Nie dotyczy to przypadku, gdy <math>m = p (p + 2)</math> jest iloczynem liczb pierwszych bliźniaczych takich, że <math>(D \, | \, p) = - (D \, | \, p + 2) = - 1</math>, wtedy mamy słabsze oszacowanie: <math>\# (P, Q) \leqslant \tfrac{1}{2} n</math>. Zauważmy, że taką sytuację łatwo wykryć, bo w&nbsp;tym przypadku <math>m + 1 = (p + 1)^2</math> jest liczbą kwadratową.
+
::<math>p \equiv \pm 1 \pmod{8}</math>
  
 +
::<math>p \equiv \pm 5 \pmod{12}</math>
  
 +
Gdyby moduły tych kongruencji były względnie pierwsze, to każdemu wyborowi znaków odpowiadałaby pewna kongruencja równoważna (zobacz J3). Widzimy, że w&nbsp;przypadku, gdy moduły nie są względnie pierwsze, kongruencja równoważna może istnieć, ale nie musi. Rozwiązując taki problem, wygodnie jest skorzystać z&nbsp;programu PARI/GP. Wystarczy wpisać
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L40</span><br/>
+
chinese(Mod(1, 8), Mod(5, 12)) = Mod(17, 24)
Podobnie jak w&nbsp;przypadku liczb pseudopierwszych Lucasa LPSP(<math>P, Q</math>) tak i&nbsp;w&nbsp;przypadku liczb silnie pseudopierwszych Lucasa SLPSP(<math>P, Q</math>) możemy testować pierwszość liczby <math>m</math>, wybierając liczby <math>P, Q</math> losowo lub zastosować wybraną metodę postępowania. Przedstawiony poniżej program, to zmodyfikowany kod z uwagi L36. Teraz parametry <math>P, Q</math> są wybierane metodą Selfridge'a, a symbol Jacobiego <math>(D \, | \, m)</math> jest równy <math>- 1</math>.
+
chinese(Mod(1, 8), Mod(-5, 12)) - błąd
 +
chinese(Mod(-1, 8), Mod(5, 12)) - błąd
 +
chinese(Mod(-1, 8), Mod(-5, 12)) = Mod(7, 24)
  
<span style="font-size: 90%; color:black;">StrongLucasTest(m) =
+
Ostatni punkt zadania rozwiążemy tą metodą. Liczba większa lub równa <math>5</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math> wtedy i&nbsp;tylko wtedy, gdy liczby <math>2</math> i <math>3</math> są liczbami kwadratowymi modulo <math>p</math>, co oznacza, że liczba pierwsza <math>p</math> spełnia kongruencje
{
 
'''local'''(a, b, c, k, P, Q, r, w, X);
 
'''if'''( '''issquare'''(m), '''return'''(0) ); \\ sprawdzamy, czy liczba m nie jest kwadratowa
 
X = MethodA(m);
 
P = X[1];
 
Q = X[2];
 
'''if'''( P == 0 || '''gcd'''(m, 2*Q) > 1, '''return'''(0) ); \\ jeżeli P = 0, to m jest liczbą złożoną
 
r = '''valuation'''(m + 1, 2); \\ znajdujemy wykładnik, z jakim liczba 2 występuje w m + 1
 
w = (m + 1) / 2^r;
 
X =  modLucas(w, P, Q, m);
 
a = X[1]; \\ U_w(P, Q) % m
 
b = X[2]; \\ V_w(P, Q) % m
 
'''if'''( a == 0 || b == 0, '''return'''(1) ); \\ b == 0 to przypadek k == 0
 
'''if'''( r == 1, '''return'''(0) ); \\ nie ma dalszych przypadków
 
c = modPower(Q, w, m); \\ Q^w % m
 
k = 0;
 
\\ sprawdzamy warunek V_(2^k * w) %m = 0; korzystamy ze wzoru V_(2*w) = (V_w)^2 - 2*Q^w
 
'''while'''( k++ < r,
 
        b = (b^2 - 2*c) % m;
 
        '''if'''( b == 0, '''return'''(1) );
 
        c = c^2 % m;
 
      );
 
'''return'''(0);
 
}</span>
 
  
 +
::<math>p \equiv \pm 1 \pmod{8}</math>
  
 +
::<math>p \equiv \pm 1 \pmod{12}</math>
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L41</span><br/>
+
Postępując jak wyżej, otrzymujemy
Najmniejsze liczby silnie pseudopierwsze Lucasa, które otrzymujemy po zastosowaniu metody Selfridge'a wyboru parametrów <math>P</math> i <math>Q</math>, to
 
  
::<math>5459, 5777, 10877, 16109, 18971, 22499, 24569, 25199, 40309, 58519, 75077, 97439, \ldots</math>
+
chinese(Mod(1, 8), Mod(1, 12)) = Mod(1, 24)
 +
chinese(Mod(1, 8), Mod(-1, 12)) - błąd
 +
chinese(Mod(-1, 8), Mod(1, 12)) - błąd
 +
chinese(Mod(-1, 8), Mod(-1, 12)) = Mod(23, 24)
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
Co należało pokazać.<br/>
<span style="font-size: 90%; color:black;">'''forstep'''(k=1, 10^5, 2, '''if'''( StrongLucasTest(k) && !'''isprime'''(k), '''print'''(k)) )</span>
+
&#9633;
<br/>
 
 
{{\Spoiler}}
 
{{\Spoiler}}
  
  
Tabela przedstawia ilość takich liczb nie większych od <math>10^n</math>
 
 
::{| class="wikitable plainlinks"  style="font-size: 90%; text-align: right; margin-right: auto;"
 
! <math>\boldsymbol{n}</math> !! <math>\boldsymbol{3}</math> !! <math>\boldsymbol{4}</math> !! <math>\boldsymbol{5}</math> !! <math>\boldsymbol{6}</math> !! <math>\boldsymbol{7}</math> !! <math>\boldsymbol{8}</math> !! <math>\boldsymbol{9}</math>
 
|-
 
| #SLPSP <math>< 10^n</math> (metoda Selfridge'a) || <math>0</math> || <math>2</math> || <math>12</math> || <math>58</math> || <math>178</math> || <math>505</math> || <math>1415</math>
 
|}
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J52</span><br/>
<span style="font-size: 90%; color:black;">'''for'''(n=3, 9, s=0; '''forstep'''(k = 1, 10^n, 2, '''if'''( StrongLucasTest(k) && !'''isprime'''(k), s++ ) ); '''print'''("n=", n, "  ", s) )</span>
+
Dla każdej liczby pierwszej <math>p_n</math> istnieje nieskończenie wiele takich liczb pierwszych <math>q</math>, że <math>p_n</math> jest najmniejszą liczbą niekwadratową modulo <math>q</math>.
<br/>
 
{{\Spoiler}}
 
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Niech <math>2, p_2, \ldots, p_{n - 1}, p_n</math> będą kolejnymi liczbami pierwszymi. Wybierzmy liczbę <math>u</math> tak, aby spełniała układ kongruencji
  
 +
::<math>\begin{align}
 +
u & \equiv 1 \pmod{8 p_2 \cdot \ldots \cdot p_{n - 1}} \\
 +
u & \equiv a \pmod{p_n}
 +
\end{align}</math>
  
 +
gdzie <math>a</math> oznacza dowolną liczbą niekwadratową modulo <math>p_n</math>. Na podstawie chińskiego twierdzenia o resztach (zobacz J3) powyższy układ kongruencji może być zapisany w postaci kongruencji równoważnej
  
 +
::<math>u \equiv c \pmod{8 p_2 \cdot \ldots \cdot p_n}</math>
  
== Test BPSW ==
 
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L42</span><br/>
+
Zauważmy, że żadna z liczb pierwszych <math>p_k</math>, gdzie <math>1 \leqslant k \leqslant n</math> nie dzieli liczby <math>c</math>, bo mielibyśmy
Jest <math>488</math> liczb SPSP(<math>2</math>) mniejszych od <math>10^8</math> i są 582 liczby SPSP(<math>3</math>) mniejsze od <math>10^8</math> (zobacz K20). Ale jest aż <math>21</math> liczb mniejszych od <math>10^8</math> silnie pseudopierwszych jednocześnie względem podstaw <math>2</math> i <math>3</math>:
 
  
<math>1373653, 1530787, 1987021, 2284453, 3116107, 5173601, 6787327, 11541307, 13694761, 15978007, 16070429,</math>
+
::<math>u \equiv 0 \pmod{p_k}</math>
  
<math>16879501, 25326001, 27509653, 27664033, 28527049, 54029741, 61832377, 66096253, 74927161, 80375707</math>
+
wbrew wypisanemu wyżej układowi kongruencji. Zatem <math>\gcd (c, 8 p_2 \cdot \ldots \cdot p_n) = 1</math> i z twierdzenia Dirichleta wiemy, że wśród liczb <math>u</math> spełniających kongruencję <math>u \equiv c \pmod{8 p_2 \cdot \ldots \cdot p_n}</math> występuje nieskończenie wiele liczb pierwszych (bo wśród tych liczb są liczby postaci <math>8 p_2 \cdot \ldots \cdot p_n \cdot k + c</math>, gdzie <math>k \in \mathbb{Z}_+</math>). Oznaczmy przez <math>q</math> dowolną z tych liczb pierwszych.
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Pokaż kod|Hide=Ukryj kod}}
 
<span style="font-size: 90%; color:black;">'''forstep'''(m=3, 10^8, 2, '''if'''( isPrimeOr<span style="background-color: #fee481;">SPSP</span>(m, 2)  &&  isPrimeOr<span style="background-color: #fee481;">SPSP</span>(m, 3)  &&  !'''isprime'''(m), '''print'''("m=", m) ) )</span>
 
<br/>
 
{{\Spoiler}}
 
  
Widzimy, że prawdopodobieństwo błędnego rozpoznania pierwszości w&nbsp;przypadku liczb mniejszych od <math>10^8</math> dla podstaw <math>2</math> i <math>3</math> jest rzędu kilku milionowych. Gdyby prawdopodobieństwa błędnego rozpoznania pierwszości w&nbsp;przypadku podstaw <math>2</math> i <math>3</math> były niezależne, to spodziewalibyśmy się, że nie będzie wcale liczb mniejszych od <math>10^8</math> silnie pseudopierwszych jednocześnie względem podstaw <math>2</math> i <math>3</math>, bo prawdopodobieństwo takiego zdarzenia byłoby równe kilkudziesięciu bilonowym. Ale tak nie jest.
+
Ponieważ <math>q \equiv 1 \pmod{8}</math>, to <math>\left( {\small\frac{2}{q}} \right)_{\small{\!\! L}} = 1</math> (zobacz J25), a dla wszystkich liczb pierwszych nieparzystych <math>p_k < p_n</math> mamy
  
Jest to mocny argument za tym, że zastosowanie różnych (niezależnych) testów może być znacznie silniejszym narzędziem do testowania pierwszości liczb, niż wielokrotne stosowanie tego samego testu, gdzie poszczególne próby są tylko pozornie niezależne.
+
<div style="margin-top: 1em; margin-bottom: 1em;">
 +
::<math>\left( {\small\frac{p_k}{q}} \right)_{\small{\!\! L}} = \left( {\small\frac{q}{p_k}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{q - 1}{2} \cdot \tfrac{p_k - 1}{2}} = \left( {\small\frac{q}{p_k}} \right)_{\small{\!\! L}} = \left( {\small\frac{c}{p_k}} \right)_{\small{\!\! L}} = \left( {\small\frac{1}{p_k}} \right)_{\small{\!\! L}} = 1</math>
 +
</div>
  
Połączenie znanych nam już testów prowadzi do prostego programu
+
bo <math>8 \, | \, (q - 1)</math>. Dla liczby pierwszej <math>p_n</math> jest
  
<span style="font-size: 90%; color:black;">BPSWtest(m) =
+
<div style="margin-top: 1em; margin-bottom: 1em;">
{
+
::<math>\left( {\small\frac{p_n}{q}} \right)_{\small{\!\! L}} = \left( {\small\frac{q}{p_n}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{q - 1}{2} \cdot \tfrac{p_n - 1}{2}} = \left( {\small\frac{q}{p_n}} \right)_{\small{\!\! L}} = \left( {\small\frac{c}{p_n}} \right)_{\small{\!\! L}} = \left( {\small\frac{a}{p_n}} \right)_{\small{\!\! L}} = - 1</math>
'''forprime'''(p = 2, 1000, '''if'''( m % p > 0, '''next'''() ); '''if'''( m == p, '''return'''(1), '''return'''(0) ));
+
</div>
'''if'''( !isPrimeOr<span style="background-color: #fee481;">SPSP</span>(m, 2), '''return'''(0) );
 
'''if'''( !StrongLucasTest(m), '''return'''(0), '''return'''(1) );
 
}</span>
 
  
 +
Zatem wszystkie liczby pierwsze mniejsze od <math>p_n</math> są liczbami kwadratowymi modulo <math>q</math>, a liczba pierwsza <math>p_n</math> jest najmniejszą liczbą niekwadratową modulo <math>q</math>. Zauważmy, że <math>q</math> była dowolnie wybraną liczbą pierwszą z nieskończenie wielu liczb pierwszych występujących w ciągu arytmetycznym <math>8 p_2 \cdot \ldots \cdot p_n \cdot k + c</math>, gdzie <math>k \in \mathbb{Z}_+</math>. Co kończy dowód.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
  
Funkcja <code>BPSWtest(m)</code> kolejno sprawdza:
 
  
:* czy liczba <math>m</math> jest podzielna przez niewielkie liczby pierwsze (w naszym przypadku mniejsze od <math>1000</math>); jeśli tak, to sprawdza, czy <math>m</math> jest liczbą pierwszą, czy złożoną i&nbsp;zwraca odpowiednio <math>1</math> lub <math>0</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J53 (Sarvadaman Chowla)</span><br/>
:* czy liczba <math>m</math> przechodzi test Millera-Rabina dla podstawy <math>2</math>; jeśli nie, to zwraca <math>0</math>
+
Istnieje niekończenie wiele liczb pierwszych <math>p</math> takich, że najmniejsza liczba niekwadratowa modulo <math>p</math> jest większa od <math>{\small\frac{\log p}{2 L \log 2}}</math>, gdzie <math>L</math> jest stałą Linnika.
:* czy liczba <math>m</math> przechodzi silny test Lucasa dla parametrów <math>P</math> i <math>Q</math>, które wybieramy metodą Selfridge'a; jeśli nie, to zwraca <math>0</math>, w&nbsp;przeciwnym wypadku zwraca <math>1</math>
 
  
 +
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 +
Niech <math>a = 4 P (n)</math>, gdzie <math>P(n)</math> jest iloczynem wszystkich liczb pierwszych nie większych od <math>n</math>. Z twierdzenia Dirichleta wiemy, że w ciągu arytmetycznym <math>u_k = a k + 1</math> występuje nieskończenie wiele liczb pierwszych. Niech <math>p</math> oznacza dowolną z nich.
  
Test w&nbsp;dokładnie takiej postaci zaproponowali Robert Baillie i&nbsp;Samuel Wagstaff<ref name="BaillieWagstaff1"/>. Nazwa testu to akronim, utworzony od pierwszych liter nazwisk Roberta Bailliego, Carla Pomerance'a, Johna Selfridge'a i&nbsp;Samuela Wagstaffa.
+
Z definicji <math>p \equiv 1 \pmod{8}</math>, zatem <math>\left( {\small\frac{2}{p}} \right)_{\small{\!\! L}} = 1</math> (zobacz J25), a dla dowolnej liczby pierwszej nieparzystej <math>q_i \leqslant n</math> mamy
  
Nie jest znany żaden przykład liczby złożonej <math>m</math>, którą test BPSW<ref name="BPSW1"/><ref name="BPSW2"/> identyfikowałby jako pierwszą i&nbsp;z&nbsp;pewnością nie ma takich liczb dla <math>m < 2^{64} \approx 1.844 \cdot 10^{19}</math>. Warto przypomnieć: potrzebowaliśmy siedmiu testów Millera-Rabina (dla podstaw <math>2, 3, 5, 7, 11, 13, 17</math>), aby mieć pewność, że dowolna liczba <math>m < 3.41 \cdot 10^{14}</math> jest pierwsza (zobacz K21).
+
<div style="margin-top: 1em; margin-bottom: 1em;">
 +
::<math>\left( {\small\frac{q_i}{p}} \right)_{\small{\!\! L}} = \left( {\small\frac{p}{q_i}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{p - 1}{2} \cdot \tfrac{q_i - 1}{2}} = \left( {\small\frac{p}{q_i}} \right)_{\small{\!\! L}} = \left( {\small\frac{a k + 1}{q_i}} \right)_{\small{\!\! L}} = \left( {\small\frac{1}{q_i}} \right)_{\small{\!\! L}} = 1</math>
 +
</div>
  
 +
Zatem najmniejsza liczba niekwadratowa modulo <math>p</math> jest większa od <math>n</math>. Wiemy też, że (zobacz A9)
  
 +
::<math>a = 4 P (n) < 4 \cdot 4^n = 4^{n + 1}</math>
  
 +
Załóżmy teraz, że <math>p</math> jest najmniejszą liczbą pierwszą w ciągu arytmetycznym <math>u_k = a k + 1</math>, a liczba <math>n</math> została wybrana tak, że liczba <math>a = 4 P (n)</math> jest dostatecznie duża i możliwe jest skorzystanie z twierdzenia Linnika (zobacz C30). Dostajemy natychmiast oszacowanie
  
 +
::<math>p = p_{\min} (a, 1) < a^L</math>
  
== Uzupełnienia ==
+
gdzie <math>L</math> jest stałą Linnika (możemy przyjąć <math>L = 5</math>). Łącząc powyższe oszacowania, łatwo otrzymujemy oszacowanie najmniejszej liczby niekwadratowej modulo <math>p</math>
  
&nbsp;
+
::<math>\mathbb{n}(p) \geqslant n + 1 > \log_4 a = {\small\frac{\log a}{\log 4}} = {\small\frac{\log a^L}{2 L \log 2}} > {\small\frac{\log p}{2 L \log 2}}</math>
  
=== <span style="border-bottom:1px solid #000;">Pewne własności współczynników dwumianowych</span> ===
+
Każdemu wyborowi innej liczby <math>n' > n</math> takiej, że <math>P(n') > P (n)</math> odpowiada inna liczba pierwsza <math>p'</math> taka, że <math>\mathbb{n}(p') > {\small\frac{\log p'}{2 L \log 2}}</math>, zatem liczb pierwszych <math>p</math> dla których najmniejsza liczba niekwadratowa modulo <math>p</math> jest większa od <math>{\small\frac{\log p}{2 L \log 2}}</math> jest nieskończenie wiele.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
&nbsp;
 
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L43</span><br/>
 
Jeżeli <math>p</math> jest liczbą pierwszą, to
 
  
::<math>\binom{p}{k} \equiv 0 \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J54</span><br/>
 +
W twierdzeniu J52 pokazaliśmy, że dla każdej liczby pierwszej <math>\mathbb{n}</math> istnieją takie liczby pierwsze <math>p</math>, że <math>\mathbb{n}</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math>. Zatem zbiór <math>S_\mathbb{n}</math> liczb pierwszych takich, że dla każdej liczby <math>p \in S_\mathbb{n}</math> liczba <math>\mathbb{n}</math> jest najmniejszą liczbą niekwadratową modulo <math>p</math> jest zbiorem niepustym. Wynika stąd, że zbiór <math>S_\mathbb{n}</math> ma element najmniejszy i możemy te najmniejsze liczby pierwsze łatwo znaleźć – wystarczy w PARI/GP napisać proste polecenie
  
dla każdego <math>k \in [1, p - 1]</math>.
+
<span style="font-size: 90%; color:black;">'''forprime'''(n = 2, 50, '''forprime'''(p = 2, 10^10, '''if'''( A(p) == n, '''print'''(n, "  ", p); '''break'''() )))</span>
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
W tabeli przedstawiamy uzyskane rezultaty (zobacz też [https://oeis.org/A000229 A000229]).
Łatwo zauważamy, że dla <math>k \in [1, p - 1]</math> liczba pierwsza <math>p</math> dzieli licznik, ale nie dzieli mianownika współczynnika dwumianowego
 
 
 
::<math>\binom{p}{k} = {\small\frac{p!}{k! \cdot (p - k)!}}</math>
 
 
 
zatem <math>p \biggr\rvert \binom{p}{k}</math>. Co należało pokazać.<br/>
 
&#9633;
 
{{\Spoiler}}
 
  
 +
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: center; margin-right: auto;"
 +
|-
 +
! <math>\boldsymbol{\mathbb{n}}</math>
 +
| <math>2</math> || <math>3</math> || <math>5</math> || <math>7</math> || <math>11</math> || <math>13</math> || <math>17</math> || <math>19</math> || <math>23</math> || <math>29</math> || <math>31</math> || <math>37</math> || <math>41</math> || <math>43</math> || <math>47</math>
 +
|-
 +
! <math>\boldsymbol{p}</math>
 +
| <math>3</math> || <math>7</math> || <math>23</math> || <math>71</math> || <math>311</math> || <math>479</math> || <math>1559</math> || <math>5711</math> || <math>10559</math> || <math>18191</math> || <math>31391</math> || <math>422231</math> || <math>701399</math> || <math>366791</math> || <math>3818929</math>
 +
|}
  
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L44</span><br/>
 
Jeżeli <math>p</math> jest liczbą pierwszą nieparzystą, to
 
  
::<math>\binom{p + 1}{k} \equiv 0 \pmod{p}</math>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J55</span><br/>
 +
Niech <math>p</math> będzie liczbą pierwszą nieparzystą, a <math>\mathbb{n}</math> będzie najmniejszą liczbą niekwadratową modulo <math>p</math>. Prawdziwe jest oszacowanie
  
dla każdego <math>k \in [2, p - 1]</math>.
+
::<math>\mathbb{n} (p) < \sqrt{p} + {\small\frac{1}{2}}</math>
  
 
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
Jeżeli <math>k \in [2, p - 1]</math>, to modulo <math>p</math> dostajemy
+
Ponieważ <math>\mathbb{n} \nmid p</math>, to z&nbsp;oszacowania <math>x - 1 < \lfloor x \rfloor \leqslant x</math> wynika, że
  
::<math>\binom{p + 1}{k} = \binom{p}{k} + \binom{p}{k - 1} \equiv 0 \pmod{p}</math>
+
::<math>{\small\frac{p}{\mathbb{n}}} - 1 < \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor < {\small\frac{p}{\mathbb{n}}}</math>
  
Bo liczba pierwsza <math>p</math> dzieli licznik, ale nie dzieli mianownika współczynników dwumianowych po prawej stronie. Co należało pokazać.<br/>
+
::<math>p < \mathbb{n} \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + \mathbb{n} < p + \mathbb{n}</math>
&#9633;
 
{{\Spoiler}}
 
  
 +
Niech <math>u = \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + 1</math>, mamy
  
 +
::<math>0 < \mathbb{n} u - p < \mathbb{n}</math>
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L45</span><br/>
+
Liczba <math>\mathbb{n} u - p</math> musi być liczbą kwadratową modulo <math>p</math>, zatem
Jeżeli <math>p</math> jest liczbą pierwszą, to
 
  
::<math>\binom{p - 1}{k} \equiv (- 1)^k \pmod{p}</math>
+
::<math>1 = \left( {\small\frac{\mathbb{n} u - p}{p}} \right)_{\small{\!\! L}} = \left( {\small\frac{\mathbb{n}}{p}} \right)_{\small{\!\! L}} \cdot \left( {\small\frac{u}{p}} \right)_{\small{\!\! L}} = - \left( {\small\frac{u}{p}} \right)_{\small{\!\! L}}</math>
  
dla każdego <math>k \in [0, p - 1]</math>.
+
Ale z&nbsp;założenia <math>\mathbb{n}</math> jest najmniejszą liczbą taką, że <math>\left( {\small\frac{\mathbb{n}}{p}} \right)_{\small{\!\! L}} = - 1</math>. Wynika stąd, że musi być <math>\mathbb{n} \leqslant u</math> i&nbsp;łatwo znajdujemy, że
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
+
::<math>\mathbb{n} \leqslant \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + 1 < {\small\frac{p}{\mathbb{n}}} + 1</math>
Łatwo sprawdzamy, że twierdzenie jest prawdziwe dla liczby pierwszej parzystej <math>p = 2</math>. Załóżmy, że <math>p</math> jest liczbą pierwszą nieparzystą. Równie łatwo sprawdzamy, że twierdzenie jest prawdziwe dla <math>k = 0</math> i <math>k = 1</math>. Zauważmy, że dla <math>k \in [1, p - 1]</math> jest
 
  
::<math>\binom{p - 1}{k} = {\small\frac{(p - 1) !}{k! (p - 1 - k) !}} = {\small\frac{p - k}{k}} \cdot {\small\frac{(p - 1) !}{(k - 1) ! (p - k) !}} = {\small\frac{p - k}{k}} \cdot \binom{p - 1}{k - 1} = {\small\frac{p}{k}} \cdot \binom{p - 1}{k - 1} - \binom{p - 1}{k - 1}</math>
+
::<math>\mathbb{n}^2 < p + \mathbb{n}</math>
  
Ponieważ współczynniki dwumianowe są liczbami całkowitymi, a&nbsp;liczba <math>k \in [2, p - 1]</math> nie dzieli liczby pierwszej nieparzystej <math>p</math>, to <math>k</math> musi dzielić liczbę <math>\binom{p - 1}{k - 1}</math>. Zatem dla <math>k \in [2, p - 1]</math> modulo <math>p</math> mamy
+
Ponieważ wypisane liczby są liczbami całkowitymi, to ostatnią nierówność możemy zapisać w&nbsp;postaci
  
::<math>\binom{p - 1}{k} \equiv - \binom{p - 1}{k - 1}\pmod{p}</math>
+
::<math>\mathbb{n}^2 \leqslant p + \mathbb{n} - 1</math>
  
 
Skąd otrzymujemy
 
Skąd otrzymujemy
  
::<math>\binom{p - 1}{k} \equiv (- 1)^1 \binom{p - 1}{k - 1} \equiv (- 1)^2 \binom{p - 1}{k - 2} \equiv \ldots \equiv (- 1)^{k - 2} \binom{p - 1}{2} \equiv (- 1)^{k - 1} \binom{p - 1}{1} \equiv (- 1)^k \pmod{p}</math>
+
::<math>\left( \mathbb{n} - {\small\frac{1}{2}} \right)^2 \leqslant p - {\small\frac{3}{4}}</math>
 +
 
 +
::<math>\mathbb{n} \leqslant {\small\frac{1}{2}} + \sqrt{p - {\small\frac{3}{4}}} < {\small\frac{1}{2}} + \sqrt{p}</math>
  
 
Co należało pokazać.<br/>
 
Co należało pokazać.<br/>
Linia 1964: Linia 1662:
  
  
<span style="font-size: 110%; font-weight: bold;">Twierdzenie L46</span><br/>
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J56*</span><br/>
Dla współczynników dwumianowych prawdziwe są następujące wzory
+
Niech <math>p</math> będzie liczbą pierwszą nieparzystą, a <math>\mathbb{n}</math> będzie najmniejszą liczbą niekwadratową modulo <math>p</math>. Dla <math>p \geqslant 5</math> prawdziwe jest oszacowanie<ref name="Norton1"/><ref name="Trevino1"/><ref name="Trevino2"/>
  
::<math>\underset{k \; \text{parzyste}}{\sum_{k = 0}^{n}} \binom{n}{k} = 2^{n - 1}</math>
+
::<math>\mathbb{n} (p) \leqslant 1.1 \cdot p^{1 / 4} \log p</math>
  
::<math>\underset{k \; \text{nieparzyste}}{\sum_{k = 1}^{n}} \binom{n}{k} = 2^{n - 1}</math>
 
  
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
 
Ze wzoru dwumianowego
 
  
::<math>(a + b)^n = \sum_{k = 0}^{n} \binom{n}{k} a^{n - k} b^k</math>
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J57</span><br/>
 +
Liczby <math>\mathbb{n} = \mathbb{n} (p)</math> są zaskakująco małe. Średnia wartość <math>\mathbb{n} = \mathbb{n} (p)</math>, gdzie <math>p</math> są nieparzystymi liczbami pierwszymi, jest równa<ref name="Erdos1"/>
  
z łatwością otrzymujemy
+
::<math>\lim_{x \to \infty} {\small\frac{1}{\pi (x)}} \sum_{p \leqslant x} \mathbb{n} (p) = \sum_{k = 1}^{\infty} {\small\frac{p_k}{2^k}} = 3.674643966 \ldots</math>
  
::<math>(1 + 1)^n = \sum_{k = 0}^{n} \binom{n}{k} = 2^n</math>
 
  
::<math>(1 - 1)^n = \sum_{k = 0}^{n} (- 1)^k \binom{n}{k} = 0</math>
 
  
Obliczając sumę i&nbsp;różnicę powyższych wzorów mamy
 
  
::<math>\sum_{k = 0}^{n} \binom{n}{k} (1 + (- 1)^k) = 2 \underset{k \; \text{parzyste}}{\sum^n_{k = 0}} \binom{n}{k} = 2^n</math>
 
  
::<math>\sum_{k = 0}^{n} \binom{n}{k} (1 - (- 1)^k) = 2 \underset{k \; \text{nieparzyste}}{\sum_{k = 1}^{n}} \binom{n}{k} = 2^n</math>
+
{| style="border-spacing: 5px; border: 2px solid black; background: transparent;"
 +
| &nbsp;'''C.''' Najmniejsze dodatnie liczby niekwadratowe <math>a</math> takie, że <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1</math>&nbsp;
 +
|}
  
Skąd natychmiast wynika
+
<span style="font-size: 110%; font-weight: bold;">Przykład J58</span><br/>
 +
W tabeli przedstawiliśmy najmniejsze liczby niekwadratowe modulo <math>p</math>, najmniejsze liczby niekwadratowe modulo <math>m</math> i&nbsp;najmniejsze dodatnie liczby niekwadratowe <math>a</math> takie, że <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1</math>.
  
::<math>\underset{k \; \text{parzyste}}{\sum_{k = 0}^{n}} \binom{n}{k} = 2^{n - 1}</math>
+
::{| class="wikitable plainlinks"  style="font-size: 100%; text-align: center; margin-right: auto;"
 +
! <math>\boldsymbol{m}</math>
 +
| <math>3</math> || <math>5</math> || <math>7</math> || <math>9</math> || <math>11</math> || <math>13</math> || <math>15</math> || <math>17</math> || <math>19</math> || <math>21</math> || <math>23</math> || <math>25</math> || <math>27</math> || <math>29</math> || <math>31</math> || <math>33</math> || <math>35</math> || <math>37</math> || <math>39</math> || <math>41</math> || <math>43</math> || <math>45</math> || <math>47</math> || <math>49</math> || <math>51</math>
 +
|-
 +
!  <math>\boldsymbol{\mathbb{n}( p )}</math>
 +
| <math>2</math> || <math>2</math> || <math>3</math> || <math>-</math> || <math>2</math> || <math>2</math> || <math>-</math> || <math>3</math> || <math>2</math> || <math>-</math> || <math>5</math> || <math>-</math> || <math>-</math> || <math>2</math> || <math>3</math> || <math>-</math> || <math>-</math> || <math>2</math> || <math>-</math> || <math>3</math> || <math>2</math> || <math>-</math> || <math>5</math> || <math>-</math> || <math>-</math>
 +
|-
 +
!  <math>\boldsymbol{\mathbb{n}( m )}</math>
 +
| <math>2</math> || <math>2</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>2</math> || <math>2</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>5</math> || <math>2</math> || <math>2</math> || <math>2</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>2</math> || <math>2</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>5</math> || <math>3</math> || <math>2</math>
 +
|-
 +
!  <math>\boldsymbol{c( m )}</math>
 +
| <math>2</math> || <math>2</math> || <math>3</math> || <math>-</math> || <math>2</math> || <math>2</math> || <math>7</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>5</math> || <math>-</math> || <math>2</math> || <math>2</math> || <math>3</math> || <math>5</math> || <math>2</math> || <math>2</math> || <math>7</math> || <math>3</math> || <math>2</math> || <math>2</math> || <math>5</math> || <math>-</math> || <math>2</math>
 +
|}
  
::<math>\underset{k \; \text{nieparzyste}}{\sum_{k = 1}^{n}} \binom{n}{k} = 2^{n - 1}</math>
 
  
Co należało pokazać.<br/>
 
&#9633;
 
{{\Spoiler}}
 
  
 +
<span style="font-size: 110%; font-weight: bold;">Uwaga J59</span><br/>
 +
Do wyszukiwania liczb <math>c = c (m)</math> Czytelnik może wykorzystać prostą funkcję napisaną w&nbsp;PARI/GP
  
 +
<span style="font-size: 90%; color:black;">C(m) =
 +
{
 +
'''if'''( m%2 == 0, '''return'''(0) );
 +
'''if'''( '''issquare'''(m), '''return'''(0) );
 +
'''forprime'''(p = 2, m, '''if'''( jacobi(p, m) == -1, '''return'''(p) ));
 +
}</span>
  
  
  
=== <span style="border-bottom:1px solid #000;">Funkcje <span style="font-size: 95%; background-color: #f8f9fa"><tt>digits(m, b)</tt></span> oraz <span style="font-size: 95%; background-color: #f8f9fa"><tt>issquare(m)</tt></span></span> ===
+
<span style="font-size: 110%; font-weight: bold;">Uwaga J60</span><br/>
 +
Najmniejsze dodatnie liczby niekwadratowe <math>a</math> takie, że <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1</math> oznaczyliśmy jako <math>c(m)</math>. Zauważmy, że są to liczby inne od <math>\mathbb{n}(p)</math> i <math>\mathbb{n}(m)</math>. Wystarczy zwrócić uwagę na występujące w&nbsp;tabeli liczby <math>\mathbb{n}(p)</math>, <math>\mathbb{n}(m)</math> i <math>c(m)</math> dla <math>m = 15, 33, 39</math>. Różnice wynikają z&nbsp;innej definicji liczb <math>c(m)</math> – jeżeli liczba <math>a</math> jest liczbą niekwadratową modulo <math>m</math>, to symbol Jacobiego <math>\left( {\small\frac{a}{m}} \right)_{\small{\!\! J}}</math> nie musi być równy <math>- 1</math>. I&nbsp;tak czasami bywa, co bardzo dobrze pokazuje powyższa tabela.
  
&nbsp;
+
Ponieważ <math>c(m)</math> nie zawsze będzie najmniejszą liczbą kwadratową modulo <math>m</math>, to mamy natychmiast oszacowanie: <math>c(m) \geqslant \mathbb{n} (m)</math> (poza przypadkami, gdy <math>m = n^2</math>).
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L47</span><br/>
+
Dla <math>c(m)</math> nie są prawdziwe oszacowania podane w&nbsp;twierdzeniu J55. Łatwo zauważamy, że
W funkcji <code>modLucas()</code> wykorzystaliśmy zaimplementowaną w&nbsp;PARI/GP funkcję
 
  
<code>digits(m, b)</code> – zwraca wektor cyfr liczby <math>| m |</math> w&nbsp;systemie liczbowym o&nbsp;podstawie <math>b</math>
+
::<math>c = c (15) = 7 > \sqrt{15} + {\small\frac{1}{2}} \approx 4.37</math>
  
W naszym przypadku potrzebowaliśmy uzyskać wektor cyfr liczby <math>m</math> w&nbsp;układzie dwójkowym, czyli funkcję <code>digits(m, 2)</code> . Wprowadzenie tej funkcji pozwoliło zwiększyć czytelność kodu, ale bez trudu możemy ją sami napisać. Zauważmy, że do zapisania liczby <math>m \geqslant 1</math> potrzebujemy <math>\log_2 m + 1</math> cyfr. Zastępując funkcję <math>\log_2 m</math> funkcją <math>\left \lfloor \tfrac{\log m}{\log 2} \right \rfloor</math> musimy liczyć się z&nbsp;możliwym błędem zaokrąglenia – dlatego w&nbsp;programie deklarujemy wektor <code>V</code> o&nbsp;długości <code>floor( log(m)/log(2) ) + 2</code>. Zwracany wektor <code>W</code> ma już prawidłową długość.
+
::<math>c = c (39) = 7 > \sqrt{39} + {\small\frac{1}{2}} \approx 6.74</math>
  
<span style="font-size: 90%; color:black;">Dec2Bin(m) =  
+
::<math>c = c (105) = 11 > \sqrt{105} + {\small\frac{1}{2}} \approx 10.75</math>
\\ zwraca wektor cyfr liczby m w układzie dwójkowym
 
{
 
'''local'''(i, k, V, W);
 
'''if'''( m == 0, '''return'''([0]) );
 
V = '''vector'''( '''floor'''( '''log'''(m)/'''log'''(2) ) + 2 ); \\ potrzeba floor( log(m)/log(2) ) + 1, ale błąd zaokrąglenia może zepsuć wynik
 
k = 0;
 
'''while'''( m > 0,
 
        V[k++] = m % 2;
 
        m = '''floor'''(m / 2);
 
      );
 
W = '''vector'''(k);
 
'''for'''(i = 1, k, W[i] = V[k + 1 - i]);
 
'''return'''(W);
 
}
 
  
 +
::<math>c = c (231) = 17 > \sqrt{231} + {\small\frac{1}{2}} \approx 15.7</math>
  
 +
Nie ma więcej takich przypadków dla <math>m < 10^9</math>.
  
<span style="font-size: 110%; font-weight: bold;">Uwaga L48</span><br/>
 
W funkcjach <code>LucasTest()</code> i <code>StrongLucasTest()</code> wykorzystaliśmy zaimplementowaną w&nbsp;PARI/GP funkcję
 
  
<code>issquare(m)</code> – sprawdza, czy liczba <math>m</math> jest liczbą kwadratową
 
  
Wprowadzenie tej funkcji pozwoliło zwiększyć czytelność kodu, ale bez trudu możemy ją sami napisać. Potrzebna nam będzie funkcja, która znajduje całość z&nbsp;pierwiastka z&nbsp;liczby <math>m</math>, czyli <math>\left\lfloor \sqrt{m} \right\rfloor</math>. Wykorzystamy tutaj ciąg
+
<span style="font-size: 110%; font-weight: bold;">Twierdzenie J61</span><br/>
 +
Niech <math>c, m \in \mathbb{Z}_+</math> i&nbsp;niech <math>m \geqslant 3</math> będzie liczbą nieparzystą, a <math>c</math> będzie najmniejszą liczbą taką, że <math>\left( {\small\frac{c}{m}} \right)_{\small{\!\! J}} = - 1</math>. Liczba <math>c</math> musi być liczbą pierwszą.
  
::<math>a_{k + 1} =
+
{{Spoiler|Style = font-style: italic; font-weight: bold; color: olive; text-decoration: underline;|Show=Dowód|Hide=Ukryj dowód}}
  \begin{cases}
+
Przypuśćmy, że <math>c = a b</math> jest liczbą złożoną, gdzie <math>1 < a, b < c</math>. Mamy
  \qquad \;\; 1 & \text{gdy } k = 0 \\
 
      \tfrac{1}{2} \left( a_k + \tfrac{x}{a_k} \right) & \text{gdy } k > 0
 
  \end{cases}</math>
 
  
którego granicą jest <math>\sqrt{x}</math> <ref name="pierwiastek1"/>.
+
::<math>- 1 = \left( {\small\frac{c}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a b}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}}</math><math>\left( {\small\frac{b}{m}} \right)_{\small{\!\! J}}</math>
  
Modyfikując powyższą definicję tak, aby operacje były zawsze wykonywane na liczbach całkowitych<ref name="IntegerSquareRoot1"/>
+
Zatem jeden z&nbsp;czynników po prawej stronie musi być równy <math>- 1</math> wbrew definicji liczby <math>c</math>.<br/>
 +
&#9633;
 +
{{\Spoiler}}
  
::<math>a_{k + 1} =
 
  \begin{cases}
 
  \qquad \quad \; 1 & \text{gdy } k = 0 \\
 
      \left\lfloor \tfrac{1}{2} \left( a_k + \left\lfloor \tfrac{m}{a_k} \right\rfloor \right) \right\rfloor & \text{gdy } k > 0
 
  \end{cases}</math>
 
  
otrzymujemy ciąg, którego wszystkie wyrazy, począwszy od pewnego skończonego <math>n_0</math>, są równe <math>\left\lfloor \sqrt{m} \right\rfloor</math>. Nie dotyczy to przypadku, gdy <math>m + 1</math> jest liczbą kwadratową, wtedy, począwszy od pewnego skończonego <math>n_0</math>, wyrazy ciągu przyjmują na zmianę wartości <math>\left\lfloor \sqrt{m} \right\rfloor</math> oraz <math>\left\lfloor \sqrt{m} \right\rfloor + 1</math>.
 
  
Na tej podstawie możemy w&nbsp;PARI/GP napisać funkcję
 
  
<span style="font-size: 90%; color:black;">intSqrt(m) =
 
{
 
'''local'''(a, b);
 
'''if'''( m == 0, '''return'''(0) );
 
a = 2^( '''floor'''( '''log'''(m)/'''log'''(2)/2 ) + 2 ); \\ musi być a > sqrt(m)
 
b = '''floor'''(( a + '''floor'''( m/a ) )/2);
 
'''while'''( b < a,
 
        a = b;
 
        b = '''floor'''( ( a + '''floor'''(m/a) )/2 );
 
      );
 
'''return'''(a);
 
}</span>
 
  
Oczywiście liczba <math>m</math> jest liczbą kwadratową, wtedy i&nbsp;tylko wtedy, gdy <math>m = \left\lfloor \sqrt{m} \right\rfloor^2</math>, zatem wystarczy sprawdzić, czy <code>m == intSqrt(m)^2</code>.
 
  
  
Linia 2082: Linia 1758:
  
  
 +
== Przypisy ==
  
 +
<references>
  
 +
<ref name="CRT1">Wikipedia, ''Chińskie twierdzenie o&nbsp;resztach'', ([https://pl.wikipedia.org/wiki/Chi%C5%84skie_twierdzenie_o_resztach Wiki-pl]), ([https://en.wikipedia.org/wiki/Chinese_remainder_theorem Wiki-en])</ref>
  
 +
<ref name="CRT2">CRT to często używany skrót od angielskiej nazwy twierdzenia: ''Chinese remainder theorem''</ref>
  
== Przypisy ==
+
<ref name="logic1">Wikipedia, ''Logical equivalence'', ([https://en.wikipedia.org/wiki/Logical_equivalence Wiki-en])</ref>
  
<references>
+
<ref name="sumazbiorow">Wikipedia, ''Zasada włączeń i&nbsp;wyłączeń'', ([https://pl.wikipedia.org/wiki/Zasada_w%C5%82%C4%85cze%C5%84_i_wy%C5%82%C4%85cze%C5%84 Wiki-pl]), ([https://en.wikipedia.org/wiki/Inclusion%E2%80%93exclusion_principle Wiki-en])</ref>
  
<ref name="BaillieWagstaff1">Robert Baillie and Samuel S. Wagstaff Jr., ''Lucas Pseudoprimes'', Mathematics of Computation Vol. 35, No. 152 (1980), ([http://mpqs.free.fr/LucasPseudoprimes.pdf LINK])</ref>
+
<ref name="jacobi1">Wikipedia, ''Symbol Jacobiego'', ([https://pl.wikipedia.org/wiki/Symbol_Jacobiego Wiki-pl]), ([https://en.wikipedia.org/wiki/Jacobi_symbol Wiki-en])</ref>
  
<ref name="Arnault1">François Arnault, ''The Rabin-Monier Theorem for Lucas Pseudoprimes'', Mathematics of Computation Vol. 66, No. 218 (1997)</ref>
+
<ref name="legendre1">Wikipedia, ''Symbol Legendre’a'', ([https://pl.wikipedia.org/wiki/Symbol_Legendre%E2%80%99a Wiki-pl]), ([https://en.wikipedia.org/wiki/Legendre_symbol Wiki-en])</ref>
  
<ref name="pierwiastek1">Wikipedia, ''Pierwiastek kwadratowy'', ([https://pl.wikipedia.org/wiki/Metody_obliczania_pierwiastka_kwadratowego#Metoda_babilo%C5%84ska Wiki-pl]), ([https://en.wikipedia.org/wiki/Methods_of_computing_square_roots#Babylonian_method Wiki-en])</ref>
+
<ref name="Norton1">Karl K. Norton, ''Numbers with Small Prime Factors, and the Least ''k''th Power Non-Residue'', Memoirs of the American Mathematical Society, No. 106 (1971)</ref>
  
<ref name="IntegerSquareRoot1">Wikipedia, ''Integer square root'', ([https://en.wikipedia.org/wiki/Integer_square_root#Using_only_integer_division Wiki-en])</ref>
+
<ref name="Trevino1">Enrique Treviño, ''The least k-th power non-residue'', Journal of Number Theory, Volume 149 (2015)</ref>
  
<ref name="BPSW1">Wikipedia, ''Baillie–PSW primality test'', ([https://en.wikipedia.org/wiki/Baillie%E2%80%93PSW_primality_test Wiki-en])</ref>
+
<ref name="Trevino2">Kevin J. McGown and Enrique Treviño, ''The least quadratic non-residue'', Mexican Mathematicians in the World (2021)</ref>
  
<ref name="BPSW2">MathWorld, ''Baillie-PSW Primality Test'', ([https://mathworld.wolfram.com/Baillie-PSWPrimalityTest.html LINK])</ref>
+
<ref name="Erdos1">Paul Erdős, ''Számelméleti megjegyzések I'', Afar. Lapok, v. 12 (1961)</ref>
  
 
</references>
 
</references>

Wersja z 11:41, 6 kwi 2023

22.03.2023



Chińskie twierdzenie o resztach

Twierdzenie J1
Niech [math]\displaystyle{ a, u \in \mathbb{Z} }[/math] i [math]\displaystyle{ m, n \in \mathbb{Z}_+ }[/math] i [math]\displaystyle{ \gcd (m, n) = 1 }[/math]. Kongruencja

[math]\displaystyle{ u \equiv a \pmod{m n} }[/math]

jest równoważna układowi kongruencji

[math]\displaystyle{ \begin{align} u &\equiv a \pmod{m} \\ u &\equiv a \pmod{n} \end{align} }[/math]
Dowód

[math]\displaystyle{ \Longrightarrow }[/math]
Jeżeli liczba [math]\displaystyle{ u - a }[/math] jest podzielna przez iloczyn [math]\displaystyle{ m n }[/math], to tym bardziej jest podzielna przez dowolny czynnik tego iloczynu, skąd wynika natychmiast wypisany układ kongruencji.

[math]\displaystyle{ \Longleftarrow }[/math]
Z kongruencji

[math]\displaystyle{ u \equiv a \pmod{m} }[/math]

wynika, że [math]\displaystyle{ u - a = k m }[/math], zaś z kongruencji

[math]\displaystyle{ u \equiv a \pmod{n} }[/math]

otrzymujemy [math]\displaystyle{ n \, | \, (u - a) }[/math], czyli [math]\displaystyle{ n \, | \, k m }[/math]. Ponieważ [math]\displaystyle{ \gcd (m, n) = 1 }[/math], zatem [math]\displaystyle{ n \, | \, k }[/math] (zobacz C72) i istnieje taka liczba całkowita [math]\displaystyle{ s }[/math], że [math]\displaystyle{ k = s n }[/math], czyli [math]\displaystyle{ u - a = s n m }[/math], a stąd [math]\displaystyle{ u \equiv a \pmod{m n} }[/math]. Co kończy dowód.


Twierdzenie J2
Dla dowolnych liczb [math]\displaystyle{ a, b \in \mathbb{Z} }[/math] i względnie pierwszych liczb [math]\displaystyle{ m, n \in \mathbb{Z}_+ }[/math] istnieje dokładnie jedna taka liczba [math]\displaystyle{ c }[/math] (określona modulo [math]\displaystyle{ m n }[/math]), że prawdziwy jest układ kongruencji

[math]\displaystyle{ \begin{align} c & \equiv a \pmod{m} \\ c & \equiv b \pmod{n} \end{align} }[/math]
Dowód

Z założenia liczby [math]\displaystyle{ m }[/math] i [math]\displaystyle{ n }[/math] są względnie pierwsze, zatem na mocy lematu Bézouta (C.71) istnieją takie liczby [math]\displaystyle{ x, y \in \mathbb{Z} }[/math], że

[math]\displaystyle{ m x + n y = 1 }[/math]

Niech [math]\displaystyle{ c = a n y + b m x }[/math]. Modulo [math]\displaystyle{ m }[/math] dostajemy

[math]\displaystyle{ c \equiv a n y \pmod{m} }[/math]
[math]\displaystyle{ c \equiv a (1 - m x) \pmod{m} }[/math]
[math]\displaystyle{ c \equiv a \pmod{m} }[/math]

Natomiast modulo [math]\displaystyle{ n }[/math] mamy

[math]\displaystyle{ c \equiv b m x \pmod{n} }[/math]
[math]\displaystyle{ c \equiv b (1 - n y) \pmod{n} }[/math]
[math]\displaystyle{ c \equiv b \pmod{n} }[/math]

Pokazaliśmy tym samym istnienie szukanej liczby [math]\displaystyle{ c }[/math]. Przypuśćmy, że istnieją dwie takie liczby [math]\displaystyle{ c }[/math] i [math]\displaystyle{ d }[/math]. Z założenia [math]\displaystyle{ m \, | \, (d - a) }[/math] i [math]\displaystyle{ m \, | \, (c - a) }[/math], zatem [math]\displaystyle{ m }[/math] dzieli różnicę tych liczb, czyli [math]\displaystyle{ m \, | \, (d - c) }[/math]. Podobnie pokazujemy, że [math]\displaystyle{ n \, | \, (d - c) }[/math]. Ponieważ liczby [math]\displaystyle{ m }[/math] i [math]\displaystyle{ n }[/math] są względnie pierwsze, to [math]\displaystyle{ m n \, | \, (d - c) }[/math] (zobacz C73), co oznacza, że

[math]\displaystyle{ d \equiv c \pmod{m n} }[/math].

Czyli możemy powiedzieć, że wybrana przez nas liczba [math]\displaystyle{ c }[/math] jest określona modulo [math]\displaystyle{ m n }[/math] i tak rozumiana jest dokładnie jedna. W szczególności istnieje tylko jedna liczba [math]\displaystyle{ c }[/math] taka, że [math]\displaystyle{ 1 \leqslant c \leqslant m n }[/math].


Twierdzenie J3 (chińskie twierdzenie o resztach)
Niech [math]\displaystyle{ a, b, c, u \in \mathbb{Z} }[/math] i [math]\displaystyle{ m, n \in \mathbb{Z}_+ }[/math] oraz niech [math]\displaystyle{ \gcd (m, n) = 1 }[/math]. Istnieje dokładnie jedna liczba [math]\displaystyle{ c }[/math] (określona modulo [math]\displaystyle{ m n }[/math]) taka, że kongruencja

[math]\displaystyle{ u \equiv c \pmod{m n} }[/math]

jest równoważna układowi kongruencji

[math]\displaystyle{ \begin{align} u & \equiv a \pmod{m} \\ u & \equiv b \pmod{n} \end{align} }[/math]
Dowód

Z twierdzenia J2 wiemy, że istnieje dokładnie jedna liczba [math]\displaystyle{ c }[/math] (określona modulo [math]\displaystyle{ m n }[/math]) taka, że prawdziwy jest układ kongruencji

[math]\displaystyle{ \begin{align} c & \equiv a \pmod{m} \\ c & \equiv b \pmod{n} \end{align} }[/math]

Korzystając z tego rezultatu i twierdzenia J1, otrzymujemy

[math]\displaystyle{ u \equiv c \pmod{m n} \qquad \Longleftrightarrow \qquad \begin{array}{l} u \equiv c \; \pmod{m} \\ u \equiv c \; \pmod{n} \\ \end{array} \qquad \Longleftrightarrow \qquad \begin{array}{l} u \equiv a \; \pmod{m} \\ u \equiv b \:\, \pmod{n} \\ \end{array} }[/math]

Co należało pokazać.


Uwaga J4
Chińskie twierdzenie o resztach[1] (CRT[2]) pozostaje prawdziwe w przypadku układu skończonej liczby kongruencji. Założenie, że moduły [math]\displaystyle{ m }[/math] i [math]\displaystyle{ n }[/math] są względnie pierwsze, jest istotne. Przykładowo układ kongruencji

[math]\displaystyle{ \begin{align} u &\equiv 1 \pmod{4} \\ u &\equiv 3 \pmod{8} \end{align} }[/math]

nie może być zapisany w postaci jednej równoważnej kongruencji, bo nie istnieją liczby, które spełniałyby powyższy układ jednocześnie. Łatwo zauważamy, że rozwiązaniem pierwszego równania jest [math]\displaystyle{ u = 4 k + 1 }[/math], które dla liczb [math]\displaystyle{ k }[/math] parzystych i nieparzystych ma postać

[math]\displaystyle{ u = 8 j + 1, \qquad u = 8 j + 5 }[/math]

i nie może być [math]\displaystyle{ u \equiv 3 \pmod{8} }[/math].


Zadanie J5
Niech [math]\displaystyle{ u, a_1, \ldots, a_k \in \mathbb{Z} }[/math] i [math]\displaystyle{ m_1, \ldots, m_k \in \mathbb{Z}_+ }[/math]. Pokazać, że jeżeli liczby [math]\displaystyle{ m_1, \ldots, m_k }[/math] są parami względnie pierwsze (czyli [math]\displaystyle{ \gcd (m_i, m_j) = 1 }[/math] dla [math]\displaystyle{ i \neq j }[/math]), to istnieje dokładnie jedna liczba [math]\displaystyle{ c }[/math] (określona modulo [math]\displaystyle{ m_1 \cdot \ldots \cdot m_k }[/math]) taka, że układ kongruencji

[math]\displaystyle{ \begin{align} u & \equiv a_1 \pmod{m_1} \\ & \cdots \\ u & \equiv a_k \pmod{m_k} \end{align} }[/math]

można zapisać w sposób równoważny w postaci kongruencji

[math]\displaystyle{ u \equiv c \;\; \pmod{m_1 \cdot \ldots \cdot m_k} }[/math]
Rozwiązanie

Indukcja matematyczna. Twierdzenie jest prawdziwe dla liczby [math]\displaystyle{ k = 2 }[/math] (zobacz J3). Zakładając prawdziwość twierdzenia dla liczby naturalnej [math]\displaystyle{ k \geqslant 2 }[/math], dla liczby [math]\displaystyle{ k + 1 }[/math] otrzymujemy układ kongruencji

[math]\displaystyle{ \begin{align} u & \equiv c \quad \;\, \pmod{m_1 \cdot \ldots \cdot m_k} \\ u & \equiv a_{k + 1} \pmod{m_{k + 1}} \end{align} }[/math]

gdzie skorzystaliśmy z założenia indukcyjnego. Z twierdzenia J3 wynika, że układ ten można zapisać w sposób równoważny w postaci kongruencji

[math]\displaystyle{ u \equiv c' \pmod{m_1 \cdot \ldots \cdot m_k m_{k + 1}} }[/math]

gdzie liczba [math]\displaystyle{ c' }[/math] jest dokładnie jedna i jest określona modulo [math]\displaystyle{ m_1 \cdot \ldots \cdot m_k m_{k + 1} }[/math]. Zatem twierdzenie jest prawdziwe dla [math]\displaystyle{ k + 1 }[/math]. Co kończy dowód indukcyjny.


Przykład J6
Dysponujemy pewną ilością kulek. Grupując je po [math]\displaystyle{ 5 }[/math], zostają nam [math]\displaystyle{ 3 }[/math], a kiedy próbujemy ustawić je po [math]\displaystyle{ 7 }[/math], zostają nam [math]\displaystyle{ 4 }[/math]. Jaka najmniejsza ilość kulek spełnia te warunki? Rozważmy układ kongruencji

[math]\displaystyle{ \begin{align} n &\equiv 3 \pmod{5} \\ n &\equiv 4 \pmod{7} \end{align} }[/math]

Z chińskiego twierdzenia o resztach wiemy, że powyższy układ możemy zapisać w postaci równoważnej kongruencji modulo [math]\displaystyle{ 35 }[/math]. Jeśli chcemy zaoszczędzić sobie trudu, to wystarczy skorzystać z PARI/GP. Wpisując proste polecenie

chinese( Mod(3,5), Mod(4,7) )

uzyskujemy wynik Mod(18, 35), zatem równoważna kongruencja ma postać

[math]\displaystyle{ n \equiv 18 \pmod{35} }[/math]

Jest to zarazem odpowiedź na postawione pytanie: najmniejsza liczba kulek wynosi [math]\displaystyle{ 18 }[/math].

Gdybyśmy chcieli rozważać bardziej rozbudowany układ kongruencji, przykładowo

[math]\displaystyle{ \begin{align} n &\equiv 1 \pmod{2} \\ n &\equiv 2 \pmod{3} \\ n &\equiv 3 \pmod{5} \\ n &\equiv 4 \pmod{7} \\ n &\equiv 5 \pmod{11} \end{align} }[/math]

to argumenty należy zapisać w postaci wektora

chinese( [Mod(1,2), Mod(2,3), Mod(3,5), Mod(4,7), Mod(5,11)] )

Otrzymujemy Mod(1523, 2310).



Wielomiany

Twierdzenie J7
Niech [math]\displaystyle{ W_n (x) }[/math] będzie dowolnym wielomianem stopnia [math]\displaystyle{ n }[/math]. Wielomian [math]\displaystyle{ W_n (x) }[/math] można przedstawić w postaci

[math]\displaystyle{ W_n (x) = W_n (s) + (x - s) V_{n - 1} (x) }[/math]

gdzie [math]\displaystyle{ V_{n - 1} (x) }[/math] jest wielomianem stopnia [math]\displaystyle{ n - 1 }[/math], a współczynniki wiodące wielomianów [math]\displaystyle{ W_n (x) }[/math] i [math]\displaystyle{ V_{n - 1} (x) }[/math] są sobie równe.

Dowód

Z założenia [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math], gdzie [math]\displaystyle{ a_n \neq 0 }[/math]. Zauważmy, że

[math]\displaystyle{ W_n (x) - W_n (s) = \sum_{k = 0}^{n} a_k x^k - \sum_{k = 0}^{n} a_k s^k }[/math]
[math]\displaystyle{ \quad \; = \sum_{k = 1}^{n} a_k (x^k - s^k) }[/math]

Dla [math]\displaystyle{ k \geqslant 1 }[/math] prawdziwy jest wzór

[math]\displaystyle{ x^k - s^k = (x - s) \sum_{j = 1}^{k} x^{k - j} s^{j - 1} }[/math]
[math]\displaystyle{ \;\,\, = (x - s) (x^{k - 1} + s x^{k - 2} + \ldots + s^{k - 2} x + s^{k - 1}) }[/math]
[math]\displaystyle{ \;\,\, = (x - s) U^{(k)} (x) }[/math]

Gdzie przez [math]\displaystyle{ U^{(k)} (x) = \sum_{j = 1}^{k} x^{k - j} s^{j - 1} }[/math] oznaczyliśmy wielomian, którego stopień jest równy [math]\displaystyle{ k - 1 }[/math]. Zatem możemy napisać

[math]\displaystyle{ W_n (x) - W_n (s) = (x - s) \sum_{k = 1}^{n} a_k U^{(k)} (x) }[/math]

Suma wypisana po prawej stronie jest pewnym wielomianem [math]\displaystyle{ V_{n - 1} (x) }[/math]. Ponieważ ze wszystkich wielomianów [math]\displaystyle{ a_k U^{(k)} (x) }[/math], wielomian [math]\displaystyle{ a_n U^{(n)} (x) }[/math] ma największy stopień równy [math]\displaystyle{ n - 1 }[/math], to stopień wielomianu [math]\displaystyle{ V_{n - 1} (x) }[/math] jest równy [math]\displaystyle{ n - 1 }[/math]. Czyli

[math]\displaystyle{ W_n (x) - W_n (s) = (x - s) V_{n - 1} (x) }[/math]

Niech [math]\displaystyle{ V_n (x) = \sum_{k = 0}^{n - 1} b_k x^k }[/math]. Mamy

[math]\displaystyle{ \sum_{k = 0}^{n} a_k x^k - W_n (s) = \sum_{k = 0}^{n - 1} b_k x^{k + 1} + s \sum_{k = 0}^{n - 1} b_k x^k }[/math]

Porównując wyrazy o największym stopniu, łatwo zauważamy, że [math]\displaystyle{ a_n = b_{n - 1} }[/math]. Czyli współczynnik wiodący wielomianu [math]\displaystyle{ V_{n - 1} (x) }[/math] jest równy [math]\displaystyle{ a_n }[/math]. Co należało pokazać.


Definicja J8
Wielomian [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math], gdzie [math]\displaystyle{ a_0, \ldots, a_n \in \mathbb{Z} }[/math] oraz [math]\displaystyle{ a_n \neq 0 }[/math], będziemy nazywali wielomianem całkowitym stopnia [math]\displaystyle{ n }[/math].


Definicja J9
Powiemy, że wielomian całkowity [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math] jest stopnia [math]\displaystyle{ n }[/math] modulo [math]\displaystyle{ p }[/math], gdzie [math]\displaystyle{ p }[/math] jest liczbą pierwszą, jeżeli [math]\displaystyle{ p \nmid a_n }[/math]. Jeżeli każdy współczynnik [math]\displaystyle{ a_k }[/math], gdzie [math]\displaystyle{ k = 0, 1, \ldots, n }[/math], jest podzielny przez [math]\displaystyle{ p }[/math], to stopień wielomianu [math]\displaystyle{ W_n (x) }[/math] modulo [math]\displaystyle{ p }[/math] jest nieokreślony.


Twierdzenie J10
Niech [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math] będzie wielomianem całkowitym i [math]\displaystyle{ m \in \mathbb{Z}_+ }[/math]. Jeżeli prawdziwa jest kongruencja [math]\displaystyle{ x \equiv y \pmod{m} }[/math], to

[math]\displaystyle{ W_n (x) \equiv W_n (y) \pmod{m} }[/math]
Dowód

Dla [math]\displaystyle{ k \geqslant 1 }[/math] wyrażenie [math]\displaystyle{ x^k - y^k }[/math] jest podzielne przez [math]\displaystyle{ x - y }[/math], co łatwo pokazać stosując indukcję matematyczną lub zauważając, że

[math]\displaystyle{ x^k - y^k = (x - y) \sum_{j = 1}^{k} x^{k - j} y^{j - 1} }[/math]

Z założenia [math]\displaystyle{ m \, | \, (x - y) }[/math], zatem dla [math]\displaystyle{ k \geqslant 1 }[/math] mamy [math]\displaystyle{ m \, | \, (x^k - y^k) }[/math]. Wynika stąd, że prawdziwe są kongruencje

[math]\displaystyle{ \begin{align} a_0 & \equiv a_0 \;\;\:\, \pmod{m}\\ a_1 x & \equiv a_1 y \;\, \pmod{m}\\ a_2 x^2 & \equiv a_2 y^2 \pmod{m}\\ & \cdots \\ a_n x^n & \equiv a_n y^n \pmod{m} \end{align} }[/math]

Dodając wypisane kongruencje stronami, otrzymujemy

[math]\displaystyle{ W_n (x) \equiv W_n (y) \pmod{m} }[/math]

Co należało pokazać.


Uwaga J11
Niech [math]\displaystyle{ W(x) }[/math] będzie wielomianem całkowitym. Rozważmy kongruencję

[math]\displaystyle{ W(x) \equiv 0 \pmod{m n} \qquad \qquad \qquad (1) }[/math]

gdzie liczby [math]\displaystyle{ m }[/math] i [math]\displaystyle{ n }[/math] są względnie pierwsze.

Kongruencja ta jest równoważna układowi kongruencji

[math]\displaystyle{ \begin{align} W (x) &\equiv 0 \pmod{m}\\ W (x) &\equiv 0 \pmod{n} \end{align} \qquad \qquad \qquad \; (2) }[/math]

Zatem problem szukania rozwiązań kongruencji [math]\displaystyle{ (1) }[/math] możemy sprowadzić do szukania rozwiązań układu kongruencji [math]\displaystyle{ (2) }[/math]. W szczególności wynika stąd, że jeżeli któraś z kongruencji [math]\displaystyle{ (2) }[/math] nie ma rozwiązania, to kongruencja [math]\displaystyle{ W(x) \equiv 0 \pmod{m n} }[/math] również nie ma rozwiązania.

Załóżmy, że każda z kongruencji [math]\displaystyle{ (2) }[/math] ma przynajmniej jedno rozwiązanie i niech

  • [math]\displaystyle{ x \equiv a \pmod{m} }[/math] będzie pierwiastkiem kongruencji [math]\displaystyle{ W (x) \equiv 0 \pmod{m} }[/math]
  • [math]\displaystyle{ x \equiv b \pmod{n} }[/math] będzie pierwiastkiem kongruencji [math]\displaystyle{ W (x) \equiv 0 \pmod{n} }[/math]

Pierwiastki te tworzą układ kongruencji

[math]\displaystyle{ \begin{align} x &\equiv a \pmod{m} \\ x &\equiv b \pmod{n} \end{align} \qquad \qquad \qquad \qquad (3) }[/math]

Z chińskiego twierdzenia o resztach wiemy, że układ ten możemy zapisać w postaci równoważnej

[math]\displaystyle{ x \equiv c \pmod{m n} }[/math]

Zauważmy, że liczba [math]\displaystyle{ c }[/math] określona modulo [math]\displaystyle{ m n }[/math] jest rozwiązaniem kongruencji [math]\displaystyle{ (1) }[/math]. Istotnie z twierdzenia J10 mamy

[math]\displaystyle{ \begin{align} W (c) &\equiv W (a) \equiv 0 \pmod{m} \\ W (c) &\equiv W (b) \equiv 0 \pmod{n} \end{align} }[/math]

ale liczby [math]\displaystyle{ m, n }[/math] są względnie pierwsze, zatem otrzymujemy, że

[math]\displaystyle{ W (c) \equiv 0 \pmod{m n} }[/math]

Wynika stąd, że każdemu układowi rozwiązań [math]\displaystyle{ (3) }[/math] odpowiada dokładnie jedno rozwiązanie kongruencji [math]\displaystyle{ (1) }[/math].

Podsumujmy: jeżeli kongruencje

[math]\displaystyle{ \begin{align} W (x) &\equiv 0 \pmod{m}\\ W (x) &\equiv 0 \pmod{n} \end{align} }[/math]

mają odpowiednio [math]\displaystyle{ r }[/math] i [math]\displaystyle{ s }[/math] pierwiastków, to liczba różnych układów kongruencji [math]\displaystyle{ (3) }[/math] jest równa iloczynowi [math]\displaystyle{ r s }[/math] i istnieje [math]\displaystyle{ r s }[/math] różnych rozwiązań kongruencji

[math]\displaystyle{ W(x) \equiv 0 \pmod{m n} }[/math]



Twierdzenie Lagrange'a

Twierdzenie J12
Kongruencja

[math]\displaystyle{ a_1 x + a_0 \equiv 0 \pmod{p} }[/math]

gdzie [math]\displaystyle{ p \nmid a_1 }[/math], ma dokładnie jedno rozwiązanie modulo [math]\displaystyle{ p }[/math].

Dowód

A. Istnienie rozwiązania

Ponieważ rozpatrywaną kongruencję możemy zapisać w postaci [math]\displaystyle{ a_1 x + a_0 = k p }[/math], to istnienie liczb [math]\displaystyle{ x }[/math] i [math]\displaystyle{ k }[/math], dla których ta równość jest prawdziwa, wynika z twierdzenia C74. Poniżej przedstawimy jeszcze jeden sposób znalezienia rozwiązania.

Ponieważ [math]\displaystyle{ \gcd (a_1, p) = 1 }[/math], to istnieją takie liczby [math]\displaystyle{ r, s }[/math], że [math]\displaystyle{ a_1 r + p s = 1 }[/math] (zobacz C71 - lemat Bézouta). Zauważmy, że [math]\displaystyle{ p \nmid r }[/math], bo gdyby tak było, to liczba pierwsza [math]\displaystyle{ p }[/math] dzieliłaby wyrażenie [math]\displaystyle{ a_1 r + p s }[/math], ale jest to niemożliwe, bo [math]\displaystyle{ a_1 r + p s = 1 }[/math]. Czyli modulo [math]\displaystyle{ p }[/math] mamy

[math]\displaystyle{ a_1 r \equiv 1 \pmod{p} }[/math]

Mnożąc rozpatrywaną kongruencję przez [math]\displaystyle{ r }[/math], otrzymujemy

[math]\displaystyle{ a_1 r x + a_0 r \equiv 0 \pmod{p} }[/math]

Zatem

[math]\displaystyle{ x \equiv - a_0 r \pmod{p} }[/math]

B. Brak innych rozwiązań

Przypuśćmy, że istnieją dwa różne rozwiązania kongruencji

[math]\displaystyle{ a_1 x + a_0 \equiv 0 \pmod{p} }[/math]

Jeśli oznaczymy je przez [math]\displaystyle{ x_1 }[/math] i [math]\displaystyle{ x_2 }[/math], to otrzymamy

[math]\displaystyle{ a_1 x_1 + a_0 \equiv 0 \equiv a_1 x_2 + a_0 \pmod{p} }[/math]

Czyli

[math]\displaystyle{ a_1 x_1 \equiv a_1 x_2 \pmod{p} }[/math]
[math]\displaystyle{ p \, | \, a_1 (x_1 - x_2) }[/math]

Ponieważ [math]\displaystyle{ p \nmid a_1 }[/math], to z lematu Euklidesa (C72) otrzymujemy natychmiast [math]\displaystyle{ p \, | \, (x_1 - x_2) }[/math]. Skąd wynika, że [math]\displaystyle{ x_1 \equiv x_2 \pmod{p} }[/math], wbrew założeniu, że [math]\displaystyle{ x_1 }[/math] i [math]\displaystyle{ x_2 }[/math] są dwoma różnymi rozwiązaniami. Co kończy dowód.


Twierdzenie J13 (Joseph Louis Lagrange, 1768)
Jeżeli wielomian [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math] ma stopień [math]\displaystyle{ n }[/math] modulo [math]\displaystyle{ p }[/math], gdzie [math]\displaystyle{ n \geqslant 1 }[/math], to kongruencja

[math]\displaystyle{ W_n (x) \equiv 0 \pmod{p} }[/math]

ma co najwyżej [math]\displaystyle{ n }[/math] rozwiązań.

Dowód

Indukcja matematyczna. Z J12 wiemy, że dowodzone twierdzenie jest prawdziwe dla [math]\displaystyle{ n = 1 }[/math]. Załóżmy, że twierdzenie jest prawdziwe dla wszystkich liczb całkowitych dodatnich nie większych od [math]\displaystyle{ n - 1 }[/math]. Niech wielomian [math]\displaystyle{ W_n (x) }[/math] ma stopień [math]\displaystyle{ n }[/math] modulo [math]\displaystyle{ p }[/math]. Jeżeli kongruencja

[math]\displaystyle{ W_n (x) \equiv 0 \pmod{p} }[/math]

nie ma żadnego rozwiązania, to dowodzone twierdzenie jest prawdziwe dla [math]\displaystyle{ n }[/math]. Przypuśćmy teraz, że wypisana wyżej kongruencja ma przynajmniej jeden pierwiastek [math]\displaystyle{ x \equiv s \pmod{p} }[/math]. Korzystając z twierdzenia J7, możemy napisać

[math]\displaystyle{ W_n (x) - W_n (s) = (x - s) V_{n - 1} (x) }[/math]

gdzie wielomian [math]\displaystyle{ V_{n - 1} (x) }[/math] ma stopień [math]\displaystyle{ n - 1 }[/math] modulo [math]\displaystyle{ p }[/math], bo wielomiany [math]\displaystyle{ W_n (x) }[/math] oraz [math]\displaystyle{ V_{n - 1} (x) }[/math] mają jednakowe współczynniki wiodące.


Z założenia [math]\displaystyle{ x \equiv s \pmod{p} }[/math] jest jednym z pierwiastków kongruencji [math]\displaystyle{ W_n (x) \equiv 0 \pmod{p} }[/math], zatem modulo [math]\displaystyle{ p }[/math] otrzymujemy

[math]\displaystyle{ W_n (x) \equiv (x - s) V_{n - 1} (x) \pmod{p} }[/math]

Ponieważ [math]\displaystyle{ p }[/math] jest liczbą pierwszą, to z rozpatrywanej kongruencji

[math]\displaystyle{ W_n (x) \equiv 0 \pmod{p} }[/math]

wynika, że musi być (zobacz C72)

[math]\displaystyle{ x \equiv s \pmod{p} \qquad \qquad \text{lub} \qquad \qquad V_{n - 1} (x) \equiv 0 \pmod{p} }[/math]


Z założenia indukcyjnego kongruencja

[math]\displaystyle{ V_{n - 1} (x) \pmod{p} }[/math]

ma co najwyżej [math]\displaystyle{ n - 1 }[/math] rozwiązań, zatem kongruencja

[math]\displaystyle{ W_n (x) \equiv 0 \pmod{p} }[/math]

ma nie więcej niż [math]\displaystyle{ n }[/math] rozwiązań. Co należało pokazać.


Twierdzenie J14
Jeżeli kongruencja

[math]\displaystyle{ a_n x^n + a_{n - 1} x^{n - 1} + \ldots + a_1 x + a_0 \equiv 0 \pmod{p} }[/math]

ma więcej niż [math]\displaystyle{ n }[/math] rozwiązań, to wszystkie współczynniki [math]\displaystyle{ a_k }[/math], gdzie [math]\displaystyle{ k = 0, \ldots, n }[/math], muszą być podzielne przez [math]\displaystyle{ p }[/math].

Dowód

Niech [math]\displaystyle{ S \subset \{ 0, 1, \ldots, n \} }[/math] będzie zbiorem takim, że dla każdego [math]\displaystyle{ k \in S }[/math] jest [math]\displaystyle{ p \nmid a_k }[/math]. Przypuśćmy, że [math]\displaystyle{ S }[/math] jest zbiorem niepustym. Niech [math]\displaystyle{ j }[/math] oznacza największy element zbioru [math]\displaystyle{ S }[/math]. Jeżeli [math]\displaystyle{ j = 0 }[/math], to wielomian [math]\displaystyle{ W_n (x) = \sum_{k = 0}^{n} a_k x^k }[/math] jest stopnia [math]\displaystyle{ 0 }[/math] modulo [math]\displaystyle{ p }[/math] i

[math]\displaystyle{ a_0 \not\equiv 0 \pmod{p} }[/math]

Konsekwentnie, dla dowolnego [math]\displaystyle{ x \in \mathbb{Z} }[/math] jest

[math]\displaystyle{ a_n x^n + a_{n - 1} x^{n - 1} + \ldots + a_1 x + a_0 \not\equiv 0 \pmod{p} }[/math]

bo dla każdego [math]\displaystyle{ 1 \leqslant k \leqslant n }[/math] mamy [math]\displaystyle{ a_k \equiv 0 \pmod{p} }[/math]. Zatem rozpatrywana kongruencja nie ma ani jednego rozwiązania, czyli rozwiązań nie może być więcej niż [math]\displaystyle{ n }[/math].

W przypadku gdy [math]\displaystyle{ j \neq 0 }[/math], z twierdzenia Lagrange'a wynika, że rozpatrywana kongruencja ma nie więcej niż [math]\displaystyle{ j \leqslant n }[/math] rozwiązań, ponownie wbrew założeniu, że kongruencja ta ma więcej niż [math]\displaystyle{ n }[/math] rozwiązań. Uczynione przypuszczenie, że [math]\displaystyle{ S }[/math] jest zbiorem niepustym, okazało się fałszywe, zatem zbiór [math]\displaystyle{ S }[/math] musi być zbiorem pustym. Co należało pokazać.


Przykład J15
Z twierdzenia Lagrange'a wynika, że kongruencja

[math]\displaystyle{ x^p - x - 1 \equiv 0 \pmod{p} }[/math]

ma co najwyżej [math]\displaystyle{ p }[/math] rozwiązań. W rzeczywistości nie ma ani jednego rozwiązania, bo z twierdzenia Fermata wiemy, że dla dowolnej liczby pierwszej [math]\displaystyle{ p }[/math] jest

[math]\displaystyle{ x^p \equiv x \pmod{p} }[/math]


Przykład J16
Zauważmy, że w przypadku, gdy [math]\displaystyle{ n \geqslant p }[/math], możemy zawsze wielomian przekształcić do postaci takiej, że [math]\displaystyle{ n \lt p }[/math]. Niech [math]\displaystyle{ p = 5 }[/math] i

[math]\displaystyle{ W(x) = x^{15} + 11 x^{11} + 5 x^5 + 2 x^2 + x + 1 }[/math]

Ponieważ [math]\displaystyle{ x^5 \equiv x \pmod{5} }[/math], to

[math]\displaystyle{ W(x) \equiv x^3 + 11 x^3 + 5 x + 2 x^2 + x + 1 \equiv 12 x^3 + 2 x^2 + 6 x + 1 \pmod{5} }[/math]

Co wynika również z faktu, że [math]\displaystyle{ W(x) }[/math] można zapisać w postaci

[math]\displaystyle{ W(x) = x^{15} + 11 x^{11} + 5 x^5 + 2 x^2 + x + 1 = (x^5 - x) (x^{10} + 12 x^6 + 12 x^2 + 5) + 12 x^3 + 2 x^2 + 6 x + 1 }[/math]

ale [math]\displaystyle{ x^5 - x \equiv 0 \pmod{5} }[/math] na mocy twierdzenia Fermata.





Twierdzenie Wilsona

Twierdzenie J17 (John Wilson, 1770)
Liczba całkowita [math]\displaystyle{ p \geqslant 2 }[/math] jest liczbą pierwszą wtedy i tylko wtedy, gdy

[math]\displaystyle{ (p - 1) ! \equiv - 1 \pmod{p} }[/math]
Dowód

[math]\displaystyle{ \Longleftarrow }[/math]
Przypuśćmy, że prawdziwa jest kongruencja [math]\displaystyle{ (p - 1) ! \equiv - 1 \pmod{p} }[/math] oraz [math]\displaystyle{ p }[/math] jest liczbą złożoną. Zatem liczba [math]\displaystyle{ p }[/math] ma dzielnik [math]\displaystyle{ d }[/math] taki, że [math]\displaystyle{ 2 \leqslant d \leqslant p - 1 }[/math]. Ponieważ [math]\displaystyle{ d \, | \, p }[/math], to prawdziwa jest kongruencja

[math]\displaystyle{ (p - 1) ! \equiv - 1 \pmod{d} }[/math]

czyli

[math]\displaystyle{ 0 \equiv - 1 \pmod{d} }[/math]

co jest niemożliwe.

[math]\displaystyle{ \Longrightarrow }[/math]
Łatwo sprawdzamy, że twierdzenie jest prawdziwe dla [math]\displaystyle{ p = 2 }[/math]. Niech teraz [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą. Rozważmy wielomiany

[math]\displaystyle{ W(x) = (x - 1) (x - 2) \cdot \ldots \cdot (x - (p - 1)) }[/math]

oraz

[math]\displaystyle{ V(x) = x^{p - 1} - 1 }[/math]

Zauważmy, że

  • stopnie tych wielomianów są równe [math]\displaystyle{ p - 1 }[/math]
  • współczynniki wiodące są równe [math]\displaystyle{ 1 }[/math]
  • wyrazy wolne są równe odpowiednio [math]\displaystyle{ (p - 1) ! }[/math] oraz [math]\displaystyle{ - 1 }[/math]
  • wielomiany mają [math]\displaystyle{ p - 1 }[/math] rozwiązań modulo [math]\displaystyle{ p }[/math]

Niech

[math]\displaystyle{ U(x) = W (x) - V (x) }[/math]

Zauważmy, że

  • stopień wielomianu [math]\displaystyle{ U(x) }[/math] jest równy [math]\displaystyle{ p - 2 \geqslant 1 }[/math], ponieważ wyrazy o najwyższym stopniu uległy redukcji
  • wielomian [math]\displaystyle{ U(x) }[/math] ma [math]\displaystyle{ p - 1 }[/math] rozwiązań modulo [math]\displaystyle{ p }[/math], bo dla każdego [math]\displaystyle{ k \in \{ 1, 2, \ldots, p - 1 \} }[/math] mamy [math]\displaystyle{ U(k) = W (k) - V (k) \equiv 0 \pmod{p} }[/math]

Z twierdzenia Lagrange'a wiemy, że wielomian [math]\displaystyle{ U(x) }[/math] nie może mieć więcej niż [math]\displaystyle{ p - 2 }[/math] rozwiązań modulo [math]\displaystyle{ p }[/math]. Zatem z twierdzenia J14 wynika natychmiast, że liczba pierwsza [math]\displaystyle{ p }[/math] musi dzielić każdy współczynnik [math]\displaystyle{ a_k }[/math] wielomianu [math]\displaystyle{ U(x) }[/math] i w szczególności musi dzielić wyraz wolny, który jest równy [math]\displaystyle{ (p - 1) ! + 1 }[/math]. Co należało pokazać.



Twierdzenie Fermata

Twierdzenie J18 (Pierre de Fermat, 1640)
Niech [math]\displaystyle{ a \in \mathbb{Z} }[/math]. Jeżeli [math]\displaystyle{ p }[/math] jest liczbą pierwszą

  • to liczba [math]\displaystyle{ a^p - a }[/math] jest podzielna przez [math]\displaystyle{ p }[/math], czyli [math]\displaystyle{ a^p \equiv a \pmod p }[/math]
  • i jeśli dodatkowo [math]\displaystyle{ p \nmid a }[/math], to liczba [math]\displaystyle{ a^{p - 1} - 1 }[/math] jest podzielna przez [math]\displaystyle{ p }[/math], czyli [math]\displaystyle{ a^{p - 1} \equiv 1 \pmod p }[/math]
Dowód

Punkt 1.

Zauważmy, że
a) twierdzenie jest prawdziwe dla [math]\displaystyle{ a = 0 }[/math]
b) w przypadku, gdy [math]\displaystyle{ p = 2 }[/math] wyrażenie [math]\displaystyle{ a^p - a = a^2 - a = a (a - 1) }[/math] jest podzielne przez [math]\displaystyle{ 2 }[/math], bo jedna z liczb [math]\displaystyle{ a - 1 }[/math] i [math]\displaystyle{ a }[/math] jest liczbą parzystą
c) w przypadku, gdy [math]\displaystyle{ p }[/math] jest liczbą pierwszą nieparzystą i twierdzenie jest prawdziwe dla [math]\displaystyle{ a \geqslant 1 }[/math], to jest też prawdziwe dla [math]\displaystyle{ - a }[/math], bo

[math]\displaystyle{ (- a)^p - (- a) = (- 1)^p a^p + a = - a^p + a = - (a^p - a) }[/math]


Zatem wystarczy pokazać, że dla ustalonej liczby pierwszej nieparzystej [math]\displaystyle{ p }[/math] twierdzenie jest prawdziwe dla każdego [math]\displaystyle{ a \in \mathbb{Z}_+ }[/math].

Indukcja matematyczna. Dla [math]\displaystyle{ a = 1 }[/math] mamy [math]\displaystyle{ 1^p - 1 = 0 }[/math] zatem liczba pierwsza [math]\displaystyle{ p }[/math] jest dzielnikiem rozważanego wyrażenia. Zakładając, że twierdzenie jest prawdziwe dla [math]\displaystyle{ a }[/math], czyli [math]\displaystyle{ p|a^p - a }[/math], otrzymujmy dla [math]\displaystyle{ a + 1 }[/math]

[math]\displaystyle{ (a + 1)^p - (a + 1) = \sum_{k = 0}^{p} \binom{p}{k} \cdot a^k - a - 1 }[/math]
[math]\displaystyle{ \;\;\,\, = 1 + \sum_{k = 1}^{p - 1} \binom{p}{k} \cdot a^k + a^p - a - 1 }[/math]
[math]\displaystyle{ \;\;\,\, = a^p - a + \sum^{p - 1}_{k = 1} \binom{p}{k} \cdot a^k }[/math]


Z założenia indukcyjnego [math]\displaystyle{ p|a^p - a }[/math], zaś [math]\displaystyle{ \binom{p}{k} = {\small\frac{p!}{k! \cdot (p - k) !}} }[/math] dla [math]\displaystyle{ k = 1, 2, \ldots, p - 1 }[/math] jest podzielne przez [math]\displaystyle{ p }[/math] (ponieważ [math]\displaystyle{ p }[/math] dzieli licznik, ale nie dzieli mianownika). Zatem [math]\displaystyle{ (a + 1)^p - (a + 1) }[/math] jest podzielne przez liczbę pierwszą [math]\displaystyle{ p }[/math].

Punkt 2.

Z punktu 1. wiemy, że liczba pierwsza [math]\displaystyle{ p }[/math] dzieli [math]\displaystyle{ a^p - a = a (a^{p - 1} - 1) }[/math]. Jeżeli [math]\displaystyle{ p \nmid a }[/math], to z lematu Euklidesa (zobacz twierdzenie C72) wynika natychmiast, że [math]\displaystyle{ p }[/math] dzieli [math]\displaystyle{ a^{p - 1} - 1 }[/math].



Kryterium Eulera

Definicja J19
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą i [math]\displaystyle{ a \in \mathbb{Z} }[/math]. Powiemy, że liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math], jeżeli kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math]

ma rozwiązanie, czyli istnieje taka liczba [math]\displaystyle{ k \in \mathbb{Z} }[/math], że [math]\displaystyle{ p \, | \, (k^2 - a) }[/math].

Powiemy, że liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ p }[/math], jeżeli kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math]

nie ma rozwiązania.


Twierdzenie J20
Jeżeli [math]\displaystyle{ p }[/math] jest liczbą pierwszą nieparzystą, to wśród liczb [math]\displaystyle{ 1, 2, \ldots, p - 1 }[/math] istnieje dokładnie [math]\displaystyle{ {\small\frac{p - 1}{2}} }[/math] liczb kwadratowych modulo [math]\displaystyle{ p }[/math] i tyle samo liczb niekwadratowych modulo [math]\displaystyle{ p }[/math].

Dowód

Zauważmy, że w rozważanym zbiorze liczb [math]\displaystyle{ \{ 1, 2, \ldots, p - 1 \} }[/math], kwadraty liczb [math]\displaystyle{ k }[/math] i [math]\displaystyle{ p - k }[/math] są takimi samymi liczbami modulo [math]\displaystyle{ p }[/math], co wynika z oczywistej kongruencji

[math]\displaystyle{ k^2 \equiv (p - k)^2 \pmod{p} }[/math]

Pozwala to wypisać pary liczb, których kwadraty są identyczne modulo [math]\displaystyle{ p }[/math]

[math]\displaystyle{ (1, p - 1), (2, p - 2), \ldots, \left( {\small\frac{p - 1}{2}}, p - {\small\frac{p - 1}{2}} \right) }[/math]

Ponieważ

[math]\displaystyle{ p - {\small\frac{p - 1}{2}} = {\small\frac{p + 1}{2}} = {\small\frac{p - 1}{2}} + 1 }[/math]

to wypisane pary wyczerpują cały zbiór [math]\displaystyle{ \{ 1, 2, \ldots, p - 1 \} }[/math]. Co więcej, liczby [math]\displaystyle{ 1^2, 2^2, \ldots, \left( {\small\frac{p - 1}{2}} \right)^2 }[/math] są wszystkie różne modulo [math]\displaystyle{ p }[/math]. Istotnie, przypuśćmy, że [math]\displaystyle{ 1 \leqslant i, j \leqslant {\small\frac{p - 1}{2}} }[/math] oraz [math]\displaystyle{ i \neq j }[/math], a jednocześnie [math]\displaystyle{ i^2 \equiv j^2 \pmod{p} }[/math]. Gdyby tak było, to mielibyśmy

[math]\displaystyle{ (i - j) (i + j) \equiv 0 \pmod{p} }[/math]

Łatwo zauważamy, że jest to niemożliwe, bo żaden z czynników nie jest podzielny przez [math]\displaystyle{ p }[/math], co wynika z prostych oszacowań

[math]\displaystyle{ 1 \leqslant | i - j | \leqslant i + j \lt p - 1 }[/math]
[math]\displaystyle{ 2 \lt i + j \lt p - 1 }[/math]


Ponieważ (z definicji) liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math], jeżeli kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math]

ma rozwiązanie, to liczba kwadratowa modulo [math]\displaystyle{ p }[/math] musi przystawać do pewnego kwadratu modulo [math]\displaystyle{ p }[/math].

Wynika stąd, że różnych liczb kwadratowych modulo [math]\displaystyle{ p }[/math] jest tyle samo, co kwadratów [math]\displaystyle{ 1^2, 2^2, \ldots, \left( {\small\frac{p - 1}{2}} \right)^2 }[/math]. Czyli jest ich dokładnie [math]\displaystyle{ {\small\frac{p - 1}{2}} }[/math]. Pozostałe liczby w zbiorze [math]\displaystyle{ \{ 1, 2, \ldots, p - 1 \} }[/math] to liczby niekwadratowe modulo [math]\displaystyle{ p }[/math] i jest ich również [math]\displaystyle{ {\small\frac{p - 1}{2}} }[/math]. Co należało pokazać.


Twierdzenie J21 (kryterium Eulera, 1748)
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą i [math]\displaystyle{ p \nmid a }[/math]. Modulo [math]\displaystyle{ p }[/math] mamy

●    liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ a^{(p - 1) / 2} \equiv 1 \pmod{p} }[/math]
●    liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ a^{(p - 1) / 2} \equiv - 1 \pmod{p} }[/math]
Dowód

Punkt 1.

Niech [math]\displaystyle{ Q \subset \{ 1, 2, \ldots, p - 1 \} }[/math] będzie zbiorem wszystkich liczb kwadratowych modulo [math]\displaystyle{ p }[/math], a [math]\displaystyle{ S \subset \{ 1, 2, \ldots, p - 1 \} }[/math] będzie zbiorem wszystkich rozwiązań kongruencji

[math]\displaystyle{ x^{(p - 1) / 2} \equiv 1 \pmod{p} }[/math]

Zauważmy, że

   A       [math]\displaystyle{ | Q | = {\small\frac{p - 1}{2}} }[/math]    zobacz J20
   B       [math]\displaystyle{ | S | \leqslant {\small\frac{p - 1}{2}} }[/math]    zobacz twierdzenie Lagrange'a J13
   C       jeżeli [math]\displaystyle{ a \in Q }[/math], to [math]\displaystyle{ a \in S \qquad }[/math]    wynika z ciągu implikacji:
         [math]\displaystyle{ a \in Q \qquad \Longrightarrow \qquad a \equiv k^2 \pmod{p} }[/math]
         [math]\displaystyle{ a \equiv k^2 \pmod{p} \qquad \Longrightarrow \qquad a^{(p - 1) / 2} \equiv (k^2)^{(p - 1) / 2} \equiv k^{p - 1} \equiv 1 \pmod{p} }[/math]   
         [math]\displaystyle{ a^{(p - 1) / 2} \equiv 1 \pmod{p} \qquad \Longrightarrow \qquad a \in S }[/math]
   D       [math]\displaystyle{ Q \subseteq S }[/math]    z punktu C wynika, że każdy element zbioru [math]\displaystyle{ Q }[/math] należy do zbioru [math]\displaystyle{ S }[/math]


Łącząc rezultaty z tabeli, otrzymujemy

[math]\displaystyle{ {\small\frac{p - 1}{2}} = | Q | \leqslant | S | \leqslant {\small\frac{p - 1}{2}} }[/math]

Skąd łatwo widzimy, że

[math]\displaystyle{ | Q | = | S | = {\small\frac{p - 1}{2}} }[/math]

Ponieważ [math]\displaystyle{ Q \subseteq S }[/math], a zbiory [math]\displaystyle{ Q }[/math] i [math]\displaystyle{ S }[/math] są równoliczne, to zbiory te są równe (zobacz J22). Prostą konsekwencją równości zbiorów [math]\displaystyle{ Q }[/math] i [math]\displaystyle{ S }[/math] jest stwierdzenie

   liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ a^{(p - 1) / 2} \equiv 1 \pmod{p} }[/math]   

Co kończy dowód punktu pierwszego.

Punkt 2.

Z udowodnionego już punktu pierwszego wynika[3], że

   liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ a^{(p - 1) / 2} \not\equiv 1 \pmod{p} }[/math]   

Z twierdzenia Fermata

[math]\displaystyle{ a^{p - 1} - 1 = (a^{(p - 1) / 2} - 1) \cdot (a^{(p - 1) / 2} + 1) \equiv 0 \pmod{p} }[/math]

wynika natychmiast, że jeżeli [math]\displaystyle{ a^{(p - 1) / 2} - 1 \not\equiv 0 \pmod{p} }[/math], to musi być

[math]\displaystyle{ a^{(p - 1) / 2} + 1 \equiv 0 \pmod{p} }[/math]

Fakt ten pozwala sformułować uzyskaną równoważność bardziej precyzyjnie

   liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ a^{(p - 1) / 2} \equiv - 1 \pmod{p} }[/math]   

Co należało pokazać.


Zadanie J22
Niech [math]\displaystyle{ A }[/math] i [math]\displaystyle{ B }[/math] będą zbiorami skończonymi. Pokazać, że jeżeli [math]\displaystyle{ A \subseteq B \;\; \text{i} \;\; | A | = | B | }[/math], to [math]\displaystyle{ \; A = B }[/math].

Rozwiązanie

Ponieważ zbiór [math]\displaystyle{ A }[/math] jest podzbiorem zbioru [math]\displaystyle{ B }[/math], to zbiór [math]\displaystyle{ B }[/math] można przedstawić w postaci sumy zbiorów [math]\displaystyle{ A }[/math] i [math]\displaystyle{ C }[/math] takich, że żaden element zbioru [math]\displaystyle{ C }[/math] nie jest elementem zbioru [math]\displaystyle{ A }[/math]. Zatem

[math]\displaystyle{ B = A \cup C \qquad \text{i} \qquad A \cap C = \varnothing }[/math]

Ponieważ z założenia zbiory [math]\displaystyle{ A }[/math] i [math]\displaystyle{ C }[/math] są rozłączne, to wiemy, że

[math]\displaystyle{ | A \cup C | = | A | + | C | }[/math]

Czyli

[math]\displaystyle{ | B | = | A \cup C | = | A | + | C | }[/math]

Skąd wynika, że [math]\displaystyle{ | C | = 0 }[/math], zatem zbiór [math]\displaystyle{ C }[/math] jest zbiorem pustym i otrzymujemy natychmiast [math]\displaystyle{ B = A }[/math]. Co należało pokazać.


Uwaga (przypadek zbiorów skończonych)
Najczęściej prawdziwe jest jedynie oszacowanie [math]\displaystyle{ | A \cup C | \leqslant | A | + | C | }[/math], bo niektóre elementy mogą zostać policzone dwa razy. Elementy liczone dwukrotnie to te, które należą do iloczynu zbiorów [math]\displaystyle{ | A | }[/math] i [math]\displaystyle{ | C | }[/math], zatem od sumy [math]\displaystyle{ | A | + | C | }[/math] musimy odjąć liczbę elementów iloczynu zbiorów [math]\displaystyle{ | A | }[/math] i [math]\displaystyle{ | C | }[/math]. Co daje ogólny wzór[4]

[math]\displaystyle{ | A \cup C | = | A | + | C | - | A \cap C | }[/math]






Symbol Legendre'a

Definicja J23
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą i [math]\displaystyle{ a \in \mathbb{Z} }[/math]. Symbolem Legendre'a[5] nazywamy funkcję [math]\displaystyle{ a }[/math] i [math]\displaystyle{ p }[/math] zdefiniowaną następująco

[math]\displaystyle{ \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} = \begin{cases} \;\;\: 1 & \text{gdy } \, a \, \text{ jest liczbą kwadratową modulo } \, p \, \text{ oraz } \, p \nmid a \\ - 1 & \text{gdy } \, a \, \text{ jest liczbą niekwadratową modulo } \, p \\ \;\;\: 0 & \text{gdy } \, p \, | \, a \end{cases} }[/math]


Uwaga J24
Powyższa definicja pozwala nam zapisać kryterium Eulera w zwartej formie, która obejmuje również przypadek, gdy [math]\displaystyle{ p \, | \, a }[/math]

[math]\displaystyle{ a^{(p - 1) / 2} \equiv \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} \pmod{p} }[/math]


Twierdzenie J25*
Niech [math]\displaystyle{ a, b \in \mathbb{Z} }[/math] oraz [math]\displaystyle{ p, q }[/math] będą nieparzystymi liczbami pierwszymi. Symbol Legendre'a ma następujące właściwości





Symbol Jacobiego

Definicja J26
Niech liczby [math]\displaystyle{ a \in \mathbb{Z} }[/math] i [math]\displaystyle{ m \in \mathbb{Z}_+ }[/math] będą względnie pierwsze. Powiemy, że liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ m }[/math], jeżeli kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{m} }[/math]

ma rozwiązanie, czyli istnieje taka liczba [math]\displaystyle{ k \in \mathbb{Z} }[/math], że [math]\displaystyle{ m \, | \, (k^2 - a) }[/math].

Powiemy, że liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ m }[/math], jeżeli kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{m} }[/math]

nie ma rozwiązania.


Uwaga J27
Ponieważ często można spotkać definicję liczb kwadratowych i niekwadratowych modulo [math]\displaystyle{ m }[/math], w której warunek [math]\displaystyle{ \gcd (a, m) = 1 }[/math] zostaje pominięty, to Czytelnik powinien zawsze upewnić się, jaka definicja jest stosowana. Najczęściej w takim przypadku liczba [math]\displaystyle{ 0 }[/math] nie jest uznawana za liczbę kwadratową modulo [math]\displaystyle{ m }[/math].

Przykładowo:

[math]\displaystyle{ \left\{ 0^2, 1^2, 2^2, 3^2, 4^2, 5^2, 6^2, 7^2, 8^2, 9^2 \right\} \equiv \left\{ 0, 1, 4, 9, 6, 5, 6, 9, 4, 1 \right\} \pmod{10} }[/math]

Liczby kwadratowe modulo [math]\displaystyle{ 10 }[/math] to [math]\displaystyle{ \left\{ 1, 9 \right\} }[/math], a niekwadratowe to [math]\displaystyle{ \left\{ 3, 7 \right\} }[/math]. Liczby [math]\displaystyle{ \left\{ 0, 2, 4, 5, 6, 8 \right\} }[/math] nie są ani liczbami kwadratowymi, ani liczbami niekwadratowymi modulo [math]\displaystyle{ 10 }[/math].

Jeśli odrzucimy warunek [math]\displaystyle{ \gcd (a, m) = 1 }[/math], to liczbami kwadratowymi modulo [math]\displaystyle{ 10 }[/math] będą [math]\displaystyle{ \left\{ 0, 1, 4, 5, 6, 9 \right\} }[/math], a niekwadratowymi [math]\displaystyle{ \left\{ 2, 3, 7, 8 \right\} }[/math].

Inny przykład. Niech [math]\displaystyle{ m = 210 = 2 \cdot 3 \cdot 5 \cdot 7 }[/math]. W zależności od przyjętej definicji najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ m }[/math] będzie albo [math]\displaystyle{ 11 }[/math], albo [math]\displaystyle{ 2 }[/math].


Zadanie J28
Niech liczby [math]\displaystyle{ m, n \in \mathbb{Z}_+ }[/math] i [math]\displaystyle{ \gcd (m, n) = 1 }[/math]. Pokazać, że liczba [math]\displaystyle{ a \in \mathbb{Z} }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ m n }[/math] wtedy i tylko wtedy, gdy jest liczbą kwadratową modulo [math]\displaystyle{ m }[/math] i modulo [math]\displaystyle{ n }[/math].

Rozwiązanie

Niech [math]\displaystyle{ W(x) = x^2 - a }[/math]. Zauważmy, że liczba [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ m }[/math] wtedy i tylko wtedy, gdy kongruencja [math]\displaystyle{ W(x) \equiv 0 \pmod{m} }[/math] ma rozwiązanie. Dalsza analiza problemu przebiega dokładnie tak, jak to zostało przedstawione w uwadze J11.


Definicja J29
Symbol Jacobiego[6] [math]\displaystyle{ \left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} }[/math] jest uogólnieniem symbolu Legendre'a [math]\displaystyle{ \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} }[/math] dla dodatnich liczb nieparzystych. Niech [math]\displaystyle{ n = \prod_i p_i^{\alpha_i} }[/math] będzie rozkładem liczby [math]\displaystyle{ n }[/math] na czynniki pierwsze, wtedy

[math]\displaystyle{ \left( {\small\frac{a}{n}} \right)_{\small{\!\! J}} = \prod_i \left( {\small\frac{a}{p_i}} \right)_{\small{\!\! L}}^{\!\! \alpha_i} }[/math]


Uwaga J30
Zauważmy, że w przypadku gdy [math]\displaystyle{ n = 1 }[/math], po prawej stronie mamy „pusty” iloczyn (bez jakiegokolwiek czynnika). Podobnie jak „pustej” sumie przypisujemy wartość zero, tak „pustemu” iloczynowi przypisujemy wartość jeden. Zatem dla dowolnego [math]\displaystyle{ a \in \mathbb{Z} }[/math] jest [math]\displaystyle{ \left( {\small\frac{a}{1}} \right)_{\small{\!\! J}} = 1 }[/math].


Twierdzenie J31*
Niech [math]\displaystyle{ a, b \in \mathbb{Z} }[/math] oraz [math]\displaystyle{ m, n \in \mathbb{Z}_+ }[/math] i [math]\displaystyle{ m, n }[/math] będą liczbami nieparzystymi. Symbol Jacobiego ma następujące właściwości


Uwaga J32
Zauważmy, że poza zmienionym założeniem tabela z powyższego twierdzenia i tabela z twierdzenia J25 różnią się jedynie punktem czwartym. Oczywiście jest to tylko podobieństwo formalne – symbol Legendre'a i symbol Jacobiego są różnymi funkcjami.


Uwaga J33
Zauważmy, że w przypadku, gdy [math]\displaystyle{ m }[/math] jest liczbą nieparzystą

  • jeżeli [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1 }[/math], to [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ m }[/math]
  • jeżeli [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ m }[/math], to nie musi być [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1 }[/math]
  • jeżeli [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = + 1 }[/math], to [math]\displaystyle{ a }[/math] nie musi być liczbą kwadratową modulo [math]\displaystyle{ m }[/math]
  • jeżeli [math]\displaystyle{ a }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ m }[/math], to jest [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = + 1 }[/math]

Przykład: jeżeli [math]\displaystyle{ \gcd (a, m) = 1 }[/math], to [math]\displaystyle{ \left( {\small\frac{a}{m^2}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}}^2 = + 1 }[/math], ale [math]\displaystyle{ a }[/math] może być liczbą niekwadratową modulo [math]\displaystyle{ m^2 }[/math].

Modulo [math]\displaystyle{ 9 }[/math] liczbami niekwadratowymi są: [math]\displaystyle{ 2, 5, 8 }[/math]. Modulo [math]\displaystyle{ 25 }[/math] liczbami niekwadratowymi są: [math]\displaystyle{ 2, 3, 7, 8, 12, 13, 17, 18, 22, 23 }[/math].


Uwaga J34
Wszystkie liczby kwadratowe i niekwadratowe modulo [math]\displaystyle{ m }[/math] można łatwo znaleźć, wykorzystując prosty program:

Pokaż kod
QRandQNR(m) = 
{
local(k, S, V);
S = [];
V = [];
for(k = 1,  m - 1, if( gcd(k, m) > 1, next() ); S = concat(S, k));
S = Set(S); \\ zbiór liczb względnie pierwszych z m
for(k = 1,  m - 1, if( gcd(k, m) > 1, next() ); V = concat(V, k^2 % m));
V = Set(V); \\ zbiór liczb kwadratowych modulo m
print("QR: ", V);
print("QNR: ", setminus(S, V)); \\ różnica zbiorów S i V
}



Zadanie J35
Pokazać, że

[math]\displaystyle{ \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 12}{m}} \right)_{\small{\!\! J}} = \begin{cases} \;\;\: 1 & \text{gdy } m = 6 k + 1 \\ \;\;\: 0 & \text{gdy } m = 6 k + 3 \\ - 1 & \text{gdy } m = 6 k + 5 \end{cases} }[/math]
Rozwiązanie

Zauważmy, że

[math]\displaystyle{ \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 1}{m}} \right)_{\small{\!\! J}} \cdot \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = (- 1)^{\tfrac{m - 1}{2}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} \cdot \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = (- 1)^{m - 1} \cdot \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} }[/math]

bo [math]\displaystyle{ m }[/math] jest liczbą nieparzystą.

Rozważmy liczby nieparzyste [math]\displaystyle{ m }[/math] postaci [math]\displaystyle{ 6 k + r }[/math], gdzie [math]\displaystyle{ r = 1, 3, 5 }[/math]. Mamy

[math]\displaystyle{ \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{6 k + r}{3}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{r}{3}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \begin{cases} \;\;\: 1 & \text{gdy } r = 1 \\ \;\;\: 0 & \text{gdy } r = 3 \\ - 1 & \text{gdy } r = 5 \end{cases} }[/math]

bo odpowiednio dla [math]\displaystyle{ r = 1, 3, 5 }[/math] jest

[math]\displaystyle{ \left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} = 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{3}{3}} \right)_{\small{\!\! J}} = 0 }[/math]
[math]\displaystyle{ \left( {\small\frac{5}{3}} \right)_{\small{\!\! J}} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{9 - 1}{8}} = - 1 }[/math]

Łatwo zauważamy, że

[math]\displaystyle{ \left( {\small\frac{- 12}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 3 \cdot 2^2}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} \cdot \left( {\small\frac{2}{m}} \right)_{\small{\!\! J}}^{\! 2} = \left( {\small\frac{- 3}{m}} \right)_{\small{\!\! J}} }[/math]

Co należało pokazać.


Zadanie J36
Pokazać, że

[math]\displaystyle{ \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \begin{cases} \;\;\: 1 & \text{gdy } m = 12 k \pm 1 \\ \;\;\: 0 & \text{gdy } m = 12 k \pm 3 \\ - 1 & \text{gdy } m = 12 k \pm 5 \end{cases} }[/math]


[math]\displaystyle{ \left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} = \begin{cases} \;\;\: 1 & \text{gdy } m = 10 k \pm 1 \\ \;\;\: 0 & \text{gdy } m = 10 k + 5 \\ - 1 & \text{gdy } m = 10 k \pm 3 \end{cases} }[/math]
Rozwiązanie

Punkt 1.

[math]\displaystyle{ \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k}{2}} = \left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{6 k} = 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 5}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 4}{2}} = \left( {\small\frac{5}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 2)} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} = - 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 7}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 6}{2}} = \left( {\small\frac{1}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 3)} = - 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{3}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{3 - 1}{2}} = \left( {\small\frac{12 k + 11}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{12 k + 10}{2}} = \left( {\small\frac{2}{3}} \right)_{\small{\!\! J}} \cdot (- 1)^{(6 k + 5)} = (- 1) \cdot (- 1) = 1 }[/math]

Punkt 2.

Zauważmy, że

[math]\displaystyle{ \left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}} \cdot (- 1)^{\tfrac{m - 1}{2} \cdot \tfrac{5 - 1}{2}} }[/math]
[math]\displaystyle{ \; = (- 1)^{m - 1} \cdot \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}} }[/math]

bo [math]\displaystyle{ m }[/math] jest liczbą nieparzystą.

Rozważmy liczby nieparzyste [math]\displaystyle{ m }[/math] postaci [math]\displaystyle{ 10 k + r }[/math], gdzie [math]\displaystyle{ r = 1, 3, 5, 7, 9 }[/math]. Mamy

[math]\displaystyle{ \left( {\small\frac{5}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{m}{5}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{10 k + r}{5}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \left( {\small\frac{r}{5}} \right)_{\small{\!\! J}} }[/math]
[math]\displaystyle{ \; = \begin{cases} \;\;\: 1 & \text{gdy } r = 1 \\ - 1 & \text{gdy } r = 3 \\ \;\;\: 0 & \text{gdy } r = 5 \\ - 1 & \text{gdy } r = 7 \\ \;\;\: 1 & \text{gdy } r = 9 \end{cases} }[/math]

bo odpowiednio dla [math]\displaystyle{ r = 1, 3, 5, 7, 9 }[/math] jest

[math]\displaystyle{ \left( {\small\frac{1}{5}} \right)_{\small{\!\! J}} = 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{3}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{-2}{5}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{(5 - 1)(5 - 3)}{8}} = -1 }[/math]
[math]\displaystyle{ \left( {\small\frac{5}{5}} \right)_{\small{\!\! J}} = 0 }[/math]
[math]\displaystyle{ \left( {\small\frac{7}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{2}{5}} \right)_{\small{\!\! J}} = (- 1)^{\tfrac{25 - 1}{8}} = - 1 }[/math]
[math]\displaystyle{ \left( {\small\frac{9}{5}} \right)_{\small{\!\! J}} = \left( {\small\frac{3}{5}} \right)_{\small{\!\! J}}^{\! 2} = 1 }[/math]

Co należało pokazać.


Uwaga J37
Wykorzystując podane w twierdzeniu J31 właściwości symbolu Jacobiego, możemy napisać prostą funkcję w PARI/GP znajdującą jego wartość. Zauważmy, że nie potrzebujemy znać rozkładu liczby [math]\displaystyle{ n }[/math] na czynniki pierwsze.

jacobi(a, n) = 
{
local(r, w);
if( n <= 0 || n % 2 == 0, return("Error") );
a = a % n; \\ korzystamy ze wzoru (a|n) = (b|n), gdy a ≡ b (mod n)
w = 1;
while( a <> 0,
       while( a % 2 == 0, a = a/2; r = n % 8; if( r == 3 || r == 5, w = -w ) );
       \\ usunęliśmy czynnik 2 ze zmiennej a, uwzględniając, że (2|n) = -1, gdy n ≡ 3,5 (mod 8)
       \\ teraz zmienne a oraz n są nieparzyste
       r = a; \\ zmienna r tylko przechowuje wartość a
       a = n;
       n = r;
       if( a % 4 == 3 && n % 4 == 3, w = -w );
       \\ zamieniliśmy zmienne, uwzględniając, że (a|n) = - (n|a), gdy a ≡ n ≡ 3 (mod 4)
       a = a % n;
     );
if( n == 1, return(w), return(0) ); \\ n jest teraz równe gcd(a, n)
}


Uwaga J38
Jeżeli [math]\displaystyle{ m }[/math] jest liczbą pierwszą, to symbol Jacobiego jest symbolem Legendre'a, czyli [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! L}} }[/math]. Jeżeli [math]\displaystyle{ m }[/math] jest liczbą złożoną, to symbol Legendre'a [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! L}} }[/math] nie istnieje, a symbol Jacobiego [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} }[/math] dostarcza jedynie ograniczonych informacji.

W przyszłości symbol Legendre'a / Jacobiego będziemy zapisywali w formie uproszczonej [math]\displaystyle{ (a \, | \, m) }[/math] i nie będziemy rozróżniali tych symboli. Interpretacja zapisu jest prosta:

  • jeżeli wiemy, że [math]\displaystyle{ m }[/math] jest liczbą pierwszą, to symbol [math]\displaystyle{ (a \, | \, m) }[/math] jest symbolem Legendre'a
  • jeżeli wiemy, że [math]\displaystyle{ m }[/math] jest liczbą złożoną, to symbol [math]\displaystyle{ (a \, | \, m) }[/math] jest symbolem Jacobiego
  • jeżeli nie wiemy, czy [math]\displaystyle{ m }[/math] jest liczbą pierwszą, czy złożoną, to symbol [math]\displaystyle{ (a \, | \, m) }[/math] jest symbolem Jacobiego



Rozwiązywanie kongruencji [math]\displaystyle{ x^2 \equiv a \pmod{m} }[/math]

Twierdzenie J39
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą, zaś [math]\displaystyle{ a }[/math] liczbą całkowitą taką, że [math]\displaystyle{ \gcd (a, p) = 1 }[/math]. Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p^n} }[/math]

ma rozwiązanie wtedy i tylko wtedy, gdy kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math]

ma rozwiązanie.

Dowód

[math]\displaystyle{ \Large{\Longrightarrow} }[/math]

Z założenia kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{p^n} }[/math] ma rozwiązanie. Zatem istnieje taka liczba [math]\displaystyle{ r \in \mathbb{Z} }[/math], że

[math]\displaystyle{ r^2 \equiv a \pmod{p^n} }[/math]

Ponieważ [math]\displaystyle{ p^n \, | \, (r^2 - a) }[/math], to tym bardziej [math]\displaystyle{ p \, | \, (r^2 - a) }[/math], co oznacza, że prawdziwa jest kongruencja

[math]\displaystyle{ r^2 \equiv a \pmod{p} }[/math]

Skąd wynika natychmiast, że kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math] ma rozwiązanie.

[math]\displaystyle{ \Large{\Longleftarrow} }[/math]

Indukcja matematyczna. Z uczynionego w twierdzeniu założenia wiemy, że kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{p} }[/math] ma rozwiązanie. Zatem twierdzenie jest prawdziwe dla [math]\displaystyle{ n = 1 }[/math]. Załóżmy teraz (założenie indukcyjne), że kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p^n} }[/math]

ma rozwiązanie [math]\displaystyle{ x \equiv u_n \pmod{p^n} }[/math] i pokażmy, że twierdzenie jest prawdziwe dla [math]\displaystyle{ n + 1 }[/math], czyli że rozwiązanie ma kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{p^{n + 1}} }[/math]

Wiemy, że liczba [math]\displaystyle{ u_n }[/math] jest określona modulo [math]\displaystyle{ p^n }[/math]. Nie tracąc ogólności, możemy założyć, że [math]\displaystyle{ 1 \leqslant u_n \lt p^n }[/math]. Wartość [math]\displaystyle{ u_n }[/math] może zostać wybrana dowolnie (modulo [math]\displaystyle{ p^n }[/math]), ale musi zostać ustalona — wymaga tego precyzja i czytelność dowodu. Zatem

[math]\displaystyle{ u^2_n - a = k p^n }[/math]

Zauważmy, że liczba [math]\displaystyle{ k }[/math] jest jednoznacznie określona, bo wartość [math]\displaystyle{ u_n }[/math] została ustalona. Ponieważ [math]\displaystyle{ \gcd (2 u_n, p) = 1 }[/math], to równanie

[math]\displaystyle{ 2 u_n \cdot s - p \cdot l = - k }[/math]

ma rozwiązanie (zobacz C74). Niech liczby [math]\displaystyle{ s_0 }[/math] i [math]\displaystyle{ l_0 }[/math] będą rozwiązaniem tego równania. Zatem

[math]\displaystyle{ 2 u_n \cdot s_0 - p \cdot l_0 = - k }[/math]
[math]\displaystyle{ 2 u_n \cdot s_0 p^n - l_0 \cdot p^{n + 1} = - k p^n }[/math]
[math]\displaystyle{ 2 u_n \cdot s_0 p^n - l_0 \cdot p^{n + 1} = - ( u^2_n - a ) }[/math]
[math]\displaystyle{ u^2_n + 2 u_n \cdot s_0 p^n = a + l_0 \cdot p^{n + 1} }[/math]

Modulo [math]\displaystyle{ p^{n + 1} }[/math] dostajemy

[math]\displaystyle{ u^2_n + 2 u_n \cdot s_0 p^n \equiv a \pmod{p^{n + 1}} }[/math]
[math]\displaystyle{ (u_n + s_0 p^n)^2 \equiv a \pmod{p^{n + 1}} }[/math]

bo [math]\displaystyle{ p^{n + 1} \, | \, p^{2 n} }[/math]. Zatem liczba [math]\displaystyle{ u_{n + 1} = u_n + s_0 p^n }[/math] jest rozwiązaniem kongruencji

[math]\displaystyle{ x^2 \equiv a \pmod{p^{n + 1}} }[/math]

Pokazaliśmy tym samym prawdziwość tezy indukcyjnej, co kończy dowód indukcyjny.


Uwaga J40
Dla niewielkich modułów rozwiązania dowolnej kongruencji możemy znaleźć przez bezpośrednie sprawdzenie. Omówimy teraz rozwiązania kongruencji [math]\displaystyle{ x^2 \equiv a \pmod{2^n} }[/math] dla [math]\displaystyle{ n = 1, 2, 3 }[/math]. Ponieważ zakładamy, że [math]\displaystyle{ \gcd (a, m) = \gcd (a, 2^n) = 1 }[/math], to [math]\displaystyle{ a }[/math] musi być liczbą nieparzystą, zaś [math]\displaystyle{ x }[/math] nie może być liczbą parzystą. Istotnie, gdyby tak było, to mielibyśmy [math]\displaystyle{ 0 \equiv 1 \pmod{2} }[/math], bo [math]\displaystyle{ 2 \, | \, 2^n }[/math].

Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{2} }[/math]

ma dokładnie jedno rozwiązanie [math]\displaystyle{ x \equiv 1 \pmod{2} }[/math].

Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{4} }[/math]

ma dwa rozwiązania, gdy [math]\displaystyle{ a \equiv 1 \pmod{4} }[/math]. Rozwiązaniami są: [math]\displaystyle{ x \equiv 1, 3 \pmod{4} }[/math]. W przypadku, gdy [math]\displaystyle{ a \equiv 3 \pmod{4} }[/math] kongruencja nie ma rozwiązań.

Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{8} }[/math]

ma cztery rozwiązania, gdy [math]\displaystyle{ a \equiv 1 \pmod{8} }[/math]. Rozwiązaniami są: [math]\displaystyle{ x \equiv 1, 3, 5, 7 \pmod{8} }[/math]. W przypadku, gdy [math]\displaystyle{ a \equiv 3, 5, 7 \pmod{8} }[/math] kongruencja nie ma rozwiązań.


Twierdzenie J41
Niech [math]\displaystyle{ n \geqslant 3 }[/math] i [math]\displaystyle{ a }[/math] będzie liczbą nieparzystą. Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{2^n} }[/math]

ma rozwiązanie wtedy i tylko wtedy, gdy kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{8} }[/math]

ma rozwiązanie.

Dowód

[math]\displaystyle{ \Large{\Longrightarrow} }[/math]

Z założenia kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{2^n} }[/math] ma rozwiązanie, zatem istnieje taka liczba [math]\displaystyle{ r \in \mathbb{Z} }[/math], że

[math]\displaystyle{ r^2 \equiv a \pmod{2^n} }[/math]

Ponieważ [math]\displaystyle{ 2^n \, | \, (r^2 - a) }[/math], gdzie [math]\displaystyle{ n \geqslant 3 }[/math], to tym bardziej [math]\displaystyle{ 2^3 \, | \, (r^2 - a) }[/math]. Co oznacza, że prawdziwa jest kongruencja

[math]\displaystyle{ r^2 \equiv a \pmod{2^3} }[/math]

Skąd wynika natychmiast, że kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{8} }[/math] ma rozwiązanie.

[math]\displaystyle{ \Large{\Longleftarrow} }[/math]

Indukcja matematyczna. Z uczynionego w twierdzeniu założenia wiemy, że kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{8} }[/math] ma rozwiązanie. Zatem twierdzenie jest prawdziwe dla [math]\displaystyle{ n = 3 }[/math]. Załóżmy teraz (założenie indukcyjne), że kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{2^n} }[/math]

ma rozwiązanie [math]\displaystyle{ x \equiv u_n \pmod{2^n} }[/math] i pokażemy, że twierdzenie jest prawdziwe dla [math]\displaystyle{ n + 1 }[/math], czyli że rozwiązanie ma kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{2^{n + 1}} }[/math]

Z założenia istnieje taka liczba [math]\displaystyle{ k }[/math], że [math]\displaystyle{ u^2_n - a = k \cdot 2^n }[/math]. Niech

[math]\displaystyle{ r = \begin{cases} 0 & \text{gdy } k \text{ jest liczbą parzystą}\\ 1 & \text{gdy } k \text{ jest liczbą nieparzystą} \end{cases} }[/math]

Zauważmy, że

[math]\displaystyle{ (u_n + r \cdot 2^{n - 1})^2 - a = u^2_n - a + 2^n r + r^2 \cdot 2^{2 n - 2} }[/math]
[math]\displaystyle{ \;\! = k \cdot 2^n + 2^n r + r^2 \cdot 2^{2 n - 2} }[/math]
[math]\displaystyle{ \;\! = 2^n (k + r) + r^2 \cdot 2^{2 n - 2} }[/math]
[math]\displaystyle{ \;\! \equiv 0 \pmod{2^{n + 1}} }[/math]

bo [math]\displaystyle{ k + r }[/math] jest liczbą parzystą, a dla [math]\displaystyle{ n \geqslant 3 }[/math] mamy [math]\displaystyle{ 2 n - 2 \geqslant n + 1 }[/math]. Zatem liczba [math]\displaystyle{ u_{n + 1} = u_n + r \cdot 2^{n - 1} }[/math] jest rozwiązaniem kongruencji

[math]\displaystyle{ x^2 \equiv a \pmod{2^{n + 1}} }[/math]

Pokazaliśmy tym samym prawdziwość tezy indukcyjnej, co kończy dowód indukcyjny.


Wniosek J42
Jeżeli [math]\displaystyle{ a }[/math] jest liczbą nieparzystą, to kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{2^n} }[/math] ma rozwiązanie wtedy i tylko wtedy, gdy [math]\displaystyle{ a }[/math] jest postaci [math]\displaystyle{ 2 k + 1 }[/math], [math]\displaystyle{ 4 k + 1 }[/math] lub [math]\displaystyle{ 8 k + 1 }[/math] w zależności od tego, czy [math]\displaystyle{ n = 1 }[/math], czy [math]\displaystyle{ n = 2 }[/math], czy [math]\displaystyle{ n \geqslant 3 }[/math].


Uwaga J43
Niech [math]\displaystyle{ m = p^{\alpha_1}_1 \cdot \ldots \cdot p^{\alpha_s}_s }[/math] i [math]\displaystyle{ \gcd (a, m) = 1 }[/math]. Z chińskiego twierdzenia o resztach (zobacz J3 i J11) wynika, że kongruencja [math]\displaystyle{ x^2 \equiv a \pmod{m} }[/math] ma rozwiązanie wtedy i tylko wtedy, gdy ma rozwiązanie każda z kongruencji

[math]\displaystyle{ \begin{align} x^2 & \equiv a \pmod{p^{\alpha_1}_1} \\ & \,\,\,\cdots \\ x^2 & \equiv a \pmod{p^{\alpha_s}_s} \\ \end{align} }[/math]

Z definicji J23, twierdzeń J39 i J41, uwagi J40 i wniosku J42 otrzymujemy


Twierdzenie J44
Niech [math]\displaystyle{ m \in \mathbb{Z}_+ }[/math] i [math]\displaystyle{ \gcd (a, m) = 1 }[/math]. Kongruencja

[math]\displaystyle{ x^2 \equiv a \pmod{m} }[/math]

ma rozwiązanie wtedy i tylko wtedy, gdy

●    dla każdego nieparzystego dzielnika pierwszego [math]\displaystyle{ p }[/math] liczby [math]\displaystyle{ m }[/math] jest  [math]\displaystyle{ \left( {\small\frac{a}{p}} \right)_{\small{\!\! L}} = 1 }[/math]
●    jeżeli  [math]\displaystyle{ 8 \, | \, m }[/math],  to  [math]\displaystyle{ 8 \, | \, ( a - 1 ) }[/math]
●    jeżeli  [math]\displaystyle{ 8 \nmid m }[/math],  ale  [math]\displaystyle{ 4 \, | \, m }[/math],  to  [math]\displaystyle{ 4 \, | \, ( a - 1 ) }[/math]


Zadanie J45
Rozwiązać kongruencję, gdzie [math]\displaystyle{ p }[/math] jest liczbą pierwszą nieparzystą

[math]\displaystyle{ x^2 + rx + s \equiv 0 \pmod{p} }[/math]
Rozwiązanie

Ponieważ [math]\displaystyle{ \gcd (2, p) = 1 }[/math], to nie zmniejszając ogólności kongruencję powyższą możemy zapisać w postaci

[math]\displaystyle{ 4 x^2 + 4 rx + 4 s \equiv 0 \pmod{p} }[/math]
[math]\displaystyle{ (2 x + r)^2 - r^2 + 4 s \equiv 0 \pmod{p} }[/math]
[math]\displaystyle{ (2 x + r)^2 \equiv r^2 - 4 s \pmod{p} }[/math]

Widzimy, że rozpatrywana kongruencja ma rozwiązanie wtedy i tylko wtedy, gdy liczba [math]\displaystyle{ r^2 - 4 s }[/math] jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math]. Istotnie, jeśli jest liczbą kwadratową, to istnieje taka liczba [math]\displaystyle{ b }[/math], że [math]\displaystyle{ b^2 \equiv r^2 - 4 s \pmod{p} }[/math], zatem otrzymujemy

[math]\displaystyle{ (2 x + r)^2 \equiv b^2 \pmod{p} }[/math]
[math]\displaystyle{ 2 x + r \equiv \pm b \pmod{p} }[/math]
[math]\displaystyle{ x \equiv {\small\frac{p + 1}{2}} \cdot (- r \pm b) \pmod{p} }[/math]

Jeśli [math]\displaystyle{ r^2 - 4 s }[/math] nie jest liczbą kwadratową modulo [math]\displaystyle{ p }[/math], to kongruencja

[math]\displaystyle{ (2 x + r)^2 \equiv r^2 - 4 s \pmod{p} }[/math]

nie ma rozwiązania. Wynika stąd, że równoważna jej kongruencja

[math]\displaystyle{ x^2 + rx + s \equiv 0 \pmod{p} }[/math]

również nie ma rozwiązania.


Zadanie J46
Rozwiązać kongruencję

[math]\displaystyle{ 5 x^2 + 6 x + 8 \equiv 0 \pmod{19} }[/math]
Rozwiązanie

Mnożąc obie strony kongruencji przez [math]\displaystyle{ 4 }[/math], otrzymujemy

[math]\displaystyle{ x^2 + 24 x + 32 \equiv 0 \pmod{19} }[/math]
[math]\displaystyle{ x^2 + 5 x + 13 \equiv 0 \pmod{19} }[/math]
[math]\displaystyle{ 4 x^2 + 4 \cdot 5 x + 4 \cdot 13 \equiv 0 \pmod{19} }[/math]
[math]\displaystyle{ (2 x + 5)^2 - 25 + 52 \equiv 0 \pmod{19} }[/math]
[math]\displaystyle{ (2 x + 5)^2 - 6 + 14 \equiv 0 \pmod{19} }[/math]
[math]\displaystyle{ (2 x + 5)^2 \equiv - 8 \pmod{19} }[/math]
[math]\displaystyle{ (2 x + 5)^2 \equiv 7^2 \pmod{19} }[/math]
[math]\displaystyle{ 2 x + 5 \equiv \pm 7 \pmod{19} }[/math]
[math]\displaystyle{ 2 x \equiv - 5 \pm 7 \pmod{19} }[/math]

Mnożąc obie strony kongruencji przez [math]\displaystyle{ 10 }[/math], otrzymujemy: [math]\displaystyle{ x \equiv 13 \pmod{19} }[/math] lub [math]\displaystyle{ x \equiv 1 \pmod{19} }[/math].

Nieco spostrzegawczości pozwala znaleźć rozwiązanie kongruencji natychmiast. W naszym przypadku wystarczyło zauważyć, że

[math]\displaystyle{ x^2 + 5 x + 13 \equiv x^2 - 14 x + 13 \equiv (x - 1) (x - 13) \pmod{19} }[/math]



Najmniejsze liczby niekwadratowe modulo

Uwaga J47
Najmniejsze liczby niekwadratowe modulo przedstawiamy Czytelnikowi jedynie jako pewną ciekawostkę. Jednocześnie jest to nietrudny temat, który pozwala lepiej poznać i zrozumieć liczby kwadratowe modulo, liczby niekwadratowe modulo, symbol Legendre'a i symbol Jacobiego.



 A. Najmniejsze liczby niekwadratowe modulo [math]\displaystyle{ p }[/math] 

Przykład J48
W tabeli przedstawiliśmy najmniejsze liczby niekwadratowe modulo [math]\displaystyle{ p }[/math]


Uwaga J49
Do wyszukiwania liczb [math]\displaystyle{ \mathbb{n} = \mathbb{n} (p) }[/math] Czytelnik może wykorzystać prostą funkcję napisaną w PARI/GP

A(p) = 
{
if( p == 2, return(0) );
if( !isprime(p), return(0) );
forprime(q = 2, p, if( jacobi(q, p) == -1, return(q) ));
}

Zauważmy, że choć wyliczamy symbol Jacobiego, to jest to w rzeczywistości symbol Legendre'a, bo wiemy, że liczba [math]\displaystyle{ p }[/math] jest liczbą pierwszą (w przypadku, gdy [math]\displaystyle{ p }[/math] jest liczbą złożoną, funkcja zwraca zero).


Twierdzenie J50
Niech [math]\displaystyle{ \mathbb{n} \in \mathbb{Z}_+ }[/math] i niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą. Jeżeli [math]\displaystyle{ \mathbb{n} }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math], to jest liczbą pierwszą.

Dowód

Przypuśćmy, że [math]\displaystyle{ \mathbb{n} = a b }[/math] jest liczbą złożoną, gdzie [math]\displaystyle{ 1 \lt a, b \lt \mathbb{n} }[/math]. Z założenia [math]\displaystyle{ \mathbb{n} }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math], zatem liczby [math]\displaystyle{ a, b }[/math] są liczbami kwadratowymi modulo [math]\displaystyle{ p }[/math]. Z definicji liczb kwadratowych muszą istnieć takie liczby [math]\displaystyle{ r, s }[/math], że

[math]\displaystyle{ r^2 \equiv a \pmod{p} }[/math]
[math]\displaystyle{ s^2 \equiv b \pmod{p} }[/math]

Skąd wynika, że

[math]\displaystyle{ \mathbb{n} = a b \equiv (r s)^2 \pmod{p} }[/math]

Wbrew założeniu, że [math]\displaystyle{ \mathbb{n} }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ p }[/math].


Zadanie J51
Pokazać, że najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] jest

  •  liczba [math]\displaystyle{ 2 }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ p = 8 k \pm 3 }[/math]
  •  liczba [math]\displaystyle{ 3 }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ p = 24 k \pm 7 }[/math]
  •  liczba [math]\displaystyle{ \geqslant 5 }[/math] wtedy i tylko wtedy, gdy [math]\displaystyle{ p = 24 k \pm 1 }[/math]
Rozwiązanie

Z właściwości symbolu Legendre'a (zobacz J25 p.7) wiemy, że

[math]\displaystyle{ \left( {\small\frac{2}{p}} \right)_{\small{\!\! L}} \,\, = \,\, \begin{cases} \;\;\: 1 & \text{gdy } p \equiv 1, 7 \pmod{8} \\ - 1 & \text{gdy } p \equiv 3, 5 \pmod{8} \end{cases} }[/math]

Wynika stąd natychmiast, dla liczb pierwszych [math]\displaystyle{ p }[/math] postaci [math]\displaystyle{ 8 k \pm 3 }[/math] (i tylko dla takich liczb) liczba [math]\displaystyle{ 2 }[/math] jest liczbą niekwadratową, czyli również najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math].

Z zadania J36 wynika, że liczba [math]\displaystyle{ 3 }[/math] jest liczbą niekwadratową jedynie dla liczb pierwszych postaci [math]\displaystyle{ 12 k \pm 5 }[/math]. Zatem dla liczb pierwszych, które są jednocześnie postaci [math]\displaystyle{ p = 8 k \pm 1 }[/math] i [math]\displaystyle{ p = 12 j \pm 5 }[/math], liczba [math]\displaystyle{ 3 }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math]. Z czterech warunków

[math]\displaystyle{ p = 8 k + 1 \quad \text{i} \quad p = 12 j + 5 }[/math]
[math]\displaystyle{ p = 8 k + 1 \quad \text{i} \quad p = 12 j + 7 }[/math]
[math]\displaystyle{ p = 8 k + 7 \quad \text{i} \quad p = 12 j + 5 }[/math]
[math]\displaystyle{ p = 8 k + 7 \quad \text{i} \quad p = 12 j + 7 }[/math]

Drugi i trzeci nie są możliwe, bo modulo [math]\displaystyle{ 4 }[/math] otrzymujemy

[math]\displaystyle{ p \equiv 1 \pmod{4} \quad \text{i} \quad p \equiv 3 \pmod{4} }[/math]
[math]\displaystyle{ p \equiv 3 \pmod{4} \quad \text{i} \quad p \equiv 1 \pmod{4} }[/math]

a z pierwszego i czwartego mamy

[math]\displaystyle{ 3 p = 24 k + 3 \quad \text{i} \quad 2 p = 24 j + 10 \qquad \;\: \Longrightarrow \qquad p = 24 (k - j) - 7 \qquad \Longrightarrow \qquad p \equiv - 7 \pmod{24} }[/math]
[math]\displaystyle{ 3 p = 24 k + 21 \quad \text{i} \quad 2 p = 24 j + 14 \qquad \Longrightarrow \qquad p = 24 (k - j) + 7 \qquad \Longrightarrow \qquad p \equiv 7 \pmod{24} }[/math]

Zauważmy, że problem mogliśmy zapisać w postaci układu kongruencji

[math]\displaystyle{ p \equiv \pm 1 \pmod{8} }[/math]
[math]\displaystyle{ p \equiv \pm 5 \pmod{12} }[/math]

Gdyby moduły tych kongruencji były względnie pierwsze, to każdemu wyborowi znaków odpowiadałaby pewna kongruencja równoważna (zobacz J3). Widzimy, że w przypadku, gdy moduły nie są względnie pierwsze, kongruencja równoważna może istnieć, ale nie musi. Rozwiązując taki problem, wygodnie jest skorzystać z programu PARI/GP. Wystarczy wpisać

chinese(Mod(1, 8), Mod(5, 12)) = Mod(17, 24)
chinese(Mod(1, 8), Mod(-5, 12)) - błąd 
chinese(Mod(-1, 8), Mod(5, 12)) - błąd 
chinese(Mod(-1, 8), Mod(-5, 12)) = Mod(7, 24)

Ostatni punkt zadania rozwiążemy tą metodą. Liczba większa lub równa [math]\displaystyle{ 5 }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] wtedy i tylko wtedy, gdy liczby [math]\displaystyle{ 2 }[/math] i [math]\displaystyle{ 3 }[/math] są liczbami kwadratowymi modulo [math]\displaystyle{ p }[/math], co oznacza, że liczba pierwsza [math]\displaystyle{ p }[/math] spełnia kongruencje

[math]\displaystyle{ p \equiv \pm 1 \pmod{8} }[/math]
[math]\displaystyle{ p \equiv \pm 1 \pmod{12} }[/math]

Postępując jak wyżej, otrzymujemy

chinese(Mod(1, 8), Mod(1, 12)) = Mod(1, 24)
chinese(Mod(1, 8), Mod(-1, 12)) - błąd 
chinese(Mod(-1, 8), Mod(1, 12)) - błąd 
chinese(Mod(-1, 8), Mod(-1, 12)) = Mod(23, 24)

Co należało pokazać.


Twierdzenie J52
Dla każdej liczby pierwszej [math]\displaystyle{ p_n }[/math] istnieje nieskończenie wiele takich liczb pierwszych [math]\displaystyle{ q }[/math], że [math]\displaystyle{ p_n }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ q }[/math].

Dowód

Niech [math]\displaystyle{ 2, p_2, \ldots, p_{n - 1}, p_n }[/math] będą kolejnymi liczbami pierwszymi. Wybierzmy liczbę [math]\displaystyle{ u }[/math] tak, aby spełniała układ kongruencji

[math]\displaystyle{ \begin{align} u & \equiv 1 \pmod{8 p_2 \cdot \ldots \cdot p_{n - 1}} \\ u & \equiv a \pmod{p_n} \end{align} }[/math]

gdzie [math]\displaystyle{ a }[/math] oznacza dowolną liczbą niekwadratową modulo [math]\displaystyle{ p_n }[/math]. Na podstawie chińskiego twierdzenia o resztach (zobacz J3) powyższy układ kongruencji może być zapisany w postaci kongruencji równoważnej

[math]\displaystyle{ u \equiv c \pmod{8 p_2 \cdot \ldots \cdot p_n} }[/math]


Zauważmy, że żadna z liczb pierwszych [math]\displaystyle{ p_k }[/math], gdzie [math]\displaystyle{ 1 \leqslant k \leqslant n }[/math] nie dzieli liczby [math]\displaystyle{ c }[/math], bo mielibyśmy

[math]\displaystyle{ u \equiv 0 \pmod{p_k} }[/math]

wbrew wypisanemu wyżej układowi kongruencji. Zatem [math]\displaystyle{ \gcd (c, 8 p_2 \cdot \ldots \cdot p_n) = 1 }[/math] i z twierdzenia Dirichleta wiemy, że wśród liczb [math]\displaystyle{ u }[/math] spełniających kongruencję [math]\displaystyle{ u \equiv c \pmod{8 p_2 \cdot \ldots \cdot p_n} }[/math] występuje nieskończenie wiele liczb pierwszych (bo wśród tych liczb są liczby postaci [math]\displaystyle{ 8 p_2 \cdot \ldots \cdot p_n \cdot k + c }[/math], gdzie [math]\displaystyle{ k \in \mathbb{Z}_+ }[/math]). Oznaczmy przez [math]\displaystyle{ q }[/math] dowolną z tych liczb pierwszych.


Ponieważ [math]\displaystyle{ q \equiv 1 \pmod{8} }[/math], to [math]\displaystyle{ \left( {\small\frac{2}{q}} \right)_{\small{\!\! L}} = 1 }[/math] (zobacz J25), a dla wszystkich liczb pierwszych nieparzystych [math]\displaystyle{ p_k \lt p_n }[/math] mamy

[math]\displaystyle{ \left( {\small\frac{p_k}{q}} \right)_{\small{\!\! L}} = \left( {\small\frac{q}{p_k}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{q - 1}{2} \cdot \tfrac{p_k - 1}{2}} = \left( {\small\frac{q}{p_k}} \right)_{\small{\!\! L}} = \left( {\small\frac{c}{p_k}} \right)_{\small{\!\! L}} = \left( {\small\frac{1}{p_k}} \right)_{\small{\!\! L}} = 1 }[/math]

bo [math]\displaystyle{ 8 \, | \, (q - 1) }[/math]. Dla liczby pierwszej [math]\displaystyle{ p_n }[/math] jest

[math]\displaystyle{ \left( {\small\frac{p_n}{q}} \right)_{\small{\!\! L}} = \left( {\small\frac{q}{p_n}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{q - 1}{2} \cdot \tfrac{p_n - 1}{2}} = \left( {\small\frac{q}{p_n}} \right)_{\small{\!\! L}} = \left( {\small\frac{c}{p_n}} \right)_{\small{\!\! L}} = \left( {\small\frac{a}{p_n}} \right)_{\small{\!\! L}} = - 1 }[/math]

Zatem wszystkie liczby pierwsze mniejsze od [math]\displaystyle{ p_n }[/math] są liczbami kwadratowymi modulo [math]\displaystyle{ q }[/math], a liczba pierwsza [math]\displaystyle{ p_n }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ q }[/math]. Zauważmy, że [math]\displaystyle{ q }[/math] była dowolnie wybraną liczbą pierwszą z nieskończenie wielu liczb pierwszych występujących w ciągu arytmetycznym [math]\displaystyle{ 8 p_2 \cdot \ldots \cdot p_n \cdot k + c }[/math], gdzie [math]\displaystyle{ k \in \mathbb{Z}_+ }[/math]. Co kończy dowód.


Twierdzenie J53 (Sarvadaman Chowla)
Istnieje niekończenie wiele liczb pierwszych [math]\displaystyle{ p }[/math] takich, że najmniejsza liczba niekwadratowa modulo [math]\displaystyle{ p }[/math] jest większa od [math]\displaystyle{ {\small\frac{\log p}{2 L \log 2}} }[/math], gdzie [math]\displaystyle{ L }[/math] jest stałą Linnika.

Dowód

Niech [math]\displaystyle{ a = 4 P (n) }[/math], gdzie [math]\displaystyle{ P(n) }[/math] jest iloczynem wszystkich liczb pierwszych nie większych od [math]\displaystyle{ n }[/math]. Z twierdzenia Dirichleta wiemy, że w ciągu arytmetycznym [math]\displaystyle{ u_k = a k + 1 }[/math] występuje nieskończenie wiele liczb pierwszych. Niech [math]\displaystyle{ p }[/math] oznacza dowolną z nich.

Z definicji [math]\displaystyle{ p \equiv 1 \pmod{8} }[/math], zatem [math]\displaystyle{ \left( {\small\frac{2}{p}} \right)_{\small{\!\! L}} = 1 }[/math] (zobacz J25), a dla dowolnej liczby pierwszej nieparzystej [math]\displaystyle{ q_i \leqslant n }[/math] mamy

[math]\displaystyle{ \left( {\small\frac{q_i}{p}} \right)_{\small{\!\! L}} = \left( {\small\frac{p}{q_i}} \right)_{\small{\!\! L}} \cdot (- 1)^{\tfrac{p - 1}{2} \cdot \tfrac{q_i - 1}{2}} = \left( {\small\frac{p}{q_i}} \right)_{\small{\!\! L}} = \left( {\small\frac{a k + 1}{q_i}} \right)_{\small{\!\! L}} = \left( {\small\frac{1}{q_i}} \right)_{\small{\!\! L}} = 1 }[/math]

Zatem najmniejsza liczba niekwadratowa modulo [math]\displaystyle{ p }[/math] jest większa od [math]\displaystyle{ n }[/math]. Wiemy też, że (zobacz A9)

[math]\displaystyle{ a = 4 P (n) \lt 4 \cdot 4^n = 4^{n + 1} }[/math]

Załóżmy teraz, że [math]\displaystyle{ p }[/math] jest najmniejszą liczbą pierwszą w ciągu arytmetycznym [math]\displaystyle{ u_k = a k + 1 }[/math], a liczba [math]\displaystyle{ n }[/math] została wybrana tak, że liczba [math]\displaystyle{ a = 4 P (n) }[/math] jest dostatecznie duża i możliwe jest skorzystanie z twierdzenia Linnika (zobacz C30). Dostajemy natychmiast oszacowanie

[math]\displaystyle{ p = p_{\min} (a, 1) \lt a^L }[/math]

gdzie [math]\displaystyle{ L }[/math] jest stałą Linnika (możemy przyjąć [math]\displaystyle{ L = 5 }[/math]). Łącząc powyższe oszacowania, łatwo otrzymujemy oszacowanie najmniejszej liczby niekwadratowej modulo [math]\displaystyle{ p }[/math]

[math]\displaystyle{ \mathbb{n}(p) \geqslant n + 1 \gt \log_4 a = {\small\frac{\log a}{\log 4}} = {\small\frac{\log a^L}{2 L \log 2}} \gt {\small\frac{\log p}{2 L \log 2}} }[/math]

Każdemu wyborowi innej liczby [math]\displaystyle{ n' \gt n }[/math] takiej, że [math]\displaystyle{ P(n') \gt P (n) }[/math] odpowiada inna liczba pierwsza [math]\displaystyle{ p' }[/math] taka, że [math]\displaystyle{ \mathbb{n}(p') \gt {\small\frac{\log p'}{2 L \log 2}} }[/math], zatem liczb pierwszych [math]\displaystyle{ p }[/math] dla których najmniejsza liczba niekwadratowa modulo [math]\displaystyle{ p }[/math] jest większa od [math]\displaystyle{ {\small\frac{\log p}{2 L \log 2}} }[/math] jest nieskończenie wiele.


Uwaga J54
W twierdzeniu J52 pokazaliśmy, że dla każdej liczby pierwszej [math]\displaystyle{ \mathbb{n} }[/math] istnieją takie liczby pierwsze [math]\displaystyle{ p }[/math], że [math]\displaystyle{ \mathbb{n} }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math]. Zatem zbiór [math]\displaystyle{ S_\mathbb{n} }[/math] liczb pierwszych takich, że dla każdej liczby [math]\displaystyle{ p \in S_\mathbb{n} }[/math] liczba [math]\displaystyle{ \mathbb{n} }[/math] jest najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math] jest zbiorem niepustym. Wynika stąd, że zbiór [math]\displaystyle{ S_\mathbb{n} }[/math] ma element najmniejszy i możemy te najmniejsze liczby pierwsze łatwo znaleźć – wystarczy w PARI/GP napisać proste polecenie

forprime(n = 2, 50, forprime(p = 2, 10^10, if( A(p) == n, print(n, "   ", p); break() )))

W tabeli przedstawiamy uzyskane rezultaty (zobacz też A000229).


Twierdzenie J55
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą, a [math]\displaystyle{ \mathbb{n} }[/math] będzie najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math]. Prawdziwe jest oszacowanie

[math]\displaystyle{ \mathbb{n} (p) \lt \sqrt{p} + {\small\frac{1}{2}} }[/math]
Dowód

Ponieważ [math]\displaystyle{ \mathbb{n} \nmid p }[/math], to z oszacowania [math]\displaystyle{ x - 1 \lt \lfloor x \rfloor \leqslant x }[/math] wynika, że

[math]\displaystyle{ {\small\frac{p}{\mathbb{n}}} - 1 \lt \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor \lt {\small\frac{p}{\mathbb{n}}} }[/math]
[math]\displaystyle{ p \lt \mathbb{n} \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + \mathbb{n} \lt p + \mathbb{n} }[/math]

Niech [math]\displaystyle{ u = \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + 1 }[/math], mamy

[math]\displaystyle{ 0 \lt \mathbb{n} u - p \lt \mathbb{n} }[/math]

Liczba [math]\displaystyle{ \mathbb{n} u - p }[/math] musi być liczbą kwadratową modulo [math]\displaystyle{ p }[/math], zatem

[math]\displaystyle{ 1 = \left( {\small\frac{\mathbb{n} u - p}{p}} \right)_{\small{\!\! L}} = \left( {\small\frac{\mathbb{n}}{p}} \right)_{\small{\!\! L}} \cdot \left( {\small\frac{u}{p}} \right)_{\small{\!\! L}} = - \left( {\small\frac{u}{p}} \right)_{\small{\!\! L}} }[/math]

Ale z założenia [math]\displaystyle{ \mathbb{n} }[/math] jest najmniejszą liczbą taką, że [math]\displaystyle{ \left( {\small\frac{\mathbb{n}}{p}} \right)_{\small{\!\! L}} = - 1 }[/math]. Wynika stąd, że musi być [math]\displaystyle{ \mathbb{n} \leqslant u }[/math] i łatwo znajdujemy, że

[math]\displaystyle{ \mathbb{n} \leqslant \left\lfloor {\small\frac{p}{\mathbb{n}}} \right\rfloor + 1 \lt {\small\frac{p}{\mathbb{n}}} + 1 }[/math]
[math]\displaystyle{ \mathbb{n}^2 \lt p + \mathbb{n} }[/math]

Ponieważ wypisane liczby są liczbami całkowitymi, to ostatnią nierówność możemy zapisać w postaci

[math]\displaystyle{ \mathbb{n}^2 \leqslant p + \mathbb{n} - 1 }[/math]

Skąd otrzymujemy

[math]\displaystyle{ \left( \mathbb{n} - {\small\frac{1}{2}} \right)^2 \leqslant p - {\small\frac{3}{4}} }[/math]
[math]\displaystyle{ \mathbb{n} \leqslant {\small\frac{1}{2}} + \sqrt{p - {\small\frac{3}{4}}} \lt {\small\frac{1}{2}} + \sqrt{p} }[/math]

Co należało pokazać.


Twierdzenie J56*
Niech [math]\displaystyle{ p }[/math] będzie liczbą pierwszą nieparzystą, a [math]\displaystyle{ \mathbb{n} }[/math] będzie najmniejszą liczbą niekwadratową modulo [math]\displaystyle{ p }[/math]. Dla [math]\displaystyle{ p \geqslant 5 }[/math] prawdziwe jest oszacowanie[7][8][9]

[math]\displaystyle{ \mathbb{n} (p) \leqslant 1.1 \cdot p^{1 / 4} \log p }[/math]


Uwaga J57
Liczby [math]\displaystyle{ \mathbb{n} = \mathbb{n} (p) }[/math] są zaskakująco małe. Średnia wartość [math]\displaystyle{ \mathbb{n} = \mathbb{n} (p) }[/math], gdzie [math]\displaystyle{ p }[/math] są nieparzystymi liczbami pierwszymi, jest równa[10]

[math]\displaystyle{ \lim_{x \to \infty} {\small\frac{1}{\pi (x)}} \sum_{p \leqslant x} \mathbb{n} (p) = \sum_{k = 1}^{\infty} {\small\frac{p_k}{2^k}} = 3.674643966 \ldots }[/math]



 C. Najmniejsze dodatnie liczby niekwadratowe [math]\displaystyle{ a }[/math] takie, że [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1 }[/math] 

Przykład J58
W tabeli przedstawiliśmy najmniejsze liczby niekwadratowe modulo [math]\displaystyle{ p }[/math], najmniejsze liczby niekwadratowe modulo [math]\displaystyle{ m }[/math] i najmniejsze dodatnie liczby niekwadratowe [math]\displaystyle{ a }[/math] takie, że [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1 }[/math].


Uwaga J59
Do wyszukiwania liczb [math]\displaystyle{ c = c (m) }[/math] Czytelnik może wykorzystać prostą funkcję napisaną w PARI/GP

C(m) = 
{
if( m%2 == 0, return(0) );
if( issquare(m), return(0) );
forprime(p = 2, m, if( jacobi(p, m) == -1, return(p) ));
}


Uwaga J60
Najmniejsze dodatnie liczby niekwadratowe [math]\displaystyle{ a }[/math] takie, że [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} = - 1 }[/math] oznaczyliśmy jako [math]\displaystyle{ c(m) }[/math]. Zauważmy, że są to liczby inne od [math]\displaystyle{ \mathbb{n}(p) }[/math] i [math]\displaystyle{ \mathbb{n}(m) }[/math]. Wystarczy zwrócić uwagę na występujące w tabeli liczby [math]\displaystyle{ \mathbb{n}(p) }[/math], [math]\displaystyle{ \mathbb{n}(m) }[/math] i [math]\displaystyle{ c(m) }[/math] dla [math]\displaystyle{ m = 15, 33, 39 }[/math]. Różnice wynikają z innej definicji liczb [math]\displaystyle{ c(m) }[/math] – jeżeli liczba [math]\displaystyle{ a }[/math] jest liczbą niekwadratową modulo [math]\displaystyle{ m }[/math], to symbol Jacobiego [math]\displaystyle{ \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} }[/math] nie musi być równy [math]\displaystyle{ - 1 }[/math]. I tak czasami bywa, co bardzo dobrze pokazuje powyższa tabela.

Ponieważ [math]\displaystyle{ c(m) }[/math] nie zawsze będzie najmniejszą liczbą kwadratową modulo [math]\displaystyle{ m }[/math], to mamy natychmiast oszacowanie: [math]\displaystyle{ c(m) \geqslant \mathbb{n} (m) }[/math] (poza przypadkami, gdy [math]\displaystyle{ m = n^2 }[/math]).

Dla [math]\displaystyle{ c(m) }[/math] nie są prawdziwe oszacowania podane w twierdzeniu J55. Łatwo zauważamy, że

[math]\displaystyle{ c = c (15) = 7 \gt \sqrt{15} + {\small\frac{1}{2}} \approx 4.37 }[/math]
[math]\displaystyle{ c = c (39) = 7 \gt \sqrt{39} + {\small\frac{1}{2}} \approx 6.74 }[/math]
[math]\displaystyle{ c = c (105) = 11 \gt \sqrt{105} + {\small\frac{1}{2}} \approx 10.75 }[/math]
[math]\displaystyle{ c = c (231) = 17 \gt \sqrt{231} + {\small\frac{1}{2}} \approx 15.7 }[/math]

Nie ma więcej takich przypadków dla [math]\displaystyle{ m \lt 10^9 }[/math].


Twierdzenie J61
Niech [math]\displaystyle{ c, m \in \mathbb{Z}_+ }[/math] i niech [math]\displaystyle{ m \geqslant 3 }[/math] będzie liczbą nieparzystą, a [math]\displaystyle{ c }[/math] będzie najmniejszą liczbą taką, że [math]\displaystyle{ \left( {\small\frac{c}{m}} \right)_{\small{\!\! J}} = - 1 }[/math]. Liczba [math]\displaystyle{ c }[/math] musi być liczbą pierwszą.

Dowód

Przypuśćmy, że [math]\displaystyle{ c = a b }[/math] jest liczbą złożoną, gdzie [math]\displaystyle{ 1 \lt a, b \lt c }[/math]. Mamy

[math]\displaystyle{ - 1 = \left( {\small\frac{c}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a b}{m}} \right)_{\small{\!\! J}} = \left( {\small\frac{a}{m}} \right)_{\small{\!\! J}} }[/math][math]\displaystyle{ \left( {\small\frac{b}{m}} \right)_{\small{\!\! J}} }[/math]

Zatem jeden z czynników po prawej stronie musi być równy [math]\displaystyle{ - 1 }[/math] wbrew definicji liczby [math]\displaystyle{ c }[/math].








Przypisy

  1. Wikipedia, Chińskie twierdzenie o resztach, (Wiki-pl), (Wiki-en)
  2. CRT to często używany skrót od angielskiej nazwy twierdzenia: Chinese remainder theorem
  3. Wikipedia, Logical equivalence, (Wiki-en)
  4. Wikipedia, Zasada włączeń i wyłączeń, (Wiki-pl), (Wiki-en)
  5. Wikipedia, Symbol Legendre’a, (Wiki-pl), (Wiki-en)
  6. Wikipedia, Symbol Jacobiego, (Wiki-pl), (Wiki-en)
  7. Karl K. Norton, Numbers with Small Prime Factors, and the Least kth Power Non-Residue, Memoirs of the American Mathematical Society, No. 106 (1971)
  8. Enrique Treviño, The least k-th power non-residue, Journal of Number Theory, Volume 149 (2015)
  9. Kevin J. McGown and Enrique Treviño, The least quadratic non-residue, Mexican Mathematicians in the World (2021)
  10. Paul Erdős, Számelméleti megjegyzések I, Afar. Lapok, v. 12 (1961)