เมนูนำทาง
ขั้นตอนวิธีของชอร์ กระบวนการของขั้นตอนวิธีของชอร์ปัญหาที่เราต้องการจะหาคำตอบคือ: ให้ N {\displaystyle N} เป็นจำนวนประกอบที่เป็นเลขคี่ ให้หาจำนวนเต็ม d ที่อยู่ระหว่าง 1และ N {\displaystyle N} และ หาร N {\displaystyle N} ลงตัว เราสนใจ N {\displaystyle N} ที่มีค่าเป็นจำนวนคี่เนื่องจากถ้าเป็นจำนวนคู่จะมี “2” เป็นตัวประกอบเฉพาะอยู่แล้ว โดยเราสามารถใช้การทดสอบจำนวนเฉพาะเพื่อหาว่า N {\displaystyle N} นั้นเป็นจำนวนประกอบหรือไม่
นอกจากนั้นแล้ว เรายังต้องการ N {\displaystyle N} ที่ไม่ใช่เลขยกกำลังของจำนวนเฉพาะ เราสามารถทดสอบโดยใช้รากที่2, รากที่4, ....., รากที่ k ของ N โดยที่ k ≤ log 2 ( N ) {\displaystyle k\leq \log _{2}(N)} และต้องตรวจสอบว่าไม่มีจำนวนใดในนั้นที่เป็นจำนวนเต็ม
เนื่องจาก N {\displaystyle N} ไม่ใช่เลขยกกำลังของจำนวนเฉพาะ คำตอบต้องเป็นผลลัพธ์ของจำนวนเฉพาะสองตัวที่มีค่ามากกว่า 1 จากทฤษฎีบทเศษเหลือของจีน โดยจุดมุ่งหมายของอัลกอริทึ่มนี้คือการหาตัวประกอบของNที่มีค่าไม่เป็น 1 และ -1
ในการแยกตัวประกอบโดยใช้ขั้นตอนวิธีของชอร์นั้นประกอบด้วย2ส่วนคือ
นั่นคือ ลำดับ r {\displaystyle r} ของ a {\displaystyle a} ใน ( Z N ) × {\displaystyle (\mathbb {Z} _{N})^{\times }} ที่เป็นจำนวนเต็มบวกที่น้อยที่สุดสำหรับ f ( x + r ) = f ( x ) {\displaystyle f(x+r)=f(x)}
เช่น ถ้าN=15 qจะมีค่าเป็น2^8ซึ่งมากกว่า 152 แต่น้อยกว่า 2*152 จะได้ x มีค่าตั้งแต่ 0-255 ซึ่งต้องซึ่งต้องใช้หน่วยความจำส่วนแรกขนาด 8 คิวบิต เพื่อเก็บตัวเลข 256 ตัว คือ
เนื่องจากคุณสมบัติที่ทำงานหลาย ๆ อย่างขนานกันไปได้ของควอนตัมคอมพิวเตอร์ จึงสามารถคำนวณค่า f ( x ) = a x mod N {\displaystyle f(x)=a^{x}\ {\mbox{mod}}\ N} ของจำนวนx ต่าง ๆ ได้พร้อม ๆ กันในคราวเดียว ทำให้สามารถทำงานได้รวดเร็วกว่าคอมพิวเตอร์ปกติซึ่งต้องคำนวณทีละตัว
เมื่อ:b คือจำนวนเต็มที่น้อยที่สุดที่ f ( b ) = a b mod N = k {\displaystyle f(b)=a^{b}\ {\mbox{mod}}\ N=k}
r คือคาบของ f ( x ) {\displaystyle f(x)} n คือจำนวนเต็มที่มากที่สุดที่น้อยกว่า (q−b) /rหลังทำการวัดแล้วจะได้สถานะของหน่วยความจำเป็น
| | A | | − 1 / 2 ∑ x ′ = x ′ ∈ A | x ′ , k ⟩ {\displaystyle ||A||^{-1/2}\sum _{x'=x'\in A}\left|x',k\right\rangle }เมื่อ A คือเซตของ x ซึ่ง ให้ a x mod N = k {\displaystyle a^{x}\ {\mbox{mod}}\ N=k} และ A คือจำนวนสมาชิกของเซตดังกล่าว
เมนูนำทาง
ขั้นตอนวิธีของชอร์ กระบวนการของขั้นตอนวิธีของชอร์ใกล้เคียง
ขั้นตอนวิธีแบบยุคลิด ขั้นตอนวิธีการค้นหาเพื่อนบ้านใกล้สุด k ตัว ขั้นตอนวิธีของฟลอยด์-วอร์แชล ขั้นตอนวิธีของควิน-แม็กคลัสกีย์ ขั้นตอนวิธีฮังกาเรียน ขั้นตอนวิธี ขั้นตอนวิธีของชอร์ ขั้นตอนวิธีเชิงพันธุกรรม ขั้นตอนวิธีโบรน-เคอร์โบสท์ ขั้นตอนวิธีของไดก์สตราแหล่งที่มา
WikiPedia: ขั้นตอนวิธีของชอร์ http://blogs.discovermagazine.com/80beats/2011/01/... http://scottaaronson.com/blog/?p=208 http://scottaaronson.com/blog/?p=208#comment-9958 http://www.cs.berkeley.edu/~vazirani/f04quantum/no... http://www.theory.caltech.edu/people/preskill/ph22... http://people.ccmr.cornell.edu/~mermin/qcomp/chap3... http://adsabs.harvard.edu/abs/1999SIAMR..41..303S http://alumni.imsa.edu/~matth/quant/299/paper.pdf http://alumni.imsa.edu/~matth/quant/299/paper.ps http://alumni.imsa.edu/~matth/quant/299/paper.tex