关于DAG上拓扑序及其逆排列的讨论

关于DAG上拓扑序及其逆排列的讨论

记号

  • \(G\):有向无环图, \(r(G)\):\(G\)的反图, \(-G\):\(G\)中点编号取反(\(x \to n-x+1\))
  • \(P(G)\):\(G\)上所有拓扑序的集合,\(P^{-1}(G)\):\(P(G)\)的逆排列集合,\(-P(G)\)拓扑序编号取反
  • \(r(P)\):排列翻转后的集合
  • \(p\):一个排列(置换)

一些性质

\[p^{-1}(p(i)) = i \\ r(p)(i) = p(n-i) \\ -P(G) = P(-G) \\ r(P(G)) = P(r(G)) \\ -\min P(G) = \max -P(G) = \max P(-G) \]

显然

\[(-p)^{-1} = r(p^{-1}) \]

证明:

\[\begin{aligned} (-p)(i) &= n - p(i) \\ (-p)^{-1}(n-p(i)) &= i \\ (-p)^{-1}(n-p(i)) &= r((-p)^{-1})(p(i)) \\ r((-p)^{-1}) &= p^{-1} \\ (-p)^{-1} &= r(p^{-1}) \end{aligned} \\ \]

\[-P^{-1}(G) = P^{-1}(r(G)) \]

证明:

\[\begin{aligned} (-P^{-1}(G))^{-1} &= r(P(G)) \\ &= P(r(G)) \\ -P^{-1}(G) &= P^{-1}(r(G)) \end{aligned} \]

字典拓扑原理

在DAG上最小\最大拓扑序易求,我们考虑将其逆排列的极值问题转化。

\[(\max P(G))^{-1} = \max P^{-1}(G) \]

证明:
考虑归纳证明,令\(\max P^{-1}(G) (1) = k\),则节点\(1\)后至少有\(n-k\)个节点,对于\(\max P(G)\)我们一定只有没有其他可以填入节点才填入\(1\),也就是\(\max P(G)(k) = 1\),然后去掉1,在新图上满足归纳假设。

\[\min P^{-1}(G) = -(\max P(r(G)))^{-1} \]

证明:

\[\begin{aligned} \min P^{-1}(G) &= -\max -P^{-1}(G) \\ &= -\max P^{-1}(r(G)) \\ &= -(\max P(r(G)))^{-1} \end{aligned} \]

posted @ 2022-03-18 14:37  鼠曲雪兔子  阅读(64)  评论(0编辑  收藏  举报