משפט הסף
הנושא האחרון בשיעור הזה הוא משפט חשוב מאוד הידוע בשם משפט הסף. להלן ניסוח לא-פורמלי יחסית של המשפט.
במילים פשוטות, המשפט אומר שאם יש לנו Circuit קוונטי כלשהו עם Gateים, כאשר יכול להיות גדול כרצוננו, אז ניתן לממש את ה-Circuit הזה עם דיוק גבוה באמצעות Circuit קוונטי רועש, בתנאי שרמת הרעש נמוכה מערך סף מסוים שאינו תלוי ב-. יתרה מכך, הדבר אינו יקר מדי, במובן שגודל ה-Circuit הרועש הנדרש הוא בסדר גודל של כפול חזקה קבועה של לוגריתם של
כדי לנסח את המשפט בצורה פורמלית יותר, יש להיות ספציפיים לגבי מודל הרעש, וזה לא ייעשה בשיעור הזה. ניתן, למשל, להוכיח זאת עבור מודל הרעש הסטוכסטי הבלתי-תלוי שהוזכר קודם לכן, שבו שגיאות מתרחשות באופן עצמאי בכל מיקום אפ שרי ב-Circuit עם הסתברות קטנה בהחלט מערך הסף — אך ניתן להוכיח זאת גם עבור מודלי רעש כלליים יותר שבהם עשויות להיות קורלציות בין שגיאות.
זהו תוצאה תיאורטית, והדרך הנפוצה ביותר להוכיח אותה לא מתורגמת בהכרח לגישה מעשית, אך עם זאת יש לה חשיבות מעשית גדולה. בפרט, הוא קובע שאין מחסום עקרוני לביצוע חישובים קוונטיים באמצעות רכיבים רועשים; כל עוד שיעור השגיאות של רכיבים אלה נמוך מערך הסף, ניתן להשתמש בהם לבנייה של Circuitים קוונטיים אמינים בכל גודל שהוא. דרך נוספת לנסח את חשיבותו היא לשים לב שאם המשפט לא היה נכון, קשה היה לדמיין שחישוב קוונטי בקנה מידה גדול יהפוך אי-פעם למציאות.
יש פרטים טכניים רבים בהוכחות הפורמליות של (ניסוחים פורמליים של) משפט זה, ופרטים אלה לא יוצגו כאן — אך את הרעיונות המהותיים ניתן להסביר ברמה אינטואיטיבית. כדי להפוך את ההסבר לפשוט ככל האפשר, נדמיין שאנחנו משתמשים בקוד שטיין בן ה-Qubitים לצורך תיקון שגיאות. זו תהיה בחירה לא מעשית ליישום פיזי ממשי — כפי שיבוא לידי ביטוי בערך סף זעיר ביותר — אך היא עובדת היטב להעברת הרעיונות המרכזיים. ההסבר גם יהיה די גמיש לגבי מודל הרעש, עם ההנחה שגיאה פוגעת בכל מיקום ביישום עמיד-לתקלות באופן עצמאי עם הסתברות
כעת, אם ההסתברות גדולה מהמהופך של גודל ה-Circuit שאנחנו מכוונים לממש, הסיכויים גבוהים מאוד שגיאה תפגע איפשהו. לכן, נוכל לנסות להריץ יישום עמיד-לתקלות של ה-Circuit הזה, בהתאם לדרכי הפעולה שהוצגו בשיעור. לאחר מכן נוכל לשאול את עצמנו את השאלה שהועלתה קודם: האם זה משפר את המצב או מחמיר אותו?
אם ההסתברות לשגיאה בכל מיקום גדולה מדי, הרי שהמאמצים שלנו לא יעזרו ואף עלולים להחמיר את המצב, ממש כמו שקוד שור בן 9 ה-Qubitים לא עוזר כאשר הסתברות השגיאה עולה על כ-3.23%. בפרט, היישום העמיד-לתקלות גדול משמעותית מה-Circuit המקורי שלנו, ולכן יש הרבה יותר מיקומים שבהם שגיאות עלולות לפגוע.
אולם, אם קטן מספיק, נצליח להקטין את הסתברות השגיאה עבור החישוב הלוגי שאנחנו מבצעים. (בהוכחה פורמלית, נצטרך להיות מאוד זהירים בנקודה הזאת: שגיאות בחישוב הלוגי לא בהכרח יתוארו במדויק על ידי מודל הרעש המקורי. דבר זה, למעשה, מניע מודלי רעש פחות מסלחניים שבהם שגיאות עשויות שלא להיות עצמאיות — אך נעבור על הפרט הזה בשקט לצורך הסבר זה.)
ביתר פירוט, כדי שתתרחש שגיאה לוגית ב-Circuit המקורי, לפחות שתי שגיאות חייבות ליפול לאותו בלוק קוד ביישום העמיד-לתקלות, מכיוון שקוד שטיין יכול לתקן כל שגיאה בודדת בבלוק קוד. תוך התחשבות בכך שיש דרכים רבות לקבל שתי שגיאות ומעלה באותו בלוק קוד, ניתן לטעון שהסתברות שגיאה לוגית בכל מיקום ב-Circuit המקורי היא לכל היותר עבור מספר ממשי חיובי קבוע התלוי בקוד ובגאדג'טים שבהם אנחנו משתמשים, אך באופן קריטי לא ב- גודל ה-Circuit המקורי. אם קטן מ- שהוא המספר שנוכל לקחת כערך הסף שלנו זה מתורגם להקטנת שגיאה.
אולם, שיעור השגיאות החדש הזה עדיין עשוי להיות גבוה מדי כדי לאפשר ל-Circuit כולו לפעול כראוי. דבר טבעי לעשות בשלב זה הוא לבחור קוד טוב יותר וגאדג'טים טובים יותר כדי להוריד את שיעור השגיאות לנקודה שבה היישום צפוי לעבוד. מבחינה תיאורטית, דרך פשוטה לטעון שזה אפשרי היא שרשור. כלומר, אנחנו יכולים לחשוב על היישום העמיד-לתקלות של ה-Circuit המקורי כאילו היה כל Circuit קוונטי אחר, ואז לממש Circuit חדש זה באופן עמיד-לתקלות, באמצעות אותה שיטה. לאחר מכן נוכל לעשות זאת שוב ושוב, כמה פעמים שנצטרך כדי להוריד את שיעור השגיאות לרמה שמאפשרת לחישוב המקורי לפעול.
כדי לקבל מושג גס על כיצד שיעור השגיאות פוחת בשיטה זו, בואו נבחן כיצד זה עובד עבור מספר איטרציות. שים לב שניתוח קפדני יצטרך להתחשב בפרטים טכניים שונים שאנחנו מדלגים עליהם כאן.
נתחיל עם הסתברות השגיאה עבור מיקומים ב-Circuit המקורי. בהנחה ש- ניתן לחסום את שיעור השגיאות הלוגיות ב- לאחר האיטרציה הראשונה. כאשר מתייחסים ליישום העמיד-לתקלות ככל Circuit אחר, ומממשים אותו באופן עמיד-לתקלות, מקבלים חסם על שיעור השגיאות הלוגיות של
איטרציה נוספת מורידה את חסם השגיאות עוד יותר, ל-
המשך בדרך זו עבור סך הכל איטרציות מוביל לשיעור שגיאות לוגיות (עבור ה-Circuit המקורי) שחסום על ידי
שהוא חזקה כפולה של
משמעות הדבר היא שאין צורך ביותר מדי איטרציות כדי לעשות את שיעור השגיאות זעיר ביותר. בינתיים, ה-Circuitים גדלים עם כל רמת שרשור, אך הגודל גדל רק חזקה בודדת של מספר הרמות הסיבה לכך היא שעם כל רמת עמידות-לתקלות, הגודל גדל בלכל היותר פקטור הנקבע על ידי הגודל המקסימלי של הגאדג'טים בשימוש. כאשר כל הפרטים מחוברים יחד ונעשית בחירה מתאימה למספר רמות השרשור, מקבלים את משפט הסף.
אז, מה הוא ערך הסף בפועל? התשובה תלויה בקוד ובגאדג'טים שבהם משתמשים. עבור קוד שטיין יחד עם זיקוק מצבי מאגיה, הוא זעיר ביותר וסביר להניח שלא ניתן להשיגו בפועל. אך, באמצעות קודי שטח וגאדג'טים מתקדמים, הסף הוערך בסדר גודל של 0.1% עד 1%.
ככל שמתגלים קודים ושיטות חדשים, סביר לצפות שערך הסף יעלה, ובמקביל רמת הרעש ברכיבים פיזיים ממשיים תרד. הגעה לנקודה שבה ניתן לממש חישובים קוונטיים בקנה מידה גדול באופן עמיד-לתקלות לא תהיה קלה, ולא תקרה בן לילה. אך משפט זה, יחד עם ההתקדמות בקודים קוונטיים ובחומרה קוונטית, מעניקים לנו אופטימיות ככל שאנחנו ממשיכים לדחוף קדימה להשגת המטרה הסופית של בניית מחשב קוונטי עמיד-לתקלות בקנה מידה גדול.
סקר לאחר הקורס
ברכות על סיום הקורס! אנא הקדש/י רגע לעזור לנו לשפר את הקורס על ידי מילוי הסקר הקצר הבא. המשוב שלך ישמש לשיפור תוכן ההצעות ו שלנו ולחוויית המשתמש. תודה!