gingerBill
78d8059ebe
Use @(rodata) where possible
2025-11-27 10:24:22 +00:00
gingerBill
c63fa3f663
Use < 0 instead of == -1 for comparisons
2025-11-27 09:13:21 +00:00
gingerBill
842cfee0f3
Change Odin's LICENSE to zlib from BSD 3-clause
...
This change was made in order to allow things produced with Odin and using Odin's core library, to not require the LICENSE to also be distributed alongside the binary form.
2025-10-28 14:38:25 +00:00
Jeroen van Rijn
c4c2431997
Package lines for core:math and more.
2025-10-09 19:56:21 +02:00
gingerBill
149ecafdef
Remove the need for rand in core:math/big
2024-06-15 15:43:57 +01:00
Feoramund
01ad69413a
Remove unused code in internal_random_prime
2024-05-28 01:36:44 -04:00
Feoramund
a294f067a9
Fix big.internal_random_prime with Second_MSB_On
2024-04-15 05:49:15 -04:00
gingerBill
29e5f94c2a
Add #no_broadcast procedure parameter to disallow automatic array programming broadcasting on procedure arguments
2024-03-21 11:52:48 +00:00
Ed Yu
dd74a57c44
Expose internal invmod and int_exponent_mod with more consistent naming
2024-03-12 11:01:09 -07:00
gingerBill
d27109640e
Partial pseudo-revert
2023-10-02 20:59:43 +01:00
gingerBill
5023313c03
Minor cleanups to the core library
2023-09-30 20:26:04 +01:00
gingerBill
14adcb9db8
Use or_break and or_continue where appropriate in the core library
2023-09-30 15:34:39 +01:00
gingerBill
7cda64e52d
Add parentheses around or_return uses in an unary expression
2023-04-27 11:17:23 +01:00
cui fliter
dc8b7a0eb8
fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com >
2022-08-05 20:10:20 +08:00
gingerBill
c85ac955f7
Simplify docs to hide the copyright
2022-01-17 19:00:47 +00:00
gingerBill
2800d4b8d0
Merge branch 'master' into optional-semicolons
2021-09-06 16:46:57 +01:00
Jeroen van Rijn
f33d0725db
big: Add Extended Euclidean algorithm.
2021-09-05 14:03:02 +02:00
Jeroen van Rijn
1f5ce91ae2
big: Add internal_random_prime.
2021-09-05 10:40:35 +02:00
Jeroen van Rijn
f2c5c26f2c
big: Add internal_int_prime_next_prime.
2021-09-04 16:31:05 +02:00
Jeroen van Rijn
b1ed7fc6b9
big: Add Lucas-Selfridge.
2021-09-03 23:54:54 +02:00
Jeroen van Rijn
70e12f7a1c
big: Fix internal_int_mod for inputs with opposite signs.
...
This threw off Frobenius-Underwood.
2021-09-03 14:50:26 +02:00
Jeroen van Rijn
eecc786bd2
big: Add Frobenius-Underwood.
2021-09-03 01:25:18 +02:00
Jeroen van Rijn
7fa04fa018
big: Fix M-R.
2021-09-02 19:59:59 +02:00
Jeroen van Rijn
31918d3b8f
big: Add internal_int_is_prime.
2021-09-02 18:31:08 +02:00
Jeroen van Rijn
e639c61499
big: Add Miller-Rabin.
2021-09-01 22:06:07 +02:00
Jeroen van Rijn
671b413b15
big: Use new comparison helpers.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
df29d10210
big: Add internal_int_kronecker.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
7d7ed6b95f
big: Add internal_int_exponent_mod.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
a056e19434
big: Cue up internal_int_exponent_mod wrapper function.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
7d0dedf951
big: Add Diminished Radix reduction.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
ee04fb1ce1
big: Remove temporary prints.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
2110778040
big: Add internal_int_exponent_mod_fast.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
65a15e9c06
big: Add internal_int_exponent_mod.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
c3a70ac277
Big: Added Barrett reduction setup.
2021-09-01 19:13:47 +02:00
Jeroen van Rijn
5e520f4e08
big: Add reduce_2k.
2021-09-01 19:13:47 +02:00
gingerBill
720884e0f1
Strip even more semicolons if followed by a } or ) on the same line
2021-08-31 23:47:57 +01:00
gingerBill
251da264ed
Remove unneeded semicolons from the core library
2021-08-31 22:21:13 +01:00
Jeroen van Rijn
4153898c55
big: Add Montgomery Reduction.
2021-08-27 16:41:16 +02:00
Jeroen van Rijn
33df335ec9
big: Add internal_int_montgomery_calc_normalization.
2021-08-27 16:41:16 +02:00
Jeroen van Rijn
893cc013b5
big: Add Montgomery reduction.
2021-08-27 16:41:16 +02:00
Jeroen van Rijn
23d29be4d8
big: Update license to BSD-3.
2021-08-19 12:12:59 +02:00
gingerBill
e3fef2dade
Improve parsing for or_return; allow #force_inline foo() or_return;
2021-08-16 11:58:50 +01:00
gingerBill
c27b8a71fd
Replace err != nil with or_return where appropriate
2021-08-15 17:52:10 +01:00
Jeroen van Rijn
f72a0de074
big: Add inverse mod.
2021-08-13 01:41:33 +02:00
Jeroen van Rijn
851780b8f4
big: Add arguments and usage to test.py.
2021-08-11 20:59:54 +02:00
Jeroen van Rijn
1f91a2fe65
big: Finish refactor.
2021-08-11 20:59:54 +02:00
Jeroen van Rijn
1ebb0bd9d6
big: More refactoring.
2021-08-11 20:59:54 +02:00
Jeroen van Rijn
fd95f50c56
big: Split up int_is_* comparison tests.
2021-08-11 20:59:53 +02:00
Jeroen van Rijn
463003e86a
bit: Improved bitfield extraction.
2021-08-11 20:59:53 +02:00