قضیه پنج رنگ
قضیه پنج رنگ نتیجه‌ای است از نظریه گراف که صفحه‌ای به چند منطقه تقسیم شده داده می‌شود. مناطق به گونه‌ای به پنج رنگ مختلف رنگ آمیزی می‌شوند که هیچ دو منطقه مجاوری رنگ یکسان نداشته باشند. قضیه پنج رنگ از قضیه چهار رنگ می‌رسد اما به طور قابل توجهی اثباتش از آن ساده‌تر است. اثبات این قضیه بر مبنای تلاش شکست خورده‌ای برای اثبات قضیه چهار رنگ توسط آلفرد کمپ در سال ۱۸۷۹ می‌باشد. یازده سال بعد پرسی جان هیوود یک خطا از آن پیدا کرد و بر مبنای کار کمپ قضیه پنج رنگ را اثبات نمود.
در ابتدا یک گراف مسطح G را به نقشه داده شده نسبت می‌دهیم به این صورت که هر منطقه را متناظر با یک رأس در نظر می‌گیریم و بین دو رأس یال وجود دارد اگر و تنها اگر بین دو منطقه متناظر مرز مشترکی باشد؛ بنابراین حالا مسئله به مسئله رنگ آمیزی گراف تبدیل شده است: رنگ کردن رئوس گراف به طوری که هیچ یالی دو سر همرنگ نداشته باشد. اثبات بر مشخصه اویلر استوار است تا نشان دهد حتماً باید یک رأس V وجود داشته باشد که بین حداکثر پنج یال مشترک است و با توجه به این که G مسطح است مثلاً می‌تواند در یک صفحه بدون یال‌های متقاطع تعبیه شود. حال V را از G حذف می‌کنیم. گراف از این کار حاصل می‌شود که یک رأس کمتر از G دارد. پس ما می‌توانیم با استقرا فرض کنیم که این را می‌توان با پنج رنگ، رنگ آمیزی کرد. V حتماً باید به پنج رأس دیگر متصل شود؛ چون در غیر این صورت می‌تواند در گراف G با رنگی که در آن‌ها استفاده نشده است، رنگ آمیزی شود. پس حالا به پنج رأس formula_1، formula_2، formula_3، formula_4، formula_5 نگاه می‌کنیم که در ترتیب دایره‌ای مجاور V هستند (که بستگی به این دارد که چگونه G را نوشته‌ایم). اگر ما همه پنج رنگ را استفاده نکرده باشیم، مسلماً می‌توانیم رأس V را به رنگی متفاوت از آن‌ها رنگ آمیزی کنیم و گرافی پنج رنگ را تحویل دهیم. پس ما می‌توانیم فرض کنیم که رئوس به ترتیب رنگ‌های ۱ تا ۵ را گرفته‌اند. حال زیر گراف formula_6 از formula_7 را در نظر می‌گیریم که تنها از رئوسی تشکیل شده که رنگ‌های ۱ و ۳ را دارند و یال‌هایی که دو تا از این رئوس را به هم متصل می‌کند. اگر formula_1 و formula_3 در مؤلفه‌های همبندی متفاوتی از formula_6 باشند، می‌توانیم رنگ آمیزی مؤلفه همبندی شامل formula_1 را معکوس کنیم که بنابراین رأس V رنگ ۱ را می‌گیرد و کار تمام است. اما اگر formula_1 و formula_3 در مؤلفه‌های همبندی یکسانی از formula_6 بودند، می‌توانیم مسیری در formula_6 که آن دو را به هم متصل می‌نماید پیدا نماییم که ترتیبی از یال‌ها و رئوس فقط رنگ شده با ۱ و ۳ باشد. حال زیر گراف formula_16 از formula_7 را که در بر گیرنده رئوس رنگ شده با ۲ و ۴ و یال‌های متصل کننده این رئوس به هم است را در نظر می‌گیریم و روندی مشابه قبلی برای آن اجرا می‌کنیم. پس یا می‌توانیم رنگ آمیزی زیر گراف formula_16 را برعکس نموده و رأس V را به رنگ ۲ بزنیم یا از مسیری متشکل از رئوس تنها رنگ شده با ۲ و ۴، formula_2 و formula_4 را به هم متصل نماییم. احتمال بعدی به روشنی نامعقول است که مسیری با مسیر ساخته شده در formula_6 تقاطع داشته باشد؛ بنابراین مخالف با استنباط اولیه G در واقع می‌تواند با پنج رنگ، رنگ آمیزی شود.
در سال ۱۹۹۶، رابرتسون، ساندرز، سیمور و توماس یک الگوریتم چهار رنگ کردن از درجه دوم در «گراف مسطح کارآمد چهار رنگ کردن» خود تعریف کردند. در همان‌جا، آن‌ها مختصراً یک الگوریتم پنج رنگ کردن در زمان خطی تعریف کردند که به طور مجانبی بهینه بود. الگوریتمی که در این جا توصیف شده بر روی چند گراف عمل می‌کند و بر قابلیت داشتن چندین نسخه از یال‌ها بین یک جفت رأس تکیه دارد. این قضیه بر اساس قضیه ورنیک می‌باشد که در پایین آمده است:
قضیه ورنیک: فرض می‌کنیم G یک گراف مسطح غیر خالی است که هیچ منطقه‌ای ندارد که با دو یال محدود شده باشد و حداقل درجه پنج دارد. پس G حتماً یک رأس از درجه پنج دارد که مجاور رأسی با درجه حداکثر شش است.
ما نمایشی از این گراف را به کار می‌بریم که در آن هر رأس یک لیست پیوندی دایره‌ای از رئوس مجاور را در جهت ساعتگرد گراف مسطح نگه می‌دارد. در مفهوم، الگوریتم بازگشتی است؛ در هر مرحله گراف را به یک گراف با یک رأس کمتر کاهش می‌دهد؛ آن را پنج رنگ می‌کند و سپس از آن رنگ کردن استفاده می‌کند تا معین کند رنگ کردن گراف بزرگتر در زمان ثابتی انجام می‌شود. در عمل بیش از این که برای هر گراف کوچک شده، نمایش یک گراف صریح را نگه داریم، ما رئوس را از گراف حذف می‌کنیم و آن‌ها را به یک پشته اضافه می‌کنیم. سپس در آخر هنگامی که آن‌ها را از پشته خارج می‌کنیم، رنگشان می‌کنیم. ما سه تا پشته را نگه خواهیم داشت: الگوریتم به نحوه زیر کار می‌کند: