SlideShare a Scribd company logo
1 of 25
By
Kashif khan
Muhammad Yasir
Muhammad Ejaz khan
University of Camerino Italy
 Introduction to mCRL2
 LPS , LTS,PBES
 Operators
 Vending Machine
 Odd counter
 Login
 Car park
 Phone book
 Micro Common representation language 2
 Specification Language
 Used for modeling , verification and
validation
 Based on Algebra of communicating process
include data and time.
 Process perform actions, can carry data as
parameter
 Every process has LTS contain all states
 Stored in binary Format
 LTS constructed from LPS
 LPS, symbolic representation of LTS to
describe behavior of system explicitly
 LPS can be printed in Human Readable format
 LPS is speedy than LTS
 Statistical info Can be collected in LPSPP
 Generated from LPS
 It show the LPS as node link Diagram
(ltsgraph)
 LTSVIEW to reduce the complexity of
image(3D)
 DIAGRAPHICA reduce complexity to 2D
 LTSCONVERT smaller than Original LTS
 LTSCOMPARE check weather the two LTS are
behaviorally equal or not
 Parameterized Boolean Equation system
 Input needed for model checking, is a
formula expressing a desired property that
the system should not violate (or satisfy)
 Pbes stored in Binary format
 Pbespp stored in human readable format.
 BES genrated from PBES
 Sort
data type definition using keyword sort. Sorts are
non-empty, possibly infinite sets with data
elements.
sort D;
cons c, d : D;
 declares sort D in which all elements can be
denoted by either c or d.
Now for Boolean
sort B
cons true, false : B;
 The sum operator allows to formulate the choice
between a possibly infinite number of processes
in a very concise way.
 The process sum n: Nat . p(n) can be seen as a
shorthand for p(0) + p(1) + p(2) + .... The use of
the sum operator is often to indicate that some
value must be read, i.e., the process wants to
read either a 0 or a 1 or a 2,
sort Val = struct c2 | c5 | c10;
act coin: Val;
init sum v: Val . coin(v);
act num: Nat;
init sum v: Nat . num(2 * v);
 sort Val = struct c2 | c5 | c10;
 act
coffee;
coin, rej: Val;
 proc P = sum v: Val . coin(v) . (
(v != c10) -> rej(v) . P + (v == c10) ->
coffee . P ); init P;
 We can let data influence the course of events
by adding conditions to the process
c -> p <> q implies if c then do process p
else do process q
 act tick, reset;
proc
Clock(n: Nat) = (n < 99) -> tick . Clock(n + 1)
<> tick . Clock(0) + (n < 50) -> reset .
Clock(0);
init Clock(0);
 comm({a|b -> c}, p) .. multi-actions are
renamed to a single action... actions a and b
must communicate to c in process p.
 act a, b, c: Nat;
proc P = a(1) || b(1);
init comm({a|b->c}, P);
 Allow (allow(A, P))
removes all multi-actions from the transition
system that do not occur in A. Any states that
have become unreachable will also be
removed by mCRL2, as the resulting system
is smaller and bisimilar.
allow({c}; p) only multi-actions consisting
of a single c are allowed in p.
allow({c},comm({send|read- > c}, send||read))
 After inserting a coin of 10 cents, the user can
push the button for an apple. An apple will then
be put in the drawer of the machine.
act ins10, optA, acc10, putA, coin, ready ;
proc
User = ins10 . optA . User ;
Mach = acc10 . putA . Mach ;
init
allow(
{ coin, ready },
comm( { ins10|acc10 -> coin,
optA|putA -> ready }, User || Mach ) ) ;
sort
Value= struct even | odd;
act
r1,r2:Nat;
s1,s2,s3 : Value;
proc
P=sum n:Nat.(n<5)->r1(n).s1(if(n mod 2 == 0, even, odd)).P;
Q(n:Nat)=sum v:Value.s2(v).((v==even)->tau
+(v==odd)->r2(n)).Q(n=min(5,n+1));
init allow ({r1,r2},
comm ({s1|s2->s3},
P||Q(0)));
Filter
P
Counter
Q
r1 r2s1 s2
s3
◦ no deadlock?
[true*]<true>true
◦ an input (r1) is always followed by an output (s3)?
[true*.r1.(!s3)*]<(!s3)*.s3>true
 User first check the system if the system
working the user enter password and
username, if it is already in the database the
user login to the system if not available then
the user first go for signup and insert all the
data.
 [true*]<true>true
 password needed (1): [loginpage] < true* .
enterpassword > true (that is: the first
‘loginpage’ can be followed by
‘enterpassword’)
 password needed (2): [true* . loginpage] <
true* . enterpassword > true (that is: every
‘loginpage’ can be followed by
‘enterpassword’)
mCRL2 specication before linearisation:
act order, receive, keep, refund; return;
proc
Start = order .Ordered;
Ordered = receive. Received + refund .Start;
Received = return .Ordered + keep;
init Start;
sort State = struct start | ordered | received;
act order, receive, keep, refund, return;
proc P(s : State) =
(s =start) -> order . P(ordered)
+ (s =ordered) -> receive . P(received)
+ (s = ordered) ->refund . P(start)
+ (s =received) -> return . P(ordered)
+ (s = received) -> keep;
init P(start);
act
enter_car,
enter_cash,recive_recipt,car_park,open_gate,acc_cash,give_recipt,
entercar,cash,recipt,park,acc_gate;
proc
User = enter_car . enter_cash. recive_recipt . car_park . User;
Machine =acc_gate . acc_cash . give_recipt. open_gate . Machine;
init
allow(
{entercar,cash,recipt,park },
comm(
{enter_car|acc_gate -> entercar, enter_cash|acc_cash->cash,
recive_recipt|give_recipt->recipt, car_park|open_gate->park },
User || Machine
) ) ;
sort Name = struct n0 | n1 ;
PhoneNumber = struct p0 | p1 ;
PhoneBook = Name -> PhoneNumber;
map
book: Name -> PhoneNumber;
var n: Name;
eqn
book(n) = p0;
act
addPhone: Name # PhoneNumber;
delPhone: Name;
findPhone: Name;
proc
PhoneDir(b: PhoneBook) =
sum n: Name, p: PhoneNumber . (p != p0) -> addPhone(n, p) . PhoneDir(b[n->p])
+ sum n: Name . findPhone(n) . PhoneDir()
+ sum n: Name . delPhone(n) . PhoneDir(b[n->p0]);
init PhoneDir(book);
MCRL2

More Related Content

What's hot

MATLAB Programming - Loop Control Part 2
MATLAB Programming - Loop Control Part 2MATLAB Programming - Loop Control Part 2
MATLAB Programming - Loop Control Part 2Shameer Ahmed Koya
 
What is storage class
What is storage classWhat is storage class
What is storage classIsha Aggarwal
 
storage class
storage classstorage class
storage classstudent
 
11 lec 11 storage class
11 lec 11 storage class11 lec 11 storage class
11 lec 11 storage classkapil078
 
Loops in c language
Loops in c languageLoops in c language
Loops in c languagetanmaymodi4
 
Data structure scope of variables
Data structure scope of variablesData structure scope of variables
Data structure scope of variablesSaurav Kumar
 
Effective java item 80 and 81
Effective java   item 80 and 81Effective java   item 80 and 81
Effective java item 80 and 81Isaac Liao
 
Storage class in c
Storage class in cStorage class in c
Storage class in ckash95
 
parallel programming in the PVM- task creation-Advanced system architecture
parallel programming in the PVM- task creation-Advanced system architectureparallel programming in the PVM- task creation-Advanced system architecture
parallel programming in the PVM- task creation-Advanced system architectureRoslinJoseph
 

What's hot (20)

MATLAB Programming - Loop Control Part 2
MATLAB Programming - Loop Control Part 2MATLAB Programming - Loop Control Part 2
MATLAB Programming - Loop Control Part 2
 
STORAGE CLASSES
STORAGE CLASSESSTORAGE CLASSES
STORAGE CLASSES
 
Storage class
Storage classStorage class
Storage class
 
What is storage class
What is storage classWhat is storage class
What is storage class
 
Loop c++
Loop c++Loop c++
Loop c++
 
Storage class
Storage classStorage class
Storage class
 
storage class
storage classstorage class
storage class
 
11 lec 11 storage class
11 lec 11 storage class11 lec 11 storage class
11 lec 11 storage class
 
Loops in c language
Loops in c languageLoops in c language
Loops in c language
 
Closures
ClosuresClosures
Closures
 
Matlab Script - Loop Control
Matlab Script - Loop ControlMatlab Script - Loop Control
Matlab Script - Loop Control
 
C# Method overloading
C# Method overloadingC# Method overloading
C# Method overloading
 
Data structure scope of variables
Data structure scope of variablesData structure scope of variables
Data structure scope of variables
 
Storage classes
Storage classesStorage classes
Storage classes
 
Storage classes
Storage classesStorage classes
Storage classes
 
Effective java item 80 and 81
Effective java   item 80 and 81Effective java   item 80 and 81
Effective java item 80 and 81
 
Storage class in C Language
Storage class in C LanguageStorage class in C Language
Storage class in C Language
 
Storage class in c
Storage class in cStorage class in c
Storage class in c
 
parallel programming in the PVM- task creation-Advanced system architecture
parallel programming in the PVM- task creation-Advanced system architectureparallel programming in the PVM- task creation-Advanced system architecture
parallel programming in the PVM- task creation-Advanced system architecture
 
C++ Question
C++ QuestionC++ Question
C++ Question
 

Similar to MCRL2

Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.com
Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.comMcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.com
Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.comkashif kashif
 
Formal Verification of Transactional Interaction Contract
Formal Verification of Transactional Interaction ContractFormal Verification of Transactional Interaction Contract
Formal Verification of Transactional Interaction ContractGera Shegalov
 
Basic_analysis.ppt
Basic_analysis.pptBasic_analysis.ppt
Basic_analysis.pptSoumyaJ3
 
Job Queue in Golang
Job Queue in GolangJob Queue in Golang
Job Queue in GolangBo-Yi Wu
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.pptebinazer1
 
FDS- Basic Concepts.ppt
FDS- Basic Concepts.pptFDS- Basic Concepts.ppt
FDS- Basic Concepts.pptshanthishyam
 
The Ring programming language version 1.5.2 book - Part 74 of 181
The Ring programming language version 1.5.2 book - Part 74 of 181The Ring programming language version 1.5.2 book - Part 74 of 181
The Ring programming language version 1.5.2 book - Part 74 of 181Mahmoud Samir Fayed
 
The Ring programming language version 1.3 book - Part 59 of 88
The Ring programming language version 1.3 book - Part 59 of 88The Ring programming language version 1.3 book - Part 59 of 88
The Ring programming language version 1.3 book - Part 59 of 88Mahmoud Samir Fayed
 
The Ring programming language version 1.4 book - Part 21 of 30
The Ring programming language version 1.4 book - Part 21 of 30The Ring programming language version 1.4 book - Part 21 of 30
The Ring programming language version 1.4 book - Part 21 of 30Mahmoud Samir Fayed
 
Compose Async with RxJS
Compose Async with RxJSCompose Async with RxJS
Compose Async with RxJSKyung Yeol Kim
 
DATA STRUCTURE USING C & C++
DATA STRUCTURE USING C & C++DATA STRUCTURE USING C & C++
DATA STRUCTURE USING C & C++mustkeem khan
 
DSU C&C++ Practical File Diploma
DSU C&C++ Practical File DiplomaDSU C&C++ Practical File Diploma
DSU C&C++ Practical File Diplomamustkeem khan
 
Operator overloading2
Operator overloading2Operator overloading2
Operator overloading2zindadili
 

Similar to MCRL2 (20)

Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.com
Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.comMcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.com
Mcrl2 by kashif.namal@gmail.com, adnanskyousafzai@gmail.com
 
Formal Verification of Transactional Interaction Contract
Formal Verification of Transactional Interaction ContractFormal Verification of Transactional Interaction Contract
Formal Verification of Transactional Interaction Contract
 
OSCh7
OSCh7OSCh7
OSCh7
 
OS_Ch7
OS_Ch7OS_Ch7
OS_Ch7
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.ppt
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.ppt
 
Basic_analysis.ppt
Basic_analysis.pptBasic_analysis.ppt
Basic_analysis.ppt
 
Job Queue in Golang
Job Queue in GolangJob Queue in Golang
Job Queue in Golang
 
C lab-programs
C lab-programsC lab-programs
C lab-programs
 
CPP Homework Help
CPP Homework HelpCPP Homework Help
CPP Homework Help
 
chapter1.ppt
chapter1.pptchapter1.ppt
chapter1.ppt
 
FDS- Basic Concepts.ppt
FDS- Basic Concepts.pptFDS- Basic Concepts.ppt
FDS- Basic Concepts.ppt
 
The Ring programming language version 1.5.2 book - Part 74 of 181
The Ring programming language version 1.5.2 book - Part 74 of 181The Ring programming language version 1.5.2 book - Part 74 of 181
The Ring programming language version 1.5.2 book - Part 74 of 181
 
The Ring programming language version 1.3 book - Part 59 of 88
The Ring programming language version 1.3 book - Part 59 of 88The Ring programming language version 1.3 book - Part 59 of 88
The Ring programming language version 1.3 book - Part 59 of 88
 
Loops
LoopsLoops
Loops
 
The Ring programming language version 1.4 book - Part 21 of 30
The Ring programming language version 1.4 book - Part 21 of 30The Ring programming language version 1.4 book - Part 21 of 30
The Ring programming language version 1.4 book - Part 21 of 30
 
Compose Async with RxJS
Compose Async with RxJSCompose Async with RxJS
Compose Async with RxJS
 
DATA STRUCTURE USING C & C++
DATA STRUCTURE USING C & C++DATA STRUCTURE USING C & C++
DATA STRUCTURE USING C & C++
 
DSU C&C++ Practical File Diploma
DSU C&C++ Practical File DiplomaDSU C&C++ Practical File Diploma
DSU C&C++ Practical File Diploma
 
Operator overloading2
Operator overloading2Operator overloading2
Operator overloading2
 

Recently uploaded

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxpurnimasatapathy1234
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLDeelipZope
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile servicerehmti665
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacingjaychoudhary37
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfAsst.prof M.Gokilavani
 

Recently uploaded (20)

Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
Microscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptxMicroscopic Analysis of Ceramic Materials.pptx
Microscopic Analysis of Ceramic Materials.pptx
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptxExploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
Exploring_Network_Security_with_JA3_by_Rakesh Seal.pptx
 
Current Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCLCurrent Transformer Drawing and GTP for MSETCL
Current Transformer Drawing and GTP for MSETCL
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
Call Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile serviceCall Girls Delhi {Jodhpur} 9711199012 high profile service
Call Girls Delhi {Jodhpur} 9711199012 high profile service
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
microprocessor 8085 and its interfacing
microprocessor 8085  and its interfacingmicroprocessor 8085  and its interfacing
microprocessor 8085 and its interfacing
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdfCCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
CCS355 Neural Network & Deep Learning UNIT III notes and Question bank .pdf
 

MCRL2

  • 1. By Kashif khan Muhammad Yasir Muhammad Ejaz khan University of Camerino Italy
  • 2.  Introduction to mCRL2  LPS , LTS,PBES  Operators  Vending Machine  Odd counter  Login  Car park  Phone book
  • 3.  Micro Common representation language 2  Specification Language  Used for modeling , verification and validation  Based on Algebra of communicating process include data and time.  Process perform actions, can carry data as parameter  Every process has LTS contain all states
  • 4.
  • 5.
  • 6.  Stored in binary Format  LTS constructed from LPS  LPS, symbolic representation of LTS to describe behavior of system explicitly  LPS can be printed in Human Readable format  LPS is speedy than LTS  Statistical info Can be collected in LPSPP
  • 7.  Generated from LPS  It show the LPS as node link Diagram (ltsgraph)  LTSVIEW to reduce the complexity of image(3D)  DIAGRAPHICA reduce complexity to 2D  LTSCONVERT smaller than Original LTS  LTSCOMPARE check weather the two LTS are behaviorally equal or not
  • 8.  Parameterized Boolean Equation system  Input needed for model checking, is a formula expressing a desired property that the system should not violate (or satisfy)  Pbes stored in Binary format  Pbespp stored in human readable format.  BES genrated from PBES
  • 9.  Sort data type definition using keyword sort. Sorts are non-empty, possibly infinite sets with data elements. sort D; cons c, d : D;  declares sort D in which all elements can be denoted by either c or d. Now for Boolean sort B cons true, false : B;
  • 10.  The sum operator allows to formulate the choice between a possibly infinite number of processes in a very concise way.  The process sum n: Nat . p(n) can be seen as a shorthand for p(0) + p(1) + p(2) + .... The use of the sum operator is often to indicate that some value must be read, i.e., the process wants to read either a 0 or a 1 or a 2, sort Val = struct c2 | c5 | c10; act coin: Val; init sum v: Val . coin(v); act num: Nat; init sum v: Nat . num(2 * v);
  • 11.  sort Val = struct c2 | c5 | c10;  act coffee; coin, rej: Val;  proc P = sum v: Val . coin(v) . ( (v != c10) -> rej(v) . P + (v == c10) -> coffee . P ); init P;
  • 12.  We can let data influence the course of events by adding conditions to the process c -> p <> q implies if c then do process p else do process q  act tick, reset; proc Clock(n: Nat) = (n < 99) -> tick . Clock(n + 1) <> tick . Clock(0) + (n < 50) -> reset . Clock(0); init Clock(0);
  • 13.  comm({a|b -> c}, p) .. multi-actions are renamed to a single action... actions a and b must communicate to c in process p.  act a, b, c: Nat; proc P = a(1) || b(1); init comm({a|b->c}, P);
  • 14.  Allow (allow(A, P)) removes all multi-actions from the transition system that do not occur in A. Any states that have become unreachable will also be removed by mCRL2, as the resulting system is smaller and bisimilar. allow({c}; p) only multi-actions consisting of a single c are allowed in p. allow({c},comm({send|read- > c}, send||read))
  • 15.  After inserting a coin of 10 cents, the user can push the button for an apple. An apple will then be put in the drawer of the machine. act ins10, optA, acc10, putA, coin, ready ; proc User = ins10 . optA . User ; Mach = acc10 . putA . Mach ; init allow( { coin, ready }, comm( { ins10|acc10 -> coin, optA|putA -> ready }, User || Mach ) ) ;
  • 16. sort Value= struct even | odd; act r1,r2:Nat; s1,s2,s3 : Value; proc P=sum n:Nat.(n<5)->r1(n).s1(if(n mod 2 == 0, even, odd)).P; Q(n:Nat)=sum v:Value.s2(v).((v==even)->tau +(v==odd)->r2(n)).Q(n=min(5,n+1)); init allow ({r1,r2}, comm ({s1|s2->s3}, P||Q(0))); Filter P Counter Q r1 r2s1 s2 s3
  • 17. ◦ no deadlock? [true*]<true>true ◦ an input (r1) is always followed by an output (s3)? [true*.r1.(!s3)*]<(!s3)*.s3>true
  • 18.  User first check the system if the system working the user enter password and username, if it is already in the database the user login to the system if not available then the user first go for signup and insert all the data.
  • 19.  [true*]<true>true  password needed (1): [loginpage] < true* . enterpassword > true (that is: the first ‘loginpage’ can be followed by ‘enterpassword’)  password needed (2): [true* . loginpage] < true* . enterpassword > true (that is: every ‘loginpage’ can be followed by ‘enterpassword’)
  • 20. mCRL2 specication before linearisation: act order, receive, keep, refund; return; proc Start = order .Ordered; Ordered = receive. Received + refund .Start; Received = return .Ordered + keep; init Start;
  • 21. sort State = struct start | ordered | received; act order, receive, keep, refund, return; proc P(s : State) = (s =start) -> order . P(ordered) + (s =ordered) -> receive . P(received) + (s = ordered) ->refund . P(start) + (s =received) -> return . P(ordered) + (s = received) -> keep; init P(start);
  • 22.
  • 23. act enter_car, enter_cash,recive_recipt,car_park,open_gate,acc_cash,give_recipt, entercar,cash,recipt,park,acc_gate; proc User = enter_car . enter_cash. recive_recipt . car_park . User; Machine =acc_gate . acc_cash . give_recipt. open_gate . Machine; init allow( {entercar,cash,recipt,park }, comm( {enter_car|acc_gate -> entercar, enter_cash|acc_cash->cash, recive_recipt|give_recipt->recipt, car_park|open_gate->park }, User || Machine ) ) ;
  • 24. sort Name = struct n0 | n1 ; PhoneNumber = struct p0 | p1 ; PhoneBook = Name -> PhoneNumber; map book: Name -> PhoneNumber; var n: Name; eqn book(n) = p0; act addPhone: Name # PhoneNumber; delPhone: Name; findPhone: Name; proc PhoneDir(b: PhoneBook) = sum n: Name, p: PhoneNumber . (p != p0) -> addPhone(n, p) . PhoneDir(b[n->p]) + sum n: Name . findPhone(n) . PhoneDir() + sum n: Name . delPhone(n) . PhoneDir(b[n->p0]); init PhoneDir(book);