Axiom
  sigma_rooted_change_queue :
    forall (s0 s1 s2 : Site) (b : Bag_of_message) (q : queue Message),
    s0 <> owner ->
    b s1 owner = input Message dec (input Message (inc_dec s2) q) ->
    sigma_rooted s0 (change_queue (queue Message) b s1 owner q) =
    (sigma_rooted s0 b - rooted_fun s0 s1 owner dec -
     rooted_fun s0 s1 owner (inc_dec s2))%Z.

Lemma invariant2_ind : forall s0 : Site, s0 <> owner -> forall (c : Config) (t : class_trans c), legal c -> st c s0 = sigma_rooted s0 (bm c) -> st (transition c t) s0 = sigma_rooted s0 (bm (transition c t)).