Mathematical Foundations for Computer Science