Formal Methods For Quantitative Aspects Of Programming Languages by