どうも、108Hassiumです。
バーニングシップフラクタルと同じような「 z2+cに絶対値関数を混ぜてできるフラクタル図形」をひたすら紹介する記事、第5弾(内容的には実質第4弾)の続きです。
01110110
☝((|x|+|y|)|x+|y||+a,2|x|y+b)のマンデルブロ集合
☝((|x|+|y|)|x+|y||+a,-2|x|y+b)のマンデルブロ集合
☝((|x|+|y|)|x-|y||+a,2|x|y+b)のマンデルブロ集合
☝((|x|+|y|)|x-|y||+a,-2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)|x+|y||+a,2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)|x+|y||+a,-2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)|x-|y||+a,2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)|x-|y||+a,-2|x|y+b)のマンデルブロ集合01111001
☝((|x|+|y|)||x|+y|+a,2x|y|+b)のマンデルブロ集合
☝((|x|+|y|)||x|-y|+a,-2x|y|+b)のマンデルブロ集合
☝((|x|-|y|)||x|+y|+a,2x|y|+b)のマンデルブロ集合
☝((|x|-|y|)||x|-y|+a,2x|y|+b)のマンデルブロ集合01111010
☝((|x|+|y|)||x|+y|+a,2|x|y+b)のマンデルブロ集合
☝((|x|+|y|)||x|+y|+a,-2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)||x|+y|+a,2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)||x|+y|+a,-2|x|y+b)のマンデルブロ集合01111100
☝((|x|-|y|)||x|-y|+a,2|x|y+b)のマンデルブロ集合
☝((|x|-|y|)||x|-y|+a,-2|x|y+b)のマンデルブロ集合10010111
☝(|x+y||x+|y||+a,2|x||y|+b)のマンデルブロ集合
☝(|x+y||x-|y||+a,2|x||y|+b)のマンデルブロ集合
☝(|x-y||x+|y||+a,2|x||y|+b)のマンデルブロ集合
☝(|x-y||x-|y||+a,2|x||y|+b)のマンデルブロ集合10011011
☝(|x+y|||x|+y|+a,2|x||y|+b)のマンデルブロ集合
☝(|x+y|||x|-y|+a,2|x||y|+b)のマンデルブロ集合
☝(|x-y|||x|+y|+a,2|x||y|+b)のマンデルブロ集合
☝(|x-y|||x|-y|+a,2|x||y|+b)のマンデルブロ集合10011101
☝(|x+y|||x|-|y||+a,2x|y|+b)のマンデルブロ集合
☝(|x-y|||x|-|y||+a,2x|y|+b)のマンデルブロ集合10011110
☝(|x-y|||x|-|y||+a,2|x|y+b)のマンデルブロ集合
☝(|x-y|||x|-|y||+a,-2|x|y+b)のマンデルブロ集合10111001
☝(|x+|y||||x|+y|+a,2x|y|+b)のマンデルブロ集合
☝(|x+|y||||x|+y|+a,-2x|y|+b)のマンデルブロ集合
☝(|x-|y||||x|+y|+a,2x|y|+b)のマンデルブロ集合
☝(|x-|y||||x|-y|+a,2x|y|+b)のマンデルブロ集合10111010
☝(|x+|y||||x|+y|+a,2|x|y+b)のマンデルブロ集合
☝(|x+|y||||x|+y|+a,-2|x|y+b)のマンデルブロ集合
☝(|x-|y||||x|-y|+a,2|x|y+b)のマンデルブロ集合
☝(|x-|y||||x|-y|+a,-2|x|y+b)のマンデルブロ集合10111100
☝(|x+|y||||x|-|y||+a,2xy+b)のマンデルブロ集合
☝(|x+|y||||x|-|y||+a,-2xy+b)のマンデルブロ集合
☝(|x-|y||||x|-|y||+a,2xy+b)のマンデルブロ集合
☝(|x-|y||||x|-|y||+a,-2xy+b)のマンデルブロ集合11011100
☝(||x|+y|||x|-|y||+a,2xy+b)のマンデルブロ集合
☝(||x|+y|||x|-|y||+a,-2xy+b)のマンデルブロ集合親友
以前説明したとおり、この一連の企画で取り上げている関数はいくつかの関数を切って繋ぎ合わせたものになっています。
例えば一番最初に取り上げた(f1(x2−y2)+a,2f2(x)f3(y)+b)という形の関数は、
・・・という4つの関数を、実軸と虚軸とy=x、y=−xで切って繋ぎ合わせた関数になっていました。
構成要素となる関数の組み合わせと切断の仕方は関数族によって異なるのですが、今回の(f1(f2(x)+f3(y))f4(f5(x)+f6(y))+a,2f7(x)f8(y)+b)にも(f1(x2−y2)+a,2f2(x)f3(y)+b)と同じような「±(x±iy)2+cを8分割して繋いだ関数」が含まれています。
☝例:(-|x-y|(x+y)+a,2xy+b)実は今回の(f1(f2(x)+f3(y))f4(f5(x)+f6(y))+a,2f7(x)f8(y)+b)の調査を始めたのには、こういう関数を見つけたいという理由もありました。(もちろん「(f1(f2(x)+f3(y))f4(f5(x)+f6(y))+a,2f7(x)f8(y)+b)系マンデルブロ集合を全部見たい」も理由の一つです)
というわけで、±(x±iy)2+cを8分割して繋いだ関数のパターン数を計算してみます。
※以下、「±(x±iy)2+cを(略)」のマンデルブロ集合を「親友」と呼びます。
以前、こんな図を載せたことがあります。

切断線上での関数の値を計算し、どの関数がどこで繋がるかをまとめた図です。
この図をもとに、更にこんな図を作成しました。

これは8個の関数を手動で選ぶときに可能な選び方を表す経路図で、左端から黒い線を辿って右に移動してスタートとゴールが同じ色になるルートを作ると、それが親友の生成関数1つと対応します。
☝例:(-|x-y|(x+y)+a,2xy+b)に対応する経路と対応関係さて、この図を用いると以下のように「特定の色から始まる親友」を数え上げることができます。
☝赤から始まる親友の数え上げまずスタート地点に「1」を書き込み、他のマスには「左からそのマスに直行できるようなマスに書いてある数字の合計」を書き込みます。
このとき、各マスに書き込まれる数字は「スタート地点からそのマスに移動する経路のパターン数」になり、ゴールのマスに書かれる数字が「特定の色から始まる親友」のパターン数になります。
これを他の3色でもやってみたところ全部64通りになったので、親友は全部で64×4=256種類ということになります。
ただし、この256通りには向きが違うだけの合同なマンデルブロ集合が大量に混ざっています。
というわけで、次は合同なものを同一視した場合のパターン数を計算します。
※今回は具体的な関数の式を考えずに図形としての組み合わせだけを考えているので、同値な関数の排除という概念はありません。
まず準備として、先述の経路図から生成される経路を文字列に変換します。
赤、シアン、緑、マゼンタ(z2+c、−z2+c、con(z)2+c、−con(z)2+c)にそれぞれR、C、G、Mを割り当て、通った色の順番に文字を並べ、9文字目はいらない(1文字目と同じなので)ので省略します。
☝例:(-|x-y|(x+y)+a,2xy+b)=MRRRRMMMついでに、R⇔C、G⇔Mという変換を「マイナス変換」と呼び、文字列を構成する文字全部にマイナス変換をすることを文字列へのマイナス変換と呼ぶことにします。
この変換は、z2+cと−z2+c、con(z)2+cと−con(z)2+cを入れ替える変換を表しています。
さて、以前説明したマンデルブロ集合の合同変換の考え方を用いると、親友の合同変換は文字列では以下のように表されます。
上下反転:逆読み
180度回転:前半と後半を入れ替えてマイナス変換
☝例:MRRRRMMM、
MMMRRRRM(上下反転)、
CGGGGCCC(180度回転)
CCCGGGGC(180度回転&上下反転)このことから、親友の対称性は文字列の性質としては以下のように表されます。
上下対称:回文
点対称:前半をマイナス変換すると後半と一致
※接続に関する制限により、これ以外の対称性は持ち得ず、両方の対称性を持つことも無いようです。
まず上下対称な場合、文字列の前半4文字を決めると後半も確定し、なおかつ8文字目が1文字目と同じになるので9文字目も1文字目と同じにすることができます。
ということは上下対称な親友は前半4文字のパターン数と同じ数だけ存在し、経路図で数えると32パターン(合同なものの向き違いも含む)存在することがわかります。
点対称な場合も大体同じなものの、前半を決める際に「1文字目をマイナス変換したものが5文字目になる」という制限が加わり、経路図で数えると合計16通りになりました。
以上により、合同なものも区別した場合、全256種類の親友のうち32種類は上下対称、16種類は点対称、そして残りの208種類が完全に非対称ということになります。
非対称なものは合同なものが4つずつ存在し、対称性があるものも左右反転したものが存在するため、合同なものを同一視した場合のパターン数は208/4+(32+16)/2=76となります。