Xiaodi Wu
723bc850db
Use LLVM intrinsics for trigonometric functions where possible
2018-02-14 19:41:24 -06:00
Xiaodi Wu
0841abeaf2
Improve hash function in the same manner as was done for the standard library
2018-02-09 22:53:50 -06:00
Xiaodi Wu
ac4c3c6018
Remove redundant conformances
2018-02-09 22:46:18 -06:00
Xiaodi Wu
c962760bf9
Remove extraneous decrement
2017-10-14 03:54:56 -05:00
Xiaodi Wu
c473959f38
Add deprecation status to doc comments [NFC]
2017-08-27 19:04:23 -05:00
Xiaodi Wu
3b75ea6875
Update README.md and delete some comments
2017-08-27 18:43:46 -05:00
Xiaodi Wu
23f5c7a496
Add tie-breaking exponentiation operators and tests
2017-08-27 18:04:21 -05:00
Xiaodi Wu
c3c299e65f
De-indent #endif [NFC]
2017-08-27 15:38:30 -05:00
Xiaodi Wu
b004688078
Update README.md, add default implementations and disable them, and align deprecation message with stdlib
2017-08-27 14:22:27 -05:00
Xiaodi Wu
a4a9ac7368
Define an exponentiation operator
2017-08-27 00:19:57 -05:00
Xiaodi Wu
cc8f586714
Restore some uses of the @_transparent attribute
2017-08-26 18:52:05 -05:00
Xiaodi Wu
88f4415112
Unitalicize Greek constants in doc comments [NFC]
2017-08-26 18:46:42 -05:00
Xiaodi Wu
5e19a2acb9
Make a minor stylistic change [NFC]
2017-08-26 18:45:11 -05:00
Xiaodi Wu
ae1cccaa3d
Assume memory bound to avoid segmentation fault
2017-08-19 16:45:02 -05:00
Xiaodi Wu
b924341f19
Fix doc comments [NFC]
2017-08-12 14:02:53 -05:00
Xiaodi Wu
2225b12581
Fix a doc comment [NFC]
2017-08-12 13:08:58 -05:00
Xiaodi Wu
c737e058f1
Make some minor changes to doc comments [NFC]
2017-08-12 01:47:35 -05:00
Xiaodi Wu
7130751257
Update generic algorithms for revised integer protocols [NFC] ( #9 )
...
* Improve wording in a doc comment [NFC]
* Improve wording in a doc comment [NFC]
* Update generic algorithms for changes to SE-0104
* Update .travis.yml and some doc comments
2017-08-11 21:36:35 -05:00
Xiaodi Wu
00d7fab46f
Add a missing newline [NFC]
2017-07-16 17:04:17 -05:00
Xiaodi Wu
644d19222e
Remove one use of @_transparent
2017-07-16 16:56:04 -05:00
Xiaodi Wu
7e13418232
Remove Complex.polar (it's poorly named and trivial)
2017-07-16 16:55:22 -05:00
Xiaodi Wu
10ea1eab12
Fix implementation of Complex.tanh and expand tests
2017-07-16 16:47:10 -05:00
Xiaodi Wu
9553e20023
Make a minor stylistic change [NFC]
2017-07-16 13:59:52 -05:00
Xiaodi Wu
aee282025f
Expand and add tests for Complex
2017-07-15 18:41:30 -05:00
Xiaodi Wu
2a3aba73af
Expand tests for Rational and fix an initializer implementation
2017-07-15 12:51:43 -05:00
Xiaodi Wu
a3ffd12259
Expand tests for Random and Random.Xoroshiro
2017-07-15 00:12:46 -05:00
Xiaodi Wu
d5a9fceadd
Work around compiler segfault
2017-07-14 22:33:56 -05:00
Xiaodi Wu
913da91d25
Refine Complex.description, add more tests for Complex
2017-07-09 17:43:22 -05:00
Xiaodi Wu
237366a24f
Restore some uses of @_transparent
2017-07-08 17:17:36 -05:00
Xiaodi Wu
acc17bd238
Refine handling of complex infinity and NaN
2017-07-08 16:32:34 -05:00
Xiaodi Wu
0a6a45a9d5
Expand testing based on code coverage reporting ( #8 )
...
This PR adds tests to improve code coverage. In addition:
* The implementation of `Rational.isProper is corrected` for negative values.
* Add tests for Float and Double extensions
* Adjust accuracy for Glibc
* Add tests for RNG initialization using device entropy
* Expand testing of Rational and fix implementation of Rational.isProper
* Further expand testing of Rational
* Expand tests for Float and Double extensions
* Expand tests for Rational
* Adjust accuracy for Glibc
* Expand tests for Float and Double extensions
* Adjust accuracy for Glibc
* Re-adjust accuracy for Glibc
* Expand testing of Complex
2017-07-04 13:01:35 -05:00
Xiaodi Wu
caf1de2c9a
Fix implementations of BinaryInteger.sqrt and UnsignedInteger.cbrt to prevent overflow
2017-06-14 12:04:20 -05:00
Xiaodi Wu
b96f652387
Add integer square and cube root extraction
2017-06-14 04:42:13 -05:00
Xiaodi Wu
fe34cc2c1e
Reorganize integer algorithms [NFC]
2017-06-14 00:15:58 -05:00
Xiaodi Wu
b9d507ee05
Remove power(of:)
2017-06-14 00:06:37 -05:00
Xiaodi Wu
5756463715
Fix comment [NFC]
2017-06-12 20:35:20 -05:00
Xiaodi Wu
48e6f8ba1a
Add comment for Jazzy
2017-06-12 20:18:20 -05:00
Xiaodi Wu
e426e168b4
Expand testing ( #4 )
...
This PR adds tests for BinaryInteger.pow and for default implementations in Math and Real. In addition:
The default implementation of cubeRoot is corrected and removed from Math to Real.
A correction is made for an error in the default implementation of Math.phi.
Special values are now handled in the default implementation of Real.hypot.
This PR also includes an incidental simplification of some operator implementations in Complex, which will simplify later testing.
* Add tests for Math and Real, fix default implementations
* Reorder tests for Linux [NFC]
* Remove repetition in Complex operator implementations [NFC]
* Add tests for integer exponentiation
2017-06-12 20:03:31 -05:00
Xiaodi Wu
89a82f52d6
Implement and use an internal function for combining hashes
2017-06-11 16:12:21 -05:00
Xiaodi Wu
390d835d4b
Conform Complex and Rational to Codable
2017-06-11 14:28:20 -05:00
Xiaodi Wu
ea3af8458f
Rename FloatingPointMath to Real
2017-06-07 07:15:24 -05:00
Xiaodi Wu
eeb4dc4e8c
Update implementation of Complex.hyperbolicTangent and add tests for special values
2017-06-06 01:41:03 -05:00
Xiaodi Wu
d6876b3675
Update README.md and a comment
2017-06-04 08:46:46 -05:00
Xiaodi Wu
9e17f688ef
Touch up some comments
2017-06-04 08:27:12 -05:00
Xiaodi Wu
df8f1ce15e
Add otherwise superfluous comments for Jazzy
2017-06-04 02:46:48 -05:00
Xiaodi Wu
987841b267
Expound on the PRNG protocol
2017-06-04 02:26:02 -05:00
Xiaodi Wu
dd0b05c49d
Add documentation of usage to Random and Random.Xoroshiro
2017-06-04 01:41:46 -05:00
Xiaodi Wu
4fe964e9f3
Make additional changes for Jazzy
2017-06-04 00:36:17 -05:00
Xiaodi Wu
f4bc1e5ff6
Add otherwise superfluous comments for Jazzy
2017-06-03 20:42:44 -05:00
Xiaodi Wu
62f8f19727
Remove initializers from FloatingPointMath
2017-06-03 19:31:45 -05:00