#regex-automata #string #smt #regex #automata

smt-str

Utilities for working with SMT-LIB strings in Rust

2 releases

new 0.1.1 Mar 25, 2025
0.1.0 Mar 24, 2025

#18 in #regex-automata

42 downloads per month

Apache-2.0

375KB
7K SLoC

smt-str

CI

A Rust crate for working with SMT-LIB strings, regular expressions, and automata.

smt-str provides data structures and utilities to parse, manipulate, and reason about strings and regular expressions following the semantics defined in the SMT-LIB theory of strings. It also includes tools for compiling SMT-LIB regular expressions into NFAs.

Installation

Install with cargo add:

cargo add smt-str --features=<features>

By default, no addtional features are enabled. In that case, the crate only provides basic SMT string handling. See below for available features.

Feature Flags

This crate provides several feature flags to enable or disable specific functionality:

Feature Enables
regex Regex construction
automata NFAs, regex-to-NFA compilation, visualization
sampling Random generation of strings from regular expressions or NFAs
full Enables all of the above

Status

This crate is in early development.

Dependencies

~0.6–1.4MB
~25K SLoC