This is an old version, view current version.
10.3 Upper bounded scalar
Stan uses a negated logarithmic transform for upper bounds.
Upper bound transform
If a variable X is declared to have an upper bound b, it is transformed to the unbounded variable Y by
Y=log(b−X).
Upper bound inverse transform
The inverse of the upper bound transform converts the unbounded variable Y to the variable X bounded above by b through
X=b−exp(Y).
Absolute derivative of the upper bound inverse transform
The absolute derivative of the inverse of the upper bound transform is
|ddy(b−exp(y))|=exp(y).
Therefore, the density of the unconstrained variable Y is defined in terms of the density of the variable X with an upper bound of b by
pY(y)=pX(b−exp(y))⋅exp(y).