src/HOL/Bali/AxSem.thy
changeset 24038 18182c4aec9e
parent 24019 67bde7cfcf10
child 24783 5a3e336a2e37
equal deleted inserted replaced
24037:0a41d2ebc0cd 24038:18182c4aec9e
   957 (* unused *)
   957 (* unused *)
   958 lemma ax_finite_mtriples_lemma: "\<lbrakk>F \<subseteq> ms; finite ms; \<forall>(C,sig)\<in>ms. 
   958 lemma ax_finite_mtriples_lemma: "\<lbrakk>F \<subseteq> ms; finite ms; \<forall>(C,sig)\<in>ms. 
   959     G,(A::'a triple set)\<turnstile>{Normal (P C sig)::'a assn} mb C sig-\<succ> {Q C sig}\<rbrakk> \<Longrightarrow> 
   959     G,(A::'a triple set)\<turnstile>{Normal (P C sig)::'a assn} mb C sig-\<succ> {Q C sig}\<rbrakk> \<Longrightarrow> 
   960        G,A|\<turnstile>{{P} mb-\<succ> {Q} | F}"
   960        G,A|\<turnstile>{{P} mb-\<succ> {Q} | F}"
   961 apply (frule (1) finite_subset)
   961 apply (frule (1) finite_subset)
   962 apply (erule make_imp)
   962 apply (erule rev_mp)
   963 apply (erule thin_rl)
   963 apply (erule thin_rl)
   964 apply (erule finite_induct)
   964 apply (erule finite_induct)
   965 apply  (unfold mtriples_def)
   965 apply  (unfold mtriples_def)
   966 apply  (clarsimp intro!: ax_derivs.empty ax_derivs.insert)+
   966 apply  (clarsimp intro!: ax_derivs.empty ax_derivs.insert)+
   967 apply force
   967 apply force
   982 (* this version is used to avoid using the cut rule *)
   982 (* this version is used to avoid using the cut rule *)
   983 lemma ax_finite_pointwise_lemma [rule_format]: "\<lbrakk>F \<subseteq> ms; finite ms\<rbrakk> \<Longrightarrow>  
   983 lemma ax_finite_pointwise_lemma [rule_format]: "\<lbrakk>F \<subseteq> ms; finite ms\<rbrakk> \<Longrightarrow>  
   984   ((\<forall>(C,sig)\<in>F. G,(A::'a triple set)\<turnstile>(f C sig::'a triple)) \<longrightarrow> (\<forall>(C,sig)\<in>ms. G,A\<turnstile>(g C sig::'a triple))) \<longrightarrow>  
   984   ((\<forall>(C,sig)\<in>F. G,(A::'a triple set)\<turnstile>(f C sig::'a triple)) \<longrightarrow> (\<forall>(C,sig)\<in>ms. G,A\<turnstile>(g C sig::'a triple))) \<longrightarrow>  
   985       G,A|\<turnstile>split f ` F \<longrightarrow> G,A|\<turnstile>split g ` F"
   985       G,A|\<turnstile>split f ` F \<longrightarrow> G,A|\<turnstile>split g ` F"
   986 apply (frule (1) finite_subset)
   986 apply (frule (1) finite_subset)
   987 apply (erule make_imp)
   987 apply (erule rev_mp)
   988 apply (erule thin_rl)
   988 apply (erule thin_rl)
   989 apply (erule finite_induct)
   989 apply (erule finite_induct)
   990 apply  clarsimp+
   990 apply  clarsimp+
   991 apply (drule ax_derivs_insertD)
   991 apply (drule ax_derivs_insertD)
   992 apply (rule ax_derivs.insert)
   992 apply (rule ax_derivs.insert)