“任何數字最後都會變成 1” 這是真的嗎?── 試玩角谷猜想
你好!我是 kenji。
突然問一下,如果你聽到 “無論什麼數字最後都會變成 1 的規則”, 是不是覺得有點不可思議?
比如說 19,或者 87,甚至 1000000 也好。 只要按照適當的規則改變數字,不知為何最後都會收斂到 “1”。
這種像夢一樣的故事,就是 ** 角谷猜想(Collatz Conjecture) **。
到底什麼是角谷猜想?
首先來介紹規則。
起點:選擇任意 ** 正整數 **
操作:
- 如果是偶數 → 就減半(n → n / 2)
- 如果是奇數 → 就乘以 3 再加 1(n → 3n + 1)
如果一直重複這樣做,這就是一個 ** 任何數字最終都會到達 1 ** 的猜想。
例如,從 6 開始:
| |
乖乖變成 “1” 了。歡迎回來!
用程式碼試試看:用 Python 跑角谷猜想
說到這個,這時候用程式碼測試最快! 讓我們用 Python 來輸出 “角谷數列” 吧。
| |
執行結果:
| |
完美地到達了 1。 雖然繞了很大的遠路,但最後還是順利達陣!
順帶一提,即使從 29 開始,也會以同樣的方式到達 1。
| |
執行結果
| |
居然花了 111 個步驟!
而且,中途還有膨脹到 9000 以上的場面。 這是個瘋狂繞遠路之後才達陣的模式呢。
所以,這到底哪裡厲害?
這個猜想厲害的地方在於,
** 雖然還沒被證明,但不管用什麼數字似乎都會變成 1 **
就是這點。
咦?那 1 兆,或者 1 京呢…?
想到這裡的人,很敏銳。 實際上,已經用電腦確認到大約 “2 的 68 次方”, ** 全部都到達了 1 **。難以置信…。
但是,** 還沒有在理論上被證明 “全部都會這樣” **。 這就是在數學界被稱為 “未解問題” 的東西。
Collatz 先生是誰?
那麼,讀到這裡你一定會想 “說到底 Collatz 是誰?” 吧。 我來好好介紹一下!
- 姓名: ** 洛塔爾·科拉茨 (Lothar Collatz) **
- 國籍:德國
- 生卒年:1910年〜1990年
- 頭銜:數學家(活躍於泛函分析和數論領域)
他在 1937 年提出了這個猜想, 之後的 80 多年來, ** 誰也沒能證明,也無法反證 **。
順帶一提,這個問題雖然很簡單,但卻深奧到 就連保羅·艾狄胥(超級有名的數學家)都這麼說。
“數學還沒有成熟到可以處理角谷猜想”
也就是說,人類的數學還沒追上這個謎團的說法…。
不需要 “艱澀的數學公式”
角谷猜想的優點是, ** 任何人都可以玩 **。
只要有紙和筆就能算。 用 Python 寫程式碼的話,可以自動測試。 即便如此, ** 最頂尖的數學家們卻在認真挑戰它 **。
總覺得,是不是很令人興奮?
附錄:一口氣測試的程式碼
我也把能一次測試各種數字的程式碼貼上來。
| |
這能一口氣印出 “1~20” 的角谷數列。
結論:這個世界,果然不可思議
這就是角谷猜想。
- 明明超級簡單
- 卻誰也無法證明
- 在數學界是個大問題
就是這樣一個像謎團綜合體般的存在。
因為即使是程式設計初學者也能嘗試,請務必玩玩看喔~!
推薦連結(給有興趣的人)
- Wikipedia: 角谷猜想
- Terence Tao 論文(英文)
- 試著做個 Python 視覺化版本也很有趣喔!(如果有需求的話我會做)
如果你想知道更多這類 “不可思議系數學×程式設計” 的題材, 請隨時提出 “多教我一點” 的要求。 之後我也會介紹黎曼猜想、質數等等的各種話題!
📮結束!
