proposition: Lemma compute_evaluation (s: X): (exists t, evaluates R s t) -> { t | evaluates R s t }.
proof: Proof. Proof using H1 H2 S tf refl rho D. intros. eapply E_evaluates. eapply constructive_indefinite_ground_description with (f := id) (g := id); eauto. - eapply decidable_E. - eapply evaluates_E, H. Qed.
imports: Morphisms FinFun ConstructiveEpsilon Undecidability.HOU(std.tactics std.decidable std.misc std.ars.basic std.ars.confluence)