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.
# rust
git clone https://github.com/inmzhang/ticit.git
cd ticit
cargo build --release
# python
uv sync --project ticit_pycargo install ticitcargo add ticituv add ticitSee the Rust API documentation.
use ticit::{Circuit, SamplerOptions};
let circuit = Circuit::from_text("M 0\nOBSERVABLE_INCLUDE(0) rec[-1]")?;
let mut compiled_sampler = circuit.compile(SamplerOptions::default())?;
let result = compiled_sampler.sample(1_000, false)?;Use sample_with_seed(shots, seed, bit_packed) when reproducible records are
required. Setting bit_packed packs eight record bits into each output byte.
See the Python API reference.
import ticit
compiled_sampler = ticit.Circuit("M 0").compile(backend="cpu")
result = compiled_sampler.sample(shots=1_000, seed=42)See ticit vs SymFT vs Clifft for CPU results and the current GPU benchmark status, methodology, and caveats.
Extensive use of generative AI is an explicit initial goal of this project: to port SymFT's C++ implementation to Rust and experiment with Rust portable SIMD and cuTile-rs. AI tools assist with implementation, review, analysis, benchmarking, and documentation; human contributors make and verify the substantive design, validation, and release decisions.