コンピュータサイエンス

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

1
結合は並列化できますか?
述語で2つの関係を結合したいとします。これはNCですか? NCにないことの証明はであることの証明になると私は理解しているので、それが未解決の問題であるという証拠を答えとして受け入れます。P≠ NCP≠NCP\not=NC 一般的なケースだけでなく、特定のケースにも興味があります(たとえば、並列化できる特定のデータ構造がある場合)。 編集:コメントからこの投稿にいくつかの明確化をもたらすために: 等結合検討できます。X = B 。y。シングルプロセッサでは、ハッシュベースのアルゴリズムはO (| A | + | B |)で実行され、これは各セットを読み取る必要があるため、私たちができる最善の方法です。A 。X = B 。yA.x=B.yA.x = B.yO (| A | + | B |)O(|A|+|B|)O(|A|+|B|) 述語が各ペアをチェックする必要がある「ブラックボックス」である場合、ペアであり、それぞれが中にあるかどうかにかかわらず、2 a b可能性があります。各ペアをチェックすると、可能性が半分に分割されます。そのため、私たちにできる最善のことはO (a b )です。| A | ⋅ | B ||A|⋅|B||A|\cdot|B|2a b2ab2^{ab}O (a b )O(ab)O(ab) logknlogk⁡n\log^k n

3
言語が規則的であると直感的に感じる方法
言語与えられた場合、この言語は規則的でないと、プロダクションルールを調べずに直接どのように言えますか?L = { aんbんcん}L={anbncn} L= \{a^n b^n c^n\} ポンピングレンマを使用することもできますが、これは通常の文法ではないと文法を見ているだけの人もいます。どのようにして可能ですか?

1
負のサイクルをキャンセルする
ジェネリックネガティブサイクルキャンセリングアルゴリズムを使用して、最小コストフローの問題を解決したいと考えています。つまり、ランダムな有効フローから始めて、最小平均コストサイクルなどの「良い」負のサイクルは選択せず、Bellman-Fordを使用して最小サイクルを発見し、発見されたサイクルに沿って拡張します。ましょうグラフ内のノードの数であり、Aのエッジの数、Uグラフにおけるエッジの最大容量、Wグラフにおけるエッジの最大コスト。次に、私の学習資料は次のように主張しています。VVVああAUUUWWW 最初の最大コストはA U W以下にする必要がありますA UWあUWAUW 1つの負のサイクルに沿った増加により、コストが少なくとも1ユニット削減されます 負のコストを許可しないため、最小コストの下限は0です。 負の各サイクルはO (VA )O(Vあ)O(VA) そして、アルゴリズムの複雑さはであると彼らは言う。私は各主張の背後にある論理を理解していますが、複雑さは異なると思います。具体的には、拡張の最大数は、拡張ごとに1単位のフローによって与えられ、A U Wからゼロまでのコストを取って、最大A U Wの拡張を提供します。それぞれについて負のサイクルを発見する必要があるので、増加の最大数にサイクルを発見するのに必要な時間(V A)を掛けてO (A 2 V UO (V2A UW)O(V2あUW)O(V^2AUW)A UWあUWAUWA UWあUWAUWVあVあVAアルゴリズム。O (A2VUW)O(あ2VUW)O(A^2VUW) これは学習教材の誤り(これは、コースからの学生のメモではなく、教授から提供されたテキストです)ですか、それとも私の論理は間違っていますか?

1
ORゲートとMODゲートを備えた深度2回路は普遍的ではありませんか?
これは、すべてのブール関数ことはよく知られている(変数上、それらの否定と定数値)の深さ2のブール回路を用いて、第1に含有ANDゲートを実現することができますレベルと上位レベルの1つのORゲート。これは単にfのDNF表現です。f:{ 0 、1 }ん→ { 0 、1 }f:{0,1}n→{0,1}f:\{0,1\}^n\to \{0,1\}fff 回路の複雑さに非常に関心のある別のタイプのゲートは、ゲートです。通常の定義は次のとおりです。MO DメートルMODmMOD_m M O Dメートル(x1、… 、xk)= { 10 もし Σ X私≡ 0モッドメートル もし Σ X私≢ 0モッドメートル MODm(x1,…,xk)={1 if ∑xi≡0modm 0 if ∑xi≢0modm \mathrm{MOD}_m(x_1,\dots,x_k)=\cases{ 1 & if \(\sum x_i \equiv 0 \mod m\) \\ 0 & if \(\sum x_i \not\equiv 0 \mod …


4
AのポイントとBのポイント間の最短距離
AAABBBnnnAAABBBmin { dist(p,q) | p∈A∧q∈B }min { dist(p,q) | p∈A∧q∈B }\min \space \{\mbox{ } \text{dist}(p, q) \mbox{ } | \mbox{ } p \in A \land q \in B \space \} 私が正しいかどうかはわかりませんが、この問題は計算幾何学の線形計画法で解決できる問題と非常によく似ています。ただし、LPへの削減は簡単ではありません。また、私の問題は、2次元空間で LPによって明らかに解決できる2組の点の間の最も薄い点を見つけることに関連しているようです。O(n)O(n)O(n)

3
アンチウイルスプログラムがどのように機能するかを研究するコンピューターサイエンスの分野は何ですか?
すべてのウイルスを検出できるアルゴリズムがないことを示すのは、有限オートマトンでの簡単な作業ですが、アンチウイルスソフトウェアを販売しているソフトウェア会社はたくさんあります。 ウイルスとアンチウイルスを扱うCSの部分はありますか? PS:私はAVを持っているかどうかのCSに関連しない正当化について尋ねているのではなく、CS内のどのカテゴリ/サブジェクトがあるかについてのみ尋ねています。AVがCS内の主題ではない場合、それも許容される回答です。CSコンテキスト内でウイルスとAVに対する何らかの反省はありますか?

1
事前共有キーを備えたWPA2はゼロ知識証明の例ですか?
アクセスポイントをセットアップしてWPA2を選択する場合、事前共有キー(パスワード)、PSKを手動でAPとSTAの両方に入力する必要があります。 APとSTAの両方がお互いを認証する必要があります。しかし、彼らはPSKを明らかにせずにそうしなければなりません。どちらも相手に、実際に送信することなくPSKを知っていることを証明する必要があります。 それはゼロ知識証明の例ですか? そうだと思ったのですが、知識ゼロの証明とWPA2またはEPA-PSK(使用されている認証方法)をググるときに合法的なものは何も表示されません。

1
その証拠
私は次の問題であなたの助けを使いたいです: 。ことを示す Lを∉ R E ∪ C O RL={⟨M⟩∣L(M) is context-free}L={⟨M⟩∣L(M) is context-free}L=\{⟨M⟩ ∣ L(M) \mbox{ is context-free} \}。L∉RE∪CoREL∉RE∪CoREL \notin RE \cup CoRE 私はそれを証明するために知っている、言語を見つけるために十分であるLを"ようにL " ∉ R Eとからの減少があることを示すL "にLは(L " ≤ M LL∉REL∉REL\notin REL′L′L'L′∉REL′∉REL'\notin REL′L′L'LLL 。(L′≤ML)(L′≤ML)(L'\leq _M L) 私はすでに、彼らはしていないことを知っている言語を考え始め、と私は知っているH 、LのT * = { ⟨ M ⟩ | Mの すべての入力のための停止 } …

3
場合は
次の演習を解くのに行き詰まっています。 主張その場合文脈自由であり、、次いで、規則的である(つまり、正しい商)は文脈自由です。R L / R = { W | ∃ X ∈ RLLLRRRL/R={w∣∃x∈Rs.twx∈L}L/R={w∣∃x∈Rs.twx∈L}L / R = \{ w \mid \exists x \in R \;\text{s.t}\; wx \in L\} を受け入れるPDAとを受け入れるDFAが存在する必要があることを知っています。現在、これらのオートマトンを、適切な商を受け入れるPDAに組み合わせようとしています。それを構築できれば、がコンテキストフリーであることを証明しました。しかし、私はこのPDAの構築に行き詰まっています。R L / RLLLRRRL / RL/RL/R これは私がそれをどこまで作ったかです: 結合されたPDAでは、状態は別個のオートマトンの状態のデカルト積です。また、エッジはDFAのエッジですが、将来Lの元のPDAの最終状態に到達できるのはエッジのみです。しかし、それを正式に書き留める方法がわかりません。

1
スイープラインによる四角形のカバレッジ
残念ながら一人で練習できませんでした。 長方形のセットと長方形R 0。平面スイープアルゴリズムを使用して、R 0がR 1のセットで完全にカバーされているかどうかを判断します。。R n。R1..RnR1..RnR_{1}..R_{n}R0R0R_{0}R0R0R_{0}R1..RnR1..RnR_{1}..R_{n} 掃引ラインアルゴリズムの原理の詳細については、こちらを参照してください。 最初から始めましょう。最初は、2つのデータ構造を必要とするラインセグメントの交差を見つけるためのアルゴリズムとして、スイープラインアルゴリズムを知っています。 イベントポイントのセット(セグメントのエンドポイントと交差ポイントを格納します)QQQ ステータス(スイープラインが交差する一連のセグメントの動的構造)TTT 一般的な考え:スイープラインは、左から長方形のセットに近づき始める垂直線であると想定します。ソート全てのx矩形の座標とに格納Q昇順で-取るべきOを(N ログN )。最初のイベントポイントから開始し、すべてのポイントで特定のx座標で交差する長方形のセットを決定し、交差長方形の連続セグメントを識別し、それらが現在のx座標でR 0を完全にカバーしているかどうかを確認します。Tバイナリツリーとしてそれは取るつもりだO (ログをlllxxxQQQO(nlogn)O(nlog⁡n)O(n\log n)xxxR0R0R_{0}xxxTTT。R 0の一部が覆われていない場合、 R 0は完全には覆われていません。O(logn)O(log⁡n)O(\log n)R0R0R_{0}R0R0R_{0} 詳細:セグメント交差アルゴリズムの考え方は、隣接するセグメントのみが交差するというものでした。この事実に基づいて、ステータスを作成し、アルゴリズム全体で維持しました。この場合も同様のアイデアを見つけようとしましたが、これまでのところ成功していません。唯一言えることは、2つの長方形が対応するx座標とy座標が重なっている場合に交差することです。TTTxxxyyy 問題は、構築・維持する方法である、そしてどのような建物の複雑さと保守Tです。私はその前提とRの木が、この場合には非常に便利ですが、私は見られるように、R木を使用して最小の境界長方形を決定することは非常に困難です。TTTTTT この問題を解決する方法、特にを構築する方法について何か考えがありますか?TTT

1
新しいエントリを優先するランキングアルゴリズムを探す
私は、一定期間に投じられた投票に基づいてエントリーをランク付けするランキングシステムに取り組んでいます。平均のようなスコアを計算するアルゴリズムを探していますが、古いスコアよりも新しいスコアを優先したいと思います。私は次の線に沿って何かを考えていました: sはC O R E1+ 2 ⋅ S C O のR E 2 + ⋯ + N ⋅ S C O のR E ん1 + 2 + ⋯ + nscore1+ 2⋅score2 + ⋯+ ん⋅scoreん1+2+⋯+ん\frac{\mathrm{score}_1 +\ 2\cdot \mathrm{score}_2\ +\ \dots +\ n\cdot \mathrm{score}_n}{1 + 2 + \dots + n} このような状況で通常使用される他のアルゴリズムがあるかどうか疑問に思っていました。

4
オペレーティングシステムのコンテキストで割り込みとはどういう意味ですか?
私は、夏の間、Silberschatz、Galvin Gagne(第8版)によるオペレーティングシステムコンセプトを読むことにしました。オペレーティングシステムに関連する割り込みとその役割-私を混乱させるトピックにたどり着きました。 テキストは、オペレーティングシステムが「init」などの最初のプロセスを開始し、「イベント」が発生するまで待機することを示しています。このイベントは通常、割り込みによって通知されます。また、割り込みはハードウェアまたはソフトウェアのどちらからでも発生する可能性があると述べています。これはどのように機能しますか?オペレーティングシステムは割り込みによって駆動されていますか? 私はいくつかの全体像の理解を探しています。

1
セットの関数を計算する下限
集合持つのn個の要素は、のは、私は、関数計算したいとしましょうF (A )入力のすべての部分に敏感であり、つまりは非常にメンバーに依存A(すなわち、任意のメンバーを変更することが可能であるA何かに新しい入力取得する他のA "のST値F上のAとAを")異なっています。あAAんnnf(A )f(A)f(A)あAAあAAあ』A′A'fffあAAあ』A′A' たとえば、は合計または平均です。fff ある条件下で、決定論的チューリングマシンがを計算するのに必要な時間がΩ (n )になることを証明する結果はありますか?fffΩ (n )Ω(n)\Omega(n)

1
中国の郵便配達員の問題:奇数次ノード間の最良の接続を見つける
私はプログラムを書いて、無向ドラフで中国の郵便配達員問題(ルートインスペクション問題とも呼ばれます)を解決し、現在、奇数のノードを接続するための最適な追加エッジを見つけるために問題に直面しているため、オイラー回路を計算できます。 (解決したいグラフのサイズを考えると)計算して評価する必要のあるエッジの膨大な組み合わせがあるかもしれません。 例として、奇数次ノードます。最適な組み合わせは次のとおりです。A,B,C,D,E,F,G,HA,B,C,D,E,F,G,HA, B, C, D, E, F, G, H 、 C D、 E F、 G HABABABCDCDCDEFEFEFGHGHGH 、 B D、 E H、 F GACACACBDBDBDEHEHEHFGFGFG 、 B C、 E G、 F HADADADBCBCBCEGEGEGFHFHFH ....AEAEAE ABABABAAABBB したがって、私の質問は次のとおりです。その問題を純粋な総当たりよりも複雑に解決する既知のアルゴリズムはありますか(それらすべてを計算して評価します)? €:いくつかの調査の結果、「エドモンズの最小長マッチングアルゴリズム」について話しているこの記事を見つけましたが、このアルゴリズムの疑似コードや学習者記述は見つかりません(または少なくともGoogleとして認識していません) J. Edmondsによる一致アルゴリズムのヒット数が多い)

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