狄利克雷卷积&莫比乌斯反演
昨天刚说完不搞数论了,刚看到一个\(gcd\)的题目dalao用这个做了,虽然比正解麻烦,还是打算学一学了
数论函数:
数论函数的定义:
数论函数亦称算术函数,一类重要的函数,指定义在正整数集上的实值或复值函数,更一般地,也可把数论函数看做是某一整数集上定义的函数
常见积性函数
\(\mu(n)\)
\(~~~~~~~~n=1:\mu(n)=1\),\(n=\prod\limits_{i=1}^k p_i:\mu(n)=(-1)^k\),\(d\)有任何质因子幂次大于等于\(2:\mu(n)=0\)
\(d(n)\)
\(~~~~~~~~n\)的约数个数
\(\sigma(n)\)
\(~~~~~~~~n\)的约数和函数
\(\varphi(n)\)
\(~~~~~~~~\)小于等于\(n\)且与其互质的个数
完全积性函数
\(\epsilon(n)\)
\(~~~~~~~~\epsilon(n)=[n=1]\)
\(I(n)\)
\(~~~~~~~~I(n)=1\)恒等函数
\(id(n)\)
\(~~~~~~~~id(n)=n\)
卷积:
设\(f(x),g(x)\)是两个数论函数(以自然数集为定义域的复数值函数),则卷积运算\(f*g\)定义为:
\((f\ast g)(n) = \sum_{d\mid n}{f(d)g(\frac{n}{d})}\)
当然还有另一种更直观的写法:
\((f\ast g)(n) = \sum_{ij=n}{f(i)g(j)}\)
函数的一些简单性质:
交换律:
\((f * g)(n) = (g * f)(n)\)
证明:这不显然的嘛
结合律:
\(\begin{align} ((f\ast g)\ast h)(n) &= (f\ast (g\ast h))(n) \end{align}\)
\(\begin{align} ((f\ast g)\ast h)(n) &= \sum_{lk=n}(f\ast g)(l)h(k) \\ &= \sum_{lk=n}\left(\sum_{ij=l}f(i)g(j)\right)h(k)\\ &= \sum_{ijk=n} f(i)g(j)h(k) \end{align}\)
\(\begin{align} (f\ast (g\ast h))(n) &= \sum_{il=n}f(i)(g\ast h)(l) \\ &= \sum_{il=n}f(i)\left(\sum_{jk=l}g(j)h(k)\right)\\ &= \sum_{ijk=n} f(i)g(j)h(k) \end{align}\)
莫比乌斯函数性质一
\(\sum_{d|n}\mu(d)=[n=1]\)
证明:
将\(n\)分解: \(n=P_1^{a_1}\times P_2^{a_2} ...... P_k^{a_k}\)
不需要考虑\(a_k>1\)的情况,因为定义当\((a_k>1)\)时,\(\mu(a_k)=0\)
只需要化成幂为\(1\),\(m=P_1\times P_2\times P_3\times P_4...\times P_k\)
这样的话问题就变成了从k个因数中取奇数个和偶数个的种数的差的值是否为-1 可以很快的列出
莫比乌斯函数性质二
\(\dfrac{\varphi(x)}{n}=\sum\limits_{d|n} \dfrac{\mu(d)}{d}\)
先来推倒一个简单的式子\((\mu*I)=\epsilon\)
\((\mu*I)(n)=\sum\limits_{d|n}\mu(d)I(\dfrac{n}{d})\)
\(~~~~~~~~~~~~~~~=\sum\limits_{d|n}\mu(d)\)
\(~~~~~~~~~~~~~~~=[n=1]\)
\(~~~~~~~~~~~~~~~=\epsilon\)
同理,下面的式子也是这个道理
证明:
\(\because \varphi*I=id \Rightarrow \varphi*I*\mu=id*\mu \Rightarrow \varphi * \epsilon=id*\mu\)
\(\therefore \varphi=id*\mu \Rightarrow \varphi(n)=\sum\limits_{d|n}\mu(d)id(\dfrac{n}{d})\)
证毕:\(\therefore \dfrac{\varphi(x)}{n}=\sum\limits_{d|n} \dfrac{\mu(d)}{d}\)
莫比乌斯反演
满足函数
\(~~~~~~~~~~F(n)=\sum_{d|n}f(d)\)
那么存在
\(~~~~~~~~~~f(n)=\sum_{d|n}\mu(d)F(\lfloor\frac{n}{d}\rfloor)\)
证法:
\(\sum_{d|n}\mu(d)F(\lfloor\frac{n}{d}\rfloor)=\sum_{d|n}\mu(d)\sum_{i|\lfloor\frac{n}{d}\rfloor}f(i)\)
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~=\sum_{i|n}f(i)\sum_{d|\lfloor\frac{n}{i}\rfloor}\mu(d)\) 利用性质一,当\(i=n\)时,后项才为\(1\)
\(~~~~~~~~~~~~~~~~~~~~~~~~~~~=f(n)\)
反过来莫比乌斯反演还有另一种形式
满足函数
\(~~~~~~~~~~F(n)=\sum_{n|d}f(d)\)
那么存在
\(~~~~~~~~~~f(n)=\sum_{n|d}\mu(\frac{d}{n})F(d)\)
狄利克雷卷积&莫比乌斯反演的更多相关文章
- 狄利克雷卷积&莫比乌斯反演总结
狄利克雷卷积&莫比乌斯反演总结 Prepare 1.\([P]\)表示当\(P\)为真时\([P]\)为\(1\),否则为\(0\). 2.\(a|b\)指\(b\)被\(a\)整除. 3.一 ...
- 狄利克雷卷积&莫比乌斯反演证明
狄利克雷卷积简介 卷积这名字听起来挺学究的,今天学了之后发现其实挺朴实hhh. 卷积: "(n)"表示到n的一个范围. 设\(f,g\)是两个数论函数(也就是说,以自然数集为定义域 ...
- 狄利克雷卷积 & 莫比乌斯反演
积性函数与完全积性函数 积性函数 若一个数论函数\(f\)满足当\(gcd(n,m)=1\)时,\(f(nm)=f(n)f(m)\) 则称\(f\)为积性函数 一些常见的积性函数 完全积性函数 若一个 ...
- 中国剩余定理 & 欧拉函数 & 莫比乌斯反演 & 狄利克雷卷积 & 杜教筛
ssplaysecond的博客(请使用VPN访问): 中国剩余定理: https://ssplaysecond.blogspot.jp/2017/04/blog-post_6.html 欧拉函数: h ...
- 我也不知道什么是"莫比乌斯反演"和"杜教筛"
我也不知道什么是"莫比乌斯反演"和"杜教筛" Part0 最近一直在搞这些东西 做了将近超过20道题目吧 也算是有感而发 写点东西记录一下自己的感受 如果您真的 ...
- 【BZOJ3529】数表(莫比乌斯反演,树状数组)
[BZOJ3529]数表(莫比乌斯反演,树状数组) 题解 首先不管\(A\)的范围的限制 要求的东西是 \[\sum_{i=1}^n\sum_{j=1}^m\sigma(gcd(i,j))\] 其中\ ...
- 【Luogu3768】简单的数学题(莫比乌斯反演,杜教筛)
[Luogu3768]简单的数学题(莫比乌斯反演,杜教筛) 题面 洛谷 \[求\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j)\] $ n<=10^9$ 题解 很明显的把\( ...
- [复习]莫比乌斯反演,杜教筛,min_25筛
[复习]莫比乌斯反演,杜教筛,min_25筛 莫比乌斯反演 做题的时候的常用形式: \[\begin{aligned}g(n)&=\sum_{n|d}f(d)\\f(n)&=\sum_ ...
- 【51NOD 1847】奇怪的数学题(莫比乌斯反演,杜教筛,min_25筛,第二类斯特林数)
[51NOD 1847]奇怪的数学题(莫比乌斯反演,杜教筛,min_25筛,第二类斯特林数) 题面 51NOD \[\sum_{i=1}^n\sum_{j=1}^nsgcd(i,j)^k\] 其中\( ...
随机推荐
- UIView的endEditing:方法
当视图收到endEditing:消息时,如果视图(或者其下的人和子视图)是当前的第一响应对象,就会取消自己的第一响应对象状态, 而且虚拟键盘也会消失(传入的参数代表是否需要强制取消第一响应对象状态.有 ...
- 防火墙firewall的设置和查看
systemctl start firewalld.service # 开启防火墙firewallsystemctl stop firewalld.service # 停止防火墙firewall sy ...
- docker教程之从一头雾水到不一头雾水(3)
本文主要是介绍Docker容器的相关内容 容器创建 我们已经知道,镜像是只读的,而基于镜像创建出来的容器是可读写的,所以,一般我们实际中,会经常使用对应镜像创建容器并且使用这些容器.同样,如果我们想要 ...
- CentOS 下Mysql数据库的安装与配置
一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常 的方便,在Linux上如果要安装数据库, ...
- Android应用架构之MVP--->天气实例
我们知道.Android App 本质上抽象成两个层次:视图和数据.为了App在发展过程中高速的适应变化,方便维护和高速迭代,我们要将数据和视图解耦,而在解藕方面我们的前辈们在漫长的软件开发经验中为我 ...
- 篇章一:[AngularJS] 使用AngularAMD動態載入Controller
前言 使用AngularJS來開發Single Page Application(SPA)的時候,可以選用AngularUI Router來提供頁面內容切換的功能.但是在UI Router的使用情景裡 ...
- JS-以鼠标位置为中心的滑轮放大功能demo1
以鼠标位置为中心的滑轮放大功能demo1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &qu ...
- 【LeetCode-面试算法经典-Java实现】【114-Flatten Binary Tree to Linked List(二叉树转单链表)】
[114-Flatten Binary Tree to Linked List(二叉树转单链表)] [LeetCode-面试算法经典-Java实现][全部题目文件夹索引] 原题 Given a bin ...
- linux svn 更新地址
进行你所工作的svn映射到本地的目录中.在终端下运行$svn switch --relocate http://oldPath http://newpath.系统提示输入用户名,密码.重新输入后,即可 ...
- linux实用命令备忘
1. 卸载旧内核 sudo apt-get purge linux-image-xxx-xx-generic 2. 快速换ubuntu的源: sudo sed -i 's/vivid/wily/' / ...