Dynamic logic for reasoning about actions and agents by