type var = int datatype dt = F | T | D of var * dt * dt datatype bt = FF (* 0 *) | TT (* 1 *) | V of var (* Variable *) | NEG of bt (* Negation *) | AND of bt * bt (* Conjunction *) | OR of bt * bt (* Disjunction *)