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 variabe 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 variabe 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 variabe 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