Inductive D_queue : queue Message -> Prop :=
  | D_empty : D_queue (empty Message)
  | D_dec :
      forall qm : queue Message,
      alternate qm -> D_queue (input Message dec qm).Inductive D_queue : queue Message -> Prop :=
  | D_empty : D_queue (empty Message)
  | D_dec :
      forall qm : queue Message,
      alternate qm -> D_queue (input Message dec qm).Inductive D_queue : queue Message -> Prop :=
  | D_empty : D_queue (empty Message)
  | D_dec :
      forall qm : queue Message,
      alternate qm -> D_queue (input Message dec qm).

Lemma not_D_queue : forall (q0 : queue Message) (m : Message), m <> dec -> ~ D_queue (input Message m q0).