【Rで球面幾何学】二辺形(Bilateral)と一辺形(One Side)？

最近取り組んでいた投稿に一区切りついたので、これからはいよいよ昔年の課題だった以下の「<font color="red">立体未満の図形</font>」について考える機会が増えそうです。
[【オイラーの多面体定理と正多面体】とある「球面幾何学(Spherical Geometry)」の出発点…](https://qiita.com/ochimusha01/items/5f8dbf33bac5b7227a11)
![スクリーンショット 2020-05-08 12.01.05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/db1e9130-fd8b-caee-f6c9-f1a7143aa987.png)

- **二辺形**(<font color="blue">Bilateral</font>)…**断面数**<font color="green">0</font>、**頂点分布**<font color="green">[1,1]</font>。これはパスカルの三角形2段目の数字に合致する。**立方対角線**<font color="green">1</font>**本**。一言で要約すると「<font color="red">頭蹠と対蹠を結ぶ立方対角線上の往復</font>」<br>![MOF002.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/07ee8c1a-dc4f-351c-5e12-c45eb350bde8.gif)
- **一辺形**(<font color="blue">One Side</font>)…**断面数**<font color="green">0</font>、**頂点分布**<font color="green">[1]</font>。これはパスカルの三角形1段目の数字に合致する。**立方対角線**<font color="green">0</font>**本**。一言で要約すると「<font color="red">対蹠と対応付けられてない頭蹠より伸ばされる任意の(走査)線</font>」<br>![20191111234734.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/1c06c1eb-4de7-d285-d0df-58356beab8fa.gif)

つい手癖で滑らかにアニメーションさせてしまってますが、その時点で既に**意味論的統制**(<font color="blue">Semantic Control</font>)の許諾を受けた**虚理の世界**(<font color="blue">Imaginary Set</font>)が始まってしまってる訳です。

- 「<font color="green">1,2,3,…,∞</font>」の範囲を扱う「**自然数の世界**(<font color="blue">Natural Number Set</font>)」に<font color="green">0</font>と<font color="green">マイナス</font>の**概念**(<font color="blue">Concept</font>)を導入(<font color="blue">Intoroduce</font>)し「**整数の世界**(<font color="blue">Integer Number Set</font>)」に。
- さらには**比**(<font color="blue">Ratio</font>)で**表現**(<font color="blue">Expression</font>)可能な**有理数**（<font color="blue">Rational Number</font>）と、それとは別途個別の**定義**(<font color="blue">Definition</font>)に頼る**無理数**（<font color="blue">Irrational Number</font>）の概念を導入し「**実数の世界**(<font color="blue">Real Number Set</font>)」に。
- ところが、まだまだ「**数直線の連続性**(<font color="blue">Number line Continuity</font>)」が完全に満たされたとはいえず、人類はさらに**虚数**(<font color="blue">Imaginary Number</font>)**概念**を**導入**して「**複素数の世界**(<font color="blue">Complex Number Set</font>)」に足を踏み入れた。有理数までの世界を「**計数可能な世界**(<font color="blue">Countable Set</font>)」とするなら「**虚理の世界**(<font color="blue">Imaginary Set</font>)」は「**計算自体は可能な世界**(<font color="blue">Computable Set</font>)」。「**限られた計算リソースを巡る絶え間なき鬩ぎ合い、その一方での**（<font color="blue">常用対数表やコンピューターの発明といった</font>）**既存の前提を吹き飛ばす定期的イノベーション**」に振り回され続ける。

こういう問題提起もありますね。
[【対訳版】ユージン・ウィグナー『自然科学における数学の理不尽なまでの有効性(1959年)』](https://ch.nicovideo.jp/niconicoffee/blomaga/ar1125952)

>第一の点は、〈**数学の概念は、まったく予想外のさまざまな文脈のなかに登場してくる**〉ということ。
<font color="green">The first point is that mathematical concepts turn up in entirely unexpected connections.</font>
>しかも、予想もしなかった文脈に、予想もしなかったほどぴったりと当てはまって、正確に現象を記述してくれることが多いのだ。
<font color="green">Moreover, they often permit an unexpectedly close and accurate description of the phenomena in these connections.</font>
>第二の点は、予想外の文脈に現れるということと、そしてまた、数学がこれほど役立つ理由を私たちが理解していないことのせいで、〈**数学の概念を駆使して、なにか一つの理論が定式化できたとしても、それが唯一の適切な理論なのかどうかがわからない**〉ということ。 
〔<font color="green">Secondly, just because of this circumstance, and because we do not understand the reasons of their usefulness, we cannot know whether a theory formulated in terms of mathematical concepts is uniquely appropriate.</font>
>〔<font color="blue">この二つの論点をさらに言い直すと</font>〕第一の点は〈**数学は自然科学のなかで、ほとんど神秘的なまでに、途方もなく役立っているのに、そのことには何の合理的説明もない**〉ということ。
<font color="green">The first point is that the enormous usefulness of mathematics in the natural sciences is something bordering on the mysterious and that there is no rational explanation for it.</font>
>第二の点は〈**数学の概念の、まさにこの奇怪な有用性のせいで、物理学の理論の一意性が疑わしく思えてしまう**〉ということ。
<font color="green">Second, it is just this uncanny usefulness of mathematical concepts that raises the question of the uniqueness of our physical theories.</font>

要するに**ポパーの反証可能性**（<font color="green">Falsifiability</font>）担保論を持ち出すまでもなく「誰も(<font color="green">計算自体は可能な世界における</font>)正解なんて知らない」という冷徹な現実。「<font color="red">サイバネティックス概念の提唱者</font>」**ノーバート・ウィーナー**（<font color="blue">Norbert Wiener,1894年~1964年</font>）も「**誰も科学は最終的には分からん。せいぜい使い慣れるのが精一杯**」と、すっかり匙を投げていたといいます。近代に至るまで「(<font color="blue">全ての誤差を克服する方法さえ見つかれば</font>)**あらゆる計測結果が最終的には一致する筈だ**」なる信念こそが科学研究の原動力となっていた側面が確実にあったのですが、今から思えばまさにその思いこそが「**虚理の世界**(<font color="blue">Imaginary Set</font>)」からの呼び声に迂闊に応えた産物だったとも…(<font color="blue">コンドルセ伯爵やジョン・スチュワート・ミルの様な数学者=古典的自由主義者も例外ではなさそうなのが辛いところ</font>)

かかる「**虚理**(<font color="blue">Imaginary Things</font>)」の大源流を遡ると、<font color="green">0</font>を原点に**無限大**(<font color="blue">Inf</font>)と**無原小**(<font color="blue">-Inf</font>)の双方向に伸ばされた半直線が無限に**直交**(<font color="blue">-Inf</font>Orthogonal)し続ける**平方眼**(<font color="blue">Square Grid</font>)や**立方眼**(<font color="blue">Cubic Grid</font>)で構成される「<font color="red">デカルト座標系の世界</font>(<font color="blue">Cartesian Coordinate System Set</font>)」そのものにまで行き当きそうです。決してその直交性と座標軸としての有効性を疑われない「**絶対真理の天秤**」。そもそもの起源からして古い…

①**カンブリア爆発期**（<font color="blue">Cambrian Explosion、葯5億4200万年前〜5億3000万年前</font>）、視覚と関連情報を処理する**脊髄=中央情報処理器官**(<font color="blue">Central Infomation Processing Organ</font>)」を獲得し（<font color="blue">四肢を生やし</font>）前後上下左右の感覚に従って俊敏な動作をこなす様になった**左右相称動物**（<font color="blue">Bilateria</font>）が、トレンドに乗り遅れ相変わらず鈍重なままの**放射相称動物**（<font color="blue">Radiata</font>）に進化面で優位に立ち始めた。

- 逆を言えば、それ以前の時代の生物は、まだまだ前後上下左右の感覚に従って自らの運動を制御する中枢神経をちゃんとした形では備えていなかった。すなわち**デカルト座標系**も(<font color="blue">観測結果の蓄積とその分析に立脚する</font>)**科学的思考様式**も、それをサポートする**コンピューター・システムの類**もそれ以前の時代には原型すら存在していなかったと考えるのが**自明の場合**(<font color="blue">Trivial Case</font>)といえよう。

②一方、かかる新能力を初めて捕食動物として有効活用し、一旦は「（<font color="blue">当時の生物としては破格の大きさまで成長する</font>）**地球最初の百獣の王**」の座に躍り出た**アノマロカリス**（<font color="blue">Anomalocaris、約5億2,500万〜約5億0,500万年前</font>）なる生物は、その一方で最後にはあえなく滅び遺伝子的痕跡を後世に一切残す事なく地上から消え去った。

- そもそもどうしてアノマロカリスは滅びたのか。ある考え方によれば、皮肉にもこの捕食性動物は、その奇跡的成長ゆえに「（<font color="blue">棘や殻や毒で自衛した</font>）<font color="red">食えない連中</font>」ばかり淘汰して狩果を先細らせる一方、原始的な魚類の先祖といった競争相手の進化ラッシュを引き起こしてしまったのだという。その感点から「**あらゆるビジネスモデル**（<font color="blue">および歴史的事象</font>）の先例」と皮肉る向きもある。
- ある意味、この概念化は旧約聖書に反面教師的に記されている「<font color="red">絶対暴君二ムロド</font>」のそれに近い。そこから出発して中世には「**領主が領民と領土を全人格的に代表する農本主義的権威体制**」が覇を競い合い「**国家経営上、十分なだけの火力と機動力を備えた常備軍を中央集権的官僚制が徴税によって賄う主権国家が登場し国内における暴力的手段を必要なだけ独占する法実証主義に拠って鬩ぎ合う国際協調体制**(<font color="blue">17世紀〜1910年代</font>)」が最終勝者となって「**国家同士の競争が全てとなる総力戦時代**(<font color="blue">1910年代後半~1970年代</font>)」に至ったという考え方すら出来てしまう。
- この次元における**意味論的統制**(<font color="blue">Semantic Control</font>)は単純極まりなく「<font color="red">タフでなければ生き残れない。タフなだけでは生き残る資格がない</font>」程度なのだが、その世界においてさえ現実にはどうしても後世の人間が日本の**平氏**やフランスの**ブルグンド王国**や**リュジニャン家**、神聖ローマ帝国の**ホーエンシュタウフェン朝**の滅亡に納得がいかずこれに取材した文学作品を上梓し続けている。
- そういえばフランスでもドイツでも社会学成立の契機となったのは19世紀後半に産業革命浸透が引き起こした伝統的地方共同隊の崩壊だったが、前者が**共同体**((<font color="blue">Ascension</font>)こそ社会の実体と考えてその再建を志向したのに対し、後者は権力や環境が個人の生活に及ぼす影響に関心を集中させた辺りに最初の個性が現れたとも。**パスツール**(<font color="blue">1822年~1895年</font>)や**コッホ**(<font color="blue">1843年~1910年</font>)の**細菌学**や**衛生学**。**統計力学**に**電磁場理論**。**シャルコー**(<font color="blue">1825年~1893年</font>)の**催眠療法**に**フロイト**(<font color="blue">1856年〜1939年</font>)の**夢分析**。タルド(<font color="blue">1843年~1904年</font>)の**模倣社会学**。果ては新興資本家が経済的成功を収める一方貧富格差が拡大したのを受けて「<font color="red">金持ちからしか盗まない変装名人の義賊小説</font>」が大ヒット。金持ちになって盗まれる側に回った作者が毎晩悪夢にうなされる様になるオチがついた展開まであったという（<font color="blue">モーリス・ルブラン症候群</font>）。こうして誰もが「**目に視えない何か**」との共存を強要されながら暮らす様になったまさにその時代、軍隊や医療や都市再開発の近代化に行動指針を与える役割を担った**統計学**の大躍進が始まった訳である。やはり果たしてデカルトの信仰的態度や天体観測結果の誤差除去が最大の悲願だった時代の一波一絡げ主義から完全には脱却出来ていなかった側面も…まぁ**ハミルトンの四元数**(<font color="blue">Hamilton's Quaternions</font>)や**ベイズ推定**（<font color="blue">Bayesian Inference</font>）の全面否定に向かう時代の世相とはそういう世相だったという話でもある。「<font color="red">今は変わった</font>」といいますが、果たして何がどう変わったやら…<br>[統計学入門「主義」 を心配するみなさまに](http://watanabe-www.math.dis.titech.ac.jp/users/swatanab/bayes000.pdf)

どうも「**デカルト座標系の世界**」には、その「<font color="red">絶対真理の天秤</font>」性故に使用者の主義主張に絶対の確信を与えてしまう側面がある様なのです。ともすればオライリーの機械学習参考書とかに目を通している時にすらそれを感じてしまう時が…「<font color="red">おいおい、そのデータの評価軸、本当に直交してるの？ 成果を出すのを急ぎ過ぎてるのでは？</font>」みたいな…最近はこの世の価値観の衝突の大半はこれが原因じゃないかと感じる時すらあります。そしてこの基準に従わない「(<font color="blue">ハミルトンの四元数やベイズ推定の様な</font>)**計算自体は可能な世界**(<font color="blue">Computable Set</font>)」に固有の拒絶感を示すとも…

ところでこの概念には前傾の**二辺形**や**一辺形**は**円描画関数**（<font color="blue">Circle Function</font>）<font color="green">Cos(θ)+Sin(θ)i</font>の一般形<font color="green">Cos(θ)+Cos(θ-π/NoS)i</font>(<font color="blue">NoS=Number of Sides</font>)で最初に邂逅したのです。辺数の判別式としても使え、例えば角度として<font color="green">θ=0~π</font>の周期を与えた場合は<font color="green">1</font>がその答え。

```R
WEA<-function(x_min,x_max){
c0<-seq(0,2*pi,60)
f0<-function(x){cos(c0)+cos(c0-pi/x)}
plot(f0,xlim=c(x_min,x_max),main="When Euler's formula appear?",xlab="NoC(Number of Corners)",ylab="cos(θ)+cos(θ-π/Noc)")
abline(h=1,col=rgb(1,0,0))
}
```
**１辺形**（<font color="blue">One Side</font>）以上の世界ではこの条件を満たすのは**2辺形**（<font color="blue">Bilateral</font>）のみ。以降はこの判別式の上限たる<font color="green">2</font>に向けてゆっくり収束していきます。
![20191024160024.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/9fcc78f4-0d3e-3dff-4f84-a91bf4649bfa.png)

```R
WEA(1,8)
```
一方、**１辺形**（<font color="blue">One Side</font>）未満の世界ではこの条件を満たす図形が出現周期を短縮しつつ、この判別式の下限たる0に向けて無限に現れ続けるのです。
![20191024160111.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/c0a65350-1ad8-e4aa-cdf1-ba1c19f675d7.png)

```R
WEA(1,0)
```

具体的にこの条件を満たすのは<font color="green">NoS=2/(2N+1)</font>の条件を満たすケース。すなわち<font color="green">2辺形</font>、<font color="green">2/3辺形</font>、<font color="green">2/5辺形</font>、<font color="green">2/7辺形</font>…と出現周期を短縮しつつ<font color="green">0</font>に向けて収束していきます。
![20191024154416.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/53415130-7890-357d-68cb-2459d8409cb9.png)

**複素平面**（<font color="blue">Complex plane</font>）上でも確認してみましょう。まずはそれぞれの極限状態のシミュレーション…
![20191024163532.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/4d6491a4-70b2-5504-5809-841d3bb3b59e.png)

```R
c0<-seq(0,2*pi,length=60)
cx<-cos(c0)
cy<-cos(c0)*-1
plot(cx,cy,type="o",main="Cos(θ) orthogonal -Cos(θ) ",xlab="cos(θ)",ylab="-cos(θ)")
#凡例
legend("bottomleft", legend=c("cos(θ) orthogonal -cos(θ) "), lty=c(1), col=c(rgb(0,0,0))) 
```
![20191024163746.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/d299630b-b095-59e5-aa81-8951e599fe3f.png)

```R
c0<-seq(0,2*pi,length=60)
cx<-cos(c0)
cy<-sin(c0)
plot(cx,cy,asp=1,type="o",main="Cos(θ) orthogonal Sin(θ) ",xlab="cos(θ)",ylab="sin(θ)")
#凡例
legend("bottomleft", legend=c("cos(θ) orthogonal sin(θ) "), lty=c(1), col=c(rgb(0,0,0))) 
```
![20191024163830.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/ce709fd0-0d91-c0b8-2592-da1a90637ff0.png)

```R
#円そのもの(Circle itself)
c0<-seq(0,2*pi,length=60)
cx<-cos(c0)
cy<-cos(c0)
plot(cx,cy,type="o",main="Cos(θ) orthogonal Cos(θ) ",xlab="cos(θ)",ylab="cos(θ)")
#凡例
legend("bottomright", legend=c("cos(θ) orthogonal cos(θ) "), lty=c(1), col=c(rgb(0,0,0)))
```
大体、どういう範囲で動くのかは見切れましたね。それでは実践…
![20191019011127.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/95d25b8f-9645-4642-afe4-9a44c8c89ec5.gif)

```R
#FHtD=1角形から2角形へ（From Henagon to Digon）
#Noc=角数(Number of corners)
FHtD<-function(NoC){
c0<-seq(0,2*pi,length=60)
cx<-cos(c0)
cy<-cos(c0-1/NoC*pi)
text01<-paste0("cos(θ-1/",round(NoC,4),"*pi)")
plot(cx,cy,type="o",main="From Henagon to Digon",xlab="cos(θ)",ylab=text01)

#中心からの補助線
cx0<-rep(0, length=length(cx))
cy0<-rep(0, length=length(cy))
segments(cx0, cy0, cx, cy,col=c(200,200,200))

#凡例
legend("bottomright", legend=text01,lty=c(1), col=c(rgb(0,0,0)))
}
```
1角形〜円そのものへ（<font color="blue">あまりに収束が遅いので途中で加速している</font>）
![20191019011127.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/3b31115e-61ca-5138-3dab-6d7559f4cbb5.gif)

```R
#アニメーション
library("animation")
Time_Code=c(seq(1,6, length=50),seq(6,64,length=20))
saveGIF({
for (i in Time_Code){
FHtD(i)
}
}, interval = 0.1, movie.name = "FHtD01.gif")
```
予測通り「**円盤が回転速度を落としつつゆっくり回っていく**」情景が顕現しました。一方、1辺形以下の動きはこうなります。
![20191019143209.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/69c6c393-102c-0b59-079f-d5879866ec2b.gif)

```R
#アニメーション
library("animation")
Time_Code=seq(1,0.1,length=41)
saveGIF({
for (i in Time_Code){
FHtD(i)
}
}, interval = 0.1, movie.name = "FHtD01.gif")
```
こちらも予測通り「**円盤が回転速度を上げながら旋回している**」情景となりました。これが「<font color="red">計算なら可能な世界</font>」にありがちな展開で、どうもこの式、思わぬ方向に繋がっていく様な…
[【Rで球面幾何学】「単位円筒」から「トーラス構造」へ](https://qiita.com/ochimusha01/items/f6406e768aa24b8aea1a)
![20190915193504.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/b2c0dc27-e8c9-e364-dc4d-a6219b699672.gif)
![20190915193539.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/96689c92-6922-88ae-5cd9-b179a6719383.png)
そんな感じで以下続報…