0% found this document useful (0 votes)
10 views22 pages

01 Introduction Formal Methods - pptx-3

The document outlines a course on Formal Methods taught by Dr. Sidra Sultana, focusing on the necessity and application of formal verification methods in software and hardware systems. It covers topics such as model checking, theorem proving, and various logical frameworks, emphasizing the importance of improving software quality and safety. The course includes assessments, policies on assignments and quizzes, and provides resources for further reading.

Uploaded by

Zainab Athar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views22 pages

01 Introduction Formal Methods - pptx-3

The document outlines a course on Formal Methods taught by Dr. Sidra Sultana, focusing on the necessity and application of formal verification methods in software and hardware systems. It covers topics such as model checking, theorem proving, and various logical frameworks, emphasizing the importance of improving software quality and safety. The course includes assessments, policies on assignments and quizzes, and provides resources for further reading.

Uploaded by

Zainab Athar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 22

SE-320

Formal Methods
Dr. Sidra Sultana

1
Course Objectives
The main Objective is to answer and question the
following
1. Why we need formal verification methods?
2. What is model checking and how to use it?
3. How Theorem Proving is useful?

4. What are some useful tools for Automated


Reasoning?

2
Course Outlines: Topics
• Introduction to Formal Methods: Motivation
and Industrial Usage
• Propositional Logic
• Predicate Logic
• Higher Order Logic and HOL System
• Automata and Temporal Logic
• Model Checking
• Uppaal: Model Checker

3
What is “Formal Methods”?
"Formal Methods refers to mathematically rigorous
techniques and tools for the specification, design
and verification of software and hardware systems.”

Source:

https://shemesh.larc.nasa.gov/fm/fm-what.html

4
Why to use formal methods?
• Improve quality of Software System
• Fitness for purpose
• Ease of construction
• Higher confidence in software product
• Reveal ambiguity, incompleteness, and
inconsistency in system
• Detect design flaws (before implementation)
• Determine correctness
5
Motivation !

6
7
Impact of Pentium Bug
• The Pentium FDIV bug was a computer bug
that affected the floating point unit
• In December 1994, Intel recalled the defective
processors
• Loss of $475 million with replacement of the
flawed processors
• Goodwill of the producer at stack !

8
Safety Critical Systems
A Software failure may result in disastrous situations!

9
Faulty Systems Proved Lethal

10
Software Dependence
• Software are increasing used in the safety critical
systems

• Need to have them (almost) flawless

11
What to do?
• Introduce FM into existing systems
– Verify critical properties
– Facilitate maintenance and reimplementation
• Introduce FM into new systems
– Capture requirements precisely
– Reduce ambiguity
– Guide software development process
– Basis for testing
– Formalize requirements analysis and design
12
Quote
“Formal methods have finally come of age! Specification
languages, theorem provers, and model checkers are
beginning to be used routinely in industry. Mathematical
logic is basic to all of these techniques.”

Edmund M. Clarke
(Turing Award-2007)

13
About Instructor

▪ Dr. Sidra Sultana (SEECS PG Block)


▪ Interest Areas : Software Modeling and Verification.
▪ Contact : [email protected]
▪ Office Hours : Mon. 2-4pm or by Email appointment

14
Home Assignment
• Share one accident/ incident caused due to
software failure
• Discuss the reason, why it is interesting?
• Deadline: Wednesday, 7th Feb., 2025

The Most Complete Gift of God is a Life based on


Knowledge.

15
About the Course & Text Book
Class Schedule
Wednesday, Thursday & Friday (Check
time-table:)
Consult course page on LMS/CMS/FB for
Lecture Notes, Quizzes, Assignments & Term
Project
Text Book:
• Jiacun Wang, William Tepfenhart, Formal
Methods in Computer Science. Chapman and
Hall/CRC (Second Ed.)Published July 3, 2019
16
Reference Books

• O'Regan, Gerard, Concise Guide to Formal


Methods,Theory, Fundamentals and Industry
Applications (2017)
• John Harrison: Handbook of Practical Logic and
Automated Reasoning, Intel Corporation, Cambridge
University Press (2009)
• C. Baier, J.-P. Katoen: Principles of Model Checking,
MIT Press, (2008)

17
Assessment Plan
• Assessment (Tentative)
• 10% Quizzes (05 at-least)
• 10% Assignments (03 at-least)
• 10% Project
• 30% MSE
• 40% Final Exam-ESE

18
Assignment/Project Policy
• In order to develop comprehensive understanding
of the subject, assignments will be given. Late
assignments (by up to 2 days) will be accepted but
discouraged as per the following formula:

• Less than a day late: 20% penalty


• More than 1 day late but less than 2 days late:
40% penalty
• More than 2 days late: not accepted.

Submit your task well before deadline!


19
Mobile Phone Policy
• Mobiles are the worst distraction of the day!

• If you find lecture boring… take nap or read


any book! But mobiles Switched Off.

• Violators will contribute for the community

20
Quiz Policy
• Quiz may be unannounced (Be read for
surprise)
• Quizzes will be 5-6 during semester. No
“Best-of” method
• Missed quiz will not be retaken (advantage for
students with 100% attendance)
• Preparing lecture daily will keep your prepared
for a quiz

21
Questions & Ideas?

Thank You!

22

You might also like