今有 uoj 群友问到,如下式子如何快速计算:
[
x
n
]
1
∏
i
=
0
m
(
1
−
(
u
+
v
i
)
x
)
[x^n] \frac{1}{\prod_{i=0}^m (1 - (u+vi)x)}
[xn]∏i=0m(1−(u+vi)x)1
我想了想,觉得这就是
[
x
n
]
1
∏
i
=
0
m
(
1
−
(
u
+
v
i
)
x
)
=
[
x
n
+
m
(
n
+
m
)
!
]
e
u
x
(
e
v
x
−
1
)
m
m
!
v
m
=
1
m
!
v
m
∑
k
=
0
m
(
m
k
)
(
−
1
)
m
−
k
(
u
+
k
v
)
n
+
m
\begin{aligned}[x^n] \frac 1{\prod_{i=0}^m (1-(u+vi)x)}&=\left[\frac{x^{n+m}}{(n+m)!}\right] \frac{\mathrm e^{ux} (\mathrm e^{vx}-1)^m}{m! v^m}\\&= \frac1{m!v^m} \sum_{k=0}^m \binom {m}{k} (-1)^{m-k} (u+kv)^{n+m}\end{aligned}
[xn]∏i=0m(1−(u+vi)x)1=[(n+m)!xn+m]m!vmeux(evx−1)m=m!vm1k=0∑m(km)(−1)m−k(u+kv)n+m
怎么解释呢?思考一番,大概有以下四条路:
其一,组合意义:我们给这个东西编一个组合意义:
(
v
x
)
m
∏
i
=
0
m
(
1
−
(
u
+
v
i
)
x
)
=
1
1
−
u
x
v
x
1
−
(
u
+
v
)
x
⋯
v
x
1
−
(
u
+
m
v
)
x
\frac {(vx)^m}{\prod_{i=0}^m (1-(u+vi)x)} = \frac1{1-ux} \frac{vx}{1-(u+v)x} \cdots \frac {vx}{1-(u+mv)x}
∏i=0m(1−(u+vi)x)(vx)m=1−ux11−(u+v)xvx⋯1−(u+mv)xvx
那么这是个啥呢?这大概就是说每个球首先在一个集合里,这个集合的 id 是
0
∼
m
0 \sim m
0∼m 的,然后他在
0
0
0 号集合就有
u
u
u 种颜色可以选,否则有
v
v
v 种颜色可以选。其中
1
∼
m
1\sim m
1∼m 这些集合都被要求了至少有一个球。这
m
m
m 个集合又被认为是不可区分的。
这么一来,上面那个 EGF 容斥就是很明显的了。
其二,线性递推方面的考虑:
首先原式是一个求逆的形式,显然是一个线性递推,而且是 m + 1 m+1 m+1 阶的。所以 x m ∏ i = 0 m ( 1 − ( u + v i ) x ) \frac {x^m}{\prod_{i=0}^m (1-(u+vi)x)} ∏i=0m(1−(u+vi)x)xm 必然仍然是线性递推的。而如果想要转为 EGF,那么由于原式的特征根不重复,我们知道这必然是化为 ∑ λ k e ( u + v k ) x = e u x ∑ λ k e v k x \sum \lambda_k \mathrm e^{(u+vk)x} = \mathrm e^{ux} \sum \lambda_k \mathrm e^{vkx} ∑λke(u+vk)x=eux∑λkevkx 的形式。为了让前面的项都是 0 0 0,只好用 c e u x ( e v x − 1 ) m c \mathrm e^{ux} (\mathrm e^{vx}-1)^m ceux(evx−1)m 的形式然后待定系数。
其三,分式分解:
根据分式分解系数
R
i
(
x
)
=
P
(
x
)
[
Q
(
x
)
/
q
i
(
x
)
m
o
d
q
i
(
x
)
]
−
1
m
o
d
q
i
(
x
)
R_i(x) = P(x) \left[Q(x)/q_i(x) \bmod q_i(x)\right]^{-1} \bmod q_i(x)
Ri(x)=P(x)[Q(x)/qi(x)modqi(x)]−1modqi(x),也就是
R
i
=
[
∏
j
≠
i
(
1
−
u
+
v
j
u
+
v
i
)
]
−
1
=
∏
j
≠
i
u
+
v
i
(
i
−
j
)
v
=
(
u
+
v
i
)
m
(
−
1
)
m
−
i
v
m
i
!
(
m
−
i
)
!
\begin{aligned}R_i &= \left[\prod_{j\neq i} \left(1 - \frac{u+vj}{u+vi}\right)\right]^{-1}\\&= \prod_{j\neq i} \frac{u+vi}{(i-j)v}\\&=\frac{(u+vi)^m (-1)^{m-i}}{v^m i! (m-i)!}\end{aligned}
Ri=⎣⎡j=i∏(1−u+viu+vj)⎦⎤−1=j=i∏(i−j)vu+vi=vmi!(m−i)!(u+vi)m(−1)m−i
也是一致的。
其四,代数方法:
事实上我们通过两个公式可以构造 x n ⇔ x n n ! x^n \Leftrightarrow \frac{x^n}{n!} xn⇔n!xn 的线性映射。
从
x
n
n
!
\frac {x^n}{n!}
n!xn 到
x
n
x^n
xn 的通过欧拉积分
∫
0
∞
t
n
e
−
t
d
t
=
n
!
\int_0^\infty t^n\mathrm e^{-t}\, \mathrm d t = n!
∫0∞tne−tdt=n! 导出。这给出了 Laplace-Borel 变换(似乎又叫组合 Laplace 变换)
∫
0
∞
F
(
x
t
)
e
−
t
d
t
=
∑
n
n
!
x
n
[
x
n
]
F
(
x
)
\int_0^\infty F(xt)\mathrm e^{-t} \,\mathrm d t = \sum_n n!x^n [x^n]F(x)
∫0∞F(xt)e−tdt=n∑n!xn[xn]F(x)
而反过来,我们首先要考虑一个环路积分构造,结合指数函数
[
x
n
]
e
x
=
1
n
!
[x^n]\mathrm e^x = \frac 1 {n!}
[xn]ex=n!1 来完成:(也叫做组合 Borel 变换)
1
2
π
∫
−
π
π
F
(
z
e
−
i
ϑ
)
e
e
i
ϑ
d
ϑ
=
1
2
π
i
∫
∣
ζ
∣
=
1
e
ζ
F
(
z
ζ
)
ζ
d
ζ
=
∑
n
x
n
n
!
[
x
n
]
F
(
x
)
\frac 1{2\pi} \int_{-\pi}^\pi F(z\mathrm e^{-\mathrm i \vartheta}) \mathrm e^{\mathrm e^{\mathrm i \vartheta}} \mathrm d \vartheta = \frac 1{2\pi \mathrm i} \int_{|\zeta|=1} \frac{\mathrm e^\zeta F\left(\frac z \zeta\right)}\zeta \mathrm d \zeta = \sum_n \frac{x^n}{n!} [x^n]F(x)
2π1∫−ππF(ze−iϑ)eeiϑdϑ=2πi1∫∣ζ∣=1ζeζF(ζz)dζ=n∑n!xn[xn]F(x)
留数我不太懂,但是参考这个,感觉在这种情况上的具体计算过程和分式分解是类似的。
upd:这个东西听说叫 r-Stirling 数。