an algorithmic view of computer science
DESCRIPTION
This is a three part talk, where I give some historical context to computer science, then do a pitch for the field (from the point of view of prospective students), and then I talk about my three different research threads (proof complexity of linear algebra, 0-1 combinatorial matrices, string algorithms), and finish with a talk about security - where I mostly do consulting work.TRANSCRIPT
![Page 1: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/1.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
1/42
An Algorithmic View of Computer Science
Michael Soltys
@MichaelMSoltys
McMaster University, Canada
November 1, 2013
![Page 2: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/2.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
2/42
![Page 3: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/3.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
3/42
Outline
1 Why Study Computer Science?HistoryExciting fieldLots of Jobs
2 My ResearchLinear Algebra0-1 MatricesStrings
3 SecurityCryptographyApplications
![Page 4: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/4.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
4/42
Prehistory
Engraved ocher plaqueBlombos Cave, South Africa
77,000–75,000 years old
Ishango bone
Congo, 25,000–20,000 years old leg
bone from a baboon; 3 rows of tally
marks, to add or multiply (?)
Reindeer antler with tally marksLa Madeleine, France
17,000–11,500 years old
![Page 5: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/5.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 6: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/6.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 7: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/7.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 8: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/8.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 9: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/9.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 10: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/10.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 11: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/11.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 12: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/12.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
5/42
History
1 1930s: Math models of computation (Turing machine)
2 1940s: First electronic computers (ENIAC)
3 1950s: First programming languages (Fortran and Lisp)
4 1960s: Integrated circuits and Unix operating system
5 1970s: Internet and personal computers (ARPANET andCommodore PET)
6 1980s: Computers with a mouse and a graphical userinterface (Apple Macintosh, Microsoft Windows)
7 1990s: World Wide Web (web browsers and searchengines)
8 2000s: Social media and smart phones (Facebook andApple iPhone)
![Page 13: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/13.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
6/42
Today
We use computers to:
1 Solve problems (computer shortest path from A to B)
2 Managing information (Cloud, Search Engine, eHealth)
3 Create smart products (iPhone, iPad, embedded systems)
4 Explore our world (Google maps, Yelp)
5 Connect (Date, Facebook, Twitter, Wordpress)
![Page 14: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/14.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
6/42
Today
We use computers to:
1 Solve problems (computer shortest path from A to B)
2 Managing information (Cloud, Search Engine, eHealth)
3 Create smart products (iPhone, iPad, embedded systems)
4 Explore our world (Google maps, Yelp)
5 Connect (Date, Facebook, Twitter, Wordpress)
![Page 15: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/15.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
6/42
Today
We use computers to:
1 Solve problems (computer shortest path from A to B)
2 Managing information (Cloud, Search Engine, eHealth)
3 Create smart products (iPhone, iPad, embedded systems)
4 Explore our world (Google maps, Yelp)
5 Connect (Date, Facebook, Twitter, Wordpress)
![Page 16: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/16.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
6/42
Today
We use computers to:
1 Solve problems (computer shortest path from A to B)
2 Managing information (Cloud, Search Engine, eHealth)
3 Create smart products (iPhone, iPad, embedded systems)
4 Explore our world (Google maps, Yelp)
5 Connect (Date, Facebook, Twitter, Wordpress)
![Page 17: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/17.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
6/42
Today
We use computers to:
1 Solve problems (computer shortest path from A to B)
2 Managing information (Cloud, Search Engine, eHealth)
3 Create smart products (iPhone, iPad, embedded systems)
4 Explore our world (Google maps, Yelp)
5 Connect (Date, Facebook, Twitter, Wordpress)
![Page 18: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/18.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
7/42
Young Field
Fundamental problems still unsolved
1 Engineering: How to write correct programs?
2 Science: Why are some problems computationallydifficult?
![Page 19: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/19.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
7/42
Young Field
Fundamental problems still unsolved
1 Engineering: How to write correct programs?
2 Science: Why are some problems computationallydifficult?
![Page 20: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/20.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
8/42
A vast multi-disciplinary field
1 Mathematics, Engineering, and Science
2 Linguistics: Context-Free Grammars, Wordnet
3 Psychology: Human-Computer Interaction, Web Design
4 Sociology: Crowd mining
![Page 21: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/21.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
8/42
A vast multi-disciplinary field
1 Mathematics, Engineering, and Science
2 Linguistics: Context-Free Grammars, Wordnet
3 Psychology: Human-Computer Interaction, Web Design
4 Sociology: Crowd mining
![Page 22: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/22.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
8/42
A vast multi-disciplinary field
1 Mathematics, Engineering, and Science
2 Linguistics: Context-Free Grammars, Wordnet
3 Psychology: Human-Computer Interaction, Web Design
4 Sociology: Crowd mining
![Page 23: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/23.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
8/42
A vast multi-disciplinary field
1 Mathematics, Engineering, and Science
2 Linguistics: Context-Free Grammars, Wordnet
3 Psychology: Human-Computer Interaction, Web Design
4 Sociology: Crowd mining
![Page 24: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/24.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
9/42
Sociology of CS
![Page 25: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/25.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
10/42
Excellent Job Outlook
![Page 26: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/26.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
11/42
![Page 27: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/27.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
12/42
Job Outlook Numbers1
Area Employment Change Median2010 2020 2010–20 % Salary
Engineering jobs 11 $83,340
Computing jobs 22 $73,710
Software Developers 913,100 1,184,000 270,900 30 $90,530Comp. Programmers 363,100 406,800 43,700 12 $71,380
Security & Networks 302,300 368,000 65,700 22 $75,660
Comp. Syst. Analyst 544,400 664,800 120,400 22 $75,660
Syst. Admin. 347,200 443,800 96,600 28 $69,160
Database Admin. 110,800 144,700 33,900 31 $73,490
Employers favor graduates who can communicate![Barrett 2013]
1United States Department of Labor Occupational Outlook Handbook,2012-13 Edition, http://www.bls.gov/oco/
![Page 28: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/28.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
13/42
My Research
![Page 29: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/29.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
14/42
P vs NP
![Page 30: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/30.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
14/42
P vs NP
![Page 31: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/31.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
14/42
P vs NP
![Page 32: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/32.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
15/42
• Perhaps there is a better way of doing this than “BruteForce”?This is the P vs NP problem[Cook]
• This problem is very difficult.
• A related problem isthe NP vs co-NP question, which can be restated as follows:
Is there a formal proof system where every truestatement has a short proof?
An answer to this questions would have very interestingimplications for Logic & Epistemology
• Cook’s program for the NP vs co-NP is a systematic studyof “reverse mathematics”
• My contribution is the “mapping out” of Linear Algebra[Cook Soltys 2004]
![Page 33: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/33.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
15/42
• Perhaps there is a better way of doing this than “BruteForce”?This is the P vs NP problem[Cook]
• This problem is very difficult.
• A related problem isthe NP vs co-NP question, which can be restated as follows:
Is there a formal proof system where every truestatement has a short proof?
An answer to this questions would have very interestingimplications for Logic & Epistemology
• Cook’s program for the NP vs co-NP is a systematic studyof “reverse mathematics”
• My contribution is the “mapping out” of Linear Algebra[Cook Soltys 2004]
![Page 34: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/34.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
15/42
• Perhaps there is a better way of doing this than “BruteForce”?This is the P vs NP problem[Cook]
• This problem is very difficult.
• A related problem isthe NP vs co-NP question, which can be restated as follows:
Is there a formal proof system where every truestatement has a short proof?
An answer to this questions would have very interestingimplications for Logic & Epistemology
• Cook’s program for the NP vs co-NP is a systematic studyof “reverse mathematics”
• My contribution is the “mapping out” of Linear Algebra[Cook Soltys 2004]
![Page 35: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/35.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
15/42
• Perhaps there is a better way of doing this than “BruteForce”?This is the P vs NP problem[Cook]
• This problem is very difficult.
• A related problem isthe NP vs co-NP question, which can be restated as follows:
Is there a formal proof system where every truestatement has a short proof?
An answer to this questions would have very interestingimplications for Logic & Epistemology
• Cook’s program for the NP vs co-NP is a systematic studyof “reverse mathematics”
• My contribution is the “mapping out” of Linear Algebra[Cook Soltys 2004]
![Page 36: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/36.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
15/42
• Perhaps there is a better way of doing this than “BruteForce”?This is the P vs NP problem[Cook]
• This problem is very difficult.
• A related problem isthe NP vs co-NP question, which can be restated as follows:
Is there a formal proof system where every truestatement has a short proof?
An answer to this questions would have very interestingimplications for Logic & Epistemology
• Cook’s program for the NP vs co-NP is a systematic studyof “reverse mathematics”
• My contribution is the “mapping out” of Linear Algebra[Cook Soltys 2004]
![Page 37: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/37.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
16/42
Statistical Archeology
• Sequence dating: Flinders Petrie, 1899
• 900 pre-dynastic Egyptian graves containing 800representatives of pottery
• The “graves-versus-varieties” matrix contains vast amountof information, such as sequential ordering [Kendall 1969]
![Page 38: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/38.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
16/42
Statistical Archeology
• Sequence dating: Flinders Petrie, 1899
• 900 pre-dynastic Egyptian graves containing 800representatives of pottery
• The “graves-versus-varieties” matrix contains vast amountof information, such as sequential ordering [Kendall 1969]
![Page 39: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/39.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
16/42
Statistical Archeology
• Sequence dating: Flinders Petrie, 1899
• 900 pre-dynastic Egyptian graves containing 800representatives of pottery
• The “graves-versus-varieties” matrix contains vast amountof information, such as sequential ordering [Kendall 1969]
![Page 40: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/40.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
17/42
Paleogenomics
DNA sequence organization of ancient living organisms usingsimilarities and differences between chromosomes of extantorganisms [Chauve et al 2008]
![Page 41: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/41.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
18/42
Consecutive-1 Property: C1P
Consider a slight relaxation, (k, δ)-C1P: each row has at most kblocks of 1s and the gap between any two blocks is at most δ.So (1, 0)-C1P is C1P, and deciding if an A has (k , δ)-C1P is:
• polytime for (1, 0)
• NP-hard for every k ≥ 2, δ ≥ 1 except (2, 1)
What about (2, 1)? [Patterson 2012]
![Page 42: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/42.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
19/42
Konig’s Min-Max
0
1 0 1 1
1 0
1
00
0
1
1 0
00
[Fernandez Soltys 2013]
![Page 43: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/43.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
20/42
Smart bacteria
Ehrenfeucht-Mycielski Sequence
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010 1
[Herman Soltys 2009]
![Page 44: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/44.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
20/42
Smart bacteria
Ehrenfeucht-Mycielski Sequence
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010 1
[Herman Soltys 2009]
![Page 45: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/45.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
20/42
Smart bacteria
Ehrenfeucht-Mycielski Sequence
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010 1
[Herman Soltys 2009]
![Page 46: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/46.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
20/42
Smart bacteria
Ehrenfeucht-Mycielski Sequence
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010
• 011010101010111010011111001100011010101010 1
[Herman Soltys 2009]
![Page 47: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/47.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
21/42
Do the shuffle
• w is the shuffle of u, v : w = u � v
• w = 0110110011101000u = 01101110v = 10101000w = 0110110011101000
• w is a shuffle of u and v provided:u = x1x2 · · · xkv = y1y2 · · · ykand w obtained by “interleaving” w = x1y1x2y2 · · · xkyk .
![Page 48: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/48.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
21/42
Do the shuffle
• w is the shuffle of u, v : w = u � v
• w = 0110110011101000u = 01101110v = 10101000w = 0110110011101000
• w is a shuffle of u and v provided:u = x1x2 · · · xkv = y1y2 · · · ykand w obtained by “interleaving” w = x1y1x2y2 · · · xkyk .
![Page 49: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/49.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
21/42
Do the shuffle
• w is the shuffle of u, v : w = u � v
• w = 0110110011101000u = 01101110v = 10101000w = 0110110011101000
• w is a shuffle of u and v provided:u = x1x2 · · · xkv = y1y2 · · · ykand w obtained by “interleaving” w = x1y1x2y2 · · · xkyk .
![Page 50: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/50.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
22/42
Square Shuffle
w is a square provided it is equal to a shuffle of a u with itself,i.e., ∃u s.t. w = u � uThe string w = 0110110011101000 is a square:
w = 0110110011101000
andu = 01101100 = 01101100
![Page 51: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/51.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
23/42
Result
given an alphabet Σ, |Σ| ≥ 7,Square = {w : ∃u(w = u � u)}is NP-complete.What we leave open:
• What about |Σ| = 2 (for |Σ| = 1, Square is just the setof even length strings)
• What about if |Σ| =∞ but each symbol cannot occurmore often than, say, 6 times (if each symbol occurs atmost 4 times, Square can be reduced to 2-Sat – seeP. Austrin Stack Exchange post)
![Page 52: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/52.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
24/42
Bipartite graph
w = (c1x3c2)2(c1x2c2)2(c1xc2)2 is a square:w = u � u where u = c1xxxc2xc2c1xc1xc2.Bipartite graph G associated with particular solutionw = u � u:
We also have w = v � v with v = c1x3c2c1x2c2c1xc2
which would have its associated bipartite graph
![Page 53: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/53.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
25/42
Nesting
G has the “non-nesting” property: if G contains an edge fromwk to w` and an edge from wp to wq, then it is not the casethat k < p < q < `Claim: There is a complete bipartite graph G of degree one(i.e., a perfect matching) on the symbols of w which isnon-nesting, iff w can be expressed as a square shuffle.
![Page 54: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/54.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
26/42
• Formal languages• Ginsburg & Spanier in ’65
• Modelling sequential execution of concurrent processes• Riddle (’73 & ’79), Shaw (’78), Hoare
• Shuffle on its own• Mansfield (’82 & ’83; polytime dynamic prog. alg. for
w = u1 � u2 � · · · � uk for constant k; when k varies,NP-complete)
• Warmuth & Haussler (’84; show w = u � u � · · · � uNP-complete by reduction from 3-Partition)
• More complexity• Buss & Yianilos (’98; “Monge condition”)• Erickson (2010; how hard is ∃u,w = u � u?); as
mentioned, Austrin gives polytime algorithm when eachsymbol occurs at most 4 times. Problem of the year onStack Exchange.
• Soltys (2012; shuffle in AC1 but not AC0.)
![Page 55: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/55.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
27/42
PDA
A queue automaton is a PDA but with a queue instead of astack.
Reads the input w fromleft to right.
Queue is initially emptyand supports theoperations push-bottomand pop-top.
Automaton accepts if itsqueue is empty after thelast symbol of w hasbeen read.
w
Pop
Push
![Page 56: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/56.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
28/42
w = 0110110011101000
andu = 01101100 = 01101100
![Page 57: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/57.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε 0110110011101000
![Page 58: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/58.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
0 110110011101000
![Page 59: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/59.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
01 10110011101000
![Page 60: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/60.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
011 0110011101000
![Page 61: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/61.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
11 110011101000
![Page 62: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/62.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
1 10011101000
![Page 63: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/63.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε 0011101000
![Page 64: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/64.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
0 011101000
![Page 65: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/65.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε 11101000
![Page 66: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/66.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
1 1101000
![Page 67: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/67.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε 101000
![Page 68: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/68.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
1 01000
![Page 69: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/69.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
10 1000
![Page 70: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/70.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
0 000
![Page 71: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/71.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε 00
![Page 72: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/72.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
0 0
![Page 73: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/73.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
29/42
ε ε accepted
![Page 74: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/74.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
30/42
Reduction
The many-one reduction to Square constructs a string wS
over the alphabet
Σ = {a1, a2, b, e0, e, c1, c2, x , y},
such that wS is a square iff S is a “yes” instance of3-Partition.The string wS consists of three parts:
wS := 〈loaderS〉〈distributorS〉〈verifierS〉.
![Page 75: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/75.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
31/42
Security
![Page 76: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/76.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
32/42
Enigma machine
http://enigmaco.de/enigma/enigma.html
![Page 77: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/77.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
33/42
Uses of Crypto
WEP, WPA/WPA2 SSL/SSH
PGP/GPG
RSA Encryption 128 bytes:
BE 89 0E A1 AD FA 7D 58 6A A1 6A E4
3B ED 75 E4 3E F2 19 F7 F3 0F FA D9
EF 62 10 52 7B FC DD 94 96 A8 35 6B
1B 50 60 2E 2E 79 AC 7C 2E A3 81 DE
8D 37 F9 EE 6E 4F 82 C7 E4 12 04 55
AF 57 69 94 8C EF 2E 50 7A 6D 53 0F
5B 5F 62 58 5E CF F2 DF F4 4D CE 71
B6 82 D7 86 E5 4F 77 E4 91 AA E4 BD
5A 65 AA 9E 20 4F 38 5E B4 8B E0 36
45 80 A8 D5 24 5C 46 9D F1 80 C0 6B
62 A5 1F 26 5E AE 17 47
DRMFairPlay
MD5
5c3079df8a48623f5aa10f0181a7ab03
![Page 78: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/78.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
34/42
Cryptography is the art of computing & communicating in thepresence of an adversarycryptography = κρυπτo (hidden or secret) + γραφη (writing)Three broad applications:
• encryption
• authentication
• integrity checking
Not all security is an application of crypto, e.g., Firewalls.
![Page 79: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/79.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
35/42
• Noisy channel
• Obfuscation
• Password login
• Client-server secure communication
• Non-repudiation
• Electronic voting
• Digital cash
• Secure storage on insecure media
![Page 80: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/80.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
36/42
Fundamental THEOREM of cryptography
The following are all equivalent:
• Secure shared-private-key cryptosystems exist.
• Secure signature schemes exist.
• Pseudo-random number generators exist.
• One-way functions exist.
![Page 81: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/81.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
37/42
Fundamental TENET of cryptography
Lots of smart people have been trying to figure out howto break X ,
but so far they have not been able to come up with anythingyet.
Therefore X is “secure” . . .
![Page 82: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/82.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
38/42
Fundamental ASSUMPTION of cryptography
Everybody knows how it works, i.e., the algorithm is publicknowledge.
The secret is the “key”.
In principle it can always be broken; but in practice it is toomuch work for the “bad guy.”
![Page 83: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/83.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
39/42
Amazing free tools:
GnuPG (http://www.gnupg.org)
OpenSSL (http://www.openssl.org)
![Page 84: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/84.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
40/42
In practice Crypto not the problem
• We know how to do crypto scientifically→ and it is a huge help
• But, in practice most security problems due to buggy code→ writing software that is not buggy is the problem ofCS/SE
• Challenge 1: build secure systems with insecurecomponents→ similar to building reliable systems with unreliablecomponents
• Challenge 2: the art of making the right trade-offs tosatisfy contradictory objectives (e.g., security & speed)
![Page 85: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/85.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 86: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/86.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 87: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/87.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 88: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/88.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 89: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/89.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 90: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/90.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 91: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/91.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
41/42
1 Same problem as software engineering: how to checkwhether a program conforms to its specifications?
2 How to “specify” security?
3 User discipline is 90% of any security policy
4 My main focus is network security
5 Consulting work:• Forensic work — chain of evidence• Network Penetration Detection
6 Recent masters theses:• With Dragan Rakas: Homomorphic encryption• With Sabry Aly: GGH
7 Cybersecurity field not ready to be professionalized[The National Academies Press 2013]Ad hoc solutions; best approach is “case based”
![Page 92: An algorithmic view of Computer Science](https://reader033.vdocuments.us/reader033/viewer/2022051420/548d277ab479590d2b8b499f/html5/thumbnails/92.jpg)
An AlgorithmicView of
ComputerScience
Michael Soltys
Why StudyComputerScience?
History
Exciting field
Lots of Jobs
My Research
Linear Algebra
0-1 Matrices
Strings
Security
Cryptography
Applications
42/42
Thank You!Questions?