Commit Graph

338 Commits

Author SHA1 Message Date
Iaroslav Postovalov
bea2f2f46d
Merge remote-tracking branch 'origin/master' into dev 2020-09-09 11:29:44 +07:00
Iaroslav Postovalov
f567f73d19
Specify explicit API visbility, minor refactoring (error handling, etc.) 2020-09-09 11:28:54 +07:00
Iaroslav Postovalov
6b79e79d21
Update tools and Kotlin, specify public explicitly, minor contracts refactor 2020-09-09 09:55:26 +07:00
Iaroslav
5e4522bb06
Upgrade build tools plugin to dev version; file reformat; change dependencies' versions; specify visibility explicitly at certain places (core, especially), make some interfaces fun 2020-09-08 16:40:47 +07:00
Alexander Nozik
6db921e935
Update README.md 2020-09-06 19:03:24 +03:00
Iaroslav Postovalov
e9c2b3f839
Merge branch 'dev' into nd4j 2020-08-27 17:03:56 +07:00
Iaroslav Postovalov
2bc62356d6
Fix compilation issues 2020-08-27 16:44:58 +07:00
Iaroslav Postovalov
40888f66d6
Replace opt-in annotations with useExperimentalAnnotation for modules 2020-08-22 16:49:21 +07:00
Iaroslav
1d18832aa6
Provide contracts for many functions, make inline several functions, replace <algebra>.run { and with(<algebra>> { with <algebra> {, add newlines at EOFs, specify operator modifier explicitly at many places, reformat files, replace if (...) error guards with require and check 2020-08-22 02:42:59 +07:00
Iaroslav
7157878485
Update changelog, document kmath-nd4j, refactor iterators, correct algebra mistakes, separate INDArrayStructureRing to Space, Ring and Algebra 2020-08-15 18:35:16 +07:00
Iaroslav
1e4692d5cf
Fix scalar multiplication in BigInt, implement testers for fields, rings and spaces and apply them to ComplexFieldTest, BigIntAlgebraTest and RealFieldTest 2020-08-12 21:18:47 +07:00
Iaroslav Postovalov
3f0c208355
Specify ATANH_OPERATION type for API stability 2020-08-11 15:11:29 +07:00
Iaroslav Postovalov
c7e6764ea2
Specify constants' types for API stability 2020-08-11 15:10:48 +07:00
Iaroslav Postovalov
837150b5eb
Fix norm and add test of it 2020-08-11 15:06:53 +07:00
Iaroslav Postovalov
8ab8864227
Add newline 2020-08-11 15:02:56 +07:00
Iaroslav Postovalov
df3bd8a07c
Merge remote-tracking branch 'origin/dev' into hyp-trig-functions
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Algebra.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Complex.kt
#	kmath-core/src/commonTest/kotlin/scientifik/kmath/operations/ComplexFieldTest.kt
2020-08-11 15:01:53 +07:00
Iaroslav Postovalov
b77bfeb372
Provide basic tests for complex numbers, also fix complex division 2020-08-11 14:58:28 +07:00
Iaroslav
71c4ee0655
Add average and averageWith space extensions 2020-08-10 01:42:11 +07:00
Iaroslav
6329722131
Fix typos 2020-08-10 01:30:32 +07:00
Iaroslav
895f788f75
Cleanup doc mistakes, fix number fields corner cases 2020-08-09 23:43:38 +07:00
Iaroslav
6ead822cc3
Fix after-merge issues, provide default implementations for hyperbolic functions, remove their interface 2020-08-09 23:31:49 +07:00
Iaroslav
40d7351515
Merge remote-tracking branch 'origin/dev' into hyp-trig-functions
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/Complex.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/NumberAlgebra.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/OptionalOperations.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/ComplexNDField.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/RealBufferField.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/RealNDField.kt
2020-08-09 23:23:48 +07:00
Iaroslav
6114099e68
Edit doc files, update readmes, document coroutines API 2020-08-08 15:51:04 +07:00
Iaroslav
cb5234a334
Document AST and expressions API, implement ExtendedField over MST and Expression<T> 2020-08-08 04:57:20 +07:00
Iaroslav
c8cd6cd288
Document memory module and several ND objects 2020-08-08 04:21:59 +07:00
Iaroslav
0a8044ddb3
Update buffers documentation, make API more consistent, minor changes 2020-08-07 15:20:26 +07:00
Iaroslav Postovalov
9f6bd116f6
Document and make more consistent buffers API 2020-08-06 12:39:50 +07:00
Iaroslav Postovalov
eae218ff5f
Update algebra extensions, improve docs 2020-08-05 20:55:50 +07:00
Iaroslav Postovalov
4c39b98017
Update documentation of NumberAlgebra 2020-08-05 18:44:28 +07:00
Iaroslav Postovalov
7d32fe0af8
Update documentation of NumberAlgebra 2020-08-05 18:43:20 +07:00
Iaroslav Postovalov
8367e13057
Improve documentation of complex and memoryspec 2020-08-05 18:41:58 +07:00
Iaroslav Postovalov
aed10329eb
Improve documentation of elements 2020-08-05 17:30:11 +07:00
Iaroslav Postovalov
8debed7048
Improve documentation 2020-08-05 17:25:56 +07:00
Iaroslav
ae7aefeb6a
Specify type explicitly EVERYWHERE in kmath-core, add newlines at ends of files, refactor minor problems, improve documentation 2020-08-05 03:58:00 +07:00
c2ca7b871d Merge SCI-MR-10 from improved-java-math-big-numbers 2020-07-29 08:39:19 +00:00
Iaroslav
0995dca8b8
Delete unchecked cast, revert evaluate changes, add RealField handling "pow" operation 2020-07-27 20:46:57 +07:00
Iaroslav
c64a89c6b6
Implement power as binary operation with unchecked cast, add tests on parser precedence 2020-07-27 19:27:59 +07:00
Iaroslav Postovalov
186575d8b3
Override number function for JBigIntegerField and JBigDecimalField 2020-07-26 11:28:19 +07:00
Iaroslav
995a0f916b
Replace x pow 2 with multiplication x by x because of precision 2020-07-03 19:20:44 +07:00
Commander Tvis
77625cca2b
Update typealiases usages; add optimization for exponentiation real complex numbers 2020-07-03 17:38:13 +07:00
Commander Tvis
badb7b1365
Update implementation of Complex Division and Exponentiation 2020-07-03 17:14:50 +07:00
Commander Tvis
73005f715a
Implement optimized complete Complex division, add tests class for it 2020-07-03 15:50:14 +07:00
Iaroslav
e64a6796ea
Fix division of Complex, minor reformat and rearrangement of NumberAlgebra, implement hyperbolic functions 2020-07-03 00:46:48 +07:00
Iaroslav
e96ecaddcf
Revert implementing PowerOperations for JBigIntegerField 2020-06-28 22:21:18 +07:00
Iaroslav
1614eef452
Revert change of JBigIntegerField to Ring, delete unused psvm function 2020-06-28 22:10:39 +07:00
Iaroslav
415d11749a
Improve big arithmetics algebra in JVM module of kmath-core 2020-06-28 22:06:50 +07:00
Iaroslav
e91c5a57c4
Minor refactor for changed ExtendedFieldOperations, replace DoubleBuffer with RealBuffer 2020-06-27 20:31:42 +07:00
Iaroslav
a71c02e9ed
Merge remote-tracking branch 'origin/dev' into adv-expr-improved-trigonometry
# Conflicts:
#	kmath-ast/README.md
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/AsmBuilder.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/buildName.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/classWriters.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/methodVisitors.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/asm/internal/specialization.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/RealBufferField.kt
2020-06-27 20:24:41 +07:00
Iaroslav
27605aee82
Merge remote-tracking branch 'origin/dev' into adv-expr 2020-06-27 19:56:00 +07:00
4b067f7a97 DoubleBuffer -> RealBuffer. Number algebra refactoring. 2020-06-27 12:19:43 +03:00
Iaroslav
a275e74cf2
Add mapping for other dynamic operations 2020-06-26 14:57:07 +07:00
Commander Tvis
002de8d23a
Merge remote-tracking branch 'origin/dev' into adv-expr
# Conflicts:
#	examples/build.gradle.kts
2020-06-25 10:28:32 +07:00
668d13c9d1 Minor refactoring + domains 2020-06-23 20:03:45 +03:00
Iaroslav
418c29630f
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonometry 2020-06-19 21:01:44 +07:00
a1f0188b8b Functional expression builders 2020-06-16 16:29:52 +03:00
Commander Tvis
41a81e7a14
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonometry 2020-06-16 19:42:16 +07:00
8264806958 Algebra delegates update. 2020-06-16 14:52:02 +03:00
Iaroslav
f8f1814def
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonometry 2020-06-16 14:40:41 +07:00
96550922cd Removal of AsmExpression 2020-06-15 22:07:31 +03:00
Commander Tvis
c10901ae98
Merge branch 'adv-expr' into adv-expr-improved-trigonometry 2020-06-15 21:02:58 +07:00
3434dde1d1 ASM API simplification 2020-06-15 11:02:13 +03:00
Iaroslav
95d5e4a688
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonomery 2020-06-14 01:27:47 +07:00
Iaroslav
cedfd3fe09
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-ast/build.gradle.kts
#	kmath-ast/src/commonMain/kotlin/scientifik/kmath/ast/parser.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/ast/Parser.kt
#	kmath-ast/src/jvmMain/kotlin/scientifik/kmath/ast/parser.kt
2020-06-14 00:21:07 +07:00
Iaroslav
48b688b6b1
Fix minor problems occured after merge 2020-06-14 00:06:12 +07:00
Commander Tvis
76ad027460
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonomery
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/NumberAlgebra.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/operations/OptionalOperations.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/structures/ExtendedNDField.kt
2020-06-13 16:41:26 +07:00
866ae47239 replace raw by symbol in algebra 2020-06-13 11:51:33 +03:00
Iaroslav
fec8c7f9d1
Minor refactor and encapsulation 2020-06-13 15:50:21 +07:00
Iaroslav
36ad1fcf58
Minor refactor and document 2020-06-13 15:44:54 +07:00
Iaroslav
3ec1f7b5f1
Merge kmath-asm and kmath-ast modules, make all the ExpressionAlgebras concise and consistent, implement new-styled builders both for ASM and F. expressions 2020-06-13 02:26:12 +07:00
Iaroslav
b902f3980a
Fix issues found after merge 2020-06-12 22:10:56 +07:00
Iaroslav
07b938e582
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/functionalExpressions.kt
#	settings.gradle.kts
2020-06-12 21:58:50 +07:00
2751cee926 MST expression 2020-06-12 16:56:58 +03:00
047af8c172 Fix ND extendend fields 2020-06-12 11:11:13 +03:00
5e92d85c46 Separate ast module 2020-06-12 10:40:59 +03:00
a77d3d0bbf Merge branch 'dev' of https://github.com/altavir/kmath into adv-expr 2020-06-12 08:46:45 +03:00
f46615d3bc Left and right-side operations in Algebra 2020-06-12 08:43:47 +03:00
e8a6ecd5c3 Merge remote-tracking branch 'origin/adv-expr' into adv-expr 2020-06-11 12:47:01 +03:00
0507bfcc24 Expression simplification 2020-06-11 09:46:42 +03:00
Commander Tvis
60898a3512
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-asm 2020-06-11 10:35:48 +07:00
Commander Tvis
a5fea4f22d
Merge remote-tracking branch 'mipt-npm/dev' into adv-expr-improved-trigonomery 2020-06-11 10:34:46 +07:00
Commander Tvis
ef67d82d84
Repair multiplication for Int, Long, Short, Byte Ring 2020-06-11 10:21:13 +07:00
Commander Tvis
62ca19bb64
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-improved-trigonomery 2020-06-11 08:51:38 +07:00
Commander Tvis
927aa589ad
Add missing override modifiers 2020-06-11 08:49:38 +07:00
Commander Tvis
a4dfb4eb15
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt
2020-06-11 08:45:42 +07:00
Commander Tvis
a0453da4b3
Refactor, replace constants List with Array, create specification of named functions 2020-06-10 08:57:17 +07:00
Iaroslav
2e5c13aea9
Improve support of string-identified operations API, rework trigonometric operations algebra part: introduce inverse trigonometric operations, rename tg to tan 2020-06-10 02:05:13 +07:00
Iaroslav
1b6a0a13d8
Completely rework Expression API to expose direct unaryOperation and binaryOperation, improve ASM API accordingly 2020-06-10 00:44:56 +07:00
Iaroslav
33a519c10b
Apply new interfaces structure to ASM Expression Field/Space 2020-06-09 22:22:15 +07:00
Iaroslav
4dcdc0f99c
Merge remote-tracking branch 'mipt-npm/adv-expr' into adv-expr-asm
# Conflicts:
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/Expression.kt
#	kmath-core/src/commonMain/kotlin/scientifik/kmath/expressions/FunctionalExpressions.kt
2020-06-09 22:17:42 +07:00
3e03f09504 Merge remote-tracking branch 'origin/adv-expr' into adv-expr 2020-06-09 14:44:11 +03:00
5dc07febe3 Expression simplification 2020-06-09 13:07:40 +03:00
2855ad29a4 Remove unused argument in functionalExpressions.kt 2020-06-09 11:14:47 +03:00
774b1123f7 Minor change in grid builders 2020-06-08 12:07:27 +03:00
Iaroslav
8f1cf0179a
Minor refactor 2020-06-08 14:48:44 +07:00
Iaroslav
c576e46020
Minor refactor 2020-06-08 14:46:00 +07:00
Commander Tvis
6ac0297530
Move asm dependency to implementation configuration; rename many ASM API classes, make AsmCompiledExpression implement functional Expression, fix typos, encapsulate AsmGenerationContext 2020-06-07 19:04:39 +07:00
Iaroslav
3ea76d56a5
Implement kmath-asm module stubs 2020-06-05 22:05:30 +07:00
1a869ace0e Refactored Expression tree API 2020-05-15 16:10:19 +03:00
4a26c1080e A prototype for advanced expressoins 2020-05-14 20:30:43 +03:00
e5ffb22126 For-real refactoring and test fix.
Never call equals on buffer
2020-05-07 09:54:46 +03:00
646207e140 Equlity half-fix for NDStructure 2020-05-06 10:50:08 +03:00
1015e238f1 Basic geometry 2020-04-29 19:28:24 +03:00
fbe7363cde BigInt refactoring 2020-04-26 21:47:34 +03:00
Alexander Nozik
85ad44ac9b
Merge pull request #81 from mipt-npm/big-int
BigInt implementation
2020-04-26 20:08:31 +03:00
28ef591524 Chain implements Flow 2020-04-26 20:04:15 +03:00
48cb683bc4 Refactoring of KBigInteger 2020-04-15 20:28:24 +03:00
Alexander Nozik
c6640b4d31
Merge pull request #84 from schakalakka/master
Fix two simple typos in file names:
2020-04-11 09:35:46 +03:00
Andreas Radke
cb1156fd90 Fix two simple typos in file names:
Rename LinearAlgrebra.kt to LinearAlgebra.kt
and BigNumers.kt to BigNumbers.kt
2020-04-10 20:54:10 +02:00
0e898ee1ea Add strided matrix dot test to check #82 2020-04-03 19:01:58 +03:00
19d1459a55 Fix division and add tests 2020-04-01 23:56:39 +03:00
9500ee0924 Initial implementation of multiplatform BigInteger 2020-03-30 16:30:16 +03:00
73f40105c4 Interpolation API 2020-02-12 21:57:21 +03:00
9d1ba1b78b Merge remote-tracking branch 'origin/dev-pk' into dev
# Conflicts:
#	settings.gradle.kts
2020-01-12 10:50:43 +03:00
396b31d106 Linear interpolation 2020-01-12 10:49:42 +03:00
8662935dbe Merge branch 'master' into dev 2020-01-12 10:02:28 +03:00
f9836a6477 Viktor prototype 2019-12-08 15:48:25 +03:00
bf2f4db468 readme update 2019-12-08 10:59:49 +03:00
1e70bebba6 Version update + some useful extensions 2019-11-20 16:12:41 +03:00
e5e9367c43 Factorized distributions/named priors 2019-09-02 13:07:42 +03:00
92b4e6f28c Tools to evaluate statistic 2019-08-25 10:51:25 +03:00
645d81abf0 Build migrated to gradle-tools 1.4 2019-08-24 09:00:04 +03:00
5a08faf0b6 Fix for #74. Removed square from complex 2019-08-24 08:23:02 +03:00
c31c9a9532 Move RealVector to kmath-for-real and use scientifik plugin 2019-08-07 21:47:50 +03:00
7f3dd95e72 Moved to scientifik plugin. Removed depricated Vector 2019-07-17 14:21:37 +03:00
5a8a45cf6a minor update 2019-06-18 10:22:47 +03:00
651f8323f3 Basic support for BigInteger (#69) 2019-06-09 22:03:35 +03:00
88ee3e5ab7 Random generator forks 2019-06-09 10:54:45 +03:00
1b647b6014 Random demo 2019-06-08 16:44:49 +03:00
f480aa1c5c Example fix 2019-06-08 16:25:51 +03:00
f706122266 Fine grained field types for autodiff 2019-06-06 19:04:32 +03:00
cee39e0666 Generalized Elizarov's algorithm for ExtendedField 2019-06-06 18:50:40 +03:00
5be55560cf Merged build config changes from dataforge 2019-05-31 13:03:00 +03:00
2503cb69d5 removed unnecessary type-parameter in matrix 2019-05-31 12:32:22 +03:00
c3f0dbe161 Safe modification of autodiff 2019-05-05 10:14:05 +03:00
6f9b704aa7 Safe modification of autodiff 2019-05-05 09:39:51 +03:00
765097cbbe MPP Univariate Autodiff from Roman Elizarov 2019-05-05 08:57:00 +03:00
d0a724771d MPP Univariate Autodiff from Roman Elizarov 2019-05-04 22:21:22 +03:00
fcab05b683 Fixes in flow transformations 2019-04-30 09:15:31 +03:00
3ddff86e24 Windowed flow test 2019-04-28 17:54:50 +03:00
1b5e9cdd35 Build migration finished 2019-04-24 10:44:03 +03:00
8208cb772f Chains moved to coroutines. Cumulatives to core 2019-04-24 09:36:43 +03:00
9182a4279c Revert to single build file 2019-04-23 22:31:05 +03:00
Andrey Mischenko
bae77b6979
Use type safe plugin accessors, collapse some nested DSLs, removed duplicate declarations 2019-04-23 18:07:36 +08:00
Andrey Mischenko
f797d7b082
Use type safe accessors for sourceSets that available now with multiplatform-config 2019-04-23 17:47:57 +08:00
Andrey Mischenko
eb2162987b
WIP move config to buildSrc 2019-04-23 16:07:26 +08:00
0e7ad1c0c0 Build refactoring 2019-04-23 10:33:39 +03:00
Andrey Mischenko
e30337e196
WIP move config to buildSrc 2019-04-23 15:13:10 +08:00
b2d97651b1 Removed unnecessary inlines 2019-04-21 22:34:35 +03:00
e500046932 Added Comparable to Complex 2019-04-21 18:02:16 +03:00
a9ed3fb72e LU decomposition and inversion working 2019-04-21 16:17:30 +03:00