Dependent Types and Conversion Checking