Sie sind auf Seite 1von 10

Name:

Abdullah Salik
Roll #:
BSCM-F16-099
Subject:
Discrete Structures
Submitted To:
Sir Suleman
Q#1) Explore the application of discrete structure in computer science?

Ans:

Introduction:
Discrete mathematics is the branch of mathematics dealing with objects that can assume only
distinct, separated values. The term "Discrete Mathematics" is therefore used in contrast with
"Continuous Mathematics," which is the branch of mathematics dealing with objects that can vary
smoothly (and which includes, for example, calculus). Whereas discrete objects can often be
characterized by integers, continuous objects require real numbers.

The study of how discrete objects combine with one another and the probabilities of various
outcomes is known as combinatory. Other fields of mathematics that are considered to be part of
discrete mathematics include graph theory and the theory of computation. Topics in number
theory such as congruence’s and recurrence relations are also considered part of discrete
mathematics.

The study of topics in discrete mathematics usually includes the study of algorithms, their
implementations, and efficiencies. Discrete mathematics is the mathematical language of computer
science, and as such, its importance has increased dramatically in recent decades. The set of objects
studied in discrete mathematics can be finite or infinite. The term finite mathematics is sometimes
applied to parts of the field of discrete mathematics that deals with finite sets, particularly those
areas relevant to business.

Research in discrete mathematics increased in the latter half of the twentieth century partly due to
the development of digital computers which operate in discrete steps and store data in discrete bits.
Concepts and notations from discrete mathematics are useful in studying and describing objects
and problems in branches of computer science, such as computer algorithms, programming
languages, cryptography, automated theorem proving, and software development. Conversely,
computer implementations are significant in applying ideas from discrete mathematics to real-
world problems, such as in operations research.

IMPORTANCE:

Achieving working knowledge of many principles of computer science requires mastery


of certain relevant mathematical concepts and skills. For example, A grasp of Boolean algebra
including DeMorgans Law is useful for understanding Boolean expressions and the basics of
combinational circuits concepts surrounding the growth of functions and summations are useful
for analysis of loop control structures exposure to solving recurrence relations is de rigeur for the
analysis of recursive algorithms and an introduction to proof methods facilitates consideration of
program correctness and thinking rigorously in general.
Students are introduced to proof techniques before they begin to consider the idea of proving
programs correct. They learn about propositional logic and Boolean algebra before they study
some very elementary circuits and learn decision control structures and Boolean variables. They
are introduced to predicate logic near the time they are beginning programming and learning about
variables.

They learn about growth of functions big-O notation and summations before they analyze loops
and nested loops and they have the tools to begin algorithm analysis from the time they first begin
to learn about iterative constructs. In conjunction with an introduction to number theory they do
laboratory and programming exercises involving an assortment of integer algorithms. Students
learn about recursive definitions recurrence relations, analyzing recursive algorithms and writing
recursive algorithms and programs together in the same course.

They study matrices and matrix manipulations in conjunction with the array data structure. They
learn about permutations and combinations, relations, graphs, and trees at the same time that their
programming knowledge and sophistication are improving and they can do increasingly interesting
programming exercises involving these concepts.

Discrete Mathematics Computer Science Topics Programming Constructs


and Concepts
Discrete probability Searching and sorting Nested loops
Boolean algebra Computers and Computation Pascal program structure
Matrices & Counting Computer System Organization Iterative control structures
Sequences and summations More algorithm correctness Text files & Records
Integers elementary number Run time organization run time Abstract data types stacks
theory stack and queues
Propositional and predicate Trees binary search trees Procedures functions
logic traversals parameter passing scope

APPLICATIONS:

Theoretical Computer Science

Theoretical computer science includes areas of discrete mathematics relevant to computing. It


draws heavily on graph theory and logic. Included within theoretical computer science is the study
of algorithms for computing mathematical results. Computability studies what can be computed in
principle, and has close ties to logic, while complexity studies the time taken by computations.
Automata theory and formal language theory are closely related to computability.

Petri nets and process algebras are used to model computer systems, and methods from discrete
mathematics are used in analyzing VLSI electronic circuits. Computational geometry applies
algorithms to geometrical problems, while computer image analysis applies them to
representations of images.
Information Theory:

Information theory involves the quantification of information. Closely related is coding theory
which is used to design efficient and reliable data transmission and storage methods. Information
theory also includes continuous topics such as analog signals, analog coding, analog encryption
and Mathematical logic.

Mathematical logic:

Logic is the study of the principles of valid reasoning and inference, as well as of consistency,
soundness, and completeness. For example, in most systems of logic (but not in intuitionistic logic)
Peirce's law (((P→Q)→P)→P) is a theorem. For classical logic, it can be easily verified with a
truth table. The study of mathematical proof is particularly important in logic, and has applications
to automated theorem proving and formal verification of software.

Logical formulas are discrete structures, as are proofs, which form finite trees or, more generally,
directed acyclic graph structures (with each inference step combining one or more premise
branches to give a single conclusion).

The truth values of logical formulas usually form a finite set, generally restricted to two values:
true and false, but logic can also be continuous-valued, e.g., fuzzy logic. Concepts such as infinite
proof trees or infinite derivation trees have also been studied e.g. infinitely logic.
Set theory:

Set theory is the branch of mathematics that studies sets, which are collections of objects, such as
{blue, white, and red} or the (infinite) set of all prime numbers. Partially ordered sets and sets with
other relations have applications in several areas.

In discrete mathematics, countable sets (including finite sets) are the main focus. The
beginning of set theory as a branch of mathematics is usually marked by Georg Cantor's work
distinguishing between different kinds of infinite set, motivated by the study of trigonometric
series, and further development of the theory of infinite sets is outside the scope of discrete
mathematics. Indeed, contemporary work in descriptive set theory makes extensive use of
traditional continuous mathematics.

Combinatorics:

Combinatorics studies the way in which discrete structures can be combined or arranged.
Enumerative combinatorics concentrates on counting the number of certain combinatorial objects
- e.g. the twelvefold way provides a unified framework for counting permutations, combinations
and partitions. Analytic combinatorics concerns the enumeration (i.e., determining the number) of
combinatorial structures using tools from complex analysis and probability theory.

In contrast with enumerative combinatorics which uses explicit combinatorial formula and
generating functions to describe the results, analytic combinatorics aims at obtaining asymptotic
formula. Design theory is a study of combinatorial designs, which are collections of subsets with
certain intersection properties. Partition theory studies various enumeration and asymptotic
problems related to integer partitions, and is closely related to q-series, special functions and
orthogonal polynomials.

Originally a part of number theory and analysis, partition theory is now considered a part of
combinatorics or an independent field. Order theory is the study of partially ordered sets, both
finite and infinite.
Graph theory:

Graph theory, the study of graphs and networks, is often considered part of combinatorics, but has
grown large enough and distinct enough, with its own kind of problems, to be regarded as a subject
in its own right. Graphs are one of the prime objects of study in discrete mathematics. They are
among the most ubiquitous models of both natural and human-made structures. They can model
many types of relations and process dynamics in physical, biological and social systems.

In computer science, they can represent networks of communication, data organization,


computational devices, the flow of computation, etc. In mathematics, they are useful in geometry
and certain parts of topology, e.g. knot theory. Algebraic graph theory has close links with group
theory. There are also continuous graphs, however for the most part research in graph theory falls
within the domain of discrete mathematics.

Discrete probability theory:

Discrete probability theory deals with events that occur in countable sample spaces. For example,
count observations such as the numbers of birds in flocks comprise only natural number values {0,
1, 2,}. On the other hand, continuous observations such as the weights of birds comprise real
number values and would typically be modeled by a continuous probability distribution such as
the normal. Discrete probability distributions can be used to approximate continuous ones and vice
versa. For highly constrained situations such as throwing dice or experiments with decks of cards,
calculating the probability of events is basically enumerative. Lets have a look on the following
example of dice.

It gets more interesting when you have two dice. One thing that you can do is work out what the
total of the dice is. The dice experiment allows you to simulate throwing pairs of dice and see what
the result is. This is a good introduction to probability, since you can see which combinations are
more likely.

But the real world, or even a simulated real world, never matches completely with calculated
probability. So how do we calculate it? The first thing is to work out what the range is. You can't
have a total less than 2 (both dice being 1) and you can't have a total more than 12 (both dice being
6). The easiest way to see what the probabilities is to write out the possible totals. There are 36 of
them in all (6 x 6)

Total on dice Pairs of dice Probability

2 1+1 1/36 = 3%

3 1+2, 2+1 2/36 = 6%

4 1+3, 2+2, 3+1 3/36 = 8%

5 1+4, 2+3, 3+2, 4+1 4/36 = 11%

6 1+5, 2+4, 3+3, 4+2, 5+1 5/36 = 14%

7 1+6, 2+5, 3+4, 4+3, 5+2, 6+1 6/36 = 17%

8 2+6, 3+5, 4+4, 5+3, 6+2 5/36 = 14%

9 3+6, 4+5, 5+4, 6+3 4/36 = 11%

10 4+6, 5+5, 6+4 3/36 = 8%

11 5+6, 6+5 2/36 = 6%

12 6+6 1/36 = 3%
Number theory:

Number theory is concerned with the properties of numbers in general, particularly integers. It has
applications to cryptography, cryptanalysis, and cryptology, particularly with regard to modular
arithmetic, Diophantine equations, linear and quadratic congruence’s, prime numbers and
primarily testing. Other discrete aspects of number theory include geometry of numbers. In
analytic number theory, techniques from continuous mathematics are also used. Topics that go
beyond discrete objects include transcendental numbers, Diophantine approximation, and analysis
and function fields.

Algebraic structures occur as both discrete examples and continuous examples. Discrete algebras
include: Boolean algebra used in logic gates and programming; relational algebra used in
databases; discrete and finite versions of groups, rings and fields are important in algebraic coding
theory; discrete semi groups and monodies appear in the theory of formal languages.

Discrete geometry and computational geometry:

Discrete geometry and combinatorial geometry are about combinatorial properties of discrete
collections of geometrical objects. A long-standing topic in discrete geometry is tiling of the plane.
Computational geometry applies algorithms to geometrical problems.
Trees:

Trees are used to represent data that has some hierarchical relationship among the data elements.

Topology:

Although topology is the field of mathematics that formalizes and generalizes the intuitive notion
of "continuous deformation" of objects, it gives rise to many discrete topics; this can be attributed
in part to the focus on topological invariants, which themselves usually take discrete values. See
combinatorial topology, topological graph theory, topological combinatorics, computational
topology, discrete topological space, finite topological space, topology (chemistry).

Discrete Math in Cryptography

The field of cryptography, which is the study of how to create security structures and passwords
for computers and other electronic systems, is based entirely on discrete mathematics. This is
partly because computers send information in discrete -- or separate and distinct -- bits. Number
theory, one important part of discrete math, allows cryptographers to create and break numerical
passwords. Because of the quantity of money and the amount of confidential information
involved, cryptographers must first have a solid background in number theory to show they can
provide secure passwords and encryption methods.
Relational Databases

Relational databases play a part in almost every organization that must keep track of employees,
clients or resources. A relational database connects the traits of a certain piece of information.
For example, in a database containing client information, the relational aspect of this database
allows the computer system to know how to link the client’s name, address, phone number and
other pertinent information. This is all done through the discrete math concept of sets. Sets allow
information to be grouped and put in order. Since each piece of information and each trait
belonging to that piece of information is discrete, the organization of such information in a
database requires discrete mathematical methods.

Uses for Discrete Math in Logistics

Logistics is the study of organizing the flow of information, goods and services. Without discrete
mathematics, logistics would not exist. This is because logistics makes heavy use of graphs and
graph theory, a sub-field of discrete math. Graph theory allows complex logistical problems to
simplify into graphs consisting of nodes and lines. A mathematician can analyze these graphs
according to the methods of graph theory to determine the best routes for shipping or solving
other logistical problems.

Computer Algorithms

Algorithms are the rules by which a computer operates. These rules are created through the laws
of discrete mathematics. A computer programmer uses discrete math to design efficient
algorithms. This design includes applying discrete math to determine the number of steps an
algorithm needs to complete, which implies the speed of the algorithm. Because of discrete
mathematical applications in algorithms, today’s computers run faster than ever before.

CONCLUSIONS:

We emphasize the essential role that mathematics plays in the development of computer science
both for the particular knowledge and for the reasoning skills associated with mathematical
maturity. We stress the importance of certain mathematical concepts for computer science. We
present a comprehensive table of mathematics topics and their computer science applications.

Das könnte Ihnen auch gefallen