annotate final_main/chapter1.tex @ 7:28f900230c26

add final_pre
author ryokka
date Mon, 19 Feb 2018 23:32:24 +0900
parents 2155c6ff589f
children 50a27cc71ca7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
28f900230c26 add final_pre
ryokka
parents: 3
diff changeset
1 \chapter{A}
0
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
2 \label{chap:introduction}
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
3 \pagenumbering{arabic}
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
4
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
5 % 序論の目安としては1枚半ぐらい.
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
6 % 英語発表者は,最終予稿の「はじめに」の英訳などを載せてもいいかも.
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
7
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
8 %% 想定外の挙動をしてほしくない
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
9
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
10
3
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
11 動作するプログラム(ソフトウェア)は高い信頼性を持つことが望ましい。
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
12
7
28f900230c26 add final_pre
ryokka
parents: 3
diff changeset
13 プログラムの信頼性を保証するにはプログラムが期待される仕様を満たすことを検証する手法と、その仕様を直接証明する手法が存在している。
1
0035f6d4826f fix MindMap,add some chapter
ryokka
parents: 0
diff changeset
14
3
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
15 そのために当研究室では検証しやすい単位として CodeGear、DataGearという単位を用いてプログラムを記述する手法を提案している。
1
0035f6d4826f fix MindMap,add some chapter
ryokka
parents: 0
diff changeset
16
0035f6d4826f fix MindMap,add some chapter
ryokka
parents: 0
diff changeset
17
3
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
18 本研究では CbC を用いて Tree、 Stack を実装し、等価な Agda の実装を使ってその仕
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
19 様の一部を証明した。
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
20
2155c6ff589f fix Section, Capter, and Mindmap. add some Code
ryokka
parents: 1
diff changeset
21
0
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
22 %% 動作するプログラムの信頼性を保証したい
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
23
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
24 %% そのために当研究室ではコードセグメント、データセグメントという単位を用いてプログラムを記述する手法を提案する
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
25
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
26 %% 処理の単位であるコードセグメントはメタ計算によって接続される
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
27
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
28 %% メタ計算を切り替えることでコードセグメントを変更することなくプログラムの性質を検証することができる
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
29
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
30 %% 証明を使い、プログラムの信頼性を保証できるようにしたい
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
31
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
32 %%%
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
33 % やってること、やりたいことはAgdaとCbC言語で等価なプログラムを書き、証明すること
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
34 % Agdaではunblancedなbinary tree を作るとこまできた
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
35 % CbC側ではBalancedなredBlackTreeを作るところまではきている
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
36 %%%
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
37
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
38 % なんでAgda で証明するの ? Agda である理由は ?
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
39 % 他論文でも実装と異なる言語で証明している例は多い。
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
40 % もともとの言語が証明支援ではない。関数型言語(証明支援系言語)でのプログラミングは手続き型のプログラミングと異なる
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
41
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
42 %\section{論文の構成}
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
43
46d543c569d2 add MindMap
ryokka
parents:
diff changeset
44 %\section{Introduction}