이전 글에서 minimum degree와 cycle의 관계를 활용해서 증명들을 몇 개 했었다. 이 글에서도 minimum degree δ와 cycle, 특히 Hamilton cycle과의 관계를 살펴볼 예정이다.
Hamilton Path, Hamilton Cycle, Hamiltonian Graph
Hamilton path는 그래프의 모든 vertex를 포함하는 path다.
Hamilton cycle은 그래프의 모든 vertex를 포함하는 cycle이다.
Hamiltonian graph는 Hamilton cycle을 포함하는 그래프이다. (Hamilton path를 포함하는 그래프는 traceable graph라고 한다.)
그래프가 Hamilton cycle을 포함하는지 판별하는 문제는 NP-complete다.
Traveling Salesman Problem은 minimum weight Hamilton cycle을 찾는 문제다. (당연히 역시 NP-complete다.)
Dirac's Theorem은 Hamilton cycle이 존재한다는 것을 보장하기 위해서 minimum degree δ가 얼마나 커야 하는지에 관한 정리다.
Dirac's Theorem
n(≥3)개의 vertices를 가진 simple graph의 minimum degree δ가 δ≥n/2를 만족할 때, 그 그래프는 Hamilton cycle을 가진다.
Note. n≥3 조건이 있어야 하는 이유는 그래프가 두개의 vertices와 이 둘을 이어주는 하나의 edge로 구성되어 있는 경우 때문이다. (K2)
이 정리에 대한 3가지 증명을 소개할 것이다. 우선 모든 증명들에서 쓰이는 Lollipop Lemma를 소개하도록 하겠다.
Definition. (x,y)-lollipop
(x,y)-lollipop은 C∩P={y}을 만족하는 cycle C와 xy-path P의 union, C∪P이다. (Lollipop은 lasso나 loop라고도 불리기도 한다.)
(x,y)-lollipop
Notation. Successor v+, Predecessor v−
Orientation이 있는 cycle C위의 한 vertex를 v라고 하자. C위에서 v의 다음 vertex(successor)를 v+로, 이전 vertex(predecessor)를 v−로 부르겠다. 이 notation은 C의 vertices의 subset S로도 연장될 수 있다.
S+:=
Successor and Predecessor of
The Lollipop Lemma
에서 cycle 의 길이 = , path 의 길이 = 을 만족하는 가 -lollipop이라고 하자. 그러면 는 길이가 인 path와 path를 포함한다. 만약에 가 의 longest cycle이고 이 0이 아니라면,에서 이하로 떨어진 위의 vertex는 와 adjacent할 수 없다.
두 번째 문장은 쉽게 이해가 된다. 사실 세 번째 문장도 그다지 어렵지 않다. 에서 거리가 이하로 떨어진 위의 vertices 집합을 이라 하자. 만약 가 에 속한 vertex와 하나라도 adjacent했다면 길이가 더 긴 cycle이 있다는 말이기에 가 longest cycle이라는 것과 모순이 생긴다.
가 에 속한 와 adjacent했다고 가정하자. 그러면 기존의 cycle의 부분을 로 cycle을 더 늘릴 수 있다. { } 부분이 보다 작거나 같은 의 부분이고 [ ] 표시된 부분이 대체된 부분이다. 길이가 최소 1 늘어난 것을 알 수 있다.
굉장히 간단하고 당연해 보이는 이 lemma난 Dirac's Theorem을 보이는 데 큰 역할을 한다.
Dirac's Theorem.개의 vertices를 가진 simple graph의 minimum degree 가 를 만족할 때, 그 그래프는 Hamilton cycle을 가진다.
Proof 1. By choosing a longest cycle
를 에서 길이가 인 longest cycle이라 하자. 우리는 , 즉 임을 알 수 있다. (이전 글의 2 참고, 길이가 최소 인 path가 존재함을 이용한다.) 만약 가 Hamilton cycle이면 증명할 것이 없다. 따라서 가 Hamilton cycle이 아니라고 가정하자. (즉, 라고 가정하자.)
를 -lollipop이라고 하자. 이때 는 길게 잡을 수 있는 만큼 최대한 길게 설정한다. 이 의 length를 이라 하자. 그러면
을 만족한다. (첫 번째 부등식은 조건에서 오고, 두 번째는 에서 오고 마지막 등식은 이 의 크기이기 때문에 성립한다.)
위에서 구한 의 의미를 살펴보자. 의 크기가 minimum degree보다 작기 때문에 에 속한 임의의 vertex가 나머지 모든 vertices에 adjacent해도 그것의 degree가 보다 작다는 뜻이다. 즉, 각에 속한 vertex는 에 속한 vertices 중 적어도 하나와 adjacent하다는 뜻이다. 의 끝점 도 에 속한 vertices 중 적어도 하나와 adjacent하다.
와 adjacent할 수 있는 위의 vertices 후보들을 살펴보자. 우선 Lollipop Lemma에 의해 와 인접한 vertex는 와 이하로 떨어져 있으면 안 된다. 따라서 개 중 개가 제외되어 개가 남는다. 또한 는 consecutive vertices와 adjacent하면 안된다. (가 longest인 것과 모순이 일어나기 때문이다.) 그러면 후보로 총 개가 남는다.
종합하여 의 degree를 살펴보자.
즉, 가 되어 모순이 발생한다.
Note. 이 증명은 Dirac 본인이 한 증명이다.
Proof 2. By choosing a longest path
가 에서 길이 인 longest path라고 하자. 먼저 에 길이를 갖는 cycle 가 있음을 보일 것이다. 만약 와 이 adjacent하면 끝난다. 따라서 과 이 adjacent하지 않다고 가정하자.
를 가장 긴 path로 골랐기 때문에 의 neighbor과 의 neighbor 모두 에 속한다. 와 를 다음과 같이 정의하자:
Intuitive하게 말하자면 는 와 adjacent한 vertex들의 이전 vertex들의 집합이고 는 과 adjacent한 vertex들의 집합니다. 어떤 경우에도 에는 이 포함되지 않으므로
이다. 또한 (Dirac's Theorem의 전제 조건인) 으로
임을 알 수 있다. 위 두 식을 과 종합하면
을 알 수 있다. 에 속한 vertex를 라 하자. 그러면 는 length 인 cycle임을 알 수 있다. (가 에 속한다는 것으로 edge들이 에 속한다는 것을 알 수 있다.)
이제 이 cycle 가 Hamilton cycle임을 보이자. 가 Hamilton cycle이 아니라고 가정하자.를 lollipop이라고 하자. 의 길이를 이라 하자. (은 0이 아니다.) Lollipop Lemma에 의해서 길이 짜리의 path가 존재한다. 처음에 에서 가장 긴 path 의 길이가 이었기 때문에 모순이 발생한다.
Note. 이 증명은 Newman이 1958년에 했다. 그리고 가장 많이 알려진 증명이다.
Proof 3. 앞의 두 증명을 조합
를 에서의 longest cycle이라고 하자. 마찬가지로 가 Hamilton cycle이 아니라고 가정하자. 그러면 이다. 를 -lollipop이라고 하자. (역시나 의 길이는 0이 아니다.) 를 다음과 같이 정의하자.
즉, 은 cycle 위의 vertices, 는 를 제외한 path 위의 vertices, 는 lollipop위의 vertices를 제외한 나머지 vertices다. 를 각각 에서의 degree라고 하자. 우리는 다음과 같은 사실을 알 수 있다.
(i) 위의 consecutive vertices 와 에 대해서 와 , 와 가 동시에 adjacent할 수 없다. (더 긴 cycle 이 생성되기 때문.
(ii) 는 (Lollipop Lemma에 의해) 의 어느 vertex와도 adjacent할 수 없다.
(iii) 와 는 의 한 vertex와 동시에 adjacent할 수 없다. (더 긴 cycle이 생기기 때문.)
여기에 이라는 사실을 추가해 종합한다면
즉, 처음의 가정 을 위반한다.
Note. 이 증명은 Bondy가 1981년에 했다.
Note. Dirac's Theorem의 inductive proof는 알려진 바가 없다.
Corollary of Dirac's Theorem
vertices를 가진 simple graph 가 를 만족한다고 하자. 그러면 는 Hamilton path를 가진다.
증명은 간단하다. 이면 trivial하다. 일 때는 에 새로운 vertex 를 추가하고 기존의 모든 vertices와 연결한다. 그러면 resulting graph는 의 vertices를 가지고 minimum degree가 at least 가 된다. Dirac's Theorem에 의해 길이 짜리 Hamilton cycle이 존재하고, 이 cycle에서 를 제거하면 기존의 그래프에서 Hamilton path가 된다.
Generalization of Dirac's Theorem
Dirac's Theorem은 다양한 방향으로 generalize될 수 있다. 우선 Proof 2를 살펴보자. 잘 보면 조건을 (직접적으로) 사용하지 않고 이보다 더 약한 조건인 을 사용했다. 따라서 똑같은 증명으로 더 stronger theorem을 보일 수 있다.
Ore's Theorem.
의 vertices를 가지는 simple graph 에서 아무 nonadjacent vertices 두 개의 degree를 합했을 때 항상 최소 이면. 는 Hamilton cycle을 갖는다.
Proof 2를 이용하여 추가적으로 뽑아낼 수 있는 것을 더 찾아보자. 인 에서 degree의 sum이 최소 인 두 nonadjacent vertices가 존재하고 이를 와 라고 하자. 과연 어떤 조건 하에 에 Hamilton cycle이 있을까?
에 edge를 추가한 그래프를 라 하자. 그리고 에서 Hamilton cycle 이 있다고 가정하자. 만약 에 edge가 없다면 은 에서도 Hamilton cycle이니, 에 가 반드시 포함된다고 가정하자. 이 뜻은 와 를 endpoint로 갖는 path가 있었다는 것이고 이 path의 길이는 이었을 것이다. 즉 이 path는 proof 2에서 처음에 고른 longest path 이자 모든 vertex를 지나는 spanning path가 된다. 따라서 proof 2에 따라 도 Hamiltonian이라는 것을 알 수 있다.
의 simple graph 에 nonadjacent하며 degree의 sum이 이상인 vertices 와 가 있다고 하자. 만약 가 Hamiltonian이라면 도 그러하다.
이것을 활용해서 Dirac's Theorem을 더 generalize할 수 있다. 현재 보고 있는 그래프에 nonadjacent하면서 degree의 sum이 이상인 두 vertices가 있고 이 둘을 잇는 과정 라고 했을 때 더 이상 그런 vertices pair가 없을 때까지 를 반복해서 나온 그래프를 그것의 closure이라고 하자.
Closure Lemma (Bondy-Chvátal Theorem)
A simple graph is Hamiltonian if and only if its closure is Hamiltonian.
따라서 만약 어떤 graph 의 closure가 complete하다면, (complete graph는 Hamiltonian이기 때문에) 는 Hamiltonian이다. 이 이유로 Dirac's Theorem을 만족하는 graph 는 (minimum degree가 이상이므로) closure를 취하면 complete해지기에 Hamiltonian이라 할 수 있다. 이 아이디어를 이용해서 추가적인 사실을 알아보자.
Chvátal Theorem
인 simple graph 가 degree sequence 를 갖는다고 하자. (.) 만약 이하의 중에서 이고 인 가 존재하지 않는다면, 는 Hamiltonian이다.
조건이 비교적 복잡하지만 천천히 증명해보자. 증명에서는 위의 조건을 만족하는 에 closure를 취했을 때 complete graph임을 모순으로 보인다. 의 closure를 complete가 아닌 graph 라고 하자. 에서의 degree는 에서의 degree보다 크지 않을 테니 를 로 bound할 수 있고, 따라서 만약 에서 조건에 만족하는 가 존재한다면 에서도 만족한다. 우리는 그런 를 찾아서 모순을 보일 것이다.
의 nonadjacent vertices 중 degree sum이 최대인 vertices pair를 와 라고 하자. 일 것이다. WLOG, 라고 가정하고 로 설정하면, 일 것이고 일 것이다.
에서 와 에 nonadjacent한 vertices set을 각각 , 라고 하자. (자기 자신은 adjacent하다고 생각하자.) 그러면
를 만족한다. 추가적으로 에 대해서 이어야 하고 에 대해서 이어야 한다. (그렇지 않으면 와 의 choice에 모순이 생긴다.)
종합하면 에서 degree가 최대 인 vertices는 만큼 있고, degree가 최대 인 vertices는 최소 만큼 있다. 따라서 such that and are satisfied.
Closure Lemma를 이용해서 Ore's Theorem의 generalized 버전을 쉽게 증명할 수 있다.
Fan's Theorem
인 2-connected simple graph 에서 degree가 미만인 vertices끼리는 common neighbor가 없다면, 는 Hamiltonian이다.
Note. Ore's Theorem은 모든 nonadjacent한 vertices의 degree sum이 이상이라는 조건을 가졌는데, 이 조건은 2-connectedness를 imply하고 새로운 조건에서는 nonadjacent vertices의 degree sum이 이 안되는 vertices pair가 존재할 수 있기 때문에 generalization이다.
(왜 모든 nonadjacent한 vertices의 degree sum이 이상이라는 조건이 2-connectedness를 imply할까?)
2-(vertex-)connected graph는 임의의 vertex를 제거해도 connectedness가 유지되는 graph를 말한다. nonadjacent한 어떤 두 vertices를 잡아도 degree sum이 총 vertex 수 이상이다. 즉 고른 2개의 vertices를 제외한 개의 vertices 중에 최소 2개는 common neighbor이다. 따라서 어떤 vertex를 제고해도 disconnect되지 않는다.
증명을 해보자. 를 degree가 이 안 되는 vertices로만 이루어진 subgraph에서의 한 connected component라고 하자. 에서 두 vertices 와 를 고르고 이 둘 사이의 shortest path를 라고 하자. 의 길이는 최대 얼마일까? 만약 의 길이가 2 이상이라면, 와 둘 다 degree가 미만인데, common neighbor를 갖게된다는 모순이 생긴다. 따라서 의 최대 길이는 1, 즉 에서 어떤 두 vertices를 골라도 서로 adjacent하다는 것이다. 이 말은 이 안되는 vertices로만 이루어진 subgraph에서 모든 connected component는 complete하다는 것을 알 수 있다.
이제 에 closure를 취해보자. 를 degree가 이상인 vertices set이라 하면, 의 closure에서 의 subgraph는 complete하다. 따라서 와 사이에 edge가 어떻게 있는지에 따라 의 closure에서 Hamilton cycle 존재성이 갈린다. 주어진 그래프가 2-connected 임을 이용해보자. 면 와 최소 2개의 edge로 이어져 있을 것이다. 면 와 최소 2개의 independent edge, 즉 endpoint가 다 다른 edge들로 이어져 있을 것이다. (만약 endpoint가 같은 edge로 이어져 있다면 그 vertex를 제거했을 때 connectedness가 깨지게 된다.) 이로써 우리는 Hamilton cycle이 존재함을 알 수 있다.
Extra.
이제까지는 Dirac's Theorem의 조건을 generalize했다면 이번에는 결과를 generalize하는 정리를 하나 살펴본다. 우선 한 가지 정의를 하고 넘어가자. 인 모든 에 대해서 그래프가 length가 인 cycle을 포함한다면 그 그래프는 pancyclic하다. 당연히 pancyclic한 그래프는 Hamiltonian이다. 다음은 이와 관련된 Bondy의 정리이다.
Bondy Theorem
를 만족하는 simple Hamiltonian graph 는 (1) pancyclic하거나 (2) complete bipartite graph이다.
증명은 induction으로 진행된다. 이면 trivial하다. 따라서 일 때를 가정하자.
1.가 길이의 cycle을 포함하면 는 pancyclic하다.
그 cycle을 라고 하고 를 에 속하지 않은 의 vertex라고 하자.
라고 정의하고 의 vertex 수와 edge 수를 각각 이라고 하자.
만약 라면, 를 만족한다. Induction hypothesis에 의해 는 pancyclic하고, 따라서 는 pancyclic하다. (Induction hypothesis에 따르면 가 complete bipartite graph일 수 있다. 하지만 인 경우 그래프가 complete bipartite일 수 없고 이기 때문에 는 complete bipartite graph가 아님을 알 수 있다.
만약 라면, 를 만족하는 모든 에 대해서, 에 속하면서 서로 만큼 떨어져 있고 에 adjacent하는 두 vertex 가 존재한다. (이것의 증명은 아래에 있다.) 따라서 길이가 인 cycle 이 존재하기 때문에, 는 pancyclic하다. 이것의 증명에서는 어떤 에 대해서는 그러한 가 없다고 가정을 하고 모순을 보인다. 에 adjacent한 vertex들을 라고 하자. 라고 했을 때, 가정에 따라 는 모든 과 adjacent하지 않을 것이다. (만약 v의 subscript index가 n-1을 넘어가면 modulo를 취한다.) 와 adjacent한 vertex의 수가 이고 nonadjacent한 vertex의 수도 최소 이기 때문에 cycle 위의 vertex의 수는 최소 이다. 그러나 이기 때문에 모순이 발생한다.
2.가 길이의 cycle을 포함하지 않으면 complete bipartite하다. (물론 은 짝수여야 한다.)
을 의 Hamilton cycle이라고 하자. 그러면 이면서 인 모든 에 대해서, 와 중 최대 하나만이 의 edge가 될 수 있다. (그렇지 않으면 인 cycle이 존재하고 이것의 길이는 이다.)
이제 와 에 adjacent한 vertex의 수의 관계를 보자. 가 에 adjacent하면 은 와 adjacnet하지 않다. 가 만큼 adjacent하면 은 최소 만큼 nonadjacent하다. 따라서 을 만족한다. 모든 에 대해서 위 식을 합치면 이 될 것이고 인 것을 이용하면 를 얻을 수 있다. 의 조건 중 하나인 에 의해 임을 알 수 있고, 이를 통해 모든 에 대해 임을 알 수 있다. 따라서 이면서 인 모든 에 대해서, 와 중 최대 하나만이 의 edge가 될 수 있다는 조건에서 '정확히 하나'를 만족하는 조건으로 강화됨을 알 수 있다.
이제 이를 이용해 complete bipartite임을 보이자. 일단 그래프가 bipartite하지 않다고 가정하자. 그러면 이면서 와 가 adjacent한 가 존재할 것이다. 그러한 중에 가 가장 작은 pair를 라고 하자. (WLOG, 라고 가정하자.) 우선 는 2가 될 수 없다. 왜냐하면 길이 cycle이 생기기 때문이다. 는 4이상의 짝수인데 그러면 와 가 adjacent하다는 것으로 과 는 nonadjacent함을 알 수 있고, 이것으로 과 가 adjacent함을 알 수 있다. 여기서 의 선택에 모순이 생긴다.
Bipartite하면서 를 만족하는 그래프는 complete bipartite graph밖에 없다.
Reference - Handbook of Combinatorics, Volume 1, Basic graph theory: Paths and circuits
댓글 영역