> Add(eq1, eq2) to raise an error What is wrong with `Eqn(eq1.lhs+eq2.lhs, eq1.rhs+eq2.rhs)`?
/c On Tuesday, February 9, 2021 at 6:54:07 PM UTC-6 Oscar wrote: > On Tue, 9 Feb 2021 at 23:58, S.Y. Lee <syle...@gmail.com> wrote: > > > > I was not very fond for defining sympy Add, Mul, Pow or Function > application for equation object because I don't think that the algebra of > equation looks well unifiable with other mathematical objects like Expr at > the first glance, > > And I think that it's important to introduce Add, Mul, Pow, or function > application for Expr or at least the mathematical objects that are > conceptually unifiable with Expr. > > We automatically arrive to a conclusion that we need to define > unevaluated sympy functions like `Add(eq1, eq2, evaluate=False)`, `sin(eq, > evaluate=False)`, once we define how to define function application for > them. > > The suggestion is not to define Add, Mul or Pow for equation > arguments. The suggestion is that the Python operators +, *, ** can be > used with equations. They should never result in an unevaluated Add > though and I would expect Add(eq1, eq2) to raise an error. One of the > contentious parts of the proposal is being able to do Function(eq) > (e.g. cos(eq)) and that part I also object to. > > There are many different classes in sympy that use operators like +, * > etc without being Expr. > > > And we would also arrive in questions like: If equation brings its own > algebra system, there should be an equation of equations? How should we > solve them? > > It's not an "algebra system": it's just a few convenience operations. > It should not be confused with allowing Equation to be used in places > where Expr is expected. > > -- > Oscar > -- 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+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/2a60d2f3-c0fd-4532-aba5-7128e7f7b7e2n%40googlegroups.com.