SlideShare a Scribd company logo
Formal Methods
Lecture # 5
Umber Noureen Abbas
Lecturer
Department of Computer Science
10/27/2022
Department of Computer Science universty of
Sahiwal
1
Formal methods
• Rigorous techniques and tools for the development
and analysis of computational (hardware/software)
systems Applied at various stages of the development
cycle
• used in reverse engineering to model and analyze
existing systems Based on mathematics and symbolic
logic (formal)
10/27/2022
Department of Computer Science universty of
Sahiwal
2
MAIN ARTIFACTS IN FORMAL METHODS
1. System requirements
2. System implementation
• Formal methods rely on
– some formal specification of (1)
– some formal execution model of (2)
• Use tools to verify mechanically that implementation satisfies
(1) according to (2)
10/27/2022
Department of Computer Science universty of
Sahiwal
3
WHY USE FORMAL METHODS
• Mathematical modeling and analysis contribute to the overall
quality of the final product Increase confidence in the
correctness/robustness/security of a system
• Find more flaws and earlier bugs (i.e., during specification and
design vs. testing and maintenance)
10/27/2022
Department of Computer Science universty of
Sahiwal
4
FORMAL METHODS: THE VISION
• Complement other analysis and design methods
• Help find bugs in code and specification
• Reduce development, and testing, cost
• Ensure certain properties of the formal system model
• Should be highly automated
10/27/2022
Department of Computer Science universty of
Sahiwal
5
FORMAL METHODS AND TESTING
• Run the system at chosen inputs and observe its
behavior
–Randomly chosen
–Intelligently chosen (by hand: expensive!)
–Automatically chosen (need formalized spec)
• What about other inputs? (test coverage)
• What about the observation? (test oracle)
• Challenges can be addressed by/require formal
methods
10/27/2022
Department of Computer Science universty of
Sahiwal
6
A WARNING
• The notion of “formality” is often misunderstood (formal vs.
rigorous)
• The effectiveness of formal methods is still debated
• There are myths about their practicality and cost
• Formal methods are not yet widespread in industry
• They are mostly used in the development of safety, business,
or mission critical software, where the cost of faults is high
10/27/2022
Department of Computer Science universty of
Sahiwal
7
THE MAIN POINT OF FMs IS NOT
• To show “correctness” of entire systems
• What is correctness? Go for specific properties!
• To replace testing entirely
• Formal methods do not go below byte code level
• Some properties are not formalizable
• To replace good design practices
10/27/2022
Department of Computer Science universty of
Sahiwal
8
OVERALL BENEFITS OF USING FORMAL
METHODS
• Forces developers to think systematically about issues
• Improves the quality of specifications, even without formal
verification
• Leads to better design
• Provides a precise reference to check requirements
• Provides documentation within a team of developers
• Gives direction to latter development phases
• Provides a basis for reuse via specification matching
• Can replace (infinitely) many test cases
• Facilitates automatic test case generation
10/27/2022
Department of Computer Science universty of
Sahiwal
9
SPECIFICATIONS: WHAT THE SYSTEM SHOULD
DO
• Simple properties
–Safety properties: something bad will never happen
–Liveness properties: something good will happen eventually
• Non-functional properties
–runtime, memory, usability,
–Complete behaviour specification
–Equivalence check
–Refinement
–Data consistency
10/27/2022
Department of Computer Science universty of
Sahiwal
10
FORMAL SPECIFICATION
• “The expression in some formal language and at
some level of abstraction of a collection of properties
that some system should satisfy” [van Lamsweerde]
• Formal language
–syntax can be mechanically processed and checked
–semantics is defined unambiguously by mathematical
means
• Abstraction
–above the level of source code, several levels possible
10/27/2022
Department of Computer Science universty of
Sahiwal
11
Cont.
• Properties
–expressed in some formal logic
–have a well-defined semantics
• Satisfaction
–ideally (but not always) decided mechanically
–based on automated deduction and/or model checking
techniques
10/27/2022
Department of Computer Science universty of
Sahiwal
12
FORMALIZATION HELPS TO FIND BUGS IN
SPECS
• Well-formedness and consistency of formal specs are
checkable with tools
• Fixed signature (symbols) helps spot incomplete
specs
• Failed verification of implementation against spec
• gives feedback on erroneous formalization
10/27/2022
Department of Computer Science universty of
Sahiwal
13
EXPRESSIVENESS OF SPECIFICATION
• Simple
–Finitely many cases
–Approximation, low precision
–Automatic proofs are (in principle) possible
• Complex
–General properties
–High precision, tight modeling
–Automatic proofs (in general) impossible!
10/27/2022
Department of Computer Science universty of
Sahiwal
14
CURRENT AND FUTURE TRENDS
• Slowly but surely formal methods are finding
increased used in industry
• Design for formal verification provers
• Combining static analysis of programs with automatic
methods and with theorem provers
• Combining test and formal verification
• Integration of formal methods into SW development
process
10/27/2022
Department of Computer Science universty of
Sahiwal
15
Questions
Any Question Please?
You can contact me at: umber@uosahiwal.edu.pk
Your Query will be answered within one working day.
10/27/2022 Computer Science Department, University of Sahiwal 16
Thanks
10/27/2022 Computer Science Department, University of Sahiwal 17

More Related Content

Similar to Formal Method

Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
DrJanarthananP
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
Mehuk1
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
AqeelAbbas94
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
EveryThing68
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.ppt
KENNEDYDONATO1
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
Mubashir Ali
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
RacingKings
 
Software models
Software modelsSoftware models
Software models
Sumayyiah .
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
RIKSOF
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
Ivano Malavolta
 
Ppt nardeep
Ppt nardeepPpt nardeep
Ppt nardeep
nardeep_kaur
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
chandrasekarnatraj
 
CV - Rakesh Sharma
CV - Rakesh SharmaCV - Rakesh Sharma
CV - Rakesh Sharma
RAKESH SHARMA
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
Noor Ul Hudda Memon
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
Compare Infobase Limited
 
6 verification tools
6 verification tools6 verification tools
6 verification tools
Usha Mehta
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
Rupesh Vaishnav
 
Sdlc models
Sdlc modelsSdlc models
Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?
Jauhari Ismail
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
Ivano Malavolta
 

Similar to Formal Method (20)

Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
Session2.ppt
Session2.pptSession2.ppt
Session2.ppt
 
presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)presentation ofSoftware Development Life Cycle (SDLC)
presentation ofSoftware Development Life Cycle (SDLC)
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.ppt
 
Lect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPMLect-4: Software Development Life Cycle Model - SPM
Lect-4: Software Development Life Cycle Model - SPM
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 
Software models
Software modelsSoftware models
Software models
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
[2015/2016] Software development process
[2015/2016] Software development process[2015/2016] Software development process
[2015/2016] Software development process
 
Ppt nardeep
Ppt nardeepPpt nardeep
Ppt nardeep
 
project_life_cycles_models.ppt
project_life_cycles_models.pptproject_life_cycles_models.ppt
project_life_cycles_models.ppt
 
CV - Rakesh Sharma
CV - Rakesh SharmaCV - Rakesh Sharma
CV - Rakesh Sharma
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC)
 
6 verification tools
6 verification tools6 verification tools
6 verification tools
 
Intoduction to software engineering part 2
Intoduction to software engineering part 2Intoduction to software engineering part 2
Intoduction to software engineering part 2
 
Sdlc models
Sdlc modelsSdlc models
Sdlc models
 
Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?Software Development Lifecycle: What works for you?
Software Development Lifecycle: What works for you?
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 

Recently uploaded

New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
wisnuprabawa3
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
Dr Ramhari Poudyal
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
Aditya Rajan Patra
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
rpskprasana
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
HODECEDSIET
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
camseq
 
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTCHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
jpsjournal1
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
Las Vegas Warehouse
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
JamalHussainArman
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
VICTOR MAESTRE RAMIREZ
 
Textile Chemical Processing and Dyeing.pdf
Textile Chemical Processing and Dyeing.pdfTextile Chemical Processing and Dyeing.pdf
Textile Chemical Processing and Dyeing.pdf
NazakatAliKhoso2
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
gerogepatton
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
bijceesjournal
 
Engine Lubrication performance System.pdf
Engine Lubrication performance System.pdfEngine Lubrication performance System.pdf
Engine Lubrication performance System.pdf
mamamaam477
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
nooriasukmaningtyas
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
ihlasbinance2003
 
Question paper of renewable energy sources
Question paper of renewable energy sourcesQuestion paper of renewable energy sources
Question paper of renewable energy sources
mahammadsalmanmech
 

Recently uploaded (20)

New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
 
Recycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part IIIRecycled Concrete Aggregate in Construction Part III
Recycled Concrete Aggregate in Construction Part III
 
CSM Cloud Service Management Presentarion
CSM Cloud Service Management PresentarionCSM Cloud Service Management Presentarion
CSM Cloud Service Management Presentarion
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
 
Modelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdfModelagem de um CSTR com reação endotermica.pdf
Modelagem de um CSTR com reação endotermica.pdf
 
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECTCHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
CHINA’S GEO-ECONOMIC OUTREACH IN CENTRAL ASIAN COUNTRIES AND FUTURE PROSPECT
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have oneISPM 15 Heat Treated Wood Stamps and why your shipping must have one
ISPM 15 Heat Treated Wood Stamps and why your shipping must have one
 
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptxML Based Model for NIDS MSc Updated Presentation.v2.pptx
ML Based Model for NIDS MSc Updated Presentation.v2.pptx
 
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student MemberIEEE Aerospace and Electronic Systems Society as a Graduate Student Member
IEEE Aerospace and Electronic Systems Society as a Graduate Student Member
 
Textile Chemical Processing and Dyeing.pdf
Textile Chemical Processing and Dyeing.pdfTextile Chemical Processing and Dyeing.pdf
Textile Chemical Processing and Dyeing.pdf
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...Comparative analysis between traditional aquaponics and reconstructed aquapon...
Comparative analysis between traditional aquaponics and reconstructed aquapon...
 
Engine Lubrication performance System.pdf
Engine Lubrication performance System.pdfEngine Lubrication performance System.pdf
Engine Lubrication performance System.pdf
 
A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...A review on techniques and modelling methodologies used for checking electrom...
A review on techniques and modelling methodologies used for checking electrom...
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
 
Question paper of renewable energy sources
Question paper of renewable energy sourcesQuestion paper of renewable energy sources
Question paper of renewable energy sources
 

Formal Method

  • 1. Formal Methods Lecture # 5 Umber Noureen Abbas Lecturer Department of Computer Science 10/27/2022 Department of Computer Science universty of Sahiwal 1
  • 2. Formal methods • Rigorous techniques and tools for the development and analysis of computational (hardware/software) systems Applied at various stages of the development cycle • used in reverse engineering to model and analyze existing systems Based on mathematics and symbolic logic (formal) 10/27/2022 Department of Computer Science universty of Sahiwal 2
  • 3. MAIN ARTIFACTS IN FORMAL METHODS 1. System requirements 2. System implementation • Formal methods rely on – some formal specification of (1) – some formal execution model of (2) • Use tools to verify mechanically that implementation satisfies (1) according to (2) 10/27/2022 Department of Computer Science universty of Sahiwal 3
  • 4. WHY USE FORMAL METHODS • Mathematical modeling and analysis contribute to the overall quality of the final product Increase confidence in the correctness/robustness/security of a system • Find more flaws and earlier bugs (i.e., during specification and design vs. testing and maintenance) 10/27/2022 Department of Computer Science universty of Sahiwal 4
  • 5. FORMAL METHODS: THE VISION • Complement other analysis and design methods • Help find bugs in code and specification • Reduce development, and testing, cost • Ensure certain properties of the formal system model • Should be highly automated 10/27/2022 Department of Computer Science universty of Sahiwal 5
  • 6. FORMAL METHODS AND TESTING • Run the system at chosen inputs and observe its behavior –Randomly chosen –Intelligently chosen (by hand: expensive!) –Automatically chosen (need formalized spec) • What about other inputs? (test coverage) • What about the observation? (test oracle) • Challenges can be addressed by/require formal methods 10/27/2022 Department of Computer Science universty of Sahiwal 6
  • 7. A WARNING • The notion of “formality” is often misunderstood (formal vs. rigorous) • The effectiveness of formal methods is still debated • There are myths about their practicality and cost • Formal methods are not yet widespread in industry • They are mostly used in the development of safety, business, or mission critical software, where the cost of faults is high 10/27/2022 Department of Computer Science universty of Sahiwal 7
  • 8. THE MAIN POINT OF FMs IS NOT • To show “correctness” of entire systems • What is correctness? Go for specific properties! • To replace testing entirely • Formal methods do not go below byte code level • Some properties are not formalizable • To replace good design practices 10/27/2022 Department of Computer Science universty of Sahiwal 8
  • 9. OVERALL BENEFITS OF USING FORMAL METHODS • Forces developers to think systematically about issues • Improves the quality of specifications, even without formal verification • Leads to better design • Provides a precise reference to check requirements • Provides documentation within a team of developers • Gives direction to latter development phases • Provides a basis for reuse via specification matching • Can replace (infinitely) many test cases • Facilitates automatic test case generation 10/27/2022 Department of Computer Science universty of Sahiwal 9
  • 10. SPECIFICATIONS: WHAT THE SYSTEM SHOULD DO • Simple properties –Safety properties: something bad will never happen –Liveness properties: something good will happen eventually • Non-functional properties –runtime, memory, usability, –Complete behaviour specification –Equivalence check –Refinement –Data consistency 10/27/2022 Department of Computer Science universty of Sahiwal 10
  • 11. FORMAL SPECIFICATION • “The expression in some formal language and at some level of abstraction of a collection of properties that some system should satisfy” [van Lamsweerde] • Formal language –syntax can be mechanically processed and checked –semantics is defined unambiguously by mathematical means • Abstraction –above the level of source code, several levels possible 10/27/2022 Department of Computer Science universty of Sahiwal 11
  • 12. Cont. • Properties –expressed in some formal logic –have a well-defined semantics • Satisfaction –ideally (but not always) decided mechanically –based on automated deduction and/or model checking techniques 10/27/2022 Department of Computer Science universty of Sahiwal 12
  • 13. FORMALIZATION HELPS TO FIND BUGS IN SPECS • Well-formedness and consistency of formal specs are checkable with tools • Fixed signature (symbols) helps spot incomplete specs • Failed verification of implementation against spec • gives feedback on erroneous formalization 10/27/2022 Department of Computer Science universty of Sahiwal 13
  • 14. EXPRESSIVENESS OF SPECIFICATION • Simple –Finitely many cases –Approximation, low precision –Automatic proofs are (in principle) possible • Complex –General properties –High precision, tight modeling –Automatic proofs (in general) impossible! 10/27/2022 Department of Computer Science universty of Sahiwal 14
  • 15. CURRENT AND FUTURE TRENDS • Slowly but surely formal methods are finding increased used in industry • Design for formal verification provers • Combining static analysis of programs with automatic methods and with theorem provers • Combining test and formal verification • Integration of formal methods into SW development process 10/27/2022 Department of Computer Science universty of Sahiwal 15
  • 16. Questions Any Question Please? You can contact me at: umber@uosahiwal.edu.pk Your Query will be answered within one working day. 10/27/2022 Computer Science Department, University of Sahiwal 16
  • 17. Thanks 10/27/2022 Computer Science Department, University of Sahiwal 17

Editor's Notes

  1. Formal flexible