Geometryczny dowód twierdzenia Pitagorasa – sam obrazek nie stanowi formalnego dowodu, ale co tam 🙂 .

Matematyka w obrazkach - Twierdzenie Pitagorasa

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

W pierwszych trzech częściach „Zabaw z rekurencją” skupialiśmy się na rekurencji bezpośredniej, tzn. na sytuacji, kiedy w ciele funkcji dochodzi do wywołania „siebie samej”. Przebieg rekurencji bezpośredniej jest dość oczywisty, struktura wywołania, argumenty, jak też warunek stopu, są takie same dla wszystkich odwołań.

Rekurencja pośrednia

O rekurencji pośredniej mówimy w sytuacji „łańcucha wywołań”. Przykładowo funkcja f(.) wywołuje funkcję g(.), następnie funkcja g(.) wywołuje f(.), zatem ponowne wywołanie funkcji f(.) realizowane jest bezpośrednio przez funkcję g(.), jednak pośrednio przez f(.), gdyż to f(.) wywołała g(.).

Typy rekurencji

Długość łańcucha nie musi być ograniczona, w rzeczywistości wywołania pośrednie mogą mieć nietrywialną strukturę, mogą „cofać się” do poprzednich elementów, „iść na skróty”, „rozdzielać się”, a w szczególności może dochodzić do wariantów mieszanych – tzn. wywołań bezpośrednich i pośrednich (różnego typu) w ramach jednej procedury. Dobrze to obrazuje poniższy schemat.

Rekurencja pośrednia

Aproksymacja funkcji sin(x) oraz cos(x) przy wykorzystaniu połączenia rekurencji bezpośredniej i rekurencji pośredniej

Przypomnijmy podstawowe tożsamości trygonometryczne dla wielokrotności kątów.

$$\sin(2x)=2\sin(x)\cos(x)$$

$$\cos(2x)=\cos^2(x)-\sin^2(x)$$

Równoważnie powyższe można zapisać jako

$$\sin(x)=2\sin\big(\frac{x}{2}\big)\cos\big(\frac{x}{2}\big)$$

$$\cos(x)=\cos^2\big(\frac{x}{2}\big)-\sin^2\big(\frac{x}{2}\big)$$

Zwróćmy uwagę, że znając rozwiązanie dla argumentu mniejszego $\frac{x}{2}$ możemy podać rozwiązanie dla $x$ – zatem tożsamości trygonometryczne są w istocie rekurencją z odwołaniami bezpośrednimi i pośrednimi! Funkcję $\sin(x)$ w otoczeniu $0$ można przybliżyć przez $x$, natomiast funkcję $\cos(x)$ przez stałą wartość $1$. Im mniejsze otoczenie $0$ wybierzemy tym lepsza aproksymacja w zadanym przedziale, a w konsekwencji mniejszy błąd oszacowania w całości. Przyjęte wartości w otoczeniu $0$ dają również pewny warunek stopu! Mamy więc wszystko co niezbędne do zastosowania strategii rekurencyjnej w aproksymacji.

Ustalmy stałą $a>0$ (reprezentującą otoczenie $0$), następnie definiujemy dwie funkcje rekurencyjne

$$\text{s}(x)=\begin{cases}x&\text{dla}\quad |x|<a\\2\text{s}\big(\frac{x}{2}\big)\text{c}\big(\frac{x}{2}\big)&\text{dla}\quad |x|\geq a\end{cases}$$

$$\text{c}(x)=\begin{cases}1&\text{dla}\quad |x|<a\\\text{c}^2\big(\frac{x}{2}\big)-\text{s}^2\big(\frac{x}{2}\big)&\text{dla}\quad |x|\geq a\end{cases}$$

Podkreślmy ponownie, że funkcja $\text{s}(x)$ wywołuje siebie bezpośrednio oraz wskazuje na funkcję $\text{c}(x)$, która, oprócz bezpośredniego wywołania siebie samej, wskazuje ponownie na $\text{s}(x)$. Jest to zatem ciekawa kombinacja rekurencji bezpośredniej z rekurencją pośrednią. Zapiszmy to w MathParser.org-mXparser.

/* Definicja funkcji rekurencyjncyh */
Constant a = new Constant(&quot;a = 0.1&quot;);
Function s = new Function(&quot;s(x) =&amp;amp;nbsp; if( abs(x) &amp;amp;lt; a, x, 2*s(x/2)*c(x/2) )&quot;, a);
Function c = new Function(&quot;c(x) =&amp;amp;nbsp; if( abs(x) &amp;amp;lt; a, 1, c(x/2)^2-s(x/2)^2 )&quot;, a);

/* Wskazanie, ze 's' korzysta z 'c', a 'c' korzysta z 's' */
s.addDefinitions(c);
c.addDefinitions(s);

Oczekujemy, że im mniejszy parametr $a>0$ tym lepsza aproksymacja funkcji $\sin(x)$ oraz $\cos(x)$ przez odpowiednio $\text{s}(x)$ oraz $\text{c}(x)$. Poniżej wykresy dla $a=0.5$ oraz $a=0.01$.

Rekurencja pośrednia i bezpośrednia - aproksymacja funkcji sin(x) oraz cos(x)

Rekurencja pośrednia i bezpośrednia - aproksymacja funkcji sin(x) oraz cos(x)

Wniosek – proste zapisy rekurencyjne dają złożone wyniki! 🙂

Rekurencja pośrednia i bezpośrednia – animacja

Pozdrowienia,

Mariusz Gromada

Zobacz również:

  1. Polowanie na czarownice – czyli zabawy z rekurencją (część 1)
  2. Prędkość ucieczki do nieskończoności – czyli zabawy z rekurencją (część 2)
  3. Naiwny test pierwszości – czyli zabawy z rekurencją (część 3)

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Dziś ciekawostka w nawiązaniu do wpisu z dnia 20 października 2015 roku „Liczba PI ukryta w zbiorze Mandelbrota”, ujawniająca nietrywialne powiązanie liczby $\pi$ z prędkością ucieczki do nieskończoności przy zbliżaniu się punktu startu iteracji do „ostrza” zbioru Mandelbrota. Brzmi trochę skomplikowanie? Poniżej wyjaśnienie 🙂

Zbliżanie się do „ostrza” zbioru Mandelbrota

Rozważmy równanie rekurencyjne dla liczb rzeczywistych

$$x_n=\begin{cases}x_{n-1}^2+\frac{1}{4}+\epsilon&\text{dla}\quad n>0\\0&\text{dla}\quad n=0\end{cases}$$

Powyższe wyrażenie powstaje na bazie równania (w liczbach zespolonych) opisującego zbiór Mandelbrota

$$z_n=z_{n-1}^2+c$$

Mandelbrot - Ostrze

Ograniczając się do prostej rzeczywistej (dlatego użyłem zapisu $x_n$) przeanalizujmy zachowanie $x_n$ przy zbliżaniu się elementu $x_1=\frac{1}{4}+\epsilon$ do „ostrza” (ang. „cusp”) zbioru – ostrze to punkt o współrzędnych $(\frac{1}{4},0)$.

Szybkość ucieczki do nieskończoności

Ustalając odpowiednio małe $\epsilon>0$ decydujemy jak bardzo chcemy się zbliżyć do „ostrza”. Teraz zadanie polega na znalezieniu pierwszego $n$, dla którego $x_n>=2$. Takie minimalne $n$ jest dobrą miarą prędkości ucieczki $x_n$ do nieskończoności w zależności od wybranego $\epsilon$. Na marginesie dodam, że zbiór Juli dla równania Mandelbrota (na powyższym obrazku oznaczony kolorem czarnym), reprezentuje punkty „nieuciekające” do nieskończoności w trakcie nieskończonej iteracji . Ta tematyka jest sama w sobie bardzo ciekawa i zapewne kiedyś coś napiszę o atraktorach.

$$x_n=\begin{cases}x_{n-1}^2+\frac{1}{4}+\epsilon&\text{dla}\quad n>0\\0&\text{dla}\quad n=0\end{cases}$$

$$N_\epsilon=\min\big\{n~|~x_n\ge2\big\}$$

Rekurencja na rekurencji

W celu poszukiwania rozwiązania zapisujemy zadanie wykorzystując rekurencję

$$N(n,\epsilon)=\begin{cases}N(n+1,\epsilon)&\text{dla}\quad x_n<2\\n&\text{dla}\quad x_n>=2\end{cases}$$

Nietrudno zauważyć, że zdefiniowaliśmy rekurencję na rekurencji. To zły znak dla wydajności.

Test w MathParser.org-mXparser

/* Definicja funkcji rekurencyjnej */
Function x = new Function(&quot;x(n, eps) = if( n &amp;amp;gt; 0, x(n-1, eps)^2 + 0.25 + eps, 0 )&quot;);
Function N = new Function(&quot;N(n, eps) = if( x(n, eps) &amp;amp;gt;= 2, n, N(n+1, eps) )&quot;, x);

/* Obliczenia i wyświetlenie wyniku */
mXparser.consolePrintln( &quot;eps = 0.01&quot; + &quot;, N(0, eps) = &quot; + N.calculate(0, 0.01) + &quot;, czas = &quot; + N.getComputingTime() + &quot; s&quot; );
mXparser.consolePrintln( &quot;eps = 0.0001&quot; + &quot;, N(0, eps) = &quot; + N.calculate(0, 0.0001) + &quot;, czas = &quot; + N.getComputingTime() + &quot; s&quot; );
mXparser.consolePrintln( &quot;eps = 0.000001&quot; + &quot;, N(0, eps) = &quot; + N.calculate(0, 0.000001) + &quot;, czas = &quot; + N.getComputingTime() + &quot; s&quot; );
mXparser.consolePrintln( &quot;eps = 0.00000001&quot; + &quot;, N(0, eps) = &quot; + N.calculate(0, 0.00000001) + &quot;, czas = &quot; + N.getComputingTime() + &quot; s&quot; );

+ wyczekiwany wynik

eps = 0.01, N(0, eps) = 30.0, czas = 0.224 s
eps = 0.0001, N(0, eps) = 312.0, czas = 1.532 s
eps = 0.000001, N(0, eps) = 3140.0, czas = 37.343 s
eps = 0.00000001, N(0, eps) = 31414.0, czas = 4068.338 s

Wzorzec prędkości ucieczki

$$\epsilon=\frac{1}{10}\Rightarrow N_\epsilon=30$$

$$\epsilon=\frac{1}{1000}\Rightarrow N_\epsilon=312$$

$$\epsilon=\frac{1}{100000}\Rightarrow N_\epsilon=3140$$

$$\epsilon=\frac{1}{10000000}\Rightarrow N_\epsilon=31414$$

WOW! Jaki super wzorzec liczby wymaganych iteracji, aby przekroczyć 2! Dostajemy coś, co przypomina $\pi$, jednak wymaga postawienia „przecinka” w odpowiednim miejscu! Można również zauważyć, że 100-krotne zmniejszenie $\epsilon$ zwiększa niezbędną liczbę iteracji około 10-krotnie. Zmniejszając $\epsilon$ otrzymujemy liczbę coraz bardziej „przypominającą” $\pi$ 🙂

Zbiór Mandelbrota

Pozdrowienia,

Mariusz Gromada

Zobacz również:

  1. Polowanie na czarownice – czyli zabawy z rekurencją (część 1)
  2. Naiwny test pierwszości – czyli zabawy z rekurencją (część 3)
  3. Rekurencja pośrednia – czyli zabawy z rekurencją (część 4)
  4. Liczba PI ukryta w zbiorze Mandelbrota

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Okres średniowiecza, kobieta winna uprawiania magii, kara straszna – spalenie na stosie! Nadszedł dzień, tłum gawiedzi, czarownica na stosie, płomienie, wiedźma krzyczy – więcej drewna! Więcej drewna! Tłum zdziwiony, mimo wszystko spełnia ostatnie życzenie opętanej. Wiedźma nie przerywa – jeszcze więcej drewna! Więcej drewna! Z oddali dobiega nagły i stanowczy sprzeciw – STOP! Czarownica chce przepełnić stos!

🙂

Czarownica na stosie

Czym jest rekurencja?

Zazwyczaj o rekurencji myślimy jako o procesie podziału zadania na mniejsze, następnie podziału na jeszcze mniejsze, i jeszcze mniejsze … dochodząc do zadań, dla których rozwiązanie jest znane. Od tego momentu zaczyna się składanie „mniejszych” rozwiązań w „większe”, następnie tych większych w jeszcze większe, … i w jeszcze większe … kończąc na rozwiązaniu zadania początkowego. Dla przykładu zapiszmy funkcję n! w postaci rekurencyjnej.

$$n!=\begin{cases}n\cdot(n-1)!&\text{dla}\quad n>0\\1,&\text{dla}\quad n=0\end{cases}$$

W celu zobrazowania reprezentacja powyższego podana w mXparser:

/* Definicja funkcji rekurencyjnej */
Function silnia = new Function(&quot;s(n) = if( n&amp;amp;gt;0, n*s(n-1), 1 )&quot;);

/* Obliczenia i wyświetlenie wyniku */
System.out.println( &quot;n = 0, s(n) = &quot; + silnia.calculate(0) );
System.out.println( &quot;n = 1, s(n) = &quot; + silnia.calculate(1) );
System.out.println( &quot;n = 2, s(n) = &quot; + silnia.calculate(2) );
System.out.println( &quot;n = 3, s(n) = &quot; + silnia.calculate(3) );
System.out.println( &quot;n = 4, s(n) = &quot; + silnia.calculate(4) );
System.out.println( &quot;n = 5, s(n) = &quot; + silnia.calculate(5) );

+ wynik:

n = 0, s(n) = 1.0
n = 1, s(n) = 1.0
n = 2, s(n) = 2.0
n = 3, s(n) = 6.0
n = 4, s(n) = 24.0
n = 5, s(n) = 120.0

Wynik jest zgodny z oczekiwanym. Innym przykład rekurencji to iterowany operator sumowania, niech

$$A_n=a_1+a_2+\ldots+a_n=\sum_{i=1}^n a_i$$

Łatwo zauważyć, że

$$A_n=\begin{cases}a_n+A_{n-1},&\text{dla}\quad n>1\\a_1,&\text{dla}\quad n=1\end{cases}$$

Jak widać, rekurencja jest powszechna, często będąc nieco innym sposobem patrzenia na iteracje.

Formalna definicja rekurencji

O rekurencji mówimy jeśli metoda (funkcja, zachowanie, obiekt) może być opisana przez:

  1. elementy bazowe / rozwiązania bazowe;
  2. zestaw reguł, które redukuję (sprowadzają) każdy inny przypadek do (w kierunku) elementów bazowych.

Rekurencja
Powyższe określenie jest szerokie, ale takie być musi, bo i typów rekurencji jest wiele.

Rekurencja jako złożenie funkcji

Jednym (ale nie jedynym) sposobem zapisu ogólnych równań rekurencyjnych jest złożenie funkcji:

$$f_n=\begin{cases}F\big(f_{n-1},f_{n-2},\ldots,f_{n-k}\big)&\text{dla}\quad n>k\\f_1,f_2,\ldots,f_k&\text{el. baz. dla}\quad n<=k\end{cases}$$

Dobrą ilustracją powyższego jest ciąg Fibonacciego:

$$f_n=\begin{cases}0&\text{dla}\quad n=0\\1&\text{dla}\quad n=1\\f_{n-1}+f_{n-2}&\text{dla}\quad n>1\end{cases}$$

Zapiszmy ciąg Fibonacciego w mXparser:

/* Definicja funkcji rekurencyjnej */
Function fib = new Function(&quot;fib(n) = if( n&amp;amp;gt;1, fib(n-1)+fib(n-2), if(n=1,1,0) )&quot;);

/* Obliczenia i wyświetlenie wyniku */
System.out.println( &quot;fib(0) = &quot; + fib.calculate(0) );
System.out.println( &quot;fib(1) = &quot; + fib.calculate(1) );
System.out.println( &quot;fib(2) = &quot; + fib.calculate(2) );
System.out.println( &quot;fib(3) = &quot; + fib.calculate(3) );
System.out.println( &quot;fib(4) = &quot; + fib.calculate(4) );
System.out.println( &quot;fib(5) = &quot; + fib.calculate(5) );

+ rezultat:

fib(0) = 0.0
fib(1) = 1.0
fib(2) = 1.0
fib(3) = 2.0
fib(4) = 3.0
fib(5) = 5.0

Rekurencja w roli pętli „For”

Podane wyżej przykłady zapisów rekurencyjnych (n!, suma n-pierwszych wyrazów ciągu, ciąg Fibonacciego) są tak naprawdę rekurencyjną realizacją pętli „for” – znamy przecież dokładnie liczbę niezbędnych operacji do wykonania, a i same operacje są raczej łatwe oraz czytelne – zatem zagnieżdżenie ich w pętli „for” nie powinno spowodować utraty przejrzystości kodu.

Poszukiwanie rozwiązania – czyli rekurencja w roli pętli „While/Until”

W metodach numerycznych często stosuje się strategie rekurencyjne – w takiej sytuacji, będąc w kroku $n$, weryfikujemy czy propozycja rozwiązania $n$ spełnia kryterium stopu (np. jakość oszacowania), jeśli tak – kończymy z rozwiązaniem $n$, jeśli nie – przechodzimy do badania propozycji rozwiązania $n+1$. Procedurę rozpoczynamy od kroku 0 (zerowego).

Przykład: znając definicję silni chcemy znaleźć pierwsze $n$, dla którego $n! >= 100$ – takie zadanie formalnie możemy zapisać jako:

$$S_n=\begin{cases}S_{n+1},&\text{dla}\quad n!<100\\n,&\text{dla}\quad n!>=100\end{cases}$$

$$n_{100} = S(0)$$

Reprezentacja w mXparser:

/* Definicja funkcji rekurencyjnej */
Function S = new Function(&quot;S(n) = if( n! &amp;amp;lt; 100, S(n+1), n )&quot;); /* Obliczenia i wyświetlenie wyniku */ System.out.println( &quot;Pierwsze n, że n! &amp;amp;gt;= 100 to n = &quot; + S.calculate(0) );

+ wynik:

Pierwsze n, że n! &amp;amp;gt;= 100 to n = 5.0

Rekurencja bezpośrednia

Wszystkie omawiane wyżej typy rekurencji polegają na wywołaniu z ciała funkcji „siebie samej”, dlatego należą do bardziej ogólnej klasy nazywanej rekurencją bezpośrednią.

Wydajność

Implementacje na bazie rekurencji są bardzo czytelne, o często minimalnym rozmiarze kodu. Jednak coś za coś – tracimy bardzo dużo na złożoności obliczeniowej (powtarzane operacje, dzielenie zadań, operacje na stosie) oraz wymogach pamięci (głównie struktura stosu) – to właśnie dlatego czarownica błagała o drewno – licząc na przerwanie procesu z tytułu przepełnienia stosu 🙂

Cdn 🙂

Pozdrowienia,

Mariusz Gromada

Zobacz również:

  1. Prędkość ucieczki do nieskończoności – czyli zabawy z rekurencją (część 2)
  2. Naiwny test pierwszości – czyli zabawy z rekurencją (część 3)
  3. Rekurencja pośrednia – czyli zabawy z rekurencją (część 4)

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Wiek i rozmiar Wszechświata

Wpis z dnia 6 listopad 2015 „Precyzja liczby Pi a obwód obserwowalnego Wszechświata” zawierał nieco zaskakującą informację na temat rozmiaru Obserwowalnego Wszechświata – tzn. podałem, że promień Obserwowalnego Wszechświata wynosi obecnie około 46 miliardów lat świetlnych, co się wydaje być w niezgodzie z wiekiem Wszechświata szacowanym na 13,8 miliarda lat. Pokusiłem się wtedy o kilkuzdaniowe wyjaśnienie różnicy, teraz wracam do tematu prezentując materiał z serwisu YouTube, który w jasny i przejrzysty sposób ilustruje zagadnienia: rozmiaru Wszechświata (nie tylko w odniesieniu do jego obserwowalnej części), centrum Wszechświata oraz stożków świetlnych. Gorąco polecam!

„How Big is the Universe?” od MinutePhysics

„Radius of Observable Universe” (+ polskie napisy) od Khan Academy

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Obserwowalny Wszechświat

Znana obecnie (06.11.2015) precyzja liczby Pi

Alexander J. Yee i Shigeru Kondo w grudniu 2013 roku wyznaczyli liczbę Pi z dokładnością do ponad 12 bilionów cyfr – zdumiewająca precyzja! Dalszych obliczeń zaniechano w związku z wyczerpaniem się przestrzeni dyskowej. W poniższym tekście chciałbym przybliżyć co tak wielka dokładność może oznaczać w praktyce.

Obwód obserwowalnego Wszechświata

Rozważmy rozmiar Obserwowalnego Wszechświata zadając pytanie jakiej precyzji liczby Pi potrzeba do wyznaczenia jego obwodu z dokładnością rzędu 1 atomu wodoru? Promień walencyjny wodoru to 37 pm = 3.7×10 ‾¹¹ m. Rozmiar Obserwowalnego Wszechświata to suma odległości jaką światło przebyło od momentu Wielkiego Wybuchu (13.8 miliarda lat świetlnych) oraz dystansu, o jaki oddaliły się (przez ten okres) najodleglejsze galaktyki. Obecnie szacowana średnica Obserwowalnego Wszechświata to 92 miliardy lat świetlnych.

Promień obserwowalnego Wszechświata

Promień rzędu 46 miliardów lat świetlnych zdaje się sugerować, że oddalanie się galaktyk musiało się odbywać z prędkością większą niż prędkość światła. „Oddalanie się galaktyk” to uproszczenie myślowe – faktyczne oddalanie się jest konsekwencją ekspansji Wszechświata, która to jest rozszerzaniem się przestrzeni. Wielki Wybuch jest momentem rozpoczęcia ekspansji, czyli początkiem rozszerzania się przestrzeni. Fotony, które teraz obserwujemy, „leciały” do nas 13.8 miliarda lat, ale w momencie kiedy „startowały” to punkt startu i punkt docelowy były znacznie bliżej siebie. Wraz z podróżą fotonu przestrzeń się rozszerzała sprawiając, że przebyta droga była dłuższa, jak i dłuższa (niż początkowo) jest droga jeszcze „do przebycia”. Niezgodność z zasadą niemożliwości przekroczenia prędkości światła jest w tym przypadku pozorna, gdyż to sama przestrzeń (i jej współrzędne) się rozszerzają, co jest wyrażone w odpowiednim zakrzywieniu czaso-przestrzeni opisywanej w Ogólnej Teorii Względności. O samej prędkości światła też jest wygodniej myśleć jako o prędkości „przyczynowo-skutkowości”, wtedy łatwiej jest zrozumieć idee stożków świetlnych, etc. A jeszcze lepiej przyjąć c = 1 🙂

No to liczymy 🙂

  • Prędkość światła w próżni w przybliżeniu to $c = 3 \times 10^8 \frac{m}{s}$
  • Rok świetlny w przybliżeniu to $9.46 \times 10^{15} m$
  • 46 miliardów lat świetlnych w przybliżeniu to $4.35 \times 10^{26} m$
  • Obwód koła o takim promieniu to około $2.73 \times 10^{27} m$
  • Zatem dokładność o rząd mniejszą niż rozmiar atomu wodoru uzyskamy przy wykorzystaniu 27 + 11 + extra 1 = 39 cyfr liczby Pi.

To niesamowite, że jedynie 39 cyfr liczby Pi wystarczy do osiągnięcia tak niezwykłej dokładności obliczeń dla obrzeży Obserwowalnego Wszechświata – 39 (=3.141592653589793238462643383279502884197) z poznanych 12 bilionów!

Na zakończenie filmik od Numberphile przedstawiający wyżej opisany problem.

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Benoit Mandelbrot

Benoit Mandelbrot

Benoit Mandelbrot (1924-2010) – twórca geometrii fraktalnej, „właściciel” prawdopodobnie najsławniejszego zbioru w matematyce – urodził się w Polsce! Przyszedł na świat w roku 1924 w Warszawie. Był dzieckiem rodziny żydowskiej, która w roku 1936 wyemigrowała do Francji, co prawdopodobnie ocaliło ich życie. Mandelbrot we Francji dołączył do swojego stryja – Szolema Mandelbrojta, również polskiego matematyka, ucznia Jacques’a Hadamarda i członka grupy Burbakiego – to Szolem wprowadził Benoit’a w świat matematyki. Mandelbrot miał niesamowitą zdolność rozwiązywania problemów poprzez wizualizację, co w tamtych czasach było niespotykane (np. grupa Burbakiego propagowała podejście niemal wyłącznie analityczne).

Historia Mandelbrota będzie z pewnością tematem osobnego wpisu, gdzie bliżej przedstawię wyniki jego prac, szczególnie te nad systemami funkcji iterowanych oraz pojęciem wymiaru fraktalnego.

Zbiór Mandelbrota

Benoit Mandelbrot – wywiad dla bigthink.com.

Zapraszam do obejrzenia wywiadu, którego Mandelrbrot udzielił dla bigthink.com.

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

https://youtu.be/YSOZPiXw6CY
I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
https://youtu.be/XTOjmucEAsw
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Wszyscy doskonale znają twierdzenie Pitagorasa, jednak już znaczna mniejszość jest świadoma jego bardzo ciekawego uogólnienia, wyrażonego poniższym schematem.

Uogólnione twierdzenie Pitagorasa

Samo uogólnienie nie ogranicza się do półkoli, jest prawdziwe dla całej klasy kształtów pozostających w relacji podobieństwa, gdzie skale podobieństwa są wyrażone długościami boków trójkąta prostokątnego.

Uogólnione twierdzenie Pitagorasa

Jeśli trzy figury, względem siebie podobne, posiadają pola powierzchni odpowiednio A, B i C, oraz istnieje figura do tych trzech podobna w takich skalach podobieństwa a, b i c, że a² + b² = c² to A + B = C.

Dowód: Załóżmy, że pole figury podobnej do wskazanych trzech wynosi P. Wiemy, że pole powierzchni figur podobnych zmienia się z kwadratem skali podobieństwa (poza fraktalami, gdzie z reguły ciężko wskazać te o niezerowym polu – ale o nich tu nie mówimy), zatem:

A = P·a²            B = P·b²            C = P·c²

Wtedy

A + B = P·a² + P·b² = P(a² + b²) = P·c² = C

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa

Wielkość nieskończenie mała - Pole koła

Wielkość nieskończenie – geneza powstania

W 17 wieku Newton i Leibniz skonstruowali podstawy rachunku różniczkowego i całkowego. Ich logika opierała się na wykorzystaniu wielkości nieskończenie małej w celu wyznaczenia powierzchni pod krzywą daną równaniem funkcji. Podejście to zakładało istnienie niezerowego elementu nieskończenie małego. Filozof Leibniz poszedł dalej, gdyż ponadto uważał, że cały świat jest zbudowany z tzw. monad, czyli z substancji, które nie mają żadnej postaci, ponieważ są niepodzielne, nie mogą być ani wytworzone ani unicestwione.

Jeszcze przed naszą erą Grecy z sukcesem stosowali metodę wyczerpywania do wyznaczenia pól powierzchni figur geometrycznych. Metoda ta wykorzystywała granice, nie wykorzystywała natomiast wielkości nieskończenie małej. Jednak z metody wyczerpywania wyrosła zasada Cavalieriego, odkryta przez Archimedesa, służąca do wyznaczania objętości brył, która opierała się na argumentacji wielkości niepodzielnej.

Wielkość nieskończenie mała a skala Plancka

Intuicja podpowiada, że wielkość nieskończenie mała powinna być ekstremalnie mała, ale o niezerowym rozmiarze. W świecie praktycznym byłaby to np. wielkość mniejsza od najmniejszej teoretycznie możliwej wielkości do zmierzenia. Np. skala Plancka w fizyce dostarcza teoretycznej granicy pomiaru – nie ma możliwości skonstruowania przyrządu pomiarowego z błędem mniejszym niż skala Plancka, co nie oznacza, że poniżej skali Plancka nic nie istnieje.

Wielkość nieskończenie mała – cykl filmów od Numberphile

Numberphile logo Zapraszam do ciekawego cyklu filmów przygotowanych przez Numberphile na temat wielkości nieskończenie małych.

I na koniec jeszcze ciekawostka od MinutePhysics – Proof Without Words: The Circle.

Pozdrowienia,

Mariusz Gromada

Paradoks Banacha-Tarskiego

W 1924 roku Stefan Banach i Alfred Tarski sformułowali i udowodnili paradoksalne twierdzenie teorii mnogości o takim podziale jednej kuli na kilka części (skończoną ich liczbę), aby z powstałych elementów można było „skleić” dwie kule o identycznych parametrach jak ta wyjściowa. Podczas operacji „sklejania” wykorzystali jedynie obroty i przesunięcia, bez rozciągania, czy też innych operacji zmieniających kształt! Czyżby matematyka znalazła naukowe uzasadnienie dla Cudownego rozmnożenia chleba w Galilei? Jeśli chcesz poznać odpowiedź polecam film przygotowany przez Vsauce Vsauce

Jak zwykle zachęcam do dyskusji i komentarzy 🙂

Pozdrowienia,

Mariusz Gromada

Poza Liczbami: Inne Twórcze Przestrzenie

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury

Matematyka i muzyka są ściśle powiązane przez rytm, harmonię i struktury, które wykorzystują matematyczne wzory i proporcje do tworzenia estetycznych i emocjonalnych doznań. Z nieśmiałą ekscytacją przedstawiam moją pierwszą poważniejszą kompozycję, w której starałem się uchwycić te połączenia.

I Am Here – RELEARN – Mariusz Gromada (2024)
I Am Here – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)
Deep Under – RELEARN – Mariusz Gromada (2024)

Scalar – zaawansowana aplikacja mobilna z silnikiem matematycznym mojego autorstwa