タグ付けされた質問 「denotational-semantics」

2
意味論的意味論では操作上の意味論ではできない質問に答えることができますか?
プログラミング言語を定義するための操作上のセマンティクス(小さなステップと大きなステップの両方)に精通しています。表記法のセマンティクスの学習にも興味がありますが、努力する価値があるかどうかはわかりません。異なる視点から同じ教材を学習しているだけでしょうか、それとも表示的意味論を理解することからしか得られない洞察はありますか?

4
主要な改札口オペレーターとはどういう意味ですか?
著者はプログラミング言語のセマンティクスを表すために異なる表記法を使用することを知っています。実際のところ、ガイ・スティールは興味深いビデオでこの問題に取り組んでいます。 主要な回転式改札口のオペレーターが十分に認識されている意味を持っているかどうかを誰かが知っているかどうかを知りたい。たとえば、次の分母の先頭にある先頭の演算子がわかりません。⊢⊢\vdash x:T1⊢t2:T2⊢λx:T1.t2 : T1→T2x:T1⊢t2:T2⊢λx:T1.t2 : T1→T2\frac{x:T_1 \vdash t_2:T_2}{\vdash \lambda x:T_1 . t_2 ~:~ T_1 \to T_2} 誰かが私を理解するのを助けることができますか?ありがとう。

1
Hoare-FloydロジックとScott–Stracheyセマンティクスの間の主要なブレークスルーは何でしたか?
ミルナーのマイクゴードンによる「厳密な証明を支援するための機械の使用」についての解説を読んでいます。このペーパーでは、Dana ScottとStracheyによる表示セマンティクスのアイデアからLCFがどのように生まれたかを説明します。 FCFを開発するにはFloyd-Hoareロジックでは不十分であるように見えますが、なぜこれが当てはまるのかはわかりません。最後に、Hoareロジックでは、いくつかの前提条件を満たし、関係を介していくつかの事後条件適合するプログラム状態を扱い、Iはこの式を提供できます。ウィキペディアは、意味論的意味論は次のように述べています:PPPrrrQQQ は、言語からの式の意味を説明する数学的オブジェクト(表記と呼ばれる)を作成することにより、プログラミング言語の意味を形式化するアプローチです。 Hoareロジックでは、再帰を扱った覚えがありませんでしたが、このアプローチでインスタンス再帰がいくつかの関係の固定点としてどのようにモデル化されるかに関するいくつかの直観に精通しています。それでも、両方のアプローチは、数学的関係を使用して入力と出力の間の関係を記述しようとするようです。 質問 それでは、Hoareロジックと表記セマンティクスの違いは何ですか?表示セマンティクスはプログラムのいくつかの複雑さをよりよく管理しますか?その場合は、例を挙げて説明してください。 たぶん、次のミルナーの表記意味論に関する引用は、あなたの答えを導くのに興味深いです: このロジックでプログラミング言語の構文を書き留め、ロジックでセマンティクスを記述することができました。

1
なぜ計算可能な関数は継続的ですか?
私はラムダ計算の意味論的意味について読みやすい文書を書いているところです。そのために、CPO、単調性、連続性を紹介します。CPOはセットですMMM 半順序で ≤≤\leqおよび下部要素必要、における最小要素であると上限以上の存在(毎鎖用)で。関数 2のCPOの間に、すべてのための場合は、単調である以下が成り立ちます。⊥⊥\bot⊥⊥\botMMM⨆⨆\bigsqcupd0≤d1≤d2≤...d0≤d1≤d2≤...d_0 \leq d_1 \leq d_2 \leq ...MMMfffMMMNNNa,b∈Ma,b∈Ma, b \in M a≤b⟹f(a)≤f(b)a≤b⟹f(a)≤f(b)a \leq b \implies f(a) \leq f(b) 関数 2のCPOの間で、それが単調であり、すべてのチェーンのためならば、連続している、我々が持っていますfffMMMNNNd0≤d1≤d2≤…d0≤d1≤d2≤…d_0 \leq d_1 \leq d_2 \leq \dots f(⨆i∈Ndi)=⨆i∈Nf(di).f(⨆i∈Ndi)=⨆i∈Nf(di).f(\bigsqcup_{i \in \mathbb{N}} d_i) = \bigsqcup_{i \in \mathbb{N}} f(d_i). これらの定義の意味について読者に良い直感を与えたいと思います。ただし、書き留めることができるものはありません。彼の本»言語«(1993)プログラミングの正式な意味でのグリン・ウィンスケルに続き、として読まれなければなら近いを意味し、(ページ72)できるだけ多くの情報として、少なくとも持っています。これにより、出力に関する詳細情報(122ページ)に入力に関する詳細情報を反映する単調関数になります。これは私には幾分理解できます。ただし、継続性の説明は私には明確ではありません。a≤ba≤ba \leq baaabbbbbbaaa 後で説明するように、計算可能な関数は、計算可能な関数の出力における情報の単位の出現は、入力における有限数の情報の単位の存在にのみ依存するべきであるという考えに従って、連続でなければなりません。 (73ページ) これは、セクション8.2(121〜123ページ)のストリームの例、またはこの回答を読んだ後でも、まだわかりません。 だから私の最後の質問は、計算可能な関数が連続的であることを読者にどのように納得させるのですか?なぜありません何で計算機能ではない連続は? 計算能力や固定小数点理論の厳密な導入を必要としない答え/例を提供していただければ幸いです。私はそれらに集中したくないからです。また、ラムダ計算とその意味論的な意味論を事前に知る必要がない場合は、それらの前に単調性と連続性を導入する必要があるので(そうしなければならないので)、すばらしいでしょう。 編集:計算可能というのは、チューリング計算可能という意味です。Winskelsの計算可能ページ337ページの定義を誤解している場合は、訂正してください。これは、チューリング計算可能として明示的に定義されているわけではなく、同等の方法で(少なくとも私の目では)です。 また、私の問題を説明しようとしている別の情報源を指摘したいと思います。しかし、それでもWinskelからのストリームの例と基本的に同じであるため、その例はわかりません。 編集2:それはまた、すべての計算可能な関数が単調であること、つまり非単調な計算可能な関数が存在しないことを示すために私が問題を理解するのを助けるのに良いスタートです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.