改进仿射等价算法研究

用于随机置换的改进仿射等价算法

摘要

本文研究了仿射等价问题,即给定两个函数 F, G:{0, 1}n →{0, 1}n,目标是判断是否存在 GF(2)n上的可逆仿射变换 A1, A2,使得 G= A2◦F ◦A1成立。该问题的算法在S盒的设计与分析、白盒密码的密码分析以及破解广义Even‐Mansour方案等方面具有多个众所周知的应用。

我们描述了一种解决仿射等价问题的新算法,并重点关注其中 F, G 为 n‐比特字上的置换的情形,因为该情形具有最广泛的适用性。当 F(或 G)为随机置换时,我们的算法复杂度在极大概率下约为n32n位操作。该结果优于目前已知的针对此问题的最佳算法(由Biryukov等人在 EUROCRYPT 2003上发表),其中第一个算法的时间复杂度为 n322n,第二个算法的时间复杂度约为 n323n/2 ,且内存复杂度大致相同。

我们的算法基于一种新结构(称为 rank table),用于分析函数在可逆仿射变换下保持不变的特定代数性质。除了在我们新算法中的标准应用外,秩表本身也具有独立的研究价值,我们讨论了其若干其他潜在应用。

关键词: 仿射等价问题 · Block密码 Even‐Mansour密码 · Cryptanalysis · Rank table

1 引言

在仿射等价问题中,输入包含两个函数 F, G,目标是判断它们是否仿射等价,如果是,则输出等价关系。更准确地说,如果存在(在某个域上的)可逆仿射变换 A1, A2,使得 G= A2 ◦ F ◦ A1成立,则输出 A1, A2;否则,判定 F, G不是仿射等价的。

仿射等价问题的变体已在数学的多个分支中得到研究,并且与非对称密码学和对称密码学均相关。在非对称密码学背景下,该问题被由Patarin首次形式化[17],并称为多项式同构。在此设定下, F, G通常在某个域上具有较低的代数次数(主要是二次)。

本工作的重点是仿射等价问题的一个变体,其中 F, G映射 n‐比特字,且仿射变换 A1, A2定义在 GF(2)n上。该变体在对称密钥密码学的多个场景中具有重要意义。特别是,它与S盒的分类和分析相关(参见[6,14]),因为仿射等价 S盒具有相同的差分、线性以及若干代数性质(参见[7]以获取该主题的最新成果)。此外,仿射等价问题的算法已被应用于[3]生成AES及其他分组密码的等效表示。这些算法还具有密码分析方面的应用,并被用于破解白盒密码(例如, 在[15]中)。另外,求解仿射等价问题可被视为攻破广义Even‐Mansour方案 [11],的一种方法,该方案近年来受到密码学界广泛关注。原始方案利用公开置换 F并通过两个 n‐比特密钥 k1, k2构造分组密码,其加密函数定义为 E(p) = F(p+ k1) + k2(其中加法在GF(2)n上进行)。广义Even‐Mansour方案将密钥加法替换为秘密仿射映射,攻破该方案可归约为求解仿射等价问题,如[3]中最初所述。

别柳科夫等人在EUROCRYPT 2003[3]上提出了仿射等价问题最著名的算法。[3]中描述的主要算法的复杂度约为 n322n位操作,而次要算法的时间复杂度约为 n323n/2,但也使用了大约相同数量的内存。1除了高内存消耗之外,[3]的次要算法的另一个缺点是它不能用于证明 F和 G不是仿射等价的。

本文提出了一种新的仿射等价问题算法,当 F(或 G)从所有n比特字的置换集合中均匀随机选择时,该算法的复杂度以非常高的概率约为 n32n位操作。我们的算法无需任何修改即可适用于任意函数(而不仅仅是置换),并且在随机函数上的表现似乎也类似。但我们关注的是置换,因为几乎所有应用实际上都需要解决置换的仿射等价问题。由于我们的算法可用于证明 F和 G不是仿射等价的,因此它没有[3]的次要算法的这一缺点。

由于我们的改进的算法,我们能够在单个核心上在几分钟内解决规模高达 n= 28的仿射等价问题实例。优化我们的实现并利用并行化,很可能在学术预算范围内解决至少规模为 n= 40的实例。此类实例是此前所有针对该问题的算法都无法触及的。

1 Biryukov等人还描述了一种更高效的算法,其复杂度为 n 3 2 n,用于解决线性等价性 问题,该问题是仿射等价问题的一个受限变体。

2 预备知识

对于有限集合 R,用 |R| 表示其大小。给定一个向量 u=(u[1],…, u[n]) ∈GF(2)n,令 wt(u)表示其汉明重量。在本文中,向量 u1, u2 ∈ GF(2)n之间的加法在 GF(2)n上按位进行。

多元多项式

任何布尔函数 F:{0, 1}n→{0, 1} 都可表示为一个多元多项式,其代数标准型(ANF)是唯一的,形式为 F(x[1],…, x[n]) = ∑ u=(u[1],…,u[n])∈{0,1}n αuMu,,其中 αu ∈ {0, 1} 是单项式 Mu= ∏n i=1 x[i]u[i] 的系数,求和范围为 GF(2)。函数 F 的 代数次数定义为 deg(F)=max{wt(u) | αu = 0}。

在若干情况下,直接操作 F作为多元多项式 P(x[1],…, x[n]) =∑u∈{0,1}n αuMu的表示形式将更为方便。注意,与 F不同,多项式 P并不被视为函数,而是被视为符号对象。 P(x[1],…, x[n])可以看作是由所有单项式{Mu | u ∈{0, 1}n}张成的向量空间中的一个向量。

给定一个多元多项式 P(x[1],…, x[n])=∑u∈{0,1}n αuMu和一个正整数 d,定义 P(≥d)为取 P中次数至少为 d的所有单项式,即 P(≥d)(x[1],…, x[n]) = ∑ αuMu。注意 P(≥d)u∈{0,1}n∧wt(u)≥d最多可以用 ∑ n

给定一个由多项式 P(x[1],…, x[n]) 表示的函数 F: {0, 1}n →{0, 1} ,定义 F(≥d): {0, 1}n →{0, 1} 为由 P(≥d) 表示的函数。

向量函数与多项式

给定一个向量布尔函数F: {0, 1}n→{0, 1}m,令 F(i): {0, 1}n→{0, 1}表示其第 i个输出位的布尔函数。

我们说,一组 m多项式 P={P(i)(x[1],…, x[n])} m i=1 表示 F,如果对于每个 i ∈{1, 2,…, m},第 i个多项式 P(i)表示 F(i)。

给定一个正整数 d,表示 P(≥d)={P(i) (≥d)(x[1],…, x[n])} m i=1。向量函数 F(≥d): {0, 1} n→{0, 1} m 的定义类似。

P的代数次数 deg(P)定义为其多项式的最大次数。代数次数 deg(F)类似地定义。

由于每个 P(i)可被视为向量空间中的一个向量,我们将 P的符号秩定义为 m个向量{P(i)}m i=1的秩。我们将 P的符号秩记为 SR(P)。注意 SR(P) ∈ Zm+1。

仿射变换与仿射等价

在 GF(2)上的仿射变换A:{0, 1}m→{0, 1}n通过一个布尔矩阵 Ln×m和一个字 a ∈{0, 1}n定义为 A(x) = L(x) + a(其中L(x)仅为矩阵乘法)。若 m= n且 L是一个可逆矩阵,则该变换是可逆的。如果 a= 0,则 A称为线性变换(此类函数属于仿射函数的一个子类)。

两个函数 F: {0, 1}n →{0, 1}m, G: {0, 1}n →{0, 1}m 是仿射等价的,如果存在两个可逆仿射变换 A1: {0, 1}n →{0, 1}n 和 A2: {0, 1}m→{0, 1}m,使得 G= A2 ◦ F ◦ A1。容易证明,仿射等价关系将所有函数的集合划分为(仿射)等价类。如果 F 与 G 仿射等价,我们记作 F ≡ G。

符号复合

给定 P={P(i)(x[1],…, x[n])}m i=1,以及一个仿射函数 A1: {0, 1}n ′ →{0, 1}n,,复合 P ◦ A1 是 m 个在 n′ 个变量中的多项式序列。

对于 i ∈{1, 2,…, m},该复合中的第 i 个多项式为 P(i) ◦ A1。可通过将 P(i) 中的每个变量 x[j] 替换为 A1 的第 j 个输出位的(仿射)符号表示(并化简结果以获得代数正规形)来计算。

例如,给定 P(x[1], x[2], x[3]) = x[1]x[2]+ x[1]x[3]+ x[2]+ 1 和 A1: {0, 1}2 →{0, 1}3 由关系 x[1]= y[1]+ y[2]+ 1, x[2]=y[2], x[3]= y[1]+ y[2] 定义,则 P ◦ A1=(y[1]+ y[2]+1)(y[2])+(y[1]+ y[2]+1)(y[1]+ y[2])+ y[2]+1= (y[1]y[2]+ y[2]+ y[2])+(y[1]+ y[1]y[2]+ y[1]y[2]+ y[2]+ y[1]+ y[2])+ y[2]+1= y[1]y[2]+ y[2]+1.

因此,我们将 P 中每个系数为 1 的单项式 Mu 与 A1 组合以获得多项式表达式,将所有表达式相加并简化结果。形式上,如果我们用 αu 表示 P 的 Mu 系数,则 P ◦ A1= ∑ u∈{0,1} n αu ·(Mu ◦ A1).

注意,与仿射函数的复合不会增加复合多项式的代数次数,即 deg(P ◦ A1) ≤ deg(P)。

类似地,给定一个仿射函数 A2:{0, 1} m→{0, 1} m′ ,,其复合 A2 ◦ P 是 关于 m′ 个变量的 n 个多项式序列。它可以通过将 A2 的 (仿射)符号表示 中 每个变量 x[j] 替换为 P(j) 来计算。等价地,若 A2(x) = L(x) + a,则 A2 ◦ P 可通过符号矩阵乘法(以及 a 的加法)计算为 L(P) + a。特别地,若 m′= 1 且 a= 0,则 A2 简化为向量 v=(v[1], v[2],…, v[m]) ∈{0, 1} m,且 v(P) =∑ m i=1 v[i]P(i) 是一个符号内积。

根据复合规则,如果 F由 P表示,则 P ◦A1表示 F ◦A1(这是函数的标准复合),而 A2 ◦ P表示 A2 ◦ F。

半空间掩码和系数

设 A:{0, 1}n−1→{0, 1}n为一个仿射变换,使得对于具有线性无关列的矩阵 Ln×n−1,有 A(x) = L(x) + a。那么 A的(仿射)值域是由 L的列所张成的一个n − 1维仿射子空间,并加上 a。与 A的值域正交的子空间是一维的,因此由单个非零向量 h ∈{0, 1}n张成。也就是说,一个向量 v ∈{0, 1}n属于 A的值域当且仅当 h(v+ a) = 0,即 v满足线性方程 h(v)+ h(a) = 0。

由于 h将{0, 1}n的空间划分为两部分,我们将 h称为 A的半空间掩码(HSM),并将比特 h(a)称为 A的半空间自由系数(HSC)。

我们称由 L的列向量张成的线性子空间为A的线性范围。一个向量 v ∈{0, 1}n属于 A的线性范围当且仅当 h(v) = 0。

规范仿射变换

对于非零的 h ∈{0, 1}n和 c ∈{0, 1},存在许多其HSM和最高单项式系数分别等于 h, c的仿射变换。我们将利用以下事实(下文将正式陈述):所有具有相同仿射值域的仿射变换都可以通过在右侧与一个可逆仿射变换进行复合而相互关联。

事实1. 仿射变换 A1:{0, 1}n−1→{0, 1}n和 A2:{0, 1}n−1→{0, 1}n具有相同的仿射值域当且仅当存在一个可逆仿射变换 A′:{0, 1}n−1→{0, 1}n−1,使得 A1= A2 ◦ A′。

给定 A1, A2,上述矩阵 A′ 可通过基本线性代数计算得出。

我们现在定义关于 h, c的标准仿射变换C|h,c:{0, 1}n−1→{0, 1}n。令 表示 h=(h[1],…, h[n])的首个非零位的索引。记C|h,c(x) = L(x) + a。我们定义 a= c · e(其中 e是第个单位向量),并利用 h和单位向量按如下方式定义 L[i]( L的第 i列):

L[i]={ei if i< ei+1+ h[i+ 1]e otherwise( ≤ i ≤ n −1)

因此,对于输入(y[1],…, y[n−1]),变换C|h,c由符号形式定义 (x[1], x[2],…, x[n])=(y[1],…, y[ −1], n−1 ∑ i= h[i+ 1]y[i]+ c, y[],…, y[n −1]).

定义C|h,c的动机在于,当其在右侧应用时,能够实现非常简单的符号复合:其主要作用是使用由 h的系数和 c指定的仿射组合来替换变量x[]。其他变量仅被重命名:索引为 i< 的变量保持索引不变,而每个索引为 i> 的变量,其索引减1。

备注1. 注意,我们必须证明C|h,c的定义是有效的。首先, L的 n − 1列显然是线性无关的。接下来需要证明 h, c确实是C|h,c的HSM和最高单项式系数。为此,只需证明对于每一列 L[i],向量 L[i]+ a满足方程h(L[i]+ a) + c= 0。由于 h(a) = h(c · e) = c · h(e) = c(因为 h= 1),因此只需证明 h(L[i]) = 0。事实上,如果 0 ≤ i< ,则 h(L[i]) = hi= 0 (因为 是 h的首个非零位的索引)。否则, ≤ i ≤ n − 1,则h(L[i]) = h[i+ 1]+ h[i+ 1]h[]= 0(因为 h[]= 1)。

3 新的仿射等价算法概述

我们通过一个示例来演示新算法。尽管这个示例过于简化,但它足以传达我们算法的主要思想。

函数定义

我们使用其符号表示 P={P(i)(x[1], x[2], x[3])}3i=1 来定义函数 F: {0, 1}3→{0, 1}3,

P(1)(x[1], x[2], x[3])=x[1]x[2]+ x[1]x[3]+ x[2]+ 1
P(2)(x[1], x[2], x[3])=x[1]x[2]+ x[1]+ x[2]
P(3)(x[1], x[2], x[3])=x[1]x[3]+ x[3].

我们使用两个仿射变换将 G :{0, 1}3 →{0, 1}3定义为 G=A2 ◦ F ◦A1,其中 A2仅为恒等变换,而 A1通过以下关系定义

x[1]= y[1]+ y[3]+ 1,
x[2]= y[1]+ y[2],
x[3]= y[2].

将A2 ◦ P ◦ A1组合并化简得到的代数正规型,得到 G的符号表示为 Q={Q(i)(y[1], y[2], y[3])}3i=1,其中

Q(1)(y[1], y[2], y[3])=y[1]y[3]+ y[1]+ y[2]+ 1
Q(2)(y[1], y[2], y[3])=y[1]y[2]+ y[1]y[3]+ y[2]y[3]+ y[3]+ 1
Q(3)(y[1], y[2], y[3])=y[1]y[2]+ y[2]y[3].

我们的仿射等价算法的输入是 F, G,如上所定义,其目标是恢复(假设) 未知的仿射变换A1。该算法的第一步是对 F, G进行插值,并分别获得 P, Q。

秩表与直方图

我们在定理1中证明的最基本性质是,由于 F和 G是仿射等价的,因此 P和Q(作为向量)的符号秩相等。事实上,很容易验证 P和 Q的符号秩均为3。更重要的是,定理1更强,它断言对于每个 SR P (≥ 2) = {x[1]x[2]+ x[1]x[3], x[1]x[2], x[1]x[3]} P (≥ d) = SR Q(≥ d) d ≥ 1 d= 2 2 ()()成立。

事实上,如果我们取,则得到,其符号秩为。这同样也是 Q (≥ 2 ) ={y[1]y[3], y[1]y[2]+y[1]y[3]+y[2]y[3], y[1]y[2]+y[2]y[3]}的符号秩。

我们希望利用此性质来恢复 A1。让我们考察由3比特HSM h′= 100(其 比特为h[1]= 1, h[2]= 0, h[3]= 0)和单比特HSC c= 0定义的二维仿射子空间。通过计算(F ◦ C|h′,0)(≥1)的符号形式,即对(P ◦ C|h′,0)(≥1)进行求值(即将 x[1]= 0代入 P(≥1)),我们获得{x[2], x[2], x[3]},其具有符号秩2。类似地, 对于 c= 1,我们计算(P ◦ C|h′,1)(≥1)(即将 x[1]= 1代入 P(≥1)),并获得 {x[3], 0, 0},其具有符号秩1。因此,我们将符号秩对(2,1)附加到 h′= 100上。

我们对所有7个非零 h′ ∈{0, 1}3执行相同操作。结果是一个表格,其条目为形如(maxR, minR) ∈Z4 · Z4(其中 maxR ≥ minR)的秩对,使得条目(maxR, minR)存储与此秩对相关联的HSMs集合。

(3, 2):{010, 011, 111, 110}
(2, 2):{001}
(2, 1):{100, 101}

该表被称为 F的秩表(关于次数 d= 1,因为我们只考虑了次数至少为1 的单项式)。秩表中条目(maxR, minR)内的HSM集合称为一个秩组(例如, 索引为(2,1)的秩组是{100, 101})。类似地,我们计算 G关于 d= 1的秩表。

(3,2) : {100, 001, 110, 011}
(2,2) : {010}
(2,1) : {101, 111}

尽管秩表不同,但maxR、 minR的每个秩组大小 F、 G是相同的。我们 定义秩直方图为 F(关于 d)的一个映射,该映射将每一个maxR、 minR值对 应到相应的秩组大小(例如,索引为(2,1)的 F的直方图项的值为 |{100, 101}| = 2)。正如我们在引理9中所示,仿射等价函数(如 F、 G)的秩直方图是相同的。

为了解释这一点,我们观察位于 G=A2 ◦ F ◦ A1的秩组中且索引为 (2, 1) 的 HSM h= 101 ,并注意到它根据 x[1]+ x[3]=0 或 x[1]+ x[3]= 1将 空间划分为两半{000, 101, 010, 111}和{001, 011, 100, 110}。在应用 A1之后, 这些半空间被映射到{100, 101, 110, 111}和{000, 001, 010, 011}中。这正是由 h′= 100所定义的划分,而 h′= 100位于 F的秩组中,具有相同的索引 (2,1)。 就规范仿射变换而言, C|h ′,c和 A1◦C|h,0 具有相同的半空间范围 {100, 101, 110, 111}(在本例中为 c= 1),我们定义一个映射h →A 1 h′来 捕捉这一点。在引理 3 中,我们证明了由于 A1是可逆的,该映射是一个双射。

利用匹配

映射 →A 1 的核心性质在引理6中证明,该引理断言其保持仿射等价。即,若 F ≡ G

并且 h →A1 h′,那么 F ◦ C|h′,c ≡ G◦ C|h,0(对于某个 c ∈{0, 1})。通过对半空间范围进行翻转并应用相同的论证,我们也获得 F ◦C|h′,c+1 ≡G ◦ C|h,1。结合定理1(该定理指出符号秩是仿射等价函数的不变性),我们得到对于任意 d ≥ 1, r0 SR((F ◦ C|h′,c)(≥d)) = SR((G ◦ C|h,0)(≥d)) 以及 r1 SR((F ◦ C|h′,c+1)(≥d)) =SR((G◦ C|h,1)(≥d))。由于 h′, h在 F, G中的有序秩对等于 (maxR, minR)(对于 maxR= max{r0, r1}, minR= min{r0, r1}),它们分别属于 F, G的秩表中具有相同索引(maxR, minR)的秩组。 →A1是双射这一事实导出了引理9(该引理断言 F, G的秩直方图是相同的)。

我们的仿射等价算法的主要目标是为多对 h, h′恢复匹配h →A1 h′。这很有用, 因为在引理5中我们证明了每个这样的匹配会给出关于未知矩阵 L的 n个线性方程, 该矩阵属于 A1(x) = L(x) + a。此外,与 h →A1 h′相关的常数 c(该常数决定了 F ◦ C|h′,0 ≡ G◦ C|h,0或 F ◦ C|h′,1 ≡ G◦ C|h,0)会给出关于 a的一个线性方程(同样由引理5得出)。总共,我们需要找到大约 n个匹配 h →A1 h′及其关联常数,以完全恢复 A1。

回到示例, G中索引为(2,2)的秩组是{010},而 F中相同索引的秩组是 {001}。因此,在计算出秩表后,我们可知 010 →A1 001. (1)

备注2。 我们在秩组(maxR, minR) =(2, 2)中对 010 →A1 001进行了匹配,由于 maxR= minR,我们无法推导出与此匹配相关的常数 c(因此无法推导出关于 a 的线性方程)。此类常数仅能在满足 maxR> minR的秩组中的匹配h →(A1) h ′推导出来,因为在这些情况下,我们可以根据等式 SR((F ◦ C|h′,0)(≥ d)) = SR((G◦ C|h,0)(≥d))判断是 F ◦ C|h′,0 ≡ G◦ C|h,0还是 F ◦ C|h′,1 ≡ G◦ C|h,0。更准确地说,如果 maxR> minR,那么要么 SR((F ◦ C|h′,0)(≥ d)) = SR((G◦ C|h,0)(≥d))成立, 但不会两者同时成立。从这个意义上讲,在满足 maxR> minR的秩组(maxR, minR)中恢复HSMs的匹配更为有用。

通过对秩组 (2,1) 应用类似的论证,我们知道要么101 →A1 100要么 101 →A1 101 (类似地, 111 →A1 100或 111 →A1 101)。由于可能性非常少,我们可以猜测哪些匹配成立,推导出A1并验证我们的猜测。然而,对于更大的 n,我们预计秩组会大得多,仅基于秩来穷举匹配 HSMs 的 F, G 将效率低下。因此,为了减少可能性的数量,并最终唯一地匹配足够多的对 h, h′ 使得 h →A 1 h′,我们需要为每个 HSM 的 F, G 附加更多数据。

HSM秩直方图

允许为每个HSM附加更多数据的主要观察结果在引理4中给出,该引理表明映射 →A 1 是加性的。

考虑索引为 (3, 2) 的两个秩组 F, G。它们的大小为4,且其HSMs无法唯一匹配。我们首先关注 G,并检查秩组 (3,2),即 {100, 001, 110, 011}。我们取 h1= 011,并计算其相对于秩组 (2,1)(即 {101, 111})的HSM秩直方图。 具体方法是:计算将秩组 (2,1) 的所有元素加到011上所定义的集合(即 {011+ 101, 011+ 111}={110, 100})的 (maxR, minR) 秩对。在 G的秩表中 查找110和100,发现这两个HSM的秩均为 (3,2)。因此, h1= 011相对于秩组 (2,1) 的HSM秩直方图只有一个非零项 (3, 2),其值为2。我们将此HSM秩直方 图简写为 [(3,2) : 2]。

我们现在考虑 h1= 011在 A1下的匹配,即 h′ 1= 110(也就是h1 →(A1) h′ 1)。类似于 h1,我们计算 h′ 1相对于秩组(2, 1)的HSM秩直方图(对于 F, 即{100, 101}),并获得相同的HSM秩直方图[(3, 2) : 2]。这是引理10的一个 特例,表明对于 F和 G的匹配HSM具有相同的HSM秩直方图(相对于固定的 秩组)。引理10是通过引理4推导得出的,该引理断言映射 →A1是加性的:如 果h1 →(A1) h ′ 1且h2 →(A1) h ′ 2,则(h1+ h2) →(A1) ( h′ 2)。

固定 h1= 011 对于 G 及其在 A1 下的匹配 h′ 1= 110 ,令 hi 2、 h′2i 对 于 i ∈{1, 2} 分别在 G、 F 中索引为 (2, 1) 的秩组的两个元素上变化。于是,当 h1 →(A1) h′ 1 且hi 2 →(A1) h′2i 对于 i ∈{1, 2}时,我们得到 (h1+ hi 2) →(A1) ( h′ 1+ h′2i)。根据前述的定理1和引理6(匹配的HSM的秩相等),我们得出结论: 011 和 110 关于秩组(2, 1)的HSM秩直方图确实相同(这是引理10的一个特例)。

HSM秩直方图多重集

由于我们事先不知道h1 →(A1) h′ 1,因此必须计算所有 位于秩组(3,2)中的HSMs关于秩组(2, 1)的HSM秩直方图。结果即为关于秩组 (2, 1)的秩组(3,2)的HSM秩直方图多重集。该多重集通过考虑秩组(3,2)中的所有 HSMs得到,即{100, 001, 110, 011}对于 G以及{010, 011, 111, 110}对于 F。引理11(其证明基于引理10)断言,当 F, G仿射等价时,这些HSM秩直方图多重集是相同的。

我们希望这些多重集包含唯一的HSM秩直方图(重数1),这将使我们能够推导出更多HSM之间的匹配。不幸的是,所得的多重集(对于 F和 G均如此)为{[(3,2) : 2],[(3,2) :2],[(3,2) : 2],[(3,2) : 2]}。它包含了4个相同的元素, 无法为我们提供关于 A1的任何新信息。如果该多重集中元素[(3,2) : 2](上述针对 h1, h ′ 1计算得到)的重数为1,则我们可以推导出关系h1 →(A1) h′ 1。

注释3. 通常,当 n非常小时(如我们的情况),直接应用该算法更可能无法完全恢复A1。正如我们在本文后面所示,对于 n ≥ 8,发生这种情况的实例比例非常小(并且随着 n增大趋于0)。在某些情况下,会出现无法检索 A1的问题

由于仿射映射 A1, A2并非唯一定义。特别是,如果 A1存在多个解,则我们无法期望获得能够完全定义 A1的唯一匹配,但我们可以通过枚举匹配的多种可能性来恢复仿射等价问题的所有可能解。

总之,我们将每个属于秩组(3, 2)的HSM关于秩组(2,1)的HSM秩直方图进行关联,通常这类数据可使我们推导出额外的匹配h →(A1) h′。一旦获得约n个匹配,便可通过对线性方程组求解来恢复 A1。

4 仿射等价函数的一个基本性质

在证明本节的主要结果之前,我们先陈述两个有用的引理(第一个引理在本文的扩展版本中已证明[9])。

引理 1。 设P={P(i)(x[1],…, x[n])}m i=1,令 A1:{0, 1}n′ →{0, 1}n, A2: {0, 1}m→{0, 1}m ′为仿射函数,且 d为正整数。那么, 1.(P(≥d) ◦ A1)(≥d)=(P ◦ A1)(≥d)2.(A2◦(P(≥d)))(≥d)=(A2◦P)(≥d)且如果 A2 是一个线性函数,则 A2◦(P(≥d))=(A2 ◦ P)(≥d)。

本质上,该引理指出,从 P中移除次数小于d的单项式可以在与仿射函数 复合之前或之后进行,且结果相同。

注意,该引理中将P(≥d) ◦ A1与(P ◦ A1)(≥d)相等的前半部分可能会被简化, 但通常是不正确的,因为第一个表达式可能包含次数小于 d的单项式。例如, 如果 d= 2,并将由 x[1]= y[1]+ y[2]和 x[2]= y[2]定义的仿射变换与多项式 x[1]x[2]复合,则得到的多项式 y[

用于随机置换的改进仿射等价算法

4 仿射等价函数的一个基本性质

在证明本节的主要结果之前,我们先陈述两个有用的引理(第一个引理在本文的扩展版本中已证明[9])。

引理 1。 设P={P(i)(x[1],…, x[n])}m i=1,令 A1:{0, 1}n′ →{0, 1}n, A2: {0, 1}m→{0, 1}m ′为仿射函数,且 d为正整数。那么, 1.(P(≥d) ◦ A1)(≥d)=(P ◦ A1)(≥d)2.(A2◦(P(≥d)))(≥d)=(A2◦P)(≥d)且如果 A2 是一个线性函数,则 A2◦(P(≥d))=(A2 ◦ P)(≥d)。

本质上,该引理指出,从 P中移除次数小于d的单项式可以在与仿射函数 复合之前或之后进行,且结果相同。

注意,该引理中将P(≥d) ◦ A1与(P ◦ A1)(≥d)相等的前半部分可能会被简化, 但通常是不正确的,因为第一个表达式可能包含次数小于 d的单项式。例如, 如果 d= 2,并将由 x[1]= y[1]+ y[2]和 x[2]= y[2]定义的仿射变换与多项式 x[1]x[2]复合,则得到的多项式 y[1]y[2]+ y[2]包含一个次数为1的单项式。

引理 2。 设P={P(i)(x[1],…, x[n])}m i=1,并设 A1:{0, 1}n→{0, 1}n为一个可 逆仿射函数。那么, deg(P)= deg(P ◦ A1)。

证明。 我们证明对于 i ∈{1, 2,…, m}, deg(P(i)) 有 = deg(P(i) ◦ A1)。注意到 deg(P(i)) ≥ deg(P(i) ◦ A1),因为与仿射函数的复合不会增加多项式的代数次数。通过相同的论 证以及 A1 的可逆性,我们也获得 deg(P(i) ◦ A1) ≥ deg(P(i) ◦ A1 ◦(A1) −1) =deg(P(i)) .

定理1。 设 F: {0, 1} n→{0, 1} m, G: {0, 1} n→{0, 1} m为两个仿射等价函 数,分别由 P, Q表示。则对于每个正整数 d, SR(P(≥d))= SR(Q(≥d)) 。

证明。 从高层次上看, P和 Q具有相同的符号秩,原因在于秩在与可逆仿射 变换复合时保持不变。此外,在截断低次单项式后,这种秩相等性仍然保持, 因为在与可逆仿射变换复合时,低次单项式无法影响高次单项式。形式化证明 如下。

写成 G= A2 ◦ F ◦ A1,意味着 Q= A2 ◦ P ◦ A1。记 P′= P ◦ A1 并观察到 SR(P′ (≥d))= SR((A2 ◦(P′ (≥d)))(≥d))= SR((A2 ◦ P′)(≥d))= SR(Q(≥d)), 其中第一个等式成立是因为秩在可逆的线性变换下保持不变5第二个等式是由于引理1的 第二部分。

还需要证明 SR(P′ (≥d)) = SR(P(≥d)),或 SR((P ◦ A1)(≥d)) =SR(P(≥d))。我们 首先证明 SR(P(≥d)) ≥ SR((P ◦ A1)(≥d))。

如果 P(≥d)的秩为 m,则该命题是显然的。否则,设 v ∈{0, 1}m是 P(≥d)的核 中的一个非零向量,即 v(P(≥d)) = 0。那么, v((P ◦ A1)(≥d))=(v((P ◦ A1)(≥d)))(≥d)=(v(P(≥d)) ◦ A1)(≥d)= 0, 其中第一个等式根据引理1的第二部分,第二个等式根据该引理的第一部分。 这意味着 v也在(P ◦ A1)的核中(≥d),符合要求。

要证明 SR(P(≥d)) ≤ SR((P ◦ A1)(≥d)),注意到如果 v 是 (P ◦ A1)(≥d) 的核中 的一个非零向量,则根据上述等式,我们有 0=v((P ◦ A1)(≥d)) =(v(P(≥d))◦ A1) (≥d)。这意味着 deg(v(P(≥d))◦ A1) < d,并且由于 A1 是可逆的,根据引理 2, deg (v(P(≥d))) = deg(v(P(≥d))◦A1) < d。由此可得 v(P(≥d)) = 0,因为该多项式不包 含次数小于 d 的单项式。因此, v 属于 P(≥d) 的核,证明完成。

5 半空间掩码双射及其性质

定义 1. 设 A:{0, 1}n→{0, 1}n是一个可逆仿射变换。使用 A定义 HSMs之间的映射如下:当存在 c ∈{0, 1}使得 A◦ C|h,0和 C|h′,c的仿射范 围相等时, h ∈{0, 1}n被映射到 h′。我们记作 h →(A) h ′,并称 h和 h′ 匹配(在 A下)。比特 c称为 h →(A) h ′的关联常数。

引理 3。 设 A:{0, 1}n →{0, 1}n是一个可逆仿射变换。该映射 →(A)是一 个双射,其逆由 →(A− 1 )给出。

证明。 该证明基于 A的可逆性。鉴于 h →(A) h′,存在 c ∈{0, 1}使得 A ◦ C|h,0和 C|h ′ ,c的仿射范围相等。根据事实1,这意味着存在一个可逆仿射变 换 A′:{0, 1} n−1 →{0, 1} n−1,使得A ◦ C|h,0= C|h ′ ,c ◦ A′。

因此,C|h,0 ◦(A′)−1= A−1 ◦ C|h′,c以及C|h,0和A−1 ◦ C|h′,c的仿射范围相等 (再次根据事实1)。这意味着 A−1 ◦ C|h′,0和C|h,c的仿射范围相等(如果c= 1 则翻转两边的最高单项式系数),即h′ →(A−1) h。

→(A)的一个非常有用的性质是它具有可加性。这一性质由下面的引理给出 (该引理的证明见本文的扩展版本 [9])。

引理4。 设 A:{0, 1}n→{0, 1}n是一个可逆仿射变换。设h1, h′1, h2, h′2 ∈{0, 1}n为HSMs,其中 h1 = h2和 h1 →(A) h′1, h2 →(A) h′2的关联常数 分别为 c1, c2。则(h1+ h2) →(A)(h′1+ h′2),其关联常数为 c1+ c2。

以下引理(在本文的扩展版本中证明 [9])表明,该双射揭示了关于假定未 知变换 A 的信息。

引理5。 设 A: {0, 1}n →{0, 1}n是一个可逆仿射变换,使得 A(x)= L(x)+ a。 设 h, h′ ∈{0, 1}n为HSMs,且 h →(A) h ′具有关联常数 c。则 A满足以下约束条件。 1.对于每个 i ∈{1, 2,…, n}, L的第 i列,记为 L[i],满足方程 h′(L[i]) = h[i],其中 h[i]是 h的第 i位。2.向量 a满足方程 h′(a)= c。

以下引理断言,仿射等价性在与匹配的HSMs进行复合时保持不变。

引理6。 设 F:{0, 1}n →{0, 1}m, G:{0, 1}n →{0, 1}m为两个仿射等价函数, 满足 G= A2 ◦ F ◦ A1。令 h, h′ ∈{0, 1}n为HSMs,使得h →(A1) h ′,其关联 常数为 c。则有 F ◦ C|h′,c ≡ G ◦ C|h,0和 F ◦ C|h′,c+1 ≡ G◦ C|h,1。

证明。 由于h →(A1) h′具有关联常数 c, A1 ◦C|h,0和 C|h′,c的仿射范围相等。根据事实 1,存在一个可逆仿射变换A′ 1:{0, 1}n−1→{0, 1}n−1,使得A1 ◦ C|h,0= C|h′,c ◦ A ′ 1。 我们获得,A2 ◦ F ◦ C|h ′ ,c ◦ A ′ 1 = A2 ◦ F ◦ A1 ◦ C|h,0= G◦ C|h,0,这意味着 F ◦ C|h ′ ,c 和G◦ C|h,0是仿射等价的。

F ◦ C|h′,c+1和 G ◦ C|h,1是仿射等价的,这一结论可通过考虑互补半空间并观 察到A1 ◦ C|h,1和 C|h ′ ,c+1的仿射范围相等而得出。证明的其余部分类似。

定义2. 设 F: {0, 1} n→{0, 1} m是由 P表示的函数, d为正整数, h ∈{0, 1} n为 HSM。令 r0= SR((P ◦ C|h,0)(≥ d)),r1= SR((P ◦ C|h,1)(≥ d)), maxR= max{r0, r1} 和 minR= min{r0, r1}。

  1. h关于 F、 d的HSM秩是整数的有序对(maxR, minR),记为RF,d,h

  2. h的附加常数是使得 maxR= SR((P ◦C|h,c)(≥d))成立的值 c ∈{0, 1}(如果 maxR= minR,则附加常数未定义)。

下面的引理指出,对于仿射等价函数,匹配的HSMs的HSM秩相等。

引理7。 设 F:{0, 1}n →{0, 1}m, G:{0, 1}n →{0, 1}m为两个仿射等价函数, 并设 d为正整数。假设 G= A2◦F ◦A1。令 h, h′ ∈{0, 1}n为HSMs,使得h →(A1)h ′。 则RG,d,h= RF,d,h′。

证明。 设 c ∈{0, 1}为h →(A1的h ′关联常数。根据引理6, F ◦ C|h′,c ≡ G◦ C|h,0 且 F ◦ C|h′,c+1 ≡ G◦ C|h,1。

假设 F, G分别由 P, Q表示。记 r′ 0=SR((F ◦ C|h′,c)(≥d)), r′ 1= SR(( F ◦ C|h′,c+1)(≥d)), r0= SR((G ◦ C|h,0)(≥d)),r1= SR((G◦ C|h,1)(≥d))。 根据上述仿射等价关系及定理1,我们有 r0= r′ 0和 r1= r′ 1。因此 max(r0, r1)= max(r′ 0, r′ 0, r′ 1),引理得证。

6 秩表、秩直方图及其性质

定义3. 给定一个函数 F:{0, 1}n→{0, 1}m和一个正整数 d,定义以下映射。

  1. F关于 d的秩表是一个映射 TF,d,其键(索引)为整数对(maxR, minR) ∈ Zm+1 × Zm+1,使得 maxR ≥ minR。其定义为 TF,d(maxR, minR)={h ∈{0, 1}n | RF,d,h=(maxR, minR)}.

此外,对于每个这样的HSM h,该表会存储其关联的常数c ∈{0, 1}(如果已定义)。

秩表 TF,d(maxR, minR)中的一个条目(包含具有此秩的所有HSMs)称为一个秩组。

  1. F关于 d的秩直方图是一个映射 HF,d: Zm+1 ×Zm+1→ Z,使得 HF,d(maxR, minR)= |TF,d(maxR, minR)|。

为了简化符号表示,下文中我们将高阶统计模型秩(maxR, minR) ∈ Zm+1 × Zm+1满足 maxR ≥ minR的情况用单一符号 r表示。

下面的引理指出,如果 F ≡ G,则对于 G,每个秩为 r的HSM将在秩组中与具有 相同HSM秩 r的 F相匹配。

引理8。 设 F: {0, 1} n →{0, 1} m, G: {0, 1} n →{0, 1} m为两个仿射等 价函数,并设 d为一个正整数。假设 G= A2 ◦ F ◦A1,并令 r ∈ Z m+1 × Z m+1。 那么,对于每个h ∈ TG,d(r),存在h′ ∈ TF,d(r),使得h →(A1) h ′。

引理9。 设 F: {0, 1}n →{0, 1}m, G: {0, 1}n →{0, 1}m为两个仿射等价函 数,并设 d为一个正整数。则F和 G关于 d的秩直方图相等,即HF,d= HG,d。

证明。 假设G= A2 ◦ F ◦ A1。对于索引为 r的直方图项,对每个h ∈ TG,d(r), 设 h′为其匹配项h →(A1) h′。于是,根据引理8, h′ ∈TF,d(r)。由于h →(A1) h′ 是双射,这表明HG,d(r) = |TG,d(r)| ≤ |TF,d(r) | = HF,d(r)。另一方面,由于HG, d(r) ≤ HF,d(r)对所有直方图条目 r成立,且两个直方图的各项之和均为 2n − 1, 这意味着HF,d= HG,d。

定义 4. 给定一个函数 F:{0, 1}n →{0, 1}m,一个正整数 d,一个高阶统计模型 h1 ∈{0, 1}n和 r ∈ Zm+1 × Zm+1,我们定义 h1相对于秩组 r的 HSM秩直方图,并将其 记为 HGF,d,h1,r。与标准直方图一样,它是一个映射 HGF,d,h1,r: Zm+1 × Zm+1→ Z,其中 HGF,d,h1,r(r′)= |{h1+ h2 | h2 ∈{0, 1}n ∧ h1 = h2 ∧ RF,d,h2= r ∧ RF,d,h1+h2= r′}|.

请注意,与(标准)秩直方图不同,HSM秩直方图是针对特定HSM相对 于某个秩组定义的。我们进一步指出, h1的HSM秩直方图也可以相对于其自 身的秩组来定义(这一点由条件 h1 = h2保证)。

以下引理表明,在仿射等价函数中,匹配的HSM的HSM秩直方图相等。

引理10。 设 F:{0, 1}n →{0, 1}m, G:{0, 1}n →{0, 1}m为两个仿射等价函 数,且令 d为正整数。假设 G= A2◦F ◦A1。令 h1, h ′ 1 ∈{0, 1}n满足 h1 →(A1) h′ 1。则对于每个 r ∈ Zm+1×Zm+1,HGG,d,h1,r= HGF,d,h′ 1 ,r.

证明。 该证明基于映射 →(A1)保持仿射等价函数的HSM秩(引理7),并利用 其加性性质(引理 4)。

固定一个HSM秩直方图项 r′ ∈ Zm+1 × Zm+1。定义以下两个集合: D1={h1+ h2 | h2 ∈{0, 1} n ∧ h1 = h2 ∧ RG,d,h2 = r ∧ RG,d,h1+h2 = r′} and D2={h′ 1 + h′ 2 | h′ 2 ∈{0, 1} n ∧ h′ 1 = h′ 2 ∧ RF,d,h ′ 2 = r ∧ RF,d,h ′ 1 +h ′ 2 = r′}.

为了证明该引理,我们需要证明 |D1| = |D2|。令 h1+ h2 ∈ D1ˆ ˆ,并用 ˆh ∈{0, 1} n 表示满足 h1+ h2 →(A1) h ˆ的向量。我们证明 ˆh ∈ D2。

ˆ 由于 h1+ h2 →(A1) h,根据引理7, RF,d,ˆh= RG,d,h1+h2= r′。接下来,写 出 ˆ ˆ ˆh= h′1+(h′1+ h)。由于 h1 →(A1) h′1 且 h1+ h2 →(A1) h,根据引理4,ˆ ˆh2 →(A1) h′1+ h,并且根据引理7, RF,d,h′ 1+ˆh= RG,d,h2= r,从而得到 ˆ h ∈ D2。由于 →(A1) 是一个双射,这意味着 |D2| ≥ |D1|。

由于 |D2| ≥ |D1| 对所有HSM直方图条目 r′成立,且HGG,d,h1,r和HGF,d, h′1,r中的HSM直方图条目之和等于秩组6 r的大小(该大小等于HF,d(r) = HG, d(r)),因此等式 |D1| = |D2|成立。

定义5。 给定一个函数 F:{0, 1}n →{0, 1}m,一个正整数 d,HSMs秩 r、 r′ ∈ Zm+1 × Zm+1,,我们定义关于秩组 r′的秩组 r的 HSM秩直方图多重集 HMF,d,r,r′={HGF,d,h,r′ | RF,d,h= r}.

HSM秩直方图多重集收集了关于秩组r′的秩组 r中HSMs的所有HSM直 方图。请注意,可能出现 r= r′的情况。

以下引理将仿射等价函数中的HSM秩直方图多重集等同起来。

引理11。 设 F:{0, 1}n →{0, 1}m, G:{0, 1}n →{0, 1}m为两个仿射等价函数, 且设 d为正整数。则对于每个r, r′ ∈ Zm+1 × Zm+1, HMF,d,r,r′= HMG,d,r,r′。

证明。 固定 r,r′ ∈ Zm+1 × Zm+1。我们定义多重集HMG,d,r,r′与HMF,d,r,r′ 中元素(HSM直方图)之间的一个映射。自然地,该映射基于双射 →(A1)。

假设 G= A2◦F ◦A1。令 h ∈{0, 1}n 满足 RG,d,h= r,这意味着 HGG,d,h, r ′ ∈ HMG,d,r,r ′。设 h′ ∈{0, 1}n 为 HSM,使得 h →(A1 h′。根据引理10, HGG,d,h, r ′= HGF,d,h′,r ′。此外,由引理7可得 RF,d,h′= RG,d,h= r,,因此 HGG,d,h, r ′= HGF,d,h ′ ,r ′ ∈ HMF,d,r,r ′。由于 →(A 1 是一个双射,我们获得 HMG,d,r,r ′ ⊆ HMF,d,r,r ′ 作为多重集。

另一方面,两个多重集中的元素(HSM直方图)数量等于秩组 r的大小 (即等于HF,d(r) =HG,d(r)),因此HMG,d,r,r ′= HMF,d,r,r ′。

定义6。 设 F: {0, 1}n →{0, 1}m,令 d为正整数,并令r, r′ ∈ Zm+1 × Zm+1。一个HSM h ∈{0, 1}使得RF,d,h= r(关于 F, d, r′) 称为唯一的,如果HGF,d,h,r ′ ∈ HMF,d,r,r ′在此多重集中具有重数1。

以下定理阐明了唯一HSM在恢复仿射等价函数的HSM之间匹配时的重要性。

除非 h 1的HSM秩为 r,此时HSM直方图条目的和为HF,d(r) − 1。

定理2。 设 F:{0, 1}n→{0, 1}m, G:{0, 1}n→{0, 1}m为两个仿射等价函数, 并设 d为一个正整数。那么对于每一个 r, r′ ∈ Zm+1×Zm+1,如果 h ∈{0, 1}n (使得RG,d,h= r)关于 G, d, r′,是唯一的,则以下陈述成立:

1.存在 h′ ∈{0, 1}n,使得 RF,d,h′= r且 h′关于 F, d, r′是唯一的。2. HGG, d,h,r′= HGF,d,h′,r′。3.假设 G= A2 ◦ F ◦ A1。那么,h →(A1) h′。此外,如果 h, h′的附加常数有定义且分别等于 c, c′,则 h →(A1) h′的关联常数为 c+ c′。

证明。 由引理 11 可知,多重集 HMF,d,r,r′=HMG,d,r,r′ 相等,这立即推出 前两个命题。记 h′′ ∈{0, 1}n 为满足 h →(A1) h′′ 的 HSM。为了完成第三个 命题的证明,我们说明 h′′= h′。

根据引理7,我们有RF,d,h′′= RG,d,h= r。因此HGF,d,h′′,r ∈ HMF,d,r,r′(并且由第一条 可知HGF,d,h′,r ∈ HMF,d,r,r′)。由于 h′关于 F, d, r′,是唯一的,故HGF,d,h′,r′在HMF,d,r,r′ 中具有重数1。因此,若我们证明了HGF,d,h′,r′= HGF,d,h′′,r,,则 h′′= h′必成立。

根据引理 10, HGG,d,h,r= HGF,d,h′′,r,并且由第二个陈述我们获得 HGF,d, h′,r′= HGG,d,h,r′= HGF,d,h′′,r,符合要求。

最后,我们检查 c, c′分别对应的附加常数 h, h′(假设它们有定义)。如果 c= c′,则A1 ◦ C|h,0和 C|h′,0的仿射范围相等,这意味着h →(A1) h ′的关联常数 为 0= c+c′。否则c= c′+ 1,且A1 ◦ C|h,0和 C|h′,1的仿射范围相等,这意味 着h →(A1) h ′的关联常数为 1= c+ c′。

7 随机置换的秩直方图条目分布分析

在本节中,我们分析随机置换 F:{0, 1}n →{0, 1}n 的秩直方图 HF,d 中各项的 分布。该分析针对d= n−2进行,这是我们算法中所使用的值,下文将详细解释。

假设 F由 P={P(i)(x[1],…, x[n])}ni=1表示。对于给定的h ∈{0, 1}n,我们考虑 SR((P◦C|h,0)(≥n−2))和 SR((P◦C|h,1)(≥n−2))。对于 c ∈{0, 1},(P ◦C|h,c)(≥n−2)中的 每个 n多项式都有 n−1个变量(在与C|h,c复合后, P中变量的数量减少了1)。因 此,每个这样的多项式中可能存在的非零单项式系数的数量为 ( n−1 n−1) +( n−1 n−2) = 1+ n−1= n。因此,(P ◦ C|h,c)(≥ n−2)可以用一个 n × n布尔矩阵 表示,而我们关心它的秩。

选择 d= n−1将至多留下一个非零单项式,该单项式几乎总是会出现在(P ◦ C|h,c) (≥ n−1)中。因此,几乎所有HSMs都将落入同一个秩组,导致仿射等价算法无法有效工作 能够区分并匹配它们。另一方面,选择 d ≤ n−3将使得 Ω(n2)个非零单项式以 及(P ◦ C|h,c)(≥r)几乎总是具有满秩,从而再次导致仅有一个秩组。我们得出结 论: d= n−1确实是最佳选择。

我们的分析基于以下启发式假设。

假设1。 对于由 P表示的随机置换 F:{0, 1}n→{0, 1}n,对于每个 h ∈{0, 1}n 和 c ∈{0, 1}, n × n阶布尔矩阵(P ◦ C|h,c)(≥n−2)的元素是均匀独立的随机变 量。

对于随机函数 n× n(而非随机置换),给定任意的 P ◦ C|h、c,(≥n−2)布 尔矩阵确实是均匀分布的。然而,即使对于随机函数,不同 F和 h ∈{0, 1}n 取值所得到的布尔矩阵也是相关的。尽管如此,这些相关性(以及 c ∈{0, 1}是 置换这一事实)在实际中似乎对我们的算法没有明显影响(我们将在第8.5节以 及本文的扩展版本 h中加以说明)。

随机矩阵的秩是一个被广泛研究的问题。对于较大的 n和非负整数 r ≤ n, 我们用 βr表示一个随机布尔n× n矩阵具有秩 r的概率。我们可以通过考虑如下 事件来对 βr进行下界估计:首先选择 r个线性无关的行构成一个大小为 2r的 子空间(该事件发生的概率为常数),然后在该子空间内选择剩下的 n − r行 (该事件发生的概率为 2−(r−n)2)。这给出了 βr的一个下界 Ω(2−(r−n)2)。下面 的定理给出了精确公式,该定理由[13]中引用并改编而来。

定理3([13],第126页,经修改)。 对于 n → ∞,一个随机布尔 n × n矩阵的秩为 r的概率 是 βr= 2−(r−n) 2 · α · n−r ∏ i=1 (1 −1/2i)−2, (2) 其中 α=∏ ∞ i=1(1 −1/2i) ≈ 0.2888。

由于α ≤ α ·∏ n−r i=1(1 −1/2i)−2< 1/α,对≈ 2−(r−n) 2的初始概率估计在很 小的常数范围内是正确的。我们还注意到,即使对于相对较小的 n值(例如, n ≥ 8),(2)也是一个很好的估计。设 pmaxR,minR={2βmaxRβminR if minR< maxR otherwise(minR= maxR), (3) 其中 β maxR β minR = α 2 · 2 −( maxR − n ) 2 −( minR − n ) 2 · n − maxR ∏ i=1 (1−1/2 i ) − 2 · n − minR ∏ i=1 (1−1/2 i ) − 2 .

然后,基于假设1和定理3,对于每个(maxR, minR) ∈Zm+1 × Zm+1使得 maxR ≥ minR,给定 h ∈{0, 1}n,我们有Pr[RF,n−2,h=(maxR, minR) ] ≈ pmaxR,minR。因此,根据假设1,HF,n−2的直方图项是多项式分布的,其参数 为 2n(HSMs7的数量),概率由pmaxR,minR给出。特别地,每个单独的直方图项 HF,n−2(maxR, minR)服从二项分布,其参数为 2n,概率为pmaxR,minR。

支持这一结论的实验结果在本文的扩展版本中给出 [9]。

特定直方图条目的渐近分析。对于大的 n,二项式变量HF,n−2(maxR, minR) 以高概率非常接近其期望值,该期望值约为 2n · pmaxR,minR.

如果我们忽略常数乘法因子,可以用以下期望来近似 2n · 2−(maxR−n)2−(minR−n)2, (4) 如 pmaxR,minR ≈ 2−(maxR−n)2−(minR−n)2。

我们现在近似(在常数乘法因子范围内)两个特定直方图条目的期望值, 这将对我们的算法有用。记 γn= (n/2)1/2,并令 r1=(n+ 1 −γn, n−γn) 和 r2=(n, n−γn)。定义随机变量 S1= HF,d(r1) 和 S2= HF,d(r2)。下面,我 们根据(4)来估计它们的期望值。

写出 γn= (n/2)1/2=(n/2)1/2 − k,其中 0 ≤ k< 1。因此,以非常高的概率我们有 S2= HF,d(r2) = HF,d(n, n − γn) ≈ 2n · pn,n−γn ≈2n · 2−(γn) 2 = 2n · 2−((n/2) 1/2 −k) 2 = 2n · 2−n/2+2k(n/2) 1/2 −k 2 = 2n/2+O(n 1/2 ). 因此, S2 接近于 2n/2。

类似地,S1= HF,d(r1) = HF,d(n+ 1 − γn, n − γn) ≈ 2n · pn+1−γn ,n−γn ≈ 2n · 2−(γn −1) 2 −(γn) 2 = 2n · 2−2(γn) 2 +2γ n −1= 2n · 2−n+(4k+2)(n/2) 1/2 −2k 2 −2k−1= 2Θ(n 1/2 )。因此, S1在 n中是次指数的。

8 新仿射等价算法的细节

在本节中,我们描述并分析了我们的新仿射等价算法。首先介绍该算法所使用的辅 助算法。

更准确地说,该参数是 2 n − 1,因为HSMs非零。

8.1 秩表与直方图算法

对于 F:{0, 1}n →{0, 1}n 由 P={P(i)(x[1],…, x[n])}ni=1 表示,以下算 法计算其秩直方图 HF,d 和秩表 TF,d。该算法的输入为 P≥(n−2)。

  1. 对于每个非零HSM h ∈{0, 1}n:

(a) 按如下方式计算 RF,n−2,h =(maxR, minR)。计算 (P(≥n−2)◦C|h, 0)(≥n−2)=(P◦C|h,0)(≥n−2),并使用高斯消元法计算其符号秩 r0。类 似地,计算 (P(≥n−2) ◦C|h,1)(≥n−2)=(P ◦ C|h,1)(≥n−2) 及其符号秩 r1。令maxR= max{r0, r1}和 minR= min{r0, r1}。(b) 将 h插入到 TF,n−2(maxR, minR)中,并附上常数 c ∈{0, 1}的值,使得 maxR= SR((F ◦C|h,c)(≥n−2))(如果 maxR> minR)。此外, 递增条目HF,n−2(maxR, minR)。

注意,根据

需求响应动态冰蓄冷系统与需求响应策略的优化研究(Matlab代码实现)内容概要:本文围绕需求响应动态冰蓄冷系统及其优化策略展开研究,结合Matlab代码实现,探讨了在电力需求侧管理背景下,冰蓄冷系统如何通过优化运行策略参与需求响应,以实现削峰填谷、降低用电成本和提升能源利用效率的目标。研究内容包括系统建模、负荷预测、优化算法设计(如智能优化算法)以及多场景仿真验证,重点分析不同需求响应机制下系统的经济性和运行特性,并通过Matlab编程实现模型求解与结果可视化,为实际工程应用提供理论支持和技术路径。; 适合人群:具备一定电力系统、能源工程或自动化背景的研究生、科研人员及从事综合能源系统优化工作的工程师;熟悉Matlab编程且对需求响应、储能优化等领域感兴趣的技术人员。; 使用场景及目标:①用于高校科研中关于冰蓄冷系统与需求响应协同优化的课题研究;②支撑企业开展楼宇能源管理系统、智慧园区调度平台的设计与仿真;③为政策制定者评估需求响应措施的有效性提供量化分析工具。; 阅读建议:建议读者结合文中Matlab代码逐段理解模型构建与算法实现过程,重点关注目标函数设定、约束条件处理及优化结果分析部分,同时可拓展应用其他智能算法进行对比实验,加深对系统优化机制的理解。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值