For convenience, an SDP may be specified in a slightly different, but equivalent form. For example, linear expressions involving nonnegative scalar variables may be added to the program specification. This remains an SDP because each variable can be incorporated into the matrix formula_28 as a diagonal entry (formula_29 for some formula_30). To ensure that formula_31, constraints formula_32 can be added for all formula_33. As another example, note that for any positive semidefinite matrix formula_28, there exists a set of vectors formula_35 such that the formula_30, formula_37 entry of formula_28 is formula_39 the scalar product of formula_40 and formula_41. Therefore, SDPs are often formulated in terms of linear expressions on scalar products of vectors. Given the solution to the SDP in the standard form, the vectors formula_35 can be recovered in formula_43 time (e.g., by using an incomplete Cholesky decomposition of X).