コンピュータサイエンス

コンピュータサイエンスの学生、研究者、実務家のためのQ&A

3
ラッセル型理論と型システムの関係
私は最近、例えばHaskellに見られるように、ラッセル型の理論と型システムの間に何らかの関係があることに気付きました。実際、Haskellの型の表記法の一部には、型理論の先駆者がいるようです。しかし、1908年のIMHO、ラッセルの動機はラッセルのパラドックスを避けることであり、それがコンピュータサイエンスの型システムにどのように関係しているかはわかりません。 ラッセルのパラドックスは、たとえば、特定の言語で適切な型システムがなかった場合など、心配しなければならない何らかの形ですか?

2
単調なブール式の充足可能性を決定するNP完全性を証明する
この問題を解決しようとしていますが、本当に苦労しています。 単調ブール式は、すべてのリテラルが正である命題論理式です。例えば、 (x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)(x1∨x2)∧(x1∨x3)∧(x3∨x4∨x5)\qquad (x_1 \lor x_2) \land (x_1 \lor x_3) \land (x_3 \lor x_4 \lor x_5) 単調なブール関数です。一方、次のような (x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)(x1∨x2∨x3)∧(¬x1∨x3)∧(¬x1∨x5)\qquad (x_1 \lor x_2 \lor x_3) \land (\neg x_1 \lor x_3) \land (\neg x_1 \lor x_5) 単調なブール関数ではありません。 この問題のNP完全性をどのように証明できますか: 変数が1に設定されている場合、単調なブール関数が充足可能かどうかを判別しますか?kkk111 明らかに、すべての変数を正の値に設定することができますが、それは些細なことなので、正に設定された変数には制限があります。kkk 私はSATからモノトーンブール式への削減を試みました。私が試したことの1つは、すべての負のリテラルにダミー変数を代入することです。例えば、私が交換しようとしたとZ 1、及び私は強制的に試み、X 1およびZ 1が異なる値であること。私はこれをうまく機能させることができませんでした。¬x1¬x1\neg x_1z1z1z_1x1x1x_1z1z1z_1


2
ツリーの線形時間ラベル付けアルゴリズム?
頂点にラベルを付けたい無向ツリーがあります。リーフノードには1つのラベルを付ける必要があります。次に、葉が取り除かれたと仮定します。残っているツリーでは、葉に2つのラベルを付ける必要があります。このプロセスは、すべての頂点にラベルが付くまで明白な方法で続きます。これを行う理由は、頂点をキューに保存し、それらを「最初に残す」ことです。この時間を実行する簡単な方法はありますか?O(n+m)O(n+m)O(n+m) すべてのステップでBFSを実行することで問題を解決できます。しかし最悪の場合、すべてのステップですべての頂点を通過し、ちょうど2つのリーフを削除してキューに入れます。これには二次時間がかかると思います。 別のアイデアは、最初にすべての葉を見つけ、次にすべての葉からBFSを実行することでした。これは私に望ましい解決策を与えません。たとえば、次の図のような「クラウングラフ」の種類を考えます。目的のソリューションが示されていますが、各リーフからBFSを起動すると、2つのラベルのみが使用されます。 理想的には、線形時間アルゴリズムの説明と実装も簡単です。
12 algorithms  trees 

4
入力が単項符号化されると、強くNP困難または完全な問題の複雑さが変わりますか?
入力がバイナリエンコードではなく単項の場合、強力なNPハードまたはNP完全問題(たとえば、ここで定義)の難易度は変わりますか? 強いNP困難問題の入力が単項符号化される場合、どのような違いが生じますか?例えば、弱いNP完全ナップザック問題を取り上げると、バイナリエンコードの場合はNP完全ですが、単項エンコードの場合は動的プログラミングによって多項式時間で解くことができます。多分、それは多項式時間階層のより高いレベルの硬度にいくつかの意味を持っていますか? 強く...という概念は、他の複雑度クラス、たとえば多項式時間階層の上位クラスにも当てはまりますか? 以前、stackoverflow.comでこの質問をしましたが、ここでより適切であることが指摘されました。

3
CFGのチョムスキー標準形のような標準形の重要性
文脈自由文法は文脈自由言語を表すために使用できることを理解しています。曖昧さがあるかもしれません。ChomskyやGreibachの正規形のような正規形もあります。その必要性を理解できませんでした。 なぜそれらは言語の理論において重要なのですか?私が言及したすべての教科書は、これらの通常の形式について語っていますが、その重要性については何も語っていません。

4
機械学習とシステム識別
機械学習とシステム識別の違いと類似点について説明してもらえますか?これらは同じものの2つの名前ですか?で、このページ、彼らは言います: 機械学習およびシステム識別コミュニティは、限られたまたはノイズの多い観測からモデルを構築する必要がある同様の問題に直面しています。 クリストファー・M・ビショップ著の有名な本「パターン認識と機械学習」の初期の章も読んだことがあります。これまでのところ、私の結論は、システム同定が解決しようとしている問題は、機械学習が解決しようとしているもののサブセットであるということです。

2
正方形の直交ポリゴンをタイリングする
直交多角形(辺が軸に平行な多角形)が与えられた場合、和集合が多角形に等しい内部で分離した正方形の最小セットを見つけたいです。 次のようなわずかに異なる問題への参照をいくつか見つけました。 カバー正方形直交ポリゴン-私の問題と同様に、しかし被覆正方形は重複させます。この問題には多項式解があります(Aupperle、Conn、Keil and O'Rourke、1988 ; Bar-Yehuda and Ben-Hanoch、1996)。 直交ポリゴンを長方形にタイル化/分解/分割します。この問題には多項式解があります(Keil、2000 ; Eppstein、2009)。 長方形で直交ポリゴンをカバーする-この問題はNP完全であることが知られています(Culberson and Reckhow、1988)。 私は、最小限のアルゴリズムを探していますタイリングと正方形。

5
NPの欠陥= CoNP証明?
NP = CoNPのこの非常に単純な「証明」があり、どこかで間違ったことをしたと思いますが、何が間違っているのかわかりません。誰か助けてくれますか? AをNPの問題とし、MをAの決定者とします。Bを補数にします。つまり、BはCoNPにあります。Mは決定者であるため、これを使用してBも決定できます(答えを反転させるだけです)。これは、NPとCoNPの両方の問題を同じMで解決するという意味ではありませんか? もっと具体的に言うと。 AをNP完全問題とし、MをAの決定者とします。CoNPの問題Bを検討します。NPにある補数not-Bを考慮し、Aへの多項式簡約を取得します。次に、ディサイダーMを実行し、答えを反転します。したがって、Bの決定子を取得します。これは、BもNPにあることを意味します。 私の推論の何が悪いのか知っていますか?

2
セイ、L⊆{0}∗L \subseteq \{0\}^*。それでは、L∗L^*が規則的であることをどのように証明できますか? LLが規則的であれば、もちろんL∗L^*も規則的です。場合はLL有限である、定期的にして再度あるL∗L^*規則的です。また、私はために、ということに気づいたL={0p∣p is a prime}L = \{0^p \mid p \text{ is a prime}\}、LL定期的ではない、L⊆{0}∗L \subseteq \{0\}^*およびL∗L^*規則的です。 しかし、{ 0 } ∗のサブセットに対してこれをどのように表示するのでしょうか?LL{0}∗\{0\}^*

3
「森林破壊」はプログラムから「木」をどのように削除しますか?
私はどのように森林伐採が消費理解だと思うと同時に、リストを生成し(倍からと展開]機能- ここにコードレビューでこの良い答えを参照)、しかし、私はそれを比較した場合、技術上のWikipediaのエントリ、それは削除する「について話しましたプログラムからの木。 プログラムを構文解析ツリーに解析する方法は理解できます(そうですか?)が、プログラムのある種の単純化(それ?)に森林破壊を使用する意味は何ですか?そして、どのように自分のコードにそれをしますか?

3
NFAが別のNFAのサブセットを受け入れるかどうかの効率的なテストはありますか?
したがって、正規言語が正規言語サブセットであるかどうかのテストは決定可能です。両方をDFAに変換し、計算してから、この言語が空かどうかをテストできるからです。RRRSSSR∩S¯R∩S¯R \cap \bar{S} ただし、これにはDFAへの変換が必要であるため、DFA、ひいてはテストアルゴリズムが、入力NFAの状態の数に関して指数関数的になる可能性があります。 多項式時間でこれを行う既知の方法はありますか?一般に、この問題はCo-NPが完全であることが証明されていますか? では受け入れられるがでは受け入れられない単語は多項式証明者になるため、問題はCo-NPにあることに注意してください。RRRSSSR⊈SR⊈SR \not \subseteq S 編集:これは、そのような単語が状態の数で多項式になるという保証がないため、正しくありません。



7
であるならば、通常の
場合A 2がA2A^2規則的である、ということにはないAはAA、正規のですか? 証明に関する私の試み: はい、矛盾のために、AAAが正規でないと仮定します。次いで、2 = A ⋅ A。A2=A⋅AA^2 = A \cdot A 2つの非正規言語の連結は正規ではないため、A 2A2A^2を正規にすることはできません。これは私たちの仮定と矛盾しています。だから、AはAA規則的です。したがって、A 2A2A^2が正規の場合、AAAは正規です。 証明は正しいですか? これをA 3A3A^3、A 4A4A^4などに一般化できますか?また、A ∗A∗A^*が正規の場合、Aは正規であるAA必要はありませんか? 例:A = { 1 2 iが | iが≥ 0 }A={12i∣i≥0}A=\lbrace 1^{2^i} \mid i \geq 0\rbrace規則的ではないが、A *がA∗A^*規則的です。

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