Proof using.
intros.
eapply In_cons_neq.
- eapply In_cons_neq.
+ eauto using In_cons_2_3.
+ discriminate.
- intro. find_inversion. eauto using NoDup_get_op_output_keys_In_2_3.
Qed.

Lemma no_Ik_in_first2 :
forall xs ys zs k,
NoDup (get_op_input_keys (xs ++ I k :: ys ++ O k :: zs)) ->
forall k',
In (I k') (xs ++ ys) -> k <> k'.