Lecture notes on Petri nets

petri nets properties analysis and applications and petri nets in software engineering with example pdf free download
Dr.DavidWllker Profile Pic
Dr.DavidWllker,United States,Professional
Published Date:11-07-2017
Your Website URL(Optional)
Comment
An Introduction to Petri nets and how to analyse them... G. Geeraerts Groupe de Vérification - Département d’Informatique Université Libre de Bruxelles 1Introduction Concurrency: property of a “system” in which • many “entities” act at the same time and interact. Often found in many application: • Computer science (e.g.: parallel computing) • Workflow • Manufacturing systems • .... • 3Introduction Concurrency Must wait for the two other machines Work in parallel 4Introduction Concurrency Can write or read on the DB Can write or read on the DB 5Introduction Concurrency Boss gives work Employees: work in parallel 6Introduction Concurrency Boss gives work Employees: work in parallel 6Introduction Concurrency Boss gives work Employees: work in parallel 6Introduction Concurrency Boss receives credit gives work for the results Employees: work in parallel 6Introduction Petri nets are a tool to model • concurrent systems and reason about them. Invented in 1962 by C.A. • Petri. 7The aim of the talk Introduce you to Petri nets (and some of • their extensions) Explain several analysis methods for PN • i.e., what can you ‘ask’ about a PN ? • Give a rough idea of the research in the • verification group at ULB... ... and foster new collaborations ? • 8How I use Petri nets 2 GEERAERTS, RASKIN, AND VAN BEGIN p 1 • t t t 7 1 8 template typename T T Max(T a, p p p 6 2 7 T b) t t t return a b ? b : a; 5 2 6 abstraction p 3 include string int main() // fonction main t 3 int i = Max(3, 5); p char c = Max('e', 'b'); 5 std::string s = Max(std::string p 4 t 2 4 ("hello"), std::string("world")); float f = Maxfloat(1, 2.2f); Figure 1: The Petri net on which the algorithm proposed in ? may not compute the whole coverability set. p " 1 t 1 1,0,0,0,0" 1,0,0,0,0" p " 2 t t 5 6 t 2 Analysis method 0,0,0,1,2"0,1,0,0,0" 0,0,0,1,2"0,1,0,0,0"0,1,0,0,1" p " 3 t 4 t · t of PN 3 4 0,0,1,0,3"0,0,1,0,ω" ×" 0,0,1,0,ω" p ,p " 3 5 (a) Step 1. (b) Step 2. (c) Step 3. Figure 2: A counter-example to Finkel’s algorithm. Nodes and edges in grey have been 9 removed. Thick grey arrows represent the proofs.How you might use PN 2 GEERAERTS, RASKIN, AND VAN BEGIN p 1 • t t t 7 1 8 p p p 6 2 7 Your favorite t t t 5 2 6 abstraction p 3 application t 3 p 5 p 4 t 2 4 Figure 1: The Petri net on which the algorithm proposed in ? may not compute the whole coverability set. p " 1 t 1 1,0,0,0,0" 1,0,0,0,0" p " 2 t t 5 6 t 2 Analysis method 0,0,0,1,2"0,1,0,0,0" 0,0,0,1,2"0,1,0,0,0"0,1,0,0,1" p " 3 t 4 t · t of PN 3 4 0,0,1,0,3"0,0,1,0,ω" ×" 0,0,1,0,ω" p ,p " 3 5 (a) Step 1. (b) Step 2. (c) Step 3. Figure 2: A counter-example to Finkel’s algorithm. Nodes and edges in grey have been 10 removed. Thick grey arrows represent the proofs.Intuitions 11Ingredients A Petri net is made up of... Places = some type of resource consume and produce Transitions resources = one unity of a Tokens certain resource Tokens ‘live’ in the places 12Transitions Output places Input places 2 3 13Firing a transition Transitions consume tokens from the input places and produce tokens in the output places 2 3 14Firing a transition Transitions consume tokens from the input places and produce tokens in the output places 2 3 Now, the transition cannot be fired anymore 15Example 1 Can write or read on the DB Can write or read on the DB The two machines cannot write at the same time 16Example 1 read read idle idle write write The token tells us the state of the process 17Example 1 read read idle idle write write The token tells us the state of the process 18

Advise: Why You Wasting Money in Costly SEO Tools, Use World's Best Free SEO Tool Ubersuggest.