Diagonalizar una matriz significa encontrar los valores propios de la matriz y ponerlos en una matriz diagonal:
$$\mathbf{S}^\text{diag}=\mathrm{diag}\left( \lambda_1,...,\lambda_n \right)\tag{1}\label{diagmat}$$
para $\lambda_i$ siendo los valores propios de la matriz $\mathbf{S}$ . Cuando queremos encontrar los valores propios de la matriz $\mathbf{S}$ resolvemos un problema de valores propios:
$$\mathbf{S}\mathbf{c}=\bar{\lambda}\mathbf{c}\tag{2}$$
para $\mathbf{c}$ siendo una matriz del vector propio, y $\bar{\lambda}$ siendo un vector de los valores propios. Esta ecuación también puede escribirse en forma de suma para el $i$ el valor propio:
$$\sum_kS_{jk}c_{ik}=\lambda_ic_{ij}\tag{3}\label{eigproblem}$$
Ahora bien, tal y como has indicado podemos definir nuestros orbitales atómicos como una combinación lineal de funciones base primitivas:
$$\chi_i=\sum_k c_{ik}\phi_k\tag{4}\label{AO}$$
Esto se puede utilizar para evaluar el auto-solapamiento de los orbitales atómicos:
$$S_{ii}=\int_\Omega\chi_i^*(\bar{r})\chi_i(\bar{r})\mathrm{d}\bar{r}=\int_\Omega\left|\chi_i(\bar{r})\right|^2\mathrm{d}\bar{r}=\left< \chi_i \left| \chi_i\right.\right>\tag{5}\label{selfoverlap}$$
Esto puede expandirse ahora utilizando la Ec. ( \ref {AO}):
$$S_{ii} = \left< \sum_k c_{ik}\phi_k \left| \sum_j c_{ij}\phi_j\right.\right>\tag{5}$$
Ahora, utilizando la definición de la integral de solapamiento $S_{jk}=\left< \chi_j \left| \chi_k\right.\right>$ la ecuación anterior puede formularse como
$$S_{ii}=\sum_{j,k}c_{ij}^*S_{jk}c_{ik}\tag{6}$$
Ahora, utilizando la Ec. ( \ref {eigproblema}) esto se puede expresar como:
$$S_{ii}=\sum_{j,k}c_{ij}^*\lambda_ic_{ij}=\lambda_i\sum_j\left|c_{ij}\right|^2\tag{7}$$
Ahora bien, como $S_{ii}$ puede verse que es mayor o igual a cero a partir de la Ec. ( \ref {selfoverlap}) y $\left|c_{ij}\right|^2$ también debe ser mayor o igual a cero, se deduce que los valores propios $\lambda_i$ deben ser todos mayores o iguales a cero. Es decir, a partir de la Ec. ( \ref {diagmat}) la matriz de solapamiento diagonalizada no puede tener valores negativos.