Proof using.
unfold locks_correct_unlock, valid_unlock.
intuition.
break_exists.
exists x.
intuition.
- firstorder.
- now rewrite_update.
Qed.

(* Specifications: *)
Lemma nil_at_head_of_queue_preserved :
forall c sigma sigma',
queue (sigma Server) = [] ->
at_head_of_queue sigma c ->
at_head_of_queue sigma' c.
Lemma nil_at_head_of_queue_preserved :
forall c sigma sigma',
queue (sigma Server) = [] ->
at_head_of_queue sigma c ->
at_head_of_queue sigma' c.