コンピュータサイエンス

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


2
の完全な問題
私たちは知っています P O LのYLpolyLpolyL-hierarchyは、スペース階層定理と競合するため、完全な問題はありません。しかし、この階層の各レベルに完全な問題がありますか? 正確には:クラスは D SPA CE(ログ(n)k)DSPあCE(ログ⁡(ん)k)DSPACE(\log(n)^k) 下に完全な問題があります LLL-それぞれの削減 k > 0k>0k > 0?

4
科学計算用の高速で無駄のないJavaScript:どの機能を維持する必要がありますか?
ここで私は数学教育の障壁を下げることに本当に興味があります。 目標: 私はJavaScriptコミュニティ用に作成されてほしいと思います。これは、Pythonベースの/リンクされた科学的および高性能なコンピューティングライブラリに相当します(それらのすばらしいリストはSageなどから入手できます)。そして私はそれを望んでいます。なぜなら、私は、JavaScriptを学ぶ人々が、Python(および会社)を学ぶ必要なく、科学的および数値計算に簡単に入ることができるようにしたいからです。(基本的にはいつかPythonを習得したので、Pythonを学ぶのは簡単ですが、これはおそらく、JavaScriptの制限されたサブセットをPythonにコンパイルするのが簡単になることを示唆しています。) 仮説法: 私がターゲットとしている市場(「人間のコンパイラー」)はすでにJavaScriptを知っているプログラマーであるため、私は主にJavaScriptとの違いが最小限の新しい言語に興味があります。私がそれらの人々をターゲットにしたいのは、RPythonとCythonがPythonで行うように、より高速なCにコンパイルするコードを書くための最小限の異なる言語を彼らに与えることです。私はたくさんのJavaScript機能を放棄するつもりです。最小限の機能を追加するように注意してください。Lua、Dart、ECMA Harmony(正式なリリース日はありません)を確実に調べます。 、または私は間違っていますか?)など。これらはすべて、JavaScriptの現在の(2012)実装に非常によく似ているためです。 疑わしい動機: 私は個人的に、物事をより速く実行できる言語/ツールセットを学びたいと思っています(このため、Erlangを自分で学習しています)が、ここでは特に、そのようなことをしていない他の人のためにバー(申し訳ありません)を下げることに興味があります意欲。これは、「ケーキを手に入れて食べたいので、問題の調査に時間をかけている」状況の1つにすぎません。私はコンピュータ言語設計の経験が非常に限られていますが、生態系のハッキングの観点から見ると、この問題は研究するのに十分興味深いと思われるので、すぐにもっと多くのことをしたいと思っています。

2
ランタイム分析
つまり、は反復対数を意味するので、 =はまでです。log∗log∗\log^*log∗(3)log∗⁡(3)\log^*(3)(loglogloglog...)(log⁡log⁡log⁡log...)(\log\log\log\log...)n≤1n≤1n \leq 1 私は以下を解決しようとしています: です log∗(22n)log∗⁡(22n)\log^*(2^{2^n}) 少し、少し、または ofoooωω\omegaΘΘ\Theta log∗(n)2log∗⁡(n)2{\log^*(n)}^2 内部機能の点で、よりもはるかに大きいが、二乗する私を投げています。log∗(22n)log∗⁡(22n)\log^*(2^{2^n})log∗(n)log∗⁡(n)\log^*(n)log∗(n)log∗⁡(n)\log^*(n) がであることは知っていますが、反復対数に対してプロパティが成り立つとは思いません。log(n)2log⁡(n)2\log(n)^2O(n)O(n)O(n) マスターメソッドを適用しようとしましたが、関数のプロパティに問題があります。nを最大(つまり、)に設定しようとしましたが、これは問題を本当に単純化しませんでした。log∗(n)log∗⁡(n)\log^*(n)n=5n=5n = 5 私がこれにどのように取り組むべきかについて誰かが何かアドバイスがありますか?

6
C ++文字列と文字配列
大学レベルのコンピューターサイエンスを教えるほとんどのC ++インストラクターが、文字列をテキストに使用することを思いとどまらせたり、禁止したりするのではなく、学生に文字配列の使用を要求するのはなぜだと思いますか? 私はこの方法論が何らかのプログラミング習慣を教えることを意図していると想定していますが、私の経験では、文字列の使用だけで何も問題はなく、使用と学習が非常に簡単です。

4
2つのCTL数式が等しいかどうかを手動で決定するにはどうすればよいですか?
CTLに 2つの式と(同じ一連の原子命題)があると仮定します。上のすべての移行システムについて、 iffがあります。ΦΦ\PhiΨΨ\PsiAPAPAPΦ≡ΨΦ≡Ψ\Phi \equiv \PsiSatTS(Φ)=SatTS(Ψ)SatTS(Φ)=SatTS(Ψ)Sat_{TS}(\Phi) = Sat_{TS}(\Psi)TSTSTSAPAPAP 移行システムは無限にあるので、それらすべてをチェックすることは不可能です。PNF(正の正規形、リテラルの隣でのみ否定を許可)を使用することを考えました。これは、名前から判断すると、と同じ式がと同じになるはずですが、同等であるとは確信していません。すべての場合(PNFが実際には正常な形式であるとは確信していません)。ΦΦ\PhiΨΨ\Psi たとえば、(は演算子であり、が演算子です)。これを手動で行う方法を探しています。∀O∀◊Φ0≡?∀◊∀OΦ0∀O∀◊Φ0≡?∀◊∀OΦ0\forall \mathrm{O} \forall \lozenge \Phi_0 \stackrel{?}{\equiv} \forall \lozenge \forall \mathrm{O} \Phi_0OO\mathrm{O}next◊◊\lozengeeventually

3
この計算の正式な定義について説明してください
私はTAOCPをもう一度攻撃しようとしています。真剣に取り組むのに苦労しているボリュームの文字通りの重さを考えると。TAOCP 1のKnuthによる書き込み、8ページ、基本概念:: しましょう あAA有限の文字セットであること。しましょうあ∗A∗A^* すべての文字列のセットである あAA (すべての順序付けされたシーケンスのセット バツ1x1x_1 バツ2x2x_2 ... バツんxnx_n どこ ん≥0n≥0n \ge 0 そして バツjxjx_j にあります あAA ために 1≤j≤ん1≤j≤n1 \le j \le n)。アイデアは、計算の状態をエンコードして、あ∗A∗A^*。さあNNN 非負の整数であり、Q(状態)はすべての集合 (σ、j)(σ,j)(\sigma, j)、 どこ σσ\sigma にあります あ∗A∗A^* jは整数です 0≤j≤N0≤j≤N0 \le j \le N; させる私II (入力)Qのサブセット j=0j=0j=0 そしてましょう ΩΩ\Omega (出力)のサブセットになる j=Nj=Nj = N。もしθθ\theta そして σσ\sigma 文字列です …

1
不満足なインスタンスのランダムな再起動
最悪の場合、ブール充足可能性(P!= NPと仮定)には指数関数的な時間がかかります。それにもかかわらず、DPLLのバリアントを使用する最新のSATソルバーは、実際に役立つのに十分なインスタンスを解決できます。 使用されている1つの手法は、実際に良い結果を示しており、ランダム再起動です。直感的に、ランダムに再起動するということは、適切な変数の割り当てを推測して幸運になる可能性があることを意味します。 同じ直感は、問題のインスタンスが実際に満足できる場合(したがって、ソリューションを構成する一連の変数の割り当てを推測するだけでよい場合)がそうでない場合よりもはるかに効果的であることを示唆しています(したがって、原則として可能な限りすべてをチェックする必要があります)とにかく、割り当ては、少なくとも初期の推測に明らかに影響されない、単位伝播や非時系列バックトラックなどの手法でスキップできる検索空間のモジュロセクションです。 2番目の直感は正しいですか?問題のインスタンスが実際に満足できる場合、ランダム再起動は実際には平均してはるかに効果的ですか?

1
3-SAT NPハードの「ローカル」バージョンはありますか?
以下は、空間ベイジアンネットワークに関する大規模な研究プロジェクトの一部を簡略化したものです。 変数が出現する最初の句と最後の句の間により少ない句がある場合、文字列変数が " -local" であるとします(は自然数)。kkkC∈ 3 -cnfC∈3-CNFC \in 3\text{-CNF}kkkkkk ここで、任意のに対して、すべての変数という基準によって定義されたサブセットある -local。何のためである(もしあれば) NP困難?(3 、K )-LSAT ⊆ 3 -SAT(3,k)-LSAT⊆3-SAT(3,k)\text{-LSAT} \subseteq 3\text{-SAT}C∈ (3 、k )-LSATC∈(3,k)-LSATC \in (3,k)\text{-LSAT}CCCkkkkkk(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT} これが私がこれまでに検討したことです: (1)がPであることを意味するものとして書き直し、これらの意味の有向グラフ上の有向パスを調べることにより、ここに記され、詳細はpp.184-に示されています。 Papadimitriouの計算の複雑さの185 )。とは異なり、には有向パスの分岐がありますが、有向パスの数は変数の空間的制約によって制限されている可能性があります。これまでのところこれで成功はありません。2-SAT2-SAT2\text{-SAT}2-SAT2-SAT2\text{-SAT}(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT} (2)(または他の既知のNP完全問題)のへの多項式時間短縮。たとえば、新しい変数を導入するさまざまな方法を試しました。ただし、元の変数を含む句をまとめるには、通常、新しい変数を含む追加の句の「チェーン」をドラッグする必要があり、これらは他の変数の空間制約に干渉します。3-SAT3-SAT3\text{-SAT}(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT}xkxkx_k きっと私はここで新しい領域にいるわけではない。削減できる既知のNP困難な問題はありか、それとも空間的な制約により問題が難しくなることはありませんか?(3,k)-LSAT(3,k)-LSAT(3,k)\text{-LSAT}

1
漸近質問
ある?n!2!⋅4!⋅8!…(n/2)!=O(4n)n!2!⋅4!⋅8!…(n/2)!=O(4n)\frac {n!} {2!\cdot 4!\cdot 8!\dots (n/2)!}=O(4^n) 私は本当に行き詰っていて、それが本当だと信じがちですが、それを証明する方法がわかりません。 どんな助けもいただければ幸いです!

1
P、NP、NP-Hard、NP-Completeの関係でこれは可能ですか?
P、NP、NP-Hard、NP-Completeの関係を表す画像が次のように表示されました。 https://en.wikipedia.org/wiki/NP-hardness#/media/File:P_np_np-complete_np-hard.svg 以下は可能でしょうか?つまり、P = NPですが、すべてがNP-Hardにあるわけではありません。 編集:これを追加したい:元の画像が間違っているか正しいかを言うためにここにいるのではなく、画像に考えられる状況が含まれているかどうかを質問するためにここにいる。言い換えれば、3つの画像すべてが可能であると想定することは正しいですか?

1
青い頂点よりも赤い頂点の多いパスを見つけることはNP困難ですか?
接続された有向グラフを考える G = (V、E)G=(V,E)G=(V,E)、頂点 S 、T ∈ Vs,t∈Vs,t \in V と着色、セント sss そして tttは黒で、他のすべての頂点は赤または青のいずれかです。sss に ttt 多項式時間で青の頂点よりも赤が多い? それは可能だと思いますが、私たちのTAはこれはNP難しいと述べました。 解決策のアイデア: から GGG つくる G′=(V′,E′)G′=(V′,E′)G'=(V',E') 次のように: すべてを分割 v∈V∖{s,t}v∈V∖{s,t}v \in V\setminus \{s,t\} 2つの頂点 vinvinv_{in} そして voutvoutv_{out}。 V′V′V' 分割された頂点ペアで構成され、 sss そして ttt。 すべてのために e=(u,v)∈Ee=(u,v)∈Ee=(u,v) \in E エッジを導入する (uout,vin)(uout,vin)(u_{out},v_{in})。(エッジ用(x,v)(x,v)(x,v) または (u,x)(u,x)(u,x) どこ x∈{s,t}x∈{s,t}x \in \{s,t\} …

3
最小限の違いで数字を分離する
正の整数整数 nnn、および整数 a1,b1,…,an,bna1,b1,…,an,bna_1,b_1,\dots,a_n,b_nそれぞれについて、。整数が存在するかどうかを決めるの複雑さは何であるその結果、すべてのためのとすべてのための?ai≤biai≤bi a_i\leq b_iiiic1,…,cnc1,…,cnc_1,\dots,c_nai≤ci≤biai≤ci≤bia_i\leq c_i\leq b_iiii|ci−cj|≥2|ci−cj|≥2|c_i-c_j|\geq 2i,ji,ji,j 観察できるのは、と想定し、この順序に従ってを選択する貪欲アルゴリズムが必ずしも機能しないことです。たとえば、ます。置く(それがの余地残さない動作しません)が、どのような作品は入れていると。問題はおそらくNP難しいですか?a1≤⋯≤ana1≤⋯≤ana_1\leq\dots\leq a_ncicic_ia1=1,b1=4,a2=b2=2a1=1,b1=4,a2=b2=2a_1=1, b_1=4, a_2=b_2=2c1=1c1=1c_1=1c2c2c_2c1=4c1=4c_1=4c2=2c2=2c_2=2

1
DFA最小化のためのBrzozowskiのアルゴリズムの証明?
Brzozowkiのアルゴリズムは広く引用されています。ここでのいくつかの質問は、例を示したり、その複雑さを議論したりします。しかし、アルゴリズムの正当性の証明を見つけることができませんでした。それが正しいことをどのように証明しますか?CSの学部生が利用できる証拠があれば大歓迎です。


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