Shannon and Davio decomposition

Header: mockturtle/algorithms/decomposition.hpp

template<class Ntk, class SynthesisFn = null_resynthesis<Ntk>>
signal<Ntk> mockturtle::shannon_decomposition(Ntk &ntk, kitty::dynamic_truth_table const &func, std::vector<uint32_t> const &vars, std::vector<signal<Ntk>> const &children, SynthesisFn const &resyn = {})

Shannon decomposition.

This function applies Shannon decomposition on an input truth table and constructs a network based. The variable ordering can be specified as an input. If not all variables are specified, the remaining co-factors are synthesizes using the resynthesis function.

Required network functions:

  • create_not

  • create_ite

  • get_constant

template<class Ntk, class SynthesisFn = null_resynthesis<Ntk>>
signal<Ntk> mockturtle::positive_davio_decomposition(Ntk &ntk, kitty::dynamic_truth_table const &func, std::vector<uint32_t> const &vars, std::vector<signal<Ntk>> const &children, SynthesisFn const &resyn = {})

Positive Davio decomposition.

This function applies positive Davio decomposition on an input truth table and constructs a network based. The variable ordering can be specified as an input. If not all variables are specified, the remaining co-factors are synthesizes using the resynthesis function.

Required network functions:

  • create_not

  • create_and

  • create_xor

  • get_constant

template<class Ntk, class SynthesisFn = null_resynthesis<Ntk>>
signal<Ntk> mockturtle::negative_davio_decomposition(Ntk &ntk, kitty::dynamic_truth_table const &func, std::vector<uint32_t> const &vars, std::vector<signal<Ntk>> const &children, SynthesisFn const &resyn = {})

Negative Davio decomposition.

This function applies positive Davio decomposition on an input truth table and constructs a network based. The variable ordering can be specified as an input. If not all variables are specified, the remaining co-factors are synthesizes using the resynthesis function.

Required network functions:

  • create_not

  • create_and

  • create_xor

  • get_constant