{α : Type u_1} →
  (s : Set α) →
    (motive :
        (i : ULift.{u_1, 0} Bool) →
          (match i with
            | { down := true } => PUnit.{u_1 + 1}
            | { down := false } => ↑s) →
            Sort u_2) →
      (i : ULift.{u_1, 0} Bool) →
        (j :
            match i with
            | { down := true } => PUnit.{u_1 + 1}
            | { down := false } => ↑s) →
          ((j :
                match { down := true } with
                | { down := true } => PUnit.{u_1 + 1}
                | { down := false } => ↑s) →
              motive { down := true } j) →
            ((j :
                  match { down := false } with
                  | { down := true } => PUnit.{u_1 + 1}
                  | { down := false } => ↑s) →
                motive { down := false } j) →
              motive i j