proposition: Lemma mk_num_ex i : NUM_REP i -> exists n, mk_num_pred i n.
proof: Proof. rewrite NUM_REP_eq_ID. induction 1. exists 0. reflexivity. destruct IHNUM_REP_ID as [n hn]. exists (S n). unfold mk_num_pred. rewrite hn. reflexivity. Qed.
imports: Coq.Logic.ClassicalEpsilon ClassicalFacts PropExtensionalityFacts