Monotone-2CNF公式的计数解


13

Monotone-2CNF公式是CNF公式,其中每个子句均由2个正文字组成。

现在,我有一个单调,2CNF公式。令为的满意分配的集合。我也有一个oracle,它可以提供以下信息:S F OFSFO

  1. 集合的基数(即)。˚FSF
  2. 给定变量: x
    • 包含正文字中的解决方案数。XSx
    • 包含负文字的解决方案的数量。¬ XS¬x
  3. 给定2个变量和: x 2x1x2
    • 包含的解的数量。X 1X 2Sx1x2
    • 包含的解的数目。X 1¬ X 2Sx1¬x2
    • 包含的解的数量。¬ X 1X 2S¬x1x2
    • 包含的解的数目。¬ X 1¬ X 2S¬x1¬x2

请注意,oracle是“有限的”:它仅对,不能在公式。F F 'FOFFF


题:

给定3个变量,, ,可以使用和提供的信息来确定多项式时间内包含中的解的数量。X 2 X 3小号¬ X 1¬ X 2¬ X 3 ˚F Ôx1x2x3S¬x1¬x2¬x3FO

注意:

您可以用,,的8种可能组合中的任何其他替换问题中的。问题将保持不变。X 1 X 2 X 3¬x1¬x2¬x3x1x2x3


经验事实:

一周前,我遇到了以下经验事实。令 为包含的那些解的集合,并令是包含的那些解决方案的集合。现在看来,如果条件成立,则这种关系也成立: 其中是黄金比例。条件似乎如下:¬ X 1¬ X 2 小号¬ X 1¬ X 2X 3小号¬ X 1¬ X 2X 3S¬x1¬x2S¬x1¬x2S¬x1¬x2x3S¬x1¬x2x3| 小号¬ X 1¬ X 2 |C

φ=1.618033 ...c ^X1X2X3˚F|S¬x1¬x2||S¬x1¬x2x3|ϕ

ϕ=1.618033...Cx1x2在中提到,的次数几乎相同”x3F


1
当您说“包含负文字-x的解决方案”时,您是说“ x = 0的解决方案”吗?
诺姆

@Noam:是的,完全正确。
Giorgio Camerani

1
易于观察:由于oracle O可能出现的问题数量是多项式有界的,因此在不损失一般性的情况下,您可以在算法开始时查询所有问题。因此,我们可以用其他输入替换oracle,并保证这些数字是正确的。我认为,这个承诺表述要比将其视为先知要简单一些。
伊藤刚(Tsuyoshi Ito)2010年

@Tsuyoshi:是的,我同意你的看法。
Giorgio Camerani 2010年

1
@vzn:2CNF的决策版本在。这是单调情况的计数版本(给定单调2CNF公式,您必须计算它具有多少个令人满意的分配)。˚FPF
Giorgio Camerani 2012年

Answers:


5

要使用该经验事实,您真的想知道近似数字是否可以为其他人提供近似数字。但是对于确切的情况,我认为可能有一种直接的方法来证明这很难。这是草图。

首先请注意,令人满意的分配对应于图中的独立集合。我将使用短语“ I(G)的S投影”来描述将映射到具有的独立集合I的数量的函数。“ k个投影”是V的所有子集S的S投影,其中。小号= 牛逼| S | = kTSIS=T|S|=k

证明大纲:

  1. 如果2个投影给出3个投影,则它们在每个k的多重时间中也给出k个投影。
  2. 如果2个投影给出4个投影,则图的独立集合数在FP中,因此FP =#P。

(1)让使得(k-1)个投影给出k个投影。给定一个图,它的k个投影以及,我们将计算到上的投影。k3x1,...,xk,vGx1,...,xk,v

通过将新顶点附加到v来定义图。这可以看作是权重v。因为我们知道的k投影,所以可以计算的(k-1)投影。 k个投影。这给出了 -G的投影。GGGx1,...,xk,v

(2)给定一个图,对边缘定义为具有边缘。的2突起可以从4突起计算。中独立集的数量为。迭代地可以在多项式时间内计算G的4个投影。 ģ ķ ë 1e k G k + 1 G k G 0 2 | G |e1,...,emGke1,...,ekGk+1GkG02|G|


我宁愿不使用该经验事实!我当然希望确切的数目。但顺便说一句,我在尝试确定确切计数时注意到了这一事实。
Giorgio Camerani 2010年

感谢您的回答。是的,这很困难:正如您所说,对该问题的肯定答案将意味着#P = FP。
Giorgio Camerani

7

一些观察,不是答案。

除了这个问题的注释之外,三个文字的任何组合都可以用相同变量上文字的任何其他组合以及oracle可以提供的少量术语来表示。这是通过查看3个相交集的维恩图并用其他区域表示8个区域中的每个区域得出的。请注意,这不需要公式是单调的或2CNF的。

同样清楚的是,可以将满足任何3个字母的合词的解的数量表示为项的总和,每个项为0或1,表示对所有变量的特定分配。这些中的每一个都可以在线性时间中进行评估,但是要评估的指数项数量很多,因此不能满足要求。2n3

因此,问题实际上是关于是否有可能利用单调2CNF的特性将该指数大小的表达式压缩为多项式大小。

我试图看一个更简单的问题,当单个或成对文字组合的计数不可用时,将oracle限制为仅包含解决方案数量的建议字符串。我看不出有任何方法可以利用解决方案数量的知识来快速计算任何单个文字的解决方案数量。

关于单调2CNF ,如果有人知道,是否可以快速获得包含的解的数量。?x 1 | S |Sx1|S|


2
确实,给定的信息需要足够强大以克服潜在的困难。众所周知,除非NP = RP,否则对单调2-SAT的求解不会有fpras。
mhum 2010年

@Andras:这里所谓的“预言”仅仅是某种形式的字典。似乎这样的字典可以通过每次将新子句添加到时对其进行更新来逐步构造。问题是,为了正确更新,我必须回答这个问题。D F DDDFD
Giorgio Camerani

@沃尔特:是的,我明白。我的观点是,甚至更简单的情况也不清楚:从解决方案总数到包含单个文字的解决方案数。
安德拉斯·萨拉蒙(AndrásSalamon)2010年

1
可能您的公式本质上是线性的:路径中的独立集遵循斐波那契数列。一种查看方式是分区函数(1 1; 1 0)具有phi作为特征值。
Colin McQuillan

3
我碰巧发现一些幻灯片讨论了更严格的结果:isid.ac.in/~antar/Talks/Counting-Hard-Core_KBS_slides.pdf(请参阅第11页)
Colin McQuillan 2010年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.