SUNY Geneseo Department of Mathematics
Monday, April 4
Math 304
Spring 2016
Prof. Doug Baldwin
construct M2 w/ input x
if x = w accept
otherwise reject
run R( M, M2 ) { M and M2 can have a string in common only if both accept w}
if R accepts, accept
otherwise reject
construct M2 with input x as
{L(M2) = Σ* if M accepts w, ∅ otherwise}
run M on w
if M accepts, accept
otherwise reject
let M3 be a Turing machine that accepts at least 1 string
run R on M2 and M3
if R accepts, accept, otherwise reject
construct P2(y) as
if P(x)
print “I love reductions”
end
run R on P2
if R accepts, accept
otherwise reject
let L(T), where T is a Turing machine, have property P
construct M2 w/ input x
run M on w
run T on x, accept iff T does
run R on M2
if R accepts, accept
otherwise reject
let L(T), where T is a Turing machine, not have property P
construct M2 w/ input x
run M on w
run T on x, accept iff T does
run R on M2
if R accepts, reject
otherwise accept