90 likes | 220 Vues
The Process Analysis Toolkit (PAT) is a powerful simulator and model checker specifically designed for analyzing concurrent systems. With features such as visualized simulation, full LTL model checking under fairness, and refinement checking for behaviors and data, PAT provides an enhanced environment for developers and researchers. This guide covers installation instructions, system components, language syntax, and an example demonstration to get you started effectively. Visit our website to download the latest version and begin exploring PAT's capabilities.
E N D
Outline • What is PAT? • Installation • System Components • Editor • Simulator • Model Checkers • System Architecture • Language Syntax • Example Demonstration • QA
What is PAT? • Process Analysis Toolkit: an enhanced Simulator, Model Checker for concurrent systems • Visualized simulation, • Full LTL model checking (under fairness), • Refinement checking (behaviors + data). • Website • http://pat.comp.nus.edu.sg • Download (Demo) • Register your information • Download the latest version installation file
Installation • System Requirements • OS: Windows XP, Windows Vista and Windows Server 2000/2003/2008. • .NET Framework 2.0 • Installation • Follow the installation wizard. • Update and Un-installation • Automatic update • Easy un-installation from program list
System Components • Editor: user friendly editing environment featured with • Syntax highlight • Text editing: copy/paste, find/replace, (un)comments… • Multi-documents • Simulator • Step by Step simulator • State space generation (up to 300 states) • Trace replace • Model Checker • Deadlock freeness • Reachability testing • LTL property checking (with fairness assumptions) • Refinement checking
Language Syntax CSP Based language extended with variables. (F1 help in PAT) • Global definitions: • Constants • Variables/arrays • Channels • Propositions • Expressions • Integer / Boolean variables • Math operators: +, -, *, /, mod, >, <, ==, != • Logic operators: &&, || • If-then-else • while loop • User defined methods in C# • Assertion • Deadlock-freeness • Reachability • LTL • Refinement/equivalence • Process definitions • Stop • Skip • Event prefixing • Assignments • Channel output/input • Sequential composition • External/Internal choice • Conditional choice • Case • Guarded process • Interleaving • Parallel composition • Interrupt • Hiding • Selecting • Recursion