(** Multiply all elements in list with a *)
Definition mapmult (a : Z) (l : Zlist) := map Z Z (fun x : Z => (a * x)%Z) l.

Lemma mapmult_orig :
forall (a : Z) (l : Zlist) (y : Z),
inlist Z y (mapmult a l) -> exists x : Z, inlist Z x l /\ y = (a * x)%Z.