exact nodup.get_inj i j f_inj
case h
α : Type u
β : Type v
p : α → Prop
l : List α
nodup : Nodup l
f : (a : α) → p a → β
h : ∀ (a : α), a ∈ l → p a
i j : Nat
hi : i < length (List.pmap f l h)
hj : j < length (List.pmap f l h)
hfij :
  f (get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := i, isLt := hi }))
      (_ : p (get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := i, isLt := hi }))) =
    f (get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := j, isLt := hj }))
      (_ : p (get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := j, isLt := hj })))
f_inj :
  get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := i, isLt := hi }) =
    get l (Fin.cast (_ : length (List.pmap f l h) = length l) { val := j, isLt := hj })
⊢ i = j
no goals