Re: part of the expression?

• To: mathgroup at smc.vnet.net
• Subject: [mg126901] Re: part of the expression?
• From: Bob Hanlon <hanlonr357 at gmail.com>
• Date: Fri, 15 Jun 2012 15:32:37 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• References: <201206150741.DAA24416@smc.vnet.net>

```Position always looks at the Head as a part of the expression. The results are due to differences in how the different tests handle the input of Integer.

Integer != 0

returns unevaluated whereas

PossibleZeroQ[Integer]

and

SameQ[Integer]

evaluate to the boolean False.

Bob Hanlon

On Jun 15, 2012, at 3:41 AM, "Nasser M. Abbasi" <nma at 12000.org> wrote:

> I am now in a state of little confusion about when Head[]
> of a list (the value at index 0) is 'looked' at when
> passing a list to a function to process the list.
>
> For example, below I have a list, and then Position[]
> is passed this list to find the nonzero elements in
> the list.
>
> Depending on the test for zero used, different
> results show up. Sometime the Head[] of the list
> is examined (because I get zero index) and sometime
> it is not.
>
> So, my question, what is the rule-of-thumb on this?
> I am making a cheat sheet for Mathematica, and
> wanted to make a simple rules to remember.
>
>
> -- case 1 -----
> v={1,0,3};
> Position[v,x_/;x!=0]
>
> Out[68]= {{1},{3}}   (*what I expected*)
> -----------------------
>
> --- case 2 --------------------
> Position[v,x_/;Not[PossibleZeroQ[x]]]
>
> Out[69]= {{0},{1},{3}}
> ----------------------------
>
> ----- case 3 ---------------------
> Position[v,x_/;Not[SameQ[x,0]]]
>
> Out[70]= {{0},{1},{3},{}}
> --------------------------------
>
> ---- case 4--------------
> Position[v, x_ /; Not[SameQ[x, 0]], 2]
>
> Out[71]= {{0},{1},{3}}
> ---------------------------
>
> thanks,
>
> --Nasser
>

```

• Prev by Date: Re: Theta function integration bug
• Next by Date: Re: part of the expression?