Dynamic and Formal Verification of Embedded Systems: A Comparative Survey