Proof using.
unfold LockServ_network_invariant.
set_up_input_handlers.
- auto using nwnw_sym, nwnw_lock.
- destruct (pBody p) eqn:?.
+ auto using nwnw_lock.
+ now erewrite unlock_in_flight_all_clients_false in * by eauto.
+ now erewrite locked_in_flight_all_clients_false in * by eauto.
Qed.

(* Specifications: *)
Lemma LockServ_nwnw_input_handlers_new_new :
forall h i sigma u st' out ms,
InputHandler h i (sigma h) = (u, out, st', ms) ->
distinct_pairs_and LockServ_network_network_invariant
(map (fun m => mkPacket h (fst m) (snd m)) ms).
Lemma LockServ_nwnw_input_handlers_new_new :
forall h i sigma u st' out ms,
InputHandler h i (sigma h) = (u, out, st', ms) ->
distinct_pairs_and LockServ_network_network_invariant
(map (fun m => mkPacket h (fst m) (snd m)) ms).