مشكلة سيمون

في نظرية التعقيد الحسابي والحوسبة الكمومية ، تُعدّ مسألة سيمون مسألة حسابية ثبت أنها تُحلّ بسرعة أكبر بكثير على الحاسوب الكمومي مقارنةً بالحاسوب التقليدي. وقد شكّلت الخوارزمية الكمومية التي تحلّ مسألة سيمون، والتي تُعرف عادةً باسم خوارزمية سيمون ، مصدر إلهام لخوارزمية شور . [ 1 ] كلتا المسألتين هما حالتان خاصتان من مسألة الزمرة الفرعية المخفية الأبيلية ، والتي بات من المعروف الآن أنها تمتلك خوارزميات كمومية فعّالة.

تُصاغ هذه المسألة ضمن نموذج تعقيد شجرة القرار أو تعقيد الاستعلام، وقد وضعها دانيال ر. سيمون عام ١٩٩٤. [ ٢ ] قدّم سيمون خوارزمية كمومية تحلّ مسألة سيمون بسرعة أسية وبعدد استعلامات أقل أسيًا من أفضل خوارزمية كلاسيكية احتمالية (أو حتمية). وبالتحديد، تستخدم خوارزمية سيمون عددًا خطيًا من الاستعلامات، بينما تستخدم أي خوارزمية احتمالية كلاسيكية عددًا أسيًا من الاستعلامات.

تُنتج هذه المسألة فصلًا مثاليًا بين فئتي التعقيد BPP (تعقيد الاستعلام الكلاسيكي ذي الخطأ المحدود) و BQP (تعقيد الاستعلام الكمي ذي الخطأ المحدود). [ 3 ] وهذا هو نفس الفصل الذي تحققه خوارزمية برنشتاين-فازيراني ، ويختلف عن الفصل الذي توفره خوارزمية دويتش-جوزا ، التي تفصل بين P و EQP . وعلى عكس خوارزمية برنشتاين-فازيراني، فإن فصل خوارزمية سيمون أُسّي .

نظرًا لأن هذه المسألة تفترض وجود وسيط "صندوق أسود" عالي التنظيم لتحقيق تسريعها، فإن قيمتها العملية محدودة. [ 4 ] ومع ذلك، فبدون هذا الوسيط، لا يمكن إثبات التسريع الأسي بسهولة، لأن ذلك سيثبت أن P تختلف عن PSPACE .

وصف المشكلة

تتناول مشكلة سيمون مسألة الوصول إلى دالةو:{0،1}ن{0،1}م،من{\displaystyle f:\{0,1\}^{n}\to \{0,1\}^{m},\;m\geq n}كما هو مُنفَّذ بواسطة صندوق أسود أو وسيط. يُفترض أن تكون هذه الوظيفة إما وظيفة أحادية أو وظيفة ثنائية؛ إذاو{\displaystyle f}وهي نسبة اثنين إلى واحد، كما يُوعد بأن المدخلينx{\displaystyle x}وx{\displaystyle x'}تكون القيمة مساوية لنفس القيمة إذا وفقط إذاx{\displaystyle x}وx{\displaystyle x'}تختلف في مجموعة ثابتة من البتات. أي،

لوو{\displaystyle f}ليس الأمر علاقة واحد لواحد، بل يُوعد بوجود قيمة غير صفرية.s{\displaystyle s}بحيث يكون ذلك، بالنسبة للجميعxx{\displaystyle x\neq x'}،و(x)=و(x){\displaystyle f(x)=f(x')}إذا وفقط إذاx=xs{\displaystyle x'=x\oplus s}

أين{\displaystyle \oplus }يشير إلى عملية XOR الثنائية . تسأل مسألة سيمون، في صيغة القرار، عما إذاو{\displaystyle f}هل هي علاقة واحد لواحد أم اثنان لواحد؟ في صيغتها غير القائمة على القرار، تسأل مسألة سيمون عما إذاو{\displaystyle f}هل العلاقة بين واحد وواحد أم ما هي قيمةs{\displaystyle s}(كما هو مُعرّف أعلاه). الهدف هو حل هذه المهمة بأقل عدد ممكن من الاستعلامات (التقييمات).و{\displaystyle f}.

لاحظ أنه إذاx=x{\displaystyle x'=x}، ثمو(x)=و(x){\displaystyle f(x')=f(x)}وx=xs{\displaystyle x'=x\oplus s}معs=0{\displaystyle s=0}من ناحية أخرى (لأنأبب=أ{\displaystyle a\oplus b\oplus b=a} للجميعأ{\displaystyle a}وب{\displaystyle b})x=xsxx=s{\displaystyle x'=x\oplus s\iff x'\oplus x=s}وبالتالي، يمكن إعادة صياغة مشكلة سيمون بالشكل التالي:

مع إمكانية الوصول إلى الصندوق الأسود أو قاعدة البيانات لـو{\displaystyle f}وعدت بإرضاء البعضs{\displaystyle s}وكل شيءx،x{\displaystyle x,x'}،و(x)=و(x){\displaystyle f(x)=f(x')}إذا وفقط إذاxx{0،s}{\displaystyle x'\oplus x\in \{0,s\}}، تحديد ما إذاs0{\displaystyle s\neq 0}(نسخة القرار)، أو المخرجاتs{\displaystyle s}(نسخة غير متعلقة بالقرار).

لاحظ أيضًا أن الوعد علىو{\displaystyle f}يشير ذلك إلى أنه إذاو{\displaystyle f}إذا كانت الدالة ذات نسبة اثنين إلى واحد، فهي دالة دورية: و(x)=و(xs).{\displaystyle f(x)=f(x\oplus s).}

مثال

الدالة التالية هي مثال على دالة تحقق الخاصية المطلوبة لـن=3{\displaystyle n=3}:

x{\displaystyle x}و(x){\displaystyle f(x)}
٠٠٠101
001010
010٠٠٠
011110
100٠٠٠
101110
110101
111010

في هذه الحالة،s=110{\displaystyle s=110}(أي الحل). كل مخرجاتو{\displaystyle f}يحدث ذلك مرتين، ويكون ناتج عملية XOR الثنائية بين سلسلتي الإدخال المقابلتين لأي ناتج معين مساوياً لـs=110{\displaystyle s=110}.

على سبيل المثال، سلاسل الإدخال010{\displaystyle 010}و100{\displaystyle 100}كلاهما مُحددان (بواسطةو{\displaystyle f}) إلى نفس سلسلة الإخراج٠٠٠{\displaystyle 000}. إنه،و(010)=٠٠٠{\displaystyle {\displaystyle f(010)=000}}وو(100)=٠٠٠{\displaystyle {\displaystyle f(100)=000}}بتطبيق عملية XOR على 010 و100 نحصل على 110، أي010100=110=s.{\displaystyle {\displaystyle 010\oplus 100=110=s}.}

s=110{\displaystyle s=110}يمكن التحقق من ذلك أيضًا باستخدام سلسلتي الإدخال 001 و111 اللتين يتم تعيينهما (بواسطة f) إلى سلسلة الإخراج نفسها 010. بتطبيق عملية XOR على 001 و111 نحصل على 110، أي001111=110=s{\displaystyle 001\oplus 111=110=s}وهذا يعطي نفس الحلs=110{\displaystyle s=110}كما كان من قبل.

في هذا المثال، الدالة f هي بالفعل دالة ثنائية التقابل حيثs0ن{\displaystyle {\displaystyle s\neq 0^{n}}}.

مشكلة الصلابة

من البديهي أن هذه مشكلة صعبة الحل بالطريقة "الكلاسيكية"، حتى مع استخدام العشوائية وقبول احتمال خطأ ضئيل. والسبب وراء هذه الصعوبة بسيط نسبياً: إذا أردت حل المشكلة بالطريقة الكلاسيكية، فأنت بحاجة إلى إيجاد مدخلين مختلفين.x{\displaystyle x}وy{\displaystyle y}والتيو(x)=و(y){\displaystyle f(x)=f(y)}ليس بالضرورة أن يكون هناك أي هيكل في الوظيفةو{\displaystyle f}سيساعدنا ذلك في العثور على مدخلين من هذا القبيل: وبشكل أكثر تحديدًا، يمكننا اكتشاف شيء ما حولو{\displaystyle f}(أو ما يفعله) فقط عندما نحصل على نفس المخرجات لمدخلين مختلفين. على أي حال، سنحتاج إلى التخمين.Ω(2ن){\displaystyle {\displaystyle \Omega ({\sqrt {2^{n}}})}}مدخلات مختلفة قبل أن يكون من المحتمل العثور على زوج منهاو{\displaystyle f}يُنتج نفس الناتج، كما هو الحال في مسألة عيد الميلاد . لأنه، بالطريقة التقليدية، لإيجاد قيمة s بيقين 100%، سيتطلب الأمر التحقق.Θ(2ن){\displaystyle {\displaystyle \Theta ({\sqrt {2^{n}}})}}باستخدام المدخلات، تسعى مشكلة سيمون إلى إيجاد s باستخدام استعلامات أقل من هذه الطريقة الكلاسيكية.

خوارزمية سايمون

دائرة كمومية تمثل/تنفذ خوارزمية سايمون

تستخدم الخوارزمية ككل روتينًا فرعيًا لتنفيذ الخطوتين التاليتين:

  1. قم بتشغيل الروتين الكمومي كما هو متوقعيا(ن){\displaystyle O(n)}عدد مرات الحصول على قائمة من سلاسل البتات المستقلة خطيًاy1،...،yن-1{\displaystyle y_{1},...,y_{n-1}}.
  2. كلyك{\displaystyle y_{k}}يرضيyكs=0{\displaystyle y_{k}\cdot s=0}لذا يمكننا حل نظام المعادلات الناتج عن ذلك للحصول علىs{\displaystyle s}.

روتين فرعي كمي

الدائرة الكمومية (انظر الصورة) هي تطبيق للجزء الكمومي من خوارزمية سيمون. يستخدم الروتين الكمومي للخوارزمية تحويل هادامارد.حن|ك=12نج=02ن-1(-1)كج|ج{\displaystyle H^{\otimes n}|k\rangle ={\frac {1}{\sqrt {2^{n}}}}\sum _{j=0}^{2^{n}-1}(-1)^{k\cdot j}|j\rangle }أينكج=ك1ج1...كنجن{\displaystyle k\cdot j=k_{1}j_{1}\oplus \ldots \oplus k_{n}j_{n}}، أين{\displaystyle \oplus }يشير إلى عملية XOR.

أولاً، تبدأ الخوارزمية بسجلين، يتم تهيئتهما إلى|0ن|0ن{\displaystyle |0\rangle ^{\otimes n}|0\rangle ^{\otimes n}}ثم نطبق تحويل هادامارد على السجل الأول، مما يعطي الحالة

12نك=02ن-1|ك|0ن.{\displaystyle {\frac {1}{\sqrt {2^{n}}}}\sum _{k=0}^{2^{n}-1}|k\rangle |0\rangle ^{\otimes n}.}

استعلم من العرافةيوو{\displaystyle U_{f}}للحصول على الولاية

12نك=02ن-1|ك|و(ك){\displaystyle {\frac {1}{\sqrt {2^{n}}}}\sum _{k=0}^{2^{n}-1}|k\rangle |f(k)\rangle }.

قم بتطبيق تحويل هادامارد آخر على السجل الأول. سيؤدي هذا إلى إنتاج الحالة

12نك=02ن-1[12نج=02ن-1(-1)جك|ج]|و(ك)=ج=02ن-1|ج[12نك=02ن-1(-1)جك|و(ك)].{\displaystyle {\frac {1}{\sqrt {2^{n}}}}\sum _{k=0}^{2^{n}-1}\left[{\frac {1}{\sqrt {2^{n}}}}\sum _{j=0}^{2^{n}-1}(-1)^{j\cdot k}|j\rangle \right]|f(k)\rangle =\sum _{j=0}^{2^{n}-1}|j\rangle \left[{\frac {1}{2^{n}}}\sum _{k=0}^{2^{n}-1}(-1)^{j\cdot k}|f(k)\rangle \right].}

وأخيرًا، نقيس السجل الأول (تعمل الخوارزمية أيضًا إذا تم قياس السجل الثاني قبل الأول، ولكن هذا غير ضروري). احتمال قياس حالة ما|ج{\displaystyle |j\rangle }يكون||12نك=02ن-1(-1)جك|و(ك)||2{\displaystyle \left|\left|{\frac {1}{2^{n}}}\sum _{k=0}^{2^{n}-1}(-1)^{j\cdot k}|f(k)\rangle \right|\right|^{2}}ويرجع ذلك إلى حقيقة أن أخذ مقدار هذا المتجه وتربيعه يجمع كل احتمالات جميع القياسات الممكنة للسجل الثاني التي يجب أن يكون السجل الأول فيها هو|ج{\displaystyle |j\rangle }هناك حالتان لقياسنا:

  1. s=0ن{\displaystyle s=0^{n}}وو{\displaystyle f}هو واحد لواحد.
  2. s0ن{\displaystyle s\neq 0^{n}}وو{\displaystyle f}نسبة اثنين إلى واحد.

في الحالة الأولى،||12نك=02ن-1(-1)جك|و(ك)||2=12ن{\displaystyle \left|\left|{\frac {1}{2^{n}}}\sum _{k=0}^{2^{n}-1}(-1)^{j\cdot k}|f(k)\rangle \right|\right|^{2}={\frac {1}{2^{n}}}}لأنه في هذه الحالة،و{\displaystyle f}هو علاقة واحد لواحد، مما يعني أن نطاقو{\displaystyle f}يكون{0،1}ن{\displaystyle \{0,1\}^{n}}وهذا يعني أن عملية الجمع تشمل كل متجه أساسي. أما في الحالة الثانية، فلاحظ وجود سلسلتين،x1{\displaystyle x_{1}}وx2{\displaystyle x_{2}}بحيثو(x1)=و(x2)=z{\displaystyle f(x_{1})=f(x_{2})=z}، أينzرأنزهـ(و){\displaystyle z\in \mathrm {range} (f)}. هكذا،||12نك=02ن-1(-1)جك|و(ك)||2=||12نzرأنزهـ(و)((-1)جx1+(-1)جx2)|z||2{\displaystyle \left|\left|{\frac {1}{2^{n}}}\sum _{k=0}^{2^{n}-1}(-1)^{j\cdot k}|f(k)\rangle \right|\right|^{2}=\left|\left|{\frac {1}{2^{n}}}\sum _{z\,\in \,\mathrm {range} (f)}((-1)^{j\cdot x_{1}}+(-1)^{j\cdot x_{2}})|z\rangle \right|\right|^{2}}علاوة على ذلك، بما أنx1x2=s{\displaystyle x_{1}\oplus x_{2}=s}،x2=x1s{\displaystyle x_{2}=x_{1}\oplus s}وهكذا||12نzرأنزهـ(و)((-1)جx1+(-1)جx2)|z||2=||12نzرأنزهـ(و)((-1)جx1+(-1)ج(x1s))|z||2=||12نzرأنزهـ(و)((-1)جx1+(-1)جx1جs)|z||2=||12نzرأنزهـ(و)(-1)جx1(1+(-1)جs)|z||2{\displaystyle {\begin{aligned}\left|\left|{\frac {1}{2^{n}}}\sum _{z\,\in \,\mathrm {range} (f)}((-1)^{j\cdot x_{1}}+(-1)^{j\cdot x_{2}})|z\rangle \right|\right|^{2}&=\left|\left|{\frac {1}{2^{n}}}\sum _{z\,\in \,\mathrm {range} (f)}((-1)^{j\cdot x_{1}}+(-1)^{j\cdot (x_{1}\oplus s)})|z\rangle \right|\right|^{2}\\&=\left|\left|{\frac {1}{2^{n}}}\sum _{z\,\in \,\mathrm {range} (f)}((-1)^{j\cdot x_{1}}+(-1)^{j\cdot x_{1}\oplus j\cdot s})|z\rangle \right|\right|^{2}\\&=\left|\left|{\frac {1}{2^{n}}}\sum _{z\,\in \,\mathrm {range} (f)}(-1)^{j\cdot x_{1}}(1+(-1)^{j\cdot s})|z\rangle \right|\right|^{2}\end{aligned}}}أصبح من السهل الآن حساب قيمة هذا التعبير. تذكر أننا نقيسج{\displaystyle j}. متىجs=1{\displaystyle j\cdot s=1}إذاً، سيتم تقييم هذا التعبير إلى0{\displaystyle 0}ومتىجs=0{\displaystyle j\cdot s=0}إذن، سيكون هذا التعبير2-ن+1{\displaystyle 2^{-n+1}}.

وهكذا، سواء عندماs=0ن{\displaystyle s=0^{n}}ومتىs0ن{\displaystyle s\neq 0^{n}}قياساتناج{\displaystyle j}يرضيجs=0{\displaystyle j\cdot s=0}.

المعالجة اللاحقة التقليدية

نقوم بتشغيل الجزء الكمومي من الخوارزمية حتى نحصل على قائمة مستقلة خطيًا من سلاسل البتاتy1،...،yن-1{\displaystyle y_{1},\ldots ,y_{n-1}}وكلyك{\displaystyle y_{k}}يرضيyكs=0{\displaystyle y_{k}\cdot s=0}وبالتالي، يمكننا حل نظام المعادلات هذا بكفاءة بالطريقة الكلاسيكية لإيجادs{\displaystyle s}.

احتمال أنy1،y2،...،yن-1{\displaystyle y_{1},y_{2},\dots ,y_{n-1}}الاستقلال الخطي هو على الأقلك=1(1-12ك)=0.288788...{\displaystyle \prod _{k=1}^{\infty }\left(1-{\frac {1}{2^{k}}}\right)=0.288788\dots }بمجرد أن نحل نظام المعادلات، ونتوصل إلى حلs{\displaystyle s'}يمكننا اختبار ما إذاو(0ن)=و(s){\displaystyle f(0^{n})=f(s')}إذا كان هذا صحيحًا، فإننا نعلمs=s{\displaystyle s'=s}، منذو(0ن)=و(0نs)=و(s){\displaystyle f(0^{n})=f(0^{n}\oplus s)=f(s)}إذا كان الأمر كذلكو(0ن)و(s){\displaystyle f(0^{n})\neq f(s')}إذن هذا يعني أنs=0ن{\displaystyle s=0^{n}}، وو(0ن)و(s){\displaystyle f(0^{n})\neq f(s')}منذو{\displaystyle f}هو واحد لواحد.

يمكننا تكرار خوارزمية سيمون عددًا ثابتًا من المرات لزيادة احتمالية النجاح بشكل تعسفي، مع الحفاظ على نفس التعقيد الزمني.

أمثلة واضحة لخوارزمية سيمون لعدد قليل من الكيوبتات

كيوبت واحد

لنفترض أبسط مثال للخوارزمية، معن=1{\displaystyle n=1}في هذه الحالة، يؤدي تطوير حالة الإدخال من خلال بوابة هادامارد والنتيجة المرجعية إلى الحالة (حتى إعادة التطبيع):

|0|و(0)+|1|و(1).{\displaystyle |0\rangle |f(0)\rangle +|1\rangle |f(1)\rangle .}

لوs=1{\displaystyle s=1}، إنه،و(0)=و(1){\displaystyle f(0)=f(1)}ثم إن قياس السجل الثاني يعطي النتيجة دائمًا|و(0){\displaystyle |f(0)\rangle }ويؤدي ذلك دائمًا إلى انهيار السجل الأول إلى الحالة (حتى إعادة التطبيع):

|0+|1.{\displaystyle |0\rangle +|1\rangle .}

وبالتالي، فإن تطبيق معادلة هادامارد وقياس السجل الأول يعطي النتيجة دائمًا.|0{\displaystyle |0\rangle }من ناحية أخرى، إذاو{\displaystyle f}أي أنها علاقة واحد لواحد.s=0{\displaystyle s=0}ثم قياس السجل الأول بعد هادامارد الثاني يمكن أن يؤدي إلى كليهما|0{\displaystyle |0\rangle }و|1{\displaystyle |1\rangle }باحتمالية متساوية.

نتعافىs{\displaystyle s}من نتائج القياس من خلال النظر فيما إذا كنا نقيس دائمًا|0{\displaystyle |0\rangle }وفي هذه الحالةs=1{\displaystyle s=1}أو قمنا بقياس كليهما|0{\displaystyle |0\rangle }و|1{\displaystyle |1\rangle }باحتمالية متساوية، وفي هذه الحالة نستنتج أنs=0{\displaystyle s=0}ستفشل هذه الخطة إذاs=0{\displaystyle s=0}لكننا مع ذلك كنا نجد النتيجة دائمًا|0{\displaystyle |0\rangle }لكن احتمال وقوع هذا الحدث هو2-شمال{\displaystyle 2^{-N}}معشمال{\displaystyle N}عدد القياسات التي تم إجراؤها، وبالتالي يمكن جعلها صغيرة بشكل كبير عن طريق زيادة الإحصائيات.

كيوبتان

لننظر الآن في الحالة معن=2{\displaystyle n=2}ينتج عن الجزء الأولي من الخوارزمية الحالة التالية (حتى إعادة التطبيع):|٠٠|و(٠٠)+|01|و(01)+|10|و(10)+|11|و(11).{\displaystyle |00\rangle |f(00)\rangle +|01\rangle |f(01)\rangle +|10\rangle |f(10)\rangle +|11\rangle |f(11)\rangle .}لوs=(٠٠){\displaystyle s=(00)}، معنىو{\displaystyle f}إذا كانت دالة حقنية، فإن إيجاد|و(x){\displaystyle |f(x)\rangle }في السجل الثاني، يتم دائمًا دمج السجل الأول إلى|x{\displaystyle |x\rangle }للجميعx{0،1}2{\displaystyle x\in \{0,1\}^{2}}بمعنى آخر، بتطبيق بوابات هادامارد وقياس السجل الأول، يتم تسجيل النتائج الأربع.٠٠،01،10،11{\displaystyle 00,01,10,11}وبالتالي يتم العثور عليهم باحتمالية متساوية.

لنفترض من ناحية أخرىs(٠٠){\displaystyle s\neq (00)}، على سبيل المثال،s=(01){\displaystyle s=(01)}ثم القياس|و(٠٠){\displaystyle |f(00)\rangle }في السجل الثاني، يتم دمج السجل الأول مع السجل الأصلي.|٠٠+|10{\displaystyle |00\rangle +|10\rangle }وبشكل أعم، القياس|و(xy){\displaystyle |f(xy)\rangle }أعطِ|x،y+|x،y1=|x(|0+|1){\displaystyle |x,y\rangle +|x,y\oplus 1\rangle =|x\rangle (|0\rangle +|1\rangle )}في السجل الأول. وبالتالي، فإن تطبيق بوابات هادامارد والقياس على السجل الأول يمكن أن يؤدي إلى النتائج التالية٠٠{\displaystyle 00}و10{\displaystyle 10}باحتمالات متساوية.

وينطبق منطق مماثل على الحالات الأخرى: إذاs=(10){\displaystyle s=(10)}إذن، النتائج المحتملة هي٠٠{\displaystyle 00}و01{\displaystyle 01}بينما إذاs=(11){\displaystyle s=(11)}النتائج المحتملة هي٠٠{\displaystyle 00}و11{\displaystyle 11}، بما يتوافق معجs=0{\displaystyle j\cdot s=0}القاعدة التي تمت مناقشتها في الحالة العامة.

للتعافيs{\displaystyle s}وبالتالي، نحتاج فقط إلى التمييز بين هذه الحالات الأربع، وجمع إحصاءات كافية لضمان أن احتمال الخطأ في توزيع احتمالية نتيجة ما هو توزيع احتمالية نتيجة أخرى صغير بما فيه الكفاية.

تعقيد

تتطلب خوارزمية سايمونيا(ن){\displaystyle O(n)}الاستعلامات الموجهة إلى الصندوق الأسود، في حين أن الخوارزمية الكلاسيكية ستحتاج على الأقلΩ(2ن/2){\displaystyle \Omega (2^{n/2})}من المعروف أيضاً أن خوارزمية سايمون مثالية بمعنى أن أي خوارزمية كمومية لحل هذه المشكلة تتطلبΩ(ن){\displaystyle \Omega (n)}الاستفسارات. [ 5 ] [ 6 ]

تطبيق خوارزمية سايمون باستخدام Qiskit

الدائرة الكمومية الموضحة هنا هي مثال بسيط لكيفية تنفيذ خوارزمية سيمون في بايثون باستخدام Qiskit ، وهو إطار عمل مفتوح المصدر لتطوير برامج الحوسبة الكمومية من شركة IBM.

خوارزمية سيمون للدائرة الكمومية

انظر أيضاً

مراجع

  1. شور، بيتر و. (1999-01-01). "خوارزميات زمنية متعددة الحدود لتحليل الأعداد الأولية واللوغاريتمات المنفصلة على حاسوب كمومي" . مجلة SIAM Review . 41 (2): 303-332 . arXiv : quant-ph/9508027 . doi : 10.1137/S0036144598347011 . ISSN 0036-1445 . 
  2. سايمون، دانيال ر. (1997-10-01). "حول قوة الحوسبة الكمومية" . مجلة SIAM للحوسبة . 26 (5): 1474-1483 . doi : 10.1137/S0097539796298637 . ISSN 0097-5397 . 
  3. بريسكيل، جون (1998). ملاحظات المحاضرات لمادة الفيزياء 229: المعلومات الكمومية والحوسبة . الصفحات 273-275 . 
  4. آرونسون، سكوت (2018). مقدمة في علم المعلومات الكمومية، مذكرات المحاضرات (PDF) . الصفحات 144-151 . 
  5. كويران، ب.؛ نيسم، ف.؛ بورتييه، ن. (2007)، "تعقيد الاستعلام الكمومي لمسألة المجموعة الفرعية المخفية الأبيلية" ، علوم الحاسوب النظرية ، 380 ( 1-2 ): 115-126 ، doi : 10.1016/j.tcs.2007.02.057 ، تاريخ الاسترجاع : 2011-06-06
  6. كويران، ب.؛ نيسم، ف.؛ بورتييه، ن. (2005)، "حد أدنى كمي لتعقيد الاستعلام في مسألة سيمون" ، وقائع المؤتمر الدولي للبرمجة الحاسوبية واللغوية ، 3580 : 1287-1298 ، arXiv : quant-ph/0501060 ، Bibcode : 2005quant.ph..1060K ، تاريخ الاسترجاع : 2011-06-06