∀ {α : Type u_1} {β : Type u_2} {R : α → α → Prop} {S : β → β → Prop} {p : α → Prop} {f : (a : α) → p a → β},
  (∀ (a b : α) (ha : p a) (hb : p b), R a b → S (f a ha) (f b hb)) →
    ∀ {l : List α} {a : α},
      p a →
        (∀ a ∈ l, p a) →
          ∀ (a_1 b : α), a_1 ∈ a :: l → b ∈ a :: l → R a_1 b → ∃ (ha : p a_1) (hb : p b), S (f a_1 ha) (f b hb)