Mercurial > hg > Papers > 2015 > atton-sigse
changeset 13:b34ce7d49a0c
Mini fixes from OC-san
author | Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp> |
---|---|
date | Tue, 09 Dec 2014 16:23:13 +0900 |
parents | f0724df5ddbc |
children | 2ab152cefadb |
files | figure/versions.graffle figure/versions.pdf figure/versions.xbb sigse.tex |
diffstat | 4 files changed, 15 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/figure/versions.graffle Tue Dec 09 15:18:26 2014 +0900 +++ b/figure/versions.graffle Tue Dec 09 16:23:13 2014 +0900 @@ -53,7 +53,7 @@ <array> <dict> <key>Bounds</key> - <string>{{57, 67}, {320, 239}}</string> + <string>{{57, 67}, {320, 276}}</string> <key>Class</key> <string>ShapedGraphic</string> <key>ID</key> @@ -111,13 +111,16 @@ function = [f, g, h]\ \ variable >>= function =\ + -- all combinations\ [[f(x), g(x), h(x)],\ [f(y), g(y), h(y)]]\ =\ + -- select by rules\ [f(x), g(y), h(y)]\ \ \ \ +\ }</string> <key>VerticalPad</key> <integer>0</integer> @@ -173,7 +176,7 @@ <key>MasterSheets</key> <array/> <key>ModificationDate</key> - <string>2014-12-09 06:03:18 +0000</string> + <string>2014-12-09 07:21:57 +0000</string> <key>Modifier</key> <string>atton</string> <key>NotesVisible</key>
--- a/figure/versions.xbb Tue Dec 09 15:18:26 2014 +0900 +++ b/figure/versions.xbb Tue Dec 09 16:23:13 2014 +0900 @@ -1,8 +1,8 @@ -%%Title: ./versions.pdf +%%Title: ./figure/versions.pdf %%Creator: extractbb 20130405 -%%BoundingBox: 0 0 328 297 -%%HiResBoundingBox: 0.000000 0.000000 328.000000 297.000000 +%%BoundingBox: 0 0 344 389 +%%HiResBoundingBox: 0.000000 0.000000 344.000000 389.000000 %%PDFVersion: 1.3 %%Pages: 1 -%%CreationDate: Tue Dec 9 15:02:17 2014 +%%CreationDate: Tue Dec 9 16:22:22 2014
--- a/sigse.tex Tue Dec 09 15:18:26 2014 +0900 +++ b/sigse.tex Tue Dec 09 16:23:13 2014 +0900 @@ -71,7 +71,7 @@ プログラムの変更時に信頼性が変化すると仮定し,圏を用いてプログラムの変更を形式化する. 本研究ではプログラムの変更を Monad として表現する. -Monad とはメタ計算と対応付けられたデータ構造である. +Monad とはデータ構造とメタ計算を対応させる手法である. Monad として任意の異なるバージョンのプログラムを同時に実行するデータ構造 Delta を定義した. プログラムの変更は特定バージョンの Delta から次のバージョンの Delta への変換として記述する. @@ -90,7 +90,7 @@ バージョンの組み合せの例を図\ref{fig:versions}に示す. 変数 variable と関数 function が存在するとする. variable はバージョンが2つ存在し,関数はバージョンが3つ存在する. -これらの組み合せの中から,variableのバージョン2つを保存しつつ関数のバージョン3を含んだ組み合せを選ぶ. +これらの組み合せの中から,variableのバージョン2つを保存しつつ関数のバージョン3も含むように組み合せから値を選ぶ. \begin{figure}[htpb] \begin{center} @@ -101,9 +101,9 @@ \end{figure} バージョンの組み合せを一意に定義するために Delta を Monad とする. -Monad とはデータ構造とメタ計算を対応付ける手法である\cite{moggi}. -ここでのメタ計算とはバージョン間の組み合せを一意に決めるルールである. -関数の実行時にメタ計算も含めて実行することにより,異なるバージョンに存在するの独立した計算も全て実行することができる. +Monad によってデータ構造とメタ計算を対応付けることができる\cite{moggi}. +Delta におけるメタ計算とはバージョン間の組み合せを一意に決めるルールである. +関数の実行時にメタ計算も含めて実行することにより,異なるバージョンに存在する独立した計算も全て実行することができる. なお,データ構造を Monad として定義する際に満たすべき Monad則が存在するが,Monad則を満たしていることは証明支援系言語Agda\cite{agda}によって証明した. プログラムをデータ構造 Delta と Delta を返す関数として記述することにより,全てのバージョンを同時に実行できるプログラムが得られる. @@ -158,6 +158,6 @@ \end{thebibliography} -%}{ +%} \end{document}