研究課題/領域番号 |
25730049
|
研究機関 | 南山大学 |
研究代表者 |
横山 哲郎 南山大学, 理工学部, 准教授 (80456631)
|
研究期間 (年度) |
2013-04-01 – 2017-03-31
|
キーワード | 可逆計算 / 可逆シミュレーション / 自己解釈系 / 可逆万能性 |
研究実績の概要 |
本研究では、可逆プログラミング言語の設計、および可逆プログラミング方法論の確立を目的としている。平成26年度は、効率的な可逆シミュレーション方法、可逆命令型プログラミング言語の比較・他の分野のプログラミング言語との比較、および実用的な応用に取り組んできた。命令型プログラミング言語Janusについては、引数渡し機構を拡張して,その拡張言語が可逆であることを示した。これは、当初掲げた目標である可逆性が厳密に保証された関数型可逆プログラミング言語の設計および実装の一部を実現できたことにあたる。このプログラミング言語の拡張が進み、さらに可逆プログラミングの経験を蓄積することにより、計算過程における情報消失が無い可逆アルゴリズムや非可逆アルゴリズムの可逆シミュレーションの基礎的な概念・理論を発展させることにつながると考えられる。 可逆プログラミング言語は、高水準で可逆性の活用を支援すると共に、独自のプログラミング手法を提供する。言語に望まれる性質には、可逆万能性、厳密な可逆性、高い表現能力がある。計算理論の世界では、線形時間自己解釈系が存在する万能言語を用いた場合、定数時間階層が存在して、最適万能検索が可能であることが知られている。しかし、可逆な言語において線形時間自己解釈系が存在する可逆万能言語については、これまで報告がなかった。われわれは、木構造を可逆に扱うことができる万能な命令型言語を提案して、可逆の世界でも対応する理論が成立することを示した。 特定のプログラミング言語を離れて、どのように可逆なアルゴリズムを設計するかは、まだ手法が確立しているとは言えない。平成26年度は、いくつかの基本的なアルゴリズムのゴミを以下に扱うかについて研究を行った。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
本研究では、可逆プログラミング言語の設計、および可逆プログラミング方法論の確立を目的としているが、この下で研究を進めることができた。より具体的には、平成26年度は、当初の計画である、効率的な可逆シミュレーション方法、可逆命令型プログラミング言語の比較・他の分野の言語との比較、および実用的な応用に取り組むことができた。これらの内容をまとめて、情報処理学会の雑誌から発表を行うことができた。これらの一連の成果は、当初掲げた目標である可逆性が厳密に保証された関数型可逆プログラミング言語の設計および実装の一部を実現できたことにあたる。 可逆関数型プログラミング言語の利点には、木構造のデータを扱うのが容易であることが含まれる。平成26年度発表した命令型プログラミング言語には、木構造のデータが導入されており、多くのアルゴリズムをこれまでの可逆プログラミング言語よりも容易に記述することが可能になった。これらの言語を用いることで今まで知られていなかった自明でない性質を示すことができた。これらの成果は、ソフトウェア科学会のワークショップで発表された。 可逆プログラミングの方法論については、基礎的なアルゴリズムが得られてきているものの、理論整備が不十分であり確立したとは言い難い状況である。研究を進めてはいるが、対外発表をするところにまでは至っていない。
|
今後の研究の推進方策 |
可逆プログラミング言語の設計および可逆プログラミング方法論について、引き続き取り組みを行いたい。可逆プログラミング言語の種類としては、命令型プログラミング言語に加えて関数型プログラミング言語を対象にするか、関数型の特徴をもつプログラミング言語を対象としたい。可逆プログラミングの方法論については、未だに基礎的なアルゴリズムにしか良いものが得られてないため、平成27年度以降に引き続き取り組みたい。プログラム逆変換や双方向変換との比較を実施して、より可逆プログラミング言語の概念を明確化して特徴付けたい。効率的可逆シミュレーションについては、ケーススタディを継続すると共に、それらの導出法の共通点からエッセンスを抽出し、より効率的な可逆シミュレーションの自動導出法の確立を目指したい。可逆プログラミング言語を計算機上で実現するためには、今後も実装上の課題を解決する必要がある。これまでに整備した可逆プログラミング言語の理論を元に実装を継続する。こうした取り組みを通じて、応用範囲を拡大してより実用的な問題を提案プログラミング言語を用いて解決したい。
|