理論計算機科学

理論計算機科学者および関連分野の研究者のためのQ&A

2
レーベンシュタイン編集距離の最適な文字列配置を計算するためのスペースの複雑さ
サイズn1n1n_1とつの文字列が与えられた場合n2n2n_2、標準的なレーベンシュタイン編集距離の計算は、時間の複雑さO(n1n2)O(n1n2)O(n_1 n_2)と空間の複雑さ動的アルゴリズムによるものO(n1n2)O(n1n2)O(n_1 n_2)です。(いくつかの改善が編集距離の関数として行うことができるddd、我々はには何の仮定作るんdddO(max(n1,n2))O(max(n1,n2))O(\max(n_1, n_2)) ただし、最適な編集スクリプトの実際の編集を取得する場合、メモリ使用量よりも、実行時間を犠牲にして実行することは可能ですか?O(n1n2)O(n1n2)O(n_1 n_2)

1
指数関数的高速化を伴う量子アルゴリズムは、スパンプログラムを使用して再派生できますか?
一般的な敵の下限は、Reichardtらによる画期的な研究により、量子クエリの複雑さを特徴付けることが知られています。同じ作業により、スパンプログラムフレームワークへの接続が確立され、量子アルゴリズムが設計されます。 SimonのアルゴリズムやShorの期間発見アルゴリズムのような指数関数的な高速化を含む多くの興味深い量子アルゴリズムは、量子クエリモデルで表現できます。 一般的な敵対モデルでこれらのアルゴリズムの下限を示す仕事はありますか? スパンプログラムフレームワークでSimonまたはShorのアルゴリズムを再派生させる作業はありますか? どうやら、Groverのような、多項式の高速化を伴う量子アルゴリズムのみが、スパンプログラム(またはBelovの学習グラフ)フレームワークを使用して再導出されました。 Korianらによる研究があります。多項式法を使用してサイモンの下限を表示しますが、明らかに多項式法の下限を一般的な敵の下限に変換する既知の方法はありません。

1
ハイパーキューブ上の畳み込みのエントロピー
我々は関数持っ言う、ようΣ X ∈ Z N 2 F (X )2 = 1(我々が考えることができるので、{ F (X )2 } のx ∈ Z N 2分布など)を。以下のように、このようなA関数のエントロピーを定義することが自然である: H (F )= - Σ X ∈ Z N 2 F (Xf:Zn2→ Rf:Z2n→Rf:\mathbb{Z}_2^n \to \mathbb{R}∑X ∈ Zn2f(x )2= 1∑バツ∈Z2nf(バツ)2=1\sum _{x\in \mathbb{Z}_2^n} f(x)^2 = 1{ f(x )2}X ∈ Zn2{f(バツ)2}バツ∈Z2n\{ f(x)^2\} _{x\in …

3
型の二重性はどのように定義されますか?
ワドラーの再帰型で無料![1]、彼は2種類のおよび、そしてそれらは双対であると主張しました。特に、彼は型ことを指摘しましたは前者の双対ではありません。ここで問題となっている双対性は、論理におけるデモーガンの双対性とは異なるようです。上記の3つのタイプについて、タイプの二重性がどのように定義されているのか、なぜ2番目のタイプが最初のタイプのデュアルであり、3番目のタイプがそうでないのか疑問に思います。ありがとう。∀X.(F(X)→X)→X∀X.(F(X)→X)→X\forall X . (F(X) \rightarrow X) \rightarrow X∃X.(X→F(X))×X∃X.(X→F(X))×X\exists X . (X \rightarrow F(X)) \times X∃X.X→(X→F(X))∃X.X→(X→F(X))\exists X . X \rightarrow (X \rightarrow F(X)) [1] http://homepages.inf.ed.ac.uk/wadler/papers/free-rectypes/free-rectypes.txt

2
効率的な普遍的な問題解決者?
アルゴリズムであることが「問題」を定義自然数を受け入れ、戻り0又は1を返し1の少なくとも一方のn ∈ N。このようなnは、Aに対する「解」と呼ばれます。AAA111n∈Nn∈Nn \in \mathbb{N}nnnAAA 「ユニバーサル問題ソルバー」を、問題を受け入れてその解決策の1つを返すアルゴリズム定義します。たとえば、Uはすべての自然数をループし、1つの結果になるまで入力を実行することで機能します(有効な入力で停止するだけです)。UUUUUU111 普遍的な問題解決者のパフォーマンスの限界を調べることに興味があります に普遍的な問題ソルバーを、Aに問題を与え、t (U 、A )がUが入力Aを受け入れて出力を生成するのにかかる時間を示すUUUAAAt(U,A)t(U,A)t(U, A)UUUAAA 普遍的な問題解決者は、すべての普遍的な問題解決者Vに対して「効率的」と呼ばれます。UUUVVV t(U,A)&lt;t(V,A)+tVt(U,A)&lt;t(V,A)+tVt(U, A) < t(V, A) + t_V ここでに依存Vが、に依存しないAtVtVt_VVVVAAA 効率的な普遍的な問題解決者は存在しますか? 編集:「問題」と「普遍的な問題解決者」の定義を、もう少しエレガントで本質的に同等のものに変更することが可能であることに気付きました。「問題」とは、0または1(停止)を返す入力のないアルゴリズムです。「ユニバーサル問題ソルバー」は、問題を受け入れてその結果を返すアルゴリズムです。多かれ少なかれ普遍的なチューリングマシンです。 古い定義を新しい定義に減らすことができますに古い意味の問題が与えられた場合、Bを新しい意味の問題に構成できるからです。AAABBBAAA(上記のテキストで説明ソルバを) 新しい定義は古い定義に縮小できますに新しい意味の問題が与えられると、AをBを計算して入力と結果を比較する古い意味の問題を構築できるからです。BBBAAABBB 新感覚の普遍的な問題解決のささいな例は、単純に入力を実行するアルゴリズムです

1
半順序の線形拡張に関する質問
部分注文のコレクションが与えられた場合、トポロジソートは、コレクションの合計注文に対する拡張があるかどうかを通知します(この場合の拡張は、各部分注文と一致する合計注文です)。 私はバリエーションに遭遇しました: セット修正します。あなたは与えられているシーケンスσ 1、... σ k個から引き出された要素のV繰り返しなし(シーケンスが1との間の長さのものである| V |)。VVVσ1,…σkσ1,…σk\sigma_1, \ldots \sigma_kVVV|V||V||V| チェーンの結果のコレクション(半順序として表示)が拡張を許可するように、各シーケンスの方向(順方向または逆方向)を修正する方法はありますか? この問題はよく知られていますか? 注:方向はシーケンス全体に対して選択されます。したがって、シーケンスが場合、そのように保持するか、5 − 4 − 2 − 1に反転できます。1−2−4−51−2−4−51-2-4-55−4−2−15−4−2−15-4-2-1にことができますが、他には何もできません。

3
グラフ内のパスのカウントの複雑さ
各頂点に正確に2つの出ているエッジと、バイナリでエンコードされた自然数N、2つの頂点sおよびtがあるようなノードがn個ある有向グラフを考えると、 Nステップ内でsからtへの(必ずしも単純ではない)パスの数を数えたい。 これは#P-hard問題ですか?または一般的に、この問題の複雑さは何ですか?

1
Wilf-Zeilbergerおよび関連するメソッドの実装
Petkovsek、Wilf、Zeilberger の著書A = Bは、異なる二項の和を計算するアルゴリズムについて説明しています。私の知る限り、これらのアルゴリズムはさまざまな著者によってまだ改善されています。 これらのアルゴリズムの最新の実装がどこにあるか知っていますか?また、Sageなどの一部のフリーソフトウェアに実装が存在するかどうかを知っていますか?

2
Büchi対CTL(*)の表現力
LTL、Büchi / QPTL、CTL、CTL *の表現力との関係は何ですか? これらの時相論理の可能な限り多くをカバーする参照を提供できますか(特に線形時間と分岐時間の間)? これらの時相論理といくつかの実用的なプロパティを例にしたベン図は完璧です。 例えば: Büchiには指定できるがCTL *には指定できないプロパティがあるのは本当ですか?良い例はありますか? BüchiとCTLではどうでしょうか。LTLではどうですか? 詳細: 論理の表現力は、例よりも私にとって重要です。後者は、理解と動機付けに役立つだけです。 私は[Clarke and Draghicescu、1988]の CTL *とLTLの間の表現可能性定理をすでに知っていますが、公平性のバリエーションがたくさんあるため、LTLではなくCTLにある公平性の通常の例は好きではありません。 LTLで表現可能。 私もで、例えば、与えられた、均一性ビュッヒ・プロパティの通常の例のようにしないでください[Wolper83]問題(解決する別の命題変数を追加以来、LTLの制限は、程度)。even(p)≡q∧□(q⟹X¬q)∧□(¬q⟹Xq)∧□(q⟹p)even(p)≡q∧◻(q⟹X¬q)∧◻(¬q⟹Xq)∧◻(q⟹p)even(p) \equiv q \wedge \Box ( q \implies X \neg q ) \wedge \Box ( \neg q \implies X q ) \wedge \Box ( q \implies p ) LTLの制限について、例えば[Wolper83]で与えられている、Büchiプロパティの均一性の例が好きです。なぜなら、それは単純であり、均一性のためにPQTLの必要性を示しているからです。 更新: [Clarke and …

2
マルチペブルオートマトンは、すべての決定論的なコンテキスト依存言語を決定できますか?
A MPA(multipebbleオートマトン)は2DFA実際高々小石(任意の数を使用することができる(双方向決定性有限オートマトン)である所与の入力の小石wの -入力は二つの端の間にテープに書き込まれています- #w #としてのマーカー)。計算中、MPAは、頭の下のシンボルに小石があるかどうかを検出でき、小石がない場合(小石を除去する場合)小石を入れることができます(小石がない場合)。|w|+2|w|+2 |w|+2 ww w #w##w# \# w \# 準同型であり、 σはシンボルであり、K &gt; 0。hk(σ)=σ⋯σk times=σkhk(σ)=σ⋯σ⏟k times=σk h_k(\sigma) = \underbrace{\sigma \cdots \sigma}_{k \mbox{ times}} = \sigma^k σσ \sigma k&gt;0k&gt;0 k>0 任意の決定論的文脈依存言語のための存在することを示すのは難しいではないK &gt; 0ように、H 、K(Lは) MPAによって認識することができるが。だから、大まかに言って、私たちはそれを言うことができますL (L∈DSPACE(n)),L (L∈DSPACE(n)), \mathtt{L} ~~ \left( \mathtt{L} \in \mathsf{DSPACE(n)} \right), k&gt;0 k&gt;0 k>0~ hk(L)hk(L) h_k( …

3
PおよびBPPと同様のAM / MAおよびNP
ことアローラとバラクショーのように表すことができるB P ⋅ N Pは 3SATの削減を無作為化している言語のセット、すなわち。M Aは、決定論的検証者​​をランダム化された検証者に置き換えるという点で、N Pの自然なランダム化された一般化でもあります。A MAM\mathsf{AM}B P ⋅ N PBP⋅NP\mathsf{BP}\cdot \mathsf{NP}M AMA\mathsf{MA}N PNP\mathsf{NP} これらのうちの1つが「NPがそうであるようにPはBPPにぴったり」という意味がありますか?関係?

3
「k-tonic」シーケンスのソート
誰かがこれのリファレンスを知っていることを願っていますので、文献を読む必要はありません... 一連の数値考えます。シーケンスをn − 1間隔[ x 1、x 2 ] 、[ x 2、x 3 ] 、… 、[ x n − 1、x n ]と考えてください。明らかに、実際の線上のいずれかのポイントが最大2つの間隔で突き刺す場合、元のシーケンスはバイトニックです。私たちは、ポイントが最大で刺す配列を参照するk個あるとして間隔Kx1,…,xnx1,…,xnx_1, \ldots, x_nn−1n−1n-1[x1,x2],[x2,x3],…,[xn−1,xn][x1,x2],[x2,x3],…,[xn−1,xn][x_1, x_2], [x_2, x_3], \ldots, [x_{n-1},x_n]kkkkkk-ばかげた。視覚的に、シーケンスのグラフを描画する(つまり、ポイントを順番に接続する)場合、上記はグラフとk回以上交差する水平線がないという条件に対応します。pi=(i,xi)pi=(i,xi)p_i =(i,x_i)kkk イディオティックシーケンスをO (n log k )時間でソートできることを確認するのは、それほど難しくありません(しかし、あまり簡単でもありません)。これは明らかに最適です。kkkO(nlogk)O(nlog⁡k)O( n \log k ) 質問:この結果を知っておく必要があります。適切なrefを知っていますか?

2
テキストを一定の行数に均等に分割します
テキストを最大幅の行に均等に分割するための線形時間アルゴリズムがあります。SMAWK(またはKnuth&Plass)を使用し、「均等」という意味:http : //en.wikipedia.org/wiki/Word_wrap#Minimum_raggedness 上記のアルゴリズムに、最大行幅ではなく、テキストを分割する行数を考慮に入れるアルゴリズムまたは凹型コスト関数がありますか?線形時間でも? つまり、入力が目的の行幅ではなく、目的の行数である改行(または段落の形成、またはワードラップ)アルゴリズムを探しています。 実際には使用できないアプローチを説明するために、各単語ペアの間にN個の単語とN-1個のスペースがあり、Mは目的の行数(M &lt;= N)です。各スペースの後に、最大で1つ(場合によってはゼロ)の改行があります。これで、アルゴリズムは可能な組み合わせのそれぞれにブレークを配置し、「不規則性」を計算して最適なものを返します。もっと速くする方法は? また、そのような問題には名前がありますか?問題のどの「家族」に属しますか?(たとえば、「ビン梱包」)完全に最適なソリューションが必要ない場合、非常に良いソリューションだけで、はるかに速く解決することは可能ですか?(特定の入力に対して常に同じ、場合によっては最適ではないソリューションがあれば、何らかの形のヒューリスティックが使用可能になります)。 更新 チャンドラチェクリは、「ダイナミックプログラミングに関するクラインバーグとタルドスの章の問題」を提案しました。これは良い読み物でしたが、行数ではなく幅に基づいて改行を処理します。この問題に適応できるかもしれませんが、これは私が今考えていることです。ここにソリューションへの良いリンクがあります、彼らは線形時間でそれを解決するとさえ主張しています:http : //web.media.mit.edu/~dlanman/courses/cs157/HW5.pdf また、SkienaのThe Algorithm Design Manualには「8.5パーティションの問題」という章がありますが、これはまさにトピックに関連しているように見えますが、今でも読んでいます。(残念ながら、私が理解したことから、それは二次的な時間の複雑さを持っています)

5
アルゴリズムがない場合に時間制限を設定できる決定可能な問題はありますか?
問題を解決するアルゴリズムがない場合、入力インスタンスの長さnの関数として時間制限を与えることができるような決定可能な問題はありますか? 次のことを考えていたので、この質問にたどり着きました。 再帰的に列挙できるが、決定できない問題があると仮定します。さらに、私は問題の「はい」インスタンスであると仮定します。次に、問題の「はい」インスタンスを識別するアルゴリズムがない場合、Iのサイズnに関して時間制限を与えることができます。時間制限を超えた場合、私は「ノー」インスタンスであると結論付けます。 再帰的に列挙可能で決定不可能な問題(「yes」インスタンスの計算時間)に時間制限を与えることはできないので、時間制限を与えることができない決定可能な問題もあるのではないかと思っていました。

3
言語の有限ビューを満たす最小限のDFA
1は、言語があると言う、しかし、1つの文字列が実際に言語の一部であるか知っていません。持っているすべての1は、言語の有限図である:文字列の有限集合A ⊆ L言語であることが知られており、文字列の有限集合B ⊆ (Σ * ∖ L )であることではないに知られています言語。L⊆Σ∗L⊆Σ∗L \subseteq \Sigma^*A⊆LA⊆LA \subseteq LB⊆(Σ∗∖L)B⊆(Σ∗∖L)B \subseteq (\Sigma^* \setminus L) たとえば、の私が持っているとしよう及びB = { B 、B 、BのA }を。言語L = { a 2 i + 1 b j | I 、J ∈ N }ので、AA={ab,aaab,aaaaabb}A={ab,aaab,aaaaabb}A = \{ab, aaab, aaaaabb\}B={b,aab,aaaba}B={b,aab,aaaba}B = \{b, aab, aaaba\}L={a2i+1bj | i,j∈N}L={a2i+1bj | …

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