proposition: Lemma appBodyR_swap_in_appL : forall E PtL PtR A B (Ml: E |- PtL := A --> B) (Mr: E |- PtR := A) (pos: Pos (buildT Ml)) (Mpos: PlaceHolder pos) (MLpos: PlaceHolder (PAppL Mr pos)) (MLapp: isApp (swap MLpos)), proj1_sig2 Mpos = proj1_sig2 MLpos -> appBodyR (M:=swap MLpos) MLapp = buildT Mr.
proof: Proof. intros. apply term_eq. rewrite appBodyR_env. rewrite swap_env_eq; trivial. rewrite (@appBodyR_term (swap MLpos) (swap_term pos (proj1_sig2 MLpos)) PtR); trivial. rewrite swap_term_is; trivial. Qed.
imports: CoLoR(RelExtras ListExtras TermsBuilding)