theory week03A_demo_automation imports Main begin definition xor :: "bool \ bool \ bool" where "xor A B \ (A \ \B) \ (\A \ B)" lemma xorI: "A \ B \ \ (A \ B) \ xor A B" sorry lemma xorE: "\ xor A B; \A; \B\ \ R; \\A; B\ \ R \ \ R" sorry lemma "xor A A = False" apply blast done lemma "xor A B = xor B A" oops end