Section INVARIANT6.
Variable c0 : Config.
Fixpoint inc_dec_in_queue (s : Site) (q : queue Message) {struct q} : Prop :=
match q with
| empty => False
| input (inc_dec s2) q' =>
if eq_site_dec s2 s then True else False
| input _ q' => inc_dec_in_queue s q'
end.
(* note that the contrary is not true ! *)

Lemma inc_dec_queue_equal :
forall (q : queue Message) (s1 s2 : Site),
inc_dec_in_queue s1 q -> inc_dec_in_queue s2 q -> s1 = s2.