\chapter{Auxilary Libraries} The Yosys source distribution contains some auxilary libraries that are bundled with Yosys. \section{SHA1} The files in {\tt libs/sha1/} provide a SHA1 implementation written by Micael Hildenborg \citeweblink{smallsha1}. It is used for generating unique names when specializing parameterized modules. \section{BigInt} The files in {\tt libs/bigint/} provide a library for performing arithmetic with arbitrary length integers. It is written by Matt McCutchen \citeweblink{bigint}. The BigInt library is used for evaluating constant expressions, e.g.~using the {\tt ConstEval} class provided in {\tt kernel/consteval.h}. \section{SubCircuit} \label{sec:SubCircuit} The files in {\tt libs/subcircuit} provide a library for solving the subcircuit isomorphism problem. It is written by Clifford Wolf and based on the Ullmann Subgraph Isomorphism Algorithm \cite{UllmannSubgraphIsomorphism}. It is used by the {\tt extract} pass (see {\tt help extract} or Sec.~\ref{cmd:extract}). \section{ezSAT} The files in {\tt libs/ezsat} provide a library for simplifying generating CNF formulas for SAT solvers. It also contains bindings of MiniSAT. The ezSAT library is written by Clifford Wolf. It is used by the {\tt sat} pass (see {\tt help sat} or Sec.~\ref{cmd:sat}).