## Computability and Decidability: An Introduction for Students of Computer Science

Toggle navigation Catalogue of Courses. Home Previous Catalogues Degree Prescriptions. Course Details. Qualification Prerequisites. Either Programme Level 3 or Programme Level 4. What other courses must be taken with this course? What courses cannot be taken with this course? Are there a limited number of places available?

Course Description. Functional languages: Haskell idioms, Haskell polymorphic types, recursion, Haskell higher-order functions, lazy evaluation, infinite sets. Chomsky hierarchy and computability: Turing decidability, Turing recognisability, injections, surjections and bijections, Cantor's diagonal argument, the halting problem, the Church-Turing Thesis. Degree Programmes for which this Course is Prescribed. Contact Teaching Time. Information on contact teaching time is available from the course guide.

Teaching Breakdown. Summative Assessments. For example, finding a particular number in a long list of numbers becomes harder as the list of numbers grows larger. If we say there are n numbers in the list, then if the list is not sorted or indexed in any way we may have to look at every number in order to find the number we're seeking.

### Select type

We thus say that in order to solve this problem, the computer needs to perform a number of steps that grows linearly in the size of the problem. To simplify this problem, computer scientists have adopted Big O notation , which allows functions to be compared in a way that ensures that particular aspects of a machine's construction do not need to be considered, but rather only the asymptotic behavior as problems become large.

Perhaps the most important open problem in all of computer science is the question of whether a certain broad class of problems denoted NP can be solved efficiently. Aside from a Turing machine , other equivalent See: Church—Turing thesis models of computation are in use. In addition to the general computational models, some simpler computational models are useful for special, restricted applications. Regular expressions , for example, specify string patterns in many contexts, from office productivity software to programming languages.

Another formalism mathematically equivalent to regular expressions, Finite automata are used in circuit design and in some kinds of problem-solving. Context-free grammars specify programming language syntax. Non-deterministic pushdown automata are another formalism equivalent to context-free grammars. Primitive recursive functions are a defined subclass of the recursive functions.

Different models of computation have the ability to do different tasks.

## Sabancı University :: Course Offerings

One way to measure the power of a computational model is to study the class of formal languages that the model can generate; in such a way to the Chomsky hierarchy of languages is obtained. From Wikipedia, the free encyclopedia. Not to be confused with computational theory of mind.

Computability Or Complexity Theory - Intro to Theoretical Computer Science

For the journal, see Theory of Computing. Main article: Automata theory. Main article: Formal language.

1. Find a course!
2. 2. Computing with Turing Machines.
3. CSCI 5444: Introduction to the Theory of Computation.
4. Select type.

Main article: Computability theory. Main article: Computational complexity theory. Main article: Model of computation. Introduction to the Theory of Computation 3rd. Cengage Learning. Princeton University Press. June Mathematical Logic. Ullman Introduction to Automata Theory, Languages, and Computation.

## Theoretical Computer Science Seminar

Reading, MA: Addison-Wesley. Proceedings of the London Mathematical Society. Retrieved 6 January Transactions of the American Mathematical Society.

American Mathematical Society. The undecidable: Basic papers on undecidable propositions, unsolvable problems and computable functions Dover Ed. Dover Publications.

### Honors Introduction to Computer Science Theory, 4003-389-01, Fall 2012-13

Areas of mathematics. Category theory Information theory Mathematical logic Philosophy of mathematics Set theory. Abstract Elementary Linear Multilinear. Calculus Real analysis Complex analysis Differential equations Functional analysis. Combinatorics Graph theory Order theory Game theory.