Hi,
Are the following commands supposed to produce the same results? indeed, they actually don't.

<hansl>
open greene19_1.gdt
# some series
series term1 = 0.3*TUCE + 4
series term2=2
list xlist = const TUCE term1 term2
matrix x = {xlist}
matrix y = {GPA}
# Model 1
ols GPA xlist --simple
# Model 2
eval inv(x'*x)*x'y
# Model 3
eval inv(x'x)*x'*y
# Model 4
eval mols(y, x)
</hansl>

OLS-built function (model 1) works fine and eliminates the extra variables that cause multicollinearity. 
Same for the OLS matrix-built function (model 4) which halts on the ground that  "Exact or near collinearity encountered"
But, models 2 & 3 give different results (i) from the OLS-built function and (ii) one from the other. I also tried to use 'invpd()' as presented in the Guide (Listing 17.3: OLS via matrix methods (p. 153)); same results as Models 2 & 3.

Am I missing something?

Best,
Artur