L2 - Problems and Effective Procedures Flashcards

1
Q

Define a Problem…

A

A uniform sort of questions with a defined input and output. The output must be finite and definite.

Problems are solved by providing a function or deciding membership of a set.

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

What are some examples of qualified questions… Explain the reason.

A

Given a Binary Tree, what is its height?
- Defined input and output types of binary tree and integer.

Given a natural number, is it even?
- Defined input of natural number, output if of type bool within boolean set.

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

What are some examples of unqualified questions?

A

What is the meaning of life…
- No defined input and output
Is the number 5 even?
- No uniform class of questions

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

What was Turings criteria for a problem being calculable?

A

If the solution can be calculated via a statement driven mechanical process.

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

Define an Effective Procedure…

A

A mechanism that solves a problem effectively and intuitively.

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

What is Copelands criteria for a procedure being effective?

A

Method must have the following:
- Finite and exact instruction.
- If M is error free, it was consistantly produce the correct solution.
- Can be carried out on pencil and paper.
- Executor requires no insight or ingenuity to carry procedure out.

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

Define a programming language in terms of Effective Procedures…Define some key languages

A

A Programming Language is one that encapsulates a set of procedures and problems, such that these problems can be solved by the procedures within the language.

Examples: Turing Machine Tape, Lambda Calculus, WHILE.

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

Define what the Turing Machine Tape is and how it works…

A

An infinite tape, segmented into squares. Each square can hold a value of a certain alphabet. The input is a String. A pointer moves left or right on the tape depending on whether the current statement is true or false.

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

How else could the Turing Machine Tape be represented?

A
  • Transition Function
  • State Transition Diagram
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Could the Turing Machine be used to solve problems we see today?

A

Yes, but via different syntax.

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

Define Lambda Calculus…

A

System for expressing computation via abstraction and application, utilising substitution and variable bindng.

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

What are the 4 constants in lambda?

A

Integer, Character, Boolean, Operator.

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

Define Variables, Function and Application in Lambda Calculus?

A

Variable : Name that holds a value.
Function : Lambda abstraction that binds to a variable.
Application : An application of the function on some input.

X = variable, lambda = function abstraction, ( fa ) = application of function onto a.

X(fa)Lambda

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

Define the Turing - Church Thesis…

A

Any real-world computation can be translated into an equivalent computation written in both Turing Machine and Lambda-Calculus form.

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