• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 前のページに戻る

関数型プログラミング言語のプログラム変換に関する研究

研究課題

研究課題/領域番号 11780216
研究種目

奨励研究(A)

配分区分補助金
研究分野 計算機科学
研究機関筑波大学

研究代表者

南出 靖彦  筑波大学, 電子・情報工学系, 講師 (50252531)

研究期間 (年度) 1999 – 2000
研究課題ステータス 完了 (2000年度)
配分額 *注記
2,100千円 (直接経費: 2,100千円)
2000年度: 800千円 (直接経費: 800千円)
1999年度: 1,300千円 (直接経費: 1,300千円)
キーワードプログラム変換 / 関数型プログラミング言語 / 正当性 / 操作的意味論
研究概要

関数型プログラミング言語のコンパイラなどで用いられるプログラム変換の正当性について研究を行った。特に、本研究では、プログラム変換がプログラムの性能に及ぼす影響について考慮し、性能に関して正当であることを示す研究を行った。
まず、値呼び出しの関数型プログラミング言語のコンパイラで用いられるCPS変換が、プログラムの実行に必要な記憶領域の大きさを定数倍の範囲で保存することを示した。これまで、プログラムの実行に必要な記憶領域に関して理論的に扱った研究はほとんどなく、このような性質の証明は、困難であると考えられていた。しかし、この研究では、reference(書き換え可能な値)を考慮したMLの型システムの健全性の証明の手法を応用することで、見通しの良い証明を与えることができた。
コンパイラなどで利用されるプログラム変換は、上のCPS変換のように良い性質(性能を定数倍の範囲で保存する)ものだけではない。多くの場合にプログラムを効率を良くするために、特殊な場合にはプログラムの効率を悪くする変換も用いられる。このような変換に関しては、最悪の場合の効率を保証することが重要だと思われる。本研究では、性能に関する正当性の条件として、プログラム変換による最悪の場合の性能の悪化の割合が、プログラムの大きさの多項式で抑えられるという条件を提案した。さらに、この条件に関して幾つかの基本的な性質を示し、A-normal変換の呼ばれるプログラム変換が、スタック空間の大きさについて、この条件を満たすことを示した。

報告書

(2件)
  • 2000 実績報告書
  • 1999 実績報告書
  • 研究成果

    (2件)

すべて その他

すべて 文献書誌 (2件)

  • [文献書誌] 南出靖彦: "A New Criterion for Safe Program Transformations"Proc.The Forth International Worshop on Higher Order Operational Techniques Semantics. 15 (2000)

    • 関連する報告書
      2000 実績報告書
  • [文献書誌] Yasuhiko Minamide: "Space-Profiling Semantics of the Call-by-Value Lambda Calculus and the CPS Transformation"Proceedings of the Third Workshop on Higher Order Operational Techniques in Semantics. 103-118 (1999)

    • 関連する報告書
      1999 実績報告書

URL: 

公開日: 1999-04-01   更新日: 2016-04-21  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi