积性函数与Dirichlet卷积
转载自https://oi-wiki.org/math/mobius/
积性函数
定义
若 $gcd(x,y)=1$ 且 $f(xy)=f(x)f(y)$,则 $f(n)$ 为积性函数。
性质
若 $f(x)$ 和 $f(y)$ 均为积性函数,则以下函数为积性函数:
$h(x) = f(x^p)$
$h(x) = f^p(x)$
$h(x) = g(x)f(x)$
$h(x) = \sum_{d|x} f(d)g(\frac{x}{d})$
后面两条性质非常重要,会经常用。它说明了两个积性函数的乘积仍是积性函数、两个积性函数的Dirichlet卷积仍是积性函数。
例如,\begin{aligned}
h(x_1x_2) &= \sum_{d|x_1x_2} f(d)g(\frac{x_1x_2}{d}) \\
&= f(1)g(15) + f(3)g(5) + f(5)g(3) + f(15)g(1) \\
&= [f(1)g(3) + f(3)g(1)]*[f(1)g(5)+f(5)g(1)] \\
&= h(3)h(5)
\end{aligned}
例子
- 单位函数:$\varepsilon(n) = [n=1]$
- 恒等函数:$id_k(n) = n^k$,$id_1(n)$ 通常简记作 $id(n)$
- 常数函数:$1(n)=1$
- 除数函数:$\sigma_k(n) = \sum_{d|n}d^k$,$\sigma_0(n)$ 通常记作 $d(n)$ 或者 $\tau(n)$(表示约数的个数),$\sigma_1(n)$ 通常记作 $\sigma(n)$
- 莫比乌斯函数:$\mu(n)$
Dirichlet卷积
定义
定义两个数论函数 $f,g$的Dirichlet卷积为
$$(f*g)(n) = \sum_{d|n}f(d)g(\frac{n}{d})$$
性质
Dirichlet卷积满足交换律和结合律
其中 $\varepsilon$ 为Dirichlet卷积的单位元(任何函数卷 $\varepsilon$ 都为本身)
例子
$\displaystyle \varepsilon = \mu * 1 \Leftrightarrow \varepsilon (n) = \sum_{d|n}\mu (d)$
$\displaystyle d = 1*1 \Leftrightarrow d(n) = \sum_{d|n}1$
$\displaystyle \sigma = ID*1 \Leftrightarrow \sigma (n) = \sum_{d|n}d$
$\displaystyle ID = \varphi * 1 \Leftrightarrow ID(n) = \sum _{d|n} \varphi (d)$
$\displaystyle \varphi = \mu * ID \Leftrightarrow \varphi (n) = \sum_{d|n}d\cdot \mu(\frac{n}{d})$
还有一个常用来消 $d$ 的,
$n\cdot d = ID*ID \Leftrightarrow n\cdot d(n) = \sum_{d|n}ID(d) \cdot ID(\frac{n}{d})$
证明
1、证 $\displaystyle \varepsilon (n) = \sum_{d|n}\mu(d)$.
解:设 $\displaystyle n = \prod_{i=1}^k{p_i}^{c_i}, \ {n}' = \prod_{i=1}^k p_i$
那么 $\displaystyle \sum_{d|n}\mu (d) = \sum_{d|{n}'} \mu (d) = \sum_{i=0}^k \binom{k}{i}(-1)^i = (1-1)^k$.
当 $k=0$ 即 $n=1$ 时值为1否则为0,这就证明了 $\displaystyle \sum_{d|n}\mu (d) = [n=1]$.
2、证 $n = \sum_{d|n}\varphi (d)$
解:将 $n$ 质因数分解,$\displaystyle n = \prod_{i=1}^k{p_i}^{c_i}$
首先,因为 $\varphi$ 为积性函数,所以 $\varphi * 1$ 也是积性函数,
所以 $(\varphi * 1)(n) = (\varphi * 1)({p_1}^{c_1}) \cdot (\varphi * 1)({p_2}^{c_2})\cdot ... \cdot (\varphi * 1)({p_k}^{c_k})$.
故我们只要证明当 ${n}' = p^c$ 时,$\displaystyle \varphi *1 = \sum_{d|{n}'} \varphi (\frac{{n}'}{d}) =ID$ 成立即可。
因为 $p$ 是质数,于是 $d = p^0, p^1, ..., p^c$.
因此:
$$\begin{aligned}
\varphi *1 &= \sum_{d|n}\varphi (\frac{n}{d}) \\
&= \sum_{i=0}^c \varphi(p^i) \\
&= 1 + p^0\cdot (p-1) + p^1\cdot (p-1) + ... + p^{c-1}(p-1) \\
&= p^c
\end{aligned}$$
该式子两边同时卷积 $\mu$ 可得 $\varphi = ID * \mu$,即 $\varphi (n) = \sum_{d|n}d\cdot \mu (\frac{n}{d})$
积性函数与Dirichlet卷积的更多相关文章
- 『简单积性函数和dirichlet卷积』
简单积性函数 在学习欧拉函数的时候,相信读者对积性函数的概念已经有了一定的了解.接下来,我们将相信介绍几种简单的积性函数,以备\(dirichlet\)卷积的运用. 定义 数论函数:在数论上,对于定义 ...
- Codeforces E. Bash Plays with Functions(积性函数DP)
链接 codeforces 题解 结论:\(f_0(n)=2^{n的质因子个数}\)= 根据性质可知\(f_0()\)是一个积性函数 对于\(f_{r+1}()\)化一下式子 对于 \[f_{r+1} ...
- 2017 CCPC 杭州 HDU6265B 积性函数
题目链接 http://acm.hdu.edu.cn/downloads/CCPC2018-Hangzhou-ProblemSet.pdf B题 数论题 h(n)=∑ d|n φ(d) × ...
- 积性函数&线性筛&欧拉函数&莫比乌斯函数&因数个数&约数个数和
只会搬运YL巨巨的博客 积性函数 定义 积性函数:对于任意互质的整数a和b有性质f(ab)=f(a)f(b)的数论函数. 完全积性函数:对于任意整数a和b有性质f(ab)=f(a)f(b)的数论函数 ...
- codeforces757E. Bash Plays with Functions(狄利克雷卷积 积性函数)
http://codeforces.com/contest/757/problem/E 题意 Sol 非常骚的一道题 首先把给的式子化一下,设$u = d$,那么$v = n / d$ $$f_r(n ...
- Master of Phi (欧拉函数 + 积性函数的性质 + 狄利克雷卷积)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6265 题目大意:首先T是测试组数,n代表当前这个数的因子的种类,然后接下来的p和q,代表当前这个数的因 ...
- Mobius反演与积性函数前缀和演学习笔记 BZOJ 4176 Lucas的数论 SDOI 2015 约数个数和
下文中所有讨论都在数论函数范围内开展. 数论函数指的是定义域为正整数域, 且值域为复数域的函数. 数论意义下的和式处理技巧 因子 \[ \sum_{d | n} a_d = \sum_{d | n} ...
- [模板] 积性函数 && 线性筛
积性函数 数论函数指的是定义在正整数集上的实或复函数. 积性函数指的是当 \((a,b)=1\) 时, 满足 \(f(a*b)=f(a)*f(b)\) 的数论函数. 完全积性函数指的是在任何情况下, ...
- Codeforces757E.Bash Plays With Functions(积性函数 DP)
题目链接 \(Description\) q次询问,每次给定r,n,求\(F_r(n)\). \[ f_0(n)=\sum_{u\times v=n}[(u,v)=1]\\ f_{r+1}(n)=\s ...
随机推荐
- Linux下由于注释引发udf编译错误
我们编写如下的UDF: 然后我们放到Linux下进行编译 Linux编译以后会报如下错误: 这是由于C语言的C90标准不支持行注释,而我们只需要将行注释修改为块注释 问题即可解决
- Spring Boot 代码覆盖率测试
代码覆盖率测试是规范软件开发流程里一个必不可少的环节.一般都是在PG末尾阶段,伴随着IT自测产生. ↑以上,是自己yy出来的啊,反正我司是这样要求的.不跑覆盖率,鬼知道你在代码里夹杂了一些什么东西. ...
- Thinkpad S430 3364-A59 (笔记本型号)加内存条过程
背景:13年初选购的本,目前使用发现卡得厉害,原装内存只有4G,遂寻思扩充内存. [1]准备工具 待准备工具明细: (1)螺丝刀 主要为了卸后盖的螺丝. (2)内存条 待增加的内存条,如下图: 说明一 ...
- selenium登录爬取知乎出现:请求异常请升级客户端后重试的问题(用Python中的selenium接管chrome)
一.问题使用selenium自动化测试爬取知乎的时候出现了:错误代码10001:请求异常请升级客户端后重新尝试,这个错误的产生是由于知乎可以检测selenium自动化测试的脚本,因此可以阻止selen ...
- 2019-11-29-WPF-如何在绑定失败异常
原文:2019-11-29-WPF-如何在绑定失败异常 title author date CreateTime categories WPF 如何在绑定失败异常 lindexi 2019-11-29 ...
- 有哪位大侠操作过NPOI生成word文档,如何设置页眉页脚距离顶部和底部距离?
#region 1.创建文档(页眉.页脚) XWPFDocument doc = new XWPFDocument(); //页面设置 A4:w=11906 h=16838 doc.Document. ...
- PIE SDK内存矢量数据的创建
1.功能简介 GIS将地理空间数据表示为矢量数据和栅格数据.矢量数据模型使用点.线和多边形来表示具有清晰空间位置和边界的空间要素,如控制点.河流和宗地等,每个要素被赋予一个ID,以便与其属性相关联.栅 ...
- Windows怎么安装配置Elasticsearch
进入Elasticsearch官网,点击Download,Elasticsearch默认端口9200 然后进入下图:有各种版本,我选择windows版本 下载之后,解压得到Elasticsearch文 ...
- 使用GitHub/码云/Git个性化设置
参考链接:https://www.liaoxuefeng.com/wiki/896043488029600/900937935629664 这似乎很可笑,我还从来没有想过为一个网站的使用方法写一篇来记 ...
- 【转载】C#中ArrayList使用RemoveRange移除一整段数据
在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,如果需要移除ArrayList集合中指定索引位置开始的一整段元素对象,则可以使用ArrayList集合中的RemoveRange方法 ...