finished defining inductive prop version of compiler