PYPROGLIB Telegram 6892
🎮 Реализация собственного симулятора квантового состояния (Hume)

Проблема: для понимания внутренней механики квантовых вычислений полезно иметь собственный симулятор. Однако большинство разработчиков используют готовые библиотеки (Qiskit, Cirq), что скрывает фундаментальные детали: как образуются суперпозиции, проводятся операции, как происходит измерение.

Решение: авторы предлагают построить пошаговый симулятор, реализованный на Python. Это не просто упражнение — это шанс «потрогать» основы: векторы состояния, гейты, измерения и крах симуляции при измерении. В репозитории из официального companion‑кода иллюстрируется весь процесс.

Ниже упрощённая версия – ключевые части симулятора из главы о квантовых состояниях:
import numpy as np

class QubitRegister:
def __init__(self, n):
self.n = n
# старт: |0…0⟩
self.state = np.zeros(2**n, dtype=complex)
self.state[0] = 1.0

def apply_gate(self, gate, target):
"""Применяет матричный gate к qubit 'target'"""
full = 1
for i in range(self.n):
full = np.kron(full, gate if i == target else np.eye(2))
self.state = full @ self.state

def measure(self):
probs = np.abs(self.state)**2
outcome = np.random.choice(len(probs), p=probs)
# Проекция на классическое состояние
result = np.zeros_like(self.state)
result[outcome] = 1.0
self.state = result
return bin(outcome)[2:].zfill(self.n)

# Использование:
qr = QubitRegister(2)
H = np.array([[1, 1], [1, -1]]) / np.sqrt(2)
qr.apply_gate(H, target=0) # суперпозиция первого qubit
print("Перед измерением:", qr.state)
print("Измерено:", qr.measure())


Преимущества:


— Глубинное понимание формирования состояния и действия гейтов.
— Код открыт, минималистичен, легко адаптируется.
— Прекрасная демонстрация квантового измерения на уровне программиста.

🆖 Еще больше полезных книг — в нашем канале @progbook

Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍7🔥4



tgoop.com/pyproglib/6892
Create:
Last Update:

🎮 Реализация собственного симулятора квантового состояния (Hume)

Проблема: для понимания внутренней механики квантовых вычислений полезно иметь собственный симулятор. Однако большинство разработчиков используют готовые библиотеки (Qiskit, Cirq), что скрывает фундаментальные детали: как образуются суперпозиции, проводятся операции, как происходит измерение.

Решение: авторы предлагают построить пошаговый симулятор, реализованный на Python. Это не просто упражнение — это шанс «потрогать» основы: векторы состояния, гейты, измерения и крах симуляции при измерении. В репозитории из официального companion‑кода иллюстрируется весь процесс.

Ниже упрощённая версия – ключевые части симулятора из главы о квантовых состояниях:

import numpy as np

class QubitRegister:
def __init__(self, n):
self.n = n
# старт: |0…0⟩
self.state = np.zeros(2**n, dtype=complex)
self.state[0] = 1.0

def apply_gate(self, gate, target):
"""Применяет матричный gate к qubit 'target'"""
full = 1
for i in range(self.n):
full = np.kron(full, gate if i == target else np.eye(2))
self.state = full @ self.state

def measure(self):
probs = np.abs(self.state)**2
outcome = np.random.choice(len(probs), p=probs)
# Проекция на классическое состояние
result = np.zeros_like(self.state)
result[outcome] = 1.0
self.state = result
return bin(outcome)[2:].zfill(self.n)

# Использование:
qr = QubitRegister(2)
H = np.array([[1, 1], [1, -1]]) / np.sqrt(2)
qr.apply_gate(H, target=0) # суперпозиция первого qubit
print("Перед измерением:", qr.state)
print("Измерено:", qr.measure())


Преимущества:


— Глубинное понимание формирования состояния и действия гейтов.
— Код открыт, минималистичен, легко адаптируется.
— Прекрасная демонстрация квантового измерения на уровне программиста.

🆖 Еще больше полезных книг — в нашем канале @progbook

Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask


Share with your friend now:
tgoop.com/pyproglib/6892

View MORE
Open in Telegram


Telegram News

Date: |

Earlier, crypto enthusiasts had created a self-described “meme app” dubbed “gm” app wherein users would greet each other with “gm” or “good morning” messages. However, in September 2021, the gm app was down after a hacker reportedly gained access to the user data. How to create a business channel on Telegram? (Tutorial) The Channel name and bio must be no more than 255 characters long Deputy District Judge Peter Hui sentenced computer technician Ng Man-ho on Thursday, a month after the 27-year-old, who ran a Telegram group called SUCK Channel, was found guilty of seven charges of conspiring to incite others to commit illegal acts during the 2019 extradition bill protests and subsequent months. Telegram message that reads: "Bear Market Screaming Therapy Group. You are only allowed to send screaming voice notes. Everything else = BAN. Text pics, videos, stickers, gif = BAN. Anything other than screaming = BAN. You think you are smart = BAN.
from us


Telegram Библиотека питониста | Python, Django, Flask
FROM American