Metoda ćakrawala

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Metoda ćakrawala (चक्रवाल विधि) – algorytm pozwalający rozwiązywać nieoznaczone równania kwadratowe, w tym równanie Pella. Przypisywana jest zazwyczaj Bhaskarze II (ok. 1114–1185)[1][2], choć niektórzy przypisują ją Dźajadewie (ok. 950–1000)[3]. Jayadeva odkrył, że metoda Brahmagupty rozwiązywania tego typu równań może być uogólniona, a następnie opisał ogólny proces, który został dopracowany przez Bhaskarę II w pracy Bidźaganita. Algorytm został nazwany metodą ćakrawala od słowa ćakra, oznaczającego koło w sanskrycie, co odnosi się do jego cyklicznej natury[4]. E.O. Selenius stwierdził, że żadne z ówczesnych, ani późniejszych dokonań matematyki europejskiej nie dorównuje potędze matematycznej złożoności metody Bhaskary[1][4].

Metoda znana jest także jako metoda cykliczna i zawiera ślady indukcji matematycznej[5].

Historia

Brahmagupta w 628 r. n.e. badał nieoznaczone równania kwadratowe, w tym równanie Pella

x2=Ny2+1,

dla całkowitych wartości x i y. Brahmagupta potrafił rozwiązać je dla wielu, choć nie wszystkich wartości N.

Dźajadewa (IX wiek) i Bhaskara (XII wiek) zaproponowali pierwsze pełne rozwiązanie powyższego równania, używając metody ćakrawala do rozwiązania przypadku N=61:

x=1766319049 i y=226153980.

Równanie to zostało po raz pierwszy rozwiązane w Europie przez Williama Brounckera w latach 1657–1658 w odpowiedzi na wyzwanie rzucone przez Fermata. W całości metoda została po raz pierwszy opisana przez Lagrange’a w 1766[6]. Metoda Lagrange’a wymagała obliczania dwudziestu jeden kolejnych rozwinięć ułamka łańcuchowego pierwiastka z 61, podczas gdy metoda ćakrawala jest znacznie prostsza. Selenius, ocenia metodę ćakrawala, mówiąc:

„Metoda ta jest najkrótszym i najlepiej przybliżającym algorytmem, który, dzięki swoim właściwościom, przy minimalnym wysiłku i bez potrzeby obliczania dużych liczb, podaje najlepsze rozwiązanie równania. Metoda ćakrawala wyprzedziła metody europejskie o ponad tysiąc lat. Żadne europejskie osiągnięcie na polu algebry w czasach późniejszych niż czasy Bhaskary nie może się równać cudownej złożoności i pomysłowości tej metody”[1][4].

Hermann Hankel nazywa metodę ćakrawala

„najdoskonalszym wynikiem w teorii liczb przez Lagrangem”[7].

Opis metody

Metoda ćakrawala pozwala rozwiązywać równanie Pella dzięki użyciu tożsamości Brahmagupty:

(x12Ny12)(x22Ny22)=(x1x2+Ny1y2)2N(x1y2+x2y1)2.

Pozwala to „łączyć” (samāsa) dwie trójki (x1,y1,k1) i (x2,y2,k2) będące rozwiązaniami równania

x2Ny2=k,

aby wygenerować nową trójkę:

(x1x2+Ny1y2,x1y2+x2y1,k1k2).

W metodzie ogólnej łączy się dowolną trójkę (a,b,k) będącą znanym rozwiązaniem a2Nb2=k z trójką trywialną (m,1,m2N) uzyskując nową trójkę (am+Nb,a+bm,k(m2N)) z parametrem m. Równanie z nowo uzyskaną trójką dzieli się przez k2 (przekształcenie to nosi nazwę lematu Bhaskary):

a2Nb2=k(am+Nbk)2N(a+bmk)2=m2Nk,

lub, ponieważ znaki wyrażeń wewnątrz nawiasów nie grają roli,

(am+Nb|k|)2N(a+bm|k|)2=m2Nk.

Otrzymana nowa trójka liczb niekoniecznie jest całkowita. Jeśli jednak wystartowaliśmy od względnie pierwszych a i b (tj. takich, że NWD(a,b)=1) i wybierzemy całkowite m tak, aby a+bmk było całkowite, to wtedy pozostałe dwa wyrażenia am+Nbk i m2Nk także będą całkowite.

Ze wszystkich odpowiadających m wybiera się takie, aby wartość bezwzględna m2N była najmniejsza. Wtedy trójkę (a,b,k) zastępuje się nową trójką uzyskaną z tego równania i cały proces zaczyna się od nowa, aż do momentu uzyskania trójki, dla której k=1. Lagrange w 1768 roku udowodnił, że taki algorytm zawsze się zakończy[8]. Brahmagupta znalazł również rozwiązania w przypadkach, gdy k wynosi ±1, ±2, or ±4, na których można zakończyć algorytm.

Przykłady

Znajdźmy w liczbach całkowitych rozwiązanie równania

x27y2=1.

W pierwszym kroku znajdujemy znaną trójkę (a,b,k) spełniającą równanie a27b2=k. Zauważmy, że

22712=3.

Trójkę (2, 1, -3) łączymy z trójką trywialną, uzyskując:

(2m1+73)27(2+m13)2=m1273.

Wybierając m1=1 uzyskujemy trójkę (3,1,2). Powtarzając algorytm otrzymujemy kolejne równanie:

(3m2+72)27(3+m22)2=m2272.

Wybierając m2=3 ostatecznie otrzymujemy trójkę (8,3,1), co oznacza, że

82732=1.

Przypadek n=61

Znalezienie rozwiązań całkowitych równania

a261b2=1,

ustanowione przez Fermata jako wyzwanie, zostało podane przez Bhaksarę jako przykład[8].

Rozpoczynamy od znalezienia rozwiązania równania

a261b2=k.

Przyjmując b równe 1, uzyskujemy trójkę (8,1,3). Łącząc ją z trójką trywialną (m,1,m261), otrzymujemy (8m+61,8+m,3(m261)), która z lematu Bhaskary przekształcana jest do postaci:

(8m+613,8+m3,m2613).

Aby 3 dzieliło 8+m i m261 było najmniejsze, wybieramy m=7, uzyskując trójkę (39,5,4). Ponieważ k=4, możemy użyć pomysłu Brahmagupty, dzieląc uzyskaną trójkę przez 4, sprowadzając ją do postaci (392, 52, 1), która po połączeniu dwa razy z sobą samą daje (15232, 1952, 1), a następnie (29718, 3805, 1).

W końcu łączy się dwie kopie trójki (29718, 3805, 1), otrzymując (1766319049, 226153980, 1). Jest to najmniejsze rozwiązanie całkowite.

Przypadek n=67

Przypuśćmy, że chcielibyśmy rozwiązać równanie

x267y2=1

dla x i y[9].

Rozpoczynamy od pewnego rozwiązania równania

a267b2=k.

Możemy przyjąć b=1, otrzymując

826712=3.

W każdym kroku algorytmu znajdziemy m>0 takie, że k dzieli a+bm i |m2N| jest najmniejsze, a następnie zastąpimy trójkę (a,b,k) przez trójkę

am+Nb|k|,a+bm|k|,m2Nk.

W pierwszej iteracji otrzymujemy (a1,b1,k1)=(8,1,3). Chcemy znaleźć dodatnie m takie, że k1 dzieli a1+mb1, tj. 3 dzieli 8+m, i |m267| jest minimalne. Pierwszy warunek mówi, że m jest postaci 3t+1 (np. 1, 4, 7, 10,... itd.), a najmniejsza wartość wyrażenia zachodzi dla m=7. Z trójki (a1,b1,k1) otrzymujemy nową:

a2=(87+671)3=41,b2=(8+17)3=5,k2=(7267)(3)=6.

Otrzymujemy więc nowe rozwiązanie:

41267(5)2=6.

Pierwsza część cyklicznego algorytmu jest zakończona.

Druga iteracja

Teraz powtarzamy proces: mamy a2=41,b2=5,k2=6. Chcemy znaleźć takie m>0, że k2 dzieli a2+mb2, tzn. 6 dzieli 41+5m, i |m267| jest minimalne. Pierwszy warunek mówi nam, że m jest postaci 6t+5 (np. 5, 11, 17,...), a wartość |m267| jest najmniejsza dla m=5. W podobny sposób jak poprzednio otrzymujemy nowe rozwiązanie (a3,b3,k3)=(90,11,7) równania:

90267112=7.
Trzecia iteracja

Aby 7 dzieliło 90+11m, musi zachodzić m=2+7t(m=2,9,16,), a z takich m, wybieramy m=9, otrzymując kolejną trójkę (a4,b4,k4)=(221,27,2) spełniającą równanie

221267272=2.
Rozwiązanie końcowe

Moglibyśmy powtarzać metodę cykliczną (która zakończyłaby się po siedmiu iteracjach), ale ponieważ prawa strona równania jest równa jednej z liczb ±1, ±2, ±4, możemy użyć obserwacji Brahmagupty: łącząc trójkę (221,27,2) z sobą samą, otrzymujemy

(2212+672722)267(22127)2=1,

czyli rozwiązanie w liczbach całkowitych równania:

4884226759672=1.

Dzięki niemu otrzymujemy również przybliżenie

67488425967,

z dokładnością rzędu ok. 2×109.

Przypisy

Szablon:Przypisy

Bibliografia

  • Florian Cajori (1918), Origin of the Name „Mathematical Induction”, „The American Mathematical Monthly25 (5), s. 197–201.
  • George Gheverghese Joseph, The Crest of the Peacock: Non-European Roots of Mathematics (1975).
  • G.R. Kaye, Indian Mathematics, „Isis” 2:2 (1919), s. 326–356.
  • C.O. Selenius, Rationale of the chakravala process of Jayadeva and Bhaskara II, „Historia Mathematica” 2 (1975), s. 167–184.
  • C.O. Selenius, Kettenbruch theoretische Erklarung der zyklischen Methode zur Losung der Bhaskara-Pell-Gleichung, „Acta Acad. Abo. Math. Phys.” 23 (10) (1963).
  • Hoiberg, Dale & Ramchandani, Indu (2000). Students’ Britannica India. Mumbai: Popular Prakashan. Szablon:ISBN.
  • Goonatilake, Susantha (1998). Toward a Global Science: Mining Civilizational Knowledge. Indiana: Indiana University Press. Szablon:ISBN.
  • Kumar, Narendra (2004). Science in Ancient India. Delhi: Anmol Publications Pvt Ltd. Szablon:ISBN.
  • Ploker, Kim (2007) „Mathematics in India”. The Mathematics of Egypt, Mesopotamia, China, India, and Islam: A Sourcebook New Jersey: Princeton University Press. Szablon:ISBN.
  • Szablon:Cytuj książkę

Linki zewnętrzne

  1. 1,0 1,1 1,2 Hoiberg & Ramchandani – Students’ Britannica India: Bhaskaracharya II, s. 200.
  2. Kumar, s. 23.
  3. Plofker, s. 474.
  4. 4,0 4,1 4,2 Goonatilake, s. 127, 128.
  5. Cajori (1918), s. 197

    „Metoda dowodzenia zwana „indukcją matematyczną” narodziła się w wielu miejscach jednocześnie. Została znaleziona u Szwajcara Jakuba Bernoulliego, Francuza B. Pascala i P. Fermata i Włocha F. Maurolycusa [...] Jeśli wgłębić się w lekturę można odnaleźć ją wcześniej, w dziełach indyjskich i greckich, między innymi w „cyklicznej metodzie” Bhaskary i w dowodzie Euklidesa o tym, że zbiór liczb pierwszych jest nieskończony.”

    .
  6. Szablon:MacTutor
  7. Kaye (1919), s. 337.
  8. 8,0 8,1 Szablon:Cytuj książkę
  9. Przykład podany w tej sekcji (przy oznaczeniach Qn na k, Pn na m itd.) można znaleźć w: Szablon:Cytuj książkę