格路计数学习笔记

格路计数学习(抄写)笔记

2 Dyck

2.1 格路

定义 2.1 在平面直角坐标系中,横坐标和纵坐标都是整数的点称为格点平面格路是指从 一个格点到另一格点只走格点的路,格路的长度是指其所走的路的步数。

2.2 自由路

定义 2.2 对于一条从 (0,0)(n,m) 的格路,若只使用上步 U=(0,1) 和右步 L=(1,0),则我们称其为 (n,m) 自由路

定理 2.1F(n,m)(n,m) 自由路的数量,F(n,m)(n,m) 自由路的数量,则 F(n,m)=(n+mn)

2.3 (n,m)-Dyck 路的计数

定义 2.3 对于一条从 (0,0)(n,m) 的自由路,若其始终不经过对角线 y=mnx 下方,则我们称之为 (n,m)-Dyck 路。

​ 记 D(n,m)(n,m)-Dyck 路的数量,记 D(n,m)

​ 考虑一条 (n,m)-Dyck 路对应的 LU 序列。

定义 2.4 对于从 (0,0)(n,m)2 条格路 (P,Q) ,其中 P=u1u2un+mQ=v1v2vn+m (ui,vi{L,U})。若 i,ui+1un+mu1ui=Q,则我们称格子 P,Q 等价(即循环同构)。将 P 的等价路全集记为 [P]

定义 2.5 对于任意格路 P ,记 Pk=uk+1uk+2un+mu1uk。则 [P]={Pk|k=1,2,3,,n+m}。定义 P周期 为使得 P=Pk 的最小数 k ,用 period(P) 表示,则显然有 #[P]=period(P)

引理 2.1(n,m)=1,则 PF(n,m),有:

period(P)=n+m

证明:

​ 显然有 period(P)n+m。考虑反证法:

​ 若 period(P)<n+m,设为 r。设 n+m=ar+b (b<r)

​ 则由定义得 P=Pr=P2r==Par。所以有 Pb=P,则推出 b=0。又因为 r<n+m , 所以 a>1

​ 因为 a>1,所以 a|na|m,与 (n,m)=1 矛盾,所以 period(P)=n+m

引理 2.2nm 互质时,[P] 有且仅有一条 (n,m)-Dyck 路。

证明:

​ 首先证明存在性:

​ 若 P 不是一条 (n,m)-Dyck 路,则其一定存在一个点在对角线下方。设这些点当中离对角线最远 的点是 v,从这个位置断开,将 P 分为两个子路 L1,L2。则 P 可以表示为 P=L1L2。构建一条新 的格路 P=L2L1,则 P 显然是一条 (n,m)-Dyck 路。

​ 然后证明唯一性:

​ 容易发现,我们只需要证明对角线下方距离对角线最远的点有且只有一个。

​ 设两点距离对角线距离相同,则这两点形成直线与对角线斜率 mn 相同。由 n,m 互质可知对角线 下方不存在这样的两个整点。

​ 由上述两个引理我们就可以立刻得出:

定理 2.2(n,m) 互质时,(n,m)-Dyck 路的数量为:

D(n,m)=1n+m(n+mn)

2.4k 个峰的 (n,m)-Dyck 路计数

定义 2.6 对于一条从 (0,0)(n,m) 的自由路中的连续两步,若其为 UL,则我们称之为一个;若其为 LU,则我们称之为一个

定理 2.3F(n,m;k) 为所有有恰好 k 个峰的 (n,m) 自由路的集合,F(n,m;k)=#F(n,m;k)。则从 (0,0)(n,m)k 个峰的自由路数量为:

F(n,m;k)=(nk)(mk)

​ 这个很好理解,相当于在 nL 中选择 k 个作为峰,在 mU 作为峰,这两部分显然是独立的。每一种选法都能够对应一种方案。

定理 2.4FUL(n,m;k) 为所有有恰好 k 个峰,且首步为 U,末步为 L(n,m) 自由路的集合,FUL(n,m;k)=#FUL(n,m;k)。则有:

FUL=(n1k1)(m1k1)

​ 起始的一段 U 一定会与后面形成一个峰,结尾的一段 L 一定会和前面形成峰。那么这个公式就是易于理解,显然成立的。注意到他这么定义的动机就是要引入不能越过对角线的限制了。

定理 2.5D(n,m;k) 为所有有恰好 k 个峰的 (n,m)-Dyck 路的集合,D(n,m;k)=#D(n,m;k)。则当 n,m 互质时,恰有 k 个峰的 (n,m)-Dyck 路的个数为:

D(n,m;k)=1k(n1k1)(m1k1)

证明:

​ 对于任意格路 PFUL(n,m;k) ,其恰好有 k1 个谷,我们将其断开分成若干子路。则有 P=L1L2Lk

​ 与 引理 2.1 类似,将 L 看做元素,P周期k

​ 因此每条 Dyck 路的每个峰唯一对应 FUL(n,m;k) 中的一个元素。 同样的,我们这样的格路也找 到离对角线最远的点切开,交换两端。这个最远的点一定是谷。所以每个 FUL(n,m;k) 中的元素都可以 唯一对应 Dyck 路中的一个峰。所以这个公式显然成立。

2.5 t-Dyck 路计数

定义 2.7 对于一条从 (0,0)(n,m) 的自由路,若其始终不经过对角线 y=tx 下方,则我们称之为 t-Dyck 路。特别地,若 m=tn ,则我们称之为 nt-Dyck 路。

​ 注意,因为 (n,tn)1 ,所以不满足之前所述定理的使用条件。

定理 2.6k 个峰的 nt-Dyck 路的个数是:

D(n,tn;k)=1k(n1k1)(tnk1)

证明:

​ 记 m=tn+1 ,则显然 (n,m)=1。带入 定理 2.5

D(n,tn+1;k)=1k(n1k1)(tnk1)

​ 考虑 D(n,tn+1;k) 中的任意元素 P ,因为 tn+1n>t1 ,所以前两步必然为 U。则设去掉第一 个 U 的路径为 P

​ 因为 xZtnZ。所以去掉第一个 U 不会使得 Py=tx 下方去。

​ 类似地,因为 y=tn+1nxy=tx 之间没有整点,所以加上一个 U 会让路径到 tn+1nx 上面去。

​ 因此两个集合一一对应。

定理 2.7 nt-Dyck 路的个数是:

D(n,tn)=1tn+1(tn+nn)

	**证明:** 随便化一下式子,然后范德蒙德卷积易证。

​ 值得注意的是,卡特兰数本质就是 nt-Dyck 路的 t=1 的特殊情况。即 D(n,n)=1n+1(2nn)

定理 2.8(0,0)(n,m) 的有 k 个峰的 t-Dyck 路的个数是:

Dt(n,m;k)=m+1tnn(nk)(mk1)

定理 2.9(0,0)(n,m)t-Dyck 路的个数是:

Dt(n,m;k)=m+1tnn+1(n+mn)

​ 证明比较复杂。论文也没写。有兴趣翻参考文献。

2.6 Dyck 路的另一种等价定义

nDyck 路是在 x 轴上分以上步 U1=(1,1) ,下步 D=(1,1)(0,0)(2n,0) 的格路。这个很好理解。相当于将原格路旋转 45,然后做相应的缩放即可。

nt-Dyck 路是在 x 轴上方以上步 Ut=(1,t),下步 D=(1,1),从 (0,0)((t+1)n,0) 的格路。

nt-Dyck 路的全体记作 Dt~(n)Dt~(n)=#Dt~(n)

Dt~(n)D~(n,tn) 之间存在双射。构造双射的一个方法如下:

​ 对于 P,我们将其倒序得到 P,然后把 L 替换为 UtU 替换为 D 即可。 这个还是可以利用将整个格子图旋转至对角线水平理解。

3 不相交格路

3.1 n 阶不交 Dyck 路计数

定义 3.1(0,0)(n,n) 的两条 DyckPQ 称为一个 nDyck 路对。若 Q 始终不穿过 P,则 (P,Q) 是一个 不交 Dyck 路对,否则称为 相交 Dyck 路对

定理 3.1 n 阶不交 Dyck 路对数为

|CnCn+1Cn+1Cn+2|

​ 其中,Cn=1n+1(2nn),是卡特兰数的第 n 项。

证明: 构造映射 (P,Q)(P~,Q~),其中 P~=UUPLLQ~ 为将 Q(1,1) 平移一格后得到从 (1,1)(n+1,n+1)Dyck 路。那么 (P,Q) 相交当且仅当 (P~,Q~) 有交点。而且没有交点的 P~ 一定满足开头是两个 U,结尾是两个 L。那么就是两个起点两个终点的 LGV 引理了。

定理 3.2 kn 阶不交 Dyck 路对数为

det(Cnij)i,j=1k=|Cn2Cn3CnkCnk1Cn3Cn4Cnk1Cnk2Cnk1Cnk2Cn2k1Cn2k|

证明: 这个也可以直接平移起终点然后 LGV 证。

3.2 不交自由路对计数

定义 3.2PQ 是两条自由路,如果 Q 始终不穿越 P,则称 (P,Q) 是从 (0,0)(n,m) 的两条不交自由路对,用 Fnc 表示。如果 PQ 除了起点以及终点之外没有公共点,则称 (P,Q) 是一个不接触自由路对,用 Fnt 表示。

定理 3.3(0,0)(n,m) 的不接触自由路对个数是

Fnt(n,m)=1n(n+m1n1)(n+m2n1)

证明: 想必不用证了,直接就是一个裸的 LGV,整理一下式子就是这个样子。

定理 3.4(0,0)(n,m) 的不交自由路对个数是

Fnc(n,m)=1n+1(n+m+1n)(n+mn)

证明:PQ 上方,那么可以将 P 向上平移一格,将 Q 向右平移一格,那么不交就会变成接触。

​ 然后在 P 最后加上一个 LQ 最后加上一个 U 补全就可以得到 Fnc(n,m)=Fnt(n+1,m+1)

posted @   Reanap  阅读(245)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示