Lecture 3 - 2025 / 2 / 24

Primality Testing

费马素数测试:随机选择 a{1,2,,n1}a \in \{1 ,2, \cdots, n- 1\},如果 gcd(a,n)1\gcd(a, n) \ne 1 直接输出 nn 不是素数,否则如果 ap11(modn)a^{p - 1} \equiv 1 \pmod n,则输出 Yes,否则为 No

Definition (Carmichael number): 对于所有 1a<n1 \le a < n,都有 ap11(modn)a^{p-1} \equiv 1 \pmod n,则 nn 为 Carmichael 数。

Theorem: 如果 nn 是合数且不是 Carmichael 数,则 Pr[Error in Fermat test]12\Pr[\text{Error in Fermat test}] \le \dfrac{1}{2}

后文称 G={a(a,n)=1}=ZnG = \{a \mid (a, n) = 1\} = \Z_n^*

H={aGan11(modn)}H = \{a \in G \mid a ^{n - 1} \equiv 1 \pmod n\},显然有 HGH \lneq G,从而根据拉格朗日定理,Pr[Error in Fermat test]HG12\Pr[\text{Error in Fermat test}] \le \dfrac{|H|}{|G|} \le \dfrac 1 2

现在考虑 Carmichael 数,首先我们处理掉 n=pkn = p^k 的情况。

Claim: 可以在 O(log2n)O(\log^2 n) 的时间内,判断一个数是不是 pkp^k

首先 k<O(logn)k < O(\log n),所以每次二分 pp 即可。

Lemma: 对于素数 pp,一定不存在 x≢±1(modp)x\not\equiv \pm 1 \pmod px21(modp)x^2 \equiv 1 \pmod p

(x1)(x+1)0(modp)(x - 1)(x + 1) \equiv 0 \pmod p

我们试图通过寻找非平凡 11 的平方根的方式来判定素数。

n1=2wOn - 1 = 2^w O。随机选择 aGa \in G

显然素数一定能通过这个测试。对于合数,如果 aa 能够成功淘汰它,则称 aa 为一个 witness。

Claim: 对于存在两个不同素因子 p1,p2p_1, p_2 的合数 nnPr[a is a non-witness]12\Pr[a \text{ is a non-witness}] \le \dfrac{1}{2}

第一步构造一个包含所有 non-witness 的 GG 的子群。

s{O,2O,,2wO}s^* \in \{O, 2O, \cdots, 2^w O\} 为最大的满足,xG,xs1(modn)\exists x \in G, x^{s^*} \equiv -1 \pmod n 的数。

ss^* 一定是良定义的,因为 (1)O1(modn)(-1)^O \equiv -1 \pmod n

构造 H={aGas±1(modn)}GH = \{ a \in G \mid a^{s^*} \equiv \pm 1 \pmod n \} \le G。易见所有 non-witness 都包含于 HH。下面说明 HGH \lneq G,即可由拉格朗日定理得到 Pr[a is a non-witness]HG=12\Pr[a \text{ is a non-witness}] \le \dfrac{|H|}{|G|} = \dfrac{1}{2}

考虑中国剩余定理,取出一个 (x)s1(modn)(x^*)^{s^*} \equiv -1 \pmod n,我们构造满足如下方程的 aGa \in G

{ax(modp1k1)a1(modp2k2)\begin{cases} a\equiv x^* \pmod {p_1^{k_1}} \\ a \equiv 1 \pmod {p_2^{k_2}} \end{cases}

由于 aH,aGa\notin H, a \in G,从而 HH 是真子群,原命题得证。

Probabilistic Method

Theorem (Ramsey): 对于 n2k/2n \le 2^{k/2} 个点的图,存在而染色方案,使得任意 kk 完全子图都不是同色的。

Theorem (Max Cut): 对于图 G=(V,E)G = (V, E),存在一个割的大小 E2\ge \dfrac{|E|}{2}

Independent Set

Claim: 对于图 G=(V,E)G = (V, E),存在独立集大小 v1deg(v)+1\ge \sum\limits_v \dfrac{1}{\deg (v) + 1}

随机对点赋实数值,如果一个点是自己和邻居的最小值,就将其选入独立集。

可以看出不会选到相邻的点。vv 被选入的概率是 1deg(v)+1\dfrac{1}{\deg(v) + 1},从而期望即右式。

Crossing Number

Definition (crossing number):G=(V,E)G = (V, E) 嵌入平面,交叉数 c(G)c(G) 为最少的边的交点数量。

Theorem (Euler's formula): 对于平面图,V+R=E+2|V| + |R| = |E| + 2。同时 R2E3|R| \ge \dfrac{2|E|}{3} 从而 E3V6|E| \le 3|V| - 6

Claim: c(G)E3V+6c(G) \ge |E| - 3|V| + 6

容易验证,最佳的嵌入方式满足:

于是,对于原图每一组相交的 (a,b),(c,d)(a, b), (c,d),构造新的点 vv,断开原来的边并将 (a,v),(b,v),(c,v),(d,v)(a, v), (b, v), (c, v), (d, v) 连边。

新图为平面图,E=E+2c(G)|E'| = |E| + 2 c(G)V=V+c(G)|V'| = |V| + c(G),从而
E+2c(G)3V+3c(G)6c(G)E3V+6|E| + 2c(G) \le 3 |V| + 3c(G) - 6 \Rightarrow c(G) \ge |E| - 3|V| + 6

用概率方法加强这个结论。我们以 pp 的概率保留一个点,1p1-p 的概率把点删去。

从而每条边有 p2p^2 的概率保留下来,每个原来的交点有 p4p^4 的概率被保留下来。

从而
p4c(G)E[c(G)]E[E3V+6]=p2E3pV+6p^4 c(G) \ge \mathbb E[c(G)] \ge \mathbb E[|E| - 3|V| + 6] = p^2 |E| - 3p|V| + 6\\

c(G)p2E3pV+6p4pE3Vp3c(G) \ge \dfrac{p^2 |E| - 3p|V| + 6}{p^4} \ge \dfrac{p |E| - 3|V|}{p^3}

Claim: 对任何 E4V|E| \ge 4|V| 的图 GG,有 c(G)E364V2c(G) \ge \dfrac{|E|^3}{64 |V|^2}

p=4VEp = \dfrac{4|V|}{|E|} 即可。