Квантови компютри и Q#

Квантови компютри и Q#

Microsoft съобщи новината за работа по нов език за програмиране, който ще бъде използван специално за програмиране на квантовото изчисление наречен Q#. Главната им цел в крайна сметка да създаде пълен софтуерен стек, който ще даде възможност за разработване на програми за квантово изчисляване, преди технологията да стане достъпна.

Изграден от нищото, за да поддържа програмите за квантово изчисление, Q# е език на високо ниво, предназначен за писане на скриптове, които ще изпълняват своите подпрограми на квантов процесор, свързан с класически компютър, който получава своите резултати. Това не е различно от типовете хибридни компютърни архитектури като процесори, графични процесори и РРОА.

Разработчиците, използващи езика, не трябва да имат задълбочени познания за квантовата физика. За заинтересованите, Microsoft предоставя подробно обяснение за основните концепции за квантовата компютърна обработка, обхващащи векторна и матрична математика, нотация, измервания и квантови схеми.

Dev Kit-a за Visual Studio който е предзначен за разработка на Q# програми, като те се компилират в квантов симулатор който симулира процесор с 32 qbits, а Azure симулатора до 40 qbits. Има се очаквания, че квантовата компилация ще съдържа няколко различни слоя софтуер и хардуер, които работят при различни физични условия. Също така стандартните процесори ще бъдат необходими за обработка на коригирането на грешки в квантовите компютри, като класическият хост компютър и квантовият компютър ще бъдат в тандем, тъй като все още qubits не са стабилни.

Q# се абстрахира от изискванията за управление, а изцялп фокусът да остане върху развитието на алгоритъма и решаването на проблеми, като се използва език, който изглежда познат.

Основната идея на Q#

На първо място e че Q# не изглежда различен от други езици за програмиране и е много подобен и близък на неговия предшественик C#.

Първо предоставен от Microsoft, включва създаването на Q# Bell State script за четирите заплетени състояния на два qubits и крайният резултат води до наблюдаване на заплитането в два измерени бита в изхода на програмата.

По-късно преминава потребителя чрез писане на скрипт за симулиране на квантовата телепортация. Microsoft има интерес във въвеждането на такава нова концепция за бъдещите разработчици и предизвиква интерес към езика и квантовото изчисление.

Q# има няколко интересни примитивни типа. В допълнение към познатите ни като int, double, bool, char и string, има също и тип Pauli, Range, Result и Qubit.

Съществуват и много новости в Q#, включително функции, които се наричат операции и т.н.

operation Teleport(msg : Qubit, there : Qubit) : () {
    body {
        using (register = Qubit[1]) {
            let here = register[0];
            H(here);
            CNOT(here, there);
            CNOT(msg, here);
            H(msg);
            // Measure out the entanglement. 
           if (M(msg) == One) { Z(there); } 
           if (M(here) == One) { X(there); }

           }
       } 
   }

Тук e доста добре описана тази система как работи и как може да ни бъде полезна.

Квантово изчисление решава много проблеми

Квантовото изчисление се очаква да разруши много отрасли и полета, след като стане достъпно и повсеместно. Много методи за шифроване, които се използват днес, вече няма да бъдат ефективни срещу квантовото изчисление, включително RSA.

Квантовото изчисляване обаче също ще ни помогне да решим доста сложни проблеми. То дори ще реши проблема с криптирането, тъй като квантовото криптиране ще бъде напълно по-сигурно.

Също така ще бъде възможно да се моделира химичното и протеиновото взаимодействие за дизайн на лекарствата и да се отвори вратата за индивидуална лекарствена терапия, при която лекарствата се разработват въз основа на генетиката на индивида. Или да ни помогнете да се справим с изменението на климата чрез моделиране на прогнози за времето и климата. Ние ще бъдем много по-близо до успешното моделиране на човешкия мозък, създаване на много по-способен изкуствен интелект и по същество да направим скок във всяка голяма техническа област.

Полезна инфорамация

Тук съм споделил някой полезни материяли, който могат да ни дадът по детайлна информация относно квантовите компютри и Q#.