intros i bs work ds ni ai ai' a context lookup equiv_del min.
unfold nminimal in |- *.
intros c k k_is_mon k_forces_ngamma in_c.
apply min; try assumption.
apply forces_ngamma_del_ai_rev with i bs ai'; try assumption.
intros n b nth.
simpl in |- *; apply forces_b__forces_a_imp_b_t; try assumption.
apply k_forces_ngamma.
apply In_Work with n.
apply nth_app0; assumption.
apply forces_ngamma_app_work_tail with bs; assumption.
Qed.

(* Specifications: *)
Lemma nminimal_shift_ds_work_context :
forall (work : nf_list) (c : normal_form) (i j : Int)
(ds : disjs) (ni : nested_imps) (ai : atomic_imps)
(a : atoms) (context : flist),
(forall k : kripke_tree,
Is_Monotone_kripke_tree k ->
forces_t k (nf2form c) -> forces_t k (OrF (Atom i) (Atom j))) ->
nminimal work ((i, j) :: ds) ni ai a context ->
nminimal (c :: work) ds ni ai a (nf2form c :: context).