update strassen to use restricted matrix multiply