Symbolic Execution For Testing Complex Software. by Cristian Cadar