Featured image of post حدسية كولاتز

حدسية كولاتز

“هل حقًا ينتهي أي رقم بالعدد 1؟” ── اللعب بحدسية كولاتز

مرحبًا! أنا كينجي.

سؤال مفاجئ: عندما تسمع “قاعدة تجعل أي رقم ينتهي في النهاية إلى 1”، ألا يبدو ذلك غريبًا بعض الشيء؟

على سبيل المثال، 19، أو 87، أو حتى 1000000. إذا اتبعت قاعدة معينة وتلاعبت بالأرقام، لسبب ما تنتهي دائمًا عند “1”.

هذه القصة التي تشبه الحلم هي حدسية كولاتز (Collatz Conjecture).


في البداية، ما هي حدسية كولاتز؟

أولاً، دعني أقدم لك القواعد.

  • البداية: اختر أي عدد صحيح موجب

  • العملية:

    • إذا كان زوجيًا → اقسمه على النصف (n → n / 2)
    • إذا كان فرديًا → اضربه في 3 وأضف 1 (n → 3n + 1)

إذا كررت هذا مرارًا وتكرارًا، فإن التوقع هو أن أي رقم سيصل في النهاية إلى 1.

على سبيل المثال، إذا بدأنا بـ 6:

1
6 → 3 → 10 → 5 → 16 → 8 → 4 → 2 → 1

أصبح “1” بالفعل. مرحبًا بعودتك!


لنجرب ذلك بالرموز: كولاتز باستخدام بايثون

حسنًا، في مثل هذه الحالات، من الأسرع تجربة الكود! دعنا نطبع “متتالية كولاتز” باستخدام بايثون.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
def collatz(n):
    steps = [n]
    while n != 1:
        if n % 2 == 0:
            n = n // 2
        else:
            n = 3 * n + 1
        steps.append(n)
    return steps

# مثال: لنبدأ بـ 19
print(collatz(19))

عند التشغيل:

1
[19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]

يصل إلى 1 بنجاح. لقد اتخذ طريقًا التفافيًا طويلاً، لكنه وصل إلى خط النهاية في النهاية!

بالمناسبة، حتى لو بدأنا بـ 29، فإنه يصل إلى 1 بنفس الطريقة.

1
pythonprint(collatz(29))

عند التشغيل:

1
2
3
4
5
6
7
8
[27, 82, 41, 124, 62, 31, 94, 47, 142, 71, 214, 107, 322, 161, 484, 242,
121, 364, 182, 91, 274, 137, 412, 206, 103, 310, 155, 466, 233, 700, 350,
175, 526, 263, 790, 395, 1186, 593, 1780, 890, 445, 1336, 668, 334, 167,
502, 251, 754, 377, 1132, 566, 283, 850, 425, 1276, 638, 319, 958, 479,
1438, 719, 2158, 1079, 3238, 1619, 4858, 2429, 7288, 3644, 1822, 911,
2734, 1367, 4102, 2051, 6154, 3077, 9232, 4616, 2308, 1154, 577, 1732,
866, 433, 1300, 650, 325, 976, 488, 244, 122, 61, 184, 92, 46, 23, 70, 35,
106, 53, 160, 80, 40, 20, 10, 5, 16, 8, 4, 2, 1]

يستغرق الأمر 111 خطوة مذهلة!

وعلاوة على ذلك، في بعض الأحيان يتضخم إلى أكثر من 9000 في الطريق. هذا نمط يأخذ طريقًا التفافيًا ضخمًا قبل الوصول إلى خط النهاية.


إذن، ما هو الشيء المذهل في النهاية؟

الشيء المذهل في هذه الحدسية هو،

على الرغم من أنها لم تُثبت، يبدو أنها تصل دائمًا إلى 1 بغض النظر عن الرقم الذي تستخدمه

هنا تكمن الروعة.

ماذا؟ إذن، ماذا عن تريليون، أو كوادريليون…؟

لمن فكر في ذلك، أنت حاد الذكاء. في الواقع، باستخدام أجهزة الكمبيوتر، تم التحقق من ذلك حتى “2 أُس 68”، و جميعها تصل إلى 1. أمر لا يصدق…

ولكن، لم يُثبت نظريًا أن “كل شيء سيكون على هذا النحو”. هذا ما يسمى “مشكلة غير محلولة” في عالم الرياضيات.


من هو السيد كولاتز؟

والآن، بعد قراءة هذا الحد، قد تتساءل: “من هو كولاتز في المقام الأول؟” سأقدمه لك بشكل صحيح!

  • الاسم: لوثار كولاتز (Lothar Collatz)
  • الجنسية: ألماني
  • سنة الميلاد: 1910 - 1990
  • المسمى الوظيفي: عالم رياضيات (نشط في مجالات التحليل الدالي ونظرية الأعداد)

اقترح هذه الحدسية في عام 1937، ومنذ ذلك الحين، لأكثر من 80 عامًا، لم يتمكن أحد من إثباتها أو دحضها.

بالمناسبة، هذه المشكلة بسيطة للغاية ولكنها عميقة جدًا، حتى أن بول إيردوس (عالم الرياضيات الشهير) قال شيئًا كهذا.

“الرياضيات ليست ناضجة بما يكفي للتعامل مع كولاتز بعد”

بمعنى آخر، النظرية هي أن رياضيات البشرية لم تلحق بعد بهذا اللغز…


“الصيغ الرياضية المعقدة” ليست ضرورية

الشيء الجيد في حدسية كولاتز هو أنه يمكن لـ أي شخص اللعب بها.

كل ما تحتاجه هو ورقة وقلم. إذا كتبت كودًا بلغة بايثون، يمكنك اختباره تلقائيًا. ومع ذلك، يتحدى علماء الرياضيات البارزون ذلك بجدية.

ألا يبدو ذلك مثيرًا؟


مكافأة: كود لاختبار العديد من الأرقام دفعة واحدة

سأقوم أيضًا بتضمين كود لاختبار العديد من الأرقام معًا.

1
2
3
for n in range(1, 21):
    steps = collatz(n)
    print(f"{n}: {steps} (عدد الخطوات: {len(steps)-1})")

هذا سيخرج متتالية كولاتز للأرقام من “1 إلى 20” دفعة واحدة.


الخلاصة: هذا العالم غريب حقًا

إذن، هذه هي حدسية كولاتز.

  • على الرغم من أنها بسيطة جدًا
  • لا يمكن لأحد إثباتها
  • إنها مشكلة كبيرة في عالم الرياضيات

لقد كان وجودًا يبدو ككتلة من الغموض.

حتى المبتدئين في البرمجة يمكنهم تجربتها، لذا يرجى اللعب بها!


روابط موصى بها (للمهتمين)


إذا كنت ترغب في معرفة المزيد من القصص حول “الرياضيات الغامضة × البرمجة”، لا تتردد في طلب “أخبرني المزيد”. قريبًا، سأقدم لك فرضية ريمان، الأعداد الأولية، والمزيد!


📮 النهاية!


comments powered by Disqus
مبني بستخدام Hugo
قالب Stack مصمم من Jimmy