基质填充的溶解度


11

矩阵维数为n × n n 1 。我们要使用介于1n之间(包括1n)的整数来填充A。An×n(n1)A1n

要求:

  1. 每一列都是1 n的排列。A1,,n
  2. 由两行组成的任何子矩阵不能具有相同的列。A

题:

是否可以填充满足要求的矩阵?

与密码学的关系:

每个行号对应一个纯文本。每列对应一个键。由于键定义了注入,因此每一列都必须是一个排列。第二个要求是对两个消息完全保密。


1
假设您已经用cr.crypto-security标记了它,那么如果您可以声明它与加密/安全性之间的关系,它将改善这个问题。
戴夫·克拉克

1
简单观察:存在n≤4的矩阵。对于n≤3,采用所有排列。对于n = 4,唯一的解决方案是采用所有偶数排列或所有奇数排列。
伊藤刚(Tsuyoshi Ito)

谢谢,伊藤 其实我想出答案时手。但是,事情变得更加困难,当ñ 5。发生指数爆炸。n4n5
Cyker

3
(1)我认为该问题与编码理论有关,并将其添加为标签。(2)另一个观察结果:问题也可以陈述如下。找出大小为n×(n ^ 2)的矩阵B,使得B的前n列中的每一个都是相同数目的n个重复,并且B满足问题中的条件2。如果存在这样的B,则B的最后n(n-1)列中的每一个都必须是一个排列。相反地,满足条件1和2的任何矩阵A可以通过n表示列附着到左A的转换为矩阵B
刚伊藤

Answers:


11

刚,在您的评论中非常棒!我认为这几乎可以解决问题。

考虑以下两个问题

  1. 是否存在长度为n n 1 )的行, 这样在任何列中都没有数字出现两次,并且对于每一对行,列给出的所有有序对都是不同的?kn(n1)
  2. 是否存在长度为n 2的行, 以便对于每一对行,列给出的所有有序对都是不同的?kn2

Tsuyoshi在他的评论中的观察表明,如果您可以为问题(1)达到某个值,则可以为问题(2)获得相同的值k。现在我们表明,如果我们可以为问题(2)获得某个值k,我们就可以为问题(1)获得值k 1。因此,这两个问题的答案几乎相同。kkkk1

1n{1,2,,n}k1nk1

kn2k2 34kjiji

nnn2nn=6kk=Ω(nc)c1

n=6k6×6n=10k=4


n2nn1nnn1n=6

这是一个非常好的连接。感谢你的回答!一个小要点:根据Wikipedia的知识,已知存在n-1个正交的拉丁方阵,用于n个素数幂,而不仅仅是n个素数。
伊藤刚(Tsuyoshi Ito)

@Tsuyoshi-糟糕。我知道; 我只是说错了。构造来自有限域。感谢您的更正。立即修复。
彼得·索尔

我猜是这样。:)
伊藤刚(Tsuyoshi Ito)

11

这是部分解决方案。如果n是素数幂,则存在这样的矩阵。

Fn阶的有限域。我们构建Ñ × ÑÑ -1)矩阵,它的行由被标记为˚F,其列由(被标记˚F ∖{0})× ˚F,和其条目是在˚F如下:的行第标记为(ab)的列由ai + b给出。换句话说,每一列对应于F中的一阶多项式。然后每一列包含F的每个元素 正好一次,并且没有两列在同一行中有相等的条目,因为两个不同的一阶多项式的值最多只能重合一个点。

(如果你想有一个矩阵,其项在{1,...,ñ }而不是˚F,取代的元素˚F与{1,...,ñ }随意。)


n+1

@Artem:特别是考虑到彼得将这个问题与正交的拉丁方联系起来的答案,可能会有。(免责声明:在我的非专家看来,正交的拉丁方格,MUB,组合设计,单一设计和SIC-POVM几乎是无法区分的。)
伊藤刚(Tsuyoshi Ito

非常感谢,伊藤!这个设计看起来真的很漂亮!
Cyker
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.