snark-tool

Snark tool is simple tool for snarks analysis. Snark is cubic graph with girth at least 5 and cyclic edge connectivity at least 4.

Use as library

Include snark-tool in your Cargo project by adding as a dependency to your Cargo.toml configuration file.

toml [dependencies] ... snark-tool = "0.4.0"

Then simply use needed structs or functions in your code.

```rust use crate::graph::undirected::simplegraph::graph::SimpleGraph; use crate::service::io::readerg6::G6Reader;

pub fn readgraph(graphg6: &String) { let graph: SimpleGraph = G6Reader::readgraph(graphg6).unwrap(); } ```

For more examples see examples folder.

Use as binary

At first install cargo. Then install snark-tool.

cargo install snark-tool

To run snark-tool at first we have to define configuration file in YAML format. Here we can specify what we want to do.

```yaml version: 0.1

procedures: - proc-type: read config: file: input-file.g6 graph-format: g6

# means regular 3-edge coloring - proc-type: colour config: colouriser-type: dfs

When we have specified configuration file with name snark-tool.yml we can start snark-tool using terminal command:

snark-tool run snark-tool.yml

For full description of available procedures and its configuration see procedures.md.

License

Licensed under either of

at your option.

To be noted

Package and all its parts are WIP. Package's API can change rapidly from version to version.