狄利克雷卷积&莫比乌斯反演
昨天刚说完不搞数论了,刚看到一个\(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\] 其中\( ...
随机推荐
- lua连接数据库之luasql ------ luasql连接mysql数据库 及 luasql源码编译
lua连接数据库不只luasql这个库,但目前更新最快的的貌似是这个luasql,他是开源的,支持的数据库功能如下: Connect to ODBC, ADO, Oracle, MySQL, SQLi ...
- Spring 应用外部属性文件 配置 context 错误
在Spring配置文件中出现通配符的匹配很全面, 但无法找到元素 'context:property-placeholder' 的声明这个错误,其实主要是我们在引入命名空间时没有正确引入它的DTD解析 ...
- 操作符(运算符)重载 或者叫 二元运算符 operator + 与 转换式操作符 implicit operator explicit operator
static void Main(string[] args) { rational r1 = new rational(5); rational r2 = new rational(51); rat ...
- 使Gallery时设置居左显示
Gallery中的图片默认是居中显示的.可是在非常多情况下我们须要它居左显示,这样做有一个简单方法.就是把Gallery的left设置为负多少,如以下的方法: Drawable drawable=ca ...
- docker 报错 Error response from daemon: driver failed programming external connectivity on endpoint mynginx
Error response from daemon: driver failed programming external connectivity on endpoint mynginx (7d1 ...
- idea 破解转(肉测好用,测试2018.4.16)
首先,打开蓝雨的官网--->http://idea.lanyus.com/,找到这个jar包 之后,去官网下载IDEA--->https://www.jetbrains.com/idea/ ...
- junit测试时报No runnable methods错误的解决方法
1.因为你@Test时import的是@org.testng.annotations.Test所以会报错 解决方法:改为import org.junit.Test;就可以了
- oracle中导出表的结构和数据
在linux环境上: exp user_name/password@//ip_address:1521/service_name file=aa.sql tables=\(table_name\); ...
- Oracle集群和灾备解决方案介绍
Oracle本身有各种各样的解决方案,本文主要是对以下几种解决方案做一下简单的梳理. 1. Oracle Rac解决方案. Oracle Rac主要通过两台Oracle服务器来组件集群,提高Or ...
- Oracle中NVL、NVL2、NULLIF 三个函数的区别?
首先说明:NULL指的是空值,或者非法值. 1.NVL (expr1, expr2)expr1为NULL,返回expr2:不为NULL,返回expr1.注意两者的类型要一致 2.NVL2 (expr1 ...