Suppose that we have $N$ points, and a distance matrix $D \in \mathbb{R}^{N \times N}$ describing the Euclidean distance among those points. For now, assume that we do not necessarily know how many dimensions the original points lived in.
Is there a general way to construct a new matrix $B \in \mathbb{R}^{N \times P}$, which has a distance matrix equal to $D$?
Initially, we can suppose that we are free to make $P$ as large as we want. Is there a way to estimate the minimum $P$ for a given $D$? Does the problem change if we know $P$ in advance?
Please note that a given matrix $B$ will likely not be a unique solution, particularly at small $N$. I am just looking for a general way to construct any $B$ consistent with $D$.