synergy.ppt 1495KB Jun 23 2011 12:32:26 PM
The Synergy of Computer
Science and Mathematics
Dr. Raymond Greenlaw
Armstrong Atlantic State
University
School of Computing
Outline
• Introduction
• Influence of Math on Computer Science
• Influence of Computer Science on Math
• Computational Mathematics
• Conclusions
• References
Dr. Raymond Greenlaw – The Synergy of Computer Science and
2
Introduction
• Computer science and mathematics are
currently extensively used in many fields
• Both have influenced the other and led
to many advancements in each
• This synergy between the two have
even lead to the increase in interest in
computational mathematics, a field that
many consider to be the intersection
between computer science and
mathematics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
3
Influence of Math on C.S.
Dr. Raymond Greenlaw – The Synergy of Computer Science and
4
Influence of Math on C.S.
• Many computer science programs have
spawned from mathematics departments
• During their time under mathematics,
they slowly built up reputation and
students, with most eventually becoming
their own department, then later, their
own school
• Many noted computer scientists have
degrees in mathematics, including Knuth,
Cook, Lamport, Backus (FORTRAN, BNF),
Kay (GUI), and McCarthy (LISP)
Dr. Raymond Greenlaw – The Synergy of Computer Science and
5
Influence of Math on C.S.
Why do C.S. students need Math?
• Many people believe that mathematics
is fundamental to computer science
• Real world problems are often
expressed mathematically and require
problem solving skills
• Studies have shown that mathematical
ability has a strong correlation with
success in introductory computer
science courses
Dr. Raymond Greenlaw – The Synergy of Computer Science and
6
Influence of Math on C.S.
• When the human brain is subjected to
extended educational experience
permanent, physical changes occur,
creating neural pathways which aid in
learning new things
• The more repetitive the learning process,
the strong and longer lasting the changes
• The mind finds it extremely difficult to
accept formal abstractions, yet at some
point, they seem very real and the
developer does not see them as abstract
Dr. Raymond Greenlaw – The Synergy of Computer Science and
7
Influence of Math on C.S.
• Actual information learned in a class may go
away, but the learning abilities are still there
• True goal of education is to improve minds
• Should enable the student to acquire
abilities and skills to accomplish new things
• Main benefit of learning and doing
mathematics is to develop the ability to
reason precisely and analytically about
abstract structures, which is what
computing deals with
Dr. Raymond Greenlaw – The Synergy of Computer Science and
8
Influence of Math on C.S.
• ABET, the recognized accreditor for
college and university programs in
computing and other technological
areas requires an accredited C.S.
program to include a minimum of 15
hours of mathematics
• These courses must include discrete
mathematics, differential and integral
calculus, and probability and statistics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
9
Influence of Math on C.S.
• An example of math playing a large role in
computer science occurs when using
public key cryptography
• A published, publicly available key (the
public key) is provided in an open directory
• The person keeps a private key
• To send an encrypted file or email
message, the sender encrypts using the
recipient’s public key
• The private key decrypts the message
Dr. Raymond Greenlaw – The Synergy of Computer Science and
10
Influence of Math on C.S.
• The keys are formed and secured based on
the properties of prime numbers
• Basically, the public key is a product of two
random, large primes
• The private key is the two primes
themselves
• This algorithm is secure because of the
almost impossible task of factorizing the
large number into the two primes
• To break this encryption, all prime numbers
less than the product must be checked
Dr. Raymond Greenlaw – The Synergy of Computer Science and
11
Influence of Math on C.S.
Samples of Math in C.S. areas
• Relational Databases – Rely on the
ideas of set theory to understand usage
• NP-Completeness – Heavy math basis
• Network – Topology of networks,
routing, and load analysis problems
deal with graph theory
• Cryptography – Encryption/decryption
schemes rely on mathematical ideas
and methods to provide security
Dr. Raymond Greenlaw – The Synergy of Computer Science and
12
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
13
Influence of C.S. on Math
Computer algebra system (CAS)
• Software program that allows symbolic
mathematics, the manipulation of
equations and expressions in symbolic
format
• Typical CASs store expressions as
directed acyclic graphs, DAGs are also
used in the parse trees for compilers
• Popular examples include Maple,
MATLAB, and Mathematica
Dr. Raymond Greenlaw – The Synergy of Computer Science and
14
Influence of C.S. on Math
Maple
• General purpose CAS
• Developed in 1981 by a group at the
University of Waterloo
• Sold commercially since 1988
• Interpreted, dynamically typed
language
• Allows static scoping, where a variable
always refers to its nearest binding
Dr. Raymond Greenlaw – The Synergy of Computer Science and
15
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
16
Influence of C.S. on Math
MATLAB
• Numerical computing environment and
programming language
• Has a toolbox to interface with Maple
engine which turns it into a CAS
• Invented in late 1970s by Cleve Moler,
chairman of computer science at the
University of New Mexico
• Used mainly for linear algebra and
numerical analysis
Dr. Raymond Greenlaw – The Synergy of Computer Science and
17
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
18
Influence of C.S. on Math
Mathematica
• CAS and powerful programming language
• Written by Stephen Wolfram
• First version released in 1988
• Uses a kernel which does all calculations
and feeds results to multiple front ends
• Based on term rewriting
• Supports functional and procedural
programming
Dr. Raymond Greenlaw – The Synergy of Computer Science and
19
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
20
The Four Color Theorem
Dr. Raymond Greenlaw – The Synergy of Computer Science and
21
The Four Color Theorem
• Long standing conjecture proven with aid
of the computer
• Originally posed in the 1850s
• Proven by Kenneth Appel and Wolfgang
Haken in 1976
• States that the chromatic number (least
number of colors required to color a graph)
of a planar graph is no greater than four
• Relies on case-by-case analysis carried out
by computer
Dr. Raymond Greenlaw – The Synergy of Computer Science and
22
The Four Color Theorem
• Showed that if the theorem was false, a
counterexample would have to exist in
one of 1,936 reducible configurations
(later reduced to 1,476)
• A later enhancement by Robertson,
Sanders, Seymour, and Thomas reduced
that number to 633
• Many disproofs use one region touching
all others, not realizing that the
surrounding regions can be colored with
only three
Dr. Raymond Greenlaw – The Synergy of Computer Science and
23
The Four Color Theorem
Dr. Raymond Greenlaw – The Synergy of Computer Science and
24
Computational Mathematics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
25
Computational Mathematics
• Considered to be at the intersection of
computer science and mathematics
• Application of computer methods to
simulate computer models and analyzing
the results
• Historically, the software and models were
developed by people already working in the
application area (engineers, scientists, etc.)
• Developing and analyzing these models
requires more than classic mathematics
and elementary computer science
Dr. Raymond Greenlaw – The Synergy of Computer Science and
26
Computational Mathematics
• Deals with issues such as
– the implications of finite precision
arithmetic
– the efficiency, accuracy, and stability of
numerical computations
– the development and maintenance of
mathematical software
– the effects of modern developments in
computer architectures and networks
• Programs are available at institutions
like Waterloo, Princeton, and CalTech
Dr. Raymond Greenlaw – The Synergy of Computer Science and
27
Computational Mathematics
• Students in these programs study
– Asymptotics, analysis, numerical analysis,
and signal processing
– Discrete mathematics, combinatorics,
algorithms, computation geometry, and
graphics
– Mechanics and field theories
– Optimization
– Partial and ordinary differential equations
– Stochastic modeling, probability, statistics,
and information theory
Dr. Raymond Greenlaw – The Synergy of Computer Science and
28
Computational Mathematics
• Sample applications from Waterloo
include
– Tornado tracking for meteorologists
– Numerical simulation of flow in
aeronautical engineering
– Derivative pricing in computational finance
– Modeling breaking waves
– Medical imaging with functional magnetic
resonance imaging (fMRI)
Dr. Raymond Greenlaw – The Synergy of Computer Science and
29
Conclusions
• Computer science and mathematics
have both influenced each other for
many years
• A number of advancements in each
field can be directly linked to the other
• Computational mathematics has
successfully combined the two fields
into one which is being used to produce
quality software for many important
fields
Dr. Raymond Greenlaw – The Synergy of Computer Science and
30
References
•
•
•
•
•
•
•
•
•
•
•
Baldwin, Doug and Peter Henderson. “The Importance of Mathematics to the
Software Practicioner.” IEEE Software. March/April 2002: 22-24.
Beaubouef, Theresa. “Why Computer Science Students Need Math.” Inroads:
SIGCSE Bulletin. December 2002: 57-59.
Bruce, Kim, et al. “Why Math?” Communications of the ACM. September 2003:
41-44.
“Computational Mathematics.” University of Waterloo. December 2005
“Criteria for Accrediting Computer Science Programs (2005-2006).” ABET, Inc.
Devlin, Keith. “The Real Reason Why Software Engineers Need Math.”
Communications of the ACM. October 2001: 21-22.
Devlin, Keith. “Why Universities Require Computer Science Students to Take
Math.” Communications of the ACM. September 2003: 37-39.
“PACM Graduate Program.” Princeton University. December 2005
Rosen, Kenneth. Discrete Mathematics and its Applications. United States of
America: McGraw-Hill, 1999.
“The Four Color Theorem.” Thomas, Robin. December 2005
Multiple Articles, December 2005
Dr. Raymond Greenlaw – The Synergy of Computer Science and
31
Science and Mathematics
Dr. Raymond Greenlaw
Armstrong Atlantic State
University
School of Computing
Outline
• Introduction
• Influence of Math on Computer Science
• Influence of Computer Science on Math
• Computational Mathematics
• Conclusions
• References
Dr. Raymond Greenlaw – The Synergy of Computer Science and
2
Introduction
• Computer science and mathematics are
currently extensively used in many fields
• Both have influenced the other and led
to many advancements in each
• This synergy between the two have
even lead to the increase in interest in
computational mathematics, a field that
many consider to be the intersection
between computer science and
mathematics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
3
Influence of Math on C.S.
Dr. Raymond Greenlaw – The Synergy of Computer Science and
4
Influence of Math on C.S.
• Many computer science programs have
spawned from mathematics departments
• During their time under mathematics,
they slowly built up reputation and
students, with most eventually becoming
their own department, then later, their
own school
• Many noted computer scientists have
degrees in mathematics, including Knuth,
Cook, Lamport, Backus (FORTRAN, BNF),
Kay (GUI), and McCarthy (LISP)
Dr. Raymond Greenlaw – The Synergy of Computer Science and
5
Influence of Math on C.S.
Why do C.S. students need Math?
• Many people believe that mathematics
is fundamental to computer science
• Real world problems are often
expressed mathematically and require
problem solving skills
• Studies have shown that mathematical
ability has a strong correlation with
success in introductory computer
science courses
Dr. Raymond Greenlaw – The Synergy of Computer Science and
6
Influence of Math on C.S.
• When the human brain is subjected to
extended educational experience
permanent, physical changes occur,
creating neural pathways which aid in
learning new things
• The more repetitive the learning process,
the strong and longer lasting the changes
• The mind finds it extremely difficult to
accept formal abstractions, yet at some
point, they seem very real and the
developer does not see them as abstract
Dr. Raymond Greenlaw – The Synergy of Computer Science and
7
Influence of Math on C.S.
• Actual information learned in a class may go
away, but the learning abilities are still there
• True goal of education is to improve minds
• Should enable the student to acquire
abilities and skills to accomplish new things
• Main benefit of learning and doing
mathematics is to develop the ability to
reason precisely and analytically about
abstract structures, which is what
computing deals with
Dr. Raymond Greenlaw – The Synergy of Computer Science and
8
Influence of Math on C.S.
• ABET, the recognized accreditor for
college and university programs in
computing and other technological
areas requires an accredited C.S.
program to include a minimum of 15
hours of mathematics
• These courses must include discrete
mathematics, differential and integral
calculus, and probability and statistics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
9
Influence of Math on C.S.
• An example of math playing a large role in
computer science occurs when using
public key cryptography
• A published, publicly available key (the
public key) is provided in an open directory
• The person keeps a private key
• To send an encrypted file or email
message, the sender encrypts using the
recipient’s public key
• The private key decrypts the message
Dr. Raymond Greenlaw – The Synergy of Computer Science and
10
Influence of Math on C.S.
• The keys are formed and secured based on
the properties of prime numbers
• Basically, the public key is a product of two
random, large primes
• The private key is the two primes
themselves
• This algorithm is secure because of the
almost impossible task of factorizing the
large number into the two primes
• To break this encryption, all prime numbers
less than the product must be checked
Dr. Raymond Greenlaw – The Synergy of Computer Science and
11
Influence of Math on C.S.
Samples of Math in C.S. areas
• Relational Databases – Rely on the
ideas of set theory to understand usage
• NP-Completeness – Heavy math basis
• Network – Topology of networks,
routing, and load analysis problems
deal with graph theory
• Cryptography – Encryption/decryption
schemes rely on mathematical ideas
and methods to provide security
Dr. Raymond Greenlaw – The Synergy of Computer Science and
12
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
13
Influence of C.S. on Math
Computer algebra system (CAS)
• Software program that allows symbolic
mathematics, the manipulation of
equations and expressions in symbolic
format
• Typical CASs store expressions as
directed acyclic graphs, DAGs are also
used in the parse trees for compilers
• Popular examples include Maple,
MATLAB, and Mathematica
Dr. Raymond Greenlaw – The Synergy of Computer Science and
14
Influence of C.S. on Math
Maple
• General purpose CAS
• Developed in 1981 by a group at the
University of Waterloo
• Sold commercially since 1988
• Interpreted, dynamically typed
language
• Allows static scoping, where a variable
always refers to its nearest binding
Dr. Raymond Greenlaw – The Synergy of Computer Science and
15
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
16
Influence of C.S. on Math
MATLAB
• Numerical computing environment and
programming language
• Has a toolbox to interface with Maple
engine which turns it into a CAS
• Invented in late 1970s by Cleve Moler,
chairman of computer science at the
University of New Mexico
• Used mainly for linear algebra and
numerical analysis
Dr. Raymond Greenlaw – The Synergy of Computer Science and
17
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
18
Influence of C.S. on Math
Mathematica
• CAS and powerful programming language
• Written by Stephen Wolfram
• First version released in 1988
• Uses a kernel which does all calculations
and feeds results to multiple front ends
• Based on term rewriting
• Supports functional and procedural
programming
Dr. Raymond Greenlaw – The Synergy of Computer Science and
19
Influence of C.S. on Math
Dr. Raymond Greenlaw – The Synergy of Computer Science and
20
The Four Color Theorem
Dr. Raymond Greenlaw – The Synergy of Computer Science and
21
The Four Color Theorem
• Long standing conjecture proven with aid
of the computer
• Originally posed in the 1850s
• Proven by Kenneth Appel and Wolfgang
Haken in 1976
• States that the chromatic number (least
number of colors required to color a graph)
of a planar graph is no greater than four
• Relies on case-by-case analysis carried out
by computer
Dr. Raymond Greenlaw – The Synergy of Computer Science and
22
The Four Color Theorem
• Showed that if the theorem was false, a
counterexample would have to exist in
one of 1,936 reducible configurations
(later reduced to 1,476)
• A later enhancement by Robertson,
Sanders, Seymour, and Thomas reduced
that number to 633
• Many disproofs use one region touching
all others, not realizing that the
surrounding regions can be colored with
only three
Dr. Raymond Greenlaw – The Synergy of Computer Science and
23
The Four Color Theorem
Dr. Raymond Greenlaw – The Synergy of Computer Science and
24
Computational Mathematics
Dr. Raymond Greenlaw – The Synergy of Computer Science and
25
Computational Mathematics
• Considered to be at the intersection of
computer science and mathematics
• Application of computer methods to
simulate computer models and analyzing
the results
• Historically, the software and models were
developed by people already working in the
application area (engineers, scientists, etc.)
• Developing and analyzing these models
requires more than classic mathematics
and elementary computer science
Dr. Raymond Greenlaw – The Synergy of Computer Science and
26
Computational Mathematics
• Deals with issues such as
– the implications of finite precision
arithmetic
– the efficiency, accuracy, and stability of
numerical computations
– the development and maintenance of
mathematical software
– the effects of modern developments in
computer architectures and networks
• Programs are available at institutions
like Waterloo, Princeton, and CalTech
Dr. Raymond Greenlaw – The Synergy of Computer Science and
27
Computational Mathematics
• Students in these programs study
– Asymptotics, analysis, numerical analysis,
and signal processing
– Discrete mathematics, combinatorics,
algorithms, computation geometry, and
graphics
– Mechanics and field theories
– Optimization
– Partial and ordinary differential equations
– Stochastic modeling, probability, statistics,
and information theory
Dr. Raymond Greenlaw – The Synergy of Computer Science and
28
Computational Mathematics
• Sample applications from Waterloo
include
– Tornado tracking for meteorologists
– Numerical simulation of flow in
aeronautical engineering
– Derivative pricing in computational finance
– Modeling breaking waves
– Medical imaging with functional magnetic
resonance imaging (fMRI)
Dr. Raymond Greenlaw – The Synergy of Computer Science and
29
Conclusions
• Computer science and mathematics
have both influenced each other for
many years
• A number of advancements in each
field can be directly linked to the other
• Computational mathematics has
successfully combined the two fields
into one which is being used to produce
quality software for many important
fields
Dr. Raymond Greenlaw – The Synergy of Computer Science and
30
References
•
•
•
•
•
•
•
•
•
•
•
Baldwin, Doug and Peter Henderson. “The Importance of Mathematics to the
Software Practicioner.” IEEE Software. March/April 2002: 22-24.
Beaubouef, Theresa. “Why Computer Science Students Need Math.” Inroads:
SIGCSE Bulletin. December 2002: 57-59.
Bruce, Kim, et al. “Why Math?” Communications of the ACM. September 2003:
41-44.
“Computational Mathematics.” University of Waterloo. December 2005
“Criteria for Accrediting Computer Science Programs (2005-2006).” ABET, Inc.
Devlin, Keith. “The Real Reason Why Software Engineers Need Math.”
Communications of the ACM. October 2001: 21-22.
Devlin, Keith. “Why Universities Require Computer Science Students to Take
Math.” Communications of the ACM. September 2003: 37-39.
“PACM Graduate Program.” Princeton University. December 2005
Rosen, Kenneth. Discrete Mathematics and its Applications. United States of
America: McGraw-Hill, 1999.
“The Four Color Theorem.” Thomas, Robin. December 2005
Multiple Articles, December 2005
Dr. Raymond Greenlaw – The Synergy of Computer Science and
31