Hofmann, M. (1997). Syntax and Semantics of Dependent Types.