use poi::prelude::*; fn main() { let ref std = std(); assert_eq!(path(And, Not).reduce_all(std), Or.into()); assert_eq!(path(Or, Not).reduce_all(std), And.into()); assert_eq!(path(Xor, Not).reduce_all(std), Eqb.into()); assert_eq!(path(Eqb, Not).reduce_all(std), Xor.into()); assert_eq!(path(Nand, Not).reduce_all(std), Nor.into()); assert_eq!(path(Nor, Not).reduce_all(std), Nand.into()); assert_eq!(comp(Not, Nand).reduce_all(std), And.into()); assert_eq!(comp(Not, Nor).reduce_all(std), Or.into()); assert_eq!(comp(Not, And).reduce_all(std), Nand.into()); assert_eq!(comp(Not, Or).reduce_all(std), Nor.into()); }