タグ付けされた質問 「curry-howard」

10
カリーハワード同型から生じる最も興味深い等価物は何ですか?
私はカレーハワード同型に出会ったのは、プログラミングの人生の比較的遅い時期でした。おそらく、これが私を完全に魅了する一因となっています。これは、すべてのプログラミング概念について、形式論理には正確な類似物が存在することを意味し、その逆も同様です。ここにそのような類推の「基本的な」リストがあります。 program/definition | proof type/declaration | proposition inhabited type | theorem/lemma function | implication function argument | hypothesis/antecedent function result | conclusion/consequent function application | modus ponens recursion | induction identity function | tautology non-terminating function | absurdity/contradiction tuple | conjunction (and) disjoint union | disjunction (or) -- corrected by …

6
Data.Voidの不条理な関数は何に役立ちますか?
のabsurd関数にData.Voidは次のシグネチャがあります。Voidは、そのパッケージによってエクスポートされる論理的に無人のタイプです。 -- | Since 'Void' values logically don't exist, this witnesses the logical -- reasoning tool of \"ex falso quodlibet\". absurd :: Void -> a 型としての命題の対応によって、これが有効な式に対応するというドキュメントの発言を得るのに十分なロジックを知っています⊥ → a。 私が戸惑い、興味をそそられるのは、この関数がどのような実用的なプログラミング問題で役立つのかということです。「起こりえない」ケースを徹底的に処理するタイプセーフな方法としていくつかのケースで有用だと思いますが、そのアイデアがまったく正しい道。 編集:できればHaskellでの例が望ましいですが、誰かが依存型付けされた言語を使用したい場合は、文句は言いません...
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.