proposition: Lemma weq_iff x : forall y, x = y <-> weq x y = true.
proof: Proof. induction x; intro y; destruct y; split; simpl; intro H; first [ reflexivity | exfalso; revert H; clear; intro H; abstract inversion H | apply (f_equal pred) in H; simpl in H; apply IHx; assumption | apply (f_equal S); apply IHx; assumption ]. Qed.
imports: Fiat.FiniteSetADTs.WordInterface