Zaslat SMS: Structural temporal logic for mechanized program verification