Formal Methods in Computer-Aided Design by J.W. O'Leary & Mark D. Aagaard