Symengine Versions Save

SymEngine is a fast symbolic manipulation library, written in C++

v0.6.0

4 years ago

Bug Fixes

  • Use opt_level in code generation - #1615
  • Add const qualifier to call method in LLVM visitors - #1619
  • Update license for Bison parser code and cotire code - #1627, #1628
  • Hide LLVM symbols in osx - #1629
  • Fix linsolve segfault - #1632

Build system changes

  • Support for LLVM 10 - #1636

New Functionality

  • Add cancel method - #1625
  • Add opt_level to some init calls - #1615
  • Add Julia specialization for print calls - #1616

People who contributed to the release:

  • Simon Stelter
  • Isuru Fernando
  • Roger Luo
  • Björn Dahlgren
  • Jogi Miglani
  • Ondřej Čertík
  • Jialin Ma
  • Liam Keegan

v0.5.0

4 years ago

Bug Fixes

  • Fix LLVMDoubleVisitor save->load->save->load bug - #1549
  • Fix coeff(x+1, x, 0) - #1564
  • Fix finding LLVM in SymEngineConfig.cmake - #1553
  • Fix path prefix in Binder-based environments - #1554
  • Add a virtual destructor to Visitor - #1580

Build system changes

  • Modified parser to use re2c and bison - #1588, #1591, #1593, #1594
  • LLVM 8 support - #1531
  • Removed -march=native from default flags - #1569
  • Versioned the DLL - #1604

New Functionality

  • Multi precision support for upper and lower gamma using MPFR 4 - #1544, #1545
  • 32-bit and 80-bit floating point support to LLVMVisitor - #1606
  • Option to cache intermediate expression in diff and subs - #1592, #1582
  • Add loggamma function to C wrapper API - #1556
  • Add truncate function - #1555
  • Avoid revisit in CountOpsVisitor - #1557
  • Add mathml, latex, ccode, jscode to cwrapper - #1562
  • Add kronecker_delta, lowergamma, uppergamma, beta, polygamma to cwrapper - #1603
  • Allow symengine rcp even in debug mode - #1548

People who contributed to the release:

  • Björn Dahlgren
  • Ondřej Čertík
  • Isuru Fernando
  • Connor Behan
  • Jialin Ma
  • Brandon Bocklund
  • Marcello Mansueto
  • Steven Lee

v0.4.1

4 years ago

WARNING: DO NOT USE THIS RELEASE

v0.4.0

5 years ago

New Functionality

  • New parser based on bison and flex
  • Initial support to generate symengine code for a matchpy expression
  • Supporting symbols in evalf
  • Reduced row echelon form
  • count_ops to count operations of an expression
  • Latex and MathML printing
  • Saving and loading LLVM compiled functions
  • Common subexpression elimination
  • xeus-cling and binder support
  • xreplace method
  • New functions dense_matrix_row_del, dense_matrix_col_del in C Wrappers and row_insert and col_insert in class DenseMatrix- #1313
  • expand_as_exp() member function is removed from derived classes of TrigFunction and HyperbolicFunction and implemented using visitor design pattern - #1309
  • as_real_imag- #1310
  • Polynomial Solvers - #1296
  • Floor and Ceiling classes - #1297 and #1290
  • Conjugate class - #1295
  • ConditionSet - #1291
  • Sign class - #1287
  • Vector-specific methods dot and cross - #1286
  • Dummy class - #1284
  • Relationals - #1276, #1279, #1280
  • Flint wrappers for factorization - #1274
  • New functions dense_matrix_row_join, dense_matrix_col_join in C Wrappers - #1273
  • Functions column_exchange_dense, row_join, col_join, row_del and col_del in class DenseMatrix - #1269
  • New functions vecbasic_set, vecbasic_erase, setbasic_erase in CWrappers - #1264, #1272
  • New functions number_is_zero, number_is_positive, number_is_negative, number_is_complex in CWrappers - #1256

Breaking Changes

  • SONAME updated to 0.4 (SONAME will pin to . for major version 0.)
  • complex_*real_part, complex_*imaginary_part are replaced by methods complex_base_real_part and complex_base_imaginary_part - #1263
  • real_mpfr_is_zero, complex_mpc_is_zero is replaced by method number_is_zero - #1256
  • basic_number_sign is replaced by methods number_is_zero, number_is_positive, number_is_negative - #1256

Bug Fixes

  • Additional comparison clause in Dummy::compare - #1304
  • Add oo and zoo to the parser - #1261
  • Fix segmentation fault in LLVMDoubleVisitor - #1260
  • NaN and infs in JuliaStrPrinter - #1258
  • The base classes for inverse trigonometric and inverse hyperbolic functions are now InverseTrigFunction and InverseHyperbolicFunction respectively. Base class for TrigFunction and InverseTrigFunction is TrigBase. Similarly, base class for HyperbolicFunction and InverseHyperbolicFunction is HyperbolicBase. #1309

And many other changes, here is a list of merged PRs not mentioned above:

People who contributed to the release:

  • Srajan Garg
  • Dirk Reusch
  • Ranjith Kumar
  • Isuru Fernando
  • Jean-Paul Pelteret
  • Shikhar Jaiswal
  • Sumith Kulal
  • Ondřej Čertík
  • Jialin Ma
  • Gerrit Ansmann
  • Björn Dahlgren
  • Nilay Pochhi
  • Eeshan Gupta
  • Ziyi Yan
  • Andreas Humenberger
  • Kieran Kaempen
  • Clouds Flowing
  • Sylvain Corlay
  • Alan Hu
  • Rajiv Ranjan Singh
  • Francesco Bonazzi
  • Simon Stelter

v0.3.0

7 years ago

Major changes

  • Version libsymengine.so - #1239

New Features

  • Use LLVM for compiling an expression to a function - #1094, #1220, #1242, #1244, #1245
  • Completely permissive licensed build using Boost.multiprecision - #1121
  • Macros and functions for checking version and features - #1135, #1114
  • Julia printer #1246
  • Support for NaN #1178
  • Error functions - #1097
  • More logic functions - #1206, #1102, #1098

Improvements

  • Cwrappers wrap more functions #1249, #1143, #1123, #1110
  • Parser Allow unicode and implicit multiplication, - #1231, #1235
  • More functions now immediately evaluate with floats - #1205, #1202, #1192, #1189, #1185, #1177, #1172
  • More derivatives - #1199, #1166, #1152, #1151
  • Complex numbers inherit from ComplexBase - #1171

Bug Fixes / Minor changes

  • Printing E**x is changed to exp(x) - #1136
  • Fix bug in trigonometric functions - #1051
  • Make hash function platform independent - #1233
  • Dividing by zero returns zoo - #1170
  • Fix double printing #1248
  • Fix bug in mpc evaluation #1210
  • Fix bug in gamma functions #1204
  • Fix bug in abs, sinh that lead to infinite recursion #1198
  • Fix bug in pow #1229, #1165

People who contributed to the release

  • Isuru Fernando
  • Ralf Stephan
  • Akash Trehan
  • Ritesh Kumar
  • Shikhar Jaiswal
  • Srajan Garg
  • Vishu Sidana
  • Ondřej Čertík
  • Siddharth Bhat
  • Tao He
  • Chad Mills
  • Abhimanyu Siwach
  • Jean-Paul Pelteret
  • Ranjith Kumar
  • Kv Manohar
  • Sumith Kulal
  • Kanchana Ruwanpathirana
  • Melanka Saroad

v0.2.0

7 years ago

Follow the README. More detailed build instructions are at our wiki: https://github.com/symengine/symengine/wiki/Building-SymEngine

Conda binaries are located at, https://anaconda.org/symengine/symengine

Ubuntu ppa at, https://launchpad.net/~symengine/+archive/ubuntu/ppa

v0.1.0

8 years ago

Follow the README. More detailed build instructions are at our wiki: https://github.com/sympy/symengine/wiki/Building-SymEngine