∀ {α : Type u_2} {β : Type u_1} {γ : Type u_3} [inst : Preorder α] [inst_1 : Preorder β] [inst_2 : Preorder γ]
  {a b : α × β →o γ},
  { toFun := fun f => { toFun := fun x => { toFun := Function.curry (⇑f) x, monotone' := ⋯ }, monotone' := ⋯ },
          invFun := fun f => { toFun := Function.uncurry fun x => ⇑(f x), monotone' := ⋯ }, left_inv := ⋯,
          right_inv := ⋯ }
        a ≤
      { toFun := fun f => { toFun := fun x => { toFun := Function.curry (⇑f) x, monotone' := ⋯ }, monotone' := ⋯ },
          invFun := fun f => { toFun := Function.uncurry fun x => ⇑(f x), monotone' := ⋯ }, left_inv := ⋯,
          right_inv := ⋯ }
        b ↔
    a ≤ b