ปัญหาอีโมจิ (2022)
(artofproblemsolving.com)- โจทย์คณิตศาสตร์อีโมจิ ที่โด่งดังบนอินเทอร์เน็ตมีลักษณะเด่นคือมีจุดหลอก ทำให้เกิดคำตอบได้หลากหลาย
- ใน ชุมชนคณิตศาสตร์ จึงมีความพยายามสร้างโจทย์ทางเลือกที่ยากจริง
- โพสต์นี้อธิบายวิธีหา พีทาโกรัสทริปเปิล และ เทคนิคที่เกี่ยวข้อง (การลากเส้น)
- โจทย์อีโมจิระดับยากมีแกนสำคัญอยู่ที่ เส้นโค้งวงรีและการวิเคราะห์คำตอบเชิงตรรกยะ
- เน้นกลยุทธ์การค่อย ๆ หาคำตอบด้วย เครื่องมือทางคณิตศาสตร์และ Mathematica
ที่มาและการถือกำเนิดของโจทย์คณิตศาสตร์อีโมจิ
บนอินเทอร์เน็ตมีการเผยแพร่โจทย์คณิตศาสตร์ที่แสดงด้วย อีโมจิ (หรือภาพผลไม้ เป็นต้น) โจทย์เหล่านี้มักมี องค์ประกอบที่ชวนสับสน (เช่น จำนวนกล้วยที่ต่างกันเล็กน้อย) ทำให้โจทย์เดียวมีหลายคำตอบ เกิดทั้งข้อถกเถียงและความไวรัล นักคณิตศาสตร์จริง ๆ และชุมชนคณิตศาสตร์จำนวนหนึ่งเริ่มเอือมกับสิ่งนี้ และในปี 2017 ก็มีเธรดใน r/math ของ reddit ชื่อประมาณว่า “ลองสร้างโจทย์คณิตศาสตร์แบบรูปภาพที่ยากจริงกันเถอะ” โผล่ขึ้นมา โจทย์ที่เผยแพร่ในนั้น แม้ต่างจากของเดิม แต่ยังอยู่ในระดับที่หาคำตอบจำนวนเต็มได้ไม่ยาก อย่างไรก็ตาม มีคนชื่อ Sridhar Ramesh นำไปดัดแปลงเล็กน้อยจนกลายเป็นโจทย์ที่ยากมหาศาล แม้แต่ คำตอบที่เล็กที่สุด ของเวอร์ชันดัดแปลงก็ยังเป็นตัวเลขยาวเกิน 80 หลัก และถูกมองว่าต้องอาศัยความรู้ขั้นสูงเกี่ยวกับ เส้นโค้งวงรี
ตัวอย่างอุ่นเครื่อง: การหาพีทาโกรัสทริปเปิล
ก่อนอื่นเริ่มจากโจทย์ง่ายด้วยวิธีไล่หาค่า พีทาโกรัสทริปเปิล แทนที่จะหาคำตอบจำนวนเต็มของ สมการไดโอแฟนไทน์ ที่ทำให้ x² + y² = z² เป็นจริง จะเปลี่ยนมาหา คำตอบเชิงตรรกยะ (คำตอบแบบเศษส่วน) ของ x₁² + y₁² = 1 แทน
- เมื่อแทน x₁ = x/z, y₁ = y/z ปัญหาจะถูกแปลงเป็นการหา จุดเชิงตรรกยะทั้งหมดบนวงกลมหนึ่งหน่วย
- ให้คิดว่าเริ่มจากจุดอย่าง (0,1) แล้วลากเส้นตรงที่มีความชันเป็นจำนวนตรรกยะ
- จุดตัดอีกจุดหนึ่งระหว่างเส้นตรงนั้นกับวงกลมจะเป็น จุดเชิงตรรกยะ เสมอ
- ยืนยันได้จากสูตรของ Vieta เป็นต้น และเมื่อกำหนดความชันคงที่ก็เข้าถึงจุดเชิงตรรกยะทั้งหมดได้
- สรุปได้ว่า พีทาโกรัสทริปเปิลสามารถอธิบายลักษณะได้เป็นโครงสร้าง (x, y, z) = (2mn, n²–m², n²+m²) (เป็นจริงสำหรับจำนวนเต็มบวก m, n)
- ใจความสำคัญคือหลักการ “ลากเส้นแล้วจะได้จุดใหม่”
โจทย์อีโมจิดั้งเดิม: แปลงสมการยากให้เป็นเส้นโค้งวงรี
สมการแกนหลักของโจทย์เริ่มจาก
x/(y+z) + y/(x+z) + z/(x+y) = 4
เมื่อนำมาจัดรูป จะได้เป็น
x³+y³+z³ = 3(x²(y+z)+y²(x+z)+z²(x+y)) + 8xyz
- แทน x₁ = x/z, y₁ = y/z แล้วหารทั้งสมการด้วย z³ เพื่อวิเคราะห์ในกรอบของ คำตอบเชิงตรรกยะ
- สมการหลังแทนค่าจะเป็น x₁³ + y₁³ + 1 = 3(x₁²(y₁+1)+y₁²(x₁+1)+x₁+y₁) + 8x₁y₁
- หากพล็อตกราฟ จะเห็นว่าสมการนี้มีความสมมาตร และสามารถ หมุนแกนพิกัดและแทนตัวแปรใหม่อย่างเหมาะสม (x₂, y₂) เพื่อจัดให้อยู่ในรูปที่ง่ายขึ้น
- ท้ายที่สุดจะได้สมการในรูปของเส้นโค้งวงรีดังนี้: 1 - 6x₂ - 11x₂² - 4x₂³ - y₂² + 12x₂y₂² = 0
หลักการสร้างจุดเชิงตรรกยะบนเส้นโค้งวงรี
อธิบายขั้นตอนการเลือกจุดเชิงตรรกยะสองจุด (P, Q) บนเส้นโค้งวงรี แล้วลาก เส้นตรง เชื่อมสองจุดนั้น จากนั้นหาจุดตัดจุดที่สาม R ระหว่างเส้นตรงกับเส้นโค้ง
- จุดทั้งสาม (P, Q, R) จะมี พิกัดเชิงตรรกยะ ทั้งหมด
- อาศัยสูตรของ Vieta ความชันของเส้นตรง และการจัดรูปพีชคณิต ก็สามารถคำนวณจุดตัดจุดที่สามจากสมการที่สอดคล้องกันได้
- ถ้าเป็นการลากเส้นจากจุดเดียวกัน (P=Q) เส้นนั้นจะเป็น เส้นสัมผัส และยังใช้หลักการเดียวกันได้
- ประเด็นสำคัญคือ “เมื่อเชื่อมสองจุดเชิงตรรกยะ ก็จะได้จุดเชิงตรรกยะอีกจุดหนึ่ง”
ข้อจำกัดของการ ‘เพิ่มจำนวน’ จุดเชิงตรรกยะ และการค้นพบจุดอันดับอนันต์
บนเส้นโค้งวงรี จุดเชิงตรรกยะที่หาได้ง่ายแบบ ชัดเจนอยู่แล้ว เช่น ((0,1), (-1,0), (0,-1) เป็นต้น) ต่างเชื่อมไปสู่ผลลัพธ์ที่ไม่มีความหมายต่อคำตอบ
- มีเพียงการวนซ้ำของ จุดทอร์ชัน (จุดอันดับจำกัด) ซึ่งไม่สามารถสร้างจุดเชิงตรรกยะใหม่ต่อไปได้
- จึงต้องการจุดที่ยังไม่รู้มาก่อนซึ่งมี อันดับอนันต์ (ให้คำตอบได้ไม่สิ้นสุด)
- ด้วยการคำนวณด้วยคอมพิวเตอร์ เช่น Mathematica จึงค้นพบจุดเชิงตรรกยะใหม่ เช่น รูป (-2, 1/5) (เรียกจุดนี้ว่า A)
- เมื่อนำจุดนี้มาใช้กับเส้นสัมผัสหรือเส้นตรงที่เชื่อมกับจุดอื่น ก็สามารถผลิตคำตอบเชิงตรรกยะใหม่ ๆ ที่ซับซ้อนขึ้นเรื่อย ๆ ได้
เงื่อนไขของคำตอบบวกจริงและการคำนวณแบบทำซ้ำ
คำตอบของโจทย์จะมีความหมายก็ต่อเมื่อ x, y, z ทั้งหมดเป็น จำนวนบวก จากการจัดรูปสมการ หากสมมติ z > 0 ก็จำเป็นต้องมี x₁ > 0, y₁ > 0 และสำหรับพิกัดที่แปลงแล้ว (x₂, y₂) ต้องเป็นไปตาม x₂ > |y₂|
- ใช้บริเวณที่ตรงตามเงื่อนไขนี้ (ส่วนเฉพาะของกราฟ) เป็น ‘พื้นที่เป้าหมาย’ แล้วทำเทคนิคลากเส้นซ้ำ ๆ เพื่อให้ไปถึงคำตอบเชิงตรรกยะในบริเวณนั้น
- ในกระบวนการคำนวณ พิกัด x และ y ของจุดเชิงตรรกยะจริงจะหาได้จากนิพจน์พีชคณิตที่ซับซ้อน โดยใช้ฟังก์ชัน L, T และ Y
- เมื่อคำนวณความชันของเส้นสัมผัสและเส้นตรง แล้วนำไปใช้ซ้ำต่อเนื่อง ก็จะไปถึงคำตอบขนาดใหญ่มากระดับหลายสิบหลัก
บทสรุป
โจทย์คณิตศาสตร์อีโมจิ ที่ให้มาดูเหมือนง่าย แต่แท้จริงแล้วต้องอาศัย สมบัติของเส้นโค้งวงรีและหลักการสร้างจุดเชิงตรรกยะ อย่างจริงจัง และในบางกรณีค่าของคำตอบก็เติบโตแบบก้าวกระโดด
- หลักการเรียบง่ายเชิงโครงสร้างอย่าง “ลากเส้นเพื่อให้ได้จุดใหม่” ยังถูกดัดแปลงมาใช้กับเส้นโค้งวงรีได้
- แต่กระบวนการหาคำตอบจำนวนเต็มจริงหรือคำตอบจำนวนบวกนั้นซับซ้อนมาก และแทบขาดการคำนวณพีชคณิตด้วยคอมพิวเตอร์ไม่ได้
- ในภาคต่อของบทความจะกล่าวต่อถึงการปิดกระบวนการนี้ ฉากหลังทางคณิตศาสตร์ที่ลึกยิ่งขึ้น และรายละเอียดของคำตอบ
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
แชร์ลิงก์ที่แนะนำคำตอบบน Quora ที่ยอดเยี่ยมมาก
คำตอบบน Quora นั้นเขียนโดย Alon Amit และในบทความต้นฉบับก็มีข้อมูลที่อ้างอิงคำพูดของ Alon Amit ด้วย
ให้ความรู้สึกว่านี่แหละคือช่วงพีกที่แท้จริงของ Quora
แชร์ประสบการณ์ตอนเคยสอนคณิตศาสตร์ให้เด็ก ๆ โดยเปลี่ยนสูตรหรือสมการให้ใช้คำที่น่ารักและเป็นมิตรอย่างสัตว์ เมฆ ดาว แทน เด็ก ๆ ตอนแรกมองว่าน่ารำคาญ แต่กลับกลายเป็นว่ามันช่วยให้พวกเขาสนใจแนวคิดเชิงนามธรรมมากขึ้น และภายหลังก็มีฟีดแบ็กว่าพอไปสอนเพื่อนคนอื่นก็นำวิธีเดียวกันนี้ไปใช้ด้วย พร้อมย้ำว่า x ไม่จำเป็นต้องเป็นอะไรพิเศษเสมอไป และสื่อสารว่า “แทนที่จะใช้ x จะใช้ชื่ออะไรก็ได้ เช่น ดวงอาทิตย์ หรือ ‘ผลรวมจำนวนแมว’”
แชร์ประสบการณ์ลองอัปโหลดภาพโจทย์ให้ ChatGPT ผ่านอินเทอร์เฟซของ OpenAI ตอนแรกคาดว่าโมเดลอาจรู้โจทย์นี้อยู่แล้วและตอบถูกทันที หรือไม่ก็แต่งคำตอบขึ้นมาเองมั่ว ๆ หรือปฏิเสธการแก้โจทย์ไปเลย แต่สิ่งที่เกิดขึ้นจริงคือมันเดาอย่างมั่นใจราวกับว่าถูกต้อง แล้วพอคำนวณเองก็พบว่าผิด จากนั้นก็วนกลับมาเดาแบบเดิมอีก สังเกตว่าแม้แต่ความสมมาตรก็ยังจับไม่ได้ และทำตัวเหมือนเอเจนต์ไร้โครงสร้าง สุดท้ายยืนกรานอย่างมั่นใจว่าไม่มีคำตอบ ซึ่งเป็นผลลัพธ์ที่คาดไม่ถึงมาก ถ้าในอนาคตมันยังแย่กับปริศนาแบบอื่นในระดับนี้ ก็ตั้งใจจะอัปเดตความเชื่อของตัวเองใหม่
แชร์ผลการลองถาม Gemini แบบเดียวกัน และยังลองใช้ ChatGPT o3 ด้วย โดยใช้เวลาคิด 11.5 นาที พร้อมแชร์ลิงก์งานที่เกี่ยวข้อง
น่าประทับใจในอีกแบบเพราะดูเหมือนไม่มีคำตอบแบบ “สมเหตุสมผล” ที่มนุษย์จะเข้าใจได้เลย รู้มาว่ามี ChatGPT เวอร์ชันที่เชื่อมกับ Wolfram Alpha ด้วย แต่ไม่แน่ใจว่าฝั่งนั้นได้ลองหรือยัง
เกี่ยวกับการกล่าวถึง Sridhar Ramesh มีการย้ำว่าเขาเป็นคนหายากที่ทั้งเก่งระดับปริญญาเอกคณิตศาสตร์ และยังเชี่ยวชาญมุกตลกแนวมีมอินเทอร์เน็ตอย่าง ‘shitposting’ พร้อมกัน
ชอบปริศนาประเภทนี้มากจนเคยตั้งชื่อว่า “Dantzig Sniping” แล้วเอาไปเล่าให้เพื่อนฟัง พร้อมแชร์ลิงก์บริบทและโจทย์ที่ทำขึ้นเอง
ตอนแรกนึกถึงชื่อเมือง Gdańsk (Danzig) เลยสงสัยว่ามีอะไรถูกสไนป์กันแน่
ถามด้วยความสงสัยว่าปัญหาที่มีคุณสมบัติแบบนี้ค้นพบกันได้อย่างไร
ตั้งคำถามปนขำว่าปี 2025 แล้ว ทำไมผู้เขียนยังไม่ใช้ตัวแปรเป็นอีโมจิผลไม้จริง ๆ
ตอนวิเคราะห์โค้ด C ที่ซับซ้อน เคยลองเปลี่ยนชื่อตัวแปรเป็นอีโมจิ แล้วพบว่าช่วยให้มองออกทันทีว่าตัวแปรไหนถูกใช้ตรงไหน จึงช่วยให้เข้าใจโครงสร้างโค้ดได้ง่ายขึ้น พร้อมแชร์ภาพตัวอย่าง แต่น่าเสียดายที่ภาษาใหม่ ๆ อย่าง Rust, JS ปฏิบัติตามมาตรฐาน XID_Start/XID_Continue เลยไม่อนุญาตให้ใช้อีโมจิเป็น identifier
แชร์ลิงก์ตัวอย่างโค้ด C# ที่ Gemini ใช้ชื่อตัวแปรเป็นอีโมจิผลไม้แล้วแก้โจทย์ด้วยวิธี brute force
เสริมแบบติดดินว่า ถึงปีนี้จะเป็น 2025 แต่ปีที่ภาษานั้นถูกสร้างขึ้นก็ไม่ใช่ปี 2025
ถ้าใส่ค่าคงที่อื่นแทน ‘4’ ก็อาจได้คำตอบต่ำสุดที่ใหญ่โตมหาศาลกว่านี้มาก พร้อมแชร์ลิงก์ตัวอย่างสมการไดโอแฟนไทน์ที่น่าสนใจ
แชร์ความทรงจำว่าตอนที่โจทย์นี้ปรากฏขึ้นครั้งแรก ทุกคนในสัมมนาทฤษฎีจำนวนหัวเราะกันเสียงดังมาก
การเจาะลึกเรื่องทฤษฎีจำนวนและกราฟประหลาด ๆ นั้นน่าสนใจ แต่ก็ยังสงสัยว่าในปริศนาแอปเปิล/กล้วยต้นฉบับจริง ๆ แล้วจุดที่ชวนสับสนหรือเป็นกับดักคืออะไรกันแน่ มีองค์ประกอบไหนที่คนมักสับสนหรือนำไปสู่การถกเถียงหรือไม่ หรือจริง ๆ แล้วมันง่ายเกินไปจนทุกคนแห่กันมาอวดรู้ ผู้แสดงความคิดเห็นบอกว่าตัวเองได้คำตอบเป็น 10, 4, 2 เลยเริ่มสงสัยว่าหรือจริง ๆ ตัวเองต่างหากที่สับสน
แชร์ทิปว่าค่า query parameter “srsltid” ในลิงก์ของโจทย์บางอันเป็นค่าที่ไม่จำเป็น