[package]
name = "synor-verifier"
version = "0.1.0"
edition = "2021"
description = "Formal verification DSL for Synor smart contracts"
authors = ["Synor Team"]
license = "MIT"
repository = "https://github.com/synor/blockchain"

[dependencies]
synor-types = { path = "../synor-types" }
synor-crypto = { path = "../synor-crypto" }

# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

# Parsing
pest = "2.7"
pest_derive = "2.7"

# SMT solver integration
z3 = { version = "0.12", features = ["static-link-z3"], optional = true }

# Symbolic execution
bitvec = "1.0"

# Error handling
thiserror = "1.0"
anyhow = "1.0"

# Logging
tracing = "0.1"

# Async
tokio = { version = "1.36", features = ["full"] }

[features]
default = []
z3-backend = ["z3"]

[dev-dependencies]
proptest = "1.4"
