您能确定多项式时间内两个置换的总和吗?


29

2个 问题最近问上cs.se它们或者涉及或有一个特殊的等同于以下问题情况:

假设有一个序列a1,a2,ann号码,使得i=1nai=n(n+1). 分解成两个置换的总和,πσ,的1n,使得ai=πi+σi

有一些必要条件:如果ai 进行排序,这样a1a2an,那么我们必须

i=1kaik(k+1).

但是,这些条件还不够。从我问的这个math.se问题的答案来看,序列5,5,5,9,9,9不能分解为两个排列的总和(一个人可以通过使用1或5都只能与4配对)。

所以我的问题是:这个问题的复杂性是什么?


顺便说一句,我想到了一个简单的变体,我不确定它的复杂性。您能否确定多项式时间内两个置换的定点自由和?(我们要求两个排列在每个位置,即不同意所有的πiσii
穆罕默德·Turkistany

Answers:


20

不可以,除非P = NP,否则无法确定多项式时间中两个置换的总和。您的问题是NP完全问题,因为问题的决策版本等效于NP完全问题带有目标和的数字匹配:2

输入:序列正整数,Σ Ñ = 1一个 = Ñ Ñ + 1 1个一个2 Ña1,a2,ani=1nai=n(n+1)1ai2n1in

问题:是否有两个置换ψ 2,使得ψ 1+ ψ 2= 一个1 Ñψ1ψ2ψ1(i)+ψ2(i)=ai1in

在参考文献中,数字3维匹配(RN3DM)的严格限制变体被证明具有很强的NP完整性。

RN3DM,给定一个多重集的整数和整数e使得n j = 1 u j + n n + 1 = n e,是否存在两个置换λμ使得 u j + λ j + μ j = eU={u1,...,un}ej=1nuj+n(n+1)=neλμuj+λ(j)+μ(j)=e,对于j=1,...,n

从RN3DM容易地减少到带有目标和的数字匹配问题:给定RN3DM的实例。我们通过使构造对应的实例一个 = ë - ü 1 Ñ2ai=eui1in

W. Yu,H。Hoogeveen和JK Lenstra。 在具有延迟和单位时间操作的两机流水车间中最小化制造期是NP-hard的。日程安排杂志,7:333–348,2004年

编辑10月1日:您的问题称为PERMUTATION SUMS。自1998年以来,它就被Steve Hedetniemi列入“组合优化中的开放问题”


2
感谢您的回答。我已经回答了cs.se上的一个问题,该问题启发了这个问题(不是以您的参考文献直接回答的形式),但是我认为自给出答案后,您应该有机会第一次回答第二个问题供您参考。
彼得·索尔

非常感谢Peter。我很高兴能够为您提供帮助。我认为您会提供更好的答案。因此,请继续回答该问题。
Mohammad Al-Turkistany 2013年

Here is the problem statement as it appeared on the above Web page: PERMUTATION SUMS [Cheston, 198X] INSTANCE: An array A[1..n] of positive integers. QUESTION: Do there exist two permutations r and s of the positive integers {1,2, ... , n} such that for 1 <= i <= n, r(i) + s(i) = A[i]?
Mohammad Al-Turkistany

4

On the other hand, Marshall Hall showed that it is possible to identify the difference of two permutations easily.


14
Marshall Hall's theorem applies to the sum as well, but both the difference and the sum have to be computed modulo n for his result to apply. Over Z, both the sum and the difference are NP-complete.
Peter Shor

3
@PeterShor For completeness, please post your comment as separate answer by providing a proof sketch of the NP-completeness of identifying the difference of two permutations.
Mohammad Al-Turkistany

3
For completeness: Suppose we have two permutations ϕ and π. We then have π¯(i)=n+1π(i) is also a permutation. Now, if ϕ+π is the multiset {x1,x2,,xn}, then ϕπ¯ is the multiset {x1(n+1),x2(n+1),,xn(n+1)}. For example, {2,2,2,2,2,2} cannot be represented as a difference of two permutations because {5,5,5,9,9,9} is not the sum of two permutations.
Peter Shor
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.