Symja Android Library Versions Save

:coffee: Symja - computer algebra language & symbolic math library. A collection of popular algorithms implemented in pure Java.

version_2020-12-12

3 years ago

Under Windows use

Main changes:

  • many small bug fixes and improvements
  • much more Mathematica packages can imported in the MMA webbrowser and console app Example: <<"https://raw.githubusercontent.com/antononcube/MathematicaForPrediction/master/SSparseMatrix.m"
  • refactored files based functions into package matheclipse-io
  • improved string functions with better regex (string patterns) support
  • SparseArray support
  • Dataset, SemanticImport, SemanticImportString support
  • Compile and CompilePrint support
  • TestReport, VerificationTest unit test support

version_2020-03-18

4 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode

Main changes:

  • bug fixes
  • #170 use tablesaw via SemanticImport, SemanticImportString
  • added associations <| ... |> Functions: Counts, Keys, KeySort, KeyExistsQ, Values, Lookup, Part
  • jas 2.6.6000
  • JGraphT 1.4.0
  • commonmark 0.14.0
  • LogicNG 1.6.2
  • more String... and Plot... functions, KleinInvariantJ, ArgMax, ArgMin, OrthogonalMatrixQ, Hypergeometric0F1, Hypergeometric2F1, DigitCount, GroupBy, TakeLargest, TakeLargestBy, MinMax, Ramp, JacobiAmplitude, BaseForm, JacobiCN, JacobiDN, JacobiSN
  • AbsoluteCorrelation for vector args
  • Implement ND() numerical differentiation for double values
  • improve interval arithmetic
  • Mod for 3 args
  • update MersennePrimeExponent functions for 46,47
  • #173 Sech[Log[5/3]] returns 3/4. Correct answer is 15/17
  • #172 - bugs in EllipticPi, EllipticF, Bessel functions
  • #169 replace filter() with select() method
  • #166 FunctionExpand markdown nested Sqrt() example
  • #160 Speed up ExpandAll
  • #155 Integrate(x^2,{x,-2,2}) returns wrong result 0
  • #153 Int(E^(-x^2), x) gives wrong result in numeric mode
  • #152 FullSimplify(-Sqrt(9-4Sqrt(5))+Sqrt(9+4Sqrt(5)))
  • #145 Round function

version_2019-10-18

4 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode (allows import of Mathematica packages with Get[])

Main changes:

  • implemented more graph theory functions
  • Graph theory functions uses vis-network JavaScript for displaying graphs
  • TreeForm uses vis-network JavaScript for displaying expressions as trees
  • Manipulate, Plot, ListPlot, ListLinePLot, ParametricPlot use generated JavaScript output for JSXGraph framework
  • Example: Plot(Piecewise({{x^2, x < 0}, {x, x >= 0&&x<1},{Cos(x-1), x >= 1}}), {x, -2, 12})
  • #139 Quantity malfunction with value of 1
  • #142 unable to calculate Simplify(-3+2*x+x^2==0)
  • #143 Create LucasL and Fibonacci polynomials
  • #145 improve Round function
  • #147 InverseBetaRegularized, GammaRegularized not implemented in numeric mode.
  • #150 avoid StackOverflow in NIntegrate
  • #151 "Numerator function gives wrong result in numeric mode"

version_2019-07-29

4 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode (allows import of Mathematica packages with Get[])

Main changes:

  • new Manipulate() function: Manipulate(Plot(Sin(x)*Cos(1 + a*x), {x, 0, 2*Pi}), {a,0,10})
  • new Graph theory algorithms based on JGraphT: Graph({1 -> 2, 2 -> 3})
  • F.show(expr) shows Manipulate, Plot, Plot3D, ListPlot, ParametricPlot or Graph if you set Config.USE_MATHCELL=true or Config.USE_VISJS=true
  • updated libraries apfloat 1.9.0, commonmark 0.13.0, LogicNG version 1.5.2

version_2019-05-23

5 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode (allows import of Mathematica packages with Get[])

Main changes:

  • Improved compatibility of Symja functions and pattern-matching with Mathematica functions https://github.com/axkr/symja_android_library/blob/master/symja_android_library/doc/functions
  • Improved Simplify, FullSimplify
  • Issue #70 improve port of Rubi 4.16 to Symja
  • use JAS version 2.6.5988
  • use LogicNG version 1.5.1
  • added F.symjify() method for parsing and evaluating Java objects
  • issue #98 functions BinarySerialize, BinaryDeserialize to handle WXF Format
  • Fix issue #101 avoid NPE in LogicNG QuineMcCluskeyAlgorithm (BooleanMinimize function)
  • issue #106 Use java-math-library for FactorInteger()
  • Fix issue #121 Exception occurs when calculate determinant of non-square matrix
  • Fix issue #122 Calculating polynomial discriminant of quintic gives wrong result

version_2018-11-30

5 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode (with import of packages)

Main changes:

  • Issue #101 QuineMcCluskeyAlgorithm needs DNF Formula as input
  • Issue #102 JAS version 2.6.5961
  • Issue #103 Use BracketingNthOrderBrentSolver instead of BrentSolver
  • fix bug in call to Im#imPowerComplex()
  • Fix bug in expression: List @@@ (1+2+3)
  • Use hipparchus 1.4 and guava 27.0

version_2018-11-01

5 years ago
  • Under Windows use symja.bat to run Symja
  • Under Windows use the symjamma.bat to run Symja in Mathematica syntax mode (with import of packages)

Main changes:

  • Issue #67: Port quantity functions from tensor project
  • Issue #70: Port Rubi 4.16 to Symja
  • Issue #83: FRatioDistribution and ChiSquaredDistribution
  • Issue #98: WXF functions BinarySerialize, BinaryDeserialize
  • Issue #99: Make VectorAnalysis.m package usable

version_2018-06-18

5 years ago

Changes:

  • Issue #55: Use java10 jshell to run a java/symja repl

  • Issue #51: Run scripts from Console or MMAConsole app

  • Issue #48: delete final from Config.DOUBLE_TOLERANCE definition

  • Issue #38: Moved ExprPreprocessor to https://github.com/axkr/java_codegen

  • Issue #31 fix bug in Rationalize function

  • Issue #24 Implement Series...() functions (not finished)

  • BooleanMinimize use logicng 1.4.0 release - see https://github.com/logic-ng/LogicNG/issues/12

  • improved FullSimplify, FunctionExpand, PolyGamma, MapIndexed, BesselJ, Inequality, IntegerPartitions, Table, Limit, Gamma, GammaRegularized, HarmonicNumber

  • use SeriesData in Coefficient, CoefficientList, Exponent functions

  • Cyclotomic polynomials

  • LinearRecurrence(list1, list2, n) function

  • ASCII Art Symja Logo for Console, MMAConsole

  • SquareMatrixQ function

  • refactor parsers to improve maintainability - delete ExprScanner class

  • Convergents({n1, n2, ...})

  • ContinuedFraction for argument Sqrt( d ) with d positive integer

  • IntegerDigits, FromDigits function

  • Sudivide() function

  • FrobeniusNumber function

  • EulerPhi, MoebiusMu, CarmichaelLambda improvements for negative arg

  • Refactor InterpolatingFunction by using a Piecewise polynomial

  • Median function for distributions

  • IntegerSym cache for ints -128 < i <128

  • Orthogonalize function

  • HoldPattern function

  • Improve CoefficientList function for multivariate polynomials

  • org.matheclipse.core.convert.TreeForm class - display an ASCII tree of a Symja expression

  • Exists(), ForAll() functions

  • JacobiZeta() function

  • Introduced Config.DOMINANT_IMPLICIT_TIMES Config.EXPLICIT_TIMES_OPERATOR (== true in RulePreprocessor)

version_2018-03-02

6 years ago

breaking changes:

  • Issue #18: Setting for disabling lazy evaluation of multiplication

other changes:

version_2017-11-10

6 years ago
  • use hipparchus 1.2
  • Transpose for index permutations
  • Ordering, TensorDimensions, TensorRank
  • ListConvolve, ListCorrelate, Accumulate
  • Correlation, Covariance, Median, Kurtosis, RotateLeft, RotateRight, Skewness, StandardDeviation, Variance, Quantile
  • Diagonal() function
  • LeastSquares(matrix, vector) function
  • DiagonalMatrix, HilbertMatrix, IdentityMatrix, FourierMatrix, ToeplitzMatrix, LowerTriangularize, UpperTriangularize

In the console available functions can be determined with the ? operator. Example

>> ?ArcC*
ArcCos, ArcCosh, ArcCot, ArcCoth, ArcCsc, ArcCsch