Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2014

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: checking the sign of all terms in a long expression

  • To: mathgroup at smc.vnet.net
  • Subject: [mg132568] Re: checking the sign of all terms in a long expression
  • From: Murray Eisenberg <murray at math.umass.edu>
  • Date: Sat, 12 Apr 2014 05:16:39 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net
  • References: <20140411061009.8DE2B6A30@smc.vnet.net>

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 at 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 at math.umass.edu
Mathematics & Statistics Dept.      
Lederle Graduate Research Tower      phone 240 246-7240 (H)
University of Massachusetts               
710 North Pleasant Street                
Amherst, MA 01003-9305









  • Prev by Date: Re: OnError [Thread"::"tdlen"]
  • Next by Date: Re: checking the sign of all terms in a long expression
  • Previous by thread: Re: checking the sign of all terms in a long expression
  • Next by thread: Re: checking the sign of all terms in a long expression