組合せ論 において 、 記号法は 組合せオブジェクトを数える 手法です 。オブジェクトの内部構造を使用して、それらの 生成関数 の式を導き出します。この手法は主に フィリップ・フラジョレと関連しており、 ロバート・セジウィック との共著である 解析的組合せ論 のパート A で詳しく 説明されています。また、本の残りの部分では、複素解析を使用して対応する生成関数の漸近的および確率的結果を得る方法を説明しています。
2 世紀にわたって、生成関数は、 その係数の対応する再帰性を通じて出現しました ( ベルヌーイ 、 オイラー 、 アーサー・ケイリー 、シュレーダー、 ラマヌジャン 、
リオルダン 、 クヌース 、 コンテ [fr] などの独創的な研究に見られるように)。その後、生成関数が初期の離散的組合せオブジェクトの他の多くの側面を捉えていること、そしてこれをより直接的な形式的な方法で行うことができることが徐々に認識されました。いくつかの組合せ構造の再帰的性質は、いくつかの同型性を介して、対応する生成関数の注目すべき恒等式に変換されます。 Pólya の研究に続いて 、1970年代には、 Foata と Schützenberger [1]による 順列の研究、BenderとGoldmanによるプレハブの研究、 [2] 、 Joyalによる 組合せ種 に関する研究に見られるように、組合せクラスとその生成関数を指定するための言語の一般的な使用によって、この精神でさらなる進歩がなされました 。 [3]
列挙におけるこの記号法は、「ブリサードの記号法」とは無関係であることに注意してください。ブリサードの記号法は、単に陰影計算 の古い別名です 。
組合せ論における記号的方法は、組合せ構造の多くの分析の最初のステップを構成し、その後、高速計算スキーム、漸近特性と 極限法則 、 ランダム生成 につながり、それらはすべて コンピュータ代数 による自動化に適しています。
組み合わせ構造のクラス
生成関数によって与えられたオブジェクトをn 個のスロットのセットに分配する問題を考えます。ここで、次数 n の 順列群 G が スロットに作用して、満たされたスロット構成の同値関係を作成し、この同値関係に関する構成の重みによって構成の生成関数について尋ねます。ここで、構成の重みは、スロット内のオブジェクトの重みの合計です。まず、ラベル付きの場合とラベルなしの場合でこの問題を解決する方法を説明し、その解決策を使用して、 組み合わせ構造のクラス を作成する動機付けを行います。
ポリア 列挙定理は、 ラベル なしの場合にこの問題を解決します。f ( z )を オブジェクトの 通常の生成関数(OGF)とすると、構成のOGFは置換 サイクルインデックスによって与えられます。
ず
(
グ
)
(
ふ
(
ず
)
、
ふ
(
ず
2
)
、
…
、
ふ
(
ず
ん
)
)
。
{\displaystyle Z(G)(f(z),f(z^{2}),\ldots ,f(z^{n}).}
ラベル付きの場合、 オブジェクトの 指数生成関数 (EGF) g ( z )を使用し、 ラベル付き列挙定理 を適用すると、構成のEGFは次のように表される。
グ
(
ず
)
ん
|
グ
|
。
{\displaystyle {\frac {g(z)^{n}}{|G|}}.}
ラベルなしの場合は PET を、ラベル付きの場合はラベル付き列挙定理を使用して、満たされたスロット構成を列挙することができます。次に、スロットのセットが複数あり、それぞれに置換グループが作用している場合に得られる構成の生成関数について考えます。明らかに、軌道は交差せず、それぞれの生成関数を追加できます。たとえば、セット X に含まれるいくつかのオブジェクトの長さが 2 または 3 のラベルなしシーケンスを列挙するとします 。 スロットのセットが 2 つあり、最初のセットには 2 つのスロットが含まれ、2 番目のセットには 3 つのスロットが含まれます。最初のセットに作用するグループは で 、2 番目のスロットに作用するグループは です。これを X の次の形式的な 冪級数 で表します 。
え
2
{\displaystyle E_{2}}
え
3
{\displaystyle E_{3}}
バツ
2
/
え
2
+
バツ
3
/
え
3
{\displaystyle X^{2}/E_{2}\;+\;X^{3}/E_{3}}
ここで、 という用語は G および による軌道の集合を表すために使用され 、これは明らかに、 X からのオブジェクトを繰り返して n 個のスロットに分配するプロセスを表します。同様に、ラベル付きオブジェクトの集合 X から任意の長さのサイクルを作成するというラベル付き問題を考えます。これにより、巡回群の次の一連のアクションが生成されます。
バツ
ん
/
グ
{\displaystyle X^{n}/G}
バツ
ん
=
バツ
×
⋯
×
バツ
{\displaystyle X^{n}=X\times \cdots \times X}
バツ
/
C
1
+
バツ
2
/
C
2
+
バツ
3
/
C
3
+
バツ
4
/
C
4
+
⋯
。
{\displaystyle X/C_{1}\;+\;X^{2}/C_{2}\;+\;X^{3}/C_{3}\;+\;X^{4}/C_{4}\;+\cdots .}
明らかに、このような商(軌道)のべき級数には、置換群に関して意味を割り当てることができます。ここで、 n 次群を対称群の 共役類に制限すると 、一意の因数分解領域が形成されます。(同じ共役類からの 2 つの群に関する軌道は同型です。)これが次の定義の根拠となります。
塩素
(
S
ん
)
{\displaystyle \operatorname {Cl} (S_{n})}
S
ん
{\displaystyle S_{n}}
組み合わせ構造のクラスは 形式的なシリーズである
C
∈
いいえ
[
あ
]
{\displaystyle {\mathcal {C}}\in \mathbb {N} [{\mathfrak {A}}]}
C
=
∑
ん
≥
1
∑
グ
∈
塩素
(
S
ん
)
c
グ
(
バツ
ん
/
グ
)
{\displaystyle {\mathcal {C}}=\sum _{n\geq 1}\sum _{G\in \operatorname {Cl} (S_{n})}c_{G}(X^{n}/G)}
ここで (「A」は「原子」の略)はUFDの素数の集合であり 、
あ
{\displaystyle {\mathfrak {A}}}
{
塩素
(
S
ん
)
}
ん
≥
1
{\displaystyle \{\operatorname {Cl} (S_{n})\}_{n\geq 1}}
c
グ
∈
いいえ
。
{\displaystyle c_{G}\in \mathbb {N} .}
以下では表記を少し簡略化して、例えば次のように書きます。
え
2
+
え
3
そして
C
1
+
C
2
+
C
3
+
⋯
。
{\displaystyle E_{2}+E_{3}{\text{ および }}C_{1}+C_{2}+C_{3}+\cdots .}
上記のクラスの場合。
フラジョレ・セジウィック基本定理
記号的組合せ論のフラジョレ・セジウィック理論の定理は、組合せ構造を含む方程式をこれらの構造の生成関数の方程式に直接(そして自動的に)変換することを可能にする記号演算子を作成することによって、ラベル付きおよびラベルなしの組合せクラスの列挙問題を扱います。
を組合せ構造のクラスと する。X に OGFがある 場合 のOGFと、 X にEGFがある 場合 の EGFは 次のように与えられる。
C
∈
いいえ
[
あ
]
{\displaystyle {\mathcal {C}}\in \mathbb {N} [{\mathfrak {A}}]}
ふ
(
ず
)
{\displaystyle F(z)}
C
(
バツ
)
{\displaystyle {\mathcal {C}}(X)}
ふ
(
ず
)
{\displaystyle f(z)}
グ
(
ず
)
{\displaystyle G(z)}
C
(
バツ
)
{\displaystyle {\mathcal {C}}(X)}
グ
(
ず
)
{\displaystyle g(z)}
ふ
(
ず
)
=
∑
ん
≥
1
∑
グ
∈
塩素
(
S
ん
)
c
グ
ず
(
グ
)
(
ふ
(
ず
)
、
ふ
(
ず
2
)
、
…
、
ふ
(
ず
ん
)
)
{\displaystyle F(z)=\sum _{n\geq 1}\sum _{G\in \operatorname {Cl} (S_{n})}c_{G}Z(G)(f(z),f(z^{2}),\ldots ,f(z^{n}))}
そして
グ
(
ず
)
=
∑
ん
≥
1
(
∑
グ
∈
塩素
(
S
ん
)
c
グ
|
グ
|
)
グ
(
ず
)
ん
。
{\displaystyle G(z)=\sum _{n\geq 1}\left(\sum _{G\in \operatorname {Cl} (S_{n})}{\frac {c_{G}}{|G|}}\right)g(z)^{n}.}
ラベル付きの場合、 X に サイズ 0 の要素が含まれていない という追加の要件があります。 に 1 を追加して 、空セットのコピーが 1 つ存在することを示すと便利な場合があります。 と の両方に意味を割り当てることができます (最も一般的な例は、ラベルなしセットの場合)。 定理を証明するには、PET (ポリア列挙定理) とラベル付き列挙定理を適用するだけです。
グ
(
ず
)
{\displaystyle G(z)}
C
∈
ず
[
あ
]
{\displaystyle {\mathcal {C}}\in \mathbb {Z} [{\mathfrak {A}}]}
C
∈
質問
[
あ
]
。
{\displaystyle {\mathcal {C}}\in \mathbb {Q} [{\mathfrak {A}}].}
この定理の威力は、組み合わせクラスを表す生成関数の演算子を構築できる点にあります。組み合わせクラス間の構造方程式は、対応する生成関数の方程式に直接変換されます。さらに、ラベル付きの場合、式から、 原子 zに置き換えて結果の演算子を計算し、それを EGF に適用できることは明らかです。次に、最も重要な演算子の構築に進みます。読者は、 サイクル インデックス ページのデータと比較することをお勧めします 。
グ
(
ず
)
{\displaystyle g(z)}
シーケンス演算子 シーケンス
この演算子はクラスに対応します
1
+
え
1
+
え
2
+
え
3
+
⋯
{\displaystyle 1+E_{1}+E_{2}+E_{3}+\cdots }
シーケンスを表します。つまり、スロットは並べ替えられず、空のシーケンスが1つだけあります。
ふ
(
ず
)
=
1
+
∑
ん
≥
1
ず
(
え
ん
)
(
ふ
(
ず
)
、
ふ
(
ず
2
)
、
…
、
ふ
(
ず
ん
)
)
=
1
+
∑
ん
≥
1
ふ
(
ず
)
ん
=
1
1
−
ふ
(
ず
)
{\displaystyle F(z)=1+\sum _{n\geq 1}Z(E_{n})(f(z),f(z^{2}),\ldots ,f(z^{n}))=1+\sum _{n\geq 1}f(z)^{n}={\frac {1}{1-f(z)}}}
そして
グ
(
ず
)
=
1
+
∑
ん
≥
1
(
1
|
え
ん
|
)
グ
(
ず
)
ん
=
1
1
−
グ
(
ず
)
。
{\displaystyle G(z)=1+\sum _{n\geq 1}\left({\frac {1}{|E_{n}|}}\right)g(z)^{n}={ \frac {1}{1-g(z)}}.}
サイクル演算子 サイク
この演算子はクラスに対応します
C
1
+
C
2
+
C
3
+
⋯
{\displaystyle C_{1}+C_{2}+C_{3}+\cdots }
つまり、少なくとも1つのオブジェクトを含むサイクルです。
ふ
(
ず
)
=
∑
ん
≥
1
ず
(
C
ん
)
(
ふ
(
ず
)
、
ふ
(
ず
2
)
、
…
、
ふ
(
ず
ん
)
)
=
∑
ん
≥
1
1
ん
∑
d
∣
ん
φ
(
d
)
ふ
(
ず
d
)
ん
/
d
{\displaystyle F(z)=\sum _{n\geq 1}Z(C_{n})(f(z),f(z^{2}),\ldots ,f(z^{n}))=\sum _{n\geq 1}{\frac {1}{n}}\sum _{d\mid n}\varphi (d)f(z^{d})^{n/d}}
または
ふ
(
ず
)
=
∑
け
≥
1
φ
(
け
)
∑
メートル
≥
1
1
け
メートル
ふ
(
ず
け
)
メートル
=
∑
け
≥
1
φ
(
け
)
け
ログ
1
1
−
ふ
(
ず
け
)
{\displaystyle F(z)=\sum _{k\geq 1}\varphi (k)\sum _{m\geq 1}{\frac {1}{km}}f(z^{k})^ {m}=\sum _{k\geq 1}{\frac {\varphi (k)}{k}}\log {\frac {1}{1-f(z^{k})}}}
そして
グ
(
ず
)
=
∑
ん
≥
1
(
1
|
C
ん
|
)
グ
(
ず
)
ん
=
ログ
1
1
−
グ
(
ず
)
。
{\displaystyle G(z)=\sum _{n\geq 1}\left({\frac {1}{|C_{n}|}}\right)g(z)^{n}=\log {\frac {1}{1-g(z)}}.}
この演算子は、集合演算子SET および特定の次数への制限 とともに、 ランダム順列統計 を計算するために使用されます。この演算子には、偶数サイクルと奇数サイクルという 2 つの便利な制限があります。
ラベル付き偶数サイクル 演算子
CYCeven は
C
2
+
C
4
+
C
6
+
⋯
{\displaystyle C_{2}+C_{4}+C_{6}+\cdots }
その結果
G
(
z
)
=
∑
n
≥
1
(
1
|
C
2
n
|
)
g
(
z
)
2
n
=
1
2
log
1
1
−
g
(
z
)
2
.
{\displaystyle G(z)=\sum _{n\geq 1}\left({\frac {1}{|C_{2n}|}}\right)g(z)^{2n}={\frac {1}{2}}\log {\frac {1}{1-g(z)^{2}}}.}
これは、ラベル付き奇数サイクル演算子 CYC odd
C
1
+
C
3
+
C
5
+
⋯
{\displaystyle C_{1}+C_{3}+C_{5}+\cdots }
は次のように与えられる。
G
(
z
)
=
log
1
1
−
g
(
z
)
−
1
2
log
1
1
−
g
(
z
)
2
=
1
2
log
1
+
g
(
z
)
1
−
g
(
z
)
.
{\displaystyle G(z)=\log {\frac {1}{1-g(z)}}-{\frac {1}{2}}\log {\frac {1}{1-g(z)^{2}}}={\frac {1}{2}}\log {\frac {1+g(z)}{1-g(z)}}.}
多重集合/集合演算子 MSET / セット
このシリーズは
1
+
S
1
+
S
2
+
S
3
+
⋯
{\displaystyle 1+S_{1}+S_{2}+S_{3}+\cdots }
つまり、対称群がスロットに適用されます。これにより、ラベルなしの場合は多重集合が作成され、ラベル付きの場合は集合が作成されます (ラベルは、異なるスロットに配置される集合から同じオブジェクトの複数のインスタンスを区別するため、ラベル付きの場合は多重集合は作成されません)。ラベル付きの場合とラベルなしの場合の両方に空集合を含めます。
ラベルなしの場合は関数を使って行う。
M
(
f
(
z
)
,
y
)
=
∑
n
≥
0
y
n
Z
(
S
n
)
(
f
(
z
)
,
f
(
z
2
)
,
…
,
f
(
z
n
)
)
{\displaystyle M(f(z),y)=\sum _{n\geq 0}y^{n}Z(S_{n})(f(z),f(z^{2}),\ldots ,f(z^{n}))}
となることによって
M
(
f
(
z
)
)
=
M
(
f
(
z
)
,
1
)
.
{\displaystyle {\mathfrak {M}}(f(z))=M(f(z),1).}
評価
すると
M
(
f
(
z
)
,
1
)
{\displaystyle M(f(z),1)}
F
(
z
)
=
exp
(
∑
ℓ
≥
1
f
(
z
ℓ
)
ℓ
)
.
{\displaystyle F(z)=\exp \left(\sum _{\ell \geq 1}{\frac {f(z^{\ell })}{\ell }}\right).}
ラベル付けされたケースでは、
G
(
z
)
=
1
+
∑
n
≥
1
(
1
|
S
n
|
)
g
(
z
)
n
=
∑
n
≥
0
g
(
z
)
n
n
!
=
exp
g
(
z
)
.
{\displaystyle G(z)=1+\sum _{n\geq 1}\left({\frac {1}{|S_{n}|}}\right)g(z)^{n}=\sum _{n\geq 0}{\frac {g(z)^{n}}{n!}}=\exp g(z).}
ラベル付きの場合、演算子は SET で表され、ラベルなしの場合、演算子は MSET で表されます。これは、ラベル付きの場合、多重集合が存在しない(ラベルは複合組み合わせクラスの構成要素を区別する)のに対し、ラベルなしの場合、多重集合と集合が存在し、後者は次のように表されるからです。
F
(
z
)
=
exp
(
∑
ℓ
≥
1
(
−
1
)
ℓ
−
1
f
(
z
ℓ
)
ℓ
)
.
{\displaystyle F(z)=\exp \left(\sum _{\ell \geq 1}(-1)^{\ell -1}{\frac {f(z^{\ell })}{\ell }}\right).}
手順
通常、 サイズ 0 の単一のオブジェクト ( 中立オブジェクト 、 と表記されることが多い )を含む 中立クラス と、サイズ 1 の単一のオブジェクトを含む1 つ以上の 原子クラスから始めます。次に、 互いに素な和 、積、 集合 、 シーケンス 、 多重集合 など のさまざまな単純な演算を含む 集合論的 関係により、既に定義されているクラスに基づいて、より複雑なクラスを定義します。これらの関係は 再帰的 で ある場合があります。記号的組合せ論の優れた点は、集合論的 (または 記号的 ) 関係が、生成関数を含む
代数的 関係に直接変換される 点にあります。
E
{\displaystyle {\mathcal {E}}}
ϵ
{\displaystyle \epsilon }
Z
{\displaystyle {\mathcal {Z}}}
この記事では、組み合わせクラスを表すためにスクリプトの大文字を使用し、生成関数には対応する普通の文字を使用するという規則に従います (つまり、クラスには 生成関数 があります )。
A
{\displaystyle {\mathcal {A}}}
A
(
z
)
{\displaystyle A(z)}
記号的組合せ論でよく使われる生成関数には 2 種類あります。ラベルなしオブジェクトの組合せクラスに使用される 通常の生成関数 と、 ラベル付きオブジェクトのクラスに使用される
指数生成関数です。
および の生成関数(通常または指数)がそれぞれ、および で ある ことを示すのは簡単です 。 互いに素な和集合も単純で、互いに素な集合 およびの場合 、 が成り立ちます 。 他の演算に対応する関係は、ラベル付き構造またはラベルなし構造(および通常の生成関数または指数生成関数)のどちらについて話しているのかによって異なります。
E
{\displaystyle {\mathcal {E}}}
Z
{\displaystyle {\mathcal {Z}}}
E
(
z
)
=
1
{\displaystyle E(z)=1}
Z
(
z
)
=
z
{\displaystyle Z(z)=z}
B
{\displaystyle {\mathcal {B}}}
C
{\displaystyle {\mathcal {C}}}
A
=
B
∪
C
{\displaystyle {\mathcal {A}}={\mathcal {B}}\cup {\mathcal {C}}}
A
(
z
)
=
B
(
z
)
+
C
(
z
)
{\displaystyle A(z)=B(z)+C(z)}
組み合わせ和
和集合を 互いに素な和集合に限定すること は重要ですが、記号的組合せ論の正式な仕様では、どの集合が互いに素であるかを追跡するのは面倒すぎます。代わりに、交差がないことを保証する構成を使用します ( ただし、これは演算の意味にも影響するので注意してください )。2 つの集合 との 組合せ和 を定義する際に、各集合のメンバーを個別のマーカーでマークします。たとえば、 のメンバーについては 、 のメンバーについては です 。この場合、組合せ和は次のようになります。
A
{\displaystyle {\mathcal {A}}}
B
{\displaystyle {\mathcal {B}}}
∘
{\displaystyle \circ }
A
{\displaystyle {\mathcal {A}}}
∙
{\displaystyle \bullet }
B
{\displaystyle {\mathcal {B}}}
A
+
B
=
(
A
×
{
∘
}
)
∪
(
B
×
{
∙
}
)
{\displaystyle {\mathcal {A}}+{\mathcal {B}}=({\mathcal {A}}\times \{\circ \})\cup ({\mathcal {B}}\times \{\bullet \})}
これは形式的には加算に対応する演算です。
ラベルのない構造
ラベルのない構造では、 通常の生成関数 (OGF)が使用されます。シーケンスのOGFは 次のように定義されます。
A
n
{\displaystyle A_{n}}
A
(
x
)
=
∑
n
=
0
∞
A
n
x
n
{\displaystyle A(x)=\sum _{n=0}^{\infty }A_{n}x^{n}}
製品
2つの組合せクラスと の 積 は 、 順序付きペアのサイズをペアの要素のサイズの合計として定義することによって指定されます。したがって、 およびについては となります 。これはかなり直感的な定義です。ここで、 サイズ n の の要素の数 は
A
{\displaystyle {\mathcal {A}}}
B
{\displaystyle {\mathcal {B}}}
a
∈
A
{\displaystyle a\in {\mathcal {A}}}
b
∈
B
{\displaystyle b\in {\mathcal {B}}}
|
(
a
,
b
)
|
=
|
a
|
+
|
b
|
{\displaystyle |(a,b)|=|a|+|b|}
A
×
B
{\displaystyle {\mathcal {A}}\times {\mathcal {B}}}
∑
k
=
0
n
A
k
B
n
−
k
.
{\displaystyle \sum _{k=0}^{n}A_{k}B_{n-k}.}
OGFの定義といくつかの初等代数を用いて、次のことを示すことができる。
A
=
B
×
C
{\displaystyle {\mathcal {A}}={\mathcal {B}}\times {\mathcal {C}}}
暗示する
A
(
z
)
=
B
(
z
)
⋅
C
(
z
)
.
{\displaystyle A(z)=B(z)\cdot C(z).}
順序
で表される シーケンス構築は 次 のように定義されます。
A
=
G
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {G}}\{{\mathcal {B}}\}}
G
{
B
}
=
E
+
B
+
(
B
×
B
)
+
(
B
×
B
×
B
)
+
⋯
.
{\displaystyle {\mathfrak {G}}\{{\mathcal {B}}\}={\mathcal {E}}+{\mathcal {B}}+({\mathcal {B}}\times {\mathcal {B}})+({\mathcal {B}}\times {\mathcal {B}}\times {\mathcal {B}})+\cdots .}
言い換えれば、シーケンスは中立要素、またはの要素 、または順序付きペア、順序付きトリプルなどです。これは、関係
B
{\displaystyle {\mathcal {B}}}
A
(
z
)
=
1
+
B
(
z
)
+
B
(
z
)
2
+
B
(
z
)
3
+
⋯
=
1
1
−
B
(
z
)
.
{\displaystyle A(z)=1+B(z)+B(z)^{2}+B(z)^{3}+\cdots ={\frac {1}{1-B(z)}}.}
セット
で表される 集合 (または 冪集合 ) 構成は 次 のように定義
される。
A
=
P
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {P}}\{{\mathcal {B}}\}}
P
{
B
}
=
∏
β
∈
B
(
E
+
{
β
}
)
,
{\displaystyle {\mathfrak {P}}\{{\mathcal {B}}\}=\prod _{\beta \in {\mathcal {B}}}({\mathcal {E}}+\{\beta \}),}
これは関係につながる
A
(
z
)
=
∏
β
∈
B
(
1
+
z
|
β
|
)
=
∏
n
=
1
∞
(
1
+
z
n
)
B
n
=
exp
(
ln
∏
n
=
1
∞
(
1
+
z
n
)
B
n
)
=
exp
(
∑
n
=
1
∞
B
n
ln
(
1
+
z
n
)
)
=
exp
(
∑
n
=
1
∞
B
n
⋅
∑
k
=
1
∞
(
−
1
)
k
−
1
z
n
k
k
)
=
exp
(
∑
k
=
1
∞
(
−
1
)
k
−
1
k
⋅
∑
n
=
1
∞
B
n
z
n
k
)
=
exp
(
∑
k
=
1
∞
(
−
1
)
k
−
1
B
(
z
k
)
k
)
,
{\displaystyle {\begin{aligned}A(z)&{}=\prod _{\beta \in {\mathcal {B}}}(1+z^{|\beta |})\\&{}=\prod _{n=1}^{\infty }(1+z^{n})^{B_{n}}\\&{}=\exp \left(\ln \prod _{n=1}^{\infty }(1+z^{n})^{B_{n}}\right)\\&{}=\exp \left(\sum _{n=1}^{\infty }B_{n}\ln(1+z^{n})\right)\\&{}=\exp \left(\sum _{n=1}^{\infty }B_{n}\cdot \sum _{k=1}^{\infty }{\frac {(-1)^{k-1}z^{nk}}{k}}\right)\\&{}=\exp \left(\sum _{k=1}^{\infty }{\frac {(-1)^{k-1}}{k}}\cdot \sum _{n=1}^{\infty }B_{n}z^{nk}\right)\\&{}=\exp \left(\sum _{k=1}^{\infty }{\frac {(-1)^{k-1}B(z^{k})}{k}}\right),\end{aligned}}}
拡大が
ln
(
1
+
u
)
=
∑
k
=
1
∞
(
−
1
)
k
−
1
u
k
k
{\displaystyle \ln(1+u)=\sum _{k=1}^{\infty }{\frac {(-1)^{k-1}u^{k}}{k}}}
4 行目から 5 行目まで移動するために使用されました。
マルチセット
多重集合構成は 、 集合 構成の一般化です。集合構成では、各要素は0回または1回出現します。多重集合では、各要素は任意の回数出現します。したがって、
A
=
M
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {M}}\{{\mathcal {B}}\}}
M
{
B
}
=
∏
β
∈
B
G
{
β
}
.
{\displaystyle {\mathfrak {M}}\{{\mathcal {B}}\}=\prod _{\beta \in {\mathcal {B}}}{\mathfrak {G}}\{\beta \}.}
これは次のような関係につながる。
A
(
z
)
=
∏
β
∈
B
(
1
−
z
|
β
|
)
−
1
=
∏
n
=
1
∞
(
1
−
z
n
)
−
B
n
=
exp
(
ln
∏
n
=
1
∞
(
1
−
z
n
)
−
B
n
)
=
exp
(
∑
n
=
1
∞
−
B
n
ln
(
1
−
z
n
)
)
=
exp
(
∑
k
=
1
∞
B
(
z
k
)
k
)
,
{\displaystyle {\begin{aligned}A(z)&{}=\prod _{\beta \in {\mathcal {B}}}(1-z^{|\beta |})^{-1}\\&{}=\prod _{n=1}^{\infty }(1-z^{n})^{-B_{n}}\\&{}=\exp \left(\ln \prod _{n=1}^{\infty }(1-z^{n})^{-B_{n}}\right)\\&{}=\exp \left(\sum _{n=1}^{\infty }-B_{n}\ln(1-z^{n})\right)\\&{}=\exp \left(\sum _{k=1}^{\infty }{\frac {B(z^{k})}{k}}\right),\end{aligned}}}
ここで、上記の集合構築と同様に、 を展開し 、和を交換し、 の OGF を代入します 。
ln
(
1
−
z
n
)
{\displaystyle \ln(1-z^{n})}
B
{\displaystyle {\mathcal {B}}}
その他の基本的な構成
その他の重要な基本構造は次のとおりです。
サイクル 構造 ( )は、循環回転が別個とは見なされない点を除いてシーケンスに似ている。
C
{
B
}
{\displaystyle {\mathfrak {C}}\{{\mathcal {B}}\}}
ポインタ ( )では、 B の各メンバーに、その原子の1つを指す中立(サイズ0)ポインタが追加されます。
Θ
B
{\displaystyle \Theta {\mathcal {B}}}
置換 ( )では、 Bのメンバーの各原子が C のメンバーに置き換えられます 。
B
∘
C
{\displaystyle {\mathcal {B}}\circ {\mathcal {C}}}
これらの構造の導出はここで示すには複雑すぎます。結果は次のとおりです。
例
これらの基本構成を使用して、多くの組み合わせクラスを構築できます。たとえば、平面 木 (つまり、平面に 埋め込まれた木であり、部分木の順序が重要)のクラスは、 再帰 関係
によって指定されます。
G
=
Z
×
SEQ
{
G
}
.
{\displaystyle {\mathcal {G}}={\mathcal {Z}}\times \operatorname {SEQ} \{{\mathcal {G}}\}.}
言い換えれば、木は長さ1のルートノードと一連の部分木から成ります。これは次のようになります。
G
(
z
)
=
z
1
−
G
(
z
)
{\displaystyle G(z)={\frac {z}{1-G(z)}}}
G ( z ) を求める には、
1
−
G
(
z
)
{\displaystyle 1-G(z)}
G
(
z
)
−
G
(
z
)
2
=
z
{\displaystyle G(z)-G(z)^{2}=z}
zを引いて二次方程式の公式を使ってG(z)を解くと、
G
(
z
)
=
1
−
1
−
4
z
2
.
{\displaystyle G(z)={\frac {1-{\sqrt {1-4z}}}{2}}.}
もう 1 つの例 (古典的な組合せ論の問題) は、 整数分割 です。まず、各整数のサイズがその値である
正の整数のクラスを定義します。
I
{\displaystyle {\mathcal {I}}}
I
=
Z
×
SEQ
{
Z
}
{\displaystyle {\mathcal {I}}={\mathcal {Z}}\times \operatorname {SEQ} \{{\mathcal {Z}}\}}
のOGF は
I
{\displaystyle {\mathcal {I}}}
I
(
z
)
=
z
1
−
z
.
{\displaystyle I(z)={\frac {z}{1-z}}.}
ここで、パーティションのセットを 次のように
定義します。
P
{\displaystyle {\mathcal {P}}}
P
=
MSET
{
I
}
.
{\displaystyle {\mathcal {P}}=\operatorname {MSET} \{{\mathcal {I}}\}.}
OGF は
P
{\displaystyle {\mathcal {P}}}
P
(
z
)
=
exp
(
I
(
z
)
+
1
2
I
(
z
2
)
+
1
3
I
(
z
3
)
+
⋯
)
.
{\displaystyle P(z)=\exp \left(I(z)+{\frac {1}{2}}I(z^{2})+{\frac {1}{3}}I(z^{3})+\cdots \right).}
残念ながら、 の閉じた形式は存在しません 。しかし、OGF を使用して 再帰関係 を導出したり、解析的組合せ論のより高度な方法を使用して、計数列の 漸近挙動 を計算したりすることができます。
P
(
z
)
{\displaystyle P(z)}
仕様と指定可能なクラス
上記の基本的な構成により、 仕様 の概念を定義することができます。この仕様により、複数の組み合わせクラスを持つ再帰方程式のセットを使用できます。
正式には、組み合わせクラスのセットの仕様は、 方程式 のセットです 。ここで、は 式であり、そのアトムは、 およびであり 、その演算子は、上記にリストされた基本構造です。
(
A
1
,
…
,
A
r
)
{\displaystyle ({\mathcal {A}}_{1},\dots ,{\mathcal {A}}_{r})}
r
{\displaystyle r}
A
i
=
Φ
i
(
A
1
,
…
,
A
r
)
{\displaystyle {\mathcal {A}}_{i}=\Phi _{i}({\mathcal {A}}_{1},\dots ,{\mathcal {A}}_{r})}
Φ
i
{\displaystyle \Phi _{i}}
E
,
Z
{\displaystyle {\mathcal {E}},{\mathcal {Z}}}
A
i
{\displaystyle {\mathcal {A}}_{i}}
組み合わせ構造のクラスは、 仕様を許容する場合、
構築可能 または 指定可能であると言われます。
たとえば、葉の深さが偶数(それぞれ奇数)である木の集合は、 と の 2 つのクラスを持つ仕様を使用して定義できます 。 これらのクラスは、方程式 と を満たす必要があります 。
A
even
{\displaystyle {\mathcal {A}}_{\text{even}}}
A
odd
{\displaystyle {\mathcal {A}}_{\text{odd}}}
A
odd
=
Z
×
Seq
≥
1
A
even
{\displaystyle {\mathcal {A}}_{\text{odd}}={\mathcal {Z}}\times \operatorname {Seq} _{\geq 1}{\mathcal {A}}_{\text{even}}}
A
even
=
Z
×
Seq
A
odd
{\displaystyle {\mathcal {A}}_{\text{even}}={\mathcal {Z}}\times \operatorname {Seq} {\mathcal {A}}_{\text{odd}}}
ラベル付けされた構造
オブジェクトの各原子が非負の整数ラベルを持ち、これらのラベルがそれぞれ異なる場合、そのオブジェクトは 弱くラベル 付けされます。さらに、これらのラベルが連続する整数を構成する場合、 オブジェクトは( 強く または 適切に )ラベル 付けされます 。 注: 一部の組み合わせクラスは、ラベル付き構造またはラベルなし構造として指定するのが最適ですが、両方の指定が容易に許可されるものもあります。ラベル付き構造の良い例は、 ラベル付きグラフ のクラスです 。
[
1
…
n
]
{\displaystyle [1\ldots n]}
ラベル付けされた構造では、 指数生成関数 (EGF)が使用される。配列のEGFは 次のように定義される。
A
n
{\displaystyle A_{n}}
A
(
x
)
=
∑
n
=
0
∞
A
n
x
n
n
!
.
{\displaystyle A(x)=\sum _{n=0}^{\infty }A_{n}{\frac {x^{n}}{n!}}.}
製品
ラベル付き構造の場合、ラベルなし構造とは異なる積の定義を使用する必要があります。実際、単に直積を使用した場合、結果の構造は適切にラベル付けされません。代わりに、いわゆる ラベル付き積 を使用します。これは次のように表されます。
A
⋆
B
.
{\displaystyle {\mathcal {A}}\star {\mathcal {B}}.}
と の ペアについて 、2 つの構造を 1 つの構造に結合したいとします。結果を適切にラベル付けするには、および の原子に何らかの再ラベル付けが必要です 。元のラベルの順序と一致する再ラベル付けに限定して注意します。再ラベル付けを行う方法は複数あることに注意してください。つまり、各メンバーのペアは、積の 1 つのメンバーを決定するのではなく、新しいメンバーのセットを決定します。この構築の詳細については、 ラベル付き列挙定理 のページを参照してください 。
β
∈
B
{\displaystyle \beta \in {\mathcal {B}}}
γ
∈
C
{\displaystyle \gamma \in {\mathcal {C}}}
β
{\displaystyle \beta }
γ
{\displaystyle \gamma }
この発展を助けるために、関数 を定義しましょう。これは 、引数として(おそらく弱く)ラベル付けされたオブジェクトを取り 、順序一貫性のある方法でその原子を再ラベル付けして、 が適切にラベル付けされるようにします。次に、2つのオブジェクト とに対するラベル付き積を 次のように
定義します。
ρ
{\displaystyle \rho }
α
{\displaystyle \alpha }
ρ
(
α
)
{\displaystyle \rho (\alpha )}
α
{\displaystyle \alpha }
β
{\displaystyle \beta }
α
⋆
β
=
{
(
α
′
,
β
′
)
:
(
α
′
,
β
′
)
is well-labelled,
ρ
(
α
′
)
=
α
,
ρ
(
β
′
)
=
β
}
.
{\displaystyle \alpha \star \beta =\{(\alpha ',\beta '):(\alpha ',\beta '){\text{ is well-labelled, }}\rho (\alpha ')=\alpha ,\rho (\beta ')=\beta \}.}
最後に、2つのクラス とラベル付き積 は
A
{\displaystyle {\mathcal {A}}}
B
{\displaystyle {\mathcal {B}}}
A
⋆
B
=
⋃
α
∈
A
,
β
∈
B
(
α
⋆
β
)
.
{\displaystyle {\mathcal {A}}\star {\mathcal {B}}=\bigcup _{\alpha \in {\mathcal {A}},\beta \in {\mathcal {B}}}(\alpha \star \beta ).}
EGFは、サイズが と のオブジェクトに対して、再ラベル付けを行う方法 がある ことに注目することで導出できます 。したがって、サイズが のオブジェクトの総数 は
k
{\displaystyle k}
n
−
k
{\displaystyle n-k}
(
n
k
)
{\displaystyle {n \choose k}}
n
{\displaystyle n}
∑
k
=
0
n
(
n
k
)
A
k
B
n
−
k
.
{\displaystyle \sum _{k=0}^{n}{n \choose k}A_{k}B_{n-k}.}
この 項の
二項畳み込み関係は、EGFを掛け合わせることと同等である。
A
(
z
)
⋅
B
(
z
)
.
{\displaystyle A(z)\cdot B(z).}
順序
シーケンスの構築は 、 ラベルなしの場合と同様に定義されます。
A
=
G
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {G}}\{{\mathcal {B}}\}}
G
{
B
}
=
E
+
B
+
(
B
⋆
B
)
+
(
B
⋆
B
⋆
B
)
+
⋯
{\displaystyle {\mathfrak {G}}\{{\mathcal {B}}\}={\mathcal {E}}+{\mathcal {B}}+({\mathcal {B}}\star {\mathcal {B}})+({\mathcal {B}}\star {\mathcal {B}}\star {\mathcal {B}})+\cdots }
そしてまた、上記と同様に、
A
(
z
)
=
1
1
−
B
(
z
)
{\displaystyle A(z)={\frac {1}{1-B(z)}}}
セット
ラベル付き構造では、要素の集合は 正確にシーケンスに対応します 。これは、いくつかの順列が一致する可能性があるラベルなしの場合とは異なります。したがって 、
については、
k
{\displaystyle k}
k
!
{\displaystyle k!}
A
=
P
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {P}}\{{\mathcal {B}}\}}
A
(
z
)
=
∑
k
=
0
∞
B
(
z
)
k
k
!
=
exp
(
B
(
z
)
)
{\displaystyle A(z)=\sum _{k=0}^{\infty }{\frac {B(z)^{k}}{k!}}=\exp(B(z))}
サイクル
サイクルもラベルなしの場合より簡単です。長さ のサイクルは異なるシーケンス に対応します 。したがって 、 について
は、
k
{\displaystyle k}
k
{\displaystyle k}
A
=
C
{
B
}
{\displaystyle {\mathcal {A}}={\mathfrak {C}}\{{\mathcal {B}}\}}
A
(
z
)
=
∑
k
=
0
∞
B
(
z
)
k
k
=
ln
(
1
1
−
B
(
z
)
)
.
{\displaystyle A(z)=\sum _{k=0}^{\infty }{\frac {B(z)^{k}}{k}}=\ln \left({\frac {1}{1-B(z)}}\right).}
箱入り商品
ラベル付き構造では、最小ボックス積は、最小ラベルを持つ積 の要素を必要とする元の積のバリエーションです。同様に、 同じ方法で、
で表される最大ボックス積も定義できます。すると、
A
min
=
B
◻
⋆
C
{\displaystyle {\mathcal {A}}_{\min }={\mathcal {B}}^{\square }\star {\mathcal {C}}}
B
{\displaystyle {\mathcal {B}}}
A
max
=
B
◼
⋆
C
{\displaystyle {\mathcal {A}}_{\max }={\mathcal {B}}^{\blacksquare }\star {\mathcal {C}}}
A
min
(
z
)
=
A
max
(
z
)
=
∫
0
z
B
′
(
t
)
C
(
t
)
d
t
.
{\displaystyle A_{\min }(z)=A_{\max }(z)=\int _{0}^{z}B'(t)C(t)\,dt.}
または同等に、
A
min
′
(
t
)
=
A
max
′
(
t
)
=
B
′
(
t
)
C
(
t
)
.
{\displaystyle A_{\min }'(t)=A_{\max }'(t)=B'(t)C(t).}
例
増加ケイリー木は、根から分岐する任意の枝に沿ったラベルが増加するシーケンスを形成する、ラベル付きの非平面根付き木です。次に、 そのような木のクラスをとします。再帰仕様は、
L
{\displaystyle {\mathcal {L}}}
L
=
Z
◻
⋆
SET
(
L
)
.
{\displaystyle {\mathcal {L}}={\mathcal {Z}}^{\square }\star \operatorname {SET} ({\mathcal {L}}).}
その他の基本的な構成
演算子
CYC even 、 CYC odd 、 SET even 、
および
SET odd は
、偶数と奇数の長さのサイクルと、偶数と奇数の基数のセットを表します。
例
第二種スターリング数は 構造分解を用いて導出し、解析することができる。
SET
(
SET
≥
1
(
Z
)
)
.
{\displaystyle \operatorname {SET} (\operatorname {SET} _{\geq 1}({\mathcal {Z}})).}
分解
SET
(
CYC
(
Z
)
)
{\displaystyle \operatorname {SET} (\operatorname {CYC} ({\mathcal {Z}}))}
は、第一種 符号なしスターリング数の研究や、 ランダム順列の統計 の導出に使用されます 。記号的組合せ論におけるスターリング数に関連する 指数生成関数の詳細な検討については、 「記号的組合せ論におけるスターリング数と指数生成関数」 のページを参照してください 。
参照
参考文献
^ ドミニク・フォアタ ; シュッツェンベルガー、マルセル-P. (1970年)。 Théorie Géométrique des Polynômes Eulériens 。数学の講義ノート。 Vol. 138. arXiv : math/0508232 。 土井 : 10.1007/BFb0060799 。 ISBN 978-3-540-04927-2 。
^ Bender, Edward A.; Goldman, Jay R. (1971). 「生成関数の列挙的使用」. インディアナ大学数学ジャーナル . 20 (8): 753–764. doi : 10.1512/iumj.1971.20.20060 .
^ ジョヤル、アンドレ (1981). 「一連の形式を組み合わせた理論」。 数学の進歩 。 42 :1-82。 土井 :10.1016/0001-8708(81)90052-9。
François Bergeron、Gilbert Labelle、Pierre Leroux、 「Théorie des espèces et combinatoire des Structure arborescentes」 、LaCIM、モントリオール (1994)。英語版: Combinatorial Species and Tree-like Structures 、Cambridge University Press (1998)。
Philippe Flajolet および Robert Sedgewick、 「Analytic Combinatorics」 、Cambridge University Press (2009)。(オンラインで入手可能: http://algo.inria.fr/flajolet/Publications/book.pdf)
ミカ・ホフリ、 「アルゴリズムの分析:計算方法と数学ツール」 、オックスフォード大学出版局(1995年)。