نشریهٔ دانشکدهٔ کامپیوتر دانشگاه صنعتی شریف
برتریِ کوانتومی، قصهٔ مقالهٔ گوگل - قسمت اول
۲۹ شهریور امسال (۲۰ سپتامبر ۲۰۱۹) سایت Financial Times اعلام کرد گوگل ادعا کردهاست که به برتری کوانتومی رسیدهاست. در سادهترین تعریف ادعا این بود که این ماشین تنها چند دقیقه نیاز دارد تا عملیاتی را انجام دهد که از یک ابررایانه حداقل دههزار سال وقت میگیرد. گوگل بعد از گذشت یک ماه خبر را تایید کرد.
این نوشته را سید سجاد کاهانی، یکی از بچههای دانشکده نوشتهاست. سجاد برای نوشتن آن چند هفتهای وقت گذاشتهاست. همچنین بخشهایی از محتوای آن توسط چندی از دانشجویان (از جمله علی بهجتی، امیررضا نگاری و مهرگان درودیانی) بازبینی محتوایی شدهاست. در این مقاله سعی شدهاست ماجرای رایانش کوانتومی گوگل برای کسانی که پیشزمینه علوم کامپیوتر و ریاضی دارند به طور کامل شرح دادهشود. در ادامه میتوانید آن را بخوانید.
به قلم: سید سجاد کاهانی
خبری که احتمالاً شنیدهاید، این است که گوگل به برتریِ کوانتومی رسید، چیزی که بهنظر میرسد اتفاقِ شگرفی باشد. حداقل از حجمِ خبرهایی که در اینباره نوشته شده اینطور به نظر میرسد.
به طورِ خلاصه خبر این بود که گوگل، با کامپیوتری که قبلاً ساختهبود، توانسته کاری تقریباً غیرممکن را انجام دهد و از درستیِ نتیجهٔ آن مطمئن شود. کارِ تقریباً غیرممکن یعنی کاری که هیچ کامپیوترِ معمولیای نمیتواند به این زودیها انجامش دهد.
جزئیاتِ خبر، حتی اگر از نظرِ ریاضی برای ما قابلِ فهم باشد، برای یک مهندسِ کامپیوتر چندان هیجانانگیز به نظر نمیآیند. اما همچنان برای همهٔ ما جذاب است که سر از کارِ این کامپیوترهای کوانتومی دربیاوریم. برای همین در چند قصهٔ بیربط به هم، از بنیانهای مکانیکِ کوانتومی، به مسئله میرسیم.
گربهٔ آقای شرودینگر
فیزیکِ کوانتوم، تاریخچهٔ پیچیده و طولانیای دارد که گفتنش حداقل به ملموستر شدنِ مطلب، کمکِ زیادی میکند. اما به خاطرِ بیسوادیِ نویسنده در تاریخِ کوانتوم، خودِ کوانتوم و البته برای ایجاز، از گفتنِ آن میپرهیزیم.
داستان را با گربهٔ مظلومِ آقای شرودینگر شروع میکنیم (پانویس ۱) که در جعبهایست که هیچ ارتباطی با بیرون ندارد. در آن جبعهٔ، یک ظرفِ سم وجود دارد که با یک تابشِ رادیواکتیو (یا هر پدیدهٔ کوانتومیای که شما دوست دارید) فعال میشود. از مکانیکِ کوانتومی برمیآید که این گربه حالا هم مرده و هم زندهاست. (یا به عبارتِ بهتر برهمنهیِ دوحالتِ مرده و زنده)
برای این قسمت خوب است با فضای برداری آشنا باشید. فضای برداری را میتوانید از یک جزوهٔ جبرخطی یا یک ویدیوی یوتوب یاد بگیرید. یا حتی اگر میخواهید خیلیخیلی بیشتر بدانید فضای هیلبرت را یاد بگیرید.
برای نمایشِ ریاضی این وضعیت، یک فضای برداریِ دوبعدیِ مختلط بگیریم که پایههای آن e₁ (به معنای سلامت گربه) و e₂ (به معنای پرپر شدنِ گربه) هستند که برهم عمودند، (پانویس ۲) حالا گربه در حالتِ زیر قرار دارد.
که به احترامِ آقای دیراک برای نشان دادنِ بردارهایمان به جای v با فلش از ⟨v| استفاده میکنیم.
در حالتِ کلی، اینطور میگوییم که اگر سیستمی قبلاً، یکی از حالتهای Q = { q₁ ... qₙ } را به خود اختصاص میداد، در مکانیکِ کوانتومی، حالتِ سیستم، برداریست با اندازهٔ یک در فضای مختلطی که اعضای پایهٔ متعامدش ⟨q₁| تا ⟨qₙ| هستند، یعنی عضوی از مجموعهٔ ℂ به توان Q هستند.
همینطور، گذارِ خودبهخودیِ یک سیستم، که قبلاً میشد با تابعی از Q به Q بیان شود، در مکانیکِ کوانتومی با یک تبدیلِ خطی در فضای برداریِ حالتها بیان میشود. این تبدیل اندازهٔ بردار را حفظ میکند (چون گفتیم هر بردارِ حالتی اندازهای برابرِ یک دارد) پس یکانیست.
اکنون اگر درِ جعبه را باز کنیم با یکی از این دو واقعیت روبهرو میشویم که گربه زنده است یا گربه پرپر شده. یعنی هر بردارِ دلخواهی که وضعیتِ گربه پیش از باز شدن بوده، باید به یکی از پایهها تبدیل شود (پانویس ۴) با بیخیال شدنِ جزئیات و کلیات، احتمالِ اینکه بعد از باز کردنِ درِ جعبه، گربه از حالتِ ⟨v| به عضوِ پایهٔ ⟨qᵢ| تبدیل شود و حالتِ qᵢ را مشاهده کنیم، میشود
که این علامتِ ⟨a|b⟩ همان ضربِ داخلیست.
پانویس ۱. دربارهٔ مظلومیتِ گربهٔ آقای شرودینگر همین بس که هدفش بیانِ تناقض در تفسیرِ کپنهاگیِ مکانیکِ کوانتومی بوده [۱۲] که اکنون ما دقیقاً برای آموزشِ تفسیرِ کپنهاگی از آن بهره میجوییم.
پانویس ۲. اگر بخواهیم مته به خشخاش (پانویس ۳) بگذاریم، در اصل باید حالتهای کلِ سیستمِ داخلِ جعبه، یعنی سم و گربه را به شکلِ توؤمان بیان کنیم. یعنی e₁ میشود «گربه سالم است و سم منتشر نشده» و e₂ هم حالتِ «گربه پرپر شده و سم منتشر شده»
پانویس ۳. محمدامین خشخاشیمقدم، ورودی ۹۳ مهندسیِ کامپیوتر
پانویس ۴. رمبیدن که ترجمهٔ collapse است فعلِ صحیحتری از تبدیل شدن است، اما برای حفظِ خوانایی از آن استفاده نمیکنیم.
از دکتر آبام تا دکتر وزیرانی
برای این قسمت خوب است با ماشینِ تورینگ و نمایشِ ریاضیِ آن آشنا باشید. برای اینکار هم ویدیویی از یوتوب نگاه کنید و هم از روی جزوه یا ویکیپدیا، فرمِ ریاضیِ آن را ببینید. همچنین خوب است کلاسِ مسئلههای P و NP را هم از روی یک ویدیوی یوتوب یاد بگیرید.
از ماشینِ تورینگ، همین را به خاطرِ بیاورید که تابعی داشت که از Q⨯Γ که حالتها و الفبای ورودیِ روی نوار هستند، به Q⨯Γ⨯{L,R} میرفت. این تابعِ گذار، مشخص میکرد که وقتی در حالتی هست و علامتی را روی نوار میبیند، به چه حالتی برود، چه علامتی در جایگاهِ فعلیِ نوار بنویسد و به کدام سمت روی نوار حرکت کند. حالا برای کوتاهنویسی ایندوتا را تعریف میکنیم.
یکی دیگر از این ماشینهای خیالی، ماشینِ تورینگِ احتمالاتیست. تابعِ گذارِ این ماشین، احتمالاتیست. یعنی برای هر مرحله، تاس میاندازد.
به شکلِ ریاضیتر، اگر برای تابعِ گذارِ ماشینِ تورینگ داشتیم δ: A→B حالا داریم که δ: A⨯B→[0,1] و این تابع، به ازای هر A یک توزیعِ احتمال است که یعنی برای هر عضوِ A مانندِ a داریم
اگر چیزی را این ماشینِ تورینگِ احتمالاتی بتواند با احتمالِ بیشتر از ⅔ تشخیص دهد، میگوییم آنچیز عضوِ کلاسِ BPP است و همین اول میشود حدس زد که P ⊆ BPP (پانویس ۵).
حالا ماشینِ تورینگِ کوانتومی، احتمالاً یک تابعِ گذار به شکلِ یک تبدیلِ خطی خواهد داشت که اندازه را حفظ میکند. آن را به این صورت تعریف میکنیم. [۷]
این تابع به هرحالتِ A یک بردارِ مخلتط در فضایی با پایههای B نسبت میدهد. اما میدانیم که میتوانیم در برهمنهیای از حالتهای A باشیم، یعنی حالتمان برداری به نامِ ⟨ψ| عضوِ ℂᴬ باشد.
که به شکلِ زیر قابلِ نوشتن است
حالا در تبدیلِ حالتی که اتفاق میافتد، به شکلِ خطی، هریک از مؤلفهٔهای ⟨aᵢ| به بردارِ مربوط، یعنی (aᵢ)δ میرود. پس گذار به این شکل انجام میشود.
دربارهٔ حفظ شدنِ اندازهٔ بردارِ حالت نیز باید بگوییم اگر حالتهای یک ماشین (شاملِ محلِ نشان و وضعیتِ نوار و وضعیتِ ماشین و چیزهای دیگر) را مجموعهٔ S بنامیم، در هر مرحله، تحولی که صورت میگیرد، باید اندازهٔ بردارهای فضای ℂ به توان S را حفظ کند.
میدانیم که در کوانتوم، در انتها، با اندازهگیری (باز کردنِ جعبه)، بردارِ حالت به یکی از پایهها تبدیل میشود، که این یک فرایندِ احتمالاتیست. پس برای همین، مشابهِ کلاسِ BPP، تعریف میکنیم کلاسِ BQP، شاملِ چیزهاییست که یک ماشینِ کوانتومی با احتمالِ بیشتر از ⅔ تشخیص میدهد. آقایان برنشتاین و وزیرانی اثبات کردهاند که BPP ⊂ BQP [۵] و همچنین اثبات شده که NP ⊈ BQP [۴].
پانویس ۵. یکی از مسئلههای جالب، با تهمایههایی از فلسفه این است که آیا این دو کلاس مساوی هستند یا نه و اگر باشند و نباشند هریک چه معنایی دارد. توضیحاتِ بیشتر را در این مقاله [۸] ببینید.
قسمت دوم را از اینجا ببینید
مطلبی دیگر از این انتشارات
در درس برنامهسازی پیشرفته شریف چه گذشت؟ قسمت ۱
مطلبی دیگر از این انتشارات
دادهها برای حل مسائل اجتماعی، آغاز یک مسیر
مطلبی دیگر از این انتشارات
به من نگو دانشجو! بگذارید رباتها درس بدهند!