グラフ(graph)とは、頂点とよばれる対象の集合 $V$ と、相異なる 2 頂点の組(辺)の集合 $E\subset[V]^2$ からなる離散構造 $G=(V,E)$ のことであり、対象の中身を捨てて「どの 2 つの対象が結ばれているか」だけを残したものである。交通網、通信網、知人関係、分子構造などが同じ言葉で扱え、辺の長さや図の上の位置は構造の一部ではない。隣接・接続、歩道・道・閉路(長さ $3$ 以上)、連結性、補グラフ、同型といった基本語がグラフの上で定められ、完全グラフ $K_n$、閉路グラフ $C_n$、道グラフ $P_n$、二部グラフ、木が代表例である。向きを持つ辺を許す有向グラフ、平行辺を許す多重グラフはその変種であり、$n$ 頂点のグラフの辺数は $\binom{n}{2}$ 以下、固定した $n$ 元頂点集合上のグラフは $2^{\binom{n}{2}}$ 個ある。
集合 $V$ に対し、$V$ の相異なる 2 元からなる部分集合全体を $[V]^2:=\{\{u,v\}\mid u,v\in V,\ u\neq v\}$ と書く。単に「グラフ」というときは、通常は次の単純無向グラフを指す。向きを持つ辺、同じ頂点対を結ぶ複数の辺、頂点から自身への辺を許す変種は、後の def-graph-variants で扱う。
グラフ(graph)、詳しくは単純無向グラフ(simple undirected graph)とは、集合 $V$ と $E\subset[V]^2$ の組 $G=(V,E)$ のことをいう。$V$ の元を $G$ の頂点(vertex)、$E$ の元を $G$ の辺(edge)といい、$V=V(G)$、$E=E(G)$ とも書く。辺 $\{u,v\}$ を $uv$ とも書く。$uv=vu$ である。
$|V|$ を $G$ の位数(order)といい $|G|$ とも書く。$|E|$ を $G$ の大きさ(size)といい $e(G)$ とも書く。位数が有限のグラフを有限グラフ、そうでないグラフを無限グラフという。頂点を持たないグラフ $(\emptyset,\emptyset)$ も許す。
「単純」とは、頂点から自身への辺(ループ)と、同じ頂点対を結ぶ複数の辺(平行辺)を持たないことをいい、「無向」とは $uv$ と $vu$ を区別しないことをいう。辺の集合 $E$ は $V$ 上の対称関係かつ非反射関係である二項関係と同じ情報を持つ。すなわち、$u\,R\,v\iff uv\in E$ と定めれば $R$ は対称($u\,R\,v\Rightarrow v\,R\,u$)かつ非反射的($u\,R\,u$ とはならない)であり、逆にそのような $R$ から $E:=\{\{u,v\}\mid u\,R\,v\}$ が定まる。本記事では特に断らない限り有限グラフを扱うが、定義自体は無限グラフでもそのまま通用する。
$G=(V,E)$ をグラフとする。
頂点 $v$ に接続する辺の本数、すなわち $|N_G(v)|$ を $v$ の次数といい、$\deg_G(v)$ または $d_G(v)$ と書く。次数と、その総和が辺数の 2 倍に等しいという握手補題については 次数(グラフ) を参照する。
$G=(V,E)$ をグラフとする。
単純グラフでは辺 $v_{i-1}v_i$ は頂点 $v_{i-1},v_i$ から定まるので、歩道は頂点の列だけで指定できる。閉路の定義にある条件 $\ell\ge3$ は本質的である。$\ell=1$ の閉歩道は $v_0v_0\in E$ を要するので単純グラフには存在せず、$\ell=2$ の閉歩道 $u,v,u$ は辺 $uv$ を往復するだけのものであって、閉路とはみなさない(ex-graph-counterexample-closed-walk)。したがって単純グラフの閉路の長さは常に $3$ 以上である。道は歩道であり、歩道が存在すれば同じ端点を結ぶ道が存在する(距離(グラフ) の補題「歩道からの道の取り出し」)。
グラフ $G=(V,E)$ が連結(connected)であるとは、$V\neq\emptyset$ であって、任意の 2 頂点 $u,v\in V$ に対し $u$ と $v$ を結ぶ道が存在することをいう。$V$ 上の関係「$u$ と $v$ を結ぶ道が存在する」は同値関係であり(prop-graph-connected-components)、その各同値類 $C$ に対し、$C$ の頂点と、両端点が $C$ に属する辺すべてからなるグラフ $G[C]:=(C,\ E\cap[C]^2)$ を $G$ の連結成分(connected component)という。
グラフ $G=(V,E)$ の補グラフ(complement)とは、$G$ で隣接していない頂点対をすべて辺で結んだグラフ $\overline{G}:=(V,\ [V]^2\setminus E)$ のことをいう。$G^c$ とも書く。
頂点集合が交わらない 2 つのグラフ $G$、$H$ に対し、$G\cup H:=(V(G)\cup V(H),\ E(G)\cup E(H))$ を $G$ と $H$ の非交和(disjoint union)といい、これに $V(G)$ の各頂点と $V(H)$ の各頂点を結ぶ辺をすべて加えたグラフ
$$G+H:=\bigl(V(G)\cup V(H),\ E(G)\cup E(H)\cup\{\{v,w\}\mid v\in V(G),\ w\in V(H)\}\bigr)$$
を $G$ と $H$ の結合(join)という。
グラフ $G=(V,E)$ から $G'=(V',E')$ への同型(isomorphism)とは、全単射 $f\colon V\to V'$ であって、任意の $u,v\in V$ について
$$uv\in E\iff f(u)f(v)\in E'$$
となるものをいう。同型が存在するとき $G$ と $G'$ は同型(isomorphic)であるといい、$G\cong G'$ と書く。
同型なグラフは頂点の名前だけが異なるグラフであり、グラフの構造を論じるときは同型なグラフを同一視することが多い。「$G$ が $K_3$ を含む」のような言い方も、通常は $K_3$ と同型な部分グラフを含むという意味である。
グラフ $H=(W,F)$ が $G=(V,E)$ の部分グラフであるとは $W\subset V$ かつ $F\subset E$ となることをいい、$H\subset G$ と書く。$F=E\cap[W]^2$ となるものが $W$ の誘導部分グラフ $G[W]$、$W=V$ となるものが全域部分グラフである。連結成分 $G[C]$ は誘導部分グラフの例である。これらの定義と性質の詳細は 部分グラフ に譲る。
グラフの概念には次の変種がある。
有向グラフ $D=(V,A)$ において、頂点の列 $v_0,\dots,v_\ell$ で各 $i$ について $(v_{i-1},v_i)\in A$ となるものを有向歩道といい、向きを無視して $(v_{i-1},v_i)$ または $(v_i,v_{i-1})$ が $A$ に属することだけを要求したものを向きを無視した歩道という。有向道・有向閉路、向きを無視した道・閉路も同様に定める。多重グラフでは歩道を頂点と辺の交互列 $v_0,e_1,v_1,\dots,e_\ell,v_\ell$($\partial(e_i)=\{v_{i-1},v_i\}$)として指定する必要があり、平行辺 $e\neq e'$ を持つ 2 頂点 $u,v$ について $u,e,v,e',u$ を長さ $2$ の閉路とみなす流儀がある。有向グラフの入次数・出次数は 次数(グラフ) で扱う。詳しくは 有向グラフ、多重グラフ を参照する。
グラフとは、都市と道路、人と知人関係、計算機と通信路のように、「対象」と「2 つの対象の間の結びつき」だけを取り出した構造である。対象を頂点、結びつきを辺として表し、対象の中身や辺の長さ・位置はいったん忘れる。グラフは紙の上に点と線で描いて考えるが、線の長さや交差は構造の一部ではなく、頂点の名前を付け替えても接続関係が保たれるなら同型な同じ構造である。グラフ理論の基本的な問いは、次数のような各頂点の局所的な量と、連結性・閉路・彩色のような全体の構造とを結びつけることにある。
$|V|=n$ とする。$E=[V]^2$ であるグラフ、すなわち相異なる 2 頂点がすべて隣接するグラフを $n$ 頂点の完全グラフ(complete graph)といい、$K_n$ と書く(完全グラフ)。その辺数は $|[V]^2|=\binom{n}{2}=n(n-1)/2$ であり、各頂点の次数は $n-1$ である。$E=\emptyset$ であるグラフを $n$ 頂点の空グラフ(empty graph)といい、$E_n$ と書く(空グラフ)。$\overline{K_n}=E_n$、$\overline{E_n}=K_n$ である。$K_1=E_1$ は 1 個の頂点だけからなり、$K_3$ は三角形である。$n\ge1$ のとき $K_n$ は連結であり、$n\ge2$ のとき $E_n$ は連結でない。
$n\ge1$ に対し、頂点 $1,2,\dots,n$ と辺 $\{i,i+1\}$($1\le i\le n-1$)からなるグラフを道グラフ $P_n$ という。$P_n$ は連結で、$n-1$ 本の辺を持ち、列 $1,2,\dots,n$ はその中の長さ $n-1$ の道である。$n\ge3$ に対し、$P_n$ に辺 $\{n,1\}$ を加えたグラフを閉路グラフ $C_n$ という。$C_n$ は連結で、$n$ 本の辺を持ち、すべての頂点の次数は $2$ であり、列 $1,2,\dots,n,1$ はその中の長さ $n$ の閉路である。$C_3=K_3$ である。$C_n$ を $n$ 角形ともいう。
頂点集合が、交わらない 2 つの部分集合 $A,B$ に分割され($\{A,B\}$ は頂点集合の集合の分割である)、すべての辺が $A$ の頂点と $B$ の頂点を結ぶグラフを二部グラフという。$A$ の各頂点と $B$ の各頂点をすべて辺で結んだ二部グラフが完全二部グラフであり、$|A|=m$、$|B|=n$ のものを $K_{m,n}$ と書く。$K_{m,n}=E_m+E_n$ であり、辺数は $mn$ である。$K_{1,n}$ を星グラフ(star)という。偶閉路 $C_{2k}$ と道グラフ $P_n$ は二部グラフであり、奇閉路 $C_{2k+1}$ は二部グラフでない(二部グラフ)。
辺 $uv$ を持つグラフにおいて、列 $u,v,u$ は長さ $2$ の閉歩道であるが、閉路ではない。満たす性質:閉歩道である($v_0=v_2=u$、$v_1=v$ は相異なる)。満たさない定義条件:長さが $3$ 以上である。破る含意:「始点以外の頂点が相異なる閉歩道 ⇒ 閉路」は成り立たない。この列は辺 $uv$ を 2 度使うので小道でもない。閉路の定義に $\ell\ge3$ を課すのは、この往復を閉路から除くためである。
また、頂点 $v$ を共有する 2 つの三角形 $v,a,b$ と $v,c,d$ を順に一周する列 $v,a,b,v,c,d,v$ は、辺をすべて相異なる 6 本使うので閉小道であるが、頂点 $v$ を途中で再訪するので閉路ではない。満たす性質:閉小道である。満たさない定義条件:$v_1,\dots,v_\ell$ が相異なる。破る含意:「閉小道 ⇒ 閉路」は成り立たない。
1 つの辺が 3 頂点 $\{u,v,w\}$ を同時に結ぶ構造は、辺が $[V]^2$ の元でないので本記事のグラフではない。辺として頂点集合の任意の部分集合を許す構造はハイパーグラフ(hypergraph)とよばれる。これは 3 本の辺 $uv,vw,wu$ を持つ三角形 $K_3$ とも異なる。満たす性質:頂点の集合と、頂点の部分集合の集合からなる。満たさない定義条件:各辺が相異なる 2 頂点からなる。
$n$ 頂点の有限グラフ $G$ について
$$0\le|E(G)|\le\binom{n}{2}$$
が成り立つ。右の等号が成り立つことと $G$ が完全グラフ $K_n$ であることは同値である。
固定した $n$ 元集合 $V$ を頂点集合とするグラフは、ちょうど $2^{\binom{n}{2}}$ 個ある。
頂点集合 $V$ 上のグラフは辺集合 $E\subset[V]^2$ によって一意に定まるので、その個数は $[V]^2$ の冪集合の元の個数 $2^{|[V]^2|}=2^{\binom{n}{2}}$ に等しい。$\square$
これは頂点に名前を付けたまま数えた個数であり、同型なグラフを同一視した個数ではない。たとえば $n=3$ のとき $2^3=8$ 個のグラフがあるが、同型を除けば辺数 $0,1,2,3$ の 4 種類しかない。
グラフ $G=(V,E)$ の頂点の関係「$u$ と $v$ を結ぶ道が存在する」は $V$ 上の同値関係である。各連結成分 $G[C]$ は連結であり、$G$ のすべての辺はちょうど 1 つの連結成分に属する。$G$ が連結であることと、連結成分がちょうど 1 個であることは同値である。
長さ $0$ の道 $v$ により関係は反射的である。$u$ と $v$ を結ぶ道 $v_0,\dots,v_\ell$ を逆順にした $v_\ell,\dots,v_0$ は $v$ と $u$ を結ぶ道なので対称的である。$u$ と $v$ を結ぶ道と $v$ と $w$ を結ぶ道を $v$ でつなぐと $u$ と $w$ を結ぶ歩道が得られ、歩道があれば道がある(距離(グラフ) の補題「歩道からの道の取り出し」)ので推移的である。
$C$ を同値類とし、$u,v\in C$ とする。$u$ と $v$ を結ぶ $G$ の道 $v_0,\dots,v_\ell$ の各頂点 $v_i$ は $u$ と道 $v_0,\dots,v_i$ で結ばれるので $C$ に属し、各辺 $v_{i-1}v_i$ は両端点が $C$ に属するので $G[C]$ の辺である。よってこの道は $G[C]$ の道であり、$C\neq\emptyset$ とあわせて $G[C]$ は連結である。辺 $uv\in E$ について、$u,v$ は長さ $1$ の道で結ばれるので同じ同値類 $C$ に属し、$uv\in E\cap[C]^2$ である。異なる同値類は交わらないので、$uv$ が属する連結成分は $G[C]$ に限る。
$G$ が連結なら、$V\neq\emptyset$ で任意の 2 頂点が同値なので同値類は $V$ の 1 個だけである。逆に同値類が $V$ の 1 個だけなら、$V\neq\emptyset$ で任意の 2 頂点が道で結ばれるので $G$ は連結である。$\square$
次数の総和については握手補題
$$\sum_{v\in V(G)}\deg_G(v)=2|E(G)|$$
が成り立ち、その系として次数が奇数の頂点は偶数個である。証明は 次数(グラフ) に譲る。
グラフの定義には流儀の差がある。Die17 §1.1 は本記事と同じく単純無向グラフを「グラフ」とよび、平行辺やループを許すものを多重グラフとして区別する。Bol02 第 I 章も同様である。一方 BM08 は最初から平行辺とループを許す一般のグラフを扱い、単純グラフを特別な場合として位置づける。本サイトでは def-graph を既定とし、制約を外すときは有向グラフ・多重グラフ・ループを許す多重グラフと明記する。無限グラフも標準的な対象であり、Die17 第 8 章で扱われている。有限性を用いる定理では仮定を明示する。
閉小道と閉歩道の名称にも流儀の差がある。文献によっては本記事の閉小道(circuit)を「閉歩道」、本記事の閉路(cycle)を「サイクル」「回路」とよぶことがある。本記事では、すべての辺をちょうど 1 度ずつ通る閉小道を Euler 閉路(Euler閉路)、すべての頂点を通る閉路を Hamilton 閉路(Hamilton閉路)とよぶ。
グラフは多くの分野で用いられる。組合せ論では彩色・マッチング・木・平面グラフ・極値問題を頂点と辺の有限構造として研究し、アルゴリズムでは幅優先探索・深さ優先探索・最短路問題・最大流最小カット定理によって到達可能性や最適経路を計算する。代数学・幾何学ではCayleyグラフや隣接行列を通じて群やグラフのスペクトルに接続し、確率論ではランダムグラフにおいて連結性や巨大成分の出現する閾値を調べる。
Mathpediaは寄付と、参考文献の書籍リンク(Amazonアソシエイト)の紹介料で運営されています。 支援について / 寄付する