proposition: Lemma appUnit_app : forall Mu M (Mapp: isApp M), isAppUnit Mu M -> (Mu = appBodyR Mapp \/ isAppUnit Mu (appBodyL Mapp)).
proof: Proof. intros. unfold isAppUnit in H. rewrite (appUnits_app M Mapp) in H. destruct (in_app_or H). right; trivial. inversion H0; try_solve. Qed.
imports: CoLoR(RelExtras ListExtras TermsTyping LogicUtil) Coq(Lia)