284 "?p : P(f(a,b), f(b,c)) & P(f(b,c), f(a,c)) & |
284 "?p : P(f(a,b), f(b,c)) & P(f(b,c), f(a,c)) & |
285 (ALL x y z. P(x,y) & P(y,z) --> P(x,z)) --> P(f(a,b), f(a,c))" |
285 (ALL x y z. P(x,y) & P(y,z) --> P(x,z)) --> P(f(a,b), f(a,c))" |
286 by (tactic "fast_tac @{context} FOLP_cs 1") |
286 by (tactic "fast_tac @{context} FOLP_cs 1") |
287 |
287 |
288 text "Problem 58 NOT PROVED AUTOMATICALLY" |
288 text "Problem 58 NOT PROVED AUTOMATICALLY" |
289 schematic_lemma |
289 schematic_lemma "?p : (ALL x y. f(x)=g(y)) --> (ALL x y. f(f(x))=f(g(y)))" |
290 notes f_cong = subst_context [where t = f] |
290 supply f_cong = subst_context [where t = f] |
291 shows "?p : (ALL x y. f(x)=g(y)) --> (ALL x y. f(f(x))=f(g(y)))" |
|
292 by (tactic {* fast_tac @{context} (FOLP_cs addSIs [@{thm f_cong}]) 1 *}) |
291 by (tactic {* fast_tac @{context} (FOLP_cs addSIs [@{thm f_cong}]) 1 *}) |
293 |
292 |
294 text "Problem 59" |
293 text "Problem 59" |
295 schematic_lemma "?p : (ALL x. P(x) <-> ~P(f(x))) --> (EX x. P(x) & ~P(f(x)))" |
294 schematic_lemma "?p : (ALL x. P(x) <-> ~P(f(x))) --> (EX x. P(x) & ~P(f(x)))" |
296 by (tactic "best_tac @{context} FOLP_dup_cs 1") |
295 by (tactic "best_tac @{context} FOLP_dup_cs 1") |