Definition plift2 {M} `{PredLift M} {X Y} (P : X -> Y -> Prop) :
  M X -> M Y -> Prop :=
  fun mx my =>
    plift (fun x => plift (P x) my) mx.

Lemma plift2_bind_l {M} `{PredLift M} {X Y Z} (P : X -> Z -> Prop) (Q : Y -> Z -> Prop) (m : M X) (f : X -> M Y) (n : M Z) : plift2 P m n -> (forall x, plift (P x) n -> plift2 Q (f x) n) -> plift2 Q (mbind m f) n.