mod adder; mod ast; mod boolean_evaluation; mod gray_code; mod multiplier; mod negation_normal_form; mod truth_table; use gray_code::gray_code; use truth_table::print_truth_table; use negation_normal_form::negation_normal_form; fn main() { println!("Hello, world!"); println!("{}", gray_code(4_294_967_295)); println!("{}", gray_code(511)); println!("{}", gray_code(255)); println!("{}", gray_code(127)); println!("{}", gray_code(63)); println!("{}", gray_code(31)); println!("{}", gray_code(15)); println!("{}", gray_code(7)); println!("{}", gray_code(3)); print_truth_table("ZFG|&"); print_truth_table("ABC|&"); let formula = "AB=CD^|!AD!^!&!"; println!("{formula}"); print_truth_table(formula); let formula = &negation_normal_form(formula); println!("{formula}"); print_truth_table(formula); }