MakarovSuites
Polski
EnglishDeutschРусскийУкраїнськаFrançaisEspañolItalianoPolski
Kontakt i licencje

Math

Zegar modularny

Tarcza z m znacznikami i jedna wskazówka. Dodawanie rysuje gwiazdę zamykającą się po m/NWD(s, m) ruchach; mnożenie cykl, którego długość dzieli phi(m). Niektóre moduły nie mają żadnego pierwiastka pierwotnego, i karta to mówi: to twierdzenie, a nie nieudane szukanie.

Zegar modularny — Obraz z aplikacji
Obraz z aplikacji

Co się dzieje

Wskazówka idzie ruch po ruchu, a dotknięte znaczniki zapalają się; te, które zostają ciemne, odpowiadają zanim panel poda NWD. Krok 8 na dwunastu znacznikach rysuje trójkąt; krok 5 gwiazdę po wszystkich dwunastu, bo 5 i 12 nie mają wspólnego dzielnika. Przy mnożeniu reguła się zmienia: k → k·g, długość cyklu to RZĄD g, a z twierdzenia Eulera ten rząd DZIELI phi(m) - na siedemnastu znacznikach możliwe są tylko 1, 2, 4, 8 i 16. Pierwiastek pierwotny to takie g, którego rząd równa się dokładnie phi(m); na tarczy pierwszej obchodzi wszystkie znaczniki poza zerem. Ile ich jest? Dokładnie phi(phi(m)), a panel liczy je również przeglądem. I rzecz najważniejsza: pierwiastki pierwotne nie istnieją dla każdego modułu, tylko dla 1, 2, 4, p^k i 2p^k. Dla 8, 12, 15, 16, 20, 21 czy 24 nie ma żadnego, i karta mówi to wprost, zamiast po cichu niczego nie znaleźć.

Równania modułu
Równania
dodawanie:  wskazówka w położeniu k przesuwa się do k + s (mod m);  cykl zamyka się po m / gcd(s, m) ruchach i odwiedza KAŻDĄ kreskę dokładnie wtedy, gdy gcd(s, m) = 1
m = 12, s = 8 → 3 znaczniki (trójkąt);  m = 12, s = 5 → wszystkie 12;  m = 360, s = 84 → 30
mnożenie:  k → k·g (mod m);  długość cyklu to RZĄD elementu g, a z twierdzenia Eulera dzieli on phi(m)
m = 17: phi = 16, a występujące rzędy to 1, 2, 4, 8, 16 - nic innego nie może wystąpić
pierwiastek pierwotny to takie g, którego rząd JEST równy phi(m); dla m pierwszego oznacza to cykl przechodzący przez wszystkie m − 1 niezerowych znaczników
ile ich jest:  dokładnie phi(phi(m)), gdy istnieją -  m = 7 → 2 (najmniejszy 3), m = 11 → 4 (najmniejszy 2), m = 23 → 10 (najmniejszy 5)
KIEDY ISTNIEJĄ:  tylko dla m = 1, 2, 4, p^k i 2p^k.  Dla 8, 12, 15, 16, 20, 21, 24 NIE MA żadnego pierwiastka pierwotnego - to twierdzenie, a nie nieudane poszukiwanie
phi jest tu obliczane, a nie wzięte z tabeli:  phi(7) = 6, phi(9) = 6, phi(12) = 4, phi(16) = 8, phi(36) = 12, phi(100) = 40, phi(1000) = 400

Inne eksperymenty

Wróć do katalogu
Sito i gęstość liczb pierwszych — Obraz z aplikacji

Math

Sito i gęstość liczb pierwszych

Przeprowadź sito ręcznie na ponumerowanych płytkach: weź następny dzielnik, przewidź, gdzie zaczyna się jego fala, i patrz, jak skreśla jego wielokrotności - już skreślone są tylko dotykane. Obok pi(x) policzone wobec przybliżeń x/ln x i Li(x).

RSA na małych liczbach — Obraz z aplikacji

Math

RSA na małych liczbach

Wiadomość przechodzi przez dwie potęgi modularne na stole z drewna i mosiądzu. Wykonuj kroki całkowitoliczbowe, badaj permutację i szukaj dzielnika z dokładnym licznikiem.

Hasze i kubełki — Obraz z aplikacji

Math

Hasze i kubełki

Stół sortowniczy: klucze to papierowe przywieszki, wózek liczy hasz każdej i wrzuca ją do kubełka o numerze hasza, a kolizja to dwa różne klucze w jednym kubełku. Hasz to nazwana funkcja – suma kodów, wielomian o podstawie 31, FNV-1a – albo jednostajna wyrocznia stojąca za krzywą urodzin. Zmień klucz, obejrzyj jego hasz liczony znak po znaku, odwróć jeden bit i policz zmienione bity hasza; porównaj dwie funkcje na tych samych kluczach.