Hi. Thanks for working on this. I feel pretty strongly that it should be done, because we are always running into problems because of it. If it were not done automatically, it would not be a problem because we could just write some expand function that does it manually whenever we need it done (the reverse is not possible with automatic simplification).
On Feb 22, 2011, at 12:26 PM, Kate wrote: > > > On Feb 22, 12:10 pm, smichr <[email protected]> wrote: >> One thing that is helpful is if you copy and paste your actual input >> and output so it can be verified. > > That was copy-and-pasted. For some reason it's behaving differently > on different machines. Most likely one machine is 64-bit and the other is 32-bit (i.e., your Python is). You can check by running import sys sys.maxint in Python in each machine. If it is 2**63-1, then it is 64-bit; if it is 2**31-1, it is 32-bit. This causes problems from time to time because things hash differently in the two architectures, and we use hashing for example to sort .args order. > >> BTW, before you spend a lot of time making these changes, I think it >> would be good to discuss first whether we want this behavior to be >> standard. Do we really prefer -1*(3 + 4*x) to -3 - 4*x? Because if we >> can't reach a consensus the work will be in vain. > > I was under the impression from reading back that there was a > consensus, and the only reason it hadn't been done was the nightmare > tangle of tests it breaks. I agree with this. > > In any case, I need this behavior, so I'll be doing it for myself > regardless. I'd like to contribute it back to the community, but if I > end just using my patched version in my application, then it still > won't have been in vain. What do you need the behavior for, our of curiosity? > >> >> Also, when I gave this a try I got stuck at the examples in the >> solving recurrence relationships, as I recall. I believe I left a note >> in Mul.flatten just before the distribution step as I recall. >> > Thanks for the heads up. Is this in a branch of your repo? In the > master all I saw just before the distribution step was "Now we are > done". Although I suppose that could be a message of surrender ;-) I also created a branch starting to do this once, though I don't think I ever fixed any tests. See the issue page. Aaron Meurer -- 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.
