changeset 92:c407b7403548

Add figure
author atton <atton@cr.ie.u-ryukyu.ac.jp>
date Thu, 09 Feb 2017 18:52:09 +0900
parents 54cf3b3153fe
children 16dc3337a5a9
files paper/akasha.tex paper/atton-master.pdf paper/fig/akashaPut.graffle paper/fig/akashaPut.pdf paper/fig/metameta.graffle paper/fig/metameta.pdf paper/fig/put.graffle paper/fig/put.pdf
diffstat 8 files changed, 24 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/paper/akasha.tex	Thu Feb 09 18:37:26 2017 +0900
+++ b/paper/akasha.tex	Thu Feb 09 18:52:09 2017 +0900
@@ -158,9 +158,15 @@
 最初に、検証の対象となる赤黒木と、検証に必要な DataSegment を含む Meta DataSegment を定義する(リスト\ref{src:akasha-context})。
 これが akasha のレベルで利用する Meta DataSegment である。
 赤黒木自体はユーザから見るとメタレベル計算であるが、今回はその実装の検証するため、赤黒木がノーマルレベルとなる。
-よって akasha はメタメタレベルの計算とも考えられる。
+よって akasha はメタメタレベルの計算とも考えられる(図~\ref{fig:metameta})。
 
-% TODO: meta meta の図
+\begin{figure}[htbp]
+    \begin{center}
+        \includegraphics[width=250pt]{fig/metameta.pdf}
+        \caption{akasha とメタの階層構造}
+        \label{fig:metameta}
+    \end{center}
+\end{figure}
 
 akasha が使う DataSegment は データの挿入順を数え上げるためには使う環状リスト \verb/Iterator/ とその要素 \verb/IterElem/、検証に使う情報を保持する \verb/AkashaInfo/、木をなぞる際に使う \verb/AkashaNode/ がある。
 
@@ -183,8 +189,23 @@
 
 同様に最も高い高さを取得し、仕様であるリスト\ref{src:assert}の assert を挿入の度に実行する。
 assert は CodeSegment の結合を行なうメタ計算である \verb/meta/ を上書きすることにより実現する。
+イメージとしては、挿入を行なう Meta CodeSegment を利用するプログラム(図~\ref{fig:put}) の途中に検証用のメタ計算を挟むことで実現できる(図~\ref{fig:akashaPut})。
 
-% TODO: 図
+\begin{figure}[htbp]
+    \begin{center}
+        \includegraphics[width=300pt]{fig/put.pdf}
+        \caption{put を利用するプログラム}
+        \label{fig:put}
+    \end{center}
+\end{figure}
+
+\begin{figure}[htbp]
+    \begin{center}
+        \includegraphics[width=300pt]{fig/akashaPut.pdf}
+        \caption{put を利用するプログラムのメタを上書きする}
+        \label{fig:akahsaPut}
+    \end{center}
+\end{figure}
 
 \verb/meta/ はリスト\ref{src:rbtree-insert-case-2}の \verb/insertCase2/ のように軽量継続を行なう際に CodeSegment 名と DataSegment を指定するものである。
 検証を行なわない通常の \verb/meta/ の実装は CodeSegment 名から対応する実体への軽量継続である(リスト\ref{src:meta})。
Binary file paper/atton-master.pdf has changed
Binary file paper/fig/akashaPut.graffle has changed
Binary file paper/fig/akashaPut.pdf has changed
Binary file paper/fig/metameta.graffle has changed
Binary file paper/fig/metameta.pdf has changed
Binary file paper/fig/put.graffle has changed
Binary file paper/fig/put.pdf has changed