diff --git a/include/kitty/threshold_identification.hpp b/include/kitty/threshold_identification.hpp old mode 100755 new mode 100644 index 02533d8e..f79ca143 --- a/include/kitty/threshold_identification.hpp +++ b/include/kitty/threshold_identification.hpp @@ -33,8 +33,24 @@ #pragma once #include -// #include /* uncomment this line to include lp_solve */ +#include +#include +#include /* uncomment this line to include lp_solve */ +//#include #include "traits.hpp" +#include "print.hpp" + +#include "static_truth_table.hpp" +#include "dynamic_truth_table.hpp" +#include "properties.hpp" +#include "bit_operations.hpp" +#include "operations.hpp" +#include "cube.hpp" +#include "isop.hpp" + +//using namespace std; + + namespace kitty { @@ -59,10 +75,253 @@ template::v bool is_threshold( const TT& tt, std::vector* plf = nullptr ) { std::vector linear_form; + // std::cout << to_binary(tt); /* TODO */ /* if tt is non-TF: */ - return false; + //return false; + + int variables = tt.num_vars(); //number of variables + TT new_truth_table = tt; + int variables_unateness[15]; + + //std::cout << "num vars is" << variables << std::endl; + + + for (int i = 0; i