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

2017 Fiscal Year Annual Research Report

Theory of Gradual Typing for Modern Programming Languages

Research Project

Project/Area Number 17H01723
Research InstitutionKyoto University

Principal Investigator

五十嵐 淳  京都大学, 情報学研究科, 教授 (40323456)

Co-Investigator(Kenkyū-buntansha) 馬谷 誠二  京都大学, 情報学研究科, 助教 (40378831)
中澤 巧爾  名古屋大学, 情報学研究科, 准教授 (80362581)
海野 広志  筑波大学, システム情報系, 准教授 (80569575)
Project Period (FY) 2017-04-01 – 2021-03-31
Keywords漸進的型付け / 顕在的契約計算 / 非決定計算 / トレース意味論
Outline of Annual Research Achievements

交付申請書で挙げた3つの課題について以下のような成果が得られた.まず,課題(1)の,動的な言語機構のための漸進的型付けについては,コード片をデータとして扱えるような言語のモデルを設定し,そのモデルに実行時にコード片の型検査を行う機構をキャストの一種として導入し拡張を行い,操作的意味論や型付け規則の形式化を行った.そして,このモデルが漸進的型付け体系としての基本的な性質を満たすことを一部証明した.課題(2)の,計算効果をもつ言語のための統一的な漸進的型付けについては,数年前に村井らが研究した,公開契約計算のトレース意味論について研究を進め,操作的意味論に対して完全抽象的(fully abstract)なトレース意味論の構築に成功した.また,非決定計算に顕在的契約を導入したような言語のモデルについての研究を行い,素朴に導入すると型に現れる契約情報が無意味なものになってしまうこと,そして,非決定計算の意味論を工夫することによって,その問題が克服できることがわかった.課題(3)の,漸進的型付けの効率的な実装技術の理論については,二階の型理論である System F の漸進的型付け拡張の研究の一環として研究を行った.一般に漸進的型付き言語は実行時型検査を行いながらプログラム実行が進むために,型情報をプログラム中や実行時に保持する必要がある.これを素朴に二階の計算体系で考えると,型変数を介した型情報の受渡しのオーバーヘッドが発生することになる.この問題に対して,実行時に型情報を保持する必要があるかどうかを静的に解析し,必要のない部分については型情報を消去する最適化が行えることを示し,インタプリタ実装を行った.

その他,課題(2)に関連して,通信プロトコルを型として記述するセッション型の体系の漸進化や,トレース意味論を元にした高階関数の仕様記述ができる動的論理の拡張の研究などを行った.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

3つ挙げた課題それぞれについて着実に研究成果がでてきており初年度の成果としてほ,おおむね順調に進展しているといってよい.課題1のコードをデータとして扱える言語のための漸進的型付け,そして,課題2の非決定計算のための顕在的契約計算に関する研究成果については,まだ論文として発表ができておらず,今後,論文執筆を通じて研究内容を洗練させる必要がある.トレース意味論の完全抽象性については,国内ワークショップで発表を行ったが今後成果を洗練させて国際学術雑誌などでの発表を目指す必要があるだろう.課題3について研究実績の概要で述べた,二階の漸進的型付け体系はトップカンファレンスで発表済である.また,関連する成果である漸進的セッション型,動的論理の拡張研究はいずれもトップカンファレンスで発表済もしくは発表予定であり,今後,本課題の研究との本格的な融合が期待される.

Strategy for Future Research Activity

課題1の,コードをデータとして扱える言語のための漸進的型付けについては,基盤となる(漸進的型付け導入前の)体系の表現力が弱いことがわかっている.具体的には,コード型にそのコードの型環境情報も含まれているため制約が過度になっている,という問題である.既存の研究で,型環境を抽象化できる型理論が研究されているので,それを利用することを考えている.課題2については,非決定計算の契約計算拡張について研究を進める.また,計算効果一般に対しての漸進的型付けを考えるために,まず,計算効果を統一的に扱えるプログラミング言語のモデルとして限定継続とノミナル・ゲーム意味論を採用し,そのモデル上の漸進的型付けを研究する.限定継続については,これまでの研究で,動的型付と単純型を素朴に組み合わせると,プログラムのかなりの部分が「継続を使うかもしれない」として型付けされてしまい,結果として,制限が強い型システムになることがわかった.今年度はこの問題の解決を図る.一方のノミナル・ゲーム意味論を元にするアプローチについては,動的論理の拡張の研究を出発点として,ここでのトレース意味論をノミナル・ゲーム意味論で置き換えることによって,計算効果を持つ言語一般に対するプログラム検証の理論的枠組みを構築する.課題3については,昨年度の研究で構築した,多相的な顕在的契約計算についての無駄な動的検査の除去を行うためのプログラム変換の理論を発展させ,静的プログラム解析・コンパイル手法へ応用するための研究を行う.

  • Research Products

    (17 results)

All 2018 2017 Other

All Int'l Joint Research (3 results) Journal Article (6 results) (of which Int'l Joint Research: 3 results,  Peer Reviewed: 6 results,  Open Access: 3 results) Presentation (8 results) (of which Int'l Joint Research: 5 results)

  • [Int'l Joint Research] エジンバラ大学(英国)

    • Country Name
      UNITED KINGDOM
    • Counterpart Institution
      エジンバラ大学
  • [Int'l Joint Research] リスボン大学(ポルトガル)

    • Country Name
      PORTUGAL
    • Counterpart Institution
      リスボン大学
  • [Int'l Joint Research] フライブルク大学(ドイツ)

    • Country Name
      GERMANY
    • Counterpart Institution
      フライブルク大学
  • [Journal Article] Propositional Dynamic Logic for Higher-Order Functional Programs2018

    • Author(s)
      Yuki Satake, Hiroshi Unno
    • Journal Title

      Proceedings of CAV 2018, LNCS

      Volume: 印刷中 Pages: 印刷中

    • Peer Reviewed
  • [Journal Article] A Fixpoint Logic and Dependent Effects for Temporal Property Verification2018

    • Author(s)
      Yoji Nanjo, Hiroshi Unno, Eric Koskinen, Tachio Terauchi
    • Journal Title

      Proceedings of LICS 2018

      Volume: 印刷中 Pages: 印刷中

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Relatively complete refinement type system for verification of higher-order non-deterministic programs2017

    • Author(s)
      Hiroshi Unno, Yuki Satake, Tachio Terauchi
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: 2 Issue POPL Pages: 1~29

    • DOI

      10.1145/3158100

    • Peer Reviewed / Open Access
  • [Journal Article] On polymorphic gradual typing2017

    • Author(s)
      Yuu Igarashi, Taro Sekiyama, Atsushi Igarashi
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: 1 Pages: 1~29

    • DOI

      10.1145/3110284

    • Peer Reviewed / Open Access
  • [Journal Article] Gradual Session Types2017

    • Author(s)
      Atsushi Igarashi, Peter Thiemann, Vasco T. Vasconcelos, Philip Wadler
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: 1 Issue ICFP Pages: 38:1-38:28

    • DOI

      10.1145/3110282

    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Polymorphic Manifest Contracts, Revised and Resolved2017

    • Author(s)
      Taro Sekiyama, Atsushi Igarashi, Michael Greenberg
    • Journal Title

      ACM Transactions on Programming Languages and Systems

      Volume: 39 Pages: 1~36

    • DOI

      10.1145/2994594

    • Peer Reviewed / Int'l Joint Research
  • [Presentation] 高階契約に対するトレース意味論の完全抽象性2018

    • Author(s)
      井上 鉄也,中澤 巧爾
    • Organizer
      第20回プログラミングおよびプログラミング言語ワークショップ (PPL2018)
  • [Presentation] 非決定的顕在的契約計算2018

    • Author(s)
      西田 雄気,五十嵐 淳
    • Organizer
      第20回プログラミングおよびプログラミング言語ワークショップ (PPL2018)
  • [Presentation] Relatively complete refinement type system for verification of higher-order non-deterministic programs2018

    • Author(s)
      Hiroshi Unno, Yuki Satake, Tachio Terauchi
    • Organizer
      ACM Symposium on Principles of Programming Languages
    • Int'l Joint Research
  • [Presentation] Propositional Dynamic Logic for Higher-Order Functional Programs2018

    • Author(s)
      Yuki Satake, Hiroshi Unno
    • Organizer
      International Conference on Computer Aided Verification
    • Int'l Joint Research
  • [Presentation] A Fixpoint Logic and Dependent Effects for Temporal Property Verification2018

    • Author(s)
      Yoji Nanjo, Hiroshi Unno, Eric Koskinen, Tachio Terauchi
    • Organizer
      ACM/IEEE Symposium on Logic in Computer Science
    • Int'l Joint Research
  • [Presentation] アクセス制御論理に基づくIoT向け分散型アクセス制御フレームワーク2017

    • Author(s)
      五十嵐 琢磨,馬谷 誠二
    • Organizer
      第15回 ディペンダブルシステムワークショップ (DSW 2017)
  • [Presentation] On Polymorphic Gradual Typing2017

    • Author(s)
      Yuu Igarashi, Taro Sekiyama, Atsushi Igarashi
    • Organizer
      ACM SIGPLAN International Conference on Functional Programming
    • Int'l Joint Research
  • [Presentation] Gradual Session Types2017

    • Author(s)
      Atsushi Igarashi, Peter Thiemann, Vasco T. Vasconcelos, Philip Wadler
    • Organizer
      ACM SIGPLAN International Conference on Functional Programming
    • Int'l Joint Research

URL: 

Published: 2018-12-17   Modified: 2022-06-10  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi