Ana içeriğe geç
NM-RFC-0010 · Deneysel

Tipli bir oracle'dan somut devre üretin

Compile-time parametreleri seçin, derleyicinin ürettiği oracle artifact'ini ve kimlik hash'ini inceleyin; ardından aynı monomorphize kaynağı Playground'da açın.

Generic oracle derleyici laboratuvarı

Bu laboratuvar NM-RFC-0010 derleyicisini açık uzlaşıyla çağırır. Runtime boyutlu register veya dinamik oracle değeri üretmez.

Deneysel

Amaç tip güvenliğidir; bu bir ölçeklenebilirlik iddiası değildir. DJ/BV, uygun stabilizer devrelerinde N=99'a kadar hazırdır. Grover yalnız exact grover_primitives paketiyle N=2..5 aralığında hazırdır.

Uçtan uca hazır aralık
N=1..99
Yerel backend
Stabilizer
Somut kübitler
4
Doğrulama tier'ı
structural
Genişletilmiş gate'ler
6

Oracle inceleyicisi

Tier A doğrulamasının ürettiği kanonik GF(2) cebirsel normal biçimi.

fnv1a32:084e0afc
f[0] = x[0] ⊕ x[2]
Monomorphize kaynağı incele
module generic_gallery_bv_3;
@target("browser-stabilizer");

xor_oracle selected_secret(x: QReg<3>, out: QReg<1>) {
  CNOT(x[0], out[0]);
  CNOT(x[2], out[0]);
}

fn main() {
  let x: QReg<3> = qreg[3];
  let out: QReg<1> = qreg[1];
  bernstein_vazirani<3>(x, out, oracle: selected_secret);
}
Generic oracle açık olarak Playground'a git

Görsel Oracle / Kısıt Oluşturucu

Sınırlı bir Boolean fonksiyonu seçin, bir veya daha fazla affine çıkış bitini isimli ve tipli bir oracle'a derleyin; aynı kaynağı Playground'da açmadan önce derleyicinin ayrık doğrulama artefaktını inceleyin.

Deneysel 0.1

Bu oluşturucu N,M=1..8 için kanonik affine vektör XorOracle<N,M> fonksiyonlarını ve N=2..5 için tek-durum PhaseOracle<N> eşitliğini destekler. Keyfi doğruluk tablosu veya matris sentezlemez, ancilla tahsis etmez ve runtime boyutlu register üretmez.

Taşınabilir workbench bağlamı

URL içeriğine güvenmeden veya runtime backend kaydetmeden strict yerel artifact'leri N/M araçları arasında taşıyın.

Kaynak bütçesi

Uygulanan yok
Uygulanan yok

Planlama profili

Uygulanan yok
Uygulanan yok

Profiller yalnız statik uyumluluk kanıtıdır. Calibration referansları yalnız provenance'dır; hiçbiri donanım, scheduling veya noise davranışı seçemez.

Her çıkış bitinin bağımsız kanonik affine ifadesi vardır; giriş ve çıkış register'ları ayrık kalır.

Affine çıkış bileşenleri

Düzenlenecek çıkış bileşenini seçin. Derleyici yalnız o çıkış bitini hedefleyen X/CNOT kapıları üretir.

f[0] için seçili parity değişkenleri

Her seçili değişken doğrudan bir CNOT'a dönüşür; sezgisel sentez kullanılmaz.

Kapalı gramer: xor ile birleştirilen 0, 1 ve x[index] terimleri. Tekrarlanan terimler GF(2)'de sadeleşir.

f[0] için düzenlenebilir doğruluk tablosu

İstediğiniz çıkış satırlarını düzenleyip tabloyu uygulayın. Kesin GF(2) dönüşümü yalnız oluşan kanonik ANF derecesi en fazla bir ise kabul eder.

xf[0]
000
001
010
011
100
101
110
111
Somut oracle tipi
XorOracle<3,1>
Boolean önerme
f(x) = x[0] xor x[2]
Doğrulama tier'ı
structural
Kısıt artefaktı
nmconstraint-3-084e0afc

Derleyici doğrulama kanıtı

Normatif doğrulama yöntemi
Tier A kanonik ANF kapı-yapısı kanıtı
Sayısal tolerans
Kesin yapısal kanıt; kayan nokta toleransı yok
Unitarity
Doğrulandı
Diagonality
Bu oracle türü için uygulanamaz
Ancilla restorasyonu
Ancilla bildirilmediği için restorasyon koşulu boş kümede sağlanıyor
Kaynak hash'i
a0833277c6a41758
Artefakt bütünlüğü
e77c967367830930

Derlenmiş kaynaklar ve backend'ler

Tahsis edilen kübit
4
Genişletilmiş kapı
2
Genişletilmiş derinlik
2
Statevector
Uygun
Stabilizer
Uygun

Algoritma önkoşulları

Deutsch–Jozsa
Balanced promise
Bernstein–Vazirani
Uygun
Grover
Tip uyumsuz

Adapter sınırı kapalı kalır

0.2 sözleşmesi yalnız gelecekteki tek yönlü XorOracle<N,1> → PhaseOracle<N> adapter'ını tanımlar. Çok çıkışlı XOR ve ters phase-to-XOR dönüşümü bu adapter alanının dışındadır; geçerli tek çıkış yolu da statik isim, açık MinusAncilla<1>, restorasyon kanıtı ve Tier B doğrulaması gerektirir.

XorOracle<N,1> -> PhaseOracle<N> · NM-RFC-0010 section 23.5

Derleyici-doğrulamalı ayrık artefakt

Kanonik affine GF(2) normal biçimi.

fnv1a32:084e0afc
f[0] = x[0] xor x[2]

Kesin affine vektör doğruluk tablosu

8 satırın ve her çıkış bitinin tümü kanonik affine ifadelerden türetilir; sezgisel sentez değildir.

xf(x)
0000
0011
0100
0111
1001
1010
1101
1110
Üretilen isimli-oracle kaynağını incele
module visual_affine_xor_3_1;
@target("browser-stabilizer");

xor_oracle visual_constraint(x: QReg<3>, out: QReg<1>) {
  CNOT(x[0], out[0]);
  CNOT(x[2], out[0]);
}

algorithm apply_visual<const N: Int, const M: Int>(
  x: QReg<N>,
  out: QReg<M>,
  oracle f: XorOracle<N, M>
) {
  f(x, out);
}

fn main() {
  let x: QReg<3> = qreg[3];
  let out: QReg<1> = qreg[1];
  apply_visual<3, 1>(x, out, oracle: visual_constraint);
}

Bu generic oracle kaynağı Deney Stüdyosuna yalnız inceleme bağlamı olarak aktarılır. Workspace'e kaydetmek Studio'da yürütme desteği eklemez. Kaynağı çalıştırmak için Playground bağlantısını kullanın.

Bu yüzeyin RFC yol haritası

Bu kartlar planlanan programları gösterir. Öneri durumundaki bir RFC, çalıştırılabilir özellik veya uygulama onayı değildir.

NM-RFC-0034ÖneriUygulama kilitli

Statik XOR'dan faz oracle'ına adaptörler

Önerilen aktivasyon
experimental.oracleAdapters=true