On this PR https://github.com/sympy/sympy/pull/1598 the question of sqrt came up. Do we want an _eval_sqrt method? Should sqrt work on Matrices? How far do we want to take this idea?
On Mon, Oct 22, 2012 at 4:11 PM, Matthew Rocklin <[email protected]> wrote: > This is implemented in the last few commits of > https://github.com/sympy/sympy/pull/1598 > > def simplify(expr, ...): > try: > return expr._eval_simplify(ratio=ratio, measure=measure) > except AttributeError: > pass > > > On Tue, Oct 16, 2012 at 7:07 AM, Sergiu Ivanov > <[email protected]>wrote: > >> Hello, >> >> On Tue, Oct 16, 2012 at 08:15:12AM -0500, Matthew Rocklin wrote: >> > >> > I agree with Julien that vectorization is a different question. The >> > question at hand is (I think) the following: >> > >> > We have a function simplify that tries to reduce the complexity of a >> scalar >> > expression (for example by turning y* x / y into x). We have grown >> > accustomed to asking SymPy to reduce the complexity of an object by >> calling >> > `simplify(object)`. Should we extend the meaning of simplify to >> non-Exprs? >> > Many classes know some way to reduce their complexity. For example >> matrices >> > have a Matrix.simplify() method. Some sets like Union and Intersection >> have >> > a Set.reduce() method. Should we expose these methods through simplify? >> > I.e. do we want things like the following to work `simplify(Set)` ? >> >> I think `simplify(Set)` should work. >> >> I do believe however that the simplification functionality itself >> should be provided by the object on which `simplify` is invoked, >> rather than stuffed into `simplify`. (I think the majority agree that >> this is way to go, so I'm just redundantly restating the fact.) >> >> I think letting `simplify` work on all kinds of SymPy objects is the >> behaviour a user would expect. >> >> Sergiu >> >> -- >> You received this message because you are subscribed to the Google Groups >> "sympy" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/sympy?hl=en. >> >> > -- You received this message because you are subscribed to the Google Groups "sympy" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/sympy?hl=en.
