• Stars
    star
    178
  • Rank 214,989 (Top 5 %)
  • Language
    CSS
  • License
    MIT License
  • Created over 6 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Showcase examples for EPFL logic synthesis libraries

The EPFL Logic Synthesis Libraries (Showcase)

The EPFL logic synthesis libraries are a collection of modular open source C++ libraries for the development of logic synthesis applications. All libraries are well documented and well tested. Being header-only, the libraries can be readily used as core components in complex logic synthesis frameworks. This showcase repository presents several applications in which the libraries are used.

Libraries

alice: C++ command shell library
GitHub | Version 0.3 (July 22, 2018) | Documentation
maintained by Mathias Soeken

bill: C++ reasoning library
GitHub | Version 0.1 (June 2, 2020) | Documentation
maintained by Bruno Schmitt

caterpillar: C++ quantum circuit synthesis library
GitHub | Documentation
maintained by Giulia Meuli

easy: C++ exclusive-or sum-of-product (ESOP) library
GitHub | Documentation
maintained by Heinz Riener

kitty: C++ truth table library
GitHub | Version 0.7 (March 13, 2020) | Documentation
maintained by Mathias Soeken and Siang-Yun (Sonia) Lee

lorina: C++ parsing library
GitHub | Version 0.2 (October 18, 2018) | Documentation
maintained by Heinz Riener

mockturtle: C++ logic network library
GitHub | Version 0.3 (July 12, 2022) | Documentation
maintained by Siang-Yun (Sonia) Lee

percy: C++ exact synthesis library
GitHub Dev | GitHub | Version 0.1.2 (May 12, 2018) | Documentation
maintained by Winston Haaswijk

tweedledum: C++ quantum compilation library
GitHub | Version 1.1.1 (September 8, 2021) | Documentation
maintained by Bruno Schmitt

angel: C++ quantum state preparation library
GitHub | Documentation
maintained by Fereshte Mozafari

Examples

abc: A tiny ABC clone that uses alice for creating the CLI shell

countluts: Count and classify LUT functions in a BENCH file

exactmine: Mine optimum Boolean networks from truth tables

External projects using the EPFL Logic Synthesis Libraries

LSOracle (University of Utah, UT, USA)

fiction (Marcel Walter, Universität Bremen, Germany)

ropper (Ruan Formigoni, Federal University of Viçosa, Brazil)

NetlistDB (Michal Orsak, Brno University of Technology, Czech Republic)

PandA (Fabrizio Ferrandi, Politecnico di Milano, Italy)

LiveHD (Jose Renau, University of California, Santa Cruz, CA, USA)

staq (SoftwareQ Inc., ON, Canada)

ALSO (Zhufei Chu, Ningbo University, China)

If you are using the EPFL logic synthesis libraries in a project, we'd be happy to hear about it and list your project in this list.

Events

Reference

The EPFL logic synthesis libraries are explained in the paper The EPFL Logic Synthesis Libraries, presented at the International Workshop on Logic Synthesis 2018.

If you use the EPFL logic synthesis libraries in your research work and experimental evaluation, we'd be happy if you cite:

  • Mathias Soeken, Heinz Riener, Winston Haaswijk, and Giovanni De Micheli: “The EPFL Logic Synthesis Libraries”, Int'l Workshop on Logic Synthesis, 2018, pre-print available at arXiv:1805.05121

  • A second revised version (June, 2022) of this work is available at arXiv:1805.05121v3:

@misc{EPFLLibraries,
  author = {Soeken, Mathias and
            Riener, Heinz and
            Haaswijk, Winston and
            Testa, Eleonora and
            Schmitt, Bruno and
            Meuli, Giulia and
            Mozafari, Fereshte and
            Lee, Siang-Yun and
            Tempia Calvino, Alessandro and
            Marakkalage, Dewmini Sudara
            De Micheli, Giovanni},
  title = {The {EPFL} logic synthesis libraries},
  archivePrefix = "arXiv", 
  note = {arXiv:1805.05121v3},
  year = 2022,
  month = jun
}