You are on page 1of 2

Why study Discrete Math?

Foundation for many courses in Computer Science/Engineering Data Structure & Algorithms (Graph, Computability) Artificial Intelligence (Logic, Graph, Automata) Databases (Relations, Logic) Computer Networks (Graph) Foundation for a new discipline : Formal Method for Computer Science/Engineering Proving Correctness of Programs Proving Properties of Software Systems : Deadlock-free Verifying Protocols ISDN Protocol, Security Protocols Finding bugs of Microprocessors (used by INTEL, IBM, Motorola) Verifying Configurations of Network Systems Firewalls Formal Method aims to prove that a system (software, hardware or protocol) is CORRECT. The correctness means the system behaves as it is intended. Given certain INPUT, a system produces certain OUTPUT. Given request from many users, a system offers service to all the users fairly. Given certain environment, a system performs its service securely.

Formal Methods
Logic is used for Specification & Verification Specification : Modeling behavior of a System, Describing desirable properties of system Verification : Checking if a system has properties

Logic offers the following properties 1) Discreteness - State of the system can be represented as a finite amount of information. 2) Abstraction - Irrelevant details can be ignored. 3) Generality - A single model can be applied to many devices. 4) Efficient Automation (Modern Logic) - Efficient Mechanism for Verification (Model Checking)

You might also like