src/Sequents/LK.thy
changeset 51717 9e7d1c139569
parent 48891 c0eafbd55de3
child 55228 901a6696cdd8
equal deleted inserted replaced
51709:19b47bfac6ef 51717:9e7d1c139569
   213 lemma eq_sym_conv: "|- (x=y) <-> (y=x)"
   213 lemma eq_sym_conv: "|- (x=y) <-> (y=x)"
   214   apply (tactic {* fast_tac (LK_pack add_safes @{thms subst}) 1 *})
   214   apply (tactic {* fast_tac (LK_pack add_safes @{thms subst}) 1 *})
   215   done
   215   done
   216 
   216 
   217 ML_file "simpdata.ML"
   217 ML_file "simpdata.ML"
   218 setup {* Simplifier.map_simpset_global (K LK_ss) *}
   218 setup {* map_theory_simpset (put_simpset LK_ss) *}
   219 
   219 
   220 
   220 
   221 text {* To create substition rules *}
   221 text {* To create substition rules *}
   222 
   222 
   223 lemma eq_imp_subst: "|- a=b ==> $H, A(a), $G |- $E, A(b), $F"
   223 lemma eq_imp_subst: "|- a=b ==> $H, A(a), $G |- $E, A(b), $F"
   224   apply (tactic {* asm_simp_tac LK_basic_ss 1 *})
   224   apply (tactic {* asm_simp_tac (put_simpset LK_basic_ss @{context}) 1 *})
   225   done
   225   done
   226 
   226 
   227 lemma split_if: "|- P(if Q then x else y) <-> ((Q --> P(x)) & (~Q --> P(y)))"
   227 lemma split_if: "|- P(if Q then x else y) <-> ((Q --> P(x)) & (~Q --> P(y)))"
   228   apply (rule_tac P = Q in cut)
   228   apply (rule_tac P = Q in cut)
   229    apply (tactic {* simp_tac (@{simpset} addsimps @{thms if_P}) 2 *})
   229    apply (tactic {* simp_tac (@{context} addsimps @{thms if_P}) 2 *})
   230   apply (rule_tac P = "~Q" in cut)
   230   apply (rule_tac P = "~Q" in cut)
   231    apply (tactic {* simp_tac (@{simpset} addsimps @{thms if_not_P}) 2 *})
   231    apply (tactic {* simp_tac (@{context} addsimps @{thms if_not_P}) 2 *})
   232   apply (tactic {* fast_tac LK_pack 1 *})
   232   apply (tactic {* fast_tac LK_pack 1 *})
   233   done
   233   done
   234 
   234 
   235 lemma if_cancel: "|- (if P then x else x) = x"
   235 lemma if_cancel: "|- (if P then x else x) = x"
   236   apply (tactic {* lemma_tac @{thm split_if} 1 *})
   236   apply (tactic {* lemma_tac @{thm split_if} 1 *})