Kuantum rastgele sayı üretimi — süperpozisyon · ölçüm · bit dizisi
Bu sayfadaki QRNG tarifi tek bir düşey çizgide anlatılır: başlangıçta kübitler sıfırda, paralel Hadamard ile hesaplama tabanında eşit süperpozisyon kurulur; hesaplama tabanında yapılan tek ölçüm bu süperpozisyonu tek bir klasik etikete indirger ve klasik kayda yazılır — çıkan etiket doğrudan üretilen n bitlik dizidir. Kavramsal çerçeve ve üretim güvenliği uyarıları §1, olasılık tablosu ve devre iskeleti §2, Qiskit nesnelerine çeviri ise §3–4 bölümlerindedir; böylece aynı anlatım üç yerde dönmek yerine birbirini tamamlar.
Kuantum rastgele sayı üretimi (QRNG) nedir?
QRNG terimi burada “ölçüm kaydından klasik örnek çekme” pratiğini kapsar. Üstte özetlenen protokolün kuantum tarafında kritik nokta şudur: klasik kayda düşen her etiket Born olasılıklarıyla örneklenir; tek kübit hesaplama tabanında tipik olarak iki sonuç eşit ağırlıklı görünür ve §2’deki eşit genlik hazırlığı bu diskret dağılımı şeffaf kılar. Bunu PRNG ile karıştırmamanın özeti şudur: PRNG çıktısı tohum ve kod bilindiğinde yeniden üretilebilir; ideal örnekleme düşüncesinde ise ölçüm kaydı “dosyanın ortasından okunan sabit bir liste” gibi düşünülmez — üretim güvenliği için ise gerçek dünyada ek test ve işleme katmanları gerekir (aşağıda).
Üretim QRNG zincirinde sıra genişler: kalibrasyon, drift, klasik elektronik ve ölçüm yanlılığı olasılıkları kaydırır; bu yüzden doğrusallık testleri, bağımsız denetim ve gerektiğinde klasik son işleme rutinleri devreye girer. Bu içerik o zincirin mühendislik rehberi değildir — yalnızca §2’deki olasılık iskeletinin Qiskit’te nasıl kodlandığını sabit bir simülasyonla gösterir.
Simülasyon uyarısı: Aer aynı devreyi sayısal olarak örnekler; seed_simulator ise sayfadaki çıktıların tekrarlanabilir olması için eklenmiştir — fiziksel kuantum kaynağını “diske sıkıştırmak” değil, API ve şema öğretimini sabitlemektir. Donanımda örneklemeyi belirleyen başka süreçler vardır.
Site içinde QAOA · Qiskit ve QSVM · Qiskit dosyaları bir kayıp fonksiyonunu küçültme veya karar yüzeyi kurma ekseninde döner; bu QRNG sayfası ise maliyet minimizasyonu taşımaz — amaç ölçüm çıktısından örneklem üretmektir. İçerik çakışması olmaması için optimizasyon döngüsü ve veri kümesi anlatımına girilmez.
Minimal devre iskeleti
§1’deki olasılık dilini bu protokole indirgemek kolaydır: başlangıç |0⋯0⟩, paralel H sonrası genlikler hesaplama tabanında paylaşılır ve ölçüm her ket etiketini 1/2ⁿ olasılıkla seçer. Tek bir ölçüm hamlesiyle klasik kayda düşen n bit, örneğin 011, doğrudan seçilen hesaplama tabanı ketinin etiketiyle özdeştir — histogram düşünmek istemezseniz bile “bir zar atışında çıkan yüz” benzetimiyle okunabilir.
Ürün durumu şunu garanti eder: süperpozisyon çarpım yapısı taşıdığı için taban ketleri arasında “tek zarın üzerinde konumlanmış” eşit genlik dağılımı kurulur; ölçüm satırı ise bu tabanı örnek uzayına projekte eder. Donanımda ideal düzgün dağılıma sapma beklenir — §1’deki mühendislik notları bunun için vardır.
Aynı devreyi shots ≫ 1 ile koşturmak, histogramın düzgün dağılıma yakınsamasını izlemek içindir; bu sayfadaki kod ise kasıtlı olarak shots=1 seçer — böylece tek gerçekleşme satırı §4–7’de çizim ve doğrulamayla bire bir örtüşür. Büyük örneklem gerektiren istatistik kontrolleri burada işlenmez.
Başka kodlama ve ölçüm politikaları da mümkündür (ör. tek kübit Hadamard yerine farklı hazırlık, veya ek ünite ile bias düzeltme); bu dosya kasıtlı olarak “standart derslik” iskeletinde kalır — Qiskit bağlantısı ve çalıştırma ayrıntısı 3 · Qiskit boru hattı ve 4 · Qiskit kod örneği bölümlerindedir.
Qiskit boru hattı
QRNG tarifinin Qiskit çeviri tablosu şöyledir: olasılık iskeleti bir QuantumCircuit nesnesine yazılır; measure_all() ölçüm sonrası klasik kayıtları ayırır ki histogram doğrudan bit dizilerine indirgensin. Çalışma zamanında AerSimulator Born olasılıklarına uygun örnek üretir — burada öğretim çıktısı sabit kalsın diye seed_simulator kullanılır (anlamı §1’de). Donanım veya Sampler primitifi ile üretim boru hatları farklıdır; bu dosya yalnızca “devreyi çalıştır → sayımı oku” zincirini gösterir.
qc.draw(output="text", fold=-1), §6’daki SVG ile aynı kapı sırasını metinle sabitlemek içindir; QRNG’ye özgü ek bir soyutlama taşımaz — transpile gerekmiyorsa atlanır.
Qiskit kod örneği
Aşağıdaki blok §2–3’teki çeviriyi somutlar: n = 3, tek ölçüm yığını, sabit simülatör tohumu — böylece §7’deki doğrulama satırıyla aynı bit dizisi tekrar üretilir.
from qiskit import QuantumCircuit
from qiskit_aer import AerSimulator
n = 3
qc = QuantumCircuit(n)
qc.h(range(n))
qc.measure_all()
backend = AerSimulator()
job = backend.run(qc, shots=1, seed_simulator=42)
counts = job.result().get_counts()
bit_string = next(iter(counts.keys()))
print(qc.draw(output="text", fold=-1))
print("Tek örnek (shots=1):", bit_string)
Kod Analizi
İskeletin rolü
§4’teki blok yürütme sırasına göre okunur: önce devre tanımı ve kapılar, sonra simülatör çağrısı, en sonda klasik sonucun Python nesnesine aktarılması. Kavramsal olasılık dili §2’de, nesne eşlemesi §3’te verilmişti — burada her satırın bu QRNG tarifinde hangi adımı temsil ettiği netleştirilir. Çizim ve doğrulama için 6 · Aynı devre (iki temsil) ile 7 · Demo ve doğrulama birlikte kullanılmalıdır.
Veri ve kontrol akışı
QuantumCircuit → kapılar → run(…, shots=1) → Result → get_counts() → tek anahtarlı sözlükten bit dizisini okuma. shots=1 olduğunda histogram aslında “tek örnek”tir; QRNG örneğinde aranan şey de budur: bir ölçümde seçilen hesaplama tabanı etiketi.
QuantumCircuit(n)
n kübitlik boş devre açılır; kablolar 0…n−1 ile adreslenir ve başlangıç durumu hesaplama tabanında |0⋯0⟩ kabul edilir.
Hilbert uzayı boyutu 2ⁿ’dir; QRNG bu örnekte küçük n ile “tam süperpozisyon + tek ölçüm” fikrini taşımayı kolaylaştırır — ölçek büyüdükçe aynı mantık korunur, maliyet devre genişliği ve simülasyonla artar.
qc.h(range(n))
Her kübit üzerinde Hadamard uygulanır; başlangıç ürün durumu |0⟩⊗ⁿ hesaplama tabanında eş genlikli bir süperpozisyona (H⊗ⁿ|0⋯0⟩) dönüşür.
Bu adım §2’deki “paralel H ile düzgün diskret dağılım” ile aynıdır: ölçümden önce hiçbir kübit klasik etikete kilitlenmez; olası sonuç kümesi tüm n bitlik kelimelerdir ve bu örnekte her biri Born olasılığı 1/2ⁿ.
measure_all()
Ölçüm sonrası klasik kayıtlar eklenir; çizimde meas satırı ve M kapıları bu projeksiyonu gösterir.
QRNG bakışında önemli olan: ölçüm tek bir hesaplama tabanı ket etiketi seçer ve bu etiket doğrudan üretilen n bitlik dizidir; ek bir kod çözücü veya maliyet fonksiyonu yoktur.
AerSimulator ve backend.run
AerSimulator devreyi çalışma zamanında örnekler; tam durum takibi ile Born dağılımına uygun klasik sonuç üretir. shots=1 tek bir ölçüm denemesi demektir — çıktı çoklu örnekleme histogramı değil, tek gerçekleşme.
run çağrısı asenkron işi başlatır; sonuç nesnesi job.result() ile alınır. Üretim ortamında başka arka uçlar da seçilebilir; bu sayfa yalnızca Aer ile sabit öğretim çıktısı verir.
seed_simulator=42
Simülatörün iç örnekleme akışını sabitler; böylece aynı kod ve devre ile sayfadaki terminal ve doğrulama satırı tekrar üretilebilir (§1’deki simülasyon uyarısı).
Gerçek donanımda “aynı tohumla aynı bit” beklentisi genelde yoktur; QRNG güvenliği ve kalibrasyon başka başlıktır — burada amaç öğrenilebilir bir demo zinciri kurmaktır.
get_counts() ve bit dizisi
get_counts() her bit dizisi için kaç kez görüldüğünü veren bir sözlük döndürür; shots=1 iken tek anahtar vardır (bu örnekte 111).
Kodda bu anahtar doğrudan okunur: next(iter(counts.keys())) tek örnekte tek ket etiketini alır — çoklu shot kullanıldığında ise histogram üzerinden istatistik çıkarılır; bu minimal QRNG örneği tek örnekle sınırlı tutulmuştur.
Aynı devre (iki temsil)
Solda qc.draw(output="text", fold=-1); sağda aynı mantıksal sıranın şeması (ürün süperpozisyon + ölçüm).
draw(text) · üç kübit
┌───┐ ░ ┌─┐
q_0: ┤ H ├─░─┤M├──────
├───┤ ░ └╥┘┌─┐
q_1: ┤ H ├─░──╫─┤M├───
├───┤ ░ ║ └╥┘┌─┐
q_2: ┤ H ├─░──╫──╫─┤M├
└───┘ ░ ║ ║ └╥┘
meas: 3/═════════╩══╩══╩═
0 1 2
H · süperpozisyon ░ · ölçüm öncesi M · klasik kayıt
QRNG kompakt şema · 3 kübit
mavi · H yeşil kesik · ölçüm bloğu
Aşağıdaki blok, statik terminal ve SVG ile aynı QRNG devresini doğrulanmış JSON üzerinden çizer; histogram örnek bir 1024 shot sayımıdır (tarayıcıda simülatör çalışmaz).
circuit-viz · H⊗3 → ölçüm
Üstteki premium SVG ölçüm bloklarını ve bariyer bandını korur; bu panel ortak motordur. Moment düğmeleri JSON kolonlarını vurgular.
Örnek sayım · 8 sonuç
Her bit dizisi yaklaşık eşit olasılık (örnek sayım).
Bu canlı devre. Üç kübit üzerinde paralel H ve ölçüm — üst paneldeki QRNG çekirdeği ile aynı yapı.
Üst panelle ilişki. Statik terminal/SVG tam referanstır; canlı panel aynı devreyi JSON’dan çizer.
Histogram. Sekiz çıktı için yaklaşık uniform örnek sayım (gerçek simülasyon değil, pedagojik dağılım).
Demo ve doğrulama
Geniş çerçeve, 6 · Aynı devre (iki temsil) sağ panel ile aynı yerleşimi kullanır; gradient kimliği qrng-wide-g.
Şemayı adım adım oku
-
Üç yatay çizgi üç kübit kablosunu temsil eder; soldaki mavi H kutuları paralel Hadamard adımını gösterir — çizim çıktısındaki üst üste H sırası ile örtüşür.
-
Yeşil kesik çerçeve ölçüm bloğunu temsil eder; gerçek çizimde M kapıları ve meas satırı detayı üretir.
-
Örnek kodda seed_simulator=42 ve shots=1 ile tek örnek 111 elde edilir — şema ile çelişmez: şema olasılıkları tarif eder, tek örnek bu uzaydan bir gerçekleşmedir.
Hedef: soldan sağa H⊗n → ölçüm akışının QRNG minimal iskeleti olarak okunması.
- örnek: n=3 · shots=1 · seed 42 → 111
- çekirdek: AerSimulator
- not: kripto güvenliği iddiası yok
Devre — ayrıntılı analiz
Hadamard adımı, her kübiti yerel olarak |0⟩ ve |1⟩ arasında eşit ağırlıkta süperpozisyona getirir; çok kübitte ürün durumu altında bu işlem tüm hesaplama tabanı ketleri üzerinde tek ölçümde örtük olarak örneklenmiş bir etiket üretir. Ölçüm çizgisi klasik kayıtları sabitler — QRNG’nin “kuantum” kısmı hazırlıktadır, klasik çıktı ise ölçüm sonrasıdır.
Simülatörde seed_simulator tekrarlanabilirlik sağlar; gerçek donanımda benzer determinizm kaynakları kalibrasyon ve kontrol elektroniğine bağlıdır ve bu sayfanın kapsamı dışındadır.
Pratik notlar
Üretim QRNG sistemlerinde gürültü modeli, ölçüm yanlılığı, sıcaklık drift’i ve klasik post-processing sıkça yer alır. Çoklu shot histogramları ile teorik dağılıma yakınsama kontrol edilir; teknik raporlar için Qiskit dokümantasyonundaki hata modelleri ve donanım oturumlarına başvurun.