# Dots and Crosses

### Problem:

 From the "cab-bac" formula aX(bXc) = (c.a)b - (b.a)c

 establish the validity of, (uXv)X(wXz) = (u.wXz)v - (v.wXz)u

#### Solution:

 First some prelims to simplify the notation,

> dot := (u,v)-> sum(u[i]*v[i],i=1..3);

```                                          3
-----
\
dot := (u, v) ->   )   u[i] v[i]
/
-----
i = 1```
> alias(cp=crossprod):
> u := vector(3): v:=vector(3):w:=vector(3):z:=vector(3):
 Now the left hand side of what we want to show is,

> lh := cp( cp(u,v), cp(w,z) ):
 and the right hand side is,

> rh := dot( u, cp(w,z))*v - dot(v, cp(w,z))*u:
 and we need to show that,

> NewF := lh = rh:
 but each of the three components of (lh-rh) is zero since,

> simplify(evalm(lh-rh)[1]);

`                                       0`
> simplify(evalm(lh-rh)[2]);
`                                       0`
> simplify(evalm(lh-rh)[3]);
`                                       0`

Link to the commands in this file
Carlos Rodriguez <carlos@math.albany.edu>