{{위키데이터 속성 추적}}
[[파일:Graph-Cartesian-product.svg|thumb|right|그래프 데카르트 곱의 예. 5개의 꼭짓점 및 5개의 변을 갖는 그래프와 4개의 꼭짓점 및 3개의 변을 갖는 그래프의 데카르트 곱은 5×4=20개의 꼭짓점을 가지며, 5×3+4×5=35개의 변을 가진다.]]
[[파일:Cartesian product graph.svg|thumb|right|그래프 데카르트 곱의 예. 5개의 꼭짓점 및 6개의 변을 갖는 그래프와 2개의 꼭짓점 및 1개의 변을 갖는 그래프의 데카르트 곱은 5×2=10개의 꼭짓점을 가지며, 5×1+2×6=17개의 변을 가진다.]]
[[그래프 이론]]에서 '''그래프 데카르트 곱'''(graph Descartes곱, {{llang|en|Cartesian product of graphs}})은 두 [[그래프]]를 합치는 [[이항 연산]]이다. 이렇게 얻은 그래프의 [[꼭짓점]]의 수는 원래 두 그래프의 꼭짓점의 수들의 곱과 같다.

== 정의 ==
[[그래프]]의 족 <math>(\Gamma_i)_{i\in I}</math>의 '''그래프 데카르트 곱'''
:<math>\Gamma = {\prod\!\!\!\!\!\!\!\!}\!\coprod_{i\in I}  \Gamma_i</math>
은 다음과 같은 [[그래프]]이다.
:<math>\mathsf V(\Gamma) = \prod_{i\in I}\mathsf V(\Gamma_i)</math>
:<math>uv \in \mathsf E(\Gamma) \iff \exists i\in I \colon \left( u_iv_i \in \mathsf E(\Gamma_i) \land \forall j \in I \setminus\{i\} \colon u_i = v_j \right)</math>
즉, 데카르트 곱 <math>\Gamma</math>는 다음과 같은 그래프이다.
* 그 꼭짓점 <math>v \in \mathsf V(\Gamma)</math>은 각 성분 <math>\Gamma_i</math>의 꼭짓점들의 열 <math>(v_i)_{i\in I}</math>, <math>v_i \in \mathsf V(\Gamma_i)</math>이다.
* 두 꼭짓점 <Math>u,v \in \mathsf V(\Gamma)</math>이 변으로 연결되어 있을 [[필요 충분 조건]]은 어떤 성분 <math>i\in I</math>에 대하여, <math>u_i</math>와 <math>v_i</math>가 [[그래프]] <math>\Gamma_i</math>에서 변으로 연결되며, 나머지 성분들이 모두 일치하는 것이다.

두 그래프 <math>\Gamma</math>, <math>\Gamma'</math>의 데카르트 곱은 <math>\Gamma\,\square\, \Gamma'</math>으로 표기한다.

== 성질 ==
그래프 데카르트 곱은 (표준적 그래프 동형 아래) [[결합 법칙]]과 [[교환 법칙]]을 따른다. 그래프 데카르트 곱의 [[항등원]]은 한원소 그래프 <math>\mathsf K_1</math>이다.

두 [[그래프]] <math>\Gamma</math>, <math>\Gamma'</math>에 대하여 다음이 성립한다.
:<math>\left|\mathsf V\left( {\prod\!\!\!\!\!\!\!\!}\!\coprod_{i\in I}  \Gamma_i\right)\right| = \prod_{i\in I}|\mathsf V(\Gamma_i)|</math>
:<math>\left|\mathsf E\left({\prod\!\!\!\!\!\!\!\!}\!\coprod_{i\in I}  \Gamma_i\right)\right| = 
\sum_{i\in I}|\mathsf E(\Gamma_i)|\prod_{j\in I\setminus\{i\}} |\mathsf V(\Gamma_j)|</math>
(무한 그래프의 경우 이는 [[기수 (수학)|기수]]의 연산으로 해석한다.)

=== 인접 행렬 ===
두 [[유한 그래프]] <math>\Gamma</math>, <math>\Gamma'</math>의 데카르트 곱의 [[인접 행렬]]은 다음과 같다.
:<math>\mathsf A_{\Gamma\,\square\Gamma'} = \mathsf A_\Gamma \otimes 1_{\mathsf V(\Gamma')} + 1_{\mathsf V(\Gamma)} \otimes \mathsf A_{\Gamma'}</math>
여기서 <math>\otimes</math>는 행렬의 [[크로네커 곱]]이다.

특히, <math>\Gamma\,\square\,\Gamma'</math>의 스펙트럼([[인접 행렬]]의 [[고윳값]]의 [[중복집합]])은 <math>\Gamma</math>와 <math>\Gamma'</math>의 스펙트럼의 합이다.
:<math>\operatorname{Spec}(\Gamma \,\square\,\Gamma') = \operatorname{Spec}(\Gamma) + \operatorname{Spec}(\Gamma') = \{\lambda + \lambda' \colon \lambda \in \operatorname{Spec}\Gamma,\;\lambda' \in \operatorname{Spec}\Gamma'\}</math>

=== 채색수 ===
유한한 [[채색수]]를 가진, 하나 이상의 꼭짓점을 갖는 두 (유한 또는 무한) [[그래프]] <math>\Gamma</math>, <math>\Gamma'</math>의 데카르트 곱의 [[채색수]]는 각 그래프의 채색수 가운데 [[최댓값]]이다. (두 그래프 가운데 하나가 꼭짓점을 갖지 않는다면 그 데카르트 곱의 채색수는 자명하게 0이다.) 
:<math>\chi(\Gamma\,\square\,\Gamma') = 
\begin{cases}
\max_{i\in I}\{\chi(\Gamma),\chi(\Gamma')\} & (\Gamma \ne \varnothing \ne \Gamma')\\
0 & (\varnothing \in \{\Gamma,\Gamma'\})
\end{cases}
</math>
<div class="mw-collapsible mw-collapsed toccolours">
'''증명:'''
<div class="mw-collapsible-content">
<math>\Gamma</math> 또는 <math>\Gamma'</math> 가운데 적어도 하나가 꼭짓점을 갖지 않는 경우는 자명하다. 따라서 둘 다 공그래프가 아니라고 가정하자.

편의상
:<math>N = \max\{\chi(\Gamma),\chi(\Gamma')\}</math>
으로 표기하자. 채색
:<math>c \colon \mathsf V(\Gamma) \to \mathbb Z/(N)</math>
:<math>c' \colon \mathsf V(\Gamma') \to \mathbb Z/(N)</math>
이 주어졌을 때,
:<math>C \colon \mathsf V(\Gamma\,\square\,\Gamma') \to \mathbb Z/(N)</math>
:<math>C \colon (v,v') \mapsto c(v) + c'(v') </math>
는 <math>\Gamma\,\square\,\Gamma</math> 위의 채색을 이룬다. 따라서
:<math>\chi(\Gamma\,\square\,\Gamma') \le N</math>
이다. 그러나 <math>\Gamma</math>와 <math>\Gamma'</math>은 둘 다 <math>\Gamma\,\square\,\Gamma'</math>의 [[부분 그래프]]이다. 따라서
:<math>\chi(\Gamma\,\square\,\Gamma') \ge N</math>
이다.
</div></div>

특히, 두 그래프의 데카르트 곱이 [[이분 그래프]]일 [[필요 충분 조건]]은 다음과 같다.
* 둘 다 [[이분 그래프]]이거나, 또는 둘 가운데 하나가 <math>\varnothing</math>이다.

=== 데카르트 곱 분해 ===
한원소 그래프 <math>\mathsf K_1</math>이 아닌 두 그래프의 데카르트 곱으로 표현될 수 없는 그래프를 '''데카르트 소 그래프'''(Descartes素graph,{{llang|en|Cartesian-prime graph}})라고 하자.

모든 [[연결 그래프|연결]] [[유한 그래프]]는 소 그래프들의 데카르트 곱으로 표현될 수 있으며, 이러한 표현은 (순서를 무시하면) 유일하다. 그러나 연결 그래프가 아닌 그래프의 경우 이러한 표현은 일반적으로 유일하지 않다. 예를 들어, 다음이 성립한다.
:<math>(\mathsf K_1 \sqcup \mathsf K_2 \sqcup \mathsf K_2^{\square 2}) \,\square\, (\mathsf K_1 \sqcup \mathsf K_2^{\square 3}) = (\mathsf K_1 \sqcup \mathsf K_2^{\square2} \sqcup \mathsf K_2^{\square4})\,\square(\mathsf K_1 \sqcup \mathsf K_2)</math>

== 예 ==
작은 그래프의 데카르트 곱에 대하여 다음이 성립한다. 여기서 <math>\mathsf K_i</math>는 [[완전 그래프]]이며, <math>\bar{\mathsf K}_i</math>는 [[무변 그래프]]이며, <math>\mathsf C_i</math>는 [[순환 그래프]]이며, <math>\mathsf P_i</math>는 [[경로 그래프]]이다. <math>\Gamma</math>는 임의의 [[그래프]]이다.
:<math>\mathsf K_1 \, \square\, \Gamma = \Gamma</math>
:<math>\mathsf K_2 \,\square\, \mathsf K_2 = \mathsf C_4</math>
:<math>\mathsf K_2 \, \square\, \mathsf C_4 = </math> [[정육면체 그래프]]
:<math>\bar{\mathsf K}_i \,\square\,\bar{\mathsf K}_j = \bar{\mathsf K}_{ij}</math>
:<math>\bar{\mathsf K}_i \,\square\, \Gamma = \Gamma^{\sqcup i}</math>

<gallery>
Circle graph C4.svg|<math>\mathsf K_2 \,\square\,\mathsf K_2</math>
0-regular graph.svg|<math>\bar{\mathsf K}_2 \,\square\,\bar{\mathsf K}_3</math>
1-regular graph.svg|<math>\bar{\mathsf K}_3 \,\square\,\mathsf K_2</math>
2-regular graph.svg|<math>\bar{\mathsf K}_2 \,\square\, \mathsf K_3</math>
3-regular graph.svg|<math>\mathsf K_3\,\square\,\mathsf K_2</math>
Cube skeleton.svg|<math>\mathsf K_2\,\square\,\mathsf K_2\,\square\,\mathsf K_2</math>
3-3 duoprism ortho square.png|<math>\mathsf P_3\,\square\,\mathsf P_3</math>
Paley9-perfect.svg|<math>\mathsf K_3\,\square\,\mathsf K_3</math>
Pentagonal prismatic graph.png|<math>\mathsf C_5\,\square\,\mathsf K_2</math>
Hexagonal prismatic graph.png|<math>\mathsf C_6\,\square\,\mathsf K_2</math>
Median graph.svg|<math>\mathsf K_2\,\square\,\mathsf K_2\,\square\,\mathsf P_3</math>
4-3 duoprism.png|<math>\mathsf K_2\,\square\,\mathsf K_2\,\square\,\mathsf K_3</math>
Heptagonal prismatic graph.png|<math>\mathsf C_7\,\square\,\mathsf K_2</math>
5-3 duoprism.png|<math>\mathsf C_5 \,\square\,\mathsf K_3</math>
Hypercubecentral.svg|<math>\mathsf K_2\,\square\,\mathsf K_2\,\square\,\mathsf K_2\,\square\,\mathsf K_2</math>
Ladder graph L8.svg|<math>\mathsf P_8\,\square\,\mathsf K_2</math>
Rook's graph.svg|<math>\mathsf K_8\,\square\,\mathsf K_8</math>
</gallery>

== 역사 ==
그래프 데카르트 곱은 1912년에 [[알프레드 노스 화이트헤드]]와 [[버트런드 러셀]]이 《[[수학 원리]]》 2권에서 최초로 사용하였다.<ref>{{서적 인용|제목=[[수학 원리|Principia Mathematica]]. Volume 2|이름1=Alfred North|성1=Whitehead|저자링크1=알프레드 노스 화이트헤드|이름2=Bertrand|성2=Russell|저자링크2=버트런드 러셀|zbl=43.0093.03|날짜=1912|언어=en}}</ref> 이후 게르트 자비두시({{llang|de|Gert Sabidussi}}, 1929〜)가 1960년에 이 연산을 재발견하였다.<ref>{{저널 인용
 | last = Sabidussi | first = Gert
 | doi = 10.1007/BF01162967
 | journal = Mathematische Zeitschrift
 | mr = 0209177
 | pages = 446–457
 | title = Graph multiplication
 | volume = 72
 | year = 1960 | 언어=en}}</ref>

== 참고 문헌 ==
{{각주}}

== 외부 링크 ==
* {{매스월드|id=GraphCartesianProduct|title=Graph Cartesian product}}

{{전거 통제}}

[[분류:이항연산]]
[[분류:그래프]]