Validating the type soundness of a programming language through translation into a logical system

通过翻译成逻辑系统来验证编程语言的类型健全性

基本信息

  • 批准号:
    22K11902
  • 负责人:
  • 金额:
    $ 2.66万
  • 依托单位:
  • 依托单位国家:
    日本
  • 项目类别:
    Grant-in-Aid for Scientific Research (C)
  • 财政年份:
    2022
  • 资助国家:
    日本
  • 起止时间:
    2022-04-01 至 2025-03-31
  • 项目状态:
    未结题

项目摘要

関数型プログラミング言語OCamlの型付中間表現であるTypedtreeを定理証明支援系Coqの内部言語であるGallinaに変換するという基本構想を定め,実装を始めた.なお,Typedtreeに型情報が付随しているもの,型推論によるものであり,独立した整合性の確認が行われていない.対して,Gallinaについて厳格な型の確認が行われており,この変換で信頼性が上がるといえる.実装において,CoqのライブラリとしてOCamlプログラムの副作用(可変な参照型,例外処理など)を扱うモナドを定義し,OCamlのコンパイラがこのモナドを使うGallinaのコードを生成できるように拡張した.変換したプログラムが実行可能で,動作が変わらないことも確認した.代数的データ,再帰関数やループも扱えるようにし,徐々に機能を増やしている.この方法でGADTも表現可能であることも確認したが,コンパイラでは未実装である.モナドを定義する際,Coqの型定義の制限を緩和する必要があり,結果的にCoqの論理が無矛盾でなくなることを確認したが,モナドの利用方法を制限した場合についてはまだ検討中である.さらに,この変換をプログラムの証明にも使えるようにするために,上記のモナドの等式理論を定義し,プログラム証明ライブラリMonaeで使えるようにした.それを使って,参照型を使った関数の正しさの証明も行い,実用性を確認した.上記についてTYPES 2022(フランスのナント開催),ML Workshop 2022(リュブリャーナ開催),JSSST 2022およびPPL 2023(名古屋開催)で報告している.
The basic conjecture of the support system Coq's internal speech is determined by the Typedtree theorem. Type tree type information is dependent on type inference, independent integration and confirmation. In contrast, Gallina is not only the type of information, but also the type of information. In practice, the side effects of Coq's profile (optional reference type, exception handling) are defined, and OCaml's profile is defined, so that Gallina's profile is generated. The action is confirmed when the switch is made. Algebra is the most important part of the game. This method is GADT performance may not be confirmed. When defining Coq, it is necessary to relax the restrictions on the definition of Coq. As a result, the logic of Coq is not contradictory. It is confirmed that the utilization method of Coq is restricted. In this paper, we introduce the theory of equation definition and prove the theory of Monae. For example, if you want to verify the validity of the model, you can use it. The above notes are TYPES 2022(open call), ML Workshop 2022(open call), JSSST 2022 and PPL 2023(open call).

项目成果

期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
OCaml プログラムの Coq への変換とプログラムの正しさの証明
将 OCaml 程序转换为 Coq 并证明程序的正确性
  • DOI:
  • 发表时间:
    2023
  • 期刊:
  • 影响因子:
    0
  • 作者:
    毎田詠人;中村薫;才川隆文;Jacques Garrigue
  • 通讯作者:
    Jacques Garrigue
OCaml から Coq へのコンパイラ及び翻訳されたプログラムの証明
OCaml 到 Coq 编译器和翻译程序的证明
  • DOI:
  • 发表时间:
    2022
  • 期刊:
  • 影响因子:
    0
  • 作者:
    中村薫;才川隆文;Jacques Garrigue;毎田詠人
  • 通讯作者:
    毎田詠人
Validating OCaml soundness by translation into Coq
通过翻译成 Coq 来验证 OCaml 的健全性
  • DOI:
  • 发表时间:
    2022
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Takafumi Saikawa;Jacques Garrigue
  • 通讯作者:
    Jacques Garrigue
Interpreting OCaml GADTs into Coq
将 OCaml GADT 解释为 Coq
  • DOI:
  • 发表时间:
    2022
  • 期刊:
  • 影响因子:
    0
  • 作者:
    Jacques Garrigue;Takafumi Saikawa
  • 通讯作者:
    Takafumi Saikawa
Coqgen : A Coq generation backend for OCaml
Coqgen:OCaml 的 Coq 生成后端
  • DOI:
  • 发表时间:
  • 期刊:
  • 影响因子:
    0
  • 作者:
  • 通讯作者:
{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

数据更新时间:{{ journalArticles.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ monograph.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ sciAawards.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ conferencePapers.updateTime }}

{{ item.title }}
  • 作者:
    {{ item.author }}

数据更新时间:{{ patent.updateTime }}

J Garrigue其他文献

J Garrigue的其他文献

{{ item.title }}
{{ item.translation_title }}
  • DOI:
    {{ item.doi }}
  • 发表时间:
    {{ item.publish_year }}
  • 期刊:
  • 影响因子:
    {{ item.factor }}
  • 作者:
    {{ item.authors }}
  • 通讯作者:
    {{ item.author }}

相似海外基金

ピエゾ極限センサを用いたインフラ構造物の簡易自律型健全性モニタリングシステム
使用压电极限传感器的基础设施结构简单自主健康监测系统
  • 批准号:
    20H00290
  • 财政年份:
    2020
  • 资助金额:
    $ 2.66万
  • 项目类别:
    Grant-in-Aid for Scientific Research (A)
Type soundness without runtime checks: From gradually to fully typed programs via type inference
无需运行时检查的类型健全性:通过类型推断从逐渐类型化程序到完全类型化程序
  • 批准号:
    518831-2018
  • 财政年份:
    2020
  • 资助金额:
    $ 2.66万
  • 项目类别:
    Postgraduate Scholarships - Doctoral
Type soundness without runtime checks: From gradually to fully typed programs via type inference
无需运行时检查的类型健全性:通过类型推断从逐渐类型化程序到完全类型化程序
  • 批准号:
    518831-2018
  • 财政年份:
    2019
  • 资助金额:
    $ 2.66万
  • 项目类别:
    Postgraduate Scholarships - Doctoral
Type soundness without runtime checks: From gradually to fully typed programs via type inference
无需运行时检查的类型健全性:通过类型推断从逐渐类型化程序到完全类型化程序
  • 批准号:
    518831-2018
  • 财政年份:
    2018
  • 资助金额:
    $ 2.66万
  • 项目类别:
    Postgraduate Scholarships - Doctoral
{{ showInfoDetail.title }}

作者:{{ showInfoDetail.author }}

知道了