anchor.diff:      static member op_LessThan (n, nn) =
           match n, nn with
           | Z z, Z zz ->
  -            BigInteger.(<) (z,zz)
  -        | Q q, Q qq ->
  -            (BigRationalLarge.lt q qq)
  -        | Z z, Q qq ->
  -            (BigRationalLarge.lt (BigRationalLarge.of_bigint z) qq)
  -        | Q q, Z zz ->
  -            (BigRationalLarge.lt q (BigRationalLarge.of_bigint zz))
  +            z < zz
  +        | Q q, Q qq ->
  +            q < qq
  +        | Z z, Q qq ->
  +            BigRationalLarge.FromBigInteger z < qq
  +        | Q q, Z zz ->
  +            q < BigRationalLarge.FromBigInteger zz
   
       /// This operator is for use from other .NET languages
       static member op_LessThanOrEqual (n, nn) =
           match n, nn with
           | Z z, Z zz ->
  -            BigInteger.(<=) (z,zz)
  -        | Q q, Q qq ->
  -            (BigRationalLarge.lte q qq)
  -        | Z z, Q qq ->
  -            (BigRationalLarge.lte (BigRationalLarge.of_bigint z) qq)
  -        | Q q, Z zz ->
  -            (BigRationalLarge.lte q (BigRationalLarge.of_bigint zz))
  +            z <= zz
  +        | Q q, Q qq ->
  +            q <= qq
  +        | Z z, Q qq ->
  +            BigRationalLarge.FromBigInteger z <= qq
  +        | Q q, Z zz ->
  +            q <= BigRationalLarge.FromBigInteger zz
   
       /// This operator is for use from other .NET languages
       static member op_GreaterThan (n, nn) =
           match n, nn with
           | Z z, Z zz ->
  -            BigInteger.(>) (z,zz)
  -        | Q q, Q qq ->
  -            (BigRationalLarge.gt q qq)
  -        | Z z, Q qq ->
  -            (BigRationalLarge.gt (BigRationalLarge.of_bigint z) qq)
  -        | Q q, Z zz ->
  -            (BigRationalLarge.gt q (BigRationalLarge.of_bigint zz))
  +            z > zz
  +        | Q q, Q qq ->
  +            q > qq
  +        | Z z, Q qq ->
  +            BigRationalLarge.FromBigInteger z > qq
  +        | Q q, Z zz ->
  +            q > BigRationalLarge.FromBigInteger zz
   
       /// This operator is for use from other .NET languages
       static member op_GreaterThanOrEqual (n, nn) =
           match n, nn with
           | Z z, Z zz ->
  -            BigInteger.(>=) (z,zz)
  -        | Q q, Q qq ->
  -            (BigRationalLarge.gte q qq)
  -        | Z z, Q qq ->
  -            (BigRationalLarge.gte (BigRationalLarge.of_bigint z) qq)
  -        | Q q, Z zz ->
  -            (BigRationalLarge.gte q (BigRationalLarge.of_bigint zz))
  +            z >= zz
  +        | Q q, Q qq ->
  +            q >= qq
  +        | Z z, Q qq ->
  +            BigRationalLarge.FromBigInteger z >= qq
  +        | Q q, Z zz ->
  +            q >= BigRationalLarge.FromBigInteger zz
   
       /// Return the absolute value of a rational number
       static member Abs (n : BigRational) =
  
positive.code:         | Q q, Q qq ->
              Q (q + qq)
          | Z z, Q qq ->
              Q (BigRationalLarge.of_bigint z + qq)
          | Q q, Z zz ->
              Q (q  + BigRationalLarge.of_bigint zz)
  
      /// Return the difference of two rational numbers
      static member ( - ) (n1, n2) =
  
negative.code:     override this.ToString () =
          match this with
          | Z z ->
              z.ToString ()
          | Q q ->
              q.ToString ()
  
      member this.StructuredDisplayString =
          this.ToString ()
  