Theory of computation Flashcards

1
Q

decomposition

A

breaking a problem down into sub problems making it easier to execute

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

abstraction

A

Details are removed until it looks solvable
(simplifying a problem)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

algorithm

A

sequence of instructions that performs a specific task when followed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Data abstraction

A

enables us to isolate how a compound data object is used from the details of how it is constructed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

how do you build data abstractions

A

by combining data objects to form compound data, for example tree data structure

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

how do you build a composition abstraction

A

by combining procedures to form compound procedures

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

representational abstraction

A

removing unnecessary details

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

information hiding

A

process of hiding all unnecessary details of an object

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

procedural abstraction

A

represents a computational method

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

functional abstraction

A

particular computation method is hidden

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

how does automation achieve putting models into action to solve problems

A
  1. creating algorithms
  2. implementing the algorithms in program code (instructions)
  3. implementing the models in data structures
  4. executing the code.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

set and the alternative symbol for empty set

A

unordered collection of values in which each value occurs at most once.

Ø

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

finite sets

A

elements can be counted off by natural numbers up to a particular number

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

infinite set

A

counted off by the natural numbers.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

cardinality of a finite set

A

number of elements in a set

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Cartesian product of two sets

A

set of all ordered pairs

17
Q

regular expression

A

a way of describing a set

18
Q

describe the relationship between regular expressions and FSMs

A

Regular expressions and FSMs are equivalent ways of defining a regular language.

19
Q

regular language

A

any language that a FSM will accept

20
Q

when is a language called regular

A

if it can be represented by a regular expression.

21
Q

explain why BNF can represent some languages that cannot be represented using regular expressions.

A

BNF allows for the description of nested and recursive structures, whereas regular expressions are limited in their ability to handle such complex patterns.

22
Q

tractable

A

problems that have a polynomial (or less) time solution are called tractable problems.

23
Q

intractable

A

problems that have no polynomial (or less) time solution are called intractable problems.

24
Q

Heuristic methods

A

Heuristic methods are often used when tackling intractable problems.

25
limits of computation
algorithmic complexity and hardware impose limits on what can be computed
26
computable and non-computable problems
some problems cannot be solved algorithmically
27
halting problem
Determining if a program will halt demonstrates that there are some problems that cannot be solved by a computer.
28
Explain the functionality of the * metacharacter
0 or more
29
Explain the functionality of the + metacharacter
1 or more repetitions
30
Explain the functionality of the ? metacharacter
0 or 1
31
explain the functionality of the () metacharacter
to group regular expression
32
explain the functionality of the | metacharacter
alternation
33
importance of turing machines
Turing machines provide a model of computation and provide a definition of what is computable.
34
universal turing machine
A Turing machine that can execute
35
equivalence between a transition function and a state transition diagram
A state transition diagram represents the transitions between states in a finite state machine, while a transition function defines the specific transitions and their corresponding outputs in a mathematical form.