يقول اللغز أنّك أنت وصديقك قد سُجنتما فقدّم لكما السجّان تحديّاً بالقواعد التالية:
• سيأخذك السجان إلى زنزانة منفردة، وهناك ستجد رقعة شطرنج وبجانبها علبة تحوي 64 قطعة نقدية.
• سيبدأ السجّان بتناول القطع قطعة تلوَ الأخرى ووضع كل قطعة فوق مربع من رقعة الشطرنج. سيضعها بشكل عشوائي. بعضها سيكون كتابة وبعضها نقشاً (وقد تكون جميعها كتابة، أو جميعها نقشاً، ليس لديك أدنى فكرة، كل ذلك عائد لرغبة السجان، قد يرى أن يرسم بها شكلاً ما، قد يرميها في الهواء و يوزعها كما سقطت، قد ينظر إليها وهو يضعها وقد لا يفعل…)، إذا حاولت أن تتدخل في كيفية وضع القطع النقدية ستلقى حتفك. إن حاولت إقناع، إجبار أو حتى مناقشة السجان حول كيفية توزيعه للقطع يحكم عليك بالموت فوراً. كل ما يمكنك فعله هو المشاهدة.
• ما أن ينتهي السجان من وضع جميع القطع فوق لوح الشطرنج، سيشير إلى واحد من مربعات الرقعة ويقول لك :”هذا المربع” وسيكون ذاك المربع عندها، المربع السحري، مفتاح بابك إلى الحرية.
• بعدها سيسمح السجان لك بحركة لواحدة من تلك القطع تختارها أنت، فإن اخترت قطعة كتابة ستُقلب نقشاً، وإن اخترت نقشاً ستُقلب كتابةً، تلك هي الحركة الوحيدة المسموحة لك ضمن ترتيب السجّان.
• ثم ستقاد خارج الزنزانة، وإن تركت رسالة لصديقك أو إشارة خلفك.. نعم، لقد حزرت!… يحكم عليك بالموت الحتمي.
• سيجلب بعدها السجان صديقك إلى الزنزانة المنفردة.
• سينظر صديقك إلى رقعة الشطرنج (اللمس غير مسموح)، يتفحصه بحذر ويقرر أي موقع يظن أنه المربع السحري.
• لديه فرصة وحيدة (لا مجال للتراجع). بالاعتماد على ترتيب القطع النقدية سيشير إلى أحد المربعات ويقول : “هذا المربع!”.
• إذا حزر بشكل صحيح، سيعفى عنكما، ويتم إطلاق سراحكما في الحال. إذا حزر بشكل خاطئ، سيتم إعدام كليكما.
• سيشرح لكما السجان كل تلك القواعد سلفاً، وعندها سيعطيكما الوقت الكافي لتتشاورا حتى تبتكرا استراتيجية لمعرفة أي قطعة نقدية ستقلبان.

ما هي استراتيجيتكما. كيف تهربان؟

هل أنه من المستحيل ابتكار استراتيجية؟

للوهلة الأولى سيبدو هذا اللغز مستحيل الحل. لا نملك السيطرة على السجّان. يمكن للرقعة أن تحمل أي تصميم كان قبل أن نحظى بفرصة قلب القطعة النقدية. ولتعقيد الأمور، ليس لدينا أية فكرة أي مربع سيشير إليه السجان. في الحقيقة، ربما السجّان في حد ذاته لا يعلم ما هو المربع الذي سيختاره في النهاية في أثناء توزيعه للقطع فوق الرقعة بدايةً.

هناك 64 مربعًا من المحتمل أن يشير إليها. هذا يعني 26 جوابًا ممكنًا. نحتاج إلى 6 bits من المعلومات لنميز بوضوح المربع الهدف. عند قلب القطعة النقدية، ذلك الـ1 bit من المعلومات، كاف للاختيار بين خيارين (وهذا يفترض قدرتنا في الحصول على هذا bit حتى!) لأنه لا يمكننا تغيير الحالة السابقة للرقعة، لا يوجد أية طريقة لصديقنا بأن يحزر أية قطعة نقدية قُلِبَت. فكر بهذا، لو دخل صديقك الغرفة ورأى 63 نقشاً وكتابة واحدة، من المستحيل أن يعرف إن كانت الكتابة هي القطعة التي قلبتها، أو أنه قبل أن تغيّر من ترتيب الرقعة كان لديك 62 نقشاً وقلبت أحدها إلى كتابة.
هل بإمكانك أن تجمع 6 bits من المعلومات بقلبة قطعة نقدية واحدة؟

هناك استراتيجية تسمح لك بالهرب مع اليقين 100% بغض النظر عن الحالة الأولية للرقعة وأياً كان المربع السحري الذي سيختاره السجان. أشجعك أن تفكر باللغز ولو لدقيقة حتى لو كنت ستقرأ دون محاولتك حله.
( قبل أن تسأل فإن الحل لا يتضمن أي نوع من الغش، الحيلة أو الخداع. إنه حل رياضي بحت).

 ابدأ بخطوات صغيرة:

من الممكن حل هذا اللغز، لأنه في الحقيقة يوجد أكثر من 1 bit من المعلومات التي يتم تناقلها بينك و بين صديقك. حالة باقي القطع النقدية فوق الرقعة يخزن معلومات أيضاً، ويمكننا استثمار ذلك. هناك ما يكفي حقاً من الـbits التي يمكن السيطرة عليها والتي تحمل المعلومات (6 bits) ضمن ترتيب الرقعة يمكننا استخدامها لتوفير معلومات كافية لتحديد أي مربع كان على الرقعة.
لفهم هذا سنحتاج بعض الفهم للعد الثنائي، بشكل مطلق أو كتوابع، وما يكافئه. سأتكلم عن ذلك بشكل مختصر، ولكن الأمر يستحق التفكير بنسخة مصغرة من هذا اللغز في البداية.

مربعان:

تخيل أنه لدينا رقعة مكونة من مربعين. سيكون لدى السجّان أربعة احتمالات لتوزيع القطع النقدية:


كتابة نقش، نقش كتابة، نقش نقش و كتابة كتابة. وهناك احتمالان أمام السجّان لاختيار المربع السحري.
سابقاً، قد وافقنا على أحد القواعد. تقول القاعدة، إن أشار السجان إلى المربع الأول (الأبيض)، عندها سأحرص أن أجعل نقشاً في المربع الأوّل. وهنا لدينا جميع الاحتمالات الممكنة والقطع النقدية التي أحتاج قلبها:


لو كان لدينا الترتيب كتابة كتابة، سأقلب القطعة الأولى. لو كان لدي نقش نقش، سأقلب القطعة الثانية بما أن القطعة الأولى كانت نقشاً منذ البداية (وذلك لا يشكل فرقاً بالنسبة لقاعدتنا، ولكن علينا قلب قطعة لا محالة). لو كان الترتيب الأول كتابة نقش، سأقلب القطعة الأولى أيضاً. وأخيراً لو كان لدي نقش كتابة، سأقلب القطعة الثانية.
في كل ما سبق، لدينا نقش في المربّع الأول. قد دلّتنا قاعدتنا أن السجان قد اختار المربّع الأول.
باختصار، لو أن السجان اختار المربع الثاني عندها سأحرص على ألا يكون المربع الأول نقشاً. هذا هو المفتاح الذي سيخبر صديقي أن المربع السحري ليس المربع الأول.


فيما سبق، لا يوجد نقش في المربع الأول، وقد أخبرتنا قاعدتنا أن السجّان اختار المربع الثاني. – – حلّ اللغز!

* الاستقراء

علماء الرياضيات (وبعض مبرمجي الكمبيوتر)، سيقولون لك إن هذا كل ما عليك القيام به لإثبات أن حل مشكلة رقعة الشطرنج ممكن. إذا كنا نستطيع ترميز 1 bit من المعلومات (أيٌ من الحالتين اختار السجان) باستخدام مربعين، ثم باستخدام الاستقراء يمكننا أن نثبت إمكانية ترميز اثنين من البتات باستخدام أربعة مربعات، أو ثلاثة بتات باستخدام ثمانية مربعات … أو ستة بتات باستخدام أربعة وستين مربع. إنها نوع العودة في الاتجاه المعاكس: بدءاً من لبنة صغيرة، نستطيع أن نبني لإيجاد القوة التالية التي رفعت لاثنين.

1، 2، 4، 8، 16، 32، 64

لنرَ إذا فهمنا كيف يبدو الموضوع.

* العد الثنائي

لأننا ننطلق بالاعتماد على القوى المضاعفة، يمكننا استخدام العد الثنائي لتمثيل أو تخيل حالة الرقعة، وما هو تشكيل البتات التي نحتاج أن نتطلع إليها، هنا على اليسار لدينا رسم لرقعة شطرنج، إذا رقّمنا الشبكة ابتداء من الصفر من الأعلى أقصى اليسار، وانتهاء بثلاث وستين من الأسفل أقصى اليمين، ثم باستخدام العد الثنائي يمكننا أن نمثّل كلّ مربّع بعدده الممثّل ثنائياً.
الرسم هنـا. النقر على مربع من الشبكة يدل على التمثيل الثنائي لذلك المربع.
الرقم في أسفل اليسار يظهر التمثيل الثنائي للمربع. وكل رقم يمثل المجموعة التي ينتمي إليها ذلك المربع. والرقم 1 في أي موقع يدل على أن المربع ينتمي إلى نصف معين من المجموعة، والرقم 0 يدل أنه في النصف الآخر. حسب التعريف فإن كل مربع هو فريد من نوعه ومكوّن من مجموعة متميزة من البتات.
سنستخدم هذه المعلومات لاحقاً.

* التجزئة

عوضاً عن استخدام مربعين، كما في مثالنا البسيط، سنجزئ رقعة الشطرنج إلى مجموعات متنوعة من مجموعتين ( مثلاً مربعات زوجية/فردية ، بالاعتماد على الترشيح الذي تقدمه لنا الأنماط المشكلة من الأعداد الثنائية). نحتاج أن نطبّق قاعدتنا المميزة على هاتين المنطقتين/المجموعتين عوضاً عن تطبيقها على مربع واحد فقط. لو كان المربع السحري يقع في المنطقة الأولى، نحتاج أن نؤشر طريقاً واحداً، ولو وضع في المنطقة الثانية، سنؤشر طريقاً أخرى.
بما أن مناطقنا هي مجموعة من المربعات. لا يمكننا أن نؤشرها نقشاً ككل (يسمح لنا بقلب قطعة نقدية واحدة فقط). عوضاً عن ذلك سنقلب قطعة واحدة في منطقة ما، يمكننا إحصاء عدد النقوش في المنطقة المهتمين بها. إذا كان العدد الكلي للنقوش فردياً، سنعرّف ذلك كواحد، لو كان العدد الكلي زوجي، سنعرّفه كصفر. بسبب طريقة عمل الأرقام، فإن قلب أي قطعة نقدية مفردة في منطقة سيغير عدد النقوش في تلك المنطقة من فردي لزوجي، وبالعكسية ( جمع أو طرح، واحد لأي رقم يحول حالته الزوجية أو الفردية).
هذا هو مبدأ التجزئة، وهذا الانتقال من حالة إلى أخرى بزيادة أو طرح بت واحد مستخدم بكثرة بالحاسب. لو وجد عدد فردي من النقوش في منطقة، سنصوّر ذلك كأنما المنطقة تكافئ الواحد. لو وجد عدد زوجي من النقوش في منطقة، سنصوّر ذلك كأنما المنطقة تكافئ الصفر.
لتغيير العدد الذي تكافئه المنطقة ما علينا سوى أن نقلب قطعة نقدية في تلك المنطقة.
اعتماداً على قوى 2، هناك عدة طرق لتقسيم رقعة الشطرنج إلى منطقتين. فيما يلي صور للطرق المتعددة لتجزئة الرقعة اعتماداً على وجود أو عدم وجود ذلك البت (القوة ل2) لرقم المربع. تراكب هذه المرشحات يعني أنه من الممكن تحديد مربع واحد يمكننا قلبه من شأنها تعديل التكافؤ في أي/كل من االبتات.

 

20 توافق بوابة AND بمداخل 000001 ،21 توافق بوابة AND بمداخل 000010 …25 توافق بوابة AND بمداخل 100000.
بالتعريف، فإن كل مربع في الشبكة قد حصل على نمط معين خاص به. من الممكن قلب قطعة واحدة لتغيير تجزئة أية تشكيلة من هذه المرشحات فقط بمعرفة أية هذه الأنماط تتراكبها البتات. أبدأت تلمح حلاً ما؟

إن الرقعة التي سيخرجها السجّان ستحتوي على تجزئة بطبيعتها. توضع القطع بشكل عشوائي، ويمكننا معرفة نمط هذه التجزئة بالاعتماد على الأنماط الستة العليا، وعدد النقوش بكل منطقة. هذا الخليط من بتات التجزئة سيصوّر رقم عشوائي من ستة بتات.
يتطلب المربع السحري ستة بتات لمعرفته ، ويمكننا ترميز ذلك بتجزئة الرقعة.
ونحن نعلم أنه يمكننا تغيير أية قطعة واحدة لتسبب هذا لتعديل كل / أي بت من الرقم. كل ما عليك القيام به هو العثور على القطعة الصحيحة لتقلبها وتغير تشكيلة التجزئة لتصوّر العدد الذي نريد تمثيله (الترميز الثنائي للمربع السحري).
قد اقتربنا من الحل!

* الخلاصة

لنجمع كلّ ما لدينا من معلومات بطريقة تفاعلية. في الأسفل لدينا تصويران لرقعة الشطرنج. باستخدام الرقعة اليسارية، يمكنك أن تختار المربع السحري فتلعب دور السجان. تحت المربع، باللون الأحمر، تجد رقم المربع الهدف على الرقعة، وعلى يساره ستجد تمثيله الثنائي. جرب ذلك!
المربع اليميني يمثل القطع النقدية على الرقعة. مراعاة للوضوح، سيوضح المربع النقوش فقط (المربعات الخالية تصور وجوود كتابة عليها). المربع يحوي قطع نقدية موزعة بشكل عشوائي. يمكنك أن تكبس أي مربع لتغير وضعية القطعة فيه بشكل يدوي. إلى اليمين هناك زران اختياريان، “عشوائي” لإعادة ترتيب الرقعة بشكل عشوائي. “مسح” هذا الزر يجعل كل القطع موضوعة بوضعية الكتابة (ذلك نافع فعلاً حيث أنك تستطيع ملء الرقعة بالنقوش كما تريد ومعرفة ما مدى تأثير ذلك) حاول تجربة ذلك!
أسفل المربع الأيمن، ولليسار، باللون الرمادي، ستجد التجزئة الطبيعية للرقعة. أخيراً، كما هو مبين باللون الأخضر، هو رقم القطعة النقدية التي عليك قلبها لتحل اللغز. الرقم باللون الأخضر سينقذ حياتك كما أنه مكتوب بالتمثيل الثنائي أيضاً.

المربع التفاعلي هنا

– كيفية حساب تلك القيم:

نعلم مسبقاً كيفية استنتاج الرقم الموجود إلى اليسار. إنه ببساطة التمثيل الثنائي للمربع.كل بت من الرقم يمثل فيما لو كانت القطعة موجودة أو غير موجودة في أنماط مرشحات القوى لـ2 التي رأيناها مسبقاً.
في المربع الأيمن، الرقم الرمادي هو التجزئة الطبيعية للرقعة بالاعتماد على تموضع القطع النقدية. لكل مرشح من نمط قوى لـ2 سنكتشف هل يوجد عدد فردي أو زوجي من النقوش في المنطقة. القيمة واحد لأي منطقة تخبرنا أن هناك عدد فردي من النقوش في تلك المنطقة.
يظهر العدد الأخضر حالة المربع بحيث، إذا تم تعديل هذا المربع، فإن نمط تجزئة الرقعة سيظهر عدد المربع المنشود. إنه المربع الوحيد القادر على تغيير حالة البتات من عشوائية (كما عرفت) إلى القيمة المطلوبة. ويتم حسابه عن طريق إجراء عملية XOR)eXclusive-OR) أحادية معامل بين نمط تجزئة الرقعة الأولي و القيمة المطلوبة.
XOR
عملية XOR ( أحدهما أو الآخر ولكن ليس كليهما) تستخدم بكثرة ببرمجة الحاسب. تملك خاصيتين مثيرتين للاهتمام.
إذا استخدمت مع الدخل القيمة نفسها مرتين ستعيد قيمة الدخل الأصلية.

أيضاً، إذا تم تطبيق هذه العملية على عدد مكون من عدد من البتات، فإنه سيسبب بقلب كل بت من بتات العدد. أن تقوم بها على عدد لديه مجموعة من البتات فإنك تقلب هذه البتات وتحافظ على ما تبقى.
هذا هو سبب استخدامنا عملية XOR لتحديد القطعة الصحيحة لنقوم بقلبها. لكل بت تجزئة، إنها إما القيمة الصحيحة بالفعل، وعندها نريد الحفاظ عليها فنقوم بعملية XOR مع 0 في هذه النقطة، أو نود تبديل ذلك فنقوم بعملية XOR مع 1 عندها.
مثال:
إذا كان المربع الذي نريد اختياره هو 101001 (مربع 41)، ونمط تجزئة الرقعة هو 010101، فإن القطعة اللازم قلبها هي 111100 (مربع 60).

 

وبهذا يمكننا أن نرى بالمثال كيف تعمل تبادلية عملية XOR، وكيف أن انعكاس هذه العملية تؤكد عودتنا للمربع السحري. (يمكنك أيضاً استخدام XOR لحساب تجزئة الرقعة بسرعة! وذلك بالمرور على القطع فوق الرقعة واختيار كل النقوش وإجراء XOR لقيمة كل مربع يحتويها. لكل مجموعة بتات تقلب 0/1. رائع!).

الرياضيات قد تنقذ حياتك!

المصدرimpossible escape

  • إعداد: آيلة قسيس
  • مراجعة: شهاب البرقاوي
  • كلمات دلالية
  • pick
مشاركة!

تعليق واحد

تعليق

لطفت، أدخل تعليقك هنا
لُطفا، أدخل اسمك هنا