End APPEND.
Section INQUEUE_APPEND.
Variable data : Set.

Lemma not_in_q_shuffle :
forall (m1 m2 : data) (q1 q2 q3 q4 : queue data),
~ In_queue data m2 (append data q1 (input data m1 q2)) ->
append data q1 q2 = append data q3 q4 ->
~ In_queue data m2 (append data q3 (input data m1 q4)).