CS403 - Computational Complexity Theory
Class Test 1
Friday 16 November 2001, 15:00, SLT
T Naughton, CS NUIM,
Back to CS403 home
Remove everything from your desk except pens/pencils. Paper will be provided. Turn off all computer monitors. Answer all questions. You have 60 minutes in total. Answer Section A first. After 30 minutes you will be given the Section B questions.
Use the MCQ answer sheet for Section B. Write both your name and student id. number the MCQ sheet. Each MCQ question has only one fully correct option. Negative marking will be enforced: +1 for a correct answer, -0.25 for an incorrect answer, 0 for a non attempt. This means that randomly guessing answers will average a mark of zero.
Section A – Turing machine programming (50% of total test marks)
Q1 Write a Turing machine to divide a unary number by two (rounding up). Initially the TM head will be at the beginning of the input. At halt, the TM head must be at the beginning of the output. For example, input "1111" would be transformed into "11", and input "111" would be transformed into "11".
Q2 You are given a 2-tape Turing machine T = (Q, S, I, q0, F) = ({00,01,02,03,09}, {0,1,-}, I, 00, {09}) that operates on binary strings. As usual, the head of the first tape will be positioned at the beginning of the input and the second tape will be blank. I is
q s q' s' m
00 (0,-) 00 (0,-) (R,S)
00 (1,-) 01 (1,-) (R,S)
00 (-,-) 02 (-,-) (L,S)
01 (0,-) 00 (0,-) (R,S)
01 (1,-) 01 (1,-) (R,S)
01 (-,-) 03 (-,-) (L,S)
02 (0,-) 09 (0,0) (S,S)
02 (1,-) 09 (1,0) (S,S)
02 (-,-) 09 (-,-) (R,S)
03 (0,-) 09 (0,1) (S,S)
03 (1,-) 09 (1,1) (S,S)
03 (-,-) 09 (-,-) (R,S)
(a) What does T do? Give as concise an explanation as you can.
(b) Convert T into a functionally-identical Turing machine that requires at least one less state than T.
Section B – Computability (50% of total test marks)
Q1 Who invented the Turing machine?
Q2 Who did not invent the Turing machine?
Q3 Which of the following functions has the largest growth rate?
Q4 We can reduce our number of unique tape symbols in a TM table of behaviour by
Q5 Which of the following are not one of the unrestricted models of computation?
Q6 Which of the following is an unrestricted model of computation?
Q7 ``In order to ensure that a machine would be able to answer every question from some formal system (say, arithmetic) we would have to permit it to give incorrect answers some of the time." This statement is
Q8 The hypothesis that there is a notion of effective calculability independent of any particular formalism is
Q9 If every mathematical statement in a formal system can be either proved or disproved (i.e. proved false) then the system is
Q10 Given that I is the set of quintuples of the form (q, s, s', m, q') of a k-tape deterministic Turing machine T (with k³1 and defined by the tuple (Q, S, I, q0, F) ) which of the following is false?
Q11 Which of the following is necessary to describe the global state of a 1-tape deterministic Turing machine?
Q12 Which of the following is not necessary to describe the global state of a 1-tape deterministic Turing machine?
Q13 Given that a k-tape deterministic Turing machine T with k³1 can be defined by the tuple (Q, S, I, q0, F), which of the following is false?
Q14 Which of the following languages is not recursively enumerable?
Q15 Which of the following languages is not recursive?