Skip to main content

Crate ticit

Crate ticit 

Source
Expand description

Ticit is a pure-Rust implementation of SymFT with CPU and an experimental CUDA backend utilizing cutile-rs, plus a stim-like procedural TableauSimulator for Clifford + T circuits.

Parse a .ticit circuit, compile a Sampler, then reuse it across any number of sampling calls. DISCARD declarations and SamplerOptions::postselection_mask are combined during compilation.

Re-exports§

pub use crate::tableau_simulator::BatchOutcome;
pub use crate::tableau_simulator::Gate1Q;
pub use crate::tableau_simulator::Instruction;
pub use crate::tableau_simulator::MeasureResult;
pub use crate::tableau_simulator::SimError;
pub use crate::tableau_simulator::TableauSimulator;

Modules§

tableau_simulator
Stabilizer-frame Clifford and Pauli-rotation simulator.

Structs§

Circuit
A parsed, fully flattened .ticit circuit.
MeasurementParity
A parity the noiseless circuit must produce over a set of measurement records.
PauliString
A Pauli operator on nqubits qubits, with a two-bit phase exponent of i.
ReferenceSample
Full noiseless detector and observable parity vectors for a circuit.
SampleCounts
Aggregate outcomes from a batch sampling call.
SampleResult
Row-major shot records, aggregate counts, and timing from one Sampler call.
Sampler
A circuit compiled and buffered for repeated batch sampling.
SamplerInfo
Read-only metadata for a prepared Sampler.
SamplerOptions
Configuration used when compiling a reusable Sampler.
SamplingTiming
Wall and phase timings reported by preparation and sampling.

Enums§

Pauli
A single-qubit Pauli operator.
PauliBasis
A Pauli basis — the non-identity Paulis, as an axis to rotate onto or measure along.
TicitError
Failures exposed by the library.

Functions§

neg
Multiplies by -1.
pauli_identity
Constructs identity on nqubits qubits.
pauli_string
Parses a dense Pauli string such as "IXYZ"; '_' is an alias for 'I' and lowercase is accepted. String position is the qubit index.
pauli_x
Constructs X on qubit q and identity elsewhere.
pauli_y
Constructs Y on qubit q and identity elsewhere.
pauli_z
Constructs Z on qubit q and identity elsewhere.

Type Aliases§

Result
Result type used by ticit’s parsing, preparation, and CPU sampling APIs.