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

Type systems for verification of temporal and state-dependent properties in the presence of various computational effects

Research Project

Project/Area Number 22K17875
Research Category

Grant-in-Aid for Early-Career Scientists

Allocation TypeMulti-year Fund
Review Section Basic Section 60050:Software-related
Research InstitutionNational Institute of Informatics

Principal Investigator

関山 太朗  国立情報学研究所, アーキテクチャ科学研究系, 助教 (80828476)

Project Period (FY) 2022-04-01 – 2025-03-31
Project Status Granted (Fiscal Year 2022)
Budget Amount *help
¥4,680,000 (Direct Cost: ¥3,600,000、Indirect Cost: ¥1,080,000)
Fiscal Year 2024: ¥1,560,000 (Direct Cost: ¥1,200,000、Indirect Cost: ¥360,000)
Fiscal Year 2023: ¥1,560,000 (Direct Cost: ¥1,200,000、Indirect Cost: ¥360,000)
Fiscal Year 2022: ¥1,560,000 (Direct Cost: ¥1,200,000、Indirect Cost: ¥360,000)
Keywordsプログラミング言語 / 型システム / 計算効果 / 時相的検証 / 形式検証
Outline of Research at the Start

高信頼ソフトウェアの実現には状態管理が必要な様々な機能群(計算効果)に対応したプログラム検証技術が必要となる.本研究課題では計算効果の正しい使い方を表わす時相的性質と,プログラムの状態に関する状態依存的性質を検証するための新たな型システムについて研究を行う.これらの性質を検証することで,プログラムが計算効果を正しく使用しているか,プログラムが計算効果の正しい状態を保持しているかが検証可能となる.

Outline of Annual Research Achievements

2022年度は限定継続演算子を利用するプログラムの時相的性質を検証するための手法について研究を行った。限定継続演算子は限定継続と呼ばれる、一種のプログラム文脈を値として取り出すことのできる命令で、これを利用することで例外、バックトラック、ジェネレーターなどの、計算効果を引き起こす様々なプログラミング機能が実装できることが知られている。そのためこの命令を扱えるような検証手法を与えることで、上記に挙げたプログラミング機能を利用するプログラムの性質を検証することが可能となる。2022年度はshift0/resetと呼ばれる限定継続演算子に対し、時相的性質を検証するための型理論を構築し、検証手法実装への足がかりを掴んだ。
また今回の手法を応用することで、エフェクトハンドラと呼ばれる別種の限定継続演算子に対して依存篩型による正確な検証を可能にする型理論を構築することにも成功した。
さらに限定演算子の利用を前提とした時相的検証の研究を通して、より一般的な再帰型を用いるプログラムを対象とした時相的検証に関する知見を得ることができた。

Current Status of Research Progress
Current Status of Research Progress

1: Research has progressed more than it was originally planned.

Reason

本年度では当初の計画通り、限定継続演算子を対象とした時相的性質の検証のための型理論が構築できた。またその際のアイディアが、時相的検証のみならず篩型によるプログラムの正確な安全性検証にも利用できる点、さらにはより一般的な再帰型を利用するプログラムに対する時相的検証を行うための知見を得た点は、当初想定していた以上の進展である。

Strategy for Future Research Activity

今後の研究ではこれまでに構築した型理論を基にしたプログラム検証手法の実装や、状態に依存する性質を検証するための型理論の構築に取り組む。

Report

(1 results)
  • 2022 Research-status Report
  • Research Products

    (6 results)

All 2023 2022

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

  • [Journal Article] Temporal Verification with Answer-Effect Modification: Dependent Temporal Type-and-Effect System with Delimited Continuations2023

    • Author(s)
      Sekiyama Taro、Unno Hiroshi
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: 7 Issue: POPL Pages: 2079-2110

    • DOI

      10.1145/3571264

    • Related Report
      2022 Research-status Report
    • Peer Reviewed / Open Access
  • [Presentation] Temporal Verification with Answer-Effect Modification: Dependent Temporal Type-and-Effect System with Delimited Continuations2023

    • Author(s)
      Sekiyama Taro, Unno Hiroshi
    • Organizer
      ACM SIGPLAN Symposium on Principles of Programming Languages (POPL 2023)
    • Related Report
      2022 Research-status Report
    • Int'l Joint Research
  • [Presentation] 代数的エフェクトとハンドラのためのエフェクトシステムの抽象化2023

    • Author(s)
      吉岡 拓真、関山 太朗、五十嵐 淳
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ(PPL 2023)
    • Related Report
      2022 Research-status Report
  • [Presentation] 限定継続のための高階プログラム論理2023

    • Author(s)
      佐藤 惇、関山 太朗、五十嵐 淳
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ(PPL 2023)
    • Related Report
      2022 Research-status Report
  • [Presentation] 代数的エフェクトハンドラのための篩型システム2023

    • Author(s)
      川俣 楓河、海野 広志、関山 太朗、寺内 多智弘
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ(PPL 2023)
    • Related Report
      2022 Research-status Report
  • [Presentation] 計算効果入門 ― プログラミングから理論まで ―2022

    • Author(s)
      関山 太朗,勝股 審也、叢 悠悠
    • Organizer
      PPLサマースクール2022
    • Related Report
      2022 Research-status Report
    • Invited

URL: 

Published: 2022-04-19   Modified: 2023-12-25  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi