Formal Methods In Human-Computer Interaction by