مهندس کوانتومی

15. مدل مدار

15.1نشانه‌گذاری مدار

مدار کوانتومی خط‌زمانی چپ-به-راست است. خط‌های افقی کیوبیت‌ها هستند؛ جعبه‌ها روی خط‌ها دروازه‌ها؛ زمان از چپ به راست؛ لبهٔ راست همیشه اندازه‌گیری است. دروازه‌های دوکیوبیتی به‌صورت نقطه (کنترل) با خط عمودی به دروازه (هدف) رسم می‌شوند. سدها (||) بازچینی را ممنوع می‌کنند؛ خط‌های دوتایی پس از اندازه‌گیری بیت‌های کلاسیک را حمل می‌کنند. نشانه‌گذاری در مقاله‌ها به‌شگفتی غیررسمی است — این نکته‌ای است که بدانید، نه باگ: همیشه مدار مقاله را از ماتریس یا کد همراهش بازسازی کنید. تجزیه‌گر ما (17.10) شکل متنی همین نشانه‌گذاری را می‌پذیرد، پس دوبار درونی‌اش می‌کنید: دیداری و برنامه‌ای.

q0 ──■────H──M
     │       ║
q1 ──X───────M
             ║
c0 ─────────╩═
c1 ───────────

15.2سیم‌ها

سیم کل زندگی یک کیوبیت است: آماده‌شده، عمل‌شده، اندازه‌گیری‌شده. سیم‌ها سیم فیزیکی نیستند — روی چیپ‌های ابررسانا «سیم» جفت‌شدگی میان‌دار با تشنه‌گر است، روی یون‌های به‌دام‌افتاده مُد حرکتی مشترک — اما انتزاع دقیق است: سیم حالت کوانتومی حمل می‌کند و دست‌زدن به آن تنها راه اثرگذاری است. دو حقیقت برای درونی‌سازی زودهنگام. اول، هویت بی‌کاری نیست: سیمِ خالی هنوز دِکوهر می‌شود. دوم، سیم‌ها به‌طور منطقی جابه‌جا می‌شوند (دروازهٔ SWAP) با هزینه‌ای، و به همین دلیل اتصال (15.10) بر هزینهٔ واقعی مدارها غالب است.

15.3دروازه‌ها

دروازه‌ها عملگرهای یونیتی‌ای هستند که به‌صورت جعبه رسم می‌شوند. جدول استانداردی که باید از بر بدانید: X (وارونگی بیت)، Y، Z (وارونگی فاز)، H (هادامارد، تغییر پایه)، S، T (دروازه‌های فاز)، RX/RY/RZ (چرخش با زاویهٔ θ) و دوکیوبیتی‌های CX/CZ به‌اضافهٔ SWAP. از بخش پنجم می‌دانید H و CX روی |00⟩ درهم‌تنیدگی می‌سازد؛ مدل مدار آن حقیقت را به‌صورت نقشه بسته‌بندی می‌کند. دروازه‌ها فیزیکی وجود ندارند — کالیبراسیون‌هایی از پالس‌های شکل‌دارند (بخش یازدهم) — پس «همان» دروازه روی سخت‌افزارهای متفاوت در فیدیلیتی و مدت متفاوت است. اعداد فیدیلیتی دروازه (۹۹.۹٪ تک، ۹۹.۵٪ دوتایی، بهترین‌های ۲۰۲۵) ارز هر برآورد هزینه در بخش هفتم‌اند.

15.4اندازه‌گیری‌ها

اندازه‌گیری با نماد متر (یا کمانی با پیکان) رسم می‌شود و دروازه نیست: غیر یونیتی، برگشت‌ناپذیر و تولیدکنندهٔ بیت کلاسیک است. اندازه‌گیری میان‌مداری — اندازه‌گیری یک کیوبیت و ادامهٔ استفاده از آن — روی سخت‌افزار مدرن پشتیبانی می‌شود و عنصر امکان‌بخش QEC (بخش دهم)، دوربری و مدارهای پویاست. اندازه‌گیری در پایه‌های غیر Z با مزدوج‌کردن: H سپس اندازه‌گیری، خوانش پایهٔ X است. لایهٔ اندازه‌گیری جایی است که کوانتوم به جریان کنترل کلاسیک می‌رسد: if c0: apply X — بازخورد کلاسیک بلادرنگ — بذر هر پروتکل تحمل‌خطاست.

15.5مقداردهی اولیه

هر سیمی جایی شروع می‌شود و آن جا |0⟩ است — با سردکردن کیوبیت‌ها به حالت پایه آماده می‌شود (ده‌ها میلی‌کلوین برای ابررساناها، نزدیک صفر مطلق برای یون‌ها، دمای اتاق برای فوتون‌ها با احتیاط). فیدیلیتی مقداردهی معمولاً بهترین عدد هر دیتاشیت سخت‌افزاری است (99.99٪) و از آنچه تازه‌کارها تصور می‌کنند مهم‌تر است: زباله که بدهید، زباله برمی‌گیرید، با هزینهٔ انفجار نمایی دامنه. عمل‌های reset — بازگشت میان‌مداری به |0⟩ — در Qiskit و روی سخت‌افزار وجود دارند و استفادهٔ مجدد کیوبیت را ممکن می‌کنند. ساختن حالت‌های |ψ⟩ فراتر از |0⟩ خودش کار طراحی مدار است: آماده‌سازی حالت هزینهٔ واقعی است (O(2ⁿ) دروازه در حالت عام) که برآوردهای ساده‌لوحانه فراموشش می‌کنند.

15.6اجرای مدار

اجرای مدار یعنی: مقداردهی، اعمال دروازه‌ها به ترتیب زمانی (موازی جایی که سیم‌ها مستقل‌اند)، اندازه‌گیری، تکرار N بار («شات») و هیستوگرام‌کردن نتایج. میان «مدار آن‌گونه که نوشته شده» و «مدار آن‌گونه که اجرا می‌شود» کل خط‌لولهٔ کامپایل نشسته (بخش دوازدهم): ترنسپایل به مجموعه‌دروازهٔ بک‌اند، مسیریابی پیرامون محدودیت اتصال، زمان‌بندی مقابل دِکوهرنس. اجرا روی سخت‌افزار دور است (صف‌های ابری)، کند (دقیقه‌ها به‌ازای جاب) و نویزی — و به همین دلیل ۹۰٪ کارتان با شبیه‌سازها خواهد بود، و سخت‌افزار برای اعتبارسنجی اینکه مدل نویزتان به شما دروغ نمی‌گوید. آزمایش‌های بخش هفتم دقیقاً با همین انضباط پیش می‌روند.

15.7عمق مدار

عمق، طول بلندترین مسیر درون مدار است — شمار گام‌های زمانی ترتیبی با فرض موازی‌سازی نامحدود. عمق × زمان دروازه ≈ مدت اجرای مدار، و چون همدوسی متناهی است، عمق دشمن است: بودجه‌های T1/T2 (ده‌ها تا صدها میکروثانیه برای ابررساناها) عمقِ قابل‌تحمل را سقف می‌زنند، و آن سقف الگوریتم‌های قابل اجرا را. دو مدار با شمارش دروازهٔ یکسان می‌توانند بسته به زمان‌بندی ۱۰ برابر در عمق فرق کنند. وقتی مقاله‌ها پیچیدگی نقل می‌کنند، عمق را نقل می‌کنند (معمولاً به دروازه‌های دوتایی)؛ وقتی مدار طراحی می‌کنید، کمینه‌اش کنید: موازی کنید، دروازه‌ها را از کنار هم بگذرانید و باقی را به کامپایلر (بخش دوازدهم) بسپارید.

15.8شمارش دروازه

شمارش دروازه کل عملیات است — معمولاً جداگانه برای تک‌کیوبیتی و دوکیوبیتی گزارش می‌شود، چون دروازه‌های دوتایی ۵ تا ۱۰ برابر کندتر و نویزی‌ترند. شور برای RSA-2048: ~۵ تریلیون دروازهٔ کلاس-تافولی در برآوردهای اولیه، زیر ۱ میلیون با بهینه‌سازی‌های مدرن؛ گروور برای AES-128: ~2⁶⁴ تکرار (عظیم). شمارش دروازه همان چیزی است که نظریهٔ پیچیدگی واقعاً می‌شمارد؛ عمق همان چیزی است که سخت‌افزار می‌خواهد؛ نسبتشان به زمان‌بندی و اتصال بسته است. بیاموزید مقاله‌های برآورد منابع را با دو چشم بخوانید: «2⁹⁶ دروازهٔ T» و «کارخانهٔ T + کیوبیت منطقی» (بخش دهم) می‌گویند برآورد چه ماشینی را فرض کرده.

15.9شمارش کیوبیت

مسأله چند سیم می‌خواهد؟ سه عدد معمولاً نقل می‌شود: کیوبیت‌های داده (ثبات)، کیوبیت‌های ancilla (فضای کاری، 15.11) و سربار فیزیکی-به‌منطقی (۱۰۰ تا ۱۰۰۰+ در کدهای سطحی، بخش دهم). استارلینگ IBM ~۲۰۰ کیوبیت منطقی از ~۲۰۰٬۰۰۰ فیزیکی تا ۲۰۲۹ را هدف می‌گیرد — آن ضریب سربار (~10³) مهم‌ترین عدد نقشهٔ راه حوزه است، و به همین دلیل تیترهای «به یک میلیون کیوبیت نیاز داریم» ترجمه می‌شوند به «به چند صد کیوبیت مفید نیاز داریم». برآوردهای منابع هر سه را روی هم می‌گذارند: کیوبیت الگوریتم × سربار + مسیریابی + تقطیر حالت جادویی. این حساب را تمرین کنید؛ روش خواندن انتقادی هر اعلام نقشهٔ راه است.

15.10اتصال

سخت‌افزار واقعی نقشهٔ اتصال دارد: کیوبیت i فقط با همسایه‌هایش درهم‌تنیده می‌شود (شبکهٔ هوی-هکس برای IBM، شبکهٔ مربعی برای گوگل، همه-به-همه درون تله یونی). الگوریتم‌ها همه-به-همه فرض می‌کنند؛ سخت‌افزار نمی‌دهد؛ پس مسیریابی — درج SWAP برای رساندن حالت‌ها کنار دروازه‌هایشان — گذر عمدهٔ کامپایلر است (بخش دوازدهم) و سربار SWAP می‌تواند بر شبکه‌های تنک غالب شود. عمق ۱۰ همه-به-همه می‌تواند روی هوی-هکس عمق ۱۰۰ شود. هنگام انتخاب بک‌اند، اول نقشهٔ اتصالش را چک کنید؛ هنگام خواندن محک، بپرسید چه اتصالی فرض شده. بک‌اندهای ابری در Qiskit این را به‌صورت backend.coupling_map ارائه می‌کنند.

15.11کیوبیت‌های ancilla

ancillaها کیوبیت‌های فضای‌کاری‌اند: پاسخ نیستند، اما برای محاسبه ضروری‌اند. کاربردها: محاسبهٔ برگشت‌پذیر f (الگوی محاسبه-رونوشت-نامحاسبه، فصل ۱۸)، برگشت فاز (فصل ۲۴)، استخراج سندروم در QEC (بخش دهم)، تقطیر حالت جادویی و استفادهٔ مجدد کیوبیت (اندازه‌گیری-و-reset). ancillaهای تمیز — بازگشته به |0⟩ پس از استفاده — قراردادند؛ به‌جاماندنشان درهم‌تنیده با ثبات داده‌تان باگ کلاسیک است (احتمال‌های شبیه‌سازتان به شکلی غلط به نظر می‌رسند که تشخیصش سخت است). تفکیک «داده»، «ancilla تمیز» و «ancilla کثیف» در کامنت‌های مدار عادتی است که همین حالا شروعش کنید، پیش از آنکه بخش دهمش را بقا-بحرانی کند.

15.12محاسبهٔ برگشت‌پذیر

چون همهٔ دروازه‌های کوانتومی یونیتی‌اند، همهٔ محاسبهٔ کوانتومی برگشت‌پذیر است — پس منطق کلاسیک باید به فرم برگشت‌پذیر کامپایل شود تا روی رایانهٔ کوانتومی اجرا شود. دستور: f(x) را با شبکه‌های تافولی در یک ancilla محاسبه کن (f دروازهٔ AND)، سپس یا ancilla را اندازه بگیر (اوراکل فاز) یا آن را برگردان (بدون فاز). سربار: یک ancilla به‌ازای هر AND، به‌اضافهٔ نامحاسبه، تقریباً ۲ برابر شمارش دروازهٔ کلاسیک و +۱ کیوبیت به‌ازای هر بیت میانی. ساخت Bennett در ۱۹۷۳ این رشته را بنیان گذاشت؛ امروز نان و کرهٔ ساخت اوراکل برای گروور و حساب برای شور است (فصل ۲۶). جمع‌کننده‌های برگشت‌پذیر را در پسوند پروژهٔ فصل ۱۷ خواهید ساخت.