THE DOT PRODUCT the cross product’s twin — its sign is the angle’s class
Where the cross product measures turning, the dot product measures alignment: a·b = axbx + ayby. Its sign classifies the angle between two vectors — positive means acute (pointing broadly the same way), zero means perpendicular, negative means obtuse. Together the dot and cross give the full angle without a single trigonometric call (the cross is the sine part, the dot the cosine part). It is projection, work in physics, similarity in machine learning — the same sum of products, everywhere.
The demo takes three dot products — acute, perpendicular, and obtuse — classifying each angle by sign: live demo
HISTORY & CREDIT the inner / dot product
“The angle between vectors needs arccosine.” — its class is just the sign of the dot product. cited
the value · a·b = axbx + ayby — the projection of one vector on the other, times length. the sign · acute(+), perpendicular(0), obtuse(−) — the angle’s class, no trig. the pair · cross = sine part (turning), dot = cosine part (alignment) — together, the full angle.
A sum of products whose sign says same-way, sideways, or against — the cross product’s complement. primitive
RECOMMEND FOR I-13 the angle class, on the compiler
On the canonical compiler, (3,4)·(4,3)=24 (acute), (1,0)·(0,1)=0 (perpendicular), (1,0)·(−1,0)=−1 (obtuse):
Recommend as a NULL — a computed primitive, the cross’s twin. The dot product yields a pinned value whose sign classifies the angle (B39); like the cross product it generates a number coextensive with the geometry, not a droppable channel. NULL — alignment to the cross product’s turning, and half of every angle computed without trig.