recovery with dot product works without noise