However, I think even my above “update” is incorrect. By that reasoning, the following should be equivalent:
parameters {
real<lower=0> C;
}
transformed parameters {
real lnC = log(C);
}
model {
target += lnC; // Is this already included implicitly?
}
and
parameters {
real lnC;
}
transformed parameters {
real C = exp(C);
}
model {
target += lnC; // needed to convert to uniform in C>0.
}
However, this does not appear to be the case; the actual models (which include data and other parameters) agree when I remove the Jacobian addition for the model with parameter real<lower=0> C;
.
So then it appears that the default prior is uniform in the real parameter, even with a lower limit — the Jacobian is added in by default no matter what (as @Funko_Unko said in their original response).
Can an expert comment (and/or point to appropriate documentation)?
What am I missing?