Proof using.
induction zs; intros.
- now repeat rewrite remove_all_nil.
- pose proof (remove_all_cons (xs ++ ys) a zs).
pose proof (remove_all_cons ys a zs).
pose proof (remove_all_cons xs a (remove_all ys zs)).
repeat (break_or_hyp; break_and); repeat find_rewrite;
try find_eapply_lem_hyp in_app_or;
try assert (In a (xs ++ ys)) by (eapply in_or_app; eauto);
tauto.
Qed.

Lemma remove_all_app_r :
forall xs ys zs,
remove_all xs (ys ++ zs) = remove_all xs ys ++ remove_all xs zs.