• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to previous page

定理証明システムによる型システムとプログラム変換の検証

Research Project

Project/Area Number 13780193
Research Category

Grant-in-Aid for Young Scientists (B)

Allocation TypeSingle-year Grants
Research Field 計算機科学
Research InstitutionUniversity of Tsukuba

Principal Investigator

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

Project Period (FY) 2001 – 2002
Project Status Completed (Fiscal Year 2002)
Budget Amount *help
¥2,000,000 (Direct Cost: ¥2,000,000)
Fiscal Year 2002: ¥1,000,000 (Direct Cost: ¥1,000,000)
Fiscal Year 2001: ¥1,000,000 (Direct Cost: ¥1,000,000)
Keywords定理証明システム / 型システム / プログラム変換 / 操作的意味論
Research Abstract

関数型プログラミング言語のコンパイラで用いられるCPS変換の定理証明システムIsabelle/HOLによる検証について二つの拡張を行った.まず,CPS変換がプログラムの実行に必要な記憶領域の大きさを保存することを検証した.証明すべき性質はより複雑なものになり,証明の長さも2倍程度になった.しかし,変換で導入される変数の形式化などは,記憶領域を考慮しない場合の形式化をそのまま応用することができ,自動証明を多くの補題の証明に用いることができた.次に,変換の検証を自由変数に含む式に拡張した.前年度の検証では,扱うプログラムが閉じた式であることを仮定し,証明を単純化した.しかし,前年度の証明を再検討したところ,この制限は証明の単純化にあまり貢献していないことがわかった.そこで,本年度には,この制限を取り除いて検証を行い,この制限が本質的でないことを確認した.
関数型プログラミング言語の末尾呼び出しを,Java仮想機械などの末尾呼び出しを直接サポートしていない環境で効率的に実装するためのプログラム変換を提案した.末尾呼び出しをサポートしない環境でも,特殊な関数呼び出しの仕組みを用いることで,末尾呼び出しが実現できるが,そのような方法はオーバーヘッドが大きい.提案した方法では,型推論を用いてプログラムの末尾呼び出しに関する性質を推論する.その型情報に基づき,末尾呼び出しの正当な実装が必要な関数に対してだけ,選択的に,非効率的な末尾呼び出しの実装を用いることで,オーバーヘッドを抑えている.

Report

(2 results)
  • 2002 Annual Research Report
  • 2001 Annual Research Report
  • Research Products

    (2 results)

All Other

All Publications (2 results)

  • [Publications] Yasuhiko Minamide, Koji Okuma: "Verifying the CPS transformation in Isabelle/HOL"Asian Workshop on Programming Languages and Systems. 29-37 (2001)

    • Related Report
      2002 Annual Research Report
  • [Publications] Yasuhiko Minamide: "Runtime Behavior of Conversion Interpretation of Subtyping"Proceedings of International Workshop on Implementation of Functional Languages,Lecture Notes in Computer Science. (印刷中). (2001)

    • Related Report
      2001 Annual Research Report

URL: 

Published: 2001-04-01   Modified: 2016-04-21  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi