In mathematics, the dot product is a binary operation which takes two vectorss and returns a scalar quantity. It is also known as the inner product or scalar product.

It is defined as:

where θ is the angle between the two vectors. Thus, the dot product of two perpendicular vectors is always zero. If a and b are both unit vectors (ie of length 1), the dot product simply gives the cosine of the angle between them. Thus, given two vectors, the angle between them can be found by rearranging the above formula:

The dot product is particularly used in resolution of forces. If b is a unit vector, then the dot product gives the projection of a in direction b. In mechanics, this gives the component of a force in that direction.

Work is the dot product of force and displacement.


The definition has the following consequences:
  • the dot product is commutative, i.e. a·b = b·a.
  • two non-zero vectors a and b are perpendicular if and only if a·b = 0
  • the dot product is bilinear, i.e. a·(rb + c) = r (a·b) + (a·c)

From these it follows directly that the dot product of two vectors a = [a1 a2 a3] and b = [b1 b2 b3] given in coordinates can be computed particularly easily:

a·b = a1b1 + a2b2 + a3b3

or, using
matrix multiplication and treating the vectors as 1-by-3 matrices:

a·b = abT
where bT denotes the transpose of the matrix b.

The dot product satisfies all the axioms of an inner product. In an abstract vector space, the notion of angle between the elements of the space can be defined in terms of the inner product.

Proof that the two forms of definition are equivalent

;That is, given :a·b = a1b1 + a2b2 + a3b3 ;derive :a·b = |a|.|b|.cos(θ), ;or using nomenclature x for |x| :a·b = a.b.cos(θ).

This proof is shown for 3-dimensional vectors, but is readily extendable to N-dimensional vectors given mutually perpendicular unit vectors.

;Consider a vector :v =v1i + v2j + v3k. ;Repeated application of the Pythagorean theorem determines that :v2 =(v12 + v22 + v32). ;which is the same formula for the dot product of the vector v with itself, thus :v·v = v2.

;Now consider two vectors a and b from the origin and separated by an angle θ. A third vector c may be defined as :c = a-b. ;Using the law of cosines, we have :c2 = a2 + b2 - 2.a.b.cos(θ). ;And substituting the dot product for the squared lengths, we get :c·c = a·a + b·b - 2.a.b.cos(θ). ;But as c = a - b, we also have : c·c = (a - b)·(a - b). ;which expands to :c·c = a·a + b·b - 2.a·b. ;Then merging the two c·c equations we obtain :a·a + b·b - 2.a·b = a·a + b·b - 2.a.b.cos(θ). ;Subtracting a·a + b·b from both sides leaves :- 2.a·b = - 2.a.b.cos(θ). ;And dividing by -2 derives the final :a·b = a.b.cos(θ).

See also: Cross product