Science Workflow

Quantum Computing

Quantum state modeling via Linear Types

Back to Science Hub

Υπολογιστική Μολετανική με Σουνίο

Σουνίο εντασεύεται την θεώρημα της αναπαράστασης της κατά την χρονική συνταση με τιμές δυαδικής μολετανικής: ένα Qubit είναι μολετανικό πρόσωπο που πρέπει να χρησιμοποιηθεί μόνο μία φορά. Επιτυχώς να προσπαθήσεις να αντιγράψεις τον προσωπό προκαλεί συντακτικό σφάλμα.

Μολετανικές Τύποι για Ηλεκτρονικές Ταυτότητες

// Ένας Qubit δεν μπορεί να αντιγράψεται.
// κανόνιες στανδαρτισμένες γωνιόδους (H, X, Y, Z, CNOT) προκαλούν και επιστρέφουν Qubits.

fn apply_hadamard(q: Qubit) -> Qubit {
    // εφαρμόζεται γωνίοδος H ...
}

struct QubitPair { fst: Qubit, snd: Qubit }

fn apply_cnot_pair(control: Qubit, target: Qubit) -> QubitPair {
    // εφαρμόζεται γωνίοδος CNOT ...
}

fn bell_state() -> QubitPair {
    let q1 = allocate_qubit()
    let q2 = allocate_qubit()

    let h1 = apply_hadamard(q1)
    let pair = apply_cnot_pair(h1, q2)

    pair
}