首页 > 其他分享 >狄利克雷卷积与莫比乌斯反演

狄利克雷卷积与莫比乌斯反演

时间:2024-05-22 21:41:12浏览次数:14  
标签:lfloor frac 狄利克 卷积 sum rfloor times mu 反演

狄利克雷卷积与莫比乌斯反演

主要内容

  • 数论函数
  • 狄利克雷卷积
  • 积性函数
  • 莫比乌斯反演
  • 数论分块

提要

\(a \bot b\) 表示 \(a\) 与 \(b\) 互质。

数论函数

数论函数是一类定义域是正整数的函数,可以类比数列。

加法,数乘比较简单,略过。

狄利克雷卷积

定义两个数论函数的狄利克雷卷积为 \(*\)。

若 \(h = f * g\) 则:

\[h(n) = \sum_{i|n} f(i) \cdot g(\frac{n}{i}) \]

  • 其具有交换律,结合律,分配律等,比较显然。

  • 有单位元 \(\epsilon\),有性质 \(\epsilon * f = f\)。可以得出 \(\epsilon = [n=1]\)。

  • 逆元,对于 \(f(1) \not = 0\),有一个 \(g\) 使得 \(f * g = \epsilon\)。

如何求函数的逆元。

令:

\[g(n) = \frac{1}{f(1)} ([n = 1] - \sum_{i|n,i \not = 1} f(i) \cdot g(\frac{n}{i})) \]

可以用方程求出 \(g\)。

如此:

\[f * g = f(1) \cdot g(n) + \sum_{i|n,i\not=1} f(i) \cdot g(\frac{n}{i}) = [n=1] = \epsilon \]

积性函数

对于一个数论函数,如果有 \(i \bot j\) 使得 \(f(i \cdot j) = f(i) \cdot f(j)\)。

那么此函数成为积性函数

如果对于任意的 \(i\),\(j\) 都有 \(f(i \cdot j) = f(i) \cdot f(j)\) 那么其为完全积性函数

常见的积性函数有:

  • \(\epsilon\) 解析式 \(\epsilon(n)=[n=1]\)

  • \(id^k\) 解析式 \(id^k(n) = n^k\)

特殊的 \(1(n) = id^0(n) = 1\)

  • \(\phi\) 表示 \([1,n]\) 中与其互质的数的个数。

  • \(\sigma_0\) 表示因数个数。

它们的积性比较显然,不证。

记住两个结论:

  • 两个积性函数的狄利克雷卷积是积性函数

  • 积性函数的逆是积性函数

比较复杂,不打算证明了。

如何利用积性函数的结论,最简单的是,可以线性筛,因为我们线性筛的过程中顺便求出了其最小的质因子,可以利用积性解决函数的取值。

同时由于积性的性质,函数的取值实际上又其所有质数幂处的取值决定,对于这些取值,\(\phi\) 和 \(\sigma_0\) 都是比较好求的,所以可以用线性筛预处理。

给出质数幂处的公式:

\[\phi(p^k) = (p-1) \cdot p^{k-1} \\ \sigma_0(p^k) = k+1 \]

一个重要性质。

尝试证明 \(\phi * 1 =id\)

\[(\phi * 1)(n) = \sum_{i|n} \phi(i) = n \]

由于上文提及的狄利克雷卷积的性质,\(\phi * 1\) 为积性函数,\(id\) 也为积性函数,所以只需要证明其在质数幂上相等即可。

显然有:

\[(\phi * 1)(p^k) = \sum_{i=0}^k \phi(p^i) =[ \sum_{i=1}^k (p-1)\cdot p^{i-1}] +1 =( \sum_{i=1}^k p^{i} - p^{i-1} )+1 = p^k = id(p^k) \]

得证。

莫比乌斯反演

定义 \(1\) 的逆是 \(\mu\)。

如此,若 \(g = f * 1\),那么就有 \(f = g * \mu\)。

即若 \(g(n) = \sum_{d|n} f(d)\) 则,\(f(n) \sum_{d|n} \mu(\frac{n}{d})g(d)\)。

比如根据上文性质有 \(\phi = \mu * id\)。

那么有 \(\phi(n) = \sum_{d|n} \mu(\frac{n}{d})d\)。

又有 \(id^k\) 的逆为 \(f(n) = n^k\cdot\mu(n)\)。

我们可以算出

当 \(n=p_1\cdot p_2 \dots p_k\) 其中 \(p\) 为不同的质数时,\(\mu(n)=(-1)^k\)。

否则,\(\mu(n) = 0\)。

记住结论吧。

另一个方向上的莫比乌斯反演。

\(g(x) = \sum_{n|d} f(d)\)

定义新操作 \(\oplus\)。

\((f \oplus g)(x) = \sum_{n|d}f(\frac{d}{n})g(d)\)。

可以证明:

\[(f * g) \oplus h = f \oplus (g \oplus h) \]

那么:

\[f = (\mu * 1) \oplus f = \mu \oplus (1 \oplus f) = \mu \oplus g \]

所以:

\[f(n) = \sum_{n|d} \mu(\frac{d}{n}) g(d) \]

数论分块

浅谈。

经典问题是处理:

\[\sum \lfloor \frac{n}{i} \rfloor f(i) \]

我们不难发现 \(\lfloor \frac{n}{i} \rfloor\) 最多有 \(O(\sqrt{n})\) 个取值。

进行一个简单的说明。

当 \(i<\sqrt{n}\) 时:\(i\) 的取值有 \(\sqrt{n}\) 个。

当 \(i>\sqrt{n}\) 时:\(\frac{n}{i}<\sqrt{n}\) 取值有 \(\sqrt{n}\) 个。

考虑如何快速的求出所有 \(\lfloor \frac{n}{i} \rfloor\) 的取值。

for(int i=1,j;i<=n;i=j+1){
    j=n/(n/i);
}

证明自行百度,可以感性理解。

此处,既然我们已经求出了 \([i,j]\) 中的数 \(\lfloor \frac{n}{i} \rfloor\) 一致,我们可以把它们放在一起计算,对于 \(f\) 求一个前缀和即可。

对于多元的情况,我们也可以类似的处理。

例题

P1447 [NOI2010] 能量采集

首先定义:

\[f(d) = \sum_{i=1}^n \sum_{j=1}^m [gcd(i,j)=d] \\ \]

故有:

\[F(n) = \sum_{n|d} f(d) = \lfloor \frac{n}{d} \rfloor \times \lfloor \frac{m}{d} \rfloor \]

答案为:

\[\begin{aligned} ans & = \sum_{i=1}^n \sum_{j=1}^m gcd(i,j) \\ & = \sum_{d=1}^{min(n,m)} f(d) \times d \\ \end{aligned} \]

莫比乌斯反演:

\[\begin{aligned} ans & = \sum_{d=1}^{min(n,m)} d \sum_{d|k}^{min(n,m)} \mu(\frac{k}{d}) F(k) \\ & = \sum_{d=1}^{min(n,m)} d \sum_{q=1}^{\frac{min(n,m)}{d}} \mu(q) \times \lfloor \frac{n}{dq} \rfloor \times \lfloor \frac{m}{dq} \rfloor \\ \end{aligned} \]

令 \(T = dq\)。

\[\begin{aligned} & = \sum_{d=1}^{min(n,m)} d \sum_{T=1}^{min(n,m)} [d|T] \times \mu(\frac{T}{d}) \times \lfloor \frac{n}{T} \rfloor \times \lfloor \frac{m}{T} \rfloor \\ & = \sum_{d=1}^{min(n,m)} \sum_{d|T}^{min(n,m)} d \times \mu(\frac{T}{d}) \times \lfloor \frac{n}{T} \rfloor \times \lfloor \frac{m}{T} \rfloor \\ \end{aligned} \]

更换 \(d\) 和 \(T\) 的枚举顺序。

\[\begin{aligned} & = \sum_{T=1}^{min(n,m)} \sum_{d|T}^{min(n,m)} d \times \mu(\frac{T}{d}) \times \lfloor \frac{n}{T} \rfloor \times \lfloor \frac{m}{T} \rfloor \\ & = \sum_{T=1}^{min(n,m)} \lfloor \frac{n}{T} \rfloor \times \lfloor \frac{m}{T} \rfloor \sum_{d|T}^{min(n,m)} d \times \mu(\frac{T}{d}) \\ \end{aligned} \]

关注后面的部分:

\[h(T) = \sum_{d|T} d \times \mu(\frac{T}{d}) \]

发现这是狄利克雷卷积的形式。

\[\because h = id * \mu \\ \therefore h * 1 = id * \mu * 1 \\ \therefore h * 1 = id * \epsilon \\ \therefore h * 1 = id \\ \because \phi * 1 =id \\ \therefore h = \phi \]

带回原来的式子。

\[ans = \sum_{T=1}^{min(n,m)} \lfloor \frac{n}{T} \rfloor \times \lfloor \frac{m}{T} \rfloor \times \phi(T) \]

数论分块即可。

参考代码

标签:lfloor,frac,狄利克,卷积,sum,rfloor,times,mu,反演
From: https://www.cnblogs.com/DeepSeaSpray/p/18207181

相关文章

  • 莫比乌斯反演即狄利克雷卷积速通
    莫比乌斯反演速通前言由于请假错过了讲课,所以莫反是我第一个需要自学的难度不小的数学知识。自学的过程的狼狈的,旁边也曾是自学的czn告诉我如果学会“狄利克雷卷积”就可以对“莫比乌斯反演”的理解进行“降维打击”。他还十分热心地带着我速通了一遍狄卷与莫反。一知半解,就......
  • 食物识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
    一、介绍食物识别系统。该项目通过构建包含11种常见食物类别(包括'Bread','Dairyproduct','Dessert','Egg','Friedfood','Meat','Noodles-Pasta','Rice','Seafood','Soup','Vegeta......
  • BiTCN:基于卷积网络的多元时间序列预测
    前言 本文将详细介绍了BiTCN,这是2023年3月在《Parameter-efficientdeepprobabilisticforecasting》一文中提出的模型。通过利用两个时间卷积网络(TCN),该模型可以编码过去和未来的协变量,同时保持计算效率。作者:MarcoPeixeiro本文转载自DeephubImba仅用于学术分享,若侵权请......
  • [数论] 二项式反演
    菜就多练,输不起就别玩,不会就是不会。二项式推论\(1.\)\(\tbinom{n}{m}=\tbinom{n}{n-m}\)\(2.\)\(\tbinom{n}{m}=\frac{n}{m}\tbinom{n-1}{m-1}\)\(3.\)\(\sum\limits_{i=0}^nC_n^i=2^n\)证明:拆\((1+1)^n\)\(4.\)\(\sum\limits_{i=0}^n(-1)^iC_n^i=0\)特殊的,......
  • 基于深度卷积神经网络的时间序列图像分类,开源、低功耗、低成本的人工智能硬件提供者
    具体的软硬件实现点击http://mcu-ai.com/MCU-AI技术网页_MCU-AI人工智能卷积神经网络(CNN)通过从原始数据中自动学习层次特征表示,在图像识别任务中取得了巨大成功。虽然大多数时间序列分类(TSC)文献都集中在1D信号上,但本文使用递归图(RP)将时间序列转换为2D纹理图像,然后利用深度CNN分......
  • 基于改进MFCC特征和卷积递归神经网络的心音分类
    具体的软硬件实现点击http://mcu-ai.com/MCU-AI技术网页_MCU-AI人工智能心音分类在心血管疾病的早期发现中起着至关重要的作用,特别是对于小型初级卫生保健诊所。尽管近年来心音分类取得了很大进展,但其中大多数都是基于传统的分段特征和基于浅层结构的分类器。这些传统的声学表示......
  • 动手学深度学习——卷积操作
    卷积卷积概念卷积原属于信号处理中的一种运算,引入CNN中,作为从输入中提取特征的基本操作补零:在输入端外侧填补0值使得卷积输出结果满足某种大小,在外侧的每一边都添加0值,使得输出可以达到某种预定形状跨步:卷积核在输入上滑动时每次移动到下一步的距离使用张量实现卷积impor......
  • 二项式反演
    算法核心二项式反演与莫比乌斯反演类似,都可以用于在给定的条件式实现两个函数之间的相互推算。二项式反演适用于,其核心反演式子有二:\[f(n)=\sum_{i=0}^n(-1)^iC_n^ig(i)\iffg(n)=\sum_{i=0}^n(-1)^iC_n^if(i)\]\[f(k)=\sum_{i=k}^nC_i^kg(i)\iffg(k)......
  • BiTCN:基于卷积网络的多元时间序列预测
    在时间序列预测领域中,模型的体系结构通常依赖于多层感知器(MLP)或Transformer体系结构。基于mlp的模型,如N-HiTS,TiDE和TSMixer,可以在保持快速训练的同时获得非常好的预测性能。基于Transformer的模型,如PatchTST和ittransformer也取得了很好的性能,但需要更多的内存和时间来训练。......
  • 卷积核大小选择、网络层数问题
    CNN网络结构设计的观点:每一层卷积有多少filters,以及一共有多少层卷积,这些暂时没有理论支撑。一般都是靠感觉去设置几组候选值,然后通过实验挑选出其中的最佳值。每一层卷积的filters数和网络的总卷积层数,构成了一个巨大的超参集合。一来没有理论去求解这个超参集合里的最优,二来......