Skip to content

Rust implementation of Quine-McCluskey logic functions optimization algorithm.

Notifications You must be signed in to change notification settings

bernardolansing/quine-mccluskey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is a Rust implementation of Quine-McCluskey boolean function optimization algorithm. It takes a truth table and produces a (possibly) minimal expression of its variables using AND, OR and NOT logic gates.

Building

Due to its dependencies, this projects demands to be compiled using nightly channel, which must be installed. Just run cargo +nightly build --release to generate the program executable at directory ./target/release.

Usage

Run quine-mccluskey <path> to execute the optimization over the specified truth table. Note that this table must:

  • have its inputs written as 1s and 0s or Ts and Fs;
  • list them from the least significant line to the most significant one;
  • be formatted as csv.

Check examples at example_tables/.

You can also provide the following arguments:

  • --help or -h to print a help message;
  • --step-by-step to pause the execution at the end of each step, prompting the user to press any key to move on;
  • --dump <path> to write the resulting formula in a txt file.

About

Rust implementation of Quine-McCluskey logic functions optimization algorithm.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages