タグ付けされた質問 「logic」

数学的論理とコンピューターサイエンスでのその使用に関する質問

1
動的論理と時相論理の違い
違いを見つけるために、ウィキペディアの時相論理に関する以下のアサーションに遭遇しました: ダイナミックロジックと多くの共通の機能を共有するモーダルロジックの別のバリアントは、Pnueliが「内生」ロジックと特徴づけるものであり、他は「外生」ロジックであるという点で、上記のすべてのロジックと異なります。これにより、Pnueliは、時間の経過とともに単一のグローバルな状況が変化する普遍的な行動フレームワーク内で時相論理アサーションが解釈されることを意味しましたが、他のロジックのアサーションは、彼らが話す複数のアクションの外部で行われます。内生的アプローチの利点は、環境が時間とともに変化するとき、何が何を引き起こすかについて基本的な仮定を行わないことです。その代わりに、時相論理式は、システムの2つの無関係な部分について話すことができます。実際には、時間アサーションの通常の論理結合は、時間ロジックの同時合成演算子です。並行性に対するこのアプローチの単純さにより、同期、干渉、独立性、デッドロック、ライブロック、公平性などの側面を備えた同時システムについて推論するために、時相論理が選択のモーダルロジックになりました。 かなり違いを実感できませんでした。動的ロジックは、時間ロジックだけでなく、引数内のすべての時間駆動の側面をカバーできませんか? それとも、なぜ動的システムが同時システムを処理しないのですか? ケースをクリアしていただけますか?

3
論理と計算に関する入門書
Logic and Computationに関する優れた入門書(ただし包括的な)についての提案を教えていただけますか? 私が心に留めているいくつかのあいまいなトピックは次のとおりです。 Presburger artihm。、PA、ZF、ZFC、HOL 集合論、型論 さまざまな理論によるモデリング計算(チューリングマシン) 計算の複雑さ(FMT、記述的な複雑さ)とのリンク

1
絞り込みタイプの推測
職場では、動的言語に関する型情報を推論する必要があります。次のように、ステートメントのシーケンスをネストされたlet式に書き換えます。 return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z if x then T else F; Z => if x then { T; Z } else { F; Z } 一般的なタイプ情報から始めて、より具体的なタイプを推測しようとしているので、自然な選択は絞り込みタイプです。たとえば、条件演算子は、trueブランチとfalseブランチの型の和集合を返します。単純なケースでは、非常にうまく機能します。 ただし、次のタイプを推測しようとしたときに、思わぬ障害に遭遇しました。 function …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 

1
推論の健全性と完全性の例
次の例は、推論アルゴリズムが適切で完全であるかどうかについて正しいですか? 干し草の山に針a、b、cがあり、針を見つけるように設計された推論アルゴリズムもあるとします。 サウンド -針a、b、cのみが取得されます。 complete-針a、b、cが取得されます。他の干し草も入手できます。
11 logic 

3
間に差がある
私は現在ラムダ計算を学んでいて、ラムダ項を書くことの次の2つの異なる種類について疑問に思っていました。 λ X 、Y。x yλxy.xy\lambda xy.xy λ X 。λ yの。x yλx.λy.xy\lambda x.\lambda y.xy 意味やベータ削減を適用する方法に違いはありますか、それとも同じことを表現する2つの方法だけですか? 特にペア作成のこの定義は私に不思議に思いました: ペア =λ X 、Y。λ P 。p x yλxy.λp.pxy\lambda xy.\lambda p.pxy

2
2つの異なる価格のドリンクディスペンサーのCCSプロセス
ドリンクディスペンサーは、(コインを挿入するために、ユーザが必要です:)三つのボタンの、そしてプレス1 ˉ Dのお茶は、お茶のカップを要求Eの紅茶、コーヒーのため同上を、そしてˉ rは払い戻しを要求する(つまり、マシンが戻っていますコイン:ˉ B)。このディスペンサーは、次のCCSプロセスによってモデル化できます。c¯c¯\bar cd¯お茶d¯tea\bar d_{\text{tea}}eお茶eteae_{\text{tea}}r¯r¯\bar rb¯b¯\bar b M=d e fc 。(dお茶。e¯お茶。M+ dコーヒー。e¯コーヒー。M+ r 。b¯。M)M=defc.(dtea.e¯tea.M+dcoffee.e¯coffee.M+r.b¯.M) M \stackrel{\mathrm{def}}= c.(d_{\text{tea}}.\bar e_{\text{tea}}.M + d_{\text{coffee}}.\bar e_{\text{coffee}}.M + r.\bar b.M) 内戦はコーヒーの価格を2コインに引き上げますが、お茶の価格は1コインのままです。私たちは、2枚のコインの後にのみコーヒーを配達し、1枚または2枚のコインの後に払い戻しを受け入れるように変更されたマシンを求めています。変更したマシンをCCSプロセスでどのようにモデル化できますか?

1
ロジックで「Turing Complete」に二重の概念はありますか?
2つのコンピューティングモデルは、それぞれがもう一方のユニバーサルシミュレータをエンコードできる場合、完全なものとして表示されます。それぞれの推論規則(および存在する場合は公理)のエンコーディングが他の定理であることが示されている場合、2つの論理が完全であることを示すことができます。計算可能性において、これはチューリング完全性と教会チューリング論文の自然なアイデアにつながりました。しかし、論理的な完全性が、同様の品質の完全性の自然に引き起こされたアイデアにつながったところを見たことはありません。 確率と計算可能性は非常に密接に関連しているので、チューリング完全性の自然な双対であるロジックの概念がある可能性があると考えることはそれほど多くないと思います。投機的には、次のようなものがあります。コンピューティングモデルでは記述できない計算可能な関数が存在する場合に限り、ロジックで証明できない「真の」定理があります。私の質問は、これを研究した人はいますか?リファレンスまたはいくつかのキーワードが参考になります。 前の段落の「真の」「計算可能な」とは、直感的ではあるが最終的には定義不可能なアイデアを指している。たとえば、グッドスタインシーケンスの有限性は「真」であるが、ペアノ算術では「真」の概念を完全に定義しないと証明できないことを誰かが示す可能性があります。同様に、対角化によって、計算可能の概念を実際に完全に定義せずに、プリミティブな再帰的ではない計算可能関数があることが示されます。最終的には経験的な概念になりがちですが、それらの概念は、完全性の概念を関連付けるのに十分なほど相互に関連しているのではないかと思いました。

1
用語の書き換え; 重要なペアを計算する
次の演習を解こうとしましたが、すべての重要なペアを見つけようとしていました。 次の質問があります。 どのクリティカルペアが新しいルールを作成したかを知るにはどうすればよいですか? すべての重要なペアを見つけたとどうやって知るのですか? LET ∘がバイナリであるが、私は単項であり、eは定数です。 E = { (X ∘ Y )∘ Z ≈ X ∘ (Y ∘ Z ) X ∘ E ≈ X X ∘ I (X )≈ E }Σ={∘,i,e}Σ={∘,i,e}\Sigma= \left \{ \circ, i, e \right \}∘∘\circiiieeeE=⎧⎩⎨⎪⎪(x∘y)∘z≈x∘(y∘z)x∘e≈xx∘i(x)≈e⎫⎭⎬⎪⎪E={(x∘y)∘z≈x∘(y∘z)x∘e≈xx∘i(x)≈e} E=\left \{ \begin{gather} ( x \circ y ) \circ z …

1
DNFからCNFへの変換:簡単または難しい
CNFからDNFへの変換がNP-Hard(および関連するMathスレッド)であることを証明するスレッドに関連して: DNFからCNFへの他の方向はどうですか?簡単ですか、難しいですか。 このペーパーの 2ページ目では、「CNF表現からDNF表現(またはその逆)に切り替えるときのサイズの最大の拡大に関心がある」と言うと、両方向が等しく難しいことを示唆しているようです。 しかし、DNF-SATはPにあり、CNF-SATはNP完全です。したがって、DNF式与えられると、長さが長さの多項式である、等価な CNF式が存在するはずです。また、変換は、ポリ時間で実行できます。これは正しいです?ϕ1ϕ1\phi_1ϕ2ϕ2\phi_2ϕ1ϕ1\phi_1ϕ1→ϕ2ϕ1→ϕ2\phi_1 \to \phi_2 編集:変更同等にequisatisfiable(であるが、追加の変数がで許可されている)。ϕ2ϕ2\phi_2

1
ヒルベルトの10番目の問題とChaitinのディオファンタス方程式「コンピューター」?
チャイティンのメタ数学で!オメガの探求、彼はヒルベルトの10番目の問題について簡単に話します。次に、ディオファントス方程式は、正の整数係数を持つ2つの等しい多項式に変更できると言います:p = 0p = 0p=0p=0。p = 0⟺p1= p2p=0⟺p1=p2p=0 \iff p_1 = p_2 次に、これらの方程式は「コンピュータ」のように考えることができると彼は言います。 ディオファントス方程式コンピュータ: プログラム:K、出力:nは、時間:X 、Y 、Z 、。。。L (k 、n 、x 、y、z、。。。)= R (k 、n 、x 、y、z、。。。)L(k,n,x,y,z,...)=R(k,n,x,y,z,...)L(k,n,x,y,z,...)=R(k,n,x,y,z,...) kkk んnn x 、y、z、。。。x,y,z,...x,y,z,... 左側では、右側R。彼はkはnを出力するこのコンピューターのプログラムであると言います。また、未知数は多次元の時間変数であるとも述べています。LLLRRRkkkんnn 私を混乱させるのは、ヒルベルトの10番目の問題はこのように見た場合に明らかに解決できないと彼が言ったということです。彼は基本的に「チューリングの停止問題のため」と述べています。しかし、私は関係がわかりません(私は理論を学び始めたばかりです)。私は、誰かがチャイティンのポイントがここにあることをより明確に説明できることを望んでいました。 チューリングの停止問題は基本的に、プログラムが実際に停止する前に(有限の時間を与えられて)停止する時期を予測できないと述べていることを知っています。チャイティンによってレイアウトされた表記法を使用して、ヒルベルトの10番目の問題への適用は何ですか?

3
匿名ラムダ関数(関数型プログラミング)
匿名(ラムダ)関数とは何ですか?関数型プログラミング言語における無名関数の正式な定義は何ですか? 簡単に言うと、scheme / lispでプログラミングしているとき、匿名(ラムダ)関数は識別子にバインドされていない関数だと思います。 ラムダ関数について正式に言えるのはそれだけですか?この単純な定義に追加できる詳細があると思います。詳しく説明していただき、ありがとうございます。


1
さまざまな句の異なる変数
解決定理の証明では、通常、異なる節の変数は異なると想定されます。これは自動的に行われることではありません。実装するには、かなりの追加コードと計算が必要です。それを踏まえて、私はそのためのテストケースを探しています。 問題は、これまでに試したすべてのテストケースで、違いがないことです。おそらくそれは異常なエッジケースでのみ重要です。以下のようウィキペディアプットそれを、「異なる句内の変数は異なっている...さて、XとYはとにかく同じ変数になることを第二節手段にQ(Y)との最初の句でQ(X)を統一します。」 異なる句が同じ変数を使用する場合、実際に間違った答えを与える既知のテストケースはありますか?

3
ポリモーフィズムと帰納的データ型
私は興味がある。私はOCamlでこのデータ型に取り組んできました: type 'a exptree = | Epsilon | Delta of 'a exptree * 'a exptree | Omicron of 'a | Iota of 'a exptree exptree これは、明示的に型指定された再帰関数(ごく最近追加された機能)を使用して操作できます。例: let rec map : 'a 'b. ('a -> 'b) -> 'a exptree -> 'b exptree = fun f -> begin function | Epsilon -> …

1
確定的なブッチオートマトンをLTLに変換するアルゴリズム(可能な場合)
線形時相論理と決定論的ブッチオートマトンは比類のないものです。DBAは表現できず、LTLは「少なくとも各奇数文字が「a」である」と表現できません。しかし、DBAの言語をLTLで表現できるかどうかを知るのは興味深いことがあります。FG aFGaFGa 特定のDBAの言語がLTLで記述できるかどうかを決定するアルゴリズムが必要です。そのためのアルゴリズムを知っていますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.