0% found this document useful (0 votes)
285 views3 pages

History of Formal Methods: Mathematical Model

Formal methods have a long history dating back to the work of Dijkstra, McCarthy, Floyd, and Reynolds in using mathematical concepts to develop and analyze computer programs. There are two main approaches to formal specification: model-oriented specification constructs a mathematical model of system behavior using concepts like sets and sequences, while property-oriented specification specifies properties a system must satisfy like axioms and rules. Common formal methods include abstract state machines, B-Method, Z notation, Event B, VDM, Alloy, and CASL, each using mathematical foundations like logic, sets, and algebras to formally model systems.

Uploaded by

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

History of Formal Methods: Mathematical Model

Formal methods have a long history dating back to the work of Dijkstra, McCarthy, Floyd, and Reynolds in using mathematical concepts to develop and analyze computer programs. There are two main approaches to formal specification: model-oriented specification constructs a mathematical model of system behavior using concepts like sets and sequences, while property-oriented specification specifies properties a system must satisfy like axioms and rules. Common formal methods include abstract state machines, B-Method, Z notation, Event B, VDM, Alloy, and CASL, each using mathematical foundations like logic, sets, and algebras to formally model systems.

Uploaded by

Usama
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

History of Formal Methods

Mathematical Model:
Abstract representations of a system using mathematical entities and concepts.
There are two types of mathematical models.

 Discrete Model
 Continuous Model

Discrete Model:
A variable that take value with jumps and gaps.
E.g. student in university

Continuous Model:
A variable that can take any value within a given interval.
` E.g. height, weight, temperature.

1. History of formal methods:


Dijkstra work:
Dijkstra used formal calculus to aid to develop of non-deterministic programs.

John McCarthy’s work:


Recursive functions of symbolic expression and their computation by mechanics
towards a mathematical science of computation.

Robert Floyd’s work:


Assigning meaning to programs.

John Reynold’s works:


Definition interpreters for higher order programming languages.

Christopher Strachey’s work:


Towards a mathematical semantics for computer language.

2. Model Oriented specification:


Construct a model of the system behavior using mathematical objects like sets,
sequences etc.

3. Property Oriented specification:


Specify system behavior in terms of properties that must be satisfied
Example:

 Axioms
 Rules
It has two types
1) Algebraic semantics
2) Temporal logic models.

Algebraic semantics
Algebraic semantics is a form of axiom semantics based on algebraic laws for
describing and reasoning about program semantics in a formal manner.

Temporal Logic:
“An extension of classical logic”
An inherent problem with classical logic is its essentially static nature.
We can express statements such as
“If it is Tuesday and we are in Liverpool, then it is raining”
But have much more difficulty with dynamic statements such as
“If it is Tuesday, then it will continue raining while we remain in Liverpool”

4. Types of formal method:


Abstract State Machines:
The Abstract State Machine (ASM) thesis implies that any algorithm can be
modeled by an appropriate ASM.

B-Method:
B is a formal method for the development of program code from a specification
in the Abstract Machine Notation.

Z:
A specification language used for describing computer-based systems; based on
set theory and first order predicate logic

Event B:
A latest formal specification and modeling language, based on set theory and
has larger tool support.
VDM:
Vienna Development Method (VDM) supports both sequential and object
oriented concepts.
Alloy:
Alloy is a declarative specification language for expressing complex structural
constraints and behavior in software system. Alloy provides a simple structural
modelling tool based on first order logic.
Common Algebraic Specification Language (CASL):
CASL is a general purpose specification language based on first order logic with
induction.

You might also like