Direct product of vector spaces