خوارزمية شور
هنا سنتناول مسألة تحليل الأعداد الصحيحة إلى عواملها الأولية، ونرى كيف يمكن حلّها بكفاءة على حاسوب كمي باستخدام تقدير الطور. الخوارزمية التي سنصل إليها هي خوارزمية شور لتحليل الأعداد الصحيحة إلى عواملها. لم يصف شور خوارزميته تحديداً من منظور تقدير الطور، لكنها طريقة طبيعية وبديهية لشرح آلية عملها.
سنبدأ بمناقشة مسألة وسيطة تُعرف بـمسألة إيجاد الرتبة، ونرى كيف يوفر تقدير الطور حلاً لها. ثم سنرى كيف أن الحل الكفء لمسألة إيجاد الرتبة يعطينا حلاً كفئاً لمسألة تحليل الأعداد الصحيحة. (حين يوفر حل مسألة ما حلاً لمسألة أخرى بهذه الطريقة، نقول إن المسألة الثانية تختزل إلى الأولى — وفي حالتنا هذه نختزل تحليل الأعداد الصحيحة إلى إيجاد الرتبة.) هذا الجزء الثاني من خوارزمية شور لا يستخدم الحوسبة الكمية على الإطلاق؛ فهو كلاسيكي بالكامل. الحوسبة الكمية مطلوبة فقط لحل مسألة إيجاد الرتبة.
مسألة إيجاد الرتبة
بعض أساسيات نظرية الأعداد
لشرح مسألة إيجاد الرتبة وكيف يمكن حلّها باستخدام تقدير الطور، سيكون من المفيد أن نبدأ بمفهومين أساسيين من نظرية الأعداد، مع تقديم بعض الرموز المختصرة المفيدة في الطريق.
للبداية، لأي عدد صحيح موجب نعرّف المجموعة كالتالي.
مثلاً، وهكذا.
هذه مجموعات من الأعداد، لكن يمكننا التفكير فيها بأكثر من كونها مجرد مجموعات. تحديداً، يمكننا التفكير في العمليات الحسابية على كالجمع والضرب — وإذا اتفقنا على أخذ النتائج دائماً مودولو (أي القسمة على وأخذ الباقي كنتيجة)، فسنبقى دائماً داخل هذه المجموعة عند إجراء هذه العمليات. العمليتان المحددتان للجمع والضرب، كلتاهما مودولو تحوّلان إلى حلقة، وهي نوع أساسي بالغ الأهمية في الجبر.
مثلاً، و عنصران في وإذا ضربناهما معاً نحصل على التي تعطي باقياً مقداره عند القسمة على نعبّر عن هذا أحياناً كالتالي.
لكن يمكننا أيضاً الكتابة ببساطة، بشرط أن يكون واضحاً أننا نعمل في ، وذلك للإبقاء على رموزنا بسيطة قدر الإمكان.
كمثال، إليك جدولا الجمع والضرب لـ
من بين عناصر الـ ، العناصر التي تحقق هي عناصر خاصة. في الغالب تُرمز المجموعة التي تحتوي هذه العناصر بنجمة كالتالي.
إذا ركّزنا اهتمامنا على عملية الضرب، فإن المجموعة تشكّل زمرة — تحديداً زمرة أبيلية — وهي نوع مهم آخر في الجبر. من الحقائق الأساسية حول هذه المجموعات (والزمر المنتهية بشكل عام) أننا إذا اخترنا أي عنصر وضربناه في نفسه مراراً، سنصل في النهاية دائماً إلى العدد
كمثال أول، لنأخذ لدينا لأن وإذا ضربنا في نفسه نحصل على كما يؤكد الجدول أعلاه.
كمثال ثانٍ، لنأخذ إذا مررنا على الأعداد من إلى ، فتلك التي يكون القاسم المشترك الأكبر لها مع مساوياً لـ هي:
لكل عنصر من هذه العناصر، يمكن رفع ذلك العدد إلى قوة صحيحة موجبة للحصول على إليك أصغر هذه القوى:
بطبيعة الحال، نحن نعمل داخل في كل هذه المعادلات، وهو ما لم نكتبه صراحةً — تركناه ضمنيًا حتى لا تتشعب الأمور. وسنكمل على هذا النهج طوال بقية الدرس.
صياغة المسألة والربط بتقدير الطور
الآن يمكننا نصيغ مسألة إيجاد الرتبة.
بعبارة أخرى، بالترميز الذي قدّمناه للتو، المعطيات هي ونبحث عن أصغر عدد صحيح موجب بحيث هذا العدد يُسمّى رتبة بالقياس إلى
للربط بين مسألة إيجاد الرتبة وتخمين الطور، تأمّل العملية المُعرَّفة على منظومة تتوافق حالاتها الكلاسيكية مع حيث نضرب في عنصر ثابت
لنوضّح: الضرب هنا يجري داخل أي أنه يُقاس بالنسبة إلى ضمنيًا داخل ket في طرف المعادلة الأيمن.
مثلاً، إذا أخذنا و فإن تأثير على الأساس القياسي يكون كالتالي.
هذه عملية وحدوية بشرط أن فهي تُعيد ترتيب عناصر الأساس القياسي وبالتالي كمصفوفة هي مصفوفة تبديل. يتضح من تعريفها أن هذه العملية حتمية، وأبسط طريقة لرؤية أنها قابلة للعكس هي التفكير في رتبة لـ بالقياس إلى وإدراك أن معكوس هو
ثمة طريقة أخرى للتفكير في المعكوس لا تستلزم معرفة (الذي هو بالأصل ما نسعى لحسابه). لكل عنصر يوجد دائمًا عنصر وحيد يحقق نرمز لهذا العنصر بالرمز ويمكن حسابه بكفاءة؛ إذ يؤدي ذلك امتداد خوارزمية إقليدس لإيجاد القاسم المشترك الأكبر بتكلفة تربيعية في وبالتالي
إذن، العملية حتمية وقابلة للعكس في آنٍ واحد. وهذا يعني أنها تتمثّل بمصفوفة تبديل، وهي بالتالي وحدوية.
الآن لنفكّر في المتجهات الذاتية والقيم الذاتية للعملية بافتراض أن كما قلنا للتو، هذا الافتراض يُخبرنا أن وحدوية.
لـ عدد من القيم الذاتية، قد تتكرر بعضها، وثمة حرية عمومًا في اختيار المتجهات الذاتية المقابلة — لكننا لن نحتاج للقلق بشأن كل الاحتمالات. لنبدأ بشكل مبسّط ونحدد متجهًا ذاتيًا واحدًا فقط لـ
العدد هو رتبة بالقياس إلى هنا وفي كل ما تبقى من الدرس. القيمة الذاتية المرتبطة بهذا المتجه الذاتي هي لأنه لا يتغيّر عند الضرب في
يحدث هذا لأن وبالتالي كل حالة أساسية قياسية تنتقل إلى لـ وتعود إلى بعبارة بسيطة، الأمر كأننا نُحرّك ببطء، لكنه ممزوج تمامًا أصلًا فلا يتغيّر شيء.
وهنا مثال آخر على متجه ذاتي لـ هذا المثال بالذات أكثر إثارةً للاهتمام في سياق إيجاد الرتبة وتخمين الطور.
يمكننا أيضًا كتابة هذا المتجه بصيغة مجموع كالتالي.
هنا نرى العدد المركّب يظهر بشكل طبيعي، نتيجةً لطريقة عمل الضرب في بالقياس إلى القيمة الذاتية المقابلة هذه المرة هي لنتحقق من ذلك بالحساب أولاً.
ثم، لأن و نرى أن
إذن
باستخدام نفس المنطق، يمكننا تحديد أزواج إضافية من المتجهات الذاتية/القيم الذاتية لـ لأي اختيار يكون
هو متجه ذاتي لـ وقيمته الذاتية المقابلة هي
في الواقع، هناك متجهات ذاتية أخرى لـ لكن ما يهمنا هنا هو المتجهات التي حددناها للتو فقط.
إيجاد الرتبة عن طريق تقدير الطور
لحل مسألة إيجاد الرتبة لاختيار معين يمكننا تطبيق إجراء تقدير الطور على العملية
لعمل هذا، نحتاج أن نُنفّذ ليس فقط بكفاءة في دائرة كمومية، بل أيضًا وهكذا، بالقدر الكافي للحصول على تقدير دقيق من إجراء تقدير الطور. هنا سنشرح كيف يمكن تحقيق هذا، وسنحدد لاحقًا بالضبط كمية الدقة المطلوبة.
لنبدأ بالعملية لوحدها. بطبيعة الحال، بما أننا نشتغل بنموذج الدائرة الكمومية، سنستخدم النظام الثنائي لترميز الأعداد بين و أكبر عدد نحتاج لترميزه هو وعدد البتات المطلوبة هو
مثلاً، إذا كان فعندنا هكذا يبدو ترميز عناصر كسلاسل ثنائية بطول
والآن، هذا هو التعريف الدقيق لكيفية تعريف كعملية على كيوبت.
المقصود هنا أنه رغم أننا نهتم فقط بكيفية عمل على إلا أننا مضطرين لتحديد كيف تعمل على الحالات القاعدية الأساسية الـ المتبقية — وهذا بطريقة تُبقي العملية يونيتارية. تعريف بحيث لا تفعل شيئًا على الحالات الأساسية المتبقية يحقق هذا الشرط.
باستخدام خوارزميات ضرب الأعداد الصحيحة والقسمة التي ناقشناها في الدرس السابق، مع منهجية التنفيذ القابل للعكس وخالي من القمامة، يمكننا بناء دائرة كمومية تُنفّذ لأي اختيار بتكلفة إليك طريقة واحدة لعمل هذا.
-
ابنِ دائرة لتنفيذ العملية
حيث
باستخدام الطريقة المشروحة في الدرس السابق. هذا يعطينا دائرة بحجم
-
بادل نظامَي الـ كيوبت باستخدام بوابة مبادلة لتبادل الكيوبتات بشكل فردي.
-
بطريقة مشابهة للخطوة الأولى، ابنِ دائرة للعملية
حيث هو معكوس في
بتهيئة الـ كيوبت السفلية وتركيب الخطوات الثلاث، نحصل على هذا التحويل:
الطريقة تحتاج كيوبتات فضاء عمل، لكنها تُعاد إلى حالتها الأولية في النهاية، مما يتيح لنا استخدام هذه الدوائر في تقدير الطور. التكلفة الإجمالية للدائرة التي نحصل عليها هي
لتنفيذ وهكذا، يمكننا استخدام نفس الطريقة بالضبط، باستثناء أننا نستبدل بـ وهكذا، كعناصر في يعني، لأي قوة نختارها، يمكننا إنشاء دائرة لـ ليس بتكرار دائرة لـ مرة، بل بحساب ثم استخدام الدائرة الخاصة بـ
حساب القوى هو مسألة الأس النموذجي المذكورة في الدرس السابق. يمكن إجراء هذا الحساب بشكل كلاسيكي، باستخدام خوارزمية الأس النموذجي المذكورة في الدرس السابق (التي يُطلق عليها غالبًا خوارزمية القوة في نظرية الأعداد الحسابية). في الواقع، نحتاج فقط لقوى أسس-2 لـ تحديدًا ويمكننا الحصول على هذه القوى بالتربيع المتكرر مرة. كل عملية تربيع يمكن تنفيذها بدائرة منطقية بحجم
في جوهر الأمر، ما نقوم به هنا هو نقل مشكلة تكرار لما يصل إلى مرة إلى حساب كلاسيكي فعّال. وهذا من حسن الحظ أنه ممكن! لاختيار عشوائي لدائرة كمومية في مسألة تقدير الطور، هذا على الأرجح لن يكون ممكنًا — وفي ذلك الحال تنمو التكلفة الناتجة لتقدير الطور بشكل أسي في عدد كيوبتات التحكم
الحل بوجود متجه ذاتي ملائم
لفهم كيف يمكننا حل مسألة إيجاد الرتبة باستخدام تقدير الطور، لنبدأ بافتراض أننا نُشغّل إجراء تقدير الطور على العملية باستخدام المتجه الذاتي الحصول على هذا المتجه الذاتي ليس بالأمر السهل كما سيتضح، لذا هذه ليست نهاية القصة — لكنه من المفيد أن نبدأ من هنا.
القيمة الذاتية لـ المقابلة للمتجه الذاتي هي
أي أن حيث إذن، إذا شغّلنا إجراء تقدير الطور على باستخدام المتجه الذاتي سنحصل على تقريب لـ بحساب المقلوب سنتمكن من معرفة — بشرط أن يكون تقريبنا كافيًا.
بمزيد من التفصيل، عندما نُشغّل إجراء تقدير الطور باستخدام كيوبت تحكم، ما نحصل عليه هو عدد نأخذ بعدها كتخمين لـ وهو في حالتنا هذه. لمعرفة من هذا التقريب، الشيء الطبيعي هو حساب مقلوب تقريبنا والتقريب إلى أقرب عدد صحيح.
على سبيل المثال، لنفترض أن وأننا نُجري تقدير الطور على بالمتجه الذاتي باستخدام بتات تحكم. أفضل تقريب من بتات لـ هو ولدينا احتمال جيد (حوالي في هذه الحالة) للحصول على النتيجة من تقدير الطور. لدينا
والتقريب إلى أقرب عدد صحيح يعطي وهو الجواب الصحيح.
من ناحية أخرى، إذا لم نستخدم دقة كافية، قد لا نحصل على الجواب الصحيح. مثلاً، إذا أخذنا كيوبتات تحكم في تقدير الطور، قد نحصل على أفضل تقريب من بتات لـ وهو أخذ المعكوس يعطي
والتقريب إلى أقرب عدد صحيح يعطي جواباً خاطئاً وهو
إذن كم من الدقة نحتاج للحصول على الجواب الصحيح؟ نعرف أن الرتبة عدد صحيح، وبشكل حدسي ما نحتاجه هو دقة كافية لتمييز عن الاحتمالات القريبة منها، بما فيها و أقرب عدد من يجب أن نأخذه بالحسبان هو والمسافة بين هذين العددين هي
لذلك، إذا أردنا التأكد من أننا لن نخلط بين و يكفي استخدام دقة كافية لضمان أن أفضل تقريب لـ يكون أقرب إلى منه إلى إذا استخدمنا دقة كافية بحيث
بحيث يكون الخطأ أقل من نصف المسافة بين و فسيكون أقرب إلى من أي احتمال آخر، بما فيها و
يمكننا التحقق من هذا على النحو التالي. لنفترض أن
حيث يحقق
عند أخذ المعكوس نحصل على
بالتكبير في البسط والتصغير في المقام، يمكننا تقدير مدى بُعدنا عن كالتالي.
نحن أقل من بعيداً عن لذا كما هو متوقع سنحصل على عند التقريب.
للأسف، لأننا لا نعرف بعد، لا يمكننا استخدامه لمعرفة مقدار الدقة التي نحتاجها. ما يمكننا فعله بدلاً من ذلك هو الاستفادة من حقيقة أن يجب أن يكون أصغر من لضمان استخدام دقة كافية. تحديداً، إذا استخدمنا دقة كافية لضمان أن أفضل تقريب لـ يحقق
فستكون لدينا دقة كافية لتحديد بشكل صحيح عند أخذ المعكوس. أخذ يضمن أن لدينا فرصة جيدة للحصول على تقدير بهذه الدقة باستخدام الطريقة الموصوفة سابقاً. (أخذ يكفي إذا كنا مرتاحين لحد أدنى على احتمال النجاح.)
الحل العام
كما رأينا للتو، إذا كان لدينا المتجه الذاتي لـ يمكننا معرفة عبر تقدير الطور، طالما استخدمنا عدداً كافياً من كيوبتات التحكم لتحقيق هذا بدقة كافية. للأسف، ليس من السهل الحصول على المتجه الذاتي لذا نحتاج لمعرفة كيف نتابع.
لنفترض لحظةً أننا نتابع تماماً كما في الأعلى، لكن مع المتجه الذاتي بدلاً من لأي اختيار نريد التفكير فيه. النتيجة التي نحصل عليها من إجراء تقدير الطور ستكون تقريباً
بافتراض أننا لا نعرف ولا هذا قد يسمح لنا أو لا يسمح لنا بتحديد مثلاً، إذا كان سنحصل على تقريب لـ وهذا للأسف لا يخبرنا بشيء. لكن هذه حالة غير شائعة؛ بالنسبة لقيم الأخرى، سنتمكن على الأقل من تعلم شيء عن
يمكننا استخدام خوارزمية تُعرف بـ خوارزمية الكسور المتسلسلة لتحويل تقريبنا إلى كسور قريبة — بما فيها إذا كان التقريب جيداً بما يكفي. لن نشرح خوارزمية الكسور المتسلسلة هنا. بدلاً من ذلك، إليك حقيقة معروفة عن هذه الخوارزمية.
إذا كان لدينا تقريب قريب جداً لـ وشغّلنا خوارزمية الكسور المتسلسلة لـ و سنحصل على و كما هما موصوفان في الحقيقة. تحليل الحقيقة يسمح لنا بالاستنتاج أن
لاحظ تحديداً أننا لا نتعلم بالضرورة و بل نتعلم فقط بصورتها المبسّطة.
على سبيل المثال، وكما لاحظنا سابقاً، لن نتعلم أي شيء من لكن هذه هي القيمة الوحيدة لـ التي يحدث فيها هذا. عندما يكون غير صفري، قد يكون له عوامل مشتركة مع لكن العدد الذي نحصل عليه من خوارزمية الكسور المتسلسلة يجب أن يقسم على الأقل.
هذا ليس واضحاً على الإطلاق، لكنه صحيح: إذا كان لدينا القدرة على معرفة و حيث لـ مختارة بشكل عشوائي منتظم، فمن المرجح جداً أن نتمكن من استرداد بعد عدد قليل من العينات. تحديداً، إذا كان تخميننا لـ هو المضاعف المشترك الأصغر لجميع قيم المقام التي نلاحظها، سنكون محقين باحتمال عالٍ.
بشكل حدسي، بعض قيم ليست مفيدة لأنها تشترك في عوامل مشتركة مع وهذه العوامل المشتركة تكون خفية علينا لما نعرف و لكن الاختيارات العشوائية لـ ما يُرجَّح أنها تخفي عوامل لفترة طويلة، واحتمال أننا ما نخمّن صح بأخذ المضاعف المشترك الأصغر للمقامات التي نلاحظها يقل بشكل أسي مع عدد العينات.
لا يزال علينا أن نعالج مسألة كيف نحصل على متجه ذاتي لـ من أجل تشغيل إجراء تقدير الطور عليه. والحقيقة، لا نحتاج إلى إنشائها في الأصل!
ما سنفعله بدلاً من ذلك هو تشغيل إجراء تقدير الطور على الحالة ونقصد بها الترميز الثنائي بـ بت للعدد بدلاً من متجه ذاتي لـ حتى الآن تكلمنا فقط عن تشغيل إجراء تقدير الطور على متجه ذاتي معين، لكن ما في شيء يمنعنا من تشغيل الإجراء على حالة دخل ليست متجهاً ذاتياً لـ وهذا بالضبط ما نفعله هنا مع الحالة (هذه ليست متجهاً ذاتياً لـ إلا إذا كان وهو اختيار لسنا مهتمين به.)
المبرر لاختيار الحالة بدلاً من متجه ذاتي لـ هو أن المعادلة التالية صحيحة.
طريقة للتحقق من هذه المعادلة هي مقارنة الضرب الداخلي للطرفين مع كل حالة أساسية قياسية، مستخدمين الصيغ المذكورة سابقاً في الدرس للمساعدة في تقييم نتائج الطرف الأيمن. كنتيجة لذلك، سنحصل على نفس نتائج القياس بالضبط كأننا اخترنا بشكل موحد عشوائي واستخدمنا كمتجه ذاتي.
بتفصيل أكثر، لنتخيل أننا نشغّل إجراء تقدير الطور مع الحالة بدلاً من أحد المتجهات الذاتية بعد أداء تحويل فورييه الكمومي العكسي، يتركنا هذا مع الحالة
حيث
المتجه يمثل حالة الكيوبتات الـ العلوية بعد تطبيق عكس تحويل فورييه الكمومي عليها.
إذن، بفضل حقيقة أن مجموعة متعامدة معيارية، نجد أن قياس الكيوبتات الـ العلوية يعطي تقريباً للقيمة حيث يُختار بشكل موحد عشوائي. كما ناقشنا بالفعل، هذا يسمح لنا بمعرفة بدرجة عالية من الثقة بعد عدة تشغيلات مستقلة، وهذا كان هدفنا.
التكلفة الإجمالية
تكلفة تنفيذ كل وحدة تحكم موحدة هي هناك من عمليات الوحدة الموحدة المتحكم بها، ولدينا لذا التكلفة الإجمالية لعمليات الوحدة الموحدة المتحكم بها هي بالإضافة إلى ذلك، لدينا بوابة هادامارد (تساهم بـ في التكلفة)، وتحويل فورييه الكمومي العكسي يساهم بـ في التكلفة. إذن، تكلفة عمليات الوحدة الموحدة المتحكم بها تهيمن على تكلفة الإجراء كله — وبالتالي هي
بالإضافة إلى الدائرة الكمومية نفسها، هناك بعض الحسابات الكلاسيكية التي نحتاج إلى أدائها على طول الطريق. هذا يشمل حساب القوى في لـ وهي مطلوبة لإنشاء بوابات الوحدة الموحدة المتحكم بها، إلى جانب خوارزمية الكسور المتسلسلة التي تحوّل تقريبات إلى كسور. يمكن أداء هذه الحسابات بدوائر بوليانية بتكلفة إجمالية
كما هو معتاد، يمكن تحسين كل هذه الحدود باستخدام خوارزميات سريعة مقارباً؛ هذه الحدود تفترض أننا نستخدم خوارزميات قياسية للعمليات الحسابية الأساسية.
التحليل إلى عوامل عبر إيجاد الرتبة
آخر شيء محتاجين نناقشه هو كيف يساعدنا حل مسألة إيجاد الرتبة في التحليل إلى عوامل. هذا الجزء كلاسيكي تماماً — ما له علاقة تحديداً بالحوسبة الكمومية.
إليك الفكرة الأساسية. نريد تحليل العدد إلى عوامل، ويمكننا فعل ذلك بشكل تعاودي. تحديداً، يمكننا التركيز على مهمة تقسيم التي تعني إيجاد أي عددين صحيحين بحيث هذا ليس ممكناً لو عدد أولي، لكن يمكننا التحقق بكفاءة إذا كان أولياً باستخدام خوارزمية اختبار الأولية أولاً، وإذا لم يكن أولياً سنحاول تقسيمه. بمجرد أن نقسّم يمكننا تطبيق التعاود على و حتى تصير كل عواملنا أولية ونحصل على التحليل الأولي لـ
تقسيم الأعداد الزوجية سهل: نُخرج فقط و
من السهل أيضاً تقسيم القوى الكاملة، يعني الأعداد بالصيغة للأعداد الصحيحة فقط بـ تقريب الجذور وهكذا، والتحقق من الأعداد الصحيحة القريبة كمرشحين لـ ما نحتاج نتجاوز خطوة في هذا التسلسل، لأن عند تلك النقطة الجذر ينزل عن ولن يكشف مرشحين إضافيين.
من الجيد أننا نستطيع فعل كلا الأمرين لأن إيجاد الرتبة لن يساعدنا في تحليل الأعداد الزوجية أو القوى الأولية, حيث يكون العدد أولياً. لكن لو كان فردياً وليس قوة أولية، فإيجاد الرتبة يسمح لنا بتقسيم
تشغيل هذه الخوارزمية قد يفشل في إيجاد عامل لـ تحديداً، هذا يحدث في حالتين:
- رتبة مودولو هي فردية.
- رتبة مودولو زوجية و
باستخدام نظرية الأعداد الأساسية يمكن إثبات أنه، لاختيار عشوائي لـ باحتمال لا يقل عن لا يحدث أيٌّ من هذين الحدثين. في الواقع، احتمال أن يحدث أي من الحدثين لا يتجاوز حيث هو عدد العوامل الأولية المتمايزة لـ وهذا هو سبب الحاجة لافتراض أن ليست قوة أولية. (افتراض أن فردية مطلوب أيضاً لصحة هذه الحقيقة.)
هذا يعني أن كل تشغيل لديه فرصة لا تقل عن 50% لتقسيم لذا، لو شغّلنا الخوارزمية مرة، مع اختيار عشوائياً كل مرة، سننجح في تقسيم باحتمال لا يقل عن
الفكرة الأساسية وراء الخوارزمية هي كالتالي. لو لدينا اختيار لـ حيث الرتبة لـ مودولو زوجية، فإن عدد صحيح ويمكننا النظر في الأعداد
باستخدام الصيغة نستنتج أن
الآن، نعرف أن بتعريف الرتبة — وهذه طريقة أخرى للقول أن تقسّم بالتساوي. هذا يعني أن تقسّم الحاصل
لكي يكون هذا صحيحاً، يجب أن تكون كل العوامل الأولية لـ أيضاً عوامل أولية لـ أو (أو كليهما) — ولاختيار عشوائي لـ يتبيّن أنه من غير المرجح أن تقسّم كل العوامل الأولية لـ أحد الحدّين دون أن تقسّم الآخر. وإلا، فطالما أن بعض العوامل الأولية لـ تقسّم الحدّ الأول وبعضها يقسّم الحدّ الثاني، سنتمكن من إيجاد عامل غير تافه لـ بحساب القاسم المشترك الأكبر مع الحدّ الأول.