Tensor Product Decomposition