src/FOLP/ex/Classical.thy
changeset 60375 b35b08a143b2
parent 58957 c9e744ea8a38
child 60770 240563fbf41d
equal deleted inserted replaced
60374:6b858199f240 60375:b35b08a143b2
   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")