is Head[] part of the expression?

*To*: mathgroup at smc.vnet.net*Subject*: [mg126880] is Head[] part of the expression?*From*: "Nasser M. Abbasi" <nma at 12000.org>*Date*: Fri, 15 Jun 2012 03:41:24 -0400 (EDT)*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com*Reply-to*: nma at 12000.org

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

**Follow-Ups**:**Re: part of the expression?***From:*Andrzej Kozlowski <akozlowski@gmail.com>

**Re: part of the expression?***From:*Christoph Lhotka <christoph.lhotka@fundp.ac.be>

**Re: part of the expression?***From:*Bob Hanlon <hanlonr357@gmail.com>