     for j in i..<11 {
       for k in i...j {
         let p = (i..<j).partitionPoint { $0 >= k }
-        expectGE(p, i)
-        expectLE(p, j)
+        expectGE(p, i, "\(p) >= \(i)")
+        expectLE(p, j, "\(p) <= \(j)")
         expectEqual(p, k)
       }
     }

  }
}

//===--- Tests ------------------------------------------------------------===//
//===----------------------------------------------------------------------===//

func address<T>(_ p: UnsafePointer<T>) -> UInt { return UInt(bitPattern: p )}


// See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors
//
//===----------------------------------------------------------------------===//
// RUN: %target-build-swift -g -Onone -DUSE_STDLIBUNITTEST %s -o %t/Algorithms
// RUN: %target-run %t/Algorithms
// REQUIRES: executable_test

#if USE_STDLIBUNITTEST
import Swift
import StdlibUnittest
#endif

//===--- Rotate -----------------------------------------------------------===//
//===----------------------------------------------------------------------===//

/// Provides customization points for `MutableCollection` algorithms.
///
/// If incorporated into the standard library, these requirements would just be
/// part of `MutableCollection`.  In the meantime, you can declare conformance
/// of a collection to `MutableCollectionAlgorithms` to get these customization
/// points to be used from other algorithms defined on
/// `MutableCollectionAlgorithms`.
public protocol MutableCollectionAlgorithms : MutableCollection
  where SubSequence : MutableCollectionAlgorithms
{
  /// Rotates the elements of the collection so that the element
