2 คะแนน โดย GN⁺ 2025-05-23 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • ตอนอยู่มัธยมต้น ผู้เขียนวาดแพตเทิร์นการคัดลอกสี่เหลี่ยมจัตุรัสบนกระดาษกราฟแล้วติดไว้บนผนังนาน 12 ปี ก่อนจะนำมาวิเคราะห์เป็นแฟร็กทัลชื่อ wallflower และเชื่อมโยงไปถึง L-System, พีชคณิตเชิงเส้น, ระบบจำนวน และการวางนัยทั่วไปในมิติสูง
  • เริ่มจากสี่เหลี่ยมจัตุรัสหนึ่งรูป แล้วคัดลอกรูปปัจจุบันไปไว้ด้านบน ล่าง ซ้าย และขวา จากนั้นในขั้นถัดไปคัดลอกไปในทิศทางที่หมุนไปประมาณ 27 องศา กระบวนการนี้สร้างแฟร็กทัลที่เติมเต็มระนาบได้
  • กฎ L-System แบบง่าย R → RLR, L → RLL สร้างเค้าโครงที่คล้ายกัน แต่ไม่ใช่รูปเดียวกัน โดยรูปแบบที่พบได้บ่อยกว่าถูกบันทึกไว้ในชื่อ Quadratic von Koch island, Quadratic Flake, Minkowski Sausage เป็นต้น
  • wallflower สามารถตีความเป็น ระบบจำนวนที่ใช้เมทริกซ์เป็นฐาน โดยใช้เมทริกซ์ (M=\begin{bmatrix}-2&1\1&2\end{bmatrix}) เป็นฐาน และใช้เวกเตอร์ทิศทางเป็นตัวเลข โดย (\det(M)=-5) ทำให้ทิศทางกลับด้านในทุกรอบการทำซ้ำ
  • การวางนัยทั่วไปเป็น 3D ดูขัดตาเพราะปัญหาความสมมาตรและการซ้อนทับ ส่วนใน 4D สามารถสร้าง orthotopeflower ด้วยเมทริกซ์ที่ตรงเงื่อนไขได้ แต่ภายใต้ข้อจำกัดเดียวกันดูเหมือนว่าจะเป็นไปได้เฉพาะ 1D, 2D และ 4D

จุดเริ่มต้นของแฟร็กทัลที่ติดอยู่บนผนัง

  • ตอนมัธยมต้น ผู้เขียนเคยขีดเขียนรูปที่รวมและคัดลอกสี่เหลี่ยมจัตุรัสซ้ำ ๆ บนกระดาษกราฟ แล้วติดไว้บนผนังเพื่อวิเคราะห์ภายหลัง
  • เนื่องจากมีโครงสร้างแผ่ออกเหมือนกลีบดอกไม้ และมีเรื่องราวที่ติดอยู่บนผนังมานาน จึงเรียกแฟร็กทัลนี้ว่า wallflower
  • ขั้นตอนที่วาดเดิมมีดังนี้
    • เริ่มจากสี่เหลี่ยมจัตุรัสหนึ่งรูป
    • วางสำเนาของสถานะปัจจุบัน 4 ชุดไว้ทางซ้าย ขวา บน และล่าง
    • จากนั้นวางสำเนาของสถานะปัจจุบัน 4 ชุดในสี่ทิศเดียวกัน แต่เอียงไปตามเข็มนาฬิกาประมาณ 27 องศา
    • ทำซ้ำสองวิธีการวางนี้สลับกันไปจนกระดาษกราฟเต็ม
  • กระบวนการนี้ หากทำซ้ำเหมือน Gosper Curve จะสามารถครอบคลุมบริเวณใด ๆ บนระนาบได้ และสถานะระหว่างทางแต่ละขั้นก็สามารถปูกระเบื้องระนาบได้เช่นกัน

เค้าโครงที่เกือบเหมือน L-System แต่ไม่เหมือนกัน

  • ราว 1 ปีก่อน ผู้เขียนพบว่าเค้าโครงนี้สามารถสร้างด้วย L-System ได้
  • กฎที่ใช้ประกอบด้วยการหมุนขวา 90 องศา (R) และหมุนซ้าย (L) เท่านั้น
    • สตริงเริ่มต้นคือ (RRRR)
    • ในแต่ละรอบ แทนที่ (R \rightarrow RLR), (L \rightarrow RLL)
  • ช่วงไม่กี่ขั้นแรกดูเหมือนเค้าโครงเดียวกับ wallflower แต่เมื่อทำแอนิเมชันจึงยืนยันได้ว่าตั้งแต่ การทำซ้ำครั้งที่ 4 เป็นต้นไป สองวิธีนี้เริ่มคลาดกัน
  • ความแตกต่างมาจากวิธีวางสำเนา
    • วิธี “drag and drop” วางสำเนาของการทำซ้ำครั้งที่ 3 ไว้ด้านบน ล่าง ซ้าย และขวาโดยตรงจากจุดศูนย์กลาง
    • วิธี L-System วางสำเนาในทิศทแยง
  • รูปที่ L-System สร้างขึ้นมีการบันทึกไว้แล้วในหลายแห่ง
  • สำหรับรูปแปรผันแบบ drag and drop ที่ติดอยู่บนผนัง ไม่พบรูปแบบเดียวกันจากการค้นรูป Google และการไล่ดู Wikipedia
  • ผู้เขียนพบกฎที่เข้ากับ wallflower คือ (L \rightarrow RLR), (R \rightarrow LLR) แต่กฎนี้ทำให้เกิดผลที่ทิศทางการวาดเค้าโครง กลับด้าน ในแต่ละขั้น

วิธีนับแฟร็กทัล

  • wallflower ขยายออกจากจุดกำเนิด จึงมองได้ว่าเป็นวิธีจับคู่จำนวนธรรมชาติกับพิกัดบนกริด
  • ให้สี่เหลี่ยมจัตุรัสตรงกลางเป็น 0 แล้วกำหนดหมายเลขให้สี่เหลี่ยมรอบ ๆ 4 รูปที่เพิ่มเข้ามาในการทำซ้ำครั้งแรกเป็น 1, 2, 3, 4 ตามเข็มนาฬิกา
  • ในการทำซ้ำครั้งถัดไป อาจไล่หมายเลขจากบนลงล่าง ซ้ายไปขวาได้ แต่วิธีนี้ไม่เข้ากับโครงสร้างแบบเรียกซ้ำมากนัก
  • หากใช้ข้อเท็จจริงว่ากลีบดอกแต่ละกลีบเป็นสำเนาของการทำซ้ำก่อนหน้า จะสามารถนำเลขหมายกลับมาใช้ซ้ำได้ทั้งภายในกลีบและระหว่างกลีบ โดยนับ จากศูนย์กลางออกไปด้านนอก
  • ในการกำหนดหมายเลขแบบนี้ พหุคูณของ 5, (5n+1), พหุคูณของ 25 เป็นต้น จะก่อเป็นแพตเทิร์นกริดเอียง
  • เหตุผลคือจำนวนสี่เหลี่ยมจัตุรัสในแต่ละรอบเพิ่มเป็น (1, 5, 25, 125, ...)
    • แต่ละรอบเพิ่มสำเนา 4 ชุดให้กับสถานะก่อนหน้า 1 ชุด รวมเป็น 5 เท่า
    • ดังนั้นกำลังของ 5 และการเขียนในฐาน 5 จึงเข้ากับโครงสร้างนี้ได้ดี

ระบบจำนวนที่ใช้เมทริกซ์เป็นฐาน

  • หากแยกจำนวนหนึ่งออกเหมือนค่าประจำหลักในฐาน 5 ก็สามารถหาตำแหน่งบนกริดแฟร็กทัลได้โดยบวกเวกเตอร์ที่สอดคล้องกับค่าประจำหลักแต่ละตัว
  • ตัวอย่างเช่น 231 มองเป็น (200 + 30 + 1) แล้วนำเวกเตอร์ตำแหน่งของแต่ละส่วนมาบวกกันเพื่อหาตำแหน่งของ 231
  • ค่าหลักเดียวถูกนิยามเป็นเวกเตอร์ทิศทาง
    • (\vec{0}=(0,0))
    • (\vec{1}=(1,0))
    • (\vec{2}=(0,1))
    • (\vec{3}=(-1,0))
    • (\vec{4}=(0,-1))
  • ค่าประจำหลักในรูป (10^n) เดิมทีเขียนเป็นเงื่อนไขแยกตามคู่/คี่ แต่หากใช้เมทริกซ์หนึ่งตัวซ้ำ ๆ ก็สามารถคำนวณได้โดยไม่ต้องมีเงื่อนไข
  • เมทริกซ์ที่ใช้มีดังนี้

[ M=\begin{bmatrix} -2 & 1 \ 1 & 2 \end{bmatrix} ]

  • เมทริกซ์นี้ทำให้ (M^2=5I) จึงจัดสเกลให้ใหญ่ขึ้น 5 เท่าทุกสองขั้น
  • ดังนั้นจึงเขียนได้ดังนี้

[ \overrightarrow{(10^n)}=M^n\vec{1} ]

  • โครงสร้างนี้มองได้ว่าเป็นระบบจำนวนที่ใช้ เมทริกซ์เป็นฐาน และใช้ เวกเตอร์เป็นตัวเลข แทนระบบฐานทั่วไปที่ใช้ฐานสเกลาร์และตัวเลขสเกลาร์

determinant ที่แยกแฟร็กทัลทั้งสองออกจากกัน

  • ดีเทอร์มิแนนต์ของ (M) คือ (\det(M)=-5) และเพราะดีเทอร์มิแนนต์เป็นลบ ทิศทางของพื้นที่จึงกลับด้านในทุกรอบการทำซ้ำ
  • การกลับด้านนี้ทำให้ตำแหน่งของค่าอย่าง 20 และ 40 ดูเหมือนสลับกันเมื่อเทียบกับการกำหนดหมายเลขเดิม
  • หากต้องการหลีกเลี่ยงการกลับด้าน สามารถเลือกเมทริกซ์ที่มีดีเทอร์มิแนนต์เป็นบวกได้

[ M'=\begin{bmatrix} 2 & 1 \ -1 & 2 \end{bmatrix} ]

[ \det(M')=5 ]

  • (M') ไม่กลับทิศทาง แต่หมุนเวกเตอร์ตัวเลขตามเข็มนาฬิกาต่อเนื่อง และเมื่อใช้เมทริกซ์นี้เป็นฐาน จะได้ เวอร์ชัน L-System ที่กล่าวไปก่อนหน้า
  • ความแตกต่างของแฟร็กทัลทั้งสองคือ
    • wallflower มาจาก (M) ที่มี (\det(M)=-5)
    • กลุ่ม quadratic flake ที่พบบ่อยกว่า มาจาก (M') ที่มี (\det(M')=5)
  • ค่าสัมบูรณ์ของดีเทอร์มิแนนต์ 5 สอดคล้องกับโครงสร้างที่ขนาดแฟร็กทัลเพิ่มขึ้น 5 เท่าในแต่ละรอบ
    • หากดีเทอร์มิแนนต์ใหญ่กว่านี้ สำเนาจะโตเร็วเกินไปจนเกิดช่องว่าง
    • หากดีเทอร์มิแนนต์เล็กกว่านี้ สำเนาจะโตช้าเกินไปจนการทำซ้ำซ้อนทับกัน
  • มุมประมาณ 27 องศา เกี่ยวข้องกับเวกเตอร์ (\langle1,2\rangle) ที่เกิดจากเงื่อนไขพิกัดจำนวนเต็ม ดีเทอร์มิแนนต์ (\pm5) และความยาวเวกเตอร์ (\sqrt5)
    • มุมของเวกเตอร์นี้คือ (\arctan(2/1)\approx63.43^\circ)
    • เมื่อเทียบกับแกน y จะห่างประมาณ 27 องศา

กฎการบวกและการทด

  • การบวกเวกเตอร์เข้ากับค่าประจำหลักที่ขยายแล้วได้ดี แต่ทำงานต่างจากการบวกตัวเลขทั่วไป เช่น (\vec{2}+\vec{2}\neq\vec{4})
  • ตัวเลข 1 ถึง 4 จึงควรมองเป็นทิศทางบน ขวา ล่าง ซ้าย มากกว่าเป็นตัวเลขจริง ๆ
  • ทิศทางตรงข้ามหักล้างกัน
    • (\vec{1}+\vec{3}=\vec{0})
    • (\vec{2}+\vec{4}=\vec{0})
  • เมื่อนำชุดของเวกเตอร์หน่วยมาทำเป็นตาราง ผลลัพธ์การบวกบางส่วนจะกลายเป็นค่าสองหลัก
  • ด้วยเหตุนี้ เวลาบวกจำนวนมาก ๆ ต้องจัดการ การทด เหมือนการบวกยาวทั่วไป
  • ตัวอย่างเช่น เมื่อคำนวณ (\vec{22}+\vec{1}) ผลลัพธ์จะออกมาเป็น 133 เพราะกฎ (\vec{2}+\vec{1}=\vec{13})
  • ผู้เขียนไม่ได้พิสูจน์ว่าระบบการบวกนี้ทำงานได้โดยทั่วไปหรือไม่ และทิ้งไว้ให้ผู้อ่านตรวจสอบ

ระบบจำนวนและงานวิจัยที่เกี่ยวข้อง

  • ระบบจำนวนของแฟร็กทัล wallflower เชื่อมโยงกับระบบฐานอื่น ๆ ที่ไม่ได้ใช้เฉพาะจำนวนธรรมชาติเป็นตัวเลข
  • Balanced Ternary ใช้ (-1,0,1) เป็นตัวเลข และใช้ 3 เป็นฐาน ส่วน wallflower สามารถมองเป็น อนาล็อกสองมิติ ของระบบนี้ที่เพิ่มตัวเลขทิศทางบวก/ลบของแกน y เข้าไป
  • generalized balanced ternary ถูกวางนัยทั่วไปสู่มิติใด ๆ ด้วยกริดเพอร์มูโตฮีดรอน และใน 2 มิติจะกลายเป็นกริดหกเหลี่ยม
  • Quater-imaginary Base เป็นระบบที่ใช้ (2i) เป็นฐาน และใช้ 0, 1, 2, 3 เป็นตัวเลข
  • (M') สามารถมองเป็นฐานที่สอดคล้องกับจำนวนเชิงซ้อน (2+i) และบทความ Balanced base 2+i (and some gratuitous fractals) ของ Timothy James McKenzie Makarios กล่าวถึงแนวคิดนี้
  • ผู้เขียนพบแหล่งข้อมูลที่เกี่ยวข้องดังนี้
    • Project BinSys: โปรเจกต์ค้นหาเมทริกซ์ฐานที่มีดีเทอร์มิแนนต์เป็น 2
    • Replicating Tesselations ของ Andrew Vince: อธิบายแฟร็กทัล การปูกระเบื้อง พีชคณิตเชิงเส้น และระบบจำนวนอย่างเข้มงวดขึ้น และขยายจาก (\mathbb{Z}^2) ไปสู่กริดทั่วไป

ขยายไปสู่ 3D และ 4D

  • ใน 3D ผู้เขียนคิดถึงโครงสร้าง “3D plus” ที่เริ่มจากลูกบาศก์หนึ่งก้อนแล้วคัดลอกไปในหกทิศทาง
  • เงื่อนไขที่ต้องการสำหรับเมทริกซ์ 3x3 มีดังนี้
    • สมาชิกทั้งหมดต้องเป็นจำนวนเต็ม
    • เวกเตอร์แต่ละคอลัมน์ต้องมีระยะ Hamming จากจุดกำเนิดเท่ากับ 3
    • เพราะแต่ละรอบเพิ่มสำเนา 6 ชุด ขนาดจึงต้องเพิ่มเป็น 7 เท่า และดีเทอร์มิแนนต์ต้องเป็น (\pm7)
  • ผู้เขียนพบเมทริกซ์ 3x3 ที่ตรงเงื่อนไข แต่ผลการแสดงภาพออกมาเป็นรูปที่เหมือนถูก บีบอัด และมีปัญหาที่การทำซ้ำก่อนหน้ายังโผล่ให้เห็น
  • เมื่อเพิ่ม 3D plus อีกสองชุด สามารถเติมส่วนที่ว่างได้ และจุดศูนย์กลาง 8 จุดเรียงตัวเหมือนจุดยอดของลูกบาศก์ที่บิดเบี้ยว
  • เพื่อให้การจัดวางสมมาตรกว่านี้ เงื่อนไขที่เวกเตอร์แต่ละคอลัมน์ตั้งฉากกันและมีขนาดเท่ากันอาจเพียงพอ แต่ใน 3D ดูเหมือนเป็นไปไม่ได้เพราะไม่เข้ากับเงื่อนไขพิกัดจำนวนเต็ม
  • ใน 4D เงื่อนไขเข้ากันได้พอดี
    • ผลรวมกำลังสองขององค์ประกอบในเวกเตอร์แต่ละคอลัมน์ต้องเป็น 3
    • สามารถกำหนดให้องค์ประกอบ 3 ตัวจากทั้งหมด 4 ตัวเป็น (\pm1) และอีกหนึ่งตัวเป็น 0 ได้
  • สร้างแฟร็กทัล 4D ด้วยเมทริกซ์ 4x4 ต่อไปนี้

[ \begin{bmatrix} 0 & -1 & -1 & -1 \ 1 & 0 & -1 & 1 \ 1 & 1 & 0 & -1 \ 1 & -1 & 1 & 0 \end{bmatrix} ]

  • แฟร็กทัล 4D นี้เรียกว่า orthotopeflower
  • การแสดงภาพ 4D ทำโดยดูเป็นสไลซ์ 3D ที่ตรึงค่า (w) หรือแสดงหน้าต่างสี่มิติด้วยการวางกริด 7x7 ซ้อนอยู่ภายในกริด 7x7
  • ในหน้าต่างมุมมอง 31x31x31x31 ดูเหมือนขยายออกไปด้านนอกโดยไม่มีการบีบอัดมากเกินไปแบบที่เห็นใน 3D

มิติที่สูงขึ้นและการหักมุมสุดท้าย

  • เมื่อขยายข้อจำกัดเดียวกันไปยังมิติสูงขึ้น ดูเหมือนว่ามิติที่ตรงเงื่อนไขจะมีเพียง 1D, 2D และ 4D
    • 1D คือ balanced ternary
    • 2D คือ wallflower หรือ quadratic flake
    • 4D คือ orthotopeflower
  • เมทริกซ์ที่เลือกใน 4D เข้ารหัสควอเทอร์เนียน (i+j+k) และจากสิ่งนี้สามารถคิดถึง balanced nonary quaternion base ที่มีฐานเป็น (i+j+k) และมีตัวเลขเป็น (0,\pm1,\pm i,\pm j,\pm k)
  • ผู้เขียนยังไม่แน่ใจว่าระบบควอเทอร์เนียนนี้ใช้งานได้จริงหรือไม่ จึงฝากไว้ให้ตัวเองในอนาคตที่รู้คณิตศาสตร์มากกว่านี้
  • ความพยายามที่จะจุดความสนใจด้านคณิตศาสตร์และการเขียนโปรแกรมขึ้นมาใหม่หลังภาวะหมดไฟ ได้เปลี่ยนภาพขีดเขียนเก่า ๆ ให้กลายเป็นการสำรวจที่เชื่อมจากแฟร็กทัล ระบบจำนวน พีชคณิตเชิงเส้น ไปจนถึงมิติสูง
  • หักมุมสุดท้ายคือ ภาพประกอบในบทความไม่ตรงกับแฟร็กทัลจริงบนผนังที่เห็นในภาพตัวอย่าง
    • การทำซ้ำครั้งที่ 4 ของของจริงบนผนังคัดลอกไปใน ทิศตรงข้าม กับมุมประมาณ 27 องศา
    • ตอนนั้นผู้เขียนคิดว่าหากเอียงไปทิศเดิมต่อไปเรื่อย ๆ จะหลุดออกจากแกน จึงพยายามแก้ชดเชย แต่โครงสร้างของ (M) นั้นชดเชยตัวเองอยู่แล้วในแต่ละขั้น
    • ปิดท้ายด้วยข้อสังเกตว่า Donald Knuth ก็เคยเลี้ยว ผิดทาง ตอนติดแฟร็กทัลบนผนังเช่นกัน

1 ความคิดเห็น

 
GN⁺ 2025-05-23
ความคิดเห็นจาก Hacker News
  • เป็นบทความที่มีมุมมองลึกซึ้งและใส่ใจมาก และ การแสดงภาพ 3D ดีเป็นพิเศษ
    ทำให้นึกถึงสิ่งที่เคยทำตอนลองปรับแต่ง recursive decimation เพื่อสร้างเอฟเฟกต์คล้ายแฟร็กทัลจากภาพใด ๆ
    ลองเล่นได้ที่นี่: https://jsfiddle.net/nicobrenner/a1t869qf/
    กด Blursort 2x2 สองสามครั้งเพื่อสร้างเฟรม แล้วกด Animate ก็พอ สามารถคัดลอก/วางรูปภาพได้ด้วย และทั้งหมดทำงานในเบราว์เซอร์โดยไม่มีแบ็กเอนด์ ไม่แนะนำให้ใช้บนมือถือ

    • สงสัยว่าสิ่งนี้จะทำงานใน 3D ได้ไหม
  • เหมือนผมจะติดใจเรื่องนี้จนทำรูปแบบเติม “wallflower” ด้วย L-system ขึ้นมา
    https://onlinetools.com/math/l-system-generator?draw=AB&skip...
    พอมาคิดอีกที อันนี้น่าจะสร้างแฟร็กทัลอีกแบบหนึ่ง แต่ก็ไม่แน่ใจ

  • ตอนแรกคิดว่าจะเป็นบทความอ่านเบา ๆ แต่ลึกกว่าที่คิด เลยต้องอ่านแบบกวาด ๆ ไปบางส่วนเพราะต้องทำงาน
    ตั้งใจว่าจะกลับมาเล่นโน่นนี่ทีหลัง เป็นบทความที่ทำออกมาได้ดีจริง ๆ

  • เป็นบทความที่ลึกและหนักกว่าที่คาดไว้มาก รู้สึกได้ถึง ความทุ่มเท
    อยากถามผู้เขียนว่า ตอนนี้จะแนะนำให้แขวนอะไรไว้บนผนังห้องลูกดี

    • ผมไม่ใช่ผู้เชี่ยวชาญด้านการเลี้ยงลูกเลย แต่คิดว่าอะไรก็ได้ที่เกี่ยวข้องกับสิ่งที่เด็กกำลังรู้สึก หลงใหลหรือพิศวง ในช่วงเวลานั้นน่าจะดี
      ผมใส่ย่อหน้าเกี่ยวกับภาวะหมดไฟไว้เล็กน้อยช่วงท้ายบทความ ในกรณีของผม รากของปัญหาคือการสูญเสียความหลงใหลและความอยากรู้อยากเห็นที่เคยมีต่อคณิตศาสตร์และการเขียนโปรแกรม และระหว่างเขียนบทความนี้ ผมก็ได้กลับไปสัมผัสความรู้สึกพิศวงแบบเด็ก ๆ ที่เมื่อก่อนเคยรู้สึกได้ง่ายอีกครั้ง
  • ลองตรวจเลขคณิตของจำนวนสองหลักสองตัวแล้ว มันใช้งานได้จริง
    คิดไว้ว่า 41+14 จะได้ 12 เพราะการบวกช่องทางขวาสองช่องกับช่องด้านบนสองช่อง จะได้ช่องทางขวาสองช่องกับช่องด้านบนสองช่อง
    ในการบวกยาวด้านล่าง ใช้ = เมื่อแสดงว่าเทียบเท่ากัน เช่น การสลับพจน์ (1+2=2+1), การแยกจำนวน (41=40+1), การบวกเลขหลักเดียว (1+4=22); ใช้ -> เมื่ออัลกอริทึมให้ค่าหลัก และใช้ < เมื่อย้ายไปคอลัมน์ถัดไป
    41+14 = (40+1)+(10+4) = 40 + 10 + (1+4) = 40 + 10 + 22 -> 1s digit = 2 < 4 + 1 + 2 = 22 + 2 = 20 + 2 + 2 = 20 + 41 -> 10s digit = 1 < 2 + 4 = 0 -> done == 12
    ในบทความมี ระบบฐาน สองแบบที่ต่างกัน แบบหนึ่งคือ 10, 20, 30, 40 เรียงตามเข็มนาฬิกา และอีกแบบเรียงทวนเข็มนาฬิกา ทั้งสองแบบมี 1, 2, 3, 4 เรียงตามเข็มนาฬิกา การบวกข้างบนอิงตามระบบที่สองที่ใช้ในตารางบวก คือระบบที่หลักสิบเรียงทวนเข็มนาฬิกา
    ในอีกระบบหนึ่งก็ทำงานได้เช่นกัน 14+21 ควรได้ 12
    14+21 =10+20+42 ->2 <1+2+4 =13+4 =10+3+4 =10+31 ->1 <1+3 =0 ==12

  • สงสัยว่าคิดระบบเลขแบบ “middle out” ขึ้นมาได้อย่างไร
    เวลานั่งแก้โจทย์คณิตศาสตร์คนเดียว ผมแทบไม่เคยคิดไอเดียที่เหมือนได้แรงบันดาลใจแบบนี้ออกเลย

    • ในบทความลำดับอาจดูต่างไปเล็กน้อย แต่สุดท้ายมันเริ่มจากจุดหนึ่งที่ผมตระหนักว่าวิธีที่แฟร็กทัล เติบโตขึ้น 5 เท่า, ระบบเลขฐาน 5 และ “เกลียว” ที่พูดถึงในบทความ สามารถเข้ากันได้
      ผมคิดเยอะมากด้วยว่าจะวาดแฟร็กทัลนี้ด้วยโปรแกรมอย่างไร วิธีที่เป็นธรรมชาติคือเริ่มจากตรงกลางแล้วขยายออกไปด้านนอก
      มีเกร็ดเล่าว่า Richard Feynman จะเก็บปัญหาแบบสุ่มไว้หลังฉากในหัวราวสิบกว่าข้อ แล้วค่อย ๆ เดินหน้าทีละนิดเมื่อเห็นความเชื่อมโยง และพอแก้ข้อหนึ่งได้ในที่สุด ผู้คนก็คิดว่าเขาคิดออกสด ๆ ราวกับใช้เวทมนตร์ ครั้งนี้ก็คล้ายกันนิดหน่อย แต่ผมห่างไกลจากระดับนั้นมาก และทำได้แค่กับปัญหาเดียว ไม่ใช่สิบกว่าข้อ
  • ที่ทำงานเก่าของผมเคยแขวนสิ่งนี้เป็น งานพิมพ์ขนาดใหญ่ ไว้บนผนัง
    https://raw.githubusercontent.com/cies/haskell-fractal/refs/... [17MB, ขอโทษที่เป็น Github]
    มีโค้ด Haskell ที่ใช้สร้างอยู่ด้วย: https://github.com/cies/haskell-fractal
    โดยเฉพาะกระบวนการคิดฟังก์ชัน sharpen น่าสนใจมาก สำหรับการฟิตเส้นโค้ง ใช้เครื่องมือที่ตอนนี้หายไปแล้ว: https://github.com/cies/haskell-fractal/blob/master/fractal....
    เป็นโปรเจกต์เล็ก ๆ ที่สนุกดี

  • เข้าใจความรู้สึกตรงประโยค “ตัดสินใจมอบหมายให้ตัวผมในอนาคตที่รู้คณิตศาสตร์มากกว่านี้”
    รายการปัญหาที่ควรต้องแก้ แต่แก้ไม่ได้เพราะมีแผนที่และการเชื่อมต่ออินเทอร์เน็ตไม่พอ มีอิทธิพลอย่างมากต่อการตัดสินใจว่าจะเรียนปริญญาอะไร ส่วนใหญ่เป็นปัญหา พีชคณิตเชิงเส้น

  • ดูเหมือนมีพิมพ์ผิดในสูตรของแพตเทิร์น สมการถัดจาก “Looking closely you might pick up on the pattern” ควรเป็น 5**(n/2) ไม่ใช่ 5**n และควรเป็น 5**((n-1)/2) ไม่ใช่ 5**(n-1)
    \overrightarrow{10*4} คือ [0, 25] แต่ตามสูตรเดิมจะได้ [0, 625]
    อีกอย่าง เรื่อง ข้อผิดพลาดของ Knuth นั้น ในคอมเมนต์ YouTube บอกว่าแฟร็กทัลของเขาจริง ๆ แล้วถูกต้อง เพียงแต่เขาสับสนจุดเริ่มต้นกับจุดสิ้นสุด พูดแบบคร่าว ๆ แฟร็กทัลนั้นสมมาตรตามการหมุนรอบศูนย์กลาง และการหมุนนั้นเองที่ Knuth คิดว่าผิด อย่างไรก็ดี ก็ถือว่าเขาพลาดเรื่องแฟร็กทัลอยู่ดี ดังนั้นข้อสรุปยังคงเดิม

    • จับได้ดีมาก และผมแก้ สูตร แล้ว