Skip to content

Repository files navigation

Frost ❄️

Frost is a Zig library and application for converting between Conjunctive Normal Form (CNF, sometimes also Clausal Normal Form) and SAT formats. It supports conversion to and from DIMACS CNF and DIMACS SAT formats, and provides preprocessing capabilities for SAT solvers.

Installation

Using Zig Package Manager (Library)

Add Frost to your Zig project:

zig fetch --save git+https://github.com/Entze/frost/#HEAD

Then import it in your build.zig:

const frost = b.dependency("frost", .{
    .target = target,
    .optimize = optimize,
});
exe.root_module.addImport("frost", frost.module("frost"));

From Source (Application)

git clone https://github.com/Entze/frost.git
cd frost
zig build
# Executable available at zig-out/bin/frost

For detailed build instructions, cross-compilation, and development setup, see CONTRIBUTING.md.

Usage

Library Usage

const frost = @import("frost");

// API documentation available at https://entze.github.io/frost/
// Examples coming soon as the API stabilizes

For complete library documentation, visit entze.github.io/frost.

Command-Line Usage

# CLI interface is under development
# Usage examples will be added as features are implemented
frost --help

Support

Authors and Acknowledgment

Author: Lukas Grassauer (@Entze)

Acknowledgments

Acknowledgments for influences, inspirations, and resources will be added here.

License

This project is licensed under the GPL-3.0 license.

Project Status

Frost is under active development and currently in draft state. The API is evolving and may change between versions. Contributions and feedback are welcome!

For information on contributing, please see CONTRIBUTING.md.

Development Resources:

About

❄️ frost is a library and application for converting and preprocessing for SAT solvers.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages