抽象化の価格の例?


112

理論的なコンピューターサイエンスは、「抽象化の代価」の例を示しています。最も顕著な2つは、ガウスの消去と並べ替えです。すなわち:

  • 全体として行と列に操作を制限する場合、ガウス消去法は、たとえば行列式の計算に最適であることが知られています [1]。明らかに、Strassenのアルゴリズムはその制限に従わず、ガウス消去法よりも漸近的に優れています。
  • 並べ替えにおいて、リストの要素を比較および移動のみが可能なブラックボックスとして扱う場合、標準のnlogn情報理論的下限があります。しかし、フュージョンツリーは、私が理解している限り、乗算の巧妙な使用に縛られています。

抽象化の価格の他の例はありますか?

もう少し形式的にするために、弱いモデルの計算では下限が無条件にわかっているが、強いモデルでは違反していることがわかっている例を探しています。さらに、弱いモデルの弱点は抽象化の形でもたらされるべきであり、それは確かに主観的な概念です。たとえば、モノトーン回路の制限を抽象化とは考えていません。上記の2つの例が、私が探しているものを明らかにすることを願っています。

[1] KLYUYEV、VV、およびNI KOKOVKIN-SHcHERBAK:線形代数方程式の解の算術演算数の最小化について。GI TEEによる翻訳:テクニカルレポートCS 24、6月t4、t965、スタンフォード大学コンピューターサイエンス部。


3
私はこの質問が本当に好きです。より多くの回答を楽しみにしています。
ランダムウォーカー

1
抽象化の「暗黙の」コストもあります。並べ替えにおける抽象化の価格の例、およびこれらの抽象化された結果が並べ替え番号の場合に適用されないことについて言及します(実際には、バケットソートを使用してO(n)でも実行できます)。ボロノイ図の下限は、多くの場合、ボロノイ図から数字のリストの並べ替えまでの線形時間短縮があることを示すことによって導き出されます。そして、多くの幾何学的アルゴリズムは、ボロノイの計算に関するこの下限から下限を導き出します。
ロススナイダー

なぜこれがコミュニティWikiなのですか?
ナンダ

1
@nanda:正しい答えは1つもありません。実際、質問は、私が思うに多くの正しい答えを生成するように設計されているためです。
ジョシュアグロチョウ

1
あなたは本当に抽象化ではなくリラクゼーションに言及しているように思えます
-vzn

回答:


38

抽象化の価格のもう1つの美しい例:ネットワークコーディング。マルチキャスト設定では、max-flow-min-cutの関係は等値ではないことが知られています(プライマリとデュアルは一致しません)。ただし、従来のモデルでは、フローは単に渡されるだけで、「処理」されることはありません。ネットワークコーディングでは、フローを巧みに組み合わせることにより、この制限を克服できます。この例は、そもそもネットワークコーディングの研究の大きな動機となりました。


33

純粋に機能的なプログラミングは、少なくともその支持者によると、コードの表現力の大幅な向上などを提供する一般的な抽象概念です。ただし、これはマシンの制限モデルであり、特に可変メモリを許可しないため、通常の(RAM)モデルと比較して漸近的なスローダウンの問題が生じます。

この質問には素晴らしいスレッドがあります。主なポイントは次のとおりです。

  1. バランスの取れたバイナリツリーで可変メモリをシミュレートできるため、最悪の場合のスローダウンはO(log n)です。
  2. 先行評価、これはあなたができる最善であるために問題があります。
  3. 遅延評価、ギャップがあるか否かが不明です。ただし、既知の純粋に機能的なアルゴリズムが最適なRAMの複雑さに一致しない多くの自然な問題があります。

これは驚くほど基本的な質問であるように思えます。


関数型プログラミングが大規模なデータ計算のモデルである場合(MapReduceを参照)、このスローダウンは潜在的に非常に重要です。
Suresh Venkat

5
また、SOスレッドで言及されている注意事項に留意することも重要です。つまり、問題の下限は、それ自体がより制限されたモデル、つまり原子要素とのオンラインにあります。関数型プログラミングの標準モデルにおけるその形式の下限はまだ開いていると思います。Ω(nlogn
ジョシュアグロチョウ

1
少なくとも、そのスレッドで言及された論文([Bird、Jones and De Moor、1997]、完全な参考文献を参照)は、熱心な評価と怠zyな評価の間のギャップを確立します。
ブレイザーブレード

非常に大規模なデータ計算の場合、IOコストが非常に強く支配するので、計算の対数の低下は問題になりませんよね?
adrianN

評価順序とはどういう意味ですか?
libeako

28

質問は複雑性理論に焦点を当てていますが、プログラミング言語の理論など、他の分野でも同様のことが起こり得ます。以下に、抽象化によって決定できないものを作成する例をいくつか示します(つまり、弱いモデルの下限は不可能ですが、強いモデルではアルゴリズムを表現できます)。

  • ラムダ計算には、直接表現できない関数があります(つまり、目的の結果にベータ還元するラムダ項として)。例は、並列または(終了するいずれか1つを返す2つの引数の関数)です。別の例は、引数を文字どおりに出力する関数です(関数は明らかに2つのベータ相当の引数を区別できません)。表現力の欠如は、ベータ相当のラムダ項を同じように扱わなければならないという抽象化を強制するためです。

  • 派手な拡張機能を持たないMLなど、パラメトリックなポリモーフィズムのみを持つ静的に型付けされた言語では、一部の関数を書くことはできません。定理は無料で取得できます。例えば、その型で機能(引数の型が何であれ、同じタイプのオブジェクトを返す)は恒等関数または非終端のいずれかでなければなりません。表現力の欠如は、値の型がわからない場合は不透明であるという抽象化によるものです(値を渡すことしかできません)。ααα


4
これに複数回賛成票を投じることができればいいのに。
ジャックカレット

26

「抽象化の価格」は、暗号法の離散対数問題を解くときにも見つけることができます。Shoup(1997)は、一般的なアプローチ(つまり、グループ演算のみを使用するアルゴリズム)は少なくともグループ操作。ここで、mはグループのサイズです。これは一般的な誕生日攻撃の複雑さと一致します。ただし、Index CalculusPohlig-Hellmanアルゴリズムなどのアルゴリズムは、 Z nの数論的構造に依存して、(少なくとも滑らかな順序のグループで)少し高速なアルゴリズムを取得します。ΩmmZn

基本的に、楕円曲線に基づくグループの離散対数問題を解決する一般的なアプローチのみを知っているため、この観察は楕円曲線暗号の人気の理由の1つです(などのグループの暗号とは対照的です)。Zn


25

グラフアルゴリズムの例を次に示します。エッジに非負の重みがある有向グラフを考えると、すべてのペアのボトルネックパスの問題は、頂点t すべてのペアについて、sからtへのパスに沿ってプッシュできる最大フローを計算することです。(正式には、sからtまで任意のパスでエッジの最小重みを最大化するだけです。より正式には、すべてのペアの最短パスの定義でmin+maxminに置き換えます。)stststmin+maxmin

ましょうの入力グラフの頂点の数です。この問題は、すべてのペアの最短経路問題と同様に、Karger、Koller、およびPhillipsの経路比較モデルでΩ n 3時間 を必要とすることがわかっていました。(パス比較モデルは、Floyd-Warshallのような従来のアルゴリズムをサポートします。)ただし、すべてのペアの最短パスとは異なり、すべてのペアのボトルネックパスは、高速行列乗算を使用してO n 2.8時間未満で解決できることがわかります。nΩ(n3)O(n2.8)


22

この質問の議論によれば、計算幾何学の多くの問題には、ソートや要素の区別などの基本的な問題に起因する、代数的決定ツリーまたは代数的計算ツリーモデルの下限があります。Delaunay三角形分割の構築など、関連する問題のO n log n )の上限はこれらの下限に一致するため、最適であると主張する論文を見つけるのは難しくありません。ΩnログnOnログn

ただし、入力が整数デカルト座標で指定されている場合(実際には頻繁に行われるため、浮動小数点は計算ジオメトリに適合しません)、これらの下限は計算モデルと一致しません。おそらく、整数ソートから適応した手法を使用して直交範囲検索タイプの問題をより速く解決できることは驚くことではありませんが、非直交問題であってもより高速なアルゴリズムを持っていることがあります(O(1 )入力整数の精度)。例のセットについては、たとえばarXiv:1010.1948を参照してください。


「パラドックス」と、チャンとプトラシュクによる最近の論文を強調してくれてありがとう。
アンドラスサラモン

17

暗号化には多くのそのような例、特にゼロ知識証明があります。たとえば、論文を参照してください:

Boaz Barak、暗号化における非ブラックボックステクニック、2003年。

(ちなみに、論文のタイトルは、このコメントの有効性に関するゼロ知識の証拠を提供します:)


2006年から2003年までの引用年度修正してください
MS Dousti

@Sadeq Dousti:できました。これは、コミュニティのwikiだとあなたは私よりも多くの評判を持っているので、私は自分自身;-)ことをあなたが修正されている可能性が推測
Blaisorblade

17

ΩnログnΩnログnOn平面内の最も近い点のペアを解くための予想時間アルゴリズム。これは要素の一意性の一般化です。ハッシュを使用してバインドされた代数決定ツリーをエスケープします。Klein and TardosのAlgorithm Design本で見つけました。RJリプトンのブログで説明されているのと同じ問題を解決するための、同様の、より複雑なアルゴリズムがあります。

参照:


15

k3k3

kΩk

ただし、この抽象化はほぼ間違いなく間違っています。通信ネットワークで何かを送信できる場合、「何か」をビット列としてエンコードする方法があります。そして今、物事はずっと良くなり始めています。

12kOログk121010kOログk

OログkΩk


13

私の頭に浮かぶ例は、ボリュームの計算です。BaranyとFurediによる結果では、指数関数的な数のクエリが必要であり、Dyer-Frieze-Kannanによるランダム化された多項式時間アルゴリズムがあります。ギャップは抽象化の賞品であり、ランダム性の利点でもありますが、ギャップの主な理由は抽象化の価格だと思います。(質問を理解し、正しい方向に進むことを願っています。)


10

これはおそらくあなたが念頭に置いていたものではありません。しかし、ある意味では、オラクルからのP対NPの独立はそのような例です。本当に言っているのは、シミュレーションと列挙だけが必要な場合(つまり、それが計算の「モデル」である場合)、これらのクラスを分離したり折りたたむことはできないということです。

より具体的なアルゴリズムの例は、「逆」方向の近似範囲検索から得られます。具体的には、ほとんどの範囲検索問題はセミグループの合計として表現され、下限/上限はこのセミグループの構造に関係なく表現されます(一部の軽い技術条件を除く)。Arya、Malamatos、Mountの最近の研究は、半群構造(structure等性と積分性の特性)をよく見ると、近似範囲検索の異なる(より厳密な)境界を証明できることを示しています。


4
バツPバツNPバツPNPPバツ=NPバツNP=coNP。彼らの仕事は幾分議論の余地があります(小空間に限定されたクラスを相対化する問題にぶつかると思います)が、それは非常に興味深いと思います。
ジョシュアグロチョウ

10

シャノン-ナイキストのサンプリング定理は、通信に関する情報理論的境界の十分条件を提案します。サンプリング理論は、着信信号がコンパクト/ランダムな表現を持つ例に基づいて機能します。サンプリングの最近の進歩は、この抽象化にはおそらく価格が伴うことを示しています-私たちが測定することに興味のある種​​類のものは一般に疎な表現を持っているので、これらの境界はきつくありません。さらに、情報は、当初考えられていたよりもはるかに高密度にエンコードできます。

  • エラー修正コードは、ノイズの影響を受けやすいネットワーク環境でのシャノン制限の再評価を示唆しています。
  • 圧縮センシングのまったく新しい分野は、シャノンの限界を超えて興味深い方法を見つけるさまざまな画像の再構築を推進しています。

これについての参考文献を教えてください:)?
ビベックバガリア

8

自然科学が思い付く多くの興味深い問題は、古典的な意味でNP困難であることが判明しました。この概念は理論的には完全に有効ですが、生物学者や物理学者の助けにはなりません。一部のNPハード問題は固定パラメーター処理可能であり、実際の世界では小さな定数によって制限されることが観察されるパラメーターがしばしばあることがわかります。

つまり、TCSは、抽象的な問題に対する効率的な解決策は期待していないが、実際に発生しているインスタンスを迅速に解決できることを示しています。


5

このホワイトペーパーhttp://www.mimuw.edu.pl/~szymtor/papers/atom-turing.pdfでは 、データへのアクセスが制限されているチューリングマシンについて学習しました。これは、関係構造の自己同型のもとで不変であると形式化されます。たとえば、ソートの下限O(n log n)では、マシンは有理数を処理して保存できますが、その遷移は(Q、<)の自己同型、つまり単調全単射の下では不変でなければなりません。マシンがメモリに格納できるデータ構造の種類を正確に指定するために、正式な定義はより複雑です(
何らかの意味で「有限」である必要がありますが、データ値のタプルよりも複雑な構造を格納できます。順序付けされていないタプルなど)。

この論文では、「データアクセスが制限されている」他のチューリングマシンの下限を証明しました。特に、次のことを示しました。

•ベクトルを処理できる(たとえば、2要素フィールド上で)が、ベクトルの加算と等価のテストのみを使用できる決定論的チューリングマシンは、ベクトルの与えられたリストが線形依存であるかどうかを多項式時間で決定できません(正式には、マシンの遷移はベクトル空間の自己同型のもとで不変である)。これは、0になるベクトルの組み合わせを単純に推測できる非決定的マシンとは対照的です。ガウス消去は多項式時間で実行されますが、ベクトルの座標にアクセスできることに注意してください。特に、その遷移は、ベクトル空間の自己同型では不変ではありません。

•適切に定義されたモデルでは、自然数を等しいかどうか(<でさえない)のみを比較できるチューリングマシンを決定できません。ここでは、関係構造(N、=)とその自己同型のもとで不変なマシンを考えます。実際、このモデルではP≠NPであることを示す構造(有限モデル理論のCai-Furer-Immerman構造に類似)があります。マシンが<を使用して数値を比較できるようにすると、決定するのに十分な能力が与えられます。


2

抽象化の一般的な価格は、意思決定ツリーの複雑さや量子クエリの複雑さなどのブラックボックスフレームワークに存在します。分析をこれらのモデルに限定すると、タスクの複雑さに関して非常に適切な境界を見つけることができます。実際、量子クエリでは、負の敵対法が厳密な下限(log n / loglog nの係数内:1005.1601)を提供するため、基本的に問題の複雑さを解決できます。これにより、クエリの複雑さを分析するための優れたツールが得られますが、クエリの複雑さをより標準的なチューリングマシンの時間/空間の複雑さ(粗い下限を除く)と比較することはしばしば困難になります。


「ブラックボックスを開く」ことで壊れる可能性のある下限を示した具体的な例はありますか?
ジョシュアグロチョウ

ウェルソートは、決定木モデルがn log nを与える例ですが、入力の構造を調べることで改善できます。
Suresh Venkat

@Suresh:まだ言及されていない例を意味します:)。
ジョシュアグロチョウ

ごめんなさい-私の悪い。
Suresh Venkat

まあ、時々、あなたは比較的素晴らしい量子クエリの複雑さを持つことができますが、高速実行アルゴリズムはありません。例は、多項式数のクエリが必要な隠れサブグループ問題ですが、既知のアルゴリズム[1]の指数時間(明らかに時間の下限は証明されていませんが)です。これは逆方向の価格だと思います。[1] arxiv.org/abs/quant-ph/0401083
Artem Kaznatcheev

1

以下に、連続モデルと離散モデルに関連する2つの例を示します。

  1. [01]バツyバツ<yバツ=yバツ>yバツ|バツy|y=バツ

    y[01]y=バツ

  2. 問題Aの動機は、en望のないケーキ分割の問題に由来します。Stromquistは、各プレイヤーが接続された単一のピースを受け取る場合、3人以上のプレイヤー間でenのないケーキの分割を保証できる有限プロトコルはないことを示しました(無制限であっても)。

    αバツv0バツ=α

    さらに、結果は、ムービングナイフ手順などの連続操作を伴うアルゴリズムとは関係ありません。


0

一次論理で表現すると、固定nの鳩の巣原理の証明は指数関数的な長さになります。ただし、算術を使用すると、証明をはるかに簡潔に表現できます。

SMTソルバーの成功は、SATへの問題を削減する抽象モデルから後退したことによりもたらされ、より豊富な理論が必要な計算量を大幅に削減できるようになりました。

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