Proof using.
unfold LockServ_network_invariant,
locks_correct_unlock, locks_correct_locked,
valid_unlock, valid_locked.
intuition.
destruct (pBody p) eqn:?; intuition; break_exists; intuition; break_exists;
congruence.
Qed.

(* Specifications: *)
Lemma LockServ_nwnw_net_handlers_old_new :
forall p sigma u st' out ms q p',
NetHandler (pDst p) (pSrc p) (pBody p) (sigma (pDst p)) = (u, out, st', ms) ->
locks_correct sigma ->
LockServ_network_invariant sigma p ->
LockServ_network_invariant sigma q ->
LockServ_network_network_invariant p q ->
In (pDst p', pBody p') ms ->
LockServ_network_network_invariant p' q.
Lemma LockServ_nwnw_net_handlers_old_new :
forall p sigma u st' out ms q p',
NetHandler (pDst p) (pSrc p) (pBody p) (sigma (pDst p)) = (u, out, st', ms) ->
locks_correct sigma ->
LockServ_network_invariant sigma p ->
LockServ_network_invariant sigma q ->
LockServ_network_network_invariant p q ->
In (pDst p', pBody p') ms ->
LockServ_network_network_invariant p' q.