Formal Methods in Computer Aided Design