ユニオンクロージャの計算


10

家族所与せいぜいのn個の部分集合{ 1 2 ... N }。ユニオンクロージャFは、Fの 1つ以上のセットのユニオンを取ることによって構築できるすべてのセットを含む別のセットファミリCです。作成者| C | Cのセット数を示します。Fn{1,2,,n}FCF|C|C

ユニオンクロージャを計算する最速の方法は何ですか?

ユニオンクロージャと、2つの部分からなるグラフにすべての最大独立セットをリストすることの等価性を示したので、ユニオンクロージャのサイズの決定は#P完全であることがわかります。

しかし、内のすべての最大独立集合(または最大クリーク)リストする方法がありとのグラフの時間Nノードおよびmは築山らエッジ。1977。しかし、これは2部グラフに特化していません。O(|C|nm)nm

ランタイム付きの2部グラフのアルゴリズムを提供しました http://www.ii.uib.no/~martinv/Papers/BooleanWidth_I.pdf|C|log|C|n2

我々の方法は、内の任意の要素という観察に基づいているいくつかの他の要素の組合により製造することができるC、元のセットのいずれか。したがって、Cに要素を追加するときはいつでも、n個の元のセットのいずれかで要素を拡張しようとします。これらのそれぞれについてのn | C | セットがまだCにあるかどうかを確認する必要があります。Cをバイナリ検索ツリーとして保存するため、各検索にはログが必要ですC | n個の時間。CCCnn|C|CClog|C|n

それは、労働組合の閉鎖見つけることが可能であるOを| C |N 2の時間?あるいは時間でO | C |N CO(|C|n2)O(|C|n)


|C|

|C|C

これがあなたの質問に役立つ可能性は低いですが、あなたが求めているのは、ラティス内の要素の上向きの閉包を計算する特別なケースであり、そこから役立つかもしれない結果があるのだろうかと思います。
Suresh Venkat

以下の私の回答で指摘する調査は、ラティスとの関連をいくつか示しています。
M.kanté2012年

回答:


3

グラフ内の最大独立セットを列挙する複雑さは、2部グラフと同じであるため、2部構成によって新しいことはありません。

O(|C|n2)

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