В общем случае Mathematica не работает со списками поэлементно. Поэлементная работа -- это автоматическое применение функции к каждому элементу списка. Например, сложение.
Пусть:
Код:
In> x = {a, b, c};
Прибавим число 2.
Код:
In> x + 2
Значок + превращается в функцию Plus. То же самое, но в другой форме.
Код:
In> Plus[{a, b, c}, 2]
Out> {2+a,2+b,2+c}
Двойка прибавилась к каждому элементу. Это произошло потому, что Plus имеет атрибут Listable.
Код:
In> Attributes[Plus]
Out> {Flat, Listable, NumericFunction, OneIdentity, Orderless, Protected}
Значок < превращается в функцию Less.
Код:
In> HoldForm[2 < 0] // FullForm
Out> HoldForm[Less[2,0]]
У нее нет атрибута Listable, поэтому она не будет автоматически применяться к каждому элементу списка, что и произошло в вашем коде.
Код:
In> Attributes[Less]
Out> {Protected}
In> Less[x, 0]
Out> {a,b,c}<0
После применения Less к каждому элементу списка, у нас будет список логических значений, который все равно не получится использовать в If как задумывалось.
Код:
In> x={1,-2,3};
Map[(#1<0)&,x]
If[%,0,x^3]
Out> {False,True,False}
Out> If[{False,True,False},0,x^3]