bakk
30eea3464f
Added 'diag' function
2022-01-20 20:49:00 +01:00
bakk
6212cd6b2d
Allow unary after power, eg. x^-1
2022-01-20 20:42:29 +01:00
bakk
545dc7539b
Matrix tranpose function
2022-01-19 23:46:36 +01:00
bakk
7d67b14673
Fixed matrix multiplication panicking in some cases
2022-01-18 19:53:32 +01:00
bakk
8d8fb3ca06
Fixed associativity for parse_sum/parse_factor
2022-01-18 18:57:54 +01:00
bakk
845602f663
Get estimate for constant + some integer
2022-01-18 01:39:23 +01:00
bakk
0d76564f13
Fixed estimator showing huge square roots
2022-01-18 01:03:32 +01:00
bakk
d1806f27df
Estimation for any fractions with a denominator < 100
2022-01-18 00:51:41 +01:00
bakk
39587bd30e
Added constants to rounding::CONSTANTS
2022-01-16 22:55:20 +01:00
bakk
224c320a3e
Allow nested sums
2022-01-16 22:24:42 +01:00
bakk
1dd0377e31
Allow nested integrals
2022-01-16 21:58:46 +01:00
bakk
13e42c48a8
Custom sum/prod variable name
...
Eg. sum(k=1, 3, 2k)
2022-01-16 21:48:46 +01:00
bakk
46d8f5055d
Show estimates when printing vector and matrices
2022-01-16 21:08:56 +01:00
bakk
61713b0ead
Allow piecewise without 'otherwise' branch
2022-01-16 21:06:51 +01:00
bakk
4e86a62f1f
Fixed clippy lints
2022-01-16 20:58:00 +01:00
bakk
fae9fad758
Use KalkValue::has_imaginary()
2022-01-16 20:12:44 +01:00
bakk
5600abbcec
Added 'mod' keyword
2022-01-16 15:44:32 +01:00
PaddiM8
ce22ca63f4
Chained comparison operators
2022-01-16 01:44:50 +01:00
PaddiM8
c49e613d52
Vector comprehensions
2022-01-16 00:33:26 +01:00
PaddiM8
c43218b0b5
Added integration tests for derivation, functions, groups, integration, matrices, sum, variables, and vectors
2022-01-14 22:56:59 +01:00
PaddiM8
625eabc779
Equality comparison for matrices
2022-01-14 22:43:20 +01:00
PaddiM8
7c3c4b129f
Fixed incorrect vector operations
2022-01-14 22:09:52 +01:00
PaddiM8
f8f16cb2ee
Fixed 'dx' parsing in integrals
2022-01-14 21:32:15 +01:00
PaddiM8
8faf17482a
Moved variable declaration parsing to analysis.rs
2022-01-14 19:49:04 +01:00
PaddiM8
82dfd8751a
Equality comparison for complex numbers
2022-01-14 17:59:04 +01:00
PaddiM8
e700445cde
Added logical and/or operators
2022-01-14 17:46:07 +01:00
PaddiM8
38895e0265
Perform comparison instead when there is no equation variable
2022-01-14 16:57:01 +01:00
PaddiM8
1273206d6a
Fixed panic for parenthesis-less function calls
2022-01-14 16:04:16 +01:00
PaddiM8
7b0435d3ec
Separated parsing into two phases
...
The first phase (parser.rs) is generally context-free, and builds a
naive AST where for example function calls are parsed as `f*(x)` where
`f` is a variable and `(x)`is a group. The second phase (analysis.rs)
then creates a new AST, where these are turned into a function call
expression instead.
2022-01-14 15:08:19 +01:00
PaddiM8
f3d8802438
Switch to one-based indexing
2022-01-07 01:24:19 +01:00
PaddiM8
df26046e1d
Indexing matrices by ⟦⟧
2022-01-07 01:19:33 +01:00
PaddiM8
e2271b7005
Allow matrices in prelude functions
2022-01-07 01:04:43 +01:00
PaddiM8
4738e22769
Matrices
2022-01-07 00:40:45 +01:00
PaddiM8
b481d3e788
Don't print real number when it's zero, in KalkValue::to_string()
2022-01-07 00:40:45 +01:00
PaddiM8
09348ba726
Simplify indexer parsing for variables with lowered part
2022-01-07 00:40:45 +01:00
PaddiM8
92ba6c5677
Indexing vectors by ⟦⟧
2022-01-07 00:40:45 +01:00
PaddiM8
098bb8fb90
Vector indexing with lowered numbers, eg. v_1
2022-01-07 00:40:45 +01:00
PaddiM8
443a1876fb
Don't allow multiplication of vectors of different sizes
2022-01-07 00:40:45 +01:00
PaddiM8
3c6f38c28a
Treat any groups with commas as vectors
2022-01-07 00:40:45 +01:00
PaddiM8
a8bfc1b497
Added support for ⋅ symbol
2022-01-07 00:40:44 +01:00
PaddiM8
16673931a1
Fixed regular.rs compilation errors
2022-01-07 00:40:44 +01:00
PaddiM8
41f8930024
Added vector functions min, max, average
2022-01-07 00:40:44 +01:00
PaddiM8
3cb16462db
Call a function on every item in a vector when given as parameter
2022-01-07 00:40:44 +01:00
PaddiM8
a7d602f1ce
Added vector operations
2022-01-07 00:40:44 +01:00
PaddiM8
532619e92b
Changed KalkNum to an enum, KalkValue, creating a better type system
2022-01-07 00:40:44 +01:00
PaddiM8
a23aca8ad3
v1.1.0
2022-01-01 17:02:11 +01:00
PaddiM8
9a16d92344
Created integration tests
2022-01-01 03:42:49 +01:00
PaddiM8
e6f3483a54
Support loading files in config dir
2022-01-01 02:35:33 +01:00
PaddiM8
dae1e9f290
Added permutation functions (for nPr and nCr), closes #52
2022-01-01 01:09:30 +01:00
PaddiM8
de6e5106e9
Bitshift operations, closes #80
2022-01-01 00:58:20 +01:00