Proof using.
intros c a l (H1, H2); split.
intros a1 a2 lb1 lb2 H H0 H3; apply (H1 a1 a2 lb1 lb2); simpl in |- *; auto.
apply unique_key_inv with (1 := H2); auto.
Qed.

(* Specifications: *)
(* A prefix code with a  least two distinct elements is not_null *)
Theorem unique_prefix_not_null :
forall (c : code) (a b : A),
a <> b -> in_alphabet (a :: b :: nil) c -> unique_prefix c -> not_null c.