Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Renmusxd/RustQIP
/ functions
Functions
293 in github.com/Renmusxd/RustQIP
⨍
Functions
293
◇
Types & classes
41
↓ 77 callers
Function
from_reals
Make a vector of complex numbers whose reals are given by `data`
qip/src/state_ops/matrix_ops.rs:204
↓ 53 callers
Method
into_iter
(self)
qip/src/macros/program.rs:49
↓ 50 callers
Method
n
(&self)
qip/src/builder.rs:71
↓ 34 callers
Function
apply_op
Apply `op` to the `input`, adding the results to `output`. If either start at a nonzero state index in their 0th index, use `input/output_offset`.
qip-iterators/src/matrix_ops.rs:98
↓ 24 callers
Function
make_matrix_op
Make a Matrix MatrixOp
qip/src/state_ops/matrix_ops.rs:12
↓ 19 callers
Method
apply_circuit_object
( &mut self, r: Self::Register, c: Self::CircuitObject, )
qip/src/builder.rs:376
↓ 17 callers
Method
merge_registers
Merge multiple registers together into a single register, returns None if none given.
qip/src/builder_traits.rs:94
↓ 17 callers
Method
merge_two_registers
(&mut self, r1: Self::Register, r2: Self::Register)
qip/src/builder.rs:341
↓ 17 callers
Method
next
(&mut self)
qip-iterators/src/iterators/qubit_iterators.rs:40
↓ 16 callers
Method
toffoli
Applies NOT to `r` if all qubits in `cr` are `1`.
qip/src/builder_traits.rs:541
↓ 15 callers
Method
cnot
Create and apply a CNOT gate circuit object.
qip/src/builder_traits.rs:425
↓ 15 callers
Method
split_all_register
Split the register into `r.n()` individual registers of 1 qubit each.
qip/src/builder_traits.rs:131
↓ 14 callers
Method
h
Create and apply an H gate circuit object.
qip/src/builder_traits.rs:398
↓ 13 callers
Method
register
(&mut self, n: NonZeroUsize)
qip/src/builder.rs:334
↓ 13 callers
Method
return_zeroed_temp_register
(&mut self, r: Self::Register)
qip/src/builder.rs:585
↓ 8 callers
Function
make_op_flat_matrix
(n: usize, op: &MatrixOp<P>)
qip-iterators/src/matrix_ops.rs:245
↓ 8 callers
Method
split_register_relative
( &mut self, r: Self::Register, indices: It, )
qip/src/builder.rs:345
↓ 7 callers
Function
apply_ops
Apply `ops` to the `input`, adding the results to `output`. If either start at a nonzero state index in their 0th index, use `input/output_offset`. Th
qip-iterators/src/matrix_ops.rs:158
↓ 7 callers
Method
make_zeroed_temp_qubit
(&mut self)
qip/src/builder.rs:577
↓ 7 callers
Method
make_zeroed_temp_register
Make a register of multiple qubits, initialized to zero.
qip/src/builder_traits.rs:490
↓ 7 callers
Method
split_last_qubit
Similar to [split_first_qubit] but the last qubit.
qip/src/builder_traits.rs:146
↓ 6 callers
Function
flip_bits
(n: usize, num: usize)
qip-iterators/src/utils.rs:22
↓ 6 callers
Function
for_each_q
(indices: &[usize], out: &mut String, gate: &str)
qip/src/qasm.rs:186
↓ 6 callers
Function
make_control_op
Make a Control MatrixOp
qip/src/state_ops/matrix_ops.rs:103
↓ 6 callers
Function
ndarray_kron_helper
(before: usize, mut mat: Array2<P>, after: usize)
qip-iterators/src/matrix_ops.rs:257
↓ 6 callers
Method
t
Create and apply a T gate circuit object.
qip/src/builder_traits.rs:403
↓ 5 callers
Method
rz
(&mut self, r: Self::Register, theta: P)
qip/src/builder.rs:639
↓ 5 callers
Method
s
Create and apply an S gate circuit object.
qip/src/builder_traits.rs:414
↓ 5 callers
Method
to_openqasm
(&self)
qip/src/qasm.rs:28
↓ 4 callers
Function
get_bit
(num: usize, bit_index: usize)
qip-iterators/src/utils.rs:55
↓ 4 callers
Function
get_flat_index
(nindices: usize, i: usize, j: usize)
qip-iterators/src/utils.rs:5
↓ 4 callers
Function
get_index
Get the `i`th qubit index for `op`
qip-iterators/src/matrix_ops.rs:33
↓ 4 callers
Function
make_ops_matrix
Make the full op matrix from `ops`. Not very efficient, use only for debugging.
qip/benches/state_bench.rs:10
↓ 4 callers
Function
measure_prob
Calculate the probability of a given measurement. `measured` gives the bits (as a usize) which has been measured from the qubits at `indices` in the o
qip/src/state_ops/measurement_ops.rs:44
↓ 4 callers
Method
num_indices
Get the number of indices represented by `op`
qip-iterators/src/iterators/ops.rs:24
↓ 4 callers
Method
s_dagger
Create and apply an S^\dagger gate circuit object.
qip/src/builder_traits.rs:419
↓ 4 callers
Function
set_bit
(num: usize, bit_index: usize, value: bool)
qip-iterators/src/utils.rs:37
↓ 3 callers
Function
apply_op_row_indices
Compute vector element at a given row from op applied to input.
qip-iterators/src/matrix_ops.rs:62
↓ 3 callers
Function
hash_p
(f: P, state: &mut H)
qip/src/builder.rs:223
↓ 3 callers
Method
measure
(&mut self, r: Self::Register)
qip/src/builder.rs:602
↓ 3 callers
Function
measure_state
Normalize the output state such that it matches only states which produce the `measured` result and has the same magnitude. This is done by zeroing ou
qip/src/state_ops/measurement_ops.rs:220
↓ 3 callers
Method
qubit
Construct a single qubit.
qip/src/builder_traits.rs:73
↓ 3 callers
Method
qudit
Construct a register with multiple qubits. Fails if n=0.
qip/src/builder_traits.rs:78
↓ 3 callers
Method
rz_ratio
Rotate around z.
qip/src/builder_traits.rs:590
↓ 3 callers
Method
swap
Apply the SWAP gate to a pair of registers of equal sizes.
qip/src/builder_traits.rs:454
↓ 3 callers
Method
t_dagger
Create and apply a T^\dagger gate circuit object.
qip/src/builder_traits.rs:408
↓ 2 callers
Method
apply_global_phase
Applies a phase to a qubit. This has no effect by default but has an impact if conditioned.
qip/src/builder.rs:32
↓ 2 callers
Method
apply_global_phase_ratio
Applied a global phase to a qubit, expressed as a ratio rather than a float.
qip/src/builder.rs:43
↓ 2 callers
Function
apply_pipeline_objects
( cb: &mut CB, sc: CB::Subcircuit, r: CB::Register, )
qip/src/builder.rs:877
↓ 2 callers
Function
approx_eq
(a: &[Complex<f64>], b: &[Complex<f64>], prec: i32)
qip/src/state_ops/measurement_ops.rs:283
↓ 2 callers
Method
calculate_state_with_init
(&mut self, it: It)
qip/src/builder.rs:400
↓ 2 callers
Method
condition_with
Construct a new circuitbuilder which conditions all unitaries with `cr`.
qip/src/conditioning.rs:22
↓ 2 callers
Method
dissolve
Dissolve the Conditioned circuit builder and retrieve the conditioning register.
qip/src/conditioning.rs:43
↓ 2 callers
Function
from_reals
Make a vector of complex numbers whose reals are given by `data`
qip-iterators/src/iterators/qubit_iterators.rs:280
↓ 2 callers
Function
full_to_sub
Get the index for a submatrix indexed by `indices` given the `full_index` for the larger 2^n by 2^n matrix.
qip-iterators/src/matrix_ops.rs:12
↓ 2 callers
Method
indices
(&self)
qip/src/builder.rs:75
↓ 2 callers
Method
make_cnot
(&self)
qip/src/builder.rs:568
↓ 2 callers
Method
make_h
(&self)
qip/src/builder.rs:550
↓ 2 callers
Function
make_sparse_matrix_op
Make a SparseMatrix MatrixOp from a vector of rows (with `(column, value)`). natural_order indicates that the lowest indexed qubit is the least signif
qip/src/state_ops/matrix_ops.rs:32
↓ 2 callers
Method
make_subcircuit
(&self)
qip/src/builder.rs:831
↓ 2 callers
Function
measure_probs
Get probability for each possible measurement of `indices` on `input`.
qip/src/state_ops/measurement_ops.rs:115
↓ 2 callers
Method
merge_two_registers
(&mut self, r1: Self::Register, r2: Self::Register)
qip/src/conditioning.rs:61
↓ 2 callers
Method
n
(&self)
qip/src/conditioning.rs:53
↓ 2 callers
Method
not
Create and apply an NOT (or X) gate circuit object.
qip/src/builder_traits.rs:378
↓ 2 callers
Method
object
Returns the inner circuit object.
qip/src/builder.rs:115
↓ 2 callers
Function
round
(c: Complex<f64>)
qip/src/state_ops/measurement_ops.rs:276
↓ 2 callers
Method
ry_pi_by
(&mut self, r: Self::Register, m: i64)
qip/src/conditioning.rs:165
↓ 2 callers
Method
rz_pi_by
(&mut self, r: Self::Register, m: i64)
qip/src/builder.rs:648
↓ 2 callers
Method
rz_ratio
(&mut self, r: Self::Register, theta: Rational64)
qip/src/conditioning.rs:145
↓ 2 callers
Method
split_register_relative
( &mut self, r: Self::Register, indices: It, )
qip/src/conditioning.rs:65
↓ 2 callers
Function
split_vector_at
(mut v: Vec<T>, x: usize)
qip/src/builder.rs:817
↓ 2 callers
Function
sub_to_full
Given the `sub_index` for the submatrix, and a base to overwrite values, get the full index for the 2^n by 2^n matrix.
qip-iterators/src/matrix_ops.rs:24
↓ 1 callers
Function
act_on_control_iterator
( row: usize, op: &MatrixOp<P>, n_control_indices: usize, n_op_indices: usize, f: F, )
qip-iterators/src/iterators/iterator_mapper.rs:66
↓ 1 callers
Function
act_on_iterator
Apply function f to the iterator for `op`, return result.
qip-iterators/src/iterators/iterator_mapper.rs:48
↓ 1 callers
Method
apply_conditioned_subcircuit
( &mut self, sc: Self::Subcircuit, cr: Self::Register, r: Self::Register,
qip/src/conditioning.rs:256
↓ 1 callers
Method
apply_inverted_subcircuit
Apply the inverted subcircuit to a register.
qip/src/inverter.rs:36
↓ 1 callers
Function
apply_op_overwrite
Apply `op` to the `input`, adding the results to `output`. If either start at a nonzero state index in their 0th index, use `input/output_offset`.
qip-iterators/src/matrix_ops.rs:127
↓ 1 callers
Method
apply_subcircuit
( &mut self, sc: Self::Subcircuit, r: Self::Register, )
qip/src/builder.rs:835
↓ 1 callers
Method
basic_toffoli
Applies a NOT gate to `r` for the two qubit control state `cr = 11`.
qip/src/builder_traits.rs:505
↓ 1 callers
Method
calculate_state
Calculate the quantum state at the end of the circuit, using |0> as input.
qip/src/builder_traits.rs:212
↓ 1 callers
Function
conj_op
Get conjugate of op.
qip/src/state_ops/matrix_ops.rs:157
↓ 1 callers
Function
emit_unitary
( u: &UnitaryMatrixObject<P>, indices: &[usize], out: &mut String, )
qip/src/qasm.rs:112
↓ 1 callers
Function
extract_bits
(num: usize, indices: &[usize])
qip/src/utils.rs:55
↓ 1 callers
Function
fold_for_op_cols
Fold across rows hitting nonzero columns.
qip-iterators/src/iterators/iterator_mapper.rs:34
↓ 1 callers
Function
format_angle
(rot: &RotationObject<P>)
qip/src/qasm.rs:192
↓ 1 callers
Method
hash
(&self, state: &mut H)
qip/src/builder.rs:228
↓ 1 callers
Method
indices
Get the indices acted on by this op
qip-iterators/src/iterators/ops.rs:39
↓ 1 callers
Function
invert_circuit_object
( co: BuilderCircuitObject<P>, )
qip/src/builder.rs:923
↓ 1 callers
Function
inverter_args
Invert the circuit made by `f` using arguments `t`. Apply the inverted circuit to registers `rs` using circuitbuilder `cb`.
qip/src/inverter.rs:48
↓ 1 callers
Method
make_cnot
Make a circuit object representing the CNOT gate on a pair of qubits Equivalent to calling `matrix_to_circuitobject` with \[ I, 0, 0, X \] where I is
qip/src/builder_traits.rs:371
↓ 1 callers
Method
make_h
Make a circuit object representing the H gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[1, 1, 1, -1\]/sqrt(2)
qip/src/builder_traits.rs:335
↓ 1 callers
Function
make_ones_mat
(n: usize)
qip-iterators/benches/matmul_bench.rs:77
↓ 1 callers
Function
make_op_matrix
Make the full op matrix from `ops`. Not very efficient, use only for debugging.
qip-iterators/src/matrix_ops.rs:229
↓ 1 callers
Method
make_s
Make a circuit object representing the S (phase) gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[1, 0, 0, -i\]
qip/src/builder_traits.rs:342
↓ 1 callers
Function
make_swap_op
Make a Swap MatrixOp
qip/src/state_ops/matrix_ops.rs:84
↓ 1 callers
Method
make_t
Make a circuit object representing the T gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[1, 0, 0, e^{i pi / 4} \]
qip/src/builder_traits.rs:356
↓ 1 callers
Method
make_x
Make a circuit object representing the X gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[0, 1, 1, 0\]
qip/src/builder_traits.rs:293
↓ 1 callers
Method
make_y
Make a circuit object representing the Y gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[0, -i, i, 0\]
qip/src/builder_traits.rs:307
↓ 1 callers
Method
make_z
Make a circuit object representing the Z gate on a single qubit. Equivalent to calling `matrix_to_circuitobject` with \[1, 0, 0, -1\]
qip/src/builder_traits.rs:321
↓ 1 callers
Function
measure
Selects a measured state from `input`, then calls `measure_state` to manipulate the output. Returns the measured state and probability.
qip/src/state_ops/measurement_ops.rs:190
next →
1–100 of 293, ranked by callers