פונקציה קוונטית

מתוך ויקיפדיה, האנציקלופדיה החופשית

פונקציה קוונטית הוא מעגל שערים קוונטיים אשר מממש חישוב של פונקציה כלשהי .

בניית מעגל הפיך מפונקציה כלשהי[עריכת קוד מקור | עריכה]

נרצה כי המעגל קוונטי יוכל לחשב פונקציה כלשהי ללא הגבלה על תכונותיה, ובפרט פונקציה שאינה נדרשת להיות הפיכה או חד-חד ערכית. מאידך, חוקי המכניקה הקוונטית, מאלצים כל מעגל חישוב קוונטי להיות הפיך. כדי להתגבר על אילוץ זה ועדיין לאפשר חישוב של כל פונקציה, המעגל מממש בפועל חישוב של פונקציה הפיכה, שנסמנה אשר בעזרתה ניתן לחשב את הפונקציה המקורית .

מעגל הפונקציה החדשה F מקבל, בנוסף ל-n הקיוביטים המייצגים את , קיוביט נוסף אשר נקרא קיוביט המטרה (target). מוצא המעגל אינו משנה את n הקיוביטים אשר מייצגים את (כך מתקבלת ההפיכות), אך קיוביט המטרה משתנה לערך , כאשר b הוא הערך של קיוביט המטרה בכניסת המעגל. בפרט, אם קיוביט המטרה מאותחל לערך ההתחלתי , במוצא המעגל יתקבל קיוביט במצב קוונטי .

מעגל קוונטי הפיך לחישוב הפונקציה הכללית

בניסוח מתמטי, כאשר מצב קוונטי בבסיס החישוב של n קיוביטים, ו- הוא מצב קוונטי של קיוביט בודד בבסיס החישוב.

הרחבה למצב קוונטי כלשהו[עריכת קוד מקור | עריכה]

לפי עיקרון הליניאריות, ניתן להרחיב את החישוב לכל מצב קוונטי על ידי פירוק המצב לסופרפוזיציה של מצבי בסיס החישוב, וביצוע החישוב על כל אחד מהם בנפרד. נניח שבכניסת המעגל מאותחל האוגר למצב , כאשר קיוביט המטרה כבוי .

  1. נפרק את אוגר הכניסה לסופרפוזיציה של אברי בסיס החישוב:
  2. נבצע את החישוב על כל חלק בנפרד:


שימושים[עריכת קוד מקור | עריכה]

בניית מעגל הפיך למימוש פונקציה שרירותית היא הבסיס לחישוב קוונטי, ונעשה בה שימושים רבים עבור אלגוריתמים המקבלים פונקציה בתור הקלט של האלגוריתם, כפי שמבוצע באלגוריתם דויטש-ג'וזה ואלגוריתם סימון. שימוש זה מקביל להפעלת אורקל בחישוב קלאסי.