```html Зохиогчид: Сергей Брави Эндрю В. Кросс Жэй М. Гамбетта Дмитрий Маслов Патрик Ралл Теодор Ж. Йодер Хураангуй Физик алдаа хуримтлагдах нь одоогийн квант компьютерт том хэмжээний алгоритмуудыг гүйцэтгэхэд саад болдог. Квант алдааг залруулах нь *k* тоон утгыг *n* тооны физик утга руу кодлох замаар шийдэл санал болгодог бөгөөд физик алдаа нь тооцооллыг хүлээн зөвшөөрөгдөх чанартай гүйцэтгэхэд хангалттай багассан байдаг. Квант алдааг залруулах нь физик алдааны түвшин нь квант код, синдромыг хэмжих хэлхээ, декодлох алгоритмыг сонгохоос хамаардаг босго түвшнээс доогуур байвал бодит байдал дээр хэрэгжих боломжтой болдог. Бид бага нягтралтай паритет шалгалтын кодуудын гэр бүлд суурилсан, алдаа тэсвэртэй санах ойг хэрэгжүүлдэг төгсгөлөөс төгсгөл хүртэлх квант алдааг залруулах протоколыг танилцуулж байна. Бидний арга нь гадаргуугийн кодын түвшинд, 20 жилийн турш алдааны босго түвшний хувьд тэргүүлэх код байсан алдааны босго түвшнийг 0.7% -д хүргэдэг. Манай гэр бүлийн *n* уртын кодыг синдромыг хэмжих мөчлөг нь CNOT хаалга, цэгийг эхлүүлэх, хэмжихээс бүрдсэн 8 гүн хэлхээгээр 6 зэргийн орон сууцны утаснууд шаарддаг. Тухайлбал, бид 12 тоон утгыг 288 физик утгыг ашиглан бараг 1 сая синдромын мөчлөгт хадгалж болохыг харуулж байна, харин гадаргуугийн код ижил гүйцэтгэлийг хангахын тулд 3000 орчим физик утга шаардагдана. Бидний ололт нь ойрын үеийн квант процессорт ойлгогдох хэмжээний өртөг багатай алдаа тэсвэртэй квант санах ойг харуулж байна. Үндсэн Квант компьютер нь сонгодог алгоритмуудтай харьцуулахад тооцооллын асуудлуудад илүү хурдан шийдлийг санал болгох чадвартай тул анхаарал татсан. Найдвартай, цар хүрээтэй квант компьютер нь шинжлэх ухааны нээлт, материалын судалгаа, хими, эмийн дизайн зэрэг салбарт тооцооллын асуудлуудыг шийдвэрлэхэд тусалж чадна гэж үздэг. Квант компьютерийг барих гол саад бол тоон мэдээллийн эмзэг байдал бөгөөд янз бүрийн эх үүсвэрээс үүдэлтэй шуугианаар нөлөөлдөг. Квант компьютерийг гадны нөлөөллөөс тусгаарлах, хүссэн тооцооллыг хийхэд хянах нь хоорондоо зөрчилддөг тул шуугиан зайлшгүй гардаг. Шуугианы эх үүсвэрүүд нь утгуудын алдаа, ашигласан материал, хяналтын төхөөрөмж, төлөв байдал бэлтгэх, хэмжих алдаа, мөн орчны электромагнит талбараас эхлээд сансар огторгуйтай холбоотой зүйлс (жишээлбэл, cosmic rays) зэрэг янз бүрийн гадны хүчин зүйлсийг агуулдаг. Лавлагаа -г үзнэ үү. Шуугианы зарим эх үүсвэрийг илүү сайн хяналт, материал, хамгаалалт -аар арилгах боломжтой байдаг ч бусад олон эх үүсвэрийг арилгах боломжгүй эсвэл хэцүү байдаг. Сүүлийнх нь хөдөлгөөнт ионд тохиолддог спонтан болон өдөөгдсөн ялгарал, цахилгаан хэлхээний схемийн цэгүүдтэй харилцах (Purcell effect) -ийг багтааж болно. Ийнхүү алдааг залруулах нь найдвартай, цар хүрээтэй квант компьютерийг барих гол шаардлага болж байна. Квант алдаа тэсвэртэй байх боломж нь сайн тогтоогдсон. Нэг тоон утгыг олон физик утга руу хэтрүүлэн кодлох нь алдааны синдромыг тогтмол хэмжих замаар алдааг оношлох, залруулах боломжийг олгодог. Гэсэн хэдий ч алдааг залруулах нь зөвхөн тохиролцсон алдааны босго түвшнээс доогуур байвал ашигтай байдаг. Квант алдааг залруулах анхны саналууд, тухайлбал цуврал код, нь алдааг багасгах онолын боломжийг харуулахад чиглэгдсэн. Квант алдааг залруулах, квант технологийн чадавхыг ойлгох тусам практик квант алдааг залруулах протоколыг олох чиглэлд анхаарал хандуулах болсон. Энэ нь 1% орчим алдааны босго түвшин, хурдан декодлох алгоритм, 2D квадрат торонгийн утга холболттой ажилладаг одоогийн квант төхөөрөмжүүдтэй нийцдэг гадаргуугийн кодыг боловсруулахад хүргэсэн. Гадаргуугийн кодыг нэг тоон утгатай бага хэмжээний туршилтаар хэд хэдэн бүлэг туршиж үзсэн. Гэсэн хэдий ч гадаргуугийн кодыг 100 ба түүнээс дээш тоон утгатай болгох нь кодлох чадварын сул байдлаас болж хэт өндөр өртөгтэй болно. Энэ нь бага нягтралтай паритет шалгалтын (LDPC) кодууд гэж нэрлэгддэг илүү өргөн хүрээний квант кодуудад сонирхлыг төрүүлсэн. LDPC кодуудыг судалсан сүүлийн үеийн дэвшил нь тэдгээрийг илүү өндөр кодлох чадвартайгаар квант алдаа тэсвэртэй байдлыг хангаж чадна гэдгийг харуулж байна. Энд бид LDPC кодуудыг судлахад анхаарлаа төвлөрүүлж байна, учир нь бидний зорилго нь квант компьютерийн технологийн хязгаарлалтыг харгалзан үзвэл үр ашигтай, практик дээр харуулах боломжтой квант алдааг залруулах кодууд, протоколуудыг олох явдал юм. Квант алдааг залруулдаг код нь LDPC төрлийнх гэж нэрлэгддэг, хэрэв тухайн кодыг шалгах оператор нь зөвхөн хэдэн утга дээр ажилладаг бөгөөд тухайн утга нь зөвхөн хэд хэдэн шалгалтанд оролцдог бол. LDPC кодын хэд хэдэн хувилбарууд саяхан санал болгогдсон, үүнд гиперболик гадаргуугийн кодууд, гиперграф үржвэр, тэнцвэртэй үржвэр кодууд, төгсгөлөг бүлгүүдэд суурилсан хоёр блок код болон квант Таннер кодууд. Сүүлийнх нь асимптотик байдлаар "сайн" болох нь тогтмол кодлох хурд болон хамгийн бага зайг хангадаг болох нь тогтоогдсон: энэ нь залруулж болох алдааны тоог тодорхойлдог параметр юм. Үүнтэй харьцуулахад гадаргуугийн код нь асимптотик байдлаар тэг кодлох хурдтай бөгөөд зөвхөн квадрат язгуур зайтай байдаг. Гадаргуугийн кодыг өндөр хурдтай, өндөр зайтай LDPC код болгон сольсноор практик ач холбогдолтой болж болно. Нэгдүгээрт, алдаа тэсвэртэй байдлын нэмэлт зардал (физик болон тоон утгын харьцаа) мэдэгдэхүйц буурч болно. Хоёрдугаарт, өндөр зайтай кодууд нь тоон алдааны түвшний маш хурдан бууралттай байдаг: физик алдааны магадлал босго түвшнийг давж гарах үед алдааг багасгах хэмжээ нь босго түвшний ойролцоо байхад ч гэсэн хэд дахин нэмэгдэж болно. Энэ шинж чанар нь өндөр зайтай LDPC кодуудыг ойрын үеийн төхөөрөмжүүдэд ойрхон босго түвшний орчинд ажиллах боломжтой болгодог. Гэсэн хэдий ч, санах ой, хаалга, төлөв байдал бэлтгэх, хэмжих алдаа зэрэг бодит шуугианы загваруудад гадаргуугийн кодыг давж гарахын тулд 10,000 гаруй физик утгатай маш том LDPC кодууд шаардлагатай болно гэж өмнө нь бодож байсан. Энд бид хэдэн зуун физик утга бүхий өндөр хурдтай LDPC кодын хэд хэдэн тодорхой жишээг танилцуулж байна. Эдгээр нь бага гүн бүхий синдромыг хэмжих хэлхээ, үр ашигтай декодлох алгоритм, тус тусад нь тоон утгыг арилгах алдаа тэсвэртэй протоколтой. Эдгээр кодууд нь 0.7% орчим алдааны босго түвшинг харуулдаг, босго түвшний ойролцоо өндөр гүйцэтгэлтэй байдаг бөгөөд гадаргуугийн кодтой харьцуулахад кодлох нэмэлт зардлыг 10 дахин бууруулдаг. Манай алдааг залруулах протоколуудыг хэрэгжүүлэхэд шаардагдах төхөөрөмжийн шаардлага харьцангуй бага байна, учир нь тухайн физик утга нь зөвхөн зургаан бусад утгатай хоёр утгатай хаалгаар холбогддог. Утга холболтын граф нь 2D торон дотор орон нутгийн байдлаар байрлаж чадахгүй ч гэсэн хоёр хавтгай дэд хэсгээс бүрдсэн зургаан зэргийн граф үүсгэж болно. Доор тайлбарласны дагуу ийм утга холболт нь цахилгаан хэлхээний утгатай архитектурд тохиромжтой. Манай кодууд нь Макай гэх мэтийн санал болгосон дугуй кодуудын ерөнхийлөл бөгөөд тэдгээрийг -р илүү гүнзгийрүүлэн судалсан. Бид кодуудаа хоёр хувьсагчтай дугуй (BB) гэж нэрлэсэн, учир нь тэдгээр нь хоёр хувьсагчтай полиномиалд суурилсан байдаг. Эдгээр нь Calderbank–Shor–Steane (CSS) төрлийн тогтворжуулагч кодууд бөгөөд Паули X болон Z-ээс бүрдсэн зургаан утгатай шалгалтын (тогтворжуулагч) операторуудын цуглуулгаар тодорхойлогдож болно. Ерөнхий түвшинд BB код нь хоёр хэмжээст торлог кодтой төстэй байдаг. Тухайлбал, BB кодын физик утгуудыг хоёр хэмжээст тор дээр тодорхой давтамжтайгаар байрлуулж болох бөгөөд бүх шалгалтын операторууд нь зөвхөн нэг хос X болон Z шалгалтыг тор дээр босоо болон хэвтээ шилжүүлгээр авдаг. Гэсэн хэдий ч, торлогийг тодорхойлдог цэг болон оройн тогтворжуулагчтай ялгаатай нь BB кодын шалгалтын операторууд нь геометрийн хувьд орон нутгийнх биш юм. Үүнээс гадна, шалгалт нь дөрвөн утгатай биш, харин зургаан утгатай харилцдаг. Бид кодоор Таннер граф G-г тодорхойлно. G-ийн мөрийнүүд нь өгөгдлийн утга эсвэл шалгалтын операторыг төлөөлдөг. Шалгалтын мөрийн i болон өгөгдлийн мөрийн j нь i-р шалгалтын оператор j-р өгөгдлийн утга дээр (Паули X эсвэл Z-г ашиглан) нөлөөлдөг бол тэдгээрийг ирмэгээр холбоно. Зураг 1a, b-д гадаргуу болон BB кодуудын Таннер графуудын жишээг үзүүлэв. Аливаа BB кодын Таннер граф нь зургаан зэргийн мөрийнүүдтэй бөгөөд хоёр график зузаантай байдаг. Энэ нь хоёр хавтгай дэд хэсэгт хуваагдаж болно гэсэн үг ([cite:Sec2]). Зузаан-2 утга холболт нь цахилгаан хэлхээний утгатай холбогдсон төхөөрөмжүүдэд тохиромжтой. Жишээлбэл, холбогч ба тэдгээрийн хяналтын шугамуудын хоёр хавтгай давхарга нь утгыг агуулсан чипийн дээд болон доод талд байрлуулж, хоёр талыг нь холбож болно. **a**, Харьцуулалтын хувьд гадаргуугийн кодын Таннер граф. **b**, Торикийн торонд байрлуулсан [[144, 12, 12]] параметртэй BB кодын Таннер граф. Таннер графыг бүрдүүлэгч бүх ирмэгүүд нь өгөгдлийн болон шалгалтын мөрийнүүдийг холбодог. q(L) болон q(R) бүртгэлд хамаарах өгөгдлийн утгуудыг цэнхэр болон улбар шар тойгоор үзүүлэв. Бүх мөрийнүүд нь дөрвөн богино зайтай (хойд, өмнөд, зүүн, баруун чиглэлтэй) болон хоёр урттай ирмэгүүдтэй харилцдаг. Цаг хугацаа хэмнэхийн тулд бид хэд хэдэн урттай ирмэгийг харуулав. Зусарлагдсан болон тасралтгүй ирмэгүүд нь Таннер графыг бүрхсэн хоёр хавтгай дэд хэсгийг илэрхийлнэ, [cite:Sec2]-г үзнэ үү. **c**, Зураг 50-р ишлэлд дурдсан шиг X болон Z-г хэмжих Таннер графыг өргөжүүлэх зураг, гадаргуугийн кодонд холбогдсон. Харилцан үйлчлэлийн хэмжилттэй холбоотой нэмэлт утга нь квант дамжуулалт болон зарим тоон нэгжүүдийн тусламжтайгаар бүх тоон утгуудын ачаалах-хадгалах үйлдлийг гүйцэтгэх боломжийг олгодог. Энэхүү өргөжүүлсэн Таннер граф нь мөн A болон B ирмэгүүд ([cite:Sec2]) ашиглан зузаан-2 архитектур дээр хэрэгжүүлэгдэх боломжтой. [[*n*, *k*, *d*]] параметртэй BB код нь *k* тоон утгыг *n* өгөгдлийн утга руу кодлон *d* кодын зайг хангадаг. Энэ нь аливаа тоон алдаа нь хамгийн багадаа *d* өгөгдлийн утгыг агуулдаг гэсэн үг юм. Бид *n* өгөгдлийн утгыг *n*/2 хэмжээтэй *q(L)* болон *q(R)* бүртгэл болгон хуваана. Шалгалт бүр *q(L)*-ээс гурван утгатай, *q(R)*-ээс гурван утгатай харилцдаг. Код нь алдааны синдромыг хэмжихэд *n* нэмэлт шалгалтын утга шаарддаг. Бид *n*/2 хэмжээтэй *q(X)* болон *q(Z)* бүртгэл болгон хувааж, тус тусад нь X болон Z төрлийн синдромыг цуглуулдаг. Нийтдээ код нь 2*n* физик утга шаарддаг. Иймээс цэвэр кодлох хурд нь *r* = *k*/(2*n*) байна. Жишээлбэл, стандарт гадаргуугийн кодын архитектур нь *d* зайтай кодонд зориулж *k*=1 тоон утгыг *n*=*d*2 өгөгдлийн утга руу кодлон, синдромын хэмжилтэнд *n*-1 шалгалтын утга ашигладаг. Цэвэр кодлох хурд нь *r* ≈ 1/(2*d*2) бөгөөд хэрэв физик алдаа нь босго түвшний ойролцоо байвал том кодын зайг сонгох шаардлагатай болсноор хурдан хугацаанд хэрэггүй болдог. Үүнтэй харгалзах нь BB кодууд нь *r* ≫ 1/*d*2 кодлох хурдтай байдаг, кодын жишээг 1-р хүснэгтээс үзнэ үү. Бидний мэдэж байгаагаар 1-р хүснэгтэд үзүүлсэн бүх кодууд шинэ юм. *d*=12 зайтай [[144, 12, 12]] код нь ойрын үеийн туршилтуудад хамгийн их ашигтай байж болох юм, учир нь энэ нь өндөр зай болон өндөр цэвэр кодлох хурд *r*=1/24 -ийг хослуулдаг. Хамгийн сүүлийн үеийн *d*=11 зайтай гадаргуугийн код нь *r*=1/241 цэвэр кодлох хурдтай. Доор бид *d*=12 зайтай BB код нь *d*=11 зайтай гадаргуугийн кодаас туршлагад хамаатай алдааны хязгаарт илүү сайн ажилладаг болохыг харуулна. Алдаа хуримтлагдахаас урьдчилан сэргийлэхийн тулд алдааны синдромыг хангалттай ойр ойр хэмжих чадвартай байх ёстой. Үүнийг шалгалтын операторын дэмжлэг дэх өгөгдлийн утгуудыг тухайн нэмэлт утгатай CNOT хаалганы дарааллаар холбодог синдромыг хэмжих хэлхээгээр гүйцэтгэдэг. Дараа нь шалгалтын утгуудыг хэмжиж, алдааны синдромын утгыг илчилдэг. Синдромыг хэмжих хэлхээг гүйцэтгэхэд шаардагдах хугацаа нь түүний гүнд пропорциональ байна: давхцдаггүй CNOT-уудын багц. Алдаанууд синдромыг хэмжих хэлхээг гүйцэтгэх явцад үргэлж гарч байгаа тул түүний гүн бага байх ёстой. BB кодын синдромыг хэмжих бүрэн мөчлөгийг 2-р зурагт үзүүлэв. Синдромын мөчлөг нь кодын уртаас үл хамааран зөвхөн долоон CNOT давхарга шаарддаг. Шалгалтын утгуудыг синдромын мөчлөгийн эхэнд болон төгсгөлд эхлүүлж, хэмжинэ (дэталбыг [cite:Sec2] -аас үзнэ үү). Хэлхээ нь кодын мөрийн шилжилтийн тэгш хэмд нийцдэг. Долоон CNOT давхаргыг ашигласан синдромыг хэмжих бүрэн мөчлөг. Бид хэлхээний орон нутгийн дүрсийг үзүүлдэг бөгөөд энэ нь зөвхөн q(L) болон q(R) бүртгэлээс нэг өгөгдлийн утгыг агуулдаг. Хэлхээ нь Таннер графыг хэвтээ болон босоо шилжүүлэхэд тэгш хэмтэй байдаг. Синдромын мөчлөгийг [cite:Sec2] -д дэлгэрэнгүй тайлбарласан болно. Өгөгдлийн утга бүр гурван X-шалгалтын болон гурван Z-шалгалтын утгатай CNOT-оор холбогддог. Бүрэн алдааг залруулах протокол нь Nc ≫ 1 синдромыг хэмжих мөчлөгийг гүйцэтгэж, дараа нь декодерыг дууддаг: энэ нь хэмжигдсэн синдромуудыг оролт болгон авч, өгөгдлийн утгуудын эцсийн алдааны таамаглалыг гаргадаг сонгодог алгоритм юм. Алдааг залруулах нь таамагласан болон бодит алдаа нь шалгалтын операторуудын үржвэрээр давхцдаггүй тохиолдолд амжилттай болдог. Иймээс хоёр алдаа нь ямар нэгэн кодлогдсон (тоон) төлөвт ижил нөлөөтэй байдаг. Ийнхүү таамагласан алдааны урвууг хэрэглэх нь өгөгдлийн утгуудыг анхны тоон төлөвт нь буцаана. Үгүй бол, хэрэв таамагласан болон бодит алдаа нь жинхэнэ тоон оператороор ялгаатай байвал алдааг залруулах нь амжилтгүй болж, тоон алдаа гарна. Манай тоон туршилтууд нь Пантелеев ба Калачевын санал болгосон дараалсан статистик декодер (BP-OSD) -тэй хамт итгэл тархалтын дээр суурилсан. Анхны бүтээлд BP-OSD -ийг зөвхөн санах ойн алдаатай тоглоомын шуугианы загварын контекстэд тайлбарласан. Энд бид BP-OSD -ийг хэлхээний шуугианы загварт хэрхэн өргөжүүлэхийг харуулж байна, дэлгэрэнгүй мэдээллийг [cite:MOESM1] -ээс үзнэ үү. Бидний арга нь -р ишлэлүүдийг нягт дагаж мөрддөг. Синдромыг хэмжих хэлхээний шуугиантай хувилбар нь санах ойн алдаа (өгөгдөл эсвэл шалгалт утгууд дээр), алдаатай CNOT хаалга, утга эхлүүлэх ба хэмжих зэрэг хэд хэдэн төрлийн алдаатай ажиллагааг агуулж болно. Бид хэлхээний шуугианы загварыг авч үзэх бөгөөд энэ нь янз бүрийн ажиллагаа *p* магадлалаар алддаг. Тоон алдааны магадлал *p*L нь алдааны түвшин *p*, синдромыг хэмжих хэлхээний дэлгэрэнгүй, болон декодлох алгоритмаас хамаардаг. *Nc* синдромыг хэмжих мөчлөгийг гүйцэтгэсний дараа тоон алдааны магадлалыг *PL*(*Nc*) гэж тэмдэглэе. Тоон алдааны түвшинг *p*L = *PL*(*Nc*)/ *Nc* гэж тодорхойлъё. Ерөнхий байдлаар *p*L -ийг синдромын мөчлөг тутамд гарах тоон алдааны магадлал гэж үзэж болно. Нийтлэг практикийг дагаж, бид *d* зайтай кодыг *Nc* = *d* гэж сонгодог. 3-р зураг нь 1-р хүснэгтэд байгаа кодуудаас авсан тоон алдааны түвшинг харуулж байна. Тоон алдааны түвшинг *p* ≥ 10−3 хувьд тоон байдлаар тооцоолж, бага алдааны түвшинд тохирох томъёог ашиглан [cite:Sec2] extrapolation хийсэн. Цэвэр босго түвшин *p*0 нь *p*L(*p*) = *kp* тэнцэтгэлийн шийдэл болгон тодорхойлогддог. Энд *kp* нь *k* анхдагч утга тус бүр алдаанд өртөх магадлалын тооцоо юм. BB кодууд нь 0.7% орчим цэвэр босго түвшинг санал болгодог, 1-р хүснэгтийг үзнэ үү, энэ нь гадаргуугийн кодын алдааны босго түвшинтэй бараг ижил бөгөөд зохиогчдын мэдэж байгаа бүх өндөр хурдтай LDPC кодуудын босго түвшнээс давсан юм. **a**, BB LDPC кодын бага жишээнд тоон ба физик алдааны түвшин. *p*L -ийн тоон тооцоо (ромбууд) нь *d* зайтай кодын хувьд *d* синдромын мөчлөгийг симуляци хийх замаар олж авсан. Ихэнх өгөгдлийн цэгүүд нь дээж авах алдаанаас болж *p*L/10 орчим алдааны бартай байдаг. **b**, [[144, 12, 12]] BB LDPC код болон 12 тоон утгатай, *d* ∈ {9, 11, 13, 15} зайтай гадаргуугийн кодуудын харьцуулалт. *d* зайтай, 12 тоон утгатай гадаргуугийн код нь *n*=12*d*2 урттай байдаг, учир нь тоон утга бүр гадаргуугийн кодын торны тусдаа *d* × *d* хэсэгт кодлогддог. Жишээлбэл, физик алдааны түвшин *p* = 10−3 байвал, энэ нь ойрын үеийн туршилтуудад боломжит зорилт юм. 1-р хүснэгт дэх *d*=12 кодоор 12 тоон утгыг кодлох нь 2 × 10−7 тоон алдааны түвшинг санал болгоно. Энэ нь 12 тоон утгыг бараг 1 сая синдромын мөчлөгт хадгалахад хангалттай. Энэ кодыг хэрэгжүүлэхэд шаардагдах нийт физик утгын тоо 288 байна. 1-р хүснэгт дэх *d*=18 код нь 576 физик утга шаардана, харин алдааны түвшинг 10−3 -ас 2 × 10−12 хүртэл бууруулж, бараг зу