一、数论函数
定义与约定
符号约定
符号/记号 | 定义 |
---|---|
F(x)F(x)F(x) | 关于x的函数FFF |
xyx⋅yf(x)g(x)f(x)⋅g(x)(f⋅g)(x)xy \\\\ x·y \\\\ f(x)g(x) \\\\ f(x) · g(x) \\\\ (f·g)(x)xyx⋅yf(x)g(x)f(x)⋅g(x)(f⋅g)(x) | 数值/函数乘法 |
f(x)∗g(x)(f∗g)(x)f(x)*g(x) \\\\ (f*g)(x)f(x)∗g(x)(f∗g)(x) | 狄利克雷卷积 |
∑\sum∑ | 连续求和 |
∏\prod∏ | 连续求积 |
aaa | bbb | a是b的约数 |
<x,y,…> | 多元向量组 |
(a,b) | a,b的最大公约数 |
[expression] | 表达式是否成立,成立则为1,否则为0 |
积性函数
若有一函数 fff, 对于
∀ x,y∈S\forall \ x,y\in S∀ x,y∈S 使得
x∗y∈S,f(x)f(y)=f(xy)x * y \in S , f(x)f(y)=f(xy)x∗y∈S,f(x)f(y)=f(xy)
则称fff在SSS下具有积性,也称fff为SSS下的积性函数.
完全积性函数
若函数fff在实数域RRR下具有积性,则我们称fff具有完全积性,称fff为完全积性函数.完全积性函数属于积性函数.
不完全积性函数
若有一函数 fff, 不存在集合SSS使得fff为SSS下的积性函数,但存在二元组<x,y><x,y><x,y>使得
f(x)f(y)=f(xy)f(x)f(y)=f(xy)f(x)f(y)=f(xy)
成立,则我们称fff为不完全积性函数.
不完全积性函数不属于积性函数.
数论函数
若存在函数fff,对于∀\forall∀二元组<x,y>{<x,y>∣x,y∈N∗}∩{<x,y>∣(x,y)==1}<x,y>\{<x,y>| x,y \in N^*\}\cap\{<x,y>|(x,y)==1\}<x,y>{<x,y>∣x,y∈N∗}∩{<x,y>∣(x,y)==1},使得f(x)f(y)=f(xy)f(x)f(y)=f(xy)f(x)f(y)=f(xy)成立,则称fff为数论函数.
完全积性函数属于数论函数.
大部分数论函数都具有不完全积性.
数论函数的运算
若有数论函数f(x),g(x)f(x),g(x)f(x),g(x), 则以下函数亦有数论积性.
(f(x))−1,(f⋅g)(x),(f∗g)(x),f(g(x))(f(x))^{-1},(f·g)(x),(f*g)(x),f(g(x))(f(x))−1,(f⋅g)(x),(f∗g)(x),f(g(x))
考虑证明:
- g(x)=(f(x))−1g(x)=(f(x))^{-1}g(x)=(f(x))−1的数论积性.
g(xy)=1f(xy)=1f(x)∗1f(y)=g(x)g(y)g(xy)=\frac{1}{f(xy)}=\frac{1}{f(x)}*\frac{1}{f(y)}=g(x)g(y)g(xy)=f(xy)1=f(x)1∗f(y)1=g(x)g(y) - h(x)=(f⋅g)(x)h(x)=(f·g)(x)h(x)=(f⋅g)(x)的数论积性.
h(xy)=f(xy)g(xy)=f(x)g(x)f(y)g(y)=h(x)h(y)h(xy)=f(xy)g(xy)=f(x)g(x)f(y)g(y)=h(x)h(y)h(xy)=f(xy)g(xy)=f(x)g(x)f(y)g(y)=h(x)h(y) - h(x)=(f∗g)(x)h(x)=(f*g)(x)h(x)=(f∗g)(x)的数论积性.
h(xy)=∑d∣xyxyg(d)f(xyd)=∑d1∣xx∑d2∣yyg(d1d2)f(xyd1d2)h(xy)=\sum^{xy}_{d|xy}g(d)f(\frac{xy}{d})=\sum^{x}_{d_1|x}\sum^{y}_{d_2|y}g(d_1d_2)f(\frac{xy}{d_1d_2})h(xy)=d∣xy∑xyg(d)f(dxy)=d1∣x∑xd2∣y∑yg(d1d2)f(d1d2xy)
=(∑d1∣xxg(d1)f(xd1))(∑d2∣yyg(d2)f(yd2))=h(x)h(y)=\big(\sum^{x}_{d_1|x}g(d_1)f(\frac{x}{d_1})\big)\big(\sum^{y}_{d_2|y}g(d_2)f(\frac{y}{d_2})\big)=h(x)h(y)=(d1∣x∑xg(d1)f(d1x))(d2∣y∑yg(d2)f(d2y))=h(x)h(y) - h(x)=f(g(x))h(x)=f(g(x))h(x)=f(g(x))的数论积性
h(xy)=f(g(xy))=f(g(x)g(y))=f(g(x))f(g(y))=h(x)h(y)h(xy)=f(g(xy))=f(g(x)g(y))=f(g(x))f(g(y))=h(x)h(y)h(xy)=f(g(xy))=f(g(x)g(y))=f(g(x))f(g(y))=h(x)h(y)
注意,数论函数的取反、加、减、数乘绝大多数情况下不满足以上性质.
数论函数运算法则满足函数运算法则.
狄利克雷卷积的运算法则及证明
1.交换律 : (f∗g)(x)=(g∗f)(x)(f*g)(x)=(g*f)(x)(f∗g)(x)=(g∗f)(x)
(f∗g)(x)=∑d∣xxf(d)g(xd)=∑xd∣xxf(xd)g(xxd)=∑xd∣xxf(xd)g(d)=(g∗f)(x)(f*g)(x)=\sum^{x}_{d|x}f(d)g(\frac{x}{d})=\sum^{x}_{\frac{x}{d}|x}f(\frac{x}{d})g(\frac{x}{\frac{x}{d}})=\sum^{x}_{\frac{x}{d}|x}f(\frac{x}{d})g(d)=(g*f)(x)(f∗g)(x)=d∣x∑xf(d)g(dx)=dx∣x∑xf(dx)g(dxx)=dx∣x∑xf(dx)g(d)=(g∗f)(x)
2.结合律 : (f∗g∗h)(x)=(f∗(g∗h))(x)(f*g*h)(x)=(f*(g*h))(x)(f∗g∗h)(x)=(f∗(g∗h))(x)
(f∗g∗h)(x)=∑d1∣xxf(d)∑d2∣xd1xd1g(d2)h(xd1d2)(f*g*h)(x)=\sum^x_{d_1|x}f(d)\sum^{\frac{x}{d_1}}_{d_2|\frac{x}{d_1}}g(d_2)h(\frac{x}{d_1d_2})(f∗g∗h)(x)=d1∣x∑xf(d)d2∣d1x∑d1xg(d2)h(d1d2x)
=∑abc=xxf(a)g(b)h(c)=∑a∣xxf(a)(g∗h)(xa)=(f∗(g∗h))(x)=\sum^x_{abc=x}f(a)g(b)h(c)=\sum^x_{a|x}f(a)(g*h)(\frac{x}{a})=(f*(g*h))(x)=abc=x∑xf(a)g(b)h(c)=a∣x∑xf(a)(g∗h)(ax)=(f∗(g∗h))(x)
3.加法分配率 : ((f+g)∗h)(x)=(f∗h+g∗h)(x)((f+g)*h)(x)=(f*h+g*h)(x)((f+g)∗h)(x)=(f∗h+g∗h)(x)
((f+g)∗h)(x)=∑d∣xx(f+g)(d)h(xd)=∑d∣xxf(d)h(xd)+g(d)h(xd)=(f∗h+g∗h)(x)((f+g)*h)(x)=\sum^x_{d|x}(f+g)(d)h(\frac{x}{d})=\sum^x_{d|x}f(d)h(\frac{x}{d})+g(d)h(\frac{x}{d})=(f*h+g*h)(x)((f+g)∗h)(x)=d∣x∑x(f+g)(d)h(dx)=d∣x∑xf(d)h(dx)+g(d)h(dx)=(f∗h+g∗h)(x)
4.单位元 : (ε∗f)(x)=f(x)(\varepsilon*f)(x)=f(x)(ε∗f)(x)=f(x)
不难构造ε(x)=[x==1]\varepsilon(x)=[x==1]ε(x)=[x==1]
5.逆元:(f∗f∗)(x)=ε(x)(f*f^{*})(x)=\varepsilon(x)(f∗f∗)(x)=ε(x)
以上说明,运算[∗][*][∗]对于数论函数构成一个阿贝尔群
莫比乌斯函数与莫比乌斯反演
令I(x)=1I(x)=1I(x)=1,定义则其狄利克雷卷积的逆元为μ(x)\mu(x)μ(x)
则
(I∗μ)(x)=ε(x)(I*\mu)(x)=\varepsilon(x)(I∗μ)(x)=ε(x)
构造
μ(x)={1 [x==1](−1)p [x=∏piai,p∈prime,ai∈{0,1}]0 otherwise\mu(x)=\left\{
\begin{aligned}
1 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ [x==1] \\
(-1)^{p} \ \ \ \ \ \ \ [x=\prod p_i^{a_i},p \in prime,a_i \in \{0,1\}] \\
0 \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ otherwise
\end{aligned}
\right.μ(x)=⎩⎪⎪⎨⎪⎪⎧1 [x==1](−1)p [x=∏piai,p∈prime,ai∈{0,1}]0 otherwise
证明:
(I∗μ)(x)=∑d∣xxμ(d)(I*\mu)(x)=\sum^x_{d|x}\mu(d)(I∗μ)(x)=d∣x∑xμ(d)
根据莫比乌斯函数定义,当d含有平方因子时,μ(x)=0\mu(x)=0μ(x)=0
所以构造数论函数Φ(x)\Phi(x)Φ(x).
当 x∈primex \in primex∈prime时 Φ(x)=x\Phi(x)=xΦ(x)=x
并且满足 Φ(xy)=Φ(x)Φ(y)(x,y)\Phi(xy)=\frac{\Phi(x)\Phi(y)}{(x,y)}Φ(xy)=(x,y)Φ(x)Φ(y),当x,y互质时,(x,y) = 1.
很容易得到
∑d∣xxμ(d)=∑d∣Φ(x)Φ(x)μ(d)\sum^x_{d|x}\mu(d)=\sum^{\Phi(x)}_{d|\Phi(x)}\mu(d)d∣x∑xμ(d)=d∣Φ(x)∑Φ(x)μ(d)
考虑到Φ(x)\Phi(x)Φ(x)不含相同质因子,则每种质因子只有选与不选两种状态,所以枚举2p2^p2p种状态,根据莫比乌斯函数的定义可以知道μ(x)\mu(x)μ(x)的正负只与选取的质因子的个数相关.令p为Φ(x)\Phi(x)Φ(x)的质因子个数,则(p>=1)(p >= 1)(p>=1)
∑d∣Φ(x)Φ(x)μ(x)=∑i=0p(pi)⋅(−1)i=(1−1)p=0\sum^{\Phi(x)}_{d|\Phi(x)}\mu(x)=\sum_{i=0}^{p}{{p}\choose{i}}·(-1)^i=(1-1)^p = 0d∣Φ(x)∑Φ(x)μ(x)=i=0∑p(ip)⋅(−1)i=(1−1)p=0
易得(I∗μ)(1)=1(I*\mu)(1)=1(I∗μ)(1)=1
综上所述 (I∗μ)(x)=[x==1]=ε(x)(I*\mu)(x)=[x==1]=\varepsilon(x)(I∗μ)(x)=[x==1]=ε(x)得证
则有莫比乌斯反演公式:
若有数论函数f(x),g(x)f(x),g(x)f(x),g(x)
使得g(x)=(I∗f)(x)g(x)=(I*f)(x)g(x)=(I∗f)(x)
则
f(x)=(μ∗g)(x)f(x)=(\mu*g)(x)f(x)=(μ∗g)(x)
莫比乌斯反演通常运用于∑g(x)\sum{g(x)}∑g(x)易于求解而∑f(x)\sum{f(x)}∑f(x)难以求解时,可以对∑μ(x)\sum\mu(x)∑μ(x)数论分块降低时间复杂度.
常用数论函数及其恒等式变换
常用数论函数表:
记号 | 定义 | 备注 |
---|---|---|
I(x)I(x)I(x) | I(x)=1I(x)=1I(x)=1 | 具有完全积性 |
id(x)id(x)id(x) | id(x)=xid(x)=xid(x)=x | 同上 |
idk(x)id^k(x)idk(x) | idk(x)=xkid^k(x)=x^kidk(x)=xk | 同上 |
ε(x)\varepsilon(x)ε(x) | ε(x)=[x==1]\varepsilon(x)=[x==1]ε(x)=[x==1] | 整数域下有积性 |
μ(x)\mu(x)μ(x) | μ∗I=ε\mu*I=\varepsilonμ∗I=ε | |
ϕ(x)\phi(x)ϕ(x) | 小于x并与x互质的数的个数 | |
σ(x)\sigma(x)σ(x) | x的约数个数 | |
σk(x)\sigma_k(x)σk(x) | x的约数和 |
重要的恒等变换及证明:
- μ∗I=ε\mu*I=\varepsilonμ∗I=ε
- ϕ∗I=id\phi*I=idϕ∗I=id
id(x)=x=∑d=1x∑s=1x[(x,s)==d]id(x)=x=\sum^x_{d=1}\sum_{s=1}^x[(x,s)==d]id(x)=x=d=1∑xs=1∑x[(x,s)==d]
因为若(x,s)=d(x,s)=d(x,s)=d,则 d∣xd|xd∣x 且 d∣sd|sd∣s, 则:
id(x)=∑d∣xx∑d∣sx[(x,s)==d]=∑d∣xx∑s=1xd[(xd,s)==1]id(x)=\sum^x_{d|x}\sum^x_{d|s}[(x,s)==d]=\sum^x_{d|x}\sum^{\frac{x}{d}}_{s=1}[(\frac{x}{d},s)==1]id(x)=d∣x∑xd∣s∑x[(x,s)==d]=d∣x∑xs=1∑dx[(dx,s)==1]
又:
ϕ(x)=∑i=1x[(x,i)==1]\phi(x)=\sum^x_{i=1}[(x,i)==1]ϕ(x)=i=1∑x[(x,i)==1]
所以:
id(x)=∑d∣xxϕ(x)=(ϕ∗I)(x)id(x)=\sum^x_{d|x}\phi(x)=(\phi*I)(x)id(x)=d∣x∑xϕ(x)=(ϕ∗I)(x) - 若f(x)f(x)f(x)为完全积性函数,则 f∗f=f⋅σf*f=f·\sigmaf∗f=f⋅σ
(f∗f)(x)=∑d∣xxf(d)f(xd)=∑x∣dxf(x)=f(x)⋅σ(x)(f*f)(x)=\sum^x_{d|x}f(d)f(\frac{x}{d})=\sum^x_{x|d}f(x)=f(x)·\sigma(x)(f∗f)(x)=d∣x∑xf(d)f(dx)=x∣d∑xf(x)=f(x)⋅σ(x)
特别地: σ=I∗I\sigma=I*Iσ=I∗II∗id=σkI*id=\sigma_kI∗id=σk σ∗σ=σ⋅σ\sigma*\sigma=\sigma·\sigmaσ∗σ=σ⋅σ - id∗μ=ϕid*\mu=\phiid∗μ=ϕ
id∗μ=ϕ∗I∗μ=ϕ∗ε=ϕid*\mu=\phi*I*\mu=\phi*\varepsilon=\phiid∗μ=ϕ∗I∗μ=ϕ∗ε=ϕ
数论函数筛法
杜教筛
基于数论函数的数论积性的线性筛(欧拉筛)过于基础,在此便不再赘述.
杜教筛的作用:对于特定的fff数论函数求解S(x)=∑i=0xf(i)S(x)=\sum^x_{i=0}f(i)S(x)=∑i=0xf(i).
首先构造便于求解的数论函数g(x)g(x)g(x),使得h(x)=(f∗g)(x)h(x)=(f*g)(x)h(x)=(f∗g)(x)也便于求解.
∑i=1xh(x)=∑i=1x∑d∣xxf(d)g(xd)\sum^x_{i=1}h(x)=\sum^x_{i=1}\sum^x_{d|x}f(d)g(\frac{x}{d})i=1∑xh(x)=i=1∑xd∣x∑xf(d)g(dx)
=∑d=1xg(d)S(⌊xd⌋)=g(1)S(x)+∑d=2xg(d)S(⌊xd⌋)=\sum^x_{d=1}g(d)S(\lfloor\frac{x}{d}\rfloor)=g(1)S(x)+\sum^x_{d=2}g(d)S(\lfloor\frac{x}{d}\rfloor)=d=1∑xg(d)S(⌊dx⌋)=g(1)S(x)+d=2∑xg(d)S(⌊dx⌋)
所以,
S(x)g(1)=∑i=1xh(x)−∑d=2xg(d)S(⌊xd⌋)S(x)g(1)=\sum^x_{i=1}h(x)-\sum^x_{d=2}g(d)S(\lfloor\frac{x}{d}\rfloor)S(x)g(1)=i=1∑xh(x)−d=2∑xg(d)S(⌊dx⌋)
由于h(x),g(x)h(x),g(x)h(x),g(x)易于求解,我们可以对于S(x)S(x)S(x)数论分块递归求解.
若使用线性筛预处理O(n23)O(n^{\frac{2}{3}})O(n32)的S(x)S(x)S(x)则可以将时间复杂度降至O(n23n^{\frac{2}{3}}n32)
时间复杂度证明:
朴素杜教筛时间复杂度证明:
T(n)=O(n)+∑i=2xT(i)+T(ni)=∫0nO(x)dx=O(n34)T(n)=O(\sqrt{n})+\sum^{\sqrt{x}}_{i=2}T(i)+T(\frac{n}{i})=\int_0^{\sqrt{n}}O(\sqrt{x})dx=O(n^\frac{3}{4})T(n)=O(n)+i=2∑xT(i)+T(in)=∫0nO(x)dx=O(n43)
线性筛+杜教筛时间复杂度证明:
T(n)=O(nk)+∑i=2nkT(ni)<O(n2k2)+O(k)T(n)=O(\frac{n}{k})+\sum^{\frac{n}{k}}_{i=2}T(\frac{n}{i})<O(\frac{n^2}{k^2})+O(k)T(n)=O(kn)+i=2∑knT(in)<O(k2n2)+O(k)
当 k=O(n23)k = O(n^{\frac{2}{3}})k=O(n32),T(n)=O(n23)T(n)=O(n^\frac{2}{3})T(n)=O(n32)有最小.
狄利克雷级数与黎曼ζ\zetaζ函数
定义形式级数:
f(s)=∑g(i)isf(s) = \sum \frac{g(i)}{i^s}f(s)=∑isg(i)
我们称f(s)f(s)f(s)为狄利克雷级数或狄利克雷生成函数.
由于 底数idk(x)id_k(x)idk(x)为积性函数,所以两个离散函数的狄利克雷卷积可以表示成其狄利克雷生成函数的乘法.
定义黎曼ζ\zetaζ函数:
ζ(s)=∑1is\zeta(s)=\sum \frac{1}{i^s}ζ(s)=∑is1
于是我们很简单的可以写出一些常见的数论函数的生成函数
定义 fδ(x)f_{\delta}(x)fδ(x) 为 f(x)f(x)f(x) 的狄利克雷生成函数.
ϵδ(s)=∑ϵ(i)is=1\epsilon_{\delta}(s)=\sum\frac{\epsilon(i)}{i^s}=1ϵδ(s)=∑isϵ(i)=1
Iδ(s)=∑I(i)is=ζ(s)I_{\delta}(s)=\sum\frac{I(i)}{i^s}=\zeta(s)Iδ(s)=∑isI(i)=ζ(s)
因为 I∗μ=ϵI * \mu = \epsilonI∗μ=ϵ, 所以:
μδ(s)=(ϵδIδ)(s)=1ζ(s)\mu_{\delta}(s)=(\frac{\epsilon_{\delta}}{I_{\delta}})(s)=\frac{1}{\zeta(s)}μδ(s)=(Iδϵδ)(s)=ζ(s)1
idkδ(s)=∑ikis=∑1is−k=ζ(s−k)id_{k\delta}(s)=\sum \frac{i^k}{i^s}=\sum \frac{1}{i^{s-k}} =\zeta(s-k)idkδ(s)=∑isik=∑is−k1=ζ(s−k)
因为 id∗μ=ϕid * \mu=\phiid∗μ=ϕ, 所以:
ϕδ(s)=(idδ⋅μδ)(s)=ζ(s−1)ζ(s)\phi_{\delta}(s)=(id_{\delta}·\mu_{\delta})(s)=\frac{\zeta(s-1)}{\zeta(s)}ϕδ(s)=(idδ⋅μδ)(s)=ζ(s)ζ(s−1)
因为 I∗I=σI*I=\sigmaI∗I=σ,所以:
σδ(s)=(Iδ⋅Iδ)(s)=ζ2(s)\sigma_{\delta}(s)=( I_{\delta} · I_{\delta} )(s)=\zeta^2(s)σδ(s)=(Iδ⋅Iδ)(s)=ζ2(s)
因为 id∗I=σkid*I=\sigma_kid∗I=σk,所以:
σkδ(s)=(idδ⋅Iδ)(s)=ζ(s)ζ(s−1)\sigma_{k\delta}(s)=(id_{\delta}·I_{\delta})(s)=\zeta(s)\zeta(s-1)σkδ(s)=(idδ⋅Iδ)(s)=ζ(s)ζ(s−1)
有了狄利克雷级数,我们可以简单的在狄利克雷卷积下求逆元了.
欧拉乘积公式与黎曼猜想
由狄利克雷级数的定义:
f(s)=∑1isf(s)=\sum\frac{1}{i^s}f(s)=∑is1
可以知道:
当 s>1s>1s>1 时 f(s)f(s)f(s)是收敛级数.
比如 ζ(2)=π26\zeta(2)=\frac{\pi^2}{6}ζ(2)=6π2
由唯一分解定理我们可以知道,任何正整数可以表示成唯一的素数分解.所以有:
ζ(s)=∑1is=∏p∈P(1+ps+p2s+p3s...)=∏p∈P∑i=0pis\zeta(s)=\sum\frac{1}{i^s}=\prod_{p \in P}(1+p^s+p^{2s}+p^{3s}...)=\prod_{p\in P}\sum_{i=0}p^{is}ζ(s)=∑is1=p∈P∏(1+ps+p2s+p3s...)=p∈P∏i=0∑pis
其中PPP是素数集合. 素数幂的积可以恰好覆盖所有整数.
然后有无穷项等比数列求和公式:
∑i=0xi=11−x\sum_{i=0}x^i=\frac{1}{1-x}i=0∑xi=1−x1
所以有著名的欧拉乘积公式:
∑1is=∏11−ps\sum \frac{1}{i^s}=\prod\frac{1}{1-p^s}∑is1=∏1−ps1
由于以上等比数列求和公式要在 s<0s<0s<0下成立,所以我们需要把ζ(s)\zeta(s)ζ(s)解析延拓到s<0s<0s<0的情况.
于是我们猜想在复平面上被解析延拓的ζ(x)\zeta(x)ζ(x)有着无穷多个零点,于是人们发现一种平凡的零点 (−2t,0)( -2t, 0 )(−2t,0).当t∈N∗t \in N_*t∈N∗恒成立.
于是人们发现除此之外的零点都在 (0,1)(0,1)(0,1)之间,于是便有了黎曼猜想:
解析延拓后的ζ(x)\zeta(x)ζ(x)的所有非平凡零点都在x=12\frac{1}{2}21上