Obliczenia kwantowe
Naukowcy opracowali pierwszy język programowania wysokiego poziomu dla komputerów kwantowych
Naukowcy z ETH Zurich opracowali pierwszy język programowania wysokiego poziomu, który może programować komputery kwantowe tak samo bezpiecznie i niezawodnie jak komputery klasyczne. Ten nowy przełom jest dużym krokiem naprzód w dziedzinie komputerów kwantowych, czyniąc zadanie programowania komputerów kwantowych znacznie łatwiejszym niż wcześniej.
Martin Vechec jest profesorem informatyki w laboratorium Secure, Reliable and Intelligent Systems Lab (SRI) ETH.
“Programowanie komputerów kwantowych wciąż jest wyzwaniem dla badaczy”, mówi Vechev. “Dlatego jestem tak podekscytowany, że możemy teraz kontynuować tradycję ETH Zurich w dziedzinie rozwoju komputerów kwantowych i języków programowania”.
“Nasz język programowania kwantowego Silq pozwala programistom lepiej wykorzystywać potencjał komputerów kwantowych niż istniejące języki, ponieważ kod jest bardziej kompaktowy, szybszy, intuicyjny i łatwiejszy do zrozumienia dla programistów”.
Silq został przedstawiony na konferencji języków programowania PLDI 2020.
Komputery Kwantowe vs Komputery Klasyczne
Komputery kwantowe stają się coraz bardziej istotne, a ich potencjał jest ogromny. Komputery kwantowe są w stanie rozwiązywać problemy szybciej niż komputery klasyczne, wykorzystując splątane stany kwantowe. W tych stanach bity informacji nakładają się na siebie w pewnych momentach czasu, a komputery mają potencjał rozwiązywać problemy, które komputery klasyczne nie są w stanie rozwiązać w rozsądnym czasie.
W późnym lecie 2019 roku komputery kwantowe doświadczyły kolejnego dużego przełomu, kiedy udało się rozwiązać określony problem szybciej niż najbardziej zaawansowany komputer klasyczny.
Nawet pomimo ostatnich przełomów, wciąż istnieją wiele wyzwań. Niektóre “algorytmy kwantowe” nie mogą być obliczane na sprzęcie kwantowym z powodu wysokiego poziomu błędów.
Nowy Język: Silq
Obecne języki programowania kwantowego są ściśle związane z konkretnym sprzętem, a języki te są trudne do obsługi i powodują zbyt wiele błędów. Jest to spowodowane koniecznością bardzo szczegółowych instrukcji dla implementacji algorytmów kwantowych.
Silq został opracowany, aby pokonać to wyzwanie.
“Silq jest pierwszym językiem programowania kwantowego, który nie jest zaprojektowany przede wszystkim wokół konstrukcji i funkcjonalności sprzętu, ale wokół myślenia programistów, kiedy chcą rozwiązać problem – bez wymogu zrozumienia każdego szczegółu architektury komputera i implementacji”, mówi Benjamin Bichsel, doktorant i osoba odpowiedzialna za nadzór Sliq.
Silq jest pierwszym językiem programowania wysokiego poziomu dla komputerów kwantowych, co oznacza, że jest bardziej wyrafinowany i wymaga mniej kodu do opisania złożonych zadań i algorytmów. Takie języki są łatwiejsze do użycia dla programistów i mogą być stosowane w różnych architekturach komputerowych.
Nowo opracowany język rozwiązuje również problem błędów. Komputery klasyczne używają metody automatycznego kasowania wartości, aby uwolnić pamięć, co nazywa się “zbiorczym kasowaniem”. W komputerach kwantowych jest to większy problem z powodu splątania kwantowego, które może powodować, że wcześniej obliczone wartości będą oddziaływać z bieżącymi. Może to prowadzić do zakłóceń w prawidłowym obliczeniu, więc musi być użyta zaawansowana technika obliczeń.
“Silq jest pierwszym językiem programowania, który automatycznie identyfikuje i kasuje wartości, które nie są już potrzebne”, wyjaśnia Bichsel.
Aby to zrobić, używane są tylko polecenia programistyczne, które nie zawierają specjalnych operacji kwantowych w swojej metodzie odwrotnego obliczania.
“Nasz zespół z czterech osób osiągnął przełom po dwóch latach pracy dzięki połączeniu różnych umiejętności w dziedzinie projektowania języka, fizyki kwantowej i implementacji. Jeśli inne zespoły badawcze i rozwojowe zaakceptują nasze innowacje, będzie to wielki sukces”, mówi Bichsel.












