找回密码
 快速注册
搜索
查看: 37|回复: 9

[几何] 单形之积的剖分

[复制链接]

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

hbghlyj 发表于 2024-8-25 18:10 |阅读模式
本帖最后由 hbghlyj 于 2024-10-25 16:57 编辑 $p,q\inN_+,$
$\Delta^p$是$p$维单形
$\Delta^q$是$q$维单形
则$\Delta^p\times\Delta^q$是很多$\Delta^{p+q}$粘合得到的。具体有多少

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 18:15

$\Delta^1\times \Delta^1$

$\Delta^1$是$0\to 1$
那麼$\Delta^1\times \Delta^1$可分为2个$\Delta^2$:
$$(0,0)\to(1,0)\to(1,1)$$
$$(0,0)\to(0,1)\to(1,1)$$
zHu2K[1].png

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 18:18

$\Delta^1\times \Delta^2$

本帖最后由 hbghlyj 于 2024-10-25 17:18 编辑 $\Delta^1$是$0\to 1$
$\Delta^2$是$0\to 1\to2$
那麼$\Delta^1\times \Delta^2$可分为3个$\Delta^3$:
$$(0,0)\to(0,1)\to(0,2)\to(1,2)$$
$$(0,0)\to(0,1)\to(1,1)\to(1,2)$$
$$(0,0)\to(1,0)\to(1,1)\to(1,2)$$
uHRcH[1].png

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 18:44

$\Delta^p\times\Delta^q$分为多少个$\Delta^{p+q}$

可以用体积计算:
$\Delta^p$的$p$维体积是$\frac1{p!}$
$\Delta^q$的$q$维体积是$\frac1{q!}$
那么$\Delta^p\times\Delta^q$的($p+q$)维体积是$\frac1{p!}\cdot\frac1{q!}$
而$\Delta^{p+q}$的($p+q$)维体积是$\frac1{(p+q)!}$
那么$\Delta^p\times\Delta^q$分为$\frac{(p+q)!}{p!q!}=\binom{p+q}p$个$\Delta^{p+q}$
个数与(p,q)-shuffle相同

个数确定了。但怎么写出它们的頂点呢

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 19:51
hbghlyj 发表于 2024-8-25 10:44
个数确定了。但怎么写出它们的頂点呢
哦,我知道了。$p+q\choose p$是$p\times q$网格上的阶梯路径的个数。
$p\times q$网格上的阶梯路径与$\Delta^p\times\Delta^q$內的$\Delta^{p+q}$一一对应。
例如$3\times 4$网格上的一条阶梯路径可以被描绘成 $$\xymatrix@M=0pt@C=6mm@R=6mm{ {}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{->}[r]^{ \quad \ \quad (3,4)} &{}\ar@{.}[d]&{}\\ {}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{->}[r] &{}\ar@{.}[d]\ar@{.}[r]\ar@{->}[u] &{}\ar@{.}[d]&{}\\ {}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{.}[r]\ar@{->}[u] &{}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]&{}\\ {}\ar@{.}[d]\ar@{->}[r] &{}\ar@{.}[d]\ar@{.}[r]\ar@{->}[u] &{}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]&{}\\ {}\ar@{.}[r]_{(0,0) \quad \ \quad}\ar@{->}[u] &{}\ar@{.}[r] &{}\ar@{.}[r] &{}&{} }$$ 它对应于$\Delta^3\times\Delta^4$內的一个$\Delta^7$ $$(0,0)\to(0,1)\to(1,1)\to(1,2)\to(1,3)\to(2,3)\to(3,3)\to(3,4)$$

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 21:02
例如$3\times 2$网格上的一条阶梯路径可以被描绘成 $$\xymatrix@M=0pt@C=12mm{ {}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{.}[r] &{} \ar@{.}[d]\ar@{.}[r]^{ \quad \quad \quad (3,2)} &{}\\ {}\ar@{.}[d]\ar@{.}[r] &{}\ar@{.}[d]\ar@{->}[r]^{(1,1) \quad \quad \quad} &{} \ar@{.}[d]\ar@{->}[r]_{(2,1) \quad \quad (3,1)} &{}\ar@{.}[d]\ar@{->}[u] &{}\\ {}\ar@{->}[r]_{(0,0) \quad \quad \quad} &{}\ar@{.}[r]_{(1,0) \quad \quad \quad}\ar@{->}[u] &{} \ar@{.}[r] &{}\\ }$$ 它对应于$\Delta^3\times\Delta^2$內的一个$\Delta^5$ $$(0,0)\to(1,0)\to(1,1)\to(2,1)\to(3,1)\to(3,2)$$

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-8-25 21:28
hbghlyj 发表于 2024-8-25 13:02
例如$3\times 2$网格上的一条阶梯路径可以被描绘成

这幅图来自 Gabriel, Zisman, "Calculus of Fractions and Homotopy Theory", chapter II
Screenshot 2024-08-25 212655.png

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-10-26 00:22

那么三者的乘积该如何处理呢?

$\Delta^p\times\Delta^q\times\Delta^r$分为多少个$\Delta^{p+q+r}$
按“体积”计算应该是$\dfrac{(p+q+r)!}{p!q!r!}$
但是我们可以像上面一样用顶点的形式写出来吗?

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-10-26 00:31
  1. def find_paths(x, y, path, paths):
  2.     if x == 3 and y == 2:
  3.         paths.append(path)
  4.         return
  5.     if x < 3:
  6.         find_paths(x + 1, y, path + [(x + 1, y)], paths)
  7.     if y < 2:
  8.         find_paths(x, y + 1, path + [(x, y + 1)], paths)
  9. paths = []
  10. find_paths(0, 0, [(0, 0)], paths)
  11. for path in paths:
  12.     print("\\to".join(map(str, path)))
复制代码

\begin{aligned}(0, 0)\to(1, 0)\to(2, 0)\to(3, 0)\to(3, 1)\to(3, 2)\\
(0, 0)\to(1, 0)\to(2, 0)\to(2, 1)\to(3, 1)\to(3, 2)\\
(0, 0)\to(1, 0)\to(2, 0)\to(2, 1)\to(2, 2)\to(3, 2)\\
(0, 0)\to(1, 0)\to(1, 1)\to(2, 1)\to(3, 1)\to(3, 2)\\
(0, 0)\to(1, 0)\to(1, 1)\to(2, 1)\to(2, 2)\to(3, 2)\\
(0, 0)\to(1, 0)\to(1, 1)\to(1, 2)\to(2, 2)\to(3, 2)\\
(0, 0)\to(0, 1)\to(1, 1)\to(2, 1)\to(3, 1)\to(3, 2)\\
(0, 0)\to(0, 1)\to(1, 1)\to(2, 1)\to(2, 2)\to(3, 2)\\
(0, 0)\to(0, 1)\to(1, 1)\to(1, 2)\to(2, 2)\to(3, 2)\\
(0, 0)\to(0, 1)\to(0, 2)\to(1, 2)\to(2, 2)\to(3, 2)\end{aligned}

3149

主题

8386

回帖

6万

积分

$\style{scale:11;fill:#eff}꩜$

积分
65391
QQ

显示全部楼层

 楼主| hbghlyj 发表于 2024-10-26 00:36

将$\Delta^1\times\Delta^1\times\Delta^1\times\Delta^2$分为60个$\Delta^5$

  1. from itertools import permutations
  2. def generate_paths():
  3.     steps = ['x', 'y', 'z', 'w', 'w']
  4.    
  5.     unique_permutations = set(permutations(steps))
  6.    
  7.     paths = []
  8.     for perm in unique_permutations:
  9.         path = [(0, 0, 0, 0)]
  10.         current_position = [0, 0, 0, 0]
  11.         for step in perm:
  12.             if step == 'x':
  13.                 current_position[0] += 1
  14.             elif step == 'y':
  15.                 current_position[1] += 1
  16.             elif step == 'z':
  17.                 current_position[2] += 1
  18.             elif step == 'w':
  19.                 current_position[3] += 1
  20.             path.append(tuple(current_position))
  21.         paths.append(path)
  22.    
  23.     return paths
  24. paths = generate_paths()
  25. for path in paths:
  26.     print("\\to".join(map(str, path)))
复制代码

\begin{align*}
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 1, 0)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 1, 0)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 1, 0)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 0, 0, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 1, 1, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(1, 0, 0, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(0, 1, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(1, 0, 1, 0)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(0, 0, 1, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 0, 0, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(0, 0, 1, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 0, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(0, 0, 1, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(1, 0, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(0, 1, 0, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 0, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(0, 1, 0, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(1, 0, 1, 0)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 0, 1)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 1, 1, 0)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(0, 0, 1, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(0, 0, 1, 2)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 1, 1, 0)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 0, 1, 1)\to(1, 0, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(0, 0, 1, 1)\to(0, 1, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 0, 1, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 1, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 1, 0)\to(1, 0, 1, 0)\to(1, 1, 1, 0)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(0, 1, 0, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 1, 0)\to(0, 1, 1, 1)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 1, 0, 1)\to(0, 1, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(1, 0, 0, 1)\to(1, 1, 0, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 1, 1)\to(1, 0, 1, 1)\to(1, 1, 1, 1)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 1, 0, 0)\to(0, 1, 0, 1)\to(0, 1, 0, 2)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(1, 0, 0, 0)\to(1, 1, 0, 0)\to(1, 1, 0, 1)\to(1, 1, 0, 2)\to(1, 1, 1, 2)\\
(0, 0, 0, 0)\to(0, 0, 0, 1)\to(0, 0, 0, 2)\to(0, 0, 1, 2)\to(0, 1, 1, 2)\to(1, 1, 1, 2)\end{align*}

手机版|悠闲数学娱乐论坛(第3版)

GMT+8, 2025-3-4 15:47

Powered by Discuz!

× 快速回复 返回顶部 返回列表