【翻訳】タングル図解パート1:タングルの紹介

solareenlo
5 min readJul 27, 2018

--

この記事は原題『The Tangle: an Illustrated Introduction Part 1』の日本語訳です。
図の著作権はIOTA財団にあります。

今回は、IOTAがどのような仕組みで動作をしているかについてもっと学びたいという人たちを対象にしたビギナー・レベルの連載の第一回目です。大まかにホワイトペーパーに準じますが、もっとゆっくりと図を用いて諸々の基本的な概念を明らかにしていきます。この記事ではタングルについて紹介します。まずタングルとは何かについて説明してから、タングルがIOTAのリサーチ・チーム内で数学的にどのように研究されているかを解説します。

タングルを理解するためには、コンピューター科学者たちが有向グラフ(Directed graph)と呼ぶものが何かについて学ぶ必要があります。有向グラフとは、エッジ(矢印)によって相互に繋がっている頂点(四角)の集合のことです。下図は有向グラフの一例です。

タングルとはIOTAを支えるデータ構造であり、トランザクションを保持する特殊な有向グラフです。各トランザクションは有向グラフの中で頂点として表示されています。新しいトランザクションがタングルに加わると、先行する二つのトランザクションを選んで承認して、新たに二つのエッジを有向グラフに足します。上の図例の中では、5番のトランザクションは2番と3番のトランザクションを承認します。トランザクションとは、多かれ少なかれみなさんが思っているように”A氏がB氏に10枚のIOTAを与えた”という形式の情報です。「トランザクションの承認とは何を意味するのか」に関しては、後に詳しく述べるのでこの段階ではあまり気にしすぎないようにします。

未承認の諸々のトランザクションのことをチップス(訳注:チップの複数形)と呼んでいます。図例では、まだ承認されていない6番のトランザクションは一つのチップです。新たに到着してきた各トランザクションは、それぞれ二つのチップを選んで承認する必要があります(チップは必ず少なくとも一つはあります)。どの二つのチップを選んで承認するかというストラテジーは非常に大切で、IOTAの独特なテクノロジーの鍵となっています。しかし、ここでは分かりやすいように「全てのチップの中からランダムに選ぶ。新たに到着してきたトランザクションは、その時点で未承認の全てのトランザクションを見てから単純にランダムに二つを選ぶ。」という最もシンプルなストラテジーから始めましょう。

全員がこのランダムな選択ストラテジー(専門的には“uniform random tip selection(一様ランダムチップ選択)”と言う)を使うとタングルがどうなるかを見てもらうために、ヴィジュアル・シュミレーションを作りました。このシュミレーションはランダムにタングルを作り出します。(The genesisと呼ばれる)一番古い最初のトランザクションは左側に、一番新しいトランザクションは右側に表れます。未承認のトランザクションであるチップは灰色の四角で示されます。どれか一つのトランザクションの上にマウスのポインターを置くと、そのトランザクションに承認された全てのトランザクションは赤色に表示され、そのトランザクションを承認する全てのトランザクションは青色になります。

今日はここまでにしましょう! 是非このシュミレーションで遊んでみてください。色々と設定を変えて弄ってみたり、ここやDiscord#tanglemathチャネルで質問したりしてください。次の記事では、シュミレーションの中にもあるトランザクションの到着率 (λ)の意味を説明して、間接的承認者や隠れたチップなどのもっと高度な概念を紹介し、非荷重ランダムウォーク(the unweighted random walk)というもっと洗練されたチップ選択ストラテジーについて学びましょう。

パート2:新しいトランザクションの到着率と遅延時間とランダムウォーク
パート3:累積荷重と累積ランダムウォーク
パート4:承認者と残高(バランス)と二重支払い
パート5:コンセンサスと確定の信頼度とコーディネーター

--

--