|
quid | Qrack::init_count_type (bitLenInt q, bool tn, bool md, bool sd, bool sh, bool bdt, bool pg, bool nw, bool hy, bool oc, bool hp) |
| Options for simulator type in initialization (any set of options theoretically functions together): tn - "Tensor network" layer - JIT local circuit simplification, light-cone optimization md - "Multi-device" (TURN OFF IN SERIAL BUILDS) - distribute Schmidt-decomposed or factorized subsytems to different OpenCL devices. More...
|
|
quid | Qrack::init_count (bitLenInt q, bool dm) |
| "Default optimal" (BQP-complete-targeted) simulator type initialization (with "direct memory" option) More...
|
|
quid | Qrack::init () |
| "Quasi-default constructor" (for an empty simulator) More...
|
|
quid | Qrack::init_clone (quid sid) |
| "Clone" simulator (no-clone theorem does not apply to classical simulation) More...
|
|
quid | Qrack::init_qbdd_count (bitLenInt q) |
| "Default optimal" (BQP-complete-targeted) simulator type initialization (with "direct memory" option) More...
|
|
void | Qrack::destroy (quid sid) |
| "Destroy" or release simulator allocation More...
|
|
void | Qrack::seed (quid sid, unsigned s) |
| "Seed" random number generator (if pseudo-random Mersenne twister is in use) More...
|
|
void | Qrack::set_concurrency (quid sid, unsigned p) |
| Set CPU concurrency (if build isn't serial) More...
|
|
void | Qrack::allocateQubit (quid sid, bitLenInt qid) |
| Allocate new qubit with ID. More...
|
|
bool | Qrack::release (quid sid, bitLenInt q) |
| Release qubit ID. More...
|
|
bitLenInt | Qrack::num_qubits (quid sid) |
| Total count of qubits in simulator instance. More...
|
|
void | Qrack::SetPermutation (quid sid, bitCapInt p) |
| Set bit string permutation eigenstate of simulator instance. More...
|
|
void | Qrack::qstabilizer_out_to_file (quid sid, std::string f) |
| Output stabilizer simulation tableau to file (or raise exception for "get_error()" if incompatible simulator type) More...
|
|
void | Qrack::qstabilizer_in_from_file (quid sid, std::string f) |
| Initialize stabilizer simulation from a tableau file (or raise exception for "get_error()" if incompatible simulator type) More...
|
|
std::vector< real1 > | Qrack::ProbAll (quid sid, std::vector< bitLenInt > q) |
| Get the probabilities of all permutations of the requested subset of qubits. More...
|
|
real1_f | Qrack::Prob (quid sid, bitLenInt q) |
| Z-basis expectation value of qubit. More...
|
|
real1_f | Qrack::ProbRdm (quid sid, bitLenInt q) |
| "Reduced density matrix" Z-basis expectation value of qubit More...
|
|
real1_f | Qrack::PermutationProb (quid sid, std::vector< QubitIndexState > q) |
| Probability of specified (single) permutation of any arbitrary group of qubits. More...
|
|
real1_f | Qrack::PermutationProbRdm (quid sid, std::vector< QubitIndexState > q, bool r) |
| "Reduced density matrix" probability of specified (single) permutation of any arbitrary group of qubits More...
|
|
real1_f | Qrack::PermutationExpectation (quid sid, std::vector< bitLenInt > q) |
| Expectation value for bit-string integer equivalent of specified arbitrary group of qubits. More...
|
|
real1_f | Qrack::PermutationExpectationRdm (quid sid, std::vector< bitLenInt > q, bool r) |
| "Reduced density matrix" expectation value for bit-string integer equivalent of specified arbitrary group of qubits More...
|
|
real1_f | Qrack::FactorizedExpectation (quid sid, std::vector< QubitIntegerExpVar > q) |
| Expectation value for bit-string integer from group of qubits with per-qubit integer expectation value. More...
|
|
real1_f | Qrack::FactorizedExpectationRdm (quid sid, std::vector< QubitIntegerExpVar > q, bool r) |
| "Reduced density matrix" Expectation value for bit-string integer from group of qubits with per-qubit integer expectation value More...
|
|
real1_f | Qrack::FactorizedExpectationFp (quid sid, std::vector< QubitRealExpVar > q) |
| Expectation value for bit-string integer from group of qubits with per-qubit real1 expectation value. More...
|
|
real1_f | Qrack::FactorizedExpectationFpRdm (quid sid, std::vector< QubitRealExpVar > q, bool r) |
| "Reduced density matrix" Expectation value for bit-string integer from group of qubits with per-qubit real1 expectation value More...
|
|
real1_f | Qrack::UnitaryExpectation (quid sid, std::vector< QubitU3Basis > q) |
| Get the single-qubit (3-parameter) operator expectation value for the array of qubits and bases. More...
|
|
real1_f | Qrack::MatrixExpectation (quid sid, std::vector< QubitMatrixBasis > q) |
| Get the single-qubit (2x2) operator expectation value for the array of qubits and bases. More...
|
|
real1_f | Qrack::UnitaryExpectationEigenVal (quid sid, std::vector< QubitU3BasisEigenVal > q) |
| Get the single-qubit (3-parameter) operator expectation value for the array of qubits and bases. More...
|
|
real1_f | Qrack::MatrixExpectationEigenVal (quid sid, std::vector< QubitMatrixBasisEigenVal > q) |
| Get the single-qubit (2x2) operator expectation value for the array of qubits and bases. More...
|
|
real1_f | Qrack::PauliExpectation (quid sid, std::vector< QubitPauliBasis > q) |
| Pauli operator expectation value for the array of qubits and bases. More...
|
|
real1_f | Qrack::Variance (quid sid, std::vector< bitLenInt > q) |
| Variance for bit-string integer equivalent of specified arbitrary group of qubits. More...
|
|
real1_f | Qrack::VarianceRdm (quid sid, std::vector< bitLenInt > q, bool r) |
| "Reduced density matrix" variance for bit-string integer equivalent of specified arbitrary group of qubits More...
|
|
real1_f | Qrack::FactorizedVariance (quid sid, std::vector< QubitIntegerExpVar > q) |
| Variance for bit-string integer from group of qubits with per-qubit integer variance. More...
|
|
real1_f | Qrack::FactorizedVarianceRdm (quid sid, std::vector< QubitIntegerExpVar > q, bool r) |
| "Reduced density matrix" variance for bit-string integer from group of qubits with per-qubit integer variance More...
|
|
real1_f | Qrack::FactorizedVarianceFp (quid sid, std::vector< QubitRealExpVar > q) |
| Variance for bit-string integer from group of qubits with per-qubit real1 variance. More...
|
|
real1_f | Qrack::FactorizedVarianceFpRdm (quid sid, std::vector< QubitRealExpVar > q, bool r) |
| "Reduced density matrix" variance for bit-string integer from group of qubits with per-qubit real1 variance More...
|
|
real1_f | Qrack::UnitaryVariance (quid sid, std::vector< QubitU3Basis > q) |
| Get the single-qubit (3-parameter) operator variance for the array of qubits and bases. More...
|
|
real1_f | Qrack::MatrixVariance (quid sid, std::vector< QubitMatrixBasis > q) |
| Get the single-qubit (2x2) operator variance for the array of qubits and bases. More...
|
|
real1_f | Qrack::UnitaryVarianceEigenVal (quid sid, std::vector< QubitU3BasisEigenVal > q) |
| Get the single-qubit (3-parameter) operator variance for the array of qubits and bases. More...
|
|
real1_f | Qrack::MatrixVarianceEigenVal (quid sid, std::vector< QubitMatrixBasisEigenVal > q) |
| Get the single-qubit (2x2) operator variance for the array of qubits and bases. More...
|
|
real1_f | Qrack::PauliVariance (quid sid, std::vector< QubitPauliBasis > q) |
| Pauli operator variance for the array of qubits and bases. More...
|
|
size_t | Qrack::random_choice (quid sid, std::vector< real1 > p) |
| Select from a distribution of "p.size()" count of elements according to the discrete probabilities in "p.". More...
|
|
void | Qrack::PhaseParity (quid sid, real1_f lambda, std::vector< bitLenInt > q) |
| Applies e^(i*angle) phase factor to all combinations of bits with odd parity, based upon permutations of qubits. More...
|
|
void | Qrack::PhaseRootN (quid sid, bitLenInt p, std::vector< bitLenInt > q) |
| Applies a -2 * PI_R1 / (2^N) phase rotation to each qubit. More...
|
|
real1_f | Qrack::JointEnsembleProbability (quid sid, std::vector< QubitPauliBasis > q) |
| Overall probability of any odd permutation of the masked set of bits. More...
|
|
bool | Qrack::M (quid sid, bitLenInt q) |
| Measure single qubit (according to Born rules) and return the result. More...
|
|
bool | Qrack::ForceM (quid sid, bitLenInt q, bool r) |
| (PSEUDO-QUANTUM:) Force measurement result of single qubit (and return the result) More...
|
|
bool | Qrack::Measure (quid sid, std::vector< QubitPauliBasis > q) |
| Each in its specified Pauli basis, collapse an ensemble of qubits jointly via measurement. More...
|
|
bitCapInt | Qrack::MAll (quid sid) |
| Measure all qubits (according to Born rules) and return the result as a bit string (integer). More...
|
|
std::vector< long long unsigned int > | Qrack::MeasureShots (quid sid, std::vector< bitLenInt > q, unsigned s) |
| Repeat (Z-basis) measurement of a set of qubits for a count of "shots" (without collapsing the simulator) More...
|
|
void | Qrack::ResetAll (quid sid) |
| Set simulator to |0> permutation state. More...
|
|
void | Qrack::X (quid sid, bitLenInt q) |
| (External API) "X" Gate More...
|
|
void | Qrack::Y (quid sid, bitLenInt q) |
| (External API) "Y" Gate More...
|
|
void | Qrack::Z (quid sid, bitLenInt q) |
| (External API) "Z" Gate More...
|
|
void | Qrack::H (quid sid, bitLenInt q) |
| (External API) Walsh-Hadamard transform applied for simulator ID and qubit ID More...
|
|
void | Qrack::S (quid sid, bitLenInt q) |
| (External API) "S" Gate More...
|
|
void | Qrack::SX (quid sid, bitLenInt q) |
| (External API) Square root of X gate More...
|
|
void | Qrack::SY (quid sid, bitLenInt q) |
| (External API) Square root of Y gate More...
|
|
void | Qrack::T (quid sid, bitLenInt q) |
| (External API) "T" Gate More...
|
|
void | Qrack::AdjS (quid sid, bitLenInt q) |
| (External API) Inverse "S" Gate More...
|
|
void | Qrack::AdjSX (quid sid, bitLenInt q) |
| (External API) Inverse square root of X gate More...
|
|
void | Qrack::AdjSY (quid sid, bitLenInt q) |
| (External API) Inverse square root of Y gate More...
|
|
void | Qrack::AdjT (quid sid, bitLenInt q) |
| (External API) Inverse "T" Gate More...
|
|
void | Qrack::U (quid sid, bitLenInt q, real1_f theta, real1_f phi, real1_f lambda) |
| (External API) 3-parameter unitary gate More...
|
|
void | Qrack::Mtrx (quid sid, std::vector< complex > m, bitLenInt q) |
| (External API) 2x2 complex matrix unitary gate More...
|
|
void | Qrack::MCX (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "X" Gate More...
|
|
void | Qrack::MCY (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "Y" Gate More...
|
|
void | Qrack::MCZ (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "Z" Gate More...
|
|
void | Qrack::MCH (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "H" Gate More...
|
|
void | Qrack::MCS (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "S" Gate More...
|
|
void | Qrack::MCT (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled "T" Gate More...
|
|
void | Qrack::MCAdjS (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled Inverse "S" Gate More...
|
|
void | Qrack::MCAdjT (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) Controlled Inverse "T" Gate More...
|
|
void | Qrack::MCU (quid sid, std::vector< bitLenInt > c, bitLenInt q, real1_f theta, real1_f phi, real1_f lambda) |
| (External API) Controlled 3-parameter unitary gate More...
|
|
void | Qrack::MCMtrx (quid sid, std::vector< bitLenInt > c, std::vector< complex > m, bitLenInt q) |
| (External API) Controlled 2x2 complex matrix unitary gate More...
|
|
void | Qrack::MACX (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "X" Gate More...
|
|
void | Qrack::MACY (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "Y" Gate More...
|
|
void | Qrack::MACZ (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "Z" Gate More...
|
|
void | Qrack::MACH (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "H" Gate More...
|
|
void | Qrack::MACS (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "S" Gate More...
|
|
void | Qrack::MACT (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled "T" Gate More...
|
|
void | Qrack::MACAdjS (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled Inverse "S" Gate More...
|
|
void | Qrack::MACAdjT (quid sid, std::vector< bitLenInt > c, bitLenInt q) |
| (External API) "Anti-"Controlled Inverse "T" Gate More...
|
|
void | Qrack::MACU (quid sid, std::vector< bitLenInt > c, bitLenInt q, real1_f theta, real1_f phi, real1_f lambda) |
| (External API) Controlled 3-parameter unitary gate More...
|
|
void | Qrack::MACMtrx (quid sid, std::vector< bitLenInt > c, std::vector< complex > m, bitLenInt q) |
| (External API) Controlled 2x2 complex matrix unitary gate More...
|
|
void | Qrack::UCMtrx (quid sid, std::vector< bitLenInt > c, std::vector< complex > m, bitLenInt q, bitCapIntOcl p) |
| Multi-controlled gate that activates only for the specified permutation of controls, "p". More...
|
|
void | Qrack::Multiplex1Mtrx (quid sid, std::vector< bitLenInt > c, bitLenInt q, std::vector< complex > m) |
| Multi-controlled, single-target multiplexer gate. More...
|
|
void | Qrack::MX (quid sid, std::vector< bitLenInt > q) |
| (External API) Multiple "X" Gate More...
|
|
void | Qrack::MY (quid sid, std::vector< bitLenInt > q) |
| (External API) Multiple "Y" Gate More...
|
|
void | Qrack::MZ (quid sid, std::vector< bitLenInt > q) |
| (External API) Multiple "Z" Gate More...
|
|
void | Qrack::R (quid sid, real1_f phi, QubitPauliBasis q) |
| (External API) Rotation around Pauli axes More...
|
|
void | Qrack::MCR (quid sid, real1_f phi, std::vector< bitLenInt > c, QubitPauliBasis q) |
| (External API) Controlled rotation around Pauli axes More...
|
|
void | Qrack::Exp (quid sid, real1_f phi, std::vector< QubitPauliBasis > q) |
| (External API) Exponentiation of Pauli operators More...
|
|
void | Qrack::MCExp (quid sid, real1_f phi, std::vector< bitLenInt > cs, std::vector< QubitPauliBasis > q) |
| (External API) Controlled exponentiation of Pauli operators More...
|
|
void | Qrack::SWAP (quid sid, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::ISWAP (quid sid, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::AdjISWAP (quid sid, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::FSim (quid sid, real1_f theta, real1_f phi, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::CSWAP (quid sid, std::vector< bitLenInt > c, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::ACSWAP (quid sid, std::vector< bitLenInt > c, bitLenInt qi1, bitLenInt qi2) |
|
void | Qrack::Compose (quid sid1, quid sid2, std::vector< bitLenInt > q) |
|
quid | Qrack::Decompose (quid sid, std::vector< bitLenInt > q) |
|
void | Qrack::Dispose (quid sid, std::vector< bitLenInt > q) |
|
void | Qrack::AND (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::OR (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::XOR (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::NAND (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::NOR (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::XNOR (quid sid, bitLenInt qi1, bitLenInt qi2, bitLenInt qo) |
|
void | Qrack::CLAND (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::CLOR (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::CLXOR (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::CLNAND (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::CLNOR (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::CLXNOR (quid sid, bool ci, bitLenInt qi, bitLenInt qo) |
|
void | Qrack::QFT (quid sid, std::vector< bitLenInt > q) |
| Quantum Fourier Transform. More...
|
|
void | Qrack::IQFT (quid sid, std::vector< bitLenInt > q) |
| (Inverse) Quantum Fourier Transform More...
|
|
void | Qrack::ADD (quid sid, bitCapInt a, std::vector< bitLenInt > q) |
|
void | Qrack::SUB (quid sid, bitCapInt a, std::vector< bitLenInt > q) |
|
void | Qrack::ADDS (quid sid, bitCapInt a, bitLenInt s, std::vector< bitLenInt > q) |
|
void | Qrack::SUBS (quid sid, bitCapInt a, bitLenInt s, std::vector< bitLenInt > q) |
|
void | Qrack::MCADD (quid sid, bitCapInt a, std::vector< bitLenInt > c, std::vector< bitLenInt > q) |
|
void | Qrack::MCSUB (quid sid, bitCapInt a, std::vector< bitLenInt > c, std::vector< bitLenInt > q) |
|
void | Qrack::MUL (quid sid, bitCapInt a, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::DIV (quid sid, bitCapInt a, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MULN (quid sid, bitCapInt a, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::DIVN (quid sid, bitCapInt a, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::POWN (quid sid, bitCapInt a, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MCMUL (quid sid, bitCapInt a, std::vector< bitLenInt > c, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MCDIV (quid sid, bitCapInt a, std::vector< bitLenInt > c, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MCMULN (quid sid, bitCapInt a, std::vector< bitLenInt > c, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MCDIVN (quid sid, bitCapInt a, std::vector< bitLenInt > c, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
void | Qrack::MCPOWN (quid sid, bitCapInt a, std::vector< bitLenInt > c, bitCapInt m, std::vector< bitLenInt > q, std::vector< bitLenInt > o) |
|
bool | Qrack::TrySeparate1Qb (quid sid, bitLenInt qi1) |
| Try to factorize a single-qubit subsystem out of "bulk" simulator state. More...
|
|
bool | Qrack::TrySeparate2Qb (quid sid, bitLenInt qi1, bitLenInt qi2) |
| Try to factorize a two-qubit subsystem out of "bulk" simulator state. More...
|
|
bool | Qrack::TrySeparateTol (quid sid, std::vector< bitLenInt > q, real1_f tol) |
| Try to factorize a qubit subsystem out of "bulk" simulator state. More...
|
|
void | Qrack::Separate (quid sid, std::vector< bitLenInt > q) |
| Force (inexact) factorization of qubit subsystem out of "bulk" simulator state. More...
|
|
double | Qrack::GetUnitaryFidelity (quid sid) |
| Report fidelity for "Schmidt decomposition rounding parameter" (SDRP) and "near-Clifford rounding". More...
|
|
void | Qrack::ResetUnitaryFidelity (quid sid) |
| Reset fidelity to 1 for "Schmidt decomposition rounding parameter" (SDRP) and "near-Clifford rounding". More...
|
|
void | Qrack::SetSdrp (quid sid, double sdrp) |
| Set "Schmidt decomposition rounding parameter" (SDRP) value (see https://arxiv.org/abs/2304.14969) More...
|
|
void | Qrack::SetNcrp (quid sid, double sdrp) |
| Set "Near-Clifford rounding parameter". More...
|
|
void | Qrack::SetReactiveSeparate (quid sid, bool irs) |
| Turn off/on "reactive separation" feature (for less/more aggressive automatic state factorization) More...
|
|
void | Qrack::SetTInjection (quid sid, bool iti) |
| Turn off/on "T-injection" feature (for "near-Clifford" simulation with RZ gates) More...
|
|
void | Qrack::SetNoiseParameter (quid sid, double np) |
| Set noise parameter (for QInterfaceNoisy) More...
|
|
void | Qrack::Normalize (quid sid) |
| Normalize the state (which should never be necessary unless Decompose() is "abused") More...
|
|
quid | Qrack::init_qneuron (quid sid, std::vector< bitLenInt > c, bitLenInt q, QNeuronActivationFn f, real1_f a, real1_f tol) |
| Initialize a "quantum neuron" that takes a list of qubit "controls" for input and acts on a single "target" output qubit. More...
|
|
quid | Qrack::clone_qneuron (quid nid) |
| "Clone" a quantum neuron (which is a classical state) More...
|
|
void | Qrack::destroy_qneuron (quid nid) |
| "Destroy" or release simulator allocation More...
|
|
void | Qrack::set_qneuron_angles (quid nid, std::vector< real1 > angles) |
| Set the (RY-rotation) angle parameters for each permutation of quantum neuron input qubits. More...
|
|
std::vector< real1 > | Qrack::get_qneuron_angles (quid nid) |
| Get the (RY-rotation) angle parameters for each permutation of quantum neuron input qubits. More...
|
|
void | Qrack::set_qneuron_alpha (quid nid, real1_f alpha) |
| Set the "leakage" parameter for "leaky" quantum neuron activation functions. More...
|
|
real1_f | Qrack::get_qneuron_alpha (quid nid) |
| Get the "leakage" parameter for "leaky" quantum neuron activation functions. More...
|
|
void | Qrack::set_qneuron_activation_fn (quid nid, QNeuronActivationFn f) |
| Set the activation function for a quantum neuron. More...
|
|
QNeuronActivationFn | Qrack::get_qneuron_activation_fn (quid nid) |
| Get the activation function for a quantum neuron. More...
|
|
real1_f | Qrack::qneuron_predict (quid nid, bool e, bool r) |
| Infer quantum neuron output from inputs (after training) More...
|
|
real1_f | Qrack::qneuron_unpredict (quid nid, bool e) |
| Perform the inverse of quantum neuron inference (for "uncomputation") More...
|
|
real1_f | Qrack::qneuron_learn_cycle (quid nid, bool e) |
| Train a quantum neuron for one epoch, and also uncompute the intermediate side-effects. More...
|
|
void | Qrack::qneuron_learn (quid nid, real1_f eta, bool e, bool r) |
| Train a quantum neuron for one epoh (without uncomputing any intermediate side-effects) More...
|
|
void | Qrack::qneuron_learn_permutation (quid nid, real1_f eta, bool e, bool r) |
| Train a quantum neuron for one epoch, assuming that the input state is a Z-basis eigenstate. More...
|
|
quid | Qrack::init_qcircuit (bool collapse, bool clifford) |
|
quid | Qrack::init_qcircuit_clone (quid cid) |
|
quid | Qrack::qcircuit_inverse (quid cid) |
|
quid | Qrack::qcircuit_past_light_cone (quid cid, std::set< bitLenInt > q) |
|
void | Qrack::destroy_qcircuit (quid cid) |
|
bitLenInt | Qrack::get_qcircuit_qubit_count (quid cid) |
|
void | Qrack::qcircuit_swap (quid cid, bitLenInt q1, bitLenInt q2) |
|
void | Qrack::qcircuit_append_1qb (quid cid, std::vector< complex > m, bitLenInt q) |
|
void | Qrack::qcircuit_append_mc (quid cid, std::vector< complex > m, std::vector< bitLenInt > c, bitLenInt q, bitCapInt p) |
|
void | Qrack::qcircuit_run (quid cid, quid sid) |
|
void | Qrack::qcircuit_out_to_file (quid cid, std::string f) |
|
void | Qrack::qcircuit_in_from_file (quid cid, std::string f) |
|
std::string | Qrack::qcircuit_out_to_string (quid cid) |
|