     public static func !=(lhs: Self, rhs: Self) -> Bool {
         return lhs.bitPattern != rhs.bitPattern
     }
-}
+    
+    @_inlineable
+    public static func <(lhs: Self, rhs: Self) -> Bool {
+        return lhs.representingValue < rhs.representingValue
+    }
+    
+    @_inlineable
+    public static func <=(lhs: Self, rhs: Self) -> Bool {
+        return lhs.representingValue <= rhs.representingValue
+    }
+    
+    @_inlineable
+    public static func >(lhs: Self, rhs: Self) -> Bool {
+        return lhs.representingValue > rhs.representingValue
+    }
+    
+    @_inlineable
+    public static func >=(lhs: Self, rhs: Self) -> Bool {
+        return lhs.representingValue >= rhs.representingValue
+    }
+}

    public static var max: Self {
        return Self(bitPattern: BitPattern.max)
    }
}

extension BinaryFixedPoint {

//  THE SOFTWARE.
//

public protocol BinaryFixedPoint : Numeric, Hashable, Strideable, CustomStringConvertible, ExpressibleByFloatLiteral {
    
    associatedtype BitPattern : FixedWidthInteger
    
