有向图计数与 GGF / 2022.8.10 闲话 II

时间:2022-08-10
本文章向大家介绍有向图计数与 GGF / 2022.8.10 闲话 II,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

《コバルトメモリーズ》

海岸线は半透明
半透明的海岸线,

カモメが鸣いた,
海鸥声声鸣叫着,

ノイズまみれのラジオが歌うよ,
掺杂着噪音的收音机正唱着歌,

结构前の话,
在很久以前,

世界が全员喧哗して,
全世界一片喧嚣吵闹,

仆らは上手く歩けない,
我们没办法顺利的前行,

数年前のヒットソングが,
好几年前的那首热门歌曲,

无限に流れるヘルツがあって,
依然透过赫兹在无限的传播着,

全人类おそらく最後の歌を,
搞不好这正播放着的,

流してるわけですが,
是全人类最后的一首歌了呢,

最近ノイズがうるさくなって,
最近噪音开始变得特别的扰人,

调子が悪いみたいだ,
弄得整个人不在状态,

次の歌はどうしような,
下一首歌应该怎么办呢,

君の耳にも届くような歌は,
那能传达到你耳朵里的歌啊,

もうこの星に一つもない,
在这个星球上已经一首都没有了,

谁も居ない街谁も居ない空,
空无一人的街道 空荡荡的天空,

世界は二人だけかもしれないね,
这个世界说不定只剩下我们两个而已了呢,

数年前の夜の,
几年前的夜晚,

空は红色,
天空泛着绯红,

メイデーさながら,
伴随着宛如嘈杂,

うるさい合図で,
信号的“MayDay”,

夜が明けたよ,
天已经亮了哦,

全部昔の话さ,
一切都过去了,

二人は今日も海岸线,
我们今天仍在这海岸线,

途切れ途切れの歌と空さ,
还有这破碎歌和这片天空,

夕が落ちる前どこへ行こうか,
夕阳下山之前一起到处走走吧,

君とサイダーと大冒険だ,
带上你和汽水来场大冒险吧,

本当はわかっていたけど,
有件事其实我是知道的,

仆は秘密にしたまんまだ,
但把它变成秘密藏了起来,

君の银色のレースみたいな,
你那宛如银色蕾丝一样的,

髪が透明になって,
头发开始变得透明,

透けた落阳时を告げた,
夕阳的余晖 告知了时间,

君がそんなに笑颜でいるから,
正是因为看到了你灿烂的笑脸,

明日も晴れる気がしていた,
我感觉明天也将会晴朗无云,

歌が続いたら蓝が続いたら,
如果这首歌和这片蓝能够继续,

世界の果てに君を连れてこうか,
那我就带上你到世界的尽头去吧,

放っといたって爱してたって,
被遗弃了什么 爱过了什么,

绝対仆らは消えてしまって,
总会有我们俩也消失的那一天,

じゃあ全然寂しいなんて,
那么寂寞什么的,

无いや无いやきっとそうだ,
也不会再来打扰了吧 我想一定是这样的,

そうやってずっとずっと,
就这样一直一直地欺骗自己,

逃げていた,
逃避现实,

夏が终わることを隠していた,
连夏天要结束的事也藏了起来,

君が好きな歌好きな场所,
你所喜欢的歌 喜欢的地方,

笑い声とか香りさえも,
甚至连那欢笑声和气息,

忘れてしまうよ,
都会被忘记的啊,

忘れてしまうよ,
都会被忘记的啊,

もしも全てが巻き戻せるなら,
如果这一切可以重新再来一次,

夏の终わりに何をしよう,
该怎样来结束这夏天好呢?

君が笑ったら仆が笑ったら,
如果你笑了而我也笑了的话,

世界が思い出すかもしれないね,
说不定这世界就会想起我们了呢。

预告:

  • DAG 计数 .
  • 强连通图计数 .

定义序列 \(\{a_n\}\) 的图论生成函数(GGF)为

\[\mathbf A(z)=\sum_{n}\dfrac{a_n}{2^{\binom j2}}\dfrac{z^n}{n!} \]

(按理来说应该是二元的 \(\mathbf A(z,w)\),但是应用全是 \(w=1\) 就省了)

下面所有 EGF 是大写 Roman 体(\(\TeX\)\mathrm),所有 GGF 是大写粗体(\(\TeX\)\mathbf),所有序列是小写斜体(\(\TeX\)\mathit),对于同一个大小写不敏感的字母,EGF,GGF 和序列相对应 .

探讨一下 GGF 卷积,令 \(\mathbf C(z)=\mathbf A(z)\mathbf B(z)\),则:

\[\begin{aligned}c_n&=[z^n]\mathbf C(z)\\&=2^{\binom n2}n!\cdot [z^n]\left(\sum_{n}\dfrac{a_n}{2^{\binom j2}}\dfrac{z^n}{n!}\right)\left(\sum_{n}\dfrac{b_n}{2^{\binom j2}}\dfrac{z^n}{n!}\right)\\&=\sum_{i+j=n}\binom ni2^{ij}a_ib_j\end{aligned} \]

对应到组合意义,则相当于对 \(\{a\}\)\(\{b\}\) 对应的族 \(\mathcal A\)\(\mathcal B\),从 \(\mathcal A\) 中选 \(i\) 个点,\(\mathcal B\) 中选 \(j\) 个点,给它们分配标号,然后中间随意连边 .

这样形成的族叫做 \(\mathcal A\)\(\mathcal B\) 的 arrow product .

我们定义两个 EGF \(\mathrm A(z)\)\(\mathrm B(z)\) 的指数型 Hadamard 积为

\[\mathrm A(z)\odot\mathrm B(z)=\sum_{n\ge 0}a_nb_n\dfrac{z^n}{n!} \]

\(\mathrm G(z)\) 为任意无向图的 EGF,\(\mathbf D(z)\) 为任意有向图的 GGF,\(\mathbf{Set}(x)\) 为没有边的图(点集)的 GGF,那么有:

\[\begin{aligned}&\mathrm G(z)=\mathbf D(z)=\sum_n2^{\binom n2}\dfrac{z^n}{n!}\\&\mathbf{Set}(x)=\sum_n\dfrac1{2^{\binom n2}}\dfrac{z^n}{n!}\end{aligned} \]

同时,根据定义可以得到,对于任意序列 \(\{a\}\),其 EGF \(\mathrm A(z)\) 与 GGF \(\mathbf A(z)\) 的关系为

\[\begin{aligned}&\mathrm A(z)=\mathrm G(z)\odot\mathbf A(z)\\&\mathbf A(z)=\mathbf{Set}(z)\odot\mathrm A(z)\end{aligned} \]

\(\mathbf{DAG}(x,z)\) 为固定点数和零入度点数的 DAG 个数的 GGF,\(\mathbf{DAG}(x,z)\) 为仅固定点数的 GGF .

考虑从一张 \(d\) 个点的,没有边的图向 DAG 任意连边。那么最终得到的 DAG 中至少有 \(d\) 个零入度点 . 于是我们可以得到下式:

\[\mathbf{Set}(zt)\mathbf{DAG}(z)=\mathbf{DAG}(z,t+1) \]

\(\mathbf{Set}(zt)\)\(zt\) 的意义是每个点一定是一个零入度点,\(\mathbf{DAG}(z,t+1)\)\(t+1\) 的意义为,让 \(t\) 的指数标记至少有几个零入度点 . 换句话说,每个零入度点可以被标记也可以不被标记 .

代入 \(t=-1\),则有 \(\mathbf{Set}(-z)\mathbf{DAG}(z)=\mathbf{DAG}(z,0)\),显而易见 \(\mathbf{DAG}(z,0)=1\),于是

\[\mathbf{DAG}(z)=\dfrac{1}{\mathbf{Set}(-z)} \]

注意:这里认为空图不是强连通图 .

\(\mathrm{SCC}(z)\)\(\mathbf{SCC}(z)\) 为固定点数的强连通图数量的 EGF 和 GGF .

考虑任意图缩点之后会变成 DAG,DAG 中每个点都会是一个强连通分量 . 我们称 DAG 中的零入度点对应的强连通分量为类源 SCC(source-like SCC),然后令 \(\mathbf{D}(z,t)\) 为固定点数和类源 SCC 数的有向图个数的 GGF .

则有:

\[\mathbf{Set}(z)\odot\exp(t\cdot\mathrm{SCC}(z))\mathbf D(z)=\mathbf D(z,t+1) \]

这里的 \(\exp\) 是将标号重新分配到各个类源 SCC 中,\(\odot\) 一下 \(\bf Set\) 是为了 EGF -> GGF .

代入 \(z=-1\)

\[\mathbf{Set}(z)\odot\exp(-\mathrm{SCC}(z))\mathbf D(z)=\mathbf D(z,0) \]

也就是

\[\mathbf{Set}(z)\odot\exp(-\mathrm{SCC}(z))=\dfrac1{\mathbf D(z)} \]

两边同时 \(\odot\,\mathrm G(z)\)

\[\mathrm G(z)\odot\mathbf{Set}(z)\odot\exp(-\mathrm{SCC}(z))=\mathrm G(z)\odot\dfrac1{\mathbf D(z)} \]

然后跳一点步可以化为

\[\exp(-\mathrm{SCC}(z))=\mathrm G(z)\odot\dfrac1{\mathrm G(z)} \]

也就是

\[\mathrm{SCC}(z)=-\ln\left(\mathrm G(z)\odot\dfrac1{\mathrm G(z)}\right) \]

参考文献:

原文地址:https://www.cnblogs.com/CDOI-24374/p/16573643.html