依存型理論におけるモデリングオブジェクト(OOP)


13

私は、オブジェクト指向プログラミングから、依存型理論におけるオブジェクトのモデリングに興味があります。可能なアプリケーションとして、命令型プログラミング言語のさまざまな機能を説明できるモデルが必要です。

依存型理論におけるオブジェクトのモデリングに関する論文は1つしか見つかりませんでした
。A。Setzerによる依存型理論におけるオブジェクト指向プログラミング(2006)

私が見逃したトピックに関するさらなる参照はありますか、おそらく最近のものがありますか?

CoqやAgdaのような定理証明者に利用可能な実装(すなわち証明)はおそらくありますか?

回答:


6

この分野で行われた初期の(?)作業は、Bart Jacobs(Nijmegen)とMarieke Huismanによるものでした。彼らの仕事はPVSツールに基づいており、クラスの代数的エンコーディングに依存していました(正しく覚えていれば)。2000年の論文と2001年の博士論文のMariekeの出版ページご覧ください。また、言及したA Setzer論文で引用されたBart Jacobsの論文もご覧ください

当時、彼らにはLOOPツールと呼ばれるものがありましたが、インターネットからは消えたようです。

OOプログラムの正式な検証に対処するFTfJP(Javaのようなプログラムの形式的手法)として知られるワークショップシリーズがあります。間違いなく、仕事のいくつかは依存型理論/高階論理を使用しています。ワークショップシリーズは約14年間実行されています。


3

実質的に拡張されたフォローペーパーがあります。AndreasAbel、Stephan Adelsberger、Anton Setzer:Interactive Programming in Agda-Objects and Graphical User Interfaces。GUIを含むオブジェクトベースのプログラムを作成するためのAgdaライブラリが含まれています。オブジェクト指向プログラミングに基づいて、Agdaの医療分野で検証済みのGUIを作成することに関するStephan Adelsbergerのフォローアップペーパーがいくつかあります。



2

OOPを表すために依存型理論を検討しているのはなぜですか?非依存計算で満足のいく方法でOOPをモデル化することはできませんか?System F(またはジェネリックをサポートしたい場合はFω)に変換すると、OOPがどのように見えるかについての非公式のモデルがあり、型と値の依存関係がどこで作用するかわかりません。

依存型は、たとえば、代数的データ型に低レベルの意味を与えるために使用できます。おそらく、オブジェクト指向機能のこのような低レベルのエンコードを行うことができますが、代数的データ型をモデリング言語に追加するよりも良いとは思いません。

たぶん、現在の型指定されていないOOP構造体に、instance_ofその後にcast。依存型ハッカーは、こうしたプログラムについて静的に推論するのに役立つことがわかります。しかし、動的角度に集中する操作を「モデル化」するかどうかはわかりませんが、それはそれ以上のものです。


これは質問に対する答えではありません。これはディスカッションフォーラムではありません。
デイブクラーク
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.