
Re: checking the sign of all terms in a long expression
Posted:
Apr 12, 2014 5:17 AM


Are the symbols a, b, etc., just symbolic, as you seem to indicate, or might they be actual numeric values, too?
If indeed the symbols a, b, etc. are just symbols and NOT numbers, then the following should help  but note that Mathematica will automatically rearrange the terms of toCheck into its usual canonical form.
toCheck = a + a b + a b c + a c  b + bc + d  e f (* a  b + a b + bc + a c + a b c + d  e f *)
Flatten@Position[List@@toCheck, Times[1,__]] (* {2, 8} *)
If you insist on identifying the "negative" terms by their positions in the original expression, before it is evaluated, then you may want to treat it as a string, and the treatment will be trickier.
On Apr 11, 2014, at 2:10 AM, dantimatter <google@dantimatter.com> wrote:
> > hello all > is there to check the signs of all terms in a symbolic expression, like > > toCheck = a + a b + a b c + a c  b + bc + d .... > > in this case, with the assumption that the a, b, c etc are all positive, only one term is negative (b by itself) and the rest are positive. I have expressions like this that have a hundred or more terms and i'm worried i might not be catching all those that are of a different sign. > > thanks >
Murray Eisenberg murray@math.umass.edu Mathematics & Statistics Dept. Lederle Graduate Research Tower phone 240 2467240 (H) University of Massachusetts 710 North Pleasant Street Amherst, MA 010039305

