<aside> ⚠️ 집합의 정의는 그냥 가져왔지만 증명과 성질은 뇌피셜로 증명했으므로 틀릴 수도 있습니다.

</aside>

목표

프랙탈 출력 프로그램을 만들자.

프랙탈의 종류

망델브로 집합 Mandelbrot set

Mandelbrot set - Wikipedia

한국어 판은 이상한 것 같으니 영문을 보자

$$ Z_0 = 0,Z_{n+1} = Z_n^2+C\ (Z, C는\ 복수소)\\ M = \{C:Z_n\ is\ bounded\} $$

즉, $|Z|$가 무한으로 발산하지 않게 하는 상수 C들의 집합이다. (정확한 표현은 아니지만 $\lim\limits_{n\to\infty}\left\vert Z_n\right\vert<\infty$ )

$|Z_n| >2$이면 $Z_n$은 무한대로 발산한다고 할 수 있다.

<aside> 🧾 PROOF 삼각부등식에 의해,

$$ |𝑧_{𝑛+1}|=|𝑧^2_𝑛+𝑐|≥|𝑧_𝑛|^2−|-𝑐|=|𝑧^2_𝑛+𝑐|≥|𝑧_𝑛|^2−|𝑐| $$

$i)\ |Z_n| > |c|$

$$ |𝑧_{𝑛+1}|≥|𝑧_𝑛|^2−|𝑧_𝑛|=|𝑧_𝑛|(|𝑧_𝑛|−1) $$

45F044DE-0FBA-4AE7-AD88-4EE9D874CFBF.jpeg

위의 논리에 따라 $|Z_n| > 2$ 이면 $Z$는 무한으로 발산한다.

그리고 ${\displaystyle c=z_{1}}$이므로 $c \le2$이다.

$ii)\ |Z_n| \le |c|$

$|c| \le2$이므로

$$ |𝑧_{𝑛+1}|≥|𝑧_𝑛|^2−2 $$

71ACD525-BD46-44F4-B098-C9BA44AE9014.jpeg

위와 마찬가지의 논리로 $|Z_n| \le |c|$이면 수렴가능하다.

</aside>

따라서 $|Z_n| >2$이면 $Z_n$은 무한대로 발산 임을 알 수 있다.

사실 위 명제의 역인 $Z_n$은 무한대로 발산하면 $|Z_n| >2$도 알아야 $|Z_n| >2$을 판별 조건으로 쓸 수 있다. 그러나 우리의 목표는 프로그래밍이다. 프로그래밍으로 어차피 무한대까지 계산해 볼 수는 없고 어느정도까지만 계산해볼 것이다.. 따라서 꽤 큰 수의 interate동안에 bounded되기 위한 필요조건이 만족되지 않는 것만 Mandelbrot set에서 제외할 것이다.

줄리아 집합 Julia set

만델브로 집합과 점화식은 동일하다.

$$ Z_{n+1} = Z_n^2+C\ (Z, C는\ 복수소)\\ K= \{Z\in \mathbb{C}:\forall n \in \mathbb{N},|Z_n| \le R\} (R>0\ large\ enough) $$

줄리아 집합은 만델브로 집합과 달리 주어진 C에 대해 bounded되는 Z들의 집합이다.

R값은 만델브로 집합과 마찬가지로 2를 이용할 것이다.