🔺 Pascal's Triangle mod p
Compute binomial coefficients C(n,k) modulo a small prime and colour each cell by its residue. Mod 2 reveals the Sierpinski triangle exactly, by Lucas' theorem — other primes reveal their own self-similar fractal patterns.
Podobne symulacje
O tej symulacji
To narzędzie buduje trójkąt Pascala wiersz po wierszu, wykorzystując rekurencję C(n,k) = C(n-1,k-1) + C(n-1,k), ale zamiast pozwolić liczbom rosnąć bez ograniczeń, każde dodawanie jest redukowane modulo mała liczba pierwsza p. Wynikiem nie jest już trójkąt ogromnych liczb całkowitych — to trójkąt zaledwie p możliwych reszt, a gdy te reszty są kolorowane, pojawia się uderzająco regularny fraktal. Dla p = 2 wzór jest dokładnie trójkątem Sierpińskiego, konsekwencją twierdzenia Lucasa o współczynnikach dwumianowych modulo liczba pierwsza.
🔬 Co przedstawia
Każda komórka (n,k) trójkąta zawiera C(n,k) mod p, obliczane za pomocą działającej w miejscu, obrotowej wersji tablicowej rekurencji Pascala, dzięki czemu nawet 256 wierszy oblicza się natychmiast. W trybie fraktalnym reszta 0 pozostaje pusta, a pozostałe p−1 reszt otrzymuje odrębne kolory, ujawniając samopodobne wzory trójkątne powtarzające się w każdej skali.
🎮 Jak korzystać
Przeciągnij suwak wierszy, aby obliczyć więcej lub mniej wierszy, wybierz moduł 2, 3, 5 lub 7, i przełączaj się między kolorowanym widokiem fraktalnym a widokiem dokładnych liczb całkowitych (ograniczonym do 14 wierszy, aby liczby pozostały czytelne). Wypróbuj każdy z trzech schematów kolorów, aby zobaczyć strukturę reszt inaczej.
💡 Czy wiesz, że?
Twierdzenie Kummera mówi, że dokładna potęga p dzieląca C(n,k) równa się liczbie przeniesień przy dodawaniu k i n−k w podstawie p — więc fraktal, który widzisz, jest dosłownie obrazem przenoszenia (lub jego braku) podczas dodawania.
Najczęściej zadawane pytania
Dlaczego trójkąt Pascala mod 2 daje dokładnie trójkąt Sierpińskiego?
Zgodnie z twierdzeniem Lucasa, C(n,k) mod 2 wynosi 1 dokładnie wtedy, gdy każda cyfra binarna k jest mniejsza lub równa odpowiadającej cyfrze binarnej n (równoważnie, k AND n = k). Kolorowanie komórek, dla których to zachodzi, i pozostawienie reszty pustych daje, wiersz po wierszu, dokładnie ten sam rekurencyjny wzór trójkątnych dziur co klasyczna konstrukcja trójkąta Sierpińskiego — nie przybliżenie, lecz dokładne dopasowanie na poziomie bitów.
Co mówi twierdzenie Lucasa?
Twierdzenie Lucasa mówi, że dla liczby pierwszej p, C(n,k) mod p można obliczyć, zapisując n i k w podstawie p cyfra po cyfrze i mnożąc współczynniki dwumianowe odpowiadających sobie cyfr mod p: C(n,k) ≡ ∏ C(ni,ki) (mod p). Jeśli którakolwiek cyfra k przekracza odpowiadającą cyfrę n, jeden z tych czynników wynosi zero, więc cały iloczyn wynosi zero — dlatego właśnie tam, gdzie się pojawiają, są puste (zerowe) komórki.
Dlaczego inne liczby pierwsze, takie jak 3, 5 lub 7, dają inne wzory fraktalne?
Twierdzenie Lucasa stosuje się dla dowolnej liczby pierwszej, ale reguła porównywania cyfr działa w podstawie p, a nie w podstawie 2. Dla p = 3 trójkąt jest podzielony na samopodobny układ kopii w skali 3×3 zamiast 2×2, a możliwych jest więcej klas reszt (0, 1, 2, ...), więc wzór ma bogatsze wewnętrzne kolorowanie i inną symetrię niż ściśle binarny przypadek Sierpińskiego.
Dlaczego oblicza się rekurencję mod p zamiast dokładnego współczynnika dwumianowego?
Prawdziwa wartość C(256,128) ma około 75 cyfr, znacznie przekraczając to, co mieści się w standardowych liczbach całkowitych 32- lub 64-bitowych, i wymagałaby powolnej arytmetyki dowolnej precyzji, aby ją dokładnie obliczyć. Ponieważ potrzebna jest tylko reszta mod p, każdą sumę pośrednią można zredukować z powrotem do liczby między 0 a p−1 na każdym kroku, utrzymując całą arytmetykę w małych, szybkich liczbach całkowitych bez względu na liczbę obliczanych wierszy.
Gdzie jeszcze pojawia się trójkąt Pascala mod p?
Poza tym, że jest to wizualnie uderzający fraktal, współczynniki dwumianowe mod p są kluczowe w kombinatoryce na ciałach skończonych, teorii kodowania i automatach komórkowych (trójkąt Pascala mod 2 jest ściśle powiązany z Regułą 90 w klasyfikacji elementarnych automatów komórkowych Wolframa). Ta sama cyfrowa struktura wynikająca z twierdzenia Lucasa pojawia się także w szybkich algorytmach obliczania współczynników dwumianowych modulo liczba pierwsza w programowaniu konkursowym i kryptografii.
Oblicz współczynniki dwumianowe C(n,k) modulo mała liczba pierwsza i pokoloruj każdą komórkę według jej reszty. Mod 2 ujawnia dokładnie trójkąt Sierpińskiego, zgodnie z twierdzeniem Lucasa — inne liczby pierwsze ujawniają własne samopodobne wzory fraktalne.
2D · HTML5 Canvas 2D · docelowo 60 FPS · działa w całości po stronie klienta, bez instalacji