(* Lecture 25: Laws of Computability *) (* no code *) (* Barber's paradox, connection to the undecidability if a function halts on it own code. Combining problems (we assume all domains are enumerable) P(x) decidable => not P(x) decidable. P1(x), P2(x) decidable => P1(x) and P2(x) decidable P1(x), P2(x) decidable => P1(x) or P2(x) decidable P(x,y) decidable => exist y. P(x,y) semi-decidable, but not nec. decidable P(x) semi-decidable => not P(x) not necessearily semi-decidable P1(x), P2(x) semi-decidable => P1(x) and P2(x) semi-decidable P1(x), P2(x) semi-decidable => P1(x) or P2(x) semi-decidable [parallel-or] P(x,y) semi-decidable => exists y. P(x,y) semi-decidable [dove-tailing] Every closed statement (or statement over finit domain) is decidable (even though we may not know which way!) [note: only in classical logic!] *)