intros context a0 a1 b der.
elim der; clear der.
intros t der_t.
apply
Derivable_Intro with (Abs a0 (App (OrF a0 a1) (Shift t) (OrFL (Var 0) a1))).
apply ImpIntro.
apply ImpElim.
apply ShiftIntro; assumption.
apply OrFIntroL.
apply ByAssumption; apply My_NthO.
Qed.

(* Specifications: *)
Lemma derivable_a0_or_a1_imp_b__derivable_a1_imp_b :
forall (context : flist) (a0 a1 b : form),
Derivable context (Imp (OrF a0 a1) b) -> Derivable context (Imp a1 b).