Commit Graph

46 Commits

Author SHA1 Message Date
Alex Dyachenko
32fe79d006 Comparison operator overloads 2014-03-29 21:39:30 -04:00
Alex Dyachenko
a57ee69a3a IComparable implementation 2014-03-29 21:08:42 -04:00
Alex Dyachenko
e55f80c391 Switched to gc build for testing for now. Root is still broken. 2014-03-26 20:48:42 -04:00
Alex Dyachenko
daea13c7ba IsPerfectPower/Square. Completed MPIR 2.6.0 section 5.8. 2014-03-26 17:24:23 -04:00
Alex Dyachenko
82cd99b396 Roots. GMP/MPIR bug found in NthRoot, broken test. 2014-03-26 15:31:54 -04:00
Alex Dyachenko
a881ae86af Constructor from limb ^ limb. Completed MPIR 2.6.0 section 5.7 (except broken tests from unresolved MPIR references) 2014-03-25 14:59:26 -04:00
Alex Dyachenko
a3ce259087 Power operator 2014-03-25 14:52:39 -04:00
Alex Dyachenko
6c0f864a94 PowerMod. 2 broken tests; (mpz, mpz, mpz) overload stubbed out because mpz_powm causes unresolved externals in MPIR. 2014-03-25 11:19:58 -04:00
Alex Dyachenko
081e5d91d1 Div 2exp remainder 2014-03-25 09:18:17 -04:00
Alex Dyachenko
eef0731e9d Shift right 2014-03-24 21:22:18 -04:00
Alex Dyachenko
23f9f2b38b Congruent. Completed MPIR 2.6.0 Sections 5.1 - 5.6, except assignments from MPQ or MPF. 2014-03-24 16:02:31 -04:00
Alex Dyachenko
7cef951b28 IsDivisible 2014-03-24 15:29:33 -04:00
Alex Dyachenko
5af65890cb DivideExactly. 2014-03-24 15:08:11 -04:00
Alex Dyachenko
ca6a17320f To double with separate exponent. Completed MPIR 2.6.0 section 5.4. 2014-03-24 00:04:42 -04:00
Alex Dyachenko
b4940574c0 Swap. Completed MPIR 2.6.0 section 5.2, except setting MPZ from MPQ or MPF 2014-03-24 00:04:35 -04:00
Alex Dyachenko
fc6bfb6f4a Setting from string 2014-03-23 23:39:32 -04:00
Alex Dyachenko
6c0b1be123 Refeactored conversions from properties to methods 2014-03-23 23:29:30 -04:00
Alex Dyachenko
e48241dc4b Conversion to/from double 2014-03-23 17:37:00 -04:00
Alex Dyachenko
f349fdc1c0 Conversion to/from si 2014-03-23 15:11:57 -04:00
Alex Dyachenko
3f87799456 conversions to/from ui 2014-03-23 15:08:30 -04:00
Alex Dyachenko
c6303e07cf Truncating construction from double. Completed MPIR 2.6.0 section 5.3. 2014-03-23 14:27:12 -04:00
Alex Dyachenko
000fe6d996 Reallocation. Completed MPIR 2.6.0 section 5.1. 2014-03-23 14:16:56 -04:00
Alex Dyachenko
066eabbd4e Mod limb function 2014-03-22 21:11:01 -04:00
Alex Dyachenko
8762324509 Mod by limb 2014-03-22 14:52:05 -04:00
Alex Dyachenko
f4b5744594 Divide by limb 2014-03-21 23:02:15 -04:00
Alex Dyachenko
897ee95734 Test organization 2014-03-21 20:54:17 -04:00
Alex Dyachenko
96bb014dc2 Refactored AssignTo destination to be an MP struct pointer 2014-03-20 11:49:47 -04:00
Alex Dyachenko
9d13471fd1 Refactored expressions for division. Added / and % operators 2014-03-20 11:49:18 -04:00
Alex Dyachenko
14d119b9c6 Completed macros for unary operators and void functions, implemented Abs, Neg 2014-03-19 11:03:07 -04:00
Alex Dyachenko
087b50b40a New test to make sure all expression types are covered. Made AssignTo internal. 2014-03-19 10:04:45 -04:00
Alex Dyachenko
ea860e05cb Introduced operators on expressions. Heavy refactoring of expressions and operators. 2014-03-19 09:36:10 -04:00
Alex Dyachenko
8f6e3bc004 Neg & Abs. Clean-up, minor refactoring, code comments.
Conversion of arithmetic methods to operators & expressions complete.
Now just need to implement expression recursion.
2014-03-15 08:26:26 -04:00
Alex Dyachenko
becdb61f45 Left shift 2014-03-15 08:24:21 -04:00
Alex Dyachenko
74923af477 Added submul and signed-limb overloads of addmul/submul 2014-03-14 14:03:16 -04:00
Alex Dyachenko
59a9d5ddd9 Added addmul and addmul_ui 2014-03-14 12:28:53 -04:00
Alex Dyachenko
d94c45cb85 Added subtraction from signed limb. Made expression operands internal. 2014-03-14 12:26:05 -04:00
Alex Dyachenko
e87d1d843f Signed limb addition 2014-03-13 23:20:25 -04:00
Alex Dyachenko
a446def092 Some macros supporting operator definitions. Added multiplication. 2014-03-13 22:55:33 -04:00
Alex Dyachenko
562c4693e1 Added + operator and refactored for expressions 2014-03-13 15:46:55 -04:00
Alex Dyachenko
91b3be8adb Fixed tests after refactoring storage 2014-03-10 13:28:50 -04:00
Alex Dyachenko
0f5735f713 Added custom allocation functions and refactored HugeInt's private storage 2014-03-10 11:33:42 -04:00
Alex Dyachenko
fefec86544 More arithmetics methods 2014-03-06 22:34:16 -05:00
Alex Dyachenko
7b73582244 Added a Magic Spells project and a spell to help generate unit tests. 2014-03-05 23:06:47 -05:00
Alex Dyachenko
1b725238cc Started arithmetic and object override methods 2014-03-04 21:08:50 -05:00
Alex Dyachenko
d27fb70161 String constructors 2014-03-03 23:08:36 -05:00
Alex Dyachenko
019d1e3a64 Started the projects, created HugeInt class, constructors/destructors 2014-03-03 17:18:06 -05:00