[package] name = "volute" version = "1.1.5" edition = "2021" authors = ["Gabriel Gouvine "] description = "Boolean functions implementation, represented as lookup tables (LUT) or sum-of-products (SOP)" license = "MIT OR Apache-2.0" keywords = ["boolean", "logic", "LUT", "lookup-table", "truth-table"] repository = "https://github.com/Coloquinte/volute" homepage = "https://github.com/Coloquinte/volute" categories = ["mathematics", "algorithms"] [dependencies] # For random function generation rand = { version = "0.8.5", optional = true } # For optimization using Mixed-Integer-Programming good_lp = { version = "1.7", features = ["highs"], default-features = false, optional = true } # For optimization using SAT solvers rustsat = { version = "0.5.1", optional = true } rustsat-kissat = { version = "0.2.1", optional = true } [features] default = ["rand"] # Generation of random functions rand = ["dep:rand"] # Optimization of function representation using Mixed-Integer-Programming optim-mip = ["dep:good_lp"] # Optimization of function representation using SAT optim-sat = ["dep:rustsat", "dep:rustsat-kissat"] [dev-dependencies] # Benchmarking criterion = "0.5" [[bench]] name = "canonization" harness = false [package.metadata.docs.rs] # Document MIP and SAT optimization all-features = true # Used to enable doc_cfg in nightly rustdoc-args = ["--cfg", "docsrs"]