A Beginner's Guide to TLA+ Exploring State Machines & Proving Correctness | Jeff Weiss | Code BEAM V
TALK LEVEL: BEGINNER / INTERMEDIATE / ADVANCED This talk introduces TLA+ by taking a small package from hex, examining its properties, modeling its behaviour as a state machine, creating TLA+ correctness and liveness specifications for it, and then using the TLA+ model checker to prove correctness. No prior exposure to formal methods like TLA+ or PlusCalc are necessary. A passing familiarity with state machines is recommended, but not required. OBJECTIVES Introduce TLA+ and its value Illustrate conversion of a state machine to a TLA+ specification Building and checking correctness and liveness models of that TLA+ specification TARGET AUDIENCE Developers interested in adding more rigour to their problem solving and more quickly surfacing design errors.