intros i j work ds ni ai.
unfold nweight_Sequent in |- *.
generalize (nweight_ni ni + nweight_ai ai).
clear ni ai; intros n.
simpl in |- *.
fold nweight_work in |- *.
fold nweight_ds in |- *.
rewrite <- (plus_Snm_nSm (nweight_work work) (nweight_ds ds + n)).
trivial.
Qed.

(* Specifications: *)
Lemma nweight_shift_work_ai :
forall (i : Int) (b : normal_form) (work : nf_list)
(ds : disjs) (ni : nested_imps) (ai ai' : atomic_imps),
LIN_INS nf_list i (cons b) nf_nil ai ai' ->
nweight_Sequent (AImp i b :: work) ds ni ai = nweight_Sequent work ds ni ai'.