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 Tableau-style TableauSimulator for Clifford+T circuits that supports control flow through external control.

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::MeasureResult;
pub use crate::tableau_simulator::SimError;
pub use crate::tableau_simulator::TableauSimulator;

Modules§

tableau_simulator
Stabilizer-frame Clifford+T simulator.

Structs§

Circuit
A parsed .ticit circuit ready to compile for batch sampling.
PauliString
A Pauli operator on nqubits qubits, with a two-bit phase exponent of i.
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§

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.