This is documentation for Mathematica 8, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.1)
MATHEMATICA TUTORIAL

Operations on Scalars, Vectors, and Matrices

Most mathematical functions in Mathematica are set up to apply themselves separately to each element in a list. This is true in particular of all functions that carry the attribute Listable.
A consequence is that most mathematical functions are applied element by element to matrices and vectors.
The Log applies itself separately to each element in the vector.
In[1]:=
Click for copyable input
Out[1]=
The same is true for a matrix, or, for that matter, for any nested list.
In[2]:=
Click for copyable input
Out[2]=
The differentiation function D also applies separately to each element in a list.
In[3]:=
Click for copyable input
Out[3]=
The sum of two vectors is carried out element by element.
In[4]:=
Click for copyable input
Out[4]=
If you try to add two vectors with different lengths, you get an error.
In[5]:=
Click for copyable input
Out[5]=
This adds the scalar to each element of the vector.
In[6]:=
Click for copyable input
Out[6]=
Any object that is not manifestly a list is treated as a scalar. Here is treated as a scalar, and added separately to each element in the vector.
In[7]:=
Click for copyable input
Out[7]=
This multiplies each element in the vector by the scalar .
In[8]:=
Click for copyable input
Out[8]=
It is important to realize that Mathematica treats an object as a vector in a particular operation only if the object is explicitly a list at the time when the operation is done. If the object is not explicitly a list, Mathematica always treats it as a scalar. This means that you can get different results, depending on whether you assign a particular object to be a list before or after you do a particular operation.
The object is treated as a scalar, and added separately to each element in the vector.
In[9]:=
Click for copyable input
Out[9]=
This is what happens if you now replace by the list .
In[10]:=
Click for copyable input
Out[10]=
You would have gotten a different result if you had replaced by before you did the first operation.
In[11]:=
Click for copyable input
Out[11]=