intros b c work ds ni ai a context forces_cb minimal.
unfold nminimal in |- *.
intros c0 k k_is_mon k_forces_ngamma in_c0.
apply minimal; try assumption.
apply forces_ngamma_cons_work_weak with c; try assumption.
intros forces_c.
apply forces_cb; assumption.
Qed.

(* Specifications: *)
Lemma nminimal_cons_work_weak :
forall (b c : normal_form) (work : nf_list) (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 (nf2form b)) ->
nminimal (b :: work) ds ni ai a context ->
nminimal (c :: work) ds ni ai a context.
Lemma nminimal_shift_work_ai_weak :
forall (i : Int) (bs work : nf_list) (ds : disjs)
(ni : nested_imps) (ai ai' : atomic_imps) (a : atoms)
(context : flist),
LOOKUP nf_list i ai bs ->
EQUIV_DEL nf_list i ai ai' ->
nminimal work ds ni ai a context ->
nminimal (bs ++ work) ds ni ai' a context.