I need to prove a theorem involving 2 variables a
and b
, a hypothesis H
specifying the possible values of a
(a = v1 \/ a = v2 \/ ... \/ a = vn
), and a hypothesis H0
specifying values of b
(b = v1' \/ b = v2' \/ ... \/ b = vn'
), and a hypothesis that a
and b
are not equal. I can't use repeat (destruct H0; xxx)
because it would destruct the hypothesis H0: b = vn'
, and make the proof impossible to continue. Is there a way to do "repeat" only finite number of times? Or what are some other ways to solve the problem that I currently have?
My proof currently looks like this (xxx is a tactic I defined myself):
intros. subst.
destruct H.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
xxx.
destruct H.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
destruct H0. xxx.
xxx.
...(just repeat the above)