关于广义莫比乌斯反演的思考
本文总结关于广义莫比乌斯反演的一些思想。
1. 广义莫比乌斯反演
为区别平时所说的整数上定义整除关系后,在dirichlet卷积下的莫比乌斯反演,这里更关心其一般化,所以称之为广义莫比乌斯反演。
在Richard A. Brualdi所著的Introductory Combinatorics (版本不限,中文名为组合数学)中The Inclusion-Exclusion Principle and Applications(容斥原理及其应用)一章,最后一节Mobius Inversion(莫比乌斯反演)所介绍的莫比乌斯反演即为本文所提到的广义莫比乌斯反演。
简单地,不严格地说:如果有 f = s * g, s * t = 1,那么有g = t * f。当x是整数上集上带整除关系的偏集上的示性函数:a | b 时 s(a, b) = 1,否则为0,x这个函数通常记为zeta。相应的,由该偏序关系决定的卷积正是Dirichlet卷积。s关于delta(在本文中写作1,请自行区分整数1和delta)的逆就是莫比乌斯函数t,通常记为mu。
问题:通常遇到的mu是一个参数,而上述的s是两个参数,进一步可以猜测t也是两个参数。是的,上述函数都是两个参数,其中卷积的定义如下:f(x, y) = s * g = sum(s(x, z)g(z, y),x <= z and z <= y).令x = 1,<= 关系为整除关系时f(y) = sum(s(1, z)g(z, y), x | z and z | y)。进一步,令ss = s(z/1),gg=g(y/z)得到f(y) = sum(ss(z)gg(y/z), x | z and z | y)。可以证明,mu(a, b) = mu(b/a),正好和前面的解释对应。进而解释了为什么在整数,整除关系上莫比乌斯函数只有一个参数。而,在2^X上,集合包含关系下的莫比乌斯函数是(-1)^(|A|-|B|),可以看到确实有两个参数。当B为空集时,就得到了容斥原理的系数了。书中有详细推导。
到这里,我们将一般莫比乌斯反演提高到广义莫比乌斯反演。广义莫比乌斯反演包含了容斥原理。
前文所述的:"如果有 f = s * g, s * t = 1,那么有g = t * f。"将广义莫比乌斯反演提高到泛函的高度。广义莫比乌斯反演只是在 s = 该偏序集的示性函数时的特殊应用。为什么在s取这个特殊的函数时产生了莫比乌斯反演呢?
2. 思想
先引入简单函数和困难函数的概率,简单的一般有直接表达式,或者容易算出来的表达式,反之亦然。这里简单和困难主要是指求值的难易程度。
莫比乌斯反演的思想:假定f,s,t是简单函数,g是困难函数,f = s * g, s * t = 1,我们可以利用g = t * f将困难函数的计算转移到简单函数的计算上。
莫比乌斯反演主要考虑最简单的s:s是偏序集的示性函数,如果t也简单,那么计算可以转移。
如果t不简单呢?为简单起见,只考虑单变量形式,f(n) = s(a_1)g(n/a_1) + s(a_2)g(n/a_2) + s(a_3)g(n/a_3) ... s(a_r)g(n/a_r)其中a_r = n。(除法可能不是一般意义上的除法)。可以断定:如果a_1是最小元,那么a_1 = 1。于是我们得到s(n) = (f(n) - (s(a_1)g(n/a_1) + ... + s(a_{r-1})g(n/a_{r-1})))/g(1)。
到此,解决了莫比乌斯函数t不简单的问题。而一般的莫比乌斯函数的计算就是:先用上述递归,如果得到闭合的简单表达式,你就找到该集合上的莫比乌斯函数了。如果没找到,或者只是觉得麻烦,直接用该递归求解即可。可以在心中认为,在应用该递归时,隐式地计算了莫比乌斯函数。
莫比乌斯反演就是考虑最简单的s,告诉了s的逆简单时的办法,而这里告诉你有更一般的办法。
如果s不是偏序集的示性函数呢?上述递归同样有效。也存在求出t的闭合形式的可能性。也许在之前就遇到过这样的递归形式,在看了这本文后,可以知道,原来从那个时候就会莫比乌斯反演了。或者可以说,在第一次写容斥原理的代码时就是在写莫比乌斯反演的代码。(比如说求不超过n的square free数的个数就是该递归)
3. 文末彩蛋
考虑f = s * g,如果对于批量f的计算有快速方法,那么将方法反向操作后可以直接批量计算g。因为利用g = t * f,不一定能找到g的批量快速计算方法。
例子:设f(x) = sum(s(x/d)g(d), d | x),当s(d) = 1时,s足够简单,导致对于批量计算所有的f(x)其中 x | n有个快速算法(参考子集卷积算法)。那么如果f简单而g困难,对于反演形式很难找到批量计算的快速算法时,只需要反着执行用g计算f的快速算法,就能快速找到所有的g(x), x|n了。该思想可以用于spoj PAIRDIV2 http://www.spoj.com/problems/PAIRDIV2/
关于广义莫比乌斯反演的思考相关推荐
- 【bzoj2154】Crash的数字表格 莫比乌斯反演
题目描述 今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple).对于两个正整数a和b,LCM(a, b)表示能同时被a和b整除的最小正整数.例如,LCM(6, ...
- 对于容斥原理反演的思考和总结
前言 我还是太菜了 容斥之类的方法并不能熟练应用 于是这次我就认真学习了一下容斥 你可能会发现,容斥与反演很多时候都会同时出现 那么,这两个东西分别是什么.究竟有什么关系呢? 容斥 我们先从定义说起 ...
- [复习]莫比乌斯反演,杜教筛,min_25筛
[复习]莫比乌斯反演,杜教筛,min_25筛 莫比乌斯反演 做题的时候的常用形式: \[\begin{aligned}g(n)&=\sum_{n|d}f(d)\\f(n)&=\sum_ ...
- BZOJ2301: [HAOI2011]Problem b[莫比乌斯反演 容斥原理]【学习笔记】
2301: [HAOI2011]Problem b Time Limit: 50 Sec Memory Limit: 256 MB Submit: 4032 Solved: 1817 [Submi ...
- 【BZOJ2154】Crash的数字表格 [莫比乌斯反演]
Crash的数字表格 Time Limit: 20 Sec Memory Limit: 259 MB [Submit][Status][Discuss] Description 今天的数学课上,Cr ...
- 【笔记】莫比乌斯反演(1)
上一篇:莫比乌斯反演(0) 文章目录 莫比乌斯反演 关于反演 莫比乌斯函数 定义 性质 莫比乌斯反演公式 公式1 公式2 整除分块 引入 关于整除分块 基础推导 简单扩展 莫比乌斯反演的应用 例1:证 ...
- 莫比乌斯反演--懵逼反演系列
反演的定义 设有数论函数f(n),g(n)f(n),g(n)f(n),g(n),其中g(n)g(n)g(n)已知 且f(n),g(n)f(n),g(n)f(n),g(n)满足关系g(n)=∑i=0na ...
- 我也不知道什么是莫比乌斯反演和杜教筛
upd:发现这篇文章里面似乎有很多细节上的错误,如果还有错误的话在cnblogs下评论吧,我会改的QwQ,cnblogs戳这里. upd:正在写一篇复习向的文章,之后贴链接,可以作为这篇文章的一个补充 ...
- 《算法竞赛进阶指南》数论篇(3)-组合计数,Lucas定理,Catalan数列,容斥原理,莫比乌斯反演,概率与数学期望,博弈论之SG函数
文章目录 组合计数 例题:Counting swaps Lucas定理 Cnm≡Cnmodpmmodp∗Cn/pm/p(modp)C_n^m\equiv C_{n\ mod\ p}^{m\ mod\ ...
最新文章
- python循环语句打印矩形_Python中使用循环语句打印三角形、菱形
- English trip V2-B 1 What's on the Menu? 菜单上有什么? Teacher:Tom
- 易语言 钩子 (钩子HOOK与APIHOOK是不一样的)
- 淘宝客系统教学系列_2.应用登录接口对接
- 微信小程序 学科竞赛比赛报名管理系统 Android hbuilderx App毕业设计
- Dockerfile搭建LNMP环境
- 晚明最后的辉煌-朝鲜之役
- 怎样在线压缩png图片大小?将这个压缩方法分享给大家
- Linux LibTools
- AFNetworking(v3.1.0) 源码解析
- 用EXCEL统计分段数据的个数
- vue 大屏数字上下滚动
- PH测量传感器电极信号转换模块设计原理介绍
- 何洛洛高考成绩查询2021,R1SE曾想续约:11少年毕业发言催泪,周震南更文,何洛洛哭上热搜...
- 工程监测多通道振弦模拟信号采集仪VTN数据查看
- win7系统卸载完WPS后,office2007图标显示不正常,及每次打开都要进行配置的问题的解决方案
- golang Opts Pattern
- 面向对象设计模式原则-迪米特法则
- 继续在深圳发展还是回武汉呢?
- 朴素贝叶斯 Naive Bayes Classifier