Files
quantum-bridge-mcp/vendor/spinoza/src/consts.rs
T
Vincent Bourdon 9af114e391 Initial import
2026-06-09 16:14:55 +02:00

47 lines
1.2 KiB
Rust

//! Consts for Quantum State Simulation, such as the Pauli Gates and the Hadamard gate
use crate::math::{Amplitude, SQRT_ONE_HALF};
/// The 2 x 2 matrix representation of the Hadamard gate
pub const H: [Amplitude; 4] = [
Amplitude {
re: SQRT_ONE_HALF,
im: 0.0,
},
Amplitude {
re: SQRT_ONE_HALF,
im: 0.0,
},
Amplitude {
re: SQRT_ONE_HALF,
im: 0.0,
},
Amplitude {
re: -SQRT_ONE_HALF,
im: 0.0,
},
];
/// The 2 x 2 matrix representation of the X gate
pub const X: [Amplitude; 4] = [
Amplitude { re: 0.0, im: 0.0 },
Amplitude { re: 1.0, im: 0.0 },
Amplitude { re: 1.0, im: 0.0 },
Amplitude { re: 0.0, im: 0.0 },
];
/// The 2 x 2 matrix representation of the Y gate
pub const Y: [Amplitude; 4] = [
Amplitude { re: 0.0, im: 0.0 },
Amplitude { re: 0.0, im: -1.0 },
Amplitude { re: 0.0, im: 1.0 },
Amplitude { re: 0.0, im: 0.0 },
];
/// The 2 x 2 matrix representation of the Z gate
pub const Z: [Amplitude; 4] = [
Amplitude { re: 1.0, im: 0.0 },
Amplitude { re: 0.0, im: 0.0 },
Amplitude { re: 0.0, im: 0.0 },
Amplitude { re: -1.0, im: 0.0 },
];