Why so Many Forms
Each represents a different tradeoff in ease of use, efficiency, or correctness
Smaller sets can provide full functionality
Situation is the same as in Fortran or C —different forms can have performance implications (consider the 6 ways of ordering matrix-matrix multiply, none of which is optimal).