【读书笔记】格子路径计数LatticePathEnumeration 学一半的笔记
流水账流水账这篇什么都不是
- 方法
- 10.2 Lattice paths without restrictions 无限制格子路径
- 10.3 Linear boundaries of slope 1
- 10.4 Simple paths with linear boundaries of rational slope,部分一
- 10.5 Simple paths with linear boundaries with rational slope,部分二
- 10.6 Simple paths with a piecewise linear boundary
- 10.7 Simple paths with general boundaries
- 10.8 Elementary results on Motzkin and Schröder paths
- 10.9 A continued fraction for the weighted counting of Motzkin paths
- 10.10 Lattice paths and orthogonal polynomials
- 10.11 Motzkin paths in a strip
- 10.12 Further results for lattice paths in the plane
- 10.13 Non-intersecting lattice paths
- 10.14 Lattice paths and their turns
- 10.15 Multidimensional lattice paths
- 10.16 Multidimensional lattice paths bounded by a hyperplane
- 10.17 Multidimensional paths with a general boundary
- 10.18 The reflection principle in full generality
- 10.19 q-Counting of lattice paths and Rogers–Ramanujan identities
- 10.20 Self-avoiding walks
吐个槽,以为逛组合学就不要看到大段复杂的公式了,结果。。。后面的哪些公式\(\omega\varpi\)都出来了,还一堆上下标。。。\(\sum\)下面求和范围都密密麻麻写两行。。。
方法
如果某人尝试去列出格子路径计数问题中的一些重要方法,那么会包括下面这些:
- 生成函数;拉格朗日反演公式 ;residue calcus
- 一一映射
- reflection principle
- cycle lemma
- 转移函数方法
- 核方法
- the path switching involution for non-intersecting lattice paths
- manipulation of two-rowed arrays for turn enumeration
- 正交多项式;连分数
10.2 Lattice paths without restrictions 无限制格子路径
2维的例子,从(a,b)到(c,d),允许(0,1)和(1,0)
c+d-a-b \\
c-a
\end{array}\right)
\]
n维的例子,从\(\mathbf{a}\)到\(\mathbf{e}\),每次允许一个维度+1
\sum_{i=1}^{d}\left(e_{i}-a_{i}\right) \\
e_{1}-a_{1}, e_{2}-a_{2}, \ldots, e_{d}-a_{d}
\end{array}\right):=\frac{\left(\sum_{i=1}^{d}\left(e_{i}-a_{i}\right)\right) !}{\left(e_{1}-a_{1}\right) !\left(e_{2}-a_{2}\right) ! \cdots\left(e_{d}-a_{d}\right) !}
\]
2维的例子,从(a,b)到(c,d),允许\((0,\pm1)\)和\((\pm1,0)\),走n个steps
n \\
\frac{n+c+d-a-b}{2}
\end{array}\right)\left(\begin{array}{c}
n \\
\frac{n+c-d-a+b}{2}
\end{array}\right)
\]
2维的例子,从(a,b)到(c,d),允许(0,1)和(1,0)和(1,1)
c+d-a-b-k \\
k, c-a-k, d-b-k
\end{array}\right)
\]
一个带权重计数,联系了格子路径计数和整数分拆
记号\(a(P)\)表示path \(P\)的水平step和x轴夹的面积的代数和
一个q-模拟
c+d-a-b \\
c-a
\end{array}\right]_{q}
\]
举例:从(0,0)到(2,2)有6种
是UURR,URUR,RURU,RRUU,URRU,RUUR
4 \\
2
\end{array}\right]_{q}=\frac{\left(1-q^{4}\right)\left(1-q^{3}\right)}{(1-q)\left(1-q^{2}\right)}=\left(1+q^{2}\right)\left(1+q+q^{2}\right)=1+q+2 q^{2}+q^{3}+q^{4}
\]
10.3 Linear boundaries of slope 1
Theorem 10.3.1 在y=x对角线下
c+d-a-b \\
c-a
\end{array}\right)-\left(\begin{array}{c}
c+d-a-b \\
c-b+1
\end{array}\right)
\]
其中\(a \geq b,c\geq d\)
特例有:
ballot problem
c+d+1 \\
d
\end{array}\right) \ where \ c\geq d
\]
卡特兰数
2 n \\
n
\end{array}\right)
\]
Theorem 10.3.3 在两条斜率1的对角线之间
|L((a, b) \rightarrow(c, d) \mid x+t \geq y \geq x+s)| \\
\quad=\sum_{k \in \mathbb{Z}}\left(\left(\begin{array}{c}
c+d-a-b \\
c-a-k(t-s+2)
\end{array}\right)-\left(\begin{array}{c}
c+d-a-b \\
c-b-k(t-s+2)+t+1
\end{array}\right)\right)
\end{array}
\]
其中\(a+t\geq b\geq a+s\) and \(c+t\geq d\geq c+s\)
如果利用一些余数微积分的知识,我们可以改写成有sine和cosine的formula,这样容易分析渐进性质:
|L((a, b) \rightarrow(c, d) \mid x+t \geq y \geq x+s)| \\
=\sum\limits_{k=1}^{\lfloor(t-s+1) / 2\rfloor}\frac{4}{t-s+2}\left(2 \cos \frac{\pi k}{t-s+2}\right)^{c+d-a-b}
\cdot \sin \left(\frac{\pi k(a-b+t+1)}{t-s+2}\right) \cdot \sin \left(\frac{\pi k(c-d+t+1)}{t-s+2}\right)
\end{array}
\]
10.4 Simple paths with linear boundaries of rational slope,部分一
Theorem 10.4.1 rational Catalan number
r+s \\
r,s
\end{array}\right)
\]
这里没错。。。我找了个pdf
这个数如今被称为有理卡特兰数,
如果让\(r=n,s=n+1\),那么成为卡特兰数\(\frac{1}{n+1}\left(\begin{array}{c}
2n \\
n
\end{array}\right)\)
Theorem 10.4.5
c+d+1 \\
d
\end{array}\right)
\]
其中,\(\mu\)是一个非负整数,\(c\geq \bold{\mu} d\)
Lemma 10.4.6 Cycle Lemma

Theorem 10.4.7

10.5 Simple paths with linear boundaries with rational slope,部分二
10.6 Simple paths with a piecewise linear boundary
picewise 分段的,逐段的
像下面这样

Theorem 10.6.1

10.7 Simple paths with general boundaries

Theorem 10.7.1
a_{i}-b_{j}+1 \\
j-i+1
\end{array}\right)\right)
\]
10.8 Elementary results on Motzkin and Schröder paths
一些著名paths

常见的就这么几种
Motzkin paths 允许(1,1),(1,-1),(1,0) 不会到x轴下方
Schröder paths 允许(1,1),(1,-1),(2,0) 不会到x轴下方
Catalan paths 允许(1,1),(1,-1) 不会到x轴下方
Dyck paths 上面的3种只要出发点和终点都在x轴上,就叫做Dyck paths
Theorem 10.8.1
Motzkin paths enumeration
L((a, b) \rightarrow(c, d) ; M \mid y \geq 0) \mid \\
\quad=\sum_{k=0}^{c-a}\left(\begin{array}{c}
c-a \\
k
\end{array}\right)\left(\left(\begin{array}{c}
c-a-k \\
(c+d-k-a-b) / 2
\end{array}\right)-\left(\begin{array}{c}
c-a-k \\
(c+d-k-a+b+2) / 2
\end{array}\right)\right)
\end{array}
\]
Schröder paths enumeration
|L((a, b) \rightarrow(c, d) ; S \mid y \geq 0)|=\sum_{k=0}^{(c-a) / 2}\left(\begin{array}{c}
c-a-k \\
k
\end{array}\right) \\
\cdot\left(\left(\begin{array}{c}
c-a-2 k \\
(c+d-2 k-a-b) / 2
\end{array}\right)-\left(\begin{array}{c}
c-a-2 k \\
(c+d-2 k-a+b+2) / 2
\end{array}\right)\right)
\end{array}
\]
Corollary 10.8.2
出发点和结束点都在x轴上的Motzkin paths计数
n \\
2 k
\end{array}\right) \frac{1}{k+1}\left(\begin{array}{c}
2 k \\
k
\end{array}\right)
\]
出发点和结束点都在x轴上的Schröder paths计数
n / 2+k \\
2 k
\end{array}\right) \frac{1}{k+1}\left(\begin{array}{c}
2 k \\
k
\end{array}\right)
\]
10.9 A continued fraction for the weighted counting of Motzkin paths
给每个Motzkin path定义一个weight,定义为:
是所有step权重的乘积,
up-step的权重是\(1\),level step at height \(h\)的权重是\(b_h\),down step from height \(h\) to height \(h-1\)的权重是\(\lambda_h\)

Theorem 10.9.1 Motzkin path带权重

Theorem 10.9.2 Motzkin和Schröder number的GF

Theorem 10.9.3 Dyck path带权重

10.10 Lattice paths and orthogonal polynomials
10.11 Motzkin paths in a strip
10.12 Further results for lattice paths in the plane
10.13 Non-intersecting lattice paths
一些定义

有点像以前写过的routing,non-intersecting但是可以cross
Theorem 10.13.1

其实还是这个:以前写过的routing
剩下的看不懂看不懂看不懂
10.14 Lattice paths and their turns
10.15 Multidimensional lattice paths
10.16 Multidimensional lattice paths bounded by a hyperplane
10.17 Multidimensional paths with a general boundary
10.18 The reflection principle in full generality
10.19 q-Counting of lattice paths and Rogers–Ramanujan identities
10.20 Self-avoiding walks
说这个求精确解是复杂的,求渐进的情况是很多的。给你列出了参考文献
其中推荐的standard book(标准教科书)N.MadrasandG.Slade. The self-avoiding walk. Probability and its Applications, Birkh¨auser Boston, Inc., Boston, MA, 1993.
资料来自网络
书用的是Handbook of Enumerative Combinatorics by Miklos Bona
许多组合大牛写的组合计数综述合集,几乎覆盖组合计数学的各个方面
【读书笔记】格子路径计数LatticePathEnumeration 学一半的笔记的更多相关文章
- 牛客网 暑期ACM多校训练营(第一场)A.Monotonic Matrix-矩阵转化为格子路径的非降路径计数,Lindström-Gessel-Viennot引理-组合数学
牛客网暑期ACM多校训练营(第一场) A.Monotonic Matrix 这个题就是给你一个n*m的矩阵,往里面填{0,1,2}这三种数,要求是Ai,j⩽Ai+1,j,Ai,j⩽Ai,j+1 ,问你 ...
- 跟着鸟哥学Linux系列笔记3-第11章BASH学习
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...
- 【DG】[三思笔记]一步一步学DataGuard
[DG][三思笔记]一步一步学DataGuard 它有无数个名字,有人叫它dg,有人叫它数据卫士,有人叫它data guard,在oracle的各项特性中它有着举足轻理的地位,它就是(掌声)..... ...
- 堆优化Dijkstra计算最短路+路径计数
今天考试的时候遇到了一道题需要路径计数,然而蒟蒻从来没有做过,所以在考场上真的一脸懵逼.然后出题人NaVi_Awson说明天考试还会卡SPFA,吓得我赶紧又来学一波堆优化的Dijkstra(之前只会S ...
- 【洛谷】P1176: 路径计数2【递推】
P1176 路径计数2 题目描述 一个N×N的网格,你一开始在(1,1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N,N),即右下角有多少种方法. 但是这个问题太简单了,所以 ...
- 洛谷——P1176 路径计数2
P1176 路径计数2 题目描述 一个N \times NN×N的网格,你一开始在(1,1)(1,1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N,N)(N,N),即右下角有 ...
- 洛谷 P1176 路径计数2
P1176 路径计数2 题目描述 一个N×N的网格,你一开始在(1, 1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N, N),即右下角有多少种方法. 但是这个问题太简单了, ...
- 《Linux就该这么学》培训笔记_ch02_一些必须掌握的Linux命令
本文在原来作者的基础上做一些符合自己的修改.原文参考: <Linux就该这么学>培训笔记_ch02_一些必须掌握的Linux命令. 本章的内容虽然多,基本都是书本原话,但是笔记能精 ...
- 《Linux就该这么学》培训笔记_ch03_管道符、重定向与环境变量
<Linux就该这么学>培训笔记_ch03_管道符.重定向与环境变量 文章最后会post上书本的笔记照片. 文章主要内容: 输入输出重定向 管道命令符 命令行的通配符 常用的转义字符 重要 ...
- 《Linux就该这么学》培训笔记_ch04_Vim编辑器与Shell命令脚本
<Linux就该这么学>培训笔记_ch04_Vim编辑器与Shell命令脚本 文章最后会post上书本的笔记照片. 文章主要内容: Vim编辑器 Shell脚本 流程控制语句 if语句 f ...
随机推荐
- uniapp里面设置onlaunch以后在加载页面调接口
main.js 里面 Vue.prototype.$onLaunched = new Promise(resolve => { Vue.prototype.$isResolve = resolv ...
- 微信小程序基本总结
小程序目录结构 project.config.json 配置项目文件,用的最多的就是配置是否开启HTTPS校检 app.js 设置一些全局的基础数据 app.json 设置底部tabbar,标题栏和路 ...
- 记一次线上DB被打挂
这周刚新上了需求,在慢慢写代码的时候,突然报警群的消息多了,组长让我看看咋回事. 一开始没当回事,因为faas任务的错误日志一直很多,但是发现新的日志和以前大不相同,显示的是上游faas实例的连接被m ...
- js 获取鼠标位置的两种方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 模拟实现call,apply,bind方法,以及三者区别
// 模拟实现call方法 Function.prototype.call2 = function (context) { var context = context || window; conte ...
- Java中String相关知识
String 1.String概述 String代表字符串,Java程序中所有的字符串文字(例如'abc")都被实现为此类的实例,也就是说,Java中所有的双引号字符串都是String类的对 ...
- openvas漏洞扫描:使用openvas时扫描漏洞时,报告中显示的数据与数据库数据不同
使用openvas设备进行漏洞扫描时,报告中的漏洞数量与readis数据库中查找到的漏洞数量不同 原因是,openvas的代码中默认在报告中显示的最小质量检测为70%.如图: 上图详细链接为:http ...
- ybtoj 12F
求值的话改为求解前缀和的值,通过两个前缀和相减即可得到每个值. 每次询问相当于给一个方程. 一共有 $n$ 个未知数,因此需要 $n$ 个方程,同时每个数都必须至少在方程中出现一次. 最小生成树求解即 ...
- MacOS使用iTerm2 tab不区分大小写解答
打开控制台 输入 vim ~/.zshrc 按下 i 之后 // i == insert插入字符 粘贴以下代码 复制到该文件中 autoload -Uz compinit && co ...
- 关于 indy Idhttp Post数据抛异常 connection closed Gracefully
delphi 使用indy -idHttp 控件post 数据时 会报connection closed Gracefully这个异常的问题. 网上找了很多方法最多的就是 修改: MyHttp.Req ...