Release 0.9.1 of Algebra-with-Sympy package...

41 views
Skip to first unread message

gu...@uwosh.edu

unread,
Mar 24, 2022, 8:42:32 PM3/24/22
to sympy
I would like to make everyone aware of an update to the Algebra-with-Sympy package. This is a working implementation of algebraic manipulation of equations with the relational operator "=". This implements a superset of the functionality proposed in this PR21333 and this SymPEP.

Updates since the last release include:
  • Equations labeled with their python name, if they have one.
  • Added flags to adjust human readable output and equation labeling.
  • Accept equation as function argument in any position.
  • First pass at solve() accepting equations.
  • Added override of root() to avoid warning messages.
  • More unit tests.
  • First pass at documentation.
Hope people find this useful. I have primarily been using it for producing answer keys for physical chemistry classes and for development of expressions for data analysis.

Regards,
Jonathan

Jason Moore

unread,
Mar 25, 2022, 3:58:05 AM3/25/22
to sympy
Jonathan,

I am not up-to-date on the discussions about contributing this to sympy, but why is there a sympep? If you are proposing adding a new module that solves equations, it seems that would only require a pull request and discussion there to refine.

If you are, on the other hand, planning to change core functionality in sympy, then I can see the need for a sympep.

I'm only mentioning this to suggest that going for a PR would likely be a faster track to getting this great functionality into sympy.

Jason

--
You received this message because you are subscribed to the Google Groups "sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sympy+un...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/cfb0a4b9-eb74-427c-82f0-ef320784cee5n%40googlegroups.com.

gu...@uwosh.edu

unread,
Mar 25, 2022, 8:22:26 AM3/25/22
to sympy
Jason,

The reason for the SymPEP is that the PR's for this functionality engendered a lot of discussion, with no final resolution. Part of the issue is that the functionality does require making some of the base classes (e.g. `class Function()`) equation aware. I do that in my package by extending the function class and then rerunning the `class funcX()` statements for all functions in `function._all_`. This is a bit sketchy, but works. Additionally, there is disagreement on how some of the calculus operations should behave.

Anyway, I would be happy to get this functionality into sympy proper, but the community needs to come to a consensus on what functionality to include and how. I have not yet been able to generate that consensus.

Thanks for the encouragement.

Jonathan

Chris Smith

unread,
Mar 25, 2022, 8:40:14 AM3/25/22
to sympy
Jonathan, I left a comment at https://github.com/sympy/SymPEPs/pull/1#issuecomment-1078989487 about a possible way to think about Eqn (or something similar) that may help to relax concerns about mathematical correctness.

/c

Jason Moore

unread,
Mar 25, 2022, 9:46:50 AM3/25/22
to sympy
Jonathan,

Ok, that's clear. Thanks. A sympep probably is the best bet then.

Jason

Reply all
Reply to author
Forward
0 new messages