Sorry, one more thing - I can't get the wildcards to work.  Can you provide
an example?

-Andy S.

On Sat, Jan 3, 2015 at 6:50 PM, Andrew Spielberg <aespielb...@gmail.com>
wrote:

> Hi Aaron,
>
> w.r.t. killing the Abs, that's not sufficient, because sometimes I need
> the Abs( ) to turn into -Id( ).
>
> One of those, exp, was created via simpify.  The other, expr, was created
> from "the ground up" using Symbols.  No assumptions are being made.
>
> -Andy S.
>
> On Sat, Jan 3, 2015 at 2:28 PM, Aaron Meurer <asmeu...@gmail.com> wrote:
>
>>
>>
>> On Fri, Jan 2, 2015 at 9:50 PM, Andrew Spielberg <aespielb...@gmail.com>
>> wrote:
>>
>>> Sorry for the double post.  It seems replace is very weak as well, not
>>> being able to detect multiples :-/
>>>
>>> In [60]: expr.replace(math.Abs(guardlength - 0.5*length), guardlength -
>>> 0.5*length)
>>> Out[60]: width*(-2*guardlength + length + Abs(2*guardlength -
>>> length))/Abs(2*guardlength - length)
>>>
>>> In [61]: expr.replace(math.Abs(2*guardlength - length), 2*guardlength -
>>> length)
>>> Out[61]: 0
>>>
>>
>> You can use Wild symbols to match against coefficients.
>>
>> But in your case, if all you want to do is kill all the Abs in the
>> expression, use expr.replace(Abs, Id).
>>
>> Aaron Meurer
>>
>>
>>>
>>>
>>> On Fri, Jan 2, 2015 at 11:47 PM, Andrew Spielberg <aespielb...@gmail.com
>>> > wrote:
>>>
>>>> This may be a dumb question, but can you please explain what is going
>>>> on here...?  exp was made using simpify, expr was created from scratch.
>>>> Replace operates on them differently.
>>>>
>>>> In [48]: exp
>>>> Out[48]: width*(-2*guardlength + length + Abs(2*guardlength -
>>>> length))/Abs(2*guardlength - length)
>>>>
>>>> In [49]: expr
>>>> Out[49]: width*(-2*guardlength + length + Abs(2*guardlength -
>>>> length))/Abs(2*guardlength - length)
>>>>
>>>> In [50]: exp.replace(math.Abs(2*guardlength - length), 2*guardlength -
>>>> length)
>>>> Out[50]: width*(-2*guardlength + length + Abs(2*guardlength -
>>>> length))/Abs(2*guardlength - length)
>>>>
>>>> In [51]: expr.replace(math.Abs(2*guardlength - length), 2*guardlength -
>>>> length)
>>>> Out[51]: 0
>>>>
>>>> In [52]: exp == expr
>>>> Out[52]: False
>>>>
>>>
>> I can't say. According to this, exp and expr (without replace) are
>> different. I can't say why, though, without seeing how you made them, as
>> the string forms are identical. Are you using assumptions on your symbols?
>>
>> Aaron Meurer
>>
>>
>>>
>>>> -Andy S.
>>>>
>>>> On Fri, Jan 2, 2015 at 10:06 PM, Aaron Meurer <asmeu...@gmail.com>
>>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Fri, Jan 2, 2015 at 12:13 PM, Andrew Spielberg <
>>>>> aespielb...@gmail.com> wrote:
>>>>>
>>>>>> Hi guys,
>>>>>>
>>>>>> Thanks for your help so far.  I am revisiting this after ignoring
>>>>>> this issue for a while.
>>>>>>
>>>>>> I'm still trying to come up with a good way to use this.  I've
>>>>>> noticed the following:
>>>>>>
>>>>>> Say:
>>>>>> a = Symbol('a')
>>>>>> b = Symbol('b')
>>>>>> assumptions = Q.positive(a - b)
>>>>>> expr = 1/Abs(a - b)
>>>>>>
>>>>>> If I try:
>>>>>>
>>>>>> refine(expr, assumptions)
>>>>>>
>>>>>> it returns:
>>>>>>
>>>>>> 1/(a - b)
>>>>>>
>>>>>> as desired.  But, if I try:
>>>>>>
>>>>>> expr = Abs(b - a)/Abs(a - b)
>>>>>>
>>>>>> it returns:
>>>>>>
>>>>>> │-b + a│
>>>>>> ────────
>>>>>>  a - b
>>>>>>
>>>>>> I can add an assumption that:
>>>>>>
>>>>>> assumptions = assumptions &  Q.negative(b - a)
>>>>>>
>>>>>> And then refining returns 1.  But then I can do something like:
>>>>>>
>>>>>> expr = Abs(0.5*b - 0.5*a)/Abs(a - b)
>>>>>>
>>>>>> And it fails again.  Is the pattern matcher this weak?  Is there any
>>>>>> way to get what I want that doesn't require refine, or is there a better
>>>>>> way to use refine to get what I want?  My assumptions are simple - they
>>>>>> will all be linear equations of variables.
>>>>>>
>>>>>
>>>>> I don't think refine is even using a pattern matcher. It really isn't
>>>>> very powerful yet, as I noted earlier in this thread.
>>>>>
>>>>> replace() has a better pattern matching abilities if that's all you're
>>>>> going for.
>>>>>
>>>>> Aaron Meurer
>>>>>
>>>>>
>>>>>> -Andy S.
>>>>>>
>>>>>> On Fri, Nov 14, 2014 at 6:03 PM, Aaron Meurer <asmeu...@gmail.com>
>>>>>> wrote:
>>>>>>
>>>>>>> Note that if you want to kill all abs in your expression, there's an
>>>>>>> easier way. expr.replace(Abs, Id)
>>>>>>>
>>>>>>> Aaron Meurer
>>>>>>>
>>>>>>> On Fri, Nov 14, 2014 at 5:02 PM, Aaron Meurer <asmeu...@gmail.com>
>>>>>>> wrote:
>>>>>>>
>>>>>>>> As I said, it's *very* proof of concept. Many advanced things don't
>>>>>>>> work.
>>>>>>>>
>>>>>>>> In this case, I think the issue is with the assumptions in general.
>>>>>>>> They can't deduce from the facts And(Q.positive(-beamwidth),
>>>>>>>> Q.positive(-length), Q.positive(0.9*beamwidth - length))
>>>>>>>>  that 0.866025403784438*beamwidth - length is positive.  I'm not
>>>>>>>> even sure what algorithms need to be implemented to make this work.
>>>>>>>>
>>>>>>>> Why are your beamwidth and length variables negative? From the
>>>>>>>> variable names, they sound like they should be positive?
>>>>>>>>
>>>>>>>> Aaron Meurer
>>>>>>>>
>>>>>>>> On Wed, Nov 12, 2014 at 9:44 PM, Andrew Spielberg <
>>>>>>>> aespielb...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> refine_abs isn't doing the trick here either.  Am I using this
>>>>>>>>> module incorrectly?
>>>>>>>>>
>>>>>>>>> On Tue, Nov 11, 2014 at 6:09 PM, Andrew Spielberg <
>>>>>>>>> aespielb...@gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> Thanks guys.  This seems to be mostly working so far.
>>>>>>>>>>
>>>>>>>>>> Any idea why this wouldn't be, though?
>>>>>>>>>>
>>>>>>>>>> In [1]: assumptions
>>>>>>>>>> Out[1]: And(Q.positive(-beamwidth), Q.positive(-length),
>>>>>>>>>> Q.positive(0.9*beamwidth - length))
>>>>>>>>>>
>>>>>>>>>> In [2]: exp
>>>>>>>>>> Out[2]: 0.866025403784439*beamwidth*(0.866025403784438*beamwidth
>>>>>>>>>> - length)/Abs(0.866025403784438*beamwidth - length)
>>>>>>>>>>
>>>>>>>>>> In [3]: math.refine(exp, assumptions)
>>>>>>>>>> Out[3]: 0.866025403784439*beamwidth*(0.866025403784438*beamwidth
>>>>>>>>>> - length)/Abs(0.866025403784438*beamwidth - length)
>>>>>>>>>>
>>>>>>>>>> (math is my sympy module)
>>>>>>>>>>
>>>>>>>>>> A little confused here as to why the fraction wouldn't simplify
>>>>>>>>>> out.  (0.866025403784438*beamwidth -
>>>>>>>>>> length)/Abs(0.866025403784438*beamwidth - length) should be 1.
>>>>>>>>>>
>>>>>>>>>> -Andy S.
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Tue, Nov 11, 2014 at 3:16 AM, Mateusz Paprocki <
>>>>>>>>>> matt...@gmail.com> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi,
>>>>>>>>>>>
>>>>>>>>>>> On 11 November 2014 01:13, Aaron Meurer <asmeu...@gmail.com>
>>>>>>>>>>> wrote:
>>>>>>>>>>> > Q is just a namespace for the assumptions, like Q.positive or
>>>>>>>>>>> Q.real.
>>>>>>>>>>> >
>>>>>>>>>>> > refine() simplifies things based on assumptions.
>>>>>>>>>>>
>>>>>>>>>>> I think we shouldn't use "refine()" and "simplifies" together as
>>>>>>>>>>> this
>>>>>>>>>>> only can increase confusion. Simplification implies that there
>>>>>>>>>>> is an
>>>>>>>>>>> optimisation procedure applied. refine() just transforms an
>>>>>>>>>>> expression
>>>>>>>>>>> given some facts about it.
>>>>>>>>>>>
>>>>>>>>>>> Mateusz
>>>>>>>>>>>
>>>>>>>>>>>  This example returns x - y,
>>>>>>>>>>> > because sqrt((x - y)**2) is equal to x - y if x - y is
>>>>>>>>>>> positive (but not in
>>>>>>>>>>> > general).
>>>>>>>>>>> >
>>>>>>>>>>> > What kinds of simplifications are you expecting to get out of
>>>>>>>>>>> your
>>>>>>>>>>> > constraints?
>>>>>>>>>>> >
>>>>>>>>>>> > Aaron Meurer
>>>>>>>>>>> >
>>>>>>>>>>> >
>>>>>>>>>>> > On Mon, Nov 10, 2014 at 5:42 PM, Andrew Spielberg <
>>>>>>>>>>> aespielb...@gmail.com>
>>>>>>>>>>> > wrote:
>>>>>>>>>>> >>
>>>>>>>>>>> >> Hi Aaron,
>>>>>>>>>>> >>
>>>>>>>>>>> >> Thanks for the speedy reply.  I'm not sure I fully understand
>>>>>>>>>>> what this
>>>>>>>>>>> >> example does, or how.  Could you perhaps elaborate?  What is
>>>>>>>>>>> Q?  What is the
>>>>>>>>>>> >> difference between refine and simplify?
>>>>>>>>>>> >>
>>>>>>>>>>> >> I should note that the entirety of my constraints will be
>>>>>>>>>>> linear, so if
>>>>>>>>>>> >> the current functionality can do that, that's enough.
>>>>>>>>>>> >>
>>>>>>>>>>> >> -Andy S.
>>>>>>>>>>> >>
>>>>>>>>>>> >> On Mon, Nov 10, 2014 at 5:06 PM, Aaron Meurer <
>>>>>>>>>>> asmeu...@gmail.com> wrote:
>>>>>>>>>>> >>>
>>>>>>>>>>> >>> There is a framework to do this with refine, like
>>>>>>>>>>> refine(sqrt((x -
>>>>>>>>>>> >>> y)**2), Q.positive(x - y)), but not much is implemented yet,
>>>>>>>>>>> so the
>>>>>>>>>>> >>> simplifications possible are quite limited (in fact, there's
>>>>>>>>>>> not much more
>>>>>>>>>>> >>> than the one that I just showed that is implemented).
>>>>>>>>>>> >>>
>>>>>>>>>>> >>> Aaron Meurer
>>>>>>>>>>> >>>
>>>>>>>>>>> >>> On Mon, Nov 10, 2014 at 3:58 PM, Andrew Spielberg <
>>>>>>>>>>> aespielb...@gmail.com>
>>>>>>>>>>> >>> wrote:
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> Hi all,
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> When creating variables, I know you can provide certain
>>>>>>>>>>> constraints on
>>>>>>>>>>> >>>> the domain of that variable.  For instance, one could say
>>>>>>>>>>> that a certain
>>>>>>>>>>> >>>> variable, x, is positive, real, rational, etc.  These
>>>>>>>>>>> constraints affect the
>>>>>>>>>>> >>>> way the simplify function behaves.
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> I am wondering, without creating auxiliary variables, can
>>>>>>>>>>> add other
>>>>>>>>>>> >>>> constraints?  For example, if I have a variable x that
>>>>>>>>>>> always must be
>>>>>>>>>>> >>>> greater than another variable y, can I specify:
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> x > y
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> in some way, and have the simplifier intelligently know how
>>>>>>>>>>> to handle
>>>>>>>>>>> >>>> it?  I know I could change my representation to be a = (x -
>>>>>>>>>>> y) and do
>>>>>>>>>>> >>>> everything in terms of my variable a, and set a positive,
>>>>>>>>>>> but this is less
>>>>>>>>>>> >>>> than ideal and will not work in a lot of my cases.
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> If there is no way to set these assumptions, is there some
>>>>>>>>>>> other
>>>>>>>>>>> >>>> recommended way to do intelligent simplification in some
>>>>>>>>>>> way?
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> -Andy S.
>>>>>>>>>>> >>>>
>>>>>>>>>>> >>>> --
>>>>>>>>>>> >>>> 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 post to this group, send email to sympy@googlegroups.com
>>>>>>>>>>> .
>>>>>>>>>>> >>>> Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>>>> >>>> To view this discussion on the web visit
>>>>>>>>>>> >>>>
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/80f87d8d-1504-40f6-b6d4-efb08cdcc824%40googlegroups.com
>>>>>>>>>>> .
>>>>>>>>>>> >>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>> >>>
>>>>>>>>>>> >>>
>>>>>>>>>>> >>> --
>>>>>>>>>>> >>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>>>>>> >>> Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>>>> >>> To view this discussion on the web visit
>>>>>>>>>>> >>>
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6L3OorvtGQaXp7RUg2RGtVweSgUk2XNQ_tDs%2BqYB5-iMg%40mail.gmail.com
>>>>>>>>>>> .
>>>>>>>>>>> >>>
>>>>>>>>>>> >>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>> >>
>>>>>>>>>>> >>
>>>>>>>>>>> >> --
>>>>>>>>>>> >> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>>>>>> >> Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>>>> >> To view this discussion on the web visit
>>>>>>>>>>> >>
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAM6e1JdxBKnfSxEMPxJnUqkd7XwOdkU4fddaqPRQmqGAaMZO-A%40mail.gmail.com
>>>>>>>>>>> .
>>>>>>>>>>> >>
>>>>>>>>>>> >> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>> >
>>>>>>>>>>> >
>>>>>>>>>>> > --
>>>>>>>>>>> > 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>>>>>> > Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>>>> > To view this discussion on the web visit
>>>>>>>>>>> >
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2Bn0vvxOd3H%2B-4rRdQOh4Std7uCfjzFudvbs9gQzOM5yQ%40mail.gmail.com
>>>>>>>>>>> .
>>>>>>>>>>> >
>>>>>>>>>>> > For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAGBZUCY_dQUZ095a2Gw8bXZZ3y%3D4co2vMvijApVCivw5yNNiAw%40mail.gmail.com
>>>>>>>>>>> .
>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>  --
>>>>>>>>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>>>>>> To view this discussion on the web visit
>>>>>>>>> https://groups.google.com/d/msgid/sympy/CAM6e1JfXy2vdW5Hgq_ZFwjAsML29K1UerEqt_xjsevDcBhRRjQ%40mail.gmail.com
>>>>>>>>> <https://groups.google.com/d/msgid/sympy/CAM6e1JfXy2vdW5Hgq_ZFwjAsML29K1UerEqt_xjsevDcBhRRjQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>  --
>>>>>>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6KUCB7Lg3x2TnXXRj__0O2FtYZ9K3BxLp6esoWJhRHpmA%40mail.gmail.com
>>>>>>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6KUCB7Lg3x2TnXXRj__0O2FtYZ9K3BxLp6esoWJhRHpmA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>  --
>>>>>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>>> To view this discussion on the web visit
>>>>>> https://groups.google.com/d/msgid/sympy/CAM6e1JdWEo0qOJwXWcimfOJw-dm3MN7S%2Bsen90Ac6hSf1%2Bo6YQ%40mail.gmail.com
>>>>>> <https://groups.google.com/d/msgid/sympy/CAM6e1JdWEo0qOJwXWcimfOJw-dm3MN7S%2Bsen90Ac6hSf1%2Bo6YQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>> .
>>>>>>
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>  --
>>>>> 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 post to this group, send email to sympy@googlegroups.com.
>>>>> Visit this group at http://groups.google.com/group/sympy.
>>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6J7o%2BTeZ-XmbYt_PUbSK57hD629pQn2vSAupObHr6P%3DEw%40mail.gmail.com
>>>>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6J7o%2BTeZ-XmbYt_PUbSK57hD629pQn2vSAupObHr6P%3DEw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>
>>>>
>>>>
>>>  --
>>> 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 post to this group, send email to sympy@googlegroups.com.
>>> Visit this group at http://groups.google.com/group/sympy.
>>> To view this discussion on the web visit
>>> https://groups.google.com/d/msgid/sympy/CAM6e1JdGbsiLXxPbq00X9oH8Pqn1fBV_PRttL5BugrcXxbzXig%40mail.gmail.com
>>> <https://groups.google.com/d/msgid/sympy/CAM6e1JdGbsiLXxPbq00X9oH8Pqn1fBV_PRttL5BugrcXxbzXig%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>  --
>> 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 post to this group, send email to sympy@googlegroups.com.
>> Visit this group at http://groups.google.com/group/sympy.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2BP%2BmEe87Ox1P66btJmh7hR2-D8cjVv117554ZAi6OthA%40mail.gmail.com
>> <https://groups.google.com/d/msgid/sympy/CAKgW%3D6%2BP%2BmEe87Ox1P66btJmh7hR2-D8cjVv117554ZAi6OthA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
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 post to this group, send email to sympy@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/CAM6e1Jd5mgLTG%2BpHovexWA7PEvuLpimwY7OiAa-uV1R0JR68zQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to