Inductive rev_app_spec (dni : decorated_nested_imps) 
(ni : nested_imps) : Set :=
    Rev_App_Spec_Intro :
      forall dni_ni : nested_imps,
      dni_ni = rev_app dni ni -> rev_app_spec dni ni.Inductive rev_app_spec (dni : decorated_nested_imps) 
(ni : nested_imps) : Set :=
    Rev_App_Spec_Intro :
      forall dni_ni : nested_imps,
      dni_ni = rev_app dni ni -> rev_app_spec dni ni.

(* Specifications: *)
Lemma rev_app_lemma1 : forall (dni : decorated_nested_imps) (ni : nested_imps), rev_app_spec dni ni.
Lemma rev_app_lemma2 : forall (A : Set) (dni : decorated_nested_imps) (ni : nested_imps), (forall dni_ni : nested_imps, dni_ni = rev_app dni ni -> A) -> A.