3COL ∈ ⟹ 4COL ∈
נניח ; קיימת צביעה חוקית . נגדיר על ידי תהא .
- אם : אז ו-, ומכיוון ש- חוקית ב- נובע .
- אחרת קשת חדשה, ולכן או . הקודקוד צבוע והשני צבוע בצבע מ-, ולכן שוב .
לכן צביעה חוקית ב-4 צבעים, כלומר .
, ולכן היא NP-שלמה. באופן כללי אותו רעיון נותן לכל קבוע.
על קלט :
בכלליות, עבור : מוסיפים קודקודים חדשים, מחברים אותם זה לזה (קליקה) וכן כל אחד מהם לכל קודקודי .
הקודקוד "שורף" את הצבע הרביעי: הוא מחובר לכל קודקוד מקורי, ולכן אף קודקוד מקורי אינו יכול לקבל את צבעו.
נניח ; קיימת צביעה חוקית . נגדיר על ידי תהא .
לכן צביעה חוקית ב-4 צבעים, כלומר .
נניח ; קיימת צביעה חוקית . ללא הגבלת הכלליות — הצבעים סימטריים לחלוטין, ואם קיבל צבע אחר נחליף את שמות שני הצבעים.
נגדיר לכל , ונראה שהטווח בפועל הוא : יהי . מכיוון שחיברנו את לכל קודקודי , מתקיים , ולכן . לכן לכל .
כעת תהא . לא הסרנו קשתות, ולכן גם , ומחוקיות ב- נקבל . לכן צביעה חוקית של בשלושה צבעים, כלומר .
הבנייה מוסיפה קודקוד אחד ו- קשתות, ולכן היא ליניארית בגודל הקלט. הפלט גדול מהקלט בפחות מפי שניים ועוד קבוע.
היא NP-שלמה. יחד עם מתקבלת התמונה המלאה: קל, קשה — קפיצה חדה בדיוק במקום אחד.
הזהות אינה עובדת. אם הוא -צביע אז בפרט הוא -צביע — הכיוון הראשון עובד, וזו בדיוק הסיבה לחשוד. הכיוון השני קורס: הוא -צביע ובוודאות אינו -צביע, ולכן אבל .
קודקוד חדש בלי קשתות אינו מספיק. הצעד "לכל מתקיים " נשען כולו על קיום הקשת . בלי הקשתות אין מניעה שקודקוד ב- ייצבע ב-. דוגמה נגדית: בתוספת קודקוד מבודד הוא -צביע, ואילו אינו -צביע.
"נוסיף קודקוד חדש ונצבע אותו בצבע רביעי" — זו טעות חמורה בניסוח. הבנייה זהה, אבל הניסוח מייחס לאלגוריתם גישה לצביעה. לאלגוריתם הרדוקציה אין ולא יכולה להיות גישה לפתרון: הוא מקבל גרף ומחזיר גרף. הצביעות ו- מופיעות אך ורק בהוכחת הנכונות, ששם — ורק שם — מותר להניח "קיימת צביעה חוקית".