مقدمة في نظرية الأعداد
استخدمنا الأعداد الطبيعية (Natural Numbers) لحل المسائل. وكانت هذه هي مجموعة الأعداد المناسبة للعمل بها في الرياضيات المتقطعة (Discrete Mathematics)، لأننا تعاملنا دائمًا مع عدد صحيح من الأشياء. لقد كانت الأعداد الطبيعية أداة. فلنتوقف الآن قليلًا لتفحّص هذه الأداة. ما الاكتشافات الرياضية التي يمكننا التوصل إليها عن الأعداد الطبيعية نفسها؟
هذا هو السؤال الرئيسي لنظرية الأعداد (Number Theory): فرع ضخم وعريق ومعقّد، وقبل كل شيء جميل، من فروع الرياضيات. تاريخيًا، عُرفت نظرية الأعداد بأنها ملكة الرياضيات، وكانت إلى حد كبير فرعًا من الرياضيات البحتة (Pure Mathematics)، تُدرَس لذاتها لا بوصفها وسيلة لفهم تطبيقات العالم الحقيقي. لكن هذا تغيّر في السنوات الأخيرة، مع اكتشاف تطبيقات لنظرية الأعداد. ولعل أشهر مثال على ذلك هو التشفير باستخدام RSA، إحدى الطرق المستخدمة لتشفير البيانات على الإنترنت. ونظرية الأعداد هي ما يجعل هذا ممكنًا.
ما أنواع الأسئلة التي تنتمي إلى مجال نظرية الأعداد؟ إليك مثالًا محفِّزًا. تذكّر أننا سألنا في دراستنا للاستقراء (Induction):
ما قيم الرسوم البريدية التي يمكن تكوينها بالضبط باستخدام طوابع من فئتي 5 سنتات و8 سنتات فقط؟
استطعنا إثبات إمكان تكوين أي مبلغ أكبر من 27 سنتًا. وقد تتساءل عما سيحدث إذا غيّرنا فئات الطوابع. ماذا لو كانت لدينا بدلًا منها طوابع من فئتي 4 سنتات و9 سنتات؟ هل يوجد مبلغ تصبح بعده جميع المبالغ ممكنة؟ حسنًا، يمكننا مرة أخرى استبدال طابعين من فئة 4 سنتات بطابع من فئة 9 سنتات، أو ثلاثة طوابع من فئة 9 سنتات بسبعة طوابع من فئة 4 سنتات. وفي كل حالة، يمكننا زيادة الرسوم البريدية سنتًا واحدًا. واستخدام هذا بوصفه حالة الاستقراء سيسمح لنا بإثبات إمكان تكوين أي مبلغ من الرسوم البريدية أكبر من 23 سنتًا.
ماذا لو كانت لدينا طوابع من فئتي سنتين و4 سنتات؟ يبدو الأمر هنا أقل تبشيرًا. إذا أخذنا عددًا من الطوابع ذات السنتين وعددًا من الطوابع ذات الـ4 سنتات، فماذا يمكننا أن نقول عن المجموع؟ هل يمكن أن يكون فرديًا في أي وقت؟ لا يبدو ذلك.
لماذا ينجح العددان 5 و8، وينجح العددان 4 و9، ولا ينجح العددان 2 و4؟ ما الخاصية التي تتميّز بها هذه الأعداد؟ إذا أعطيتك زوجًا من الأعداد، فهل يمكنك أن تخبرني فورًا إن كانا سينجحان أم لا؟ سنجيب عن هذه الأسئلة وعن غيرها، بعد أن نستقصي أولًا بعض الخصائص الأبسط للأعداد نفسها.
قسم فرعي: قابلية القسمة (Divisibility)
من السهل جمع الأعداد الطبيعية وضربها. وإذا وسّعنا اهتمامنا ليشمل جميع الأعداد الصحيحة (Integers)، يصبح الطرح سهلًا أيضًا (نحتاج إلى الأعداد السالبة حتى نستطيع طرح أي عدد من أي عدد آخر، حتى الأكبر من الأصغر). القسمة هي أول عملية تطرح تحديًا. إذا أردنا توسيع مجموعة أعدادنا بحيث تكون أي قسمة ممكنة (ربما باستثناء القسمة على 0)، فسنحتاج إلى النظر في الأعداد النسبية (Rational Numbers)، أي مجموعة جميع الأعداد التي يمكن كتابتها على هيئة كسور. لكن هذا سيذهب بنا بعيدًا جدًا، لذا سنرفض هذا الخيار.
في الواقع، من الجيد ألا يكون كل عدد قابلًا للقسمة على الأعداد الأخرى. فهذا يساعدنا على فهم بنية الأعداد الطبيعية، ويفتح الباب أمام كثير من الأسئلة والتطبيقات المثيرة للاهتمام.
إذا أُعطي العددان و، فقد يكون ناتج عددًا صحيحًا. في هذه الحالة، نقول إن يقسم ؛ وبالرموز نكتب إذا صح ذلك، فإن قاسم (Divisor) أو عامل (Factor) للعدد ، و مضاعف (Multiple) للعدد بعبارة أخرى، إذا كان ، فإن لعدد صحيح ما (أي إن مضاعف ما للعدد ).
علاقة قابلية القسمة (Divisibility Relation).
إذا أُعطي العددان الصحيحان و، نقول « يقسم »، ونكتب:
بشرط أن يكون عددًا صحيحًا. ومن ثم فإن العبارات الآتية تعني الشيء نفسه:
- لعدد صحيح ما
- عامل (أو قاسم) للعدد
- مضاعف للعدد
لاحظ أن عبارة، فهي إما صحيحة وإما خاطئة. أما أو ، فهو عدد ما. إذا أردنا القول إن ليس عددًا صحيحًا، ومن ثم فإن لا يقسم ، فيمكننا كتابة
مثال 6.2.1.
حدّد ما إذا كانت كل عبارة من العبارات الآتية صحيحة أم خاطئة.
الحل.
- صحيحة. العدد 4 «يدخل في» 20 خمس مرات دون باقٍ. بعبارة أخرى، وهو عدد صحيح. ويمكننا أيضًا تبرير ذلك بالقول إن مضاعف للعدد 4:
- خاطئة. مع أن 20 مضاعف للعدد 4، فليس صحيحًا أن مضاعف للعدد 20.
- خاطئة. غير معرّف أصلًا، فضلًا عن أن يكون عددًا صحيحًا.
- صحيحة. في الواقع، صحيحة لكل وذلك لأن 0 مضاعف لكل عدد:
- صحيحة. في الواقع، صحيحة لكل
- صحيحة. العدد 1 يقسم كل عدد (عدا 0).
- صحيحة. تعمل الأعداد السالبة دون أي مشكلة في علاقة قابلية القسمة. هنا وصحيح أيضًا أن ، وأن
- خاطئة. كل من 8 و12 يقبل القسمة على 4، لكن هذا لا يعني أن يقبل القسمة على
- خاطئة. انظر أدناه.
يثير هذا المثال الأخير سؤالًا: كيف يمكن أن نقرّر ما إذا كان بالطبع، إذا كانت لديك آلة حاسبة موثوقة، يمكنك أن تطلب منها قيمة وإذا أعطتك أي شيء غير عدد صحيح، فتعرف أن لكن هذا يبدو أشبه بالغش بعض الشيء: ليست لدينا القسمة، فهل ينبغي حقًا أن نستخدم القسمة للتحقّق من قابلية القسمة؟
مع أننا لا نعرف حقًا كيف نقسم، فإننا نعرف كيف نضرب. يمكننا محاولة ضرب في أعداد تتزايد تباعًا حتى نقترب من إلى أي حد نقترب؟ نريد أن نتأكد من أننا إذا ضربنا في العدد الصحيح الأكبر التالي، تجاوزنا
مثلًا، لنجرب هذه الطريقة لنقرّر ما إذا كان ابدأ بإيجاد مضاعفات العدد 1642:
جميع هذه القيم أصغر بكثير من 136299. أظن أن بإمكاننا القفز إلى الأمام قليلًا:
آه، إذن علينا البحث في موضع ما بين 80 و85. جرّب 83:
هل هذا أفضل ما يمكننا فعله؟ كم نبتعد عن القيمة المطلوبة، 136299؟ إذا طرحنا، نحصل على لذا نعرف أننا لا نستطيع الانتقال إلى 84؛ إذ سيكون ذلك أكبر من المطلوب. بعبارة أخرى، وجدنا أن:
بما أن يمكننا الآن القول بثقة إن
يتبيّن أن العملية التي اتّبعناها أعلاه يمكن تكرارها لأي زوج من الأعداد. يمكننا دائمًا كتابة العدد بوصفه مضاعفًا ما للعدد ، مضافًا إليه باقٍ ما. نعرف ذلك لأننا نعرف القسمة مع الباقي من المدرسة الابتدائية. وهذه ليست سوى طريقة للتعبير عنها باستخدام الضرب. وبسبب الطبيعة الإجرائية التي يمكن استخدامها لإيجاد الباقي، تُسمّى هذه الحقيقة عادةً خوارزمية القسمة (Division Algorithm):
خوارزمية القسمة.
إذا أُعطي أي عددين صحيحين و، يمكننا دائمًا إيجاد عدد صحيح بحيث:
حيث عدد صحيح يحقّق .
الفكرة هي أننا نستطيع دائمًا أخذ مضاعف كبير بما يكفي للعدد ، بحيث يكون الباقي أصغر ما يمكن. ونسمح بإمكان أن يكون ، وفي هذه الحالة يكون لدينا
قسم فرعي: فئات البواقي (Remainder Classes)
تخبرنا خوارزمية القسمة بأن هناك بواقي ممكنة فقط عند القسمة على إذا ثبّتنا هذا القاسم، يمكننا تجميع الأعداد الصحيحة بحسب الباقي. وتُسمّى كل مجموعة فئة بواقٍ بترديد (Remainder Class)، أو تُسمّى أحيانًا فئة بواقي (Residue Class).
مثال 6.2.2.
صف فئات البواقي بترديد
الحل. نريد تصنيف الأعداد بحسب ما سيكون باقي قسمتها على نعرف من خوارزمية القسمة أن هناك 5 فئات بواقٍ بالضبط، لأن هناك 5 اختيارات فقط لما يمكن أن يكون عليه ().
انظر أولًا إلى نبحث هنا عن جميع الأعداد القابلة للقسمة على ، لأن أي مضاعفات العدد 5. نحصل على المجموعة اللانهائية:
لاحظ أننا نُدرج الأعداد الصحيحة السالبة أيضًا.
انظر بعد ذلك إلى ما الأعداد الصحيحة التي يكون باقي قسمتها على 5 هو 1؟ من المؤكد أن 1 كذلك، وكذلك 6 و11. وماذا عن الأعداد السالبة؟ علينا الحذر هنا: ليس باقي قسمة هو 1. يمكننا كتابة أو لكن واحدة فقط من هاتين الصيغتين حالة «صحيحة» لخوارزمية القسمة: ، لأننا نحتاج إلى أن يكون غير سالب. لذا، للحصول على ، نأخذ في الواقع ، أو ، وهكذا. ومن ثم نحصل على فئة البواقي:
بقيت ثلاث فئات أخرى. فئات البواقي للأعداد و و هي، على الترتيب:
لاحظ في المثال السابق أن كل عدد صحيح ينتمي إلى فئة بواقٍ واحدة بالضبط. والصياغة الاصطلاحية لهذا هي أن فئات البواقي بترديد تشكّل تقسيمًا (Partition) للأعداد الصحيحة.
1
أهم حقيقة عن التقسيمات هي أنه يمكن تعريف علاقة تكافؤ (Equivalence Relation) انطلاقًا من تقسيم: وهي علاقة بين أزواج من الأعداد تتصرف، في جميع الجوانب المهمة، مثل علاقة «يساوي».
2
إذا وضعنا جانبًا كل هذه اللغة الاصطلاحية الممتعة، فالفكرة بسيطة حقًا. إذا انتمى عددان إلى فئة البواقي نفسها، فهما متماثلان على نحو ما. أي إنهما متماثلان من حيث القسمة على . في الحالة السابقة التي فيها ، فإن العددين و، مع أنهما ليسا العدد نفسه، متماثلان عندما يتعلق الأمر بالقسمة على 5، لأن باقي كليهما
اختيار القاسم مهم: العددان و متماثلان من حيث القسمة على ، لكنهما ليسا متماثلين من حيث القسمة على ، لأن باقي قسمة على 7 هو 1، بينما باقي قسمة 23 هو 2.
مع وضع كل هذا في الاعتبار، لنقدّم بعض الرموز. نريد أن نقول إن و23 متماثلان في الأساس، رغم أنهما غير متساويين. وسيكون من الخطأ القول إن بدلًا من ذلك، نكتب لكن هذا ليس صحيحًا دائمًا. إنه يصح إذا كنا نفكّر في القسمة على 5، لذا نحتاج إلى التعبير عن ذلك برمز ما. وما سنكتبه بالفعل هو:
وتُقرأ «8 يطابق 23 بترديد 5» (Congruent Modulo 5)، أو باختصار «بترديد 5». ويمكننا عندئذ، بالطبع، ملاحظة أن:
التطابق بترديد (Congruence Modulo n).
نقول إن يطابق بترديد ، ونكتب:
بشرط أن يكون للعددين و الباقي نفسه عند القسمة على بعبارة أخرى، بشرط أن ينتمي و إلى فئة البواقي نفسها بترديد
تعرّف كتب كثيرة التطابق بترديد بطريقة مختلفة قليلًا. فهي تقول إن إذا وفقط إذا كان بعبارة أخرى، يطابق عددان أحدهما الآخر بترديد إذا كان الفرق بينهما مضاعفًا للعدد فأي التعريفين صحيح؟ يتبيّن أن الأمر لا يهم؛ فهما متكافئان.
لمعرفة السبب، انظر إلى عددين و يطابق أحدهما الآخر بترديد عندئذ يكون للعددين و الباقي نفسه عند القسمة على لدينا:
قيمتا هنا متساويتان بالفعل. انظر إلى ما نحصل عليه عندما نأخذ الفرق بين و:
إذن مضاعف للعدد ، أو على نحو مكافئ،
من جهة أخرى، إذا افترضنا أولًا أن ، ومن ثم ، فانظر إلى ما يحدث إذا قسمنا كل حد على ستترك قسمة على باقيًا ما، وكذلك قسمة على لكن قسمة على ستترك باقيًا مقداره 0. لذا يجب أن يلغي الباقيان في الطرف الأيسر أحدهما الآخر. أي إن الباقيين يجب أن يكونا متساويين.
وعليه لدينا:
التطابق وقابلية القسمة.
لأي أعداد صحيحة و و، لدينا:
سيكون من المفيد أيضًا الانتقال ذهابًا وإيابًا بين التطابقات والمعادلات المعتادة. والحقيقة السابقة تساعد في ذلك. نعرف أن إذا وفقط إذا كان ، وإذا وفقط إذا كان لعدد صحيح ما بإعادة ترتيب تلك المعادلة، نحصل على بعبارة أخرى، إذا طابق و أحدهما الآخر بترديد ، فإن يزيد بمقدار على مضاعف ما للعدد وهذا يتوافق مع ملاحظتنا السابقة بأن جميع الأعداد في فئة بواقٍ معيّنة تزيد بالمقدار نفسه على مضاعفات
التطابق والمساواة.
لأي أعداد صحيحة و و، لدينا:
قسم فرعي: خصائص التطابق
قلنا سابقًا إن التطابق بترديد يتصرف، في جوانب مهمة كثيرة، بالطريقة نفسها التي تتصرف بها المساواة. وتحديدًا، يمكننا إثبات أن التطابق بترديد علاقة تكافؤ، وهذا يتطلب التحقّق من الحقائق الثلاث الآتية:
التطابق بترديد علاقة تكافؤ.
إذا أُعطيت أي أعداد صحيحة و و، وأي عدد صحيح موجب ، فإن الآتي يصح:
- إذا كان ، فإن
- إذا كان و، فإن
بعبارة أخرى، التطابق بترديد انعكاسي (Reflexive)، ومتناظر (Symmetric)، ومتعدٍّ (Transitive)، ولذلك فهو علاقة تكافؤ.
ينبغي أن تتوقف دقيقة لتقنع نفسك بأن كل خاصية من الخصائص السابقة تصح بالفعل للتطابق. حاول شرح كل منها باستخدام تعريف الباقي وتعريف قابلية القسمة كليهما.
انظر بعد ذلك إلى كيفية تصرّف التطابق عند إجراء العمليات الحسابية الأساسية. نعرف بالفعل أنك إذا طرحت عددين متطابقين، ستكون النتيجة مطابقة للعدد 0 (أي مضاعفًا للعدد ). ماذا لو جمعنا شيئًا يطابق 1 مع شيء يطابق 2؟ هل سنحصل على شيء يطابق 3؟
التطابق والحساب.
افترض أن و عندئذ يصح الآتي:
قد تكون الحقائق السابقة مكتوبة بطريقة غريبة بعض الشيء، لكن الفكرة بسيطة. إذا كان لدينا تطابق صحيح، وأضفنا الشيء نفسه إلى الطرفين، تظل النتيجة تطابقًا صحيحًا. يبدو هذا كما لو كنا نقول:
إذا كان ، فإن
وهذا صحيح أيضًا بالطبع؛ فهو الحالة الخاصة التي فيها لكن ما لدينا يعمل بصورة أعم. فكّر في التطابق على أنه «مساواة في الأساس». إذا كان لدينا عددان متساويان في الأساس، وأضفنا إلى الطرفين شيئًا متماثلًا في الأساس، فستكون النتيجة متساوية في الأساس.
يبدو هذا معقولًا. هل هو صحيح حقًا؟ لنثبت الحقيقة الأولى:
البرهان.
افترض أن و هذا يعني أن و، لعددين صحيحين و اجمع هاتين المعادلتين:
لكن ، وهو مجرد مضاعف للعدد لذا فإن ، أو بعبارة أخرى،
يمكن إثبات الحقيقتين الأخريين بطريقة مشابهة.
إحدى النتائج المهمة لهذه الحقائق عن التطابقات هي أننا نستطيع، في الأساس، استبدال أي عدد في تطابق بأي عدد آخر يطابقه. إليك بعض الأمثلة لترى كيف يعمل ذلك (ولماذا):
مثال 6.2.3.
أوجد باقي قسمة على
الحل. يمكننا إجراء القسمة المطوّلة، لكن هناك طريقة أخرى. نريد إيجاد بحيث الآن وبالطبع ، لذا يمكننا استبدال 90 في المجموع بـ0. لماذا يجوز ذلك؟ نحن نطرح في الواقع الشيء «نفسه» من الطرفين:
لاحظ بعد ذلك أن ، وأن (لأن ). لذا يمكننا في الواقع استبدال 400 بالعدد 4 ببساطة. مرة أخرى، نحتكم إلى قولنا إننا نستطيع استبدال العناصر المتطابقة، لكننا نحتكم حقًا إلى الخاصية 3 المتعلقة بحساب التطابقات: نعرف أن ، لذا إذا ضربنا الطرفين في ، نحصل على
وبالمثل، يمكننا استبدال 3000 بالعدد 3، لأن لذا يصبح تطابقنا الأصلي:
إذن باقي قسمة على 9 هو 8.
ينبغي أن يقنعك المثال السابق بصحة اختبار قابلية القسمة المعروف للعدد 9: يقبل مجموع أرقام عددٍ القسمة على 9 إذا وفقط إذا كان العدد الأصلي يقبل القسمة على 9. بل نعرف الآن أكثر من ذلك: أي عدد يطابق مجموع أرقامه بترديد 9.
3
لنجرّب مثالًا آخر.
مثال 6.2.4.
أوجد الباقي عند قسمة على 7.
الحل. بالطبع، نعمل بالتطابق لأننا نريد إيجاد أصغر موجب بحيث اكتب أولًا لدينا:
لأن ولاحظ أيضًا أن يطابق 1 بترديد 7. ومن ثم يمكننا التبسيط أكثر:
لكن ، لذا انتهينا:
في المثال السابق، نستخدم حقيقة أنه إذا كان ، فإن وهذا ليس سوى تطبيق الخاصية 3 مرات عديدة.
رأينا حتى الآن كيف نجمع ونطرح ونضرب باستخدام التطابقات. فماذا عن القسمة؟ هناك سبب لانتظارنا قبل مناقشتها. يتبيّن أننا لا نستطيع القسمة ببساطة. بعبارة أخرى، حتى لو كان ، فإننا لا نعرف أن انظر مثلًا إلى:
هذا صحيح. والآن يقبل كل من و القسمة على 6. لكن:
مع أن هذا لا ينجح، لاحظ أن لا نستطيع قسمة على 6، لكننا نستطيع قسمة 8 على أكبر عامل مشترك للعددين و هل يحدث هذا دائمًا؟
افترض أن بعبارة أخرى، لدينا لعدد صحيح ما بالطبع، يقبل القسمة على ، وكذلك لذا يجب أن يقبل القسمة على أيضًا. وإذا لم يكن للعددين و عوامل مشتركة (عدا 1)، فلا بد أن يكون لكن عمومًا، إذا حاولنا قسمة على ، فلا نعرف أننا سنحصل على مضاعف صحيح للعدد فقد يُقسَم جزء من أيضًا. ولضمان ذلك، لنقسم من أكبر قدر نستطيعه. خذ أكبر عامل لكل من و، واختزله من وستأتي بقية عوامل من ، دون مشكلة.
سنسمّي أكبر عامل لكل من و بالرمز ، وهو القاسم المشترك الأكبر (Greatest Common Divisor). في مثالنا السابق، ، لأن أكبر قاسم مشترك للعددين 6 و8 هو 2.
التطابق والقسمة.
افترض أن عندئذ
إذا لم يكن للعددين و عوامل مشتركة، فإن ، ومن ثم
مثال 6.2.5.
بسّط التطابقين الآتيين باستخدام القسمة: (أ) ، و(ب)
الحل. (أ) يقبل كل من و القسمة على ، وليس للعددين و عوامل مشتركة، لذا نحصل على:
(ب) يمكننا مرة أخرى القسمة على 3. لكن إجراء ذلك دون تمحيص يعطينا ، الذي لم يعد صحيحًا. بدلًا من ذلك، علينا أيضًا قسمة الترديد 15 على أكبر عامل مشترك للعددين و، وهو نحصل مرة أخرى على:
قسم فرعي: حل التطابقات
الآن، بعد أن أصبحت لدينا بعض القواعد الجبرية التي تحكم علاقات التطابق، يمكننا محاولة إيجاد مجهول في تطابق. مثلًا، هل توجد قيمة لـ تحقّق:
وإذا وُجدت، فما هي؟
في هذا المثال، بما أن الترديد صغير، يمكننا ببساطة تجربة كل قيمة ممكنة لـ هناك في الحقيقة 5 قيم فقط ينبغي النظر فيها، لأن أي عدد صحيح يحقّق التطابق يمكن استبداله بأي عدد صحيح آخر يطابقه بترديد 5. هنا، عندما يكون ، نحصل على ، وهو بالفعل يطابق 4 بترديد 5. وهذا يعني أن كلًا من و و، وهكذا، سيكون حلًا أيضًا، لأن استبدال أي عدد في تطابق بعدد يطابقه لا يغيّر صحة التطابق، كما رأينا سابقًا.
لذا، في هذا المثال، احسب ببساطة لقيم يعطي هذا 2 و5 و8 و11 و14، على الترتيب، ولا يطابق 4 من بينها إلا 14.
لنرَ أيضًا كيف يمكنك حل هذا باستخدام قواعدنا لجبر التطابقات. ستكون طريقة كهذه أبسط بكثير من أسلوب التجربة والخطأ إذا كان الترديد أكبر. أولًا، نعرف أننا نستطيع طرح 2 من الطرفين:
ثم، لقسمة الطرفين على 3، نضيف أولًا 0 إلى الطرفين. بالطبع، في الطرف الأيمن، نريد أن يكون ذلك الصفر هو 10 (نعم، هو بالفعل 0، لأنهما متطابقان بترديد 5). وهذا يعطي:
اقسم الآن الطرفين على 3. بما أن ، لا نحتاج إلى تغيير الترديد:
لاحظ أن هذا يعطي في الواقع الحل العام (General Solution): لا يقتصر الأمر على إمكان أن يكون ، بل يمكن أن يكون أي عدد يطابق 4. يمكننا ترك الحل هكذا، أو كتابة « لأي عدد صحيح ».
مثال 6.2.6.
حل التطابقات الآتية لإيجاد
الحل.
-
كل ما نحتاج إلى فعله هنا هو قسمة الطرفين على 7. نضيف 13 إلى الطرف الأيمن مرارًا حتى نحصل على مضاعف للعدد 7 (إضافة 13 مثل إضافة 0، لذا فهذا جائز). نحصل على و و و و — وجدناه. إذن لدينا:
-
هنا، بما أن لدينا أعدادًا أكبر من الترديد، يمكننا اختزالها قبل تطبيق أي عمليات جبرية. لدينا و و ومن ثم:
حصلنا على 72 بإضافة إلى طرفي التطابق. اقسم الآن الطرفين على 9. لكن بما أن ، يجب أن نقسم الترديد على 3 أيضًا:
إذن الحلول هي القيم التي تطابق 8، أو على نحو مكافئ 3، بترديد 5. وهذا يعني أن هناك، بمعنى ما، 3 حلول بترديد 15: وهي 3 و8 و13. يمكننا كتابة الحل:
-
اختزل أولًا بترديد 14:
يمكننا الآن قسمة الطرفين على 3، أو محاولة زيادة 9 بمضاعف للعدد 14 للحصول على مضاعف للعدد 6. إذا قسمنا على 3، نحصل على:
جرّب الآن إضافة مضاعفات 14 إلى 3، أملًا في الحصول على عدد نستطيع قسمته على 2. لن ينجح ذلك! في كل مرة نضيف فيها 14 إلى الطرف الأيمن، تظل النتيجة فردية. لن نحصل أبدًا على عدد زوجي، لذا لن نتمكن أبدًا من القسمة على 2. ومن ثم لا توجد حلول للتطابق.
يوضّح التطابق الأخير أعلاه كيف قد لا تكون للتطابقات حلول. وكان بإمكاننا في الواقع ملاحظة ذلك فورًا. انظر إلى التطابق الأصلي:
إذا كتبناه على هيئة معادلة، نحصل على:
أو على نحو مكافئ يمكننا أن نرى بسهولة أنه لن يكون لهذه المعادلة حل في الأعداد الصحيحة. فالطرف الأيسر سيكون زوجيًا دائمًا، لكن الطرف الأيمن فردي. وستحدث مشكلة مشابهة إذا كان الطرف الأيمن يقبل القسمة على أي عدد لا يقبل الطرف الأيسر القسمة عليه.
لذا، عمومًا، إذا أُعطي التطابق:
وكان و يقبلان القسمة على عدد لا يقبل القسمة عليه، فلن توجد حلول. وفي الواقع، لا نحتاج إلا إلى التحقّق من قاسم واحد للعددين و: القاسم المشترك الأكبر. ومن ثم يمكن التعبير عن هذا بإيجاز أكبر كما يأتي:
تطابقات لا حلول لها.
إذا كان ، فإن لا حلول له.
قسم فرعي: حل المعادلات الديوفانتية الخطية (Linear Diophantine Equations)
تتعامل الرياضيات المتقطعة مع أعداد صحيحة من الأشياء. لذا، عندما نريد حل المعادلات، فإننا نبحث عادةً عن حلول صحيحة. وأول من درس المعادلات التي لا يُراد منها إلا حلول صحيحة هو الرياضي اليوناني ديوفانتوس الإسكندري في القرن الثالث، ولذلك تُسمّى المعادلات الديوفانتية (Diophantine Equations). ولعل أشهر مثال على معادلة ديوفانتية هو وتُسمّى الحلول الصحيحة لهذه المعادلة ثلاثيات فيثاغورس (Pythagorean Triples). عمومًا، حل المعادلات الديوفانتية صعب (بل ثبت أنه لا توجد خوارزمية عامة لتقرير ما إذا كان لمعادلة ديوفانتية حل، وهي نتيجة تُعرف باسم مبرهنة ماتياسيفيتش (Matiyasevich’s Theorem)). سنحصر اهتمامنا في المعادلات الديوفانتية الخطية، التي يسهل التعامل معها بدرجة كبيرة.
المعادلات الديوفانتية.
تُسمّى المعادلة في متغيّرين أو أكثر معادلة ديوفانتية إذا كانت الحلول الصحيحة وحدها موضع الاهتمام. وتأخذ المعادلة الديوفانتية الخطية الصورة ، لثوابت
حل المعادلة الديوفانتية هو حل للمعادلة يتكوّن من أعداد صحيحة فقط.
لدينا الأدوات التي نحتاج إليها لحل المعادلات الديوفانتية الخطية. وسنأخذ، بوصفها مثالًا رئيسيًا، المعادلة:
ستكون الاستراتيجية العامة تحويل المعادلة إلى تطابق، ثم حل ذلك التطابق.
4
لنعمل على هذا المثال بالتحديد لنرى كيف يمكن أن تسير الأمور.
تحقّق أولًا مما إذا كان من المحتمل ألا توجد حلول لأن قاسمًا للعددين و ليس قاسمًا للعدد في الحقيقة، لا نحتاج إلا إلى التحقّق مما إذا كان هذا القاسم المشترك الأكبر هو 3، ونعم، عند هذه النقطة، يمكننا إخراج هذا القاسم المشترك الأكبر عاملًا مشتركًا. لذا سنحل بدلًا من ذلك:
لاحظ الآن أنه إذا كانت هناك حلول، فلا بد أن يكون لطرفي المعادلة الباقي نفسه عند تلك القيم لـ و، أيًا كان العدد الذي نقسم عليه. وتحديدًا، إذا قسمنا الطرفين على 17، يجب أن نحصل على الباقي نفسه. لذا يمكننا أن نكتب بثقة:
نختار 17 لأن باقي سيكون 0. وهذا سيسمح لنا باختزال التطابق إلى متغيّر واحد فقط. وكان بإمكاننا أيضًا الانتقال إلى تطابق بترديد 29، مع أن هناك عادةً سببًا وجيهًا لاختيار العدد الأصغر، لأن ذلك سيسمح لنا باختزال المعامل الآخر. في حالتنا، نختزل التطابق كما يأتي:
عند هذه النقطة، نعرف أن يصلح لأي عدد صحيح إذا لم نرتكب خطأ، فينبغي أن نستطيع التعويض بهذا في معادلتنا الديوفانتية الأصلية لإيجاد :
وجدنا الآن جميع حلول المعادلة الديوفانتية. لكل ، سيحقّق و المعادلة. ويمكننا التحقّق من هذا في بعض الحالات. إذا كان ، فالحل هو ، ونعم، وإذا كان ، فالحل هو وإذا كان ، نحصل على
لتلخيص هذه العملية، لحل ، نقوم بالآتي:
-
نقسم طرفي المعادلة على (إذا لم يترك هذا الطرف الأيمن عددًا صحيحًا، فلا توجد حلول). لنفترض أن قد اختُزلت بالفعل بهذه الطريقة.
-
نختار الأصغر بين و (هنا، افترض أنه )، ونحوّل إلى تطابق بترديد :
سيُختزل هذا إلى تطابق في متغيّر واحد، هو :
-
نحل التطابق كما فعلنا في القسم السابق. اكتب حلك على هيئة معادلة، مثل:
-
نعوّض بهذا في المعادلة الديوفانتية الأصلية، ونحل لإيجاد
-
إذا أردنا معرفة الحلول في نطاق معيّن (مثلًا، )، نختار قيمًا مختلفة لـ حتى نحصل على جميع الحلول المطلوبة.
إليك مثالًا آخر:
مثال 6.2.7.
كيف يمكنك تكوين مبلغ 6.37 دولارات باستخدام طوابع من فئتي 5 سنتات و8 سنتات فقط؟ ما أصغر عدد من الطوابع وأكبر عدد منها يمكن أن تستخدمه؟
الحل. نحتاج أولًا إلى معادلة ديوفانتية. سنعمل بأعداد السنتات. ليكن عدد الطوابع من فئة سنتات، وليكن عدد الطوابع من فئة 8 سنتات. لدينا:
حوّل إلى تطابق وحلّه:
إذن وعندئذ ، ومن ثم
هذا يعني أن إحدى طرق تكوين مبلغ 6.37 دولارات هي أخذ 121 طابعًا من فئة 5 سنتات و4 طوابع من فئة 8 سنتات. لإيجاد أصغر عدد من الطوابع وأكبر عدد منها، جرّب قيمًا مختلفة لـ
| الطوابع | ||
|---|---|---|
| -1 | (129, -1) | غير ممكن |
| 0 | (121, 4) | 125 |
| 1 | (113, 9) | 122 |
| 2 | (105, 13) | 119 |
هذا ليس مفاجئًا. فالحصول على أكبر عدد من الطوابع يعني أن لدينا أكبر عدد ممكن من الطوابع ذات الـ5 سنتات، والحصول على أصغر عدد من الطوابع يتطلب أقل عدد من الطوابع ذات الـ5 سنتات. ولتقليل عدد الطوابع ذات الـ5 سنتات، نريد اختيار بحيث يكون أصغر ما يمكن (مع بقائه موجبًا). عندما يكون ، يكون لدينا و
إذن، لتكوين مبلغ 6.37 دولارات، يمكنك استخدام عدد من الطوابع لا يقل عن 80 طابعًا (طابع واحد من فئة 5 سنتات و79 طابعًا من فئة 8 سنتات)، ولا يزيد على 125 طابعًا (121 طابعًا من فئة 5 سنتات و4 طوابع من فئة 8 سنتات).
باستخدام هذه الطريقة، ما دمت تستطيع حل التطابقات الخطية في متغيّر واحد، يمكنك حل المعادلات الديوفانتية الخطية في متغيّرين. لكن هناك أوقاتًا يتطلب فيها حل التطابق الخطي عملًا كثيرًا. مثلًا، افترض أنك تحتاج إلى حل:
يمكنك الاستمرار في إضافة 51 إلى الطرف الأيمن حتى تحصل على مضاعف للعدد 13: ستحصل على 57 و108 و159 و210 و261 و312، والعدد 312 هو أول هذه الأعداد الذي يقبل القسمة على 13. تنجح هذه الطريقة، لكنها تتطلب حقًا عملًا أكثر من اللازم. بدلًا من ذلك، يمكننا التحويل مرة أخرى إلى معادلة ديوفانتية:
حل الآن هذه كما فعلنا في هذا القسم. اكتبها على هيئة تطابق بترديد 13:
ومن ثم ارجع الآن وأوجد :
بالطبع، يمكنك إجراء هذا الانتقال ذهابًا وإيابًا بين التطابقات والمعادلات الديوفانتية بقدر ما تشاء. وإذا استخدمت هذه التقنية وحدها، فستعيد في الأساس تنفيذ الخوارزمية الإقليدية، وهي طريقة أكثر شيوعًا لحل المعادلات الديوفانتية.
تمارين
1.
افترض أن و و أعداد صحيحة. أثبت أنه إذا كان ، فإن
2.
افترض أن و و أعداد صحيحة. أثبت أنه إذا كان و، فإن و
3.
اكتب فئات البواقي عندما يكون
4.
ما أكبر بحيث ينتمي و إلى فئة البواقي نفسها بترديد اكتب فئة البواقي التي ينتميان إليها كلاهما، وأعط مثالًا على عدد أكبر من 100 في تلك الفئة.
5.
لتكن و و و أعدادًا صحيحة. أثبت أنه إذا كان و، فإن
6.
أوجد باقي قسمة على:
7.
كرّر التمرين السابق، لكن بقسمة هذه المرة.
8.
حدّد أي التطابقات الآتية له حلول، وأوجد أي حلول (بين 0 والترديد) بالتجربة والخطأ.
9.
حدّد أي التطابقات الآتية له حلول، وأوجد أي حلول (بين 0 والترديد) بالتجربة والخطأ.
10.
حل التطابق: أي صف الحل العام.
11.
حل التطابق:
12.
حل التطابق:
13.
حل التطابق:
تلميح. اختزل أولًا كل عدد بترديد 9، ويمكن فعل ذلك بجمع أرقام الأعداد.
14.
أفكّر في عدد. إذا ضربت عددي في 7، وأضفت 5، ثم قسمت النتيجة على 11، فسيبقى لديك باقٍ مقداره 2. ما الباقي الذي ستحصل عليه إذا قسمت عددي الأصلي على 11؟
15.
حل المعادلة الديوفانتية الخطية الآتية باستخدام الحساب بترديد (Modular Arithmetic)، وصف الحلول العامة.
16.
حل المعادلة الديوفانتية الخطية الآتية باستخدام الحساب بترديد، وصف الحلول العامة.
17.
حل المعادلة الديوفانتية الخطية الآتية باستخدام الحساب بترديد، وصف الحلول العامة.
18.
لديك زجاجة سعتها 13 أونصة (oz.) وزجاجة سعتها 20 أونصة، وتريد استخدامهما لقياس أونصتين بالضبط. لكن لديك كمية محدودة من الماء. إذا دخل أي ماء إلى إحدى الزجاجتين ثم سُكب خارجًا، فإنه يضيع إلى الأبد. ما أقل كمية من الماء يمكنك البدء بها مع بقائك قادرًا على إتمام المهمة؟
تلميح. حل المعادلة الديوفانتية (لماذا؟). ثم انظر إلى أي قيمة لـ (المَعْلمة (Parameter) في الحل) هي المثلى.