Υπολογιστική Μολετανική με Σουνίο
Σουνίο εντασεύεται την θεώρημα της αναπαράστασης της κατά την χρονική συνταση με τιμές δυαδικής μολετανικής: ένα 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
}