theory a1 imports Main begin section "Question 1: Types" text {* submit as part of a .txt or .pdf file *} section "Question 2: Lambda-Calculus" text {* submit as part of a .txt or .pdf file *} section "Question 3: Propositional Logic" lemma prop_a: "A \ B \ B" oops lemma prop_b: "\\P \ P" oops lemma prop_c: "(P \ P) = P" oops lemma prop_d: "(A \ B \ C) = (A \ B \ C)" oops lemma prop_e: "(\ x) = (x = False)" oops lemma prop_f: "(A \ A) = Q \ Q \ B" oops lemma prop_g: "(a \ b) = (\ (a \ \ b))" oops lemma prop_h: "(P \ Q) = (\P \ Q)" oops lemma prop_i: "(P \ (P \ Q)) = (P \ (P \ Q))" oops text {* Do not use cases, classical, or ccontr for proj_j: *} lemma prop_j: "\ (\ (\ P \ Q) \ P) \ P \ P \ \ P" oops text {* Which of the above statements are provable only in a classical logic? *} end