[STATEMENT]
theorem deriv_consistency:
  assumes inf_param: \<open>infinite (UNIV :: 'a set)\<close>
  shows \<open>consistency {S::('a, 'b) form set. \<exists>G. S = set G \<and> \<not> G \<turnstile> FF}\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. consistency {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
unfolding consistency_def
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. \<forall>S. S \<in> {set G |G. \<not> G \<turnstile> FF} \<longrightarrow> (\<forall>p ts. \<not> (Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S)) \<and> FF \<notin> S \<and> Neg TT \<notin> S \<and> (\<forall>Z. Neg (Neg Z) \<in> S \<longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. And A B \<in> S \<longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. Neg (Or A B) \<in> S \<longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. Or A B \<in> S \<longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. Neg (And A B) \<in> S \<longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. Impl A B \<in> S \<longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>A B. Neg (Impl A B) \<in> S \<longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>P t. closedt 0 t \<longrightarrow> Forall P \<in> S \<longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>P t. closedt 0 t \<longrightarrow> Neg (Exists P) \<in> S \<longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}) \<and> (\<forall>P. Exists P \<in> S \<longrightarrow> (\<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF})) \<and> (\<forall>P. Neg (Forall P) \<in> S \<longrightarrow> (\<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}))
[PROOF STEP]
proof (intro conjI allI impI notI)
[PROOF STATE]
proof (state)
goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
fix S :: \<open>('a, 'b) form set\<close>
[PROOF STATE]
proof (state)
goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
assume \<open>S \<in> {set G | G. \<not> G \<turnstile> FF}\<close> (is \<open>S \<in> ?C\<close>)
[PROOF STATE]
proof (state)
this:
S \<in> {set G |G. \<not> G \<turnstile> FF}

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
S \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
obtain G :: \<open>('a, 'b) form list\<close>
    where *: \<open>S = set G\<close> and \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
S \<in> {set G |G. \<not> G \<turnstile> FF}

goal (1 subgoal):
 1. (\<And>G. \<lbrakk>S = set G; \<not> G \<turnstile> FF\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S = set G
\<not> G \<turnstile> FF

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
S = set G
\<not> G \<turnstile> FF

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
fix p ts
[PROOF STATE]
proof (state)
goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
assume \<open>Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Pred p ts\<close> and \<open>G \<turnstile> Neg (Pred p ts)\<close>
[PROOF STATE]
proof (prove)
using this:
Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S

goal (1 subgoal):
 1. G \<turnstile> Pred p ts &&& G \<turnstile> Neg (Pred p ts)
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Pred p ts &&& G \<turnstile> Neg (Pred p ts)
[PROOF STEP]
by blast+
[PROOF STATE]
proof (state)
this:
G \<turnstile> Pred p ts
G \<turnstile> Neg (Pred p ts)

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Pred p ts
G \<turnstile> Neg (Pred p ts)
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Pred p ts
G \<turnstile> Neg (Pred p ts)

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Pred p ts
G \<turnstile> Neg (Pred p ts)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (14 subgoals):
 1. \<And>S p ts. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Pred p ts \<in> S \<and> Neg (Pred p ts) \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 4. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 14 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
show False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (13 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 13 subgoals...
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Pred ?p2 ?ts2 \<in> S \<and> Neg (Pred ?p2 ?ts2) \<in> S \<Longrightarrow> False

goal (13 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 13 subgoals...
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Pred ?p2 ?ts2 \<in> S \<and> Neg (Pred ?p2 ?ts2) \<in> S \<Longrightarrow> False

goal (13 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 13 subgoals...
[PROOF STEP]
assume \<open>FF \<in> S\<close>
[PROOF STATE]
proof (state)
this:
FF \<in> S

goal (13 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 13 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
FF \<in> S
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
FF \<in> S

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
FF \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (13 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; FF \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 3. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 13 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
show False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
FF \<in> S \<Longrightarrow> False

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
FF \<in> S \<Longrightarrow> False

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
assume \<open>Neg TT \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg TT \<in> S

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg TT \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Neg TT\<close>
[PROOF STATE]
proof (prove)
using this:
Neg TT \<in> S

goal (1 subgoal):
 1. G \<turnstile> Neg TT
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
Neg TT \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Neg TT
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg TT

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg TT

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
have \<open>G \<turnstile> TT\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. G \<turnstile> TT
[PROOF STEP]
using TTI
[PROOF STATE]
proof (prove)
using this:
?G \<turnstile> TT

goal (1 subgoal):
 1. G \<turnstile> TT
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> TT

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Neg TT
G \<turnstile> TT
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg TT
G \<turnstile> TT

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg TT
G \<turnstile> TT
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (12 subgoals):
 1. \<And>S. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg TT \<in> S\<rbrakk> \<Longrightarrow> False
 2. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 12 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
show False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg TT \<in> S \<Longrightarrow> False

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Neg TT \<in> S \<Longrightarrow> False

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
fix Z
[PROOF STATE]
proof (state)
goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
assume \<open>Neg (Neg Z) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg (Neg Z) \<in> S

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Neg Z) \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Neg (Neg Z)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Neg Z) \<in> S

goal (1 subgoal):
 1. G \<turnstile> Neg (Neg Z)
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
Neg (Neg Z) \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Neg (Neg Z)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (Neg Z)

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (Neg Z)

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
assume \<open>Z # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
Z # G \<turnstile> FF

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Z # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> Neg Z\<close>
[PROOF STATE]
proof (prove)
using this:
Z # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> Neg Z
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
Z # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. G \<turnstile> Neg Z
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg Z

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Neg Z
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg Z

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using NegE \<open>G \<turnstile> Neg (Neg Z)\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg Z
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
G \<turnstile> Neg (Neg Z)

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Z # G \<turnstile> FF \<Longrightarrow> False

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Z # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> Z # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Z # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> Z # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> Z # G \<turnstile> FF

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> Z # G \<turnstile> FF

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
have \<open>S \<union> {Z} = set (Z # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {Z} = set (Z # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {Z} = set (Z # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {Z} = set (Z # G)

goal (11 subgoals):
 1. \<And>S Z. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Neg Z) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
A total of 11 subgoals...
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> Z # G \<turnstile> FF
S \<union> {Z} = set (Z # G)
[PROOF STEP]
show \<open>S \<union> {Z} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> Z # G \<turnstile> FF
S \<union> {Z} = set (Z # G)

goal (1 subgoal):
 1. S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {Z} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (Neg ?Z2) \<in> S \<Longrightarrow> S \<union> {?Z2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Neg (Neg ?Z2) \<in> S \<Longrightarrow> S \<union> {?Z2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>And A B \<in> S\<close>
[PROOF STATE]
proof (state)
this:
And A B \<in> S

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
And A B \<in> S
[PROOF STEP]
have \<open>G \<turnstile> And A B\<close>
[PROOF STATE]
proof (prove)
using this:
And A B \<in> S

goal (1 subgoal):
 1. G \<turnstile> And A B
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
And A B \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> And A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> And A B

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> And A B
[PROOF STEP]
have \<open>G \<turnstile> A\<close> and \<open>G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> And A B

goal (1 subgoal):
 1. G \<turnstile> A &&& G \<turnstile> B
[PROOF STEP]
using AndE1 AndE2
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> And A B
?G \<turnstile> And ?a ?b \<Longrightarrow> ?G \<turnstile> ?a
?G \<turnstile> And ?a ?b \<Longrightarrow> ?G \<turnstile> ?b

goal (1 subgoal):
 1. G \<turnstile> A &&& G \<turnstile> B
[PROOF STEP]
by blast+
[PROOF STATE]
proof (state)
this:
G \<turnstile> A
G \<turnstile> B

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> A
G \<turnstile> B

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>A # B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
A # B # G \<turnstile> FF

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # B # G \<turnstile> FF
[PROOF STEP]
have \<open>B # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
A # B # G \<turnstile> FF

goal (1 subgoal):
 1. B # G \<turnstile> Neg A
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
A # B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. B # G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Neg A

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> Neg A
[PROOF STEP]
have \<open>G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Neg A

goal (1 subgoal):
 1. G \<turnstile> Neg A
[PROOF STEP]
using cut \<open>G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Neg A
\<lbrakk>?G \<turnstile> ?A; ?A # ?G \<turnstile> ?B\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?B
G \<turnstile> B

goal (1 subgoal):
 1. G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg A

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Neg A
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg A

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using NegE \<open>G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg A
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
G \<turnstile> A

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
A # B # G \<turnstile> FF \<Longrightarrow> False

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # B # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> A # B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # B # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> A # B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> A # B # G \<turnstile> FF

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> A # B # G \<turnstile> FF

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {A, B} = set (A # B # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {A, B} = set (A # B # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {A, B} = set (A # B # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {A, B} = set (A # B # G)

goal (10 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; And A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 10. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> A # B # G \<turnstile> FF
S \<union> {A, B} = set (A # B # G)
[PROOF STEP]
show \<open>S \<union> {A, B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> A # B # G \<turnstile> FF
S \<union> {A, B} = set (A # B # G)

goal (1 subgoal):
 1. S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {A, B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
And ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {?A2, ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
And ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {?A2, ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (Or A B) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg (Or A B) \<in> S

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Or A B) \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Neg (Or A B)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Or A B) \<in> S

goal (1 subgoal):
 1. G \<turnstile> Neg (Or A B)
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
Neg (Or A B) \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Neg (Or A B)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (Or A B)

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg B # G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg B # G \<turnstile> A
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> A

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg B # G \<turnstile> A
[PROOF STEP]
have \<open>A # Neg B # G \<turnstile> Or A B\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> A

goal (1 subgoal):
 1. A # Neg B # G \<turnstile> Or A B
[PROOF STEP]
using OrI1
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> A
?G \<turnstile> ?a \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. A # Neg B # G \<turnstile> Or A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> Or A B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> Or A B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg B # G \<turnstile> Neg (Or A B)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
using * \<open>Neg (Or A B) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Or A B) \<in> S

goal (1 subgoal):
 1. A # Neg B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> Neg (Or A B)

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
A # Neg B # G \<turnstile> Or A B
A # Neg B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
have \<open>A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> Or A B
A # Neg B # G \<turnstile> Neg (Or A B)

goal (1 subgoal):
 1. A # Neg B # G \<turnstile> FF
[PROOF STEP]
using NegE \<open>A # Neg B # G \<turnstile> Neg (Or A B)\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> Or A B
A # Neg B # G \<turnstile> Neg (Or A B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
A # Neg B # G \<turnstile> Neg (Or A B)

goal (1 subgoal):
 1. A # Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg B # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg A
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> Neg A

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>B # G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. B # G \<turnstile> B
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> B
[PROOF STEP]
have \<open>B # G \<turnstile> Or A B\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> B

goal (1 subgoal):
 1. B # G \<turnstile> Or A B
[PROOF STEP]
using OrI2
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> B
?G \<turnstile> ?b \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. B # G \<turnstile> Or A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Or A B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Or A B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>B # G \<turnstile> Neg (Or A B)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
using * \<open>Neg (Or A B) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Or A B) \<in> S

goal (1 subgoal):
 1. B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Neg (Or A B)

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> Or A B
B # G \<turnstile> Neg (Or A B)
[PROOF STEP]
have \<open>B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Or A B
B # G \<turnstile> Neg (Or A B)

goal (1 subgoal):
 1. B # G \<turnstile> FF
[PROOF STEP]
using NegE \<open>B # G \<turnstile> Neg (Or A B)\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Or A B
B # G \<turnstile> Neg (Or A B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
B # G \<turnstile> Neg (Or A B)

goal (1 subgoal):
 1. B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> Neg B\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> Neg B
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. G \<turnstile> Neg B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg B

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg B # G \<turnstile> Neg (Neg A)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg (Neg A)
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg (Neg A)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> Neg (Neg A)

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg B # G \<turnstile> Neg (Neg A)
[PROOF STEP]
have \<open>Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> Neg (Neg A)

goal (1 subgoal):
 1. Neg B # G \<turnstile> FF
[PROOF STEP]
using NegE \<open>Neg B # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> Neg (Neg A)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
Neg B # G \<turnstile> Neg A

goal (1 subgoal):
 1. Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using cut \<open>G \<turnstile> Neg B\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> FF
\<lbrakk>?G \<turnstile> ?A; ?A # ?G \<turnstile> ?B\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?B
G \<turnstile> Neg B

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> FF \<Longrightarrow> False

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg A # Neg B # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> Neg A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> Neg A # Neg B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> Neg A # Neg B # G \<turnstile> FF

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)

goal (9 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Or A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 9. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> Neg A # Neg B # G \<turnstile> FF
S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)
[PROOF STEP]
show \<open>S \<union> {Neg A, Neg B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> Neg A # Neg B # G \<turnstile> FF
S \<union> {Neg A, Neg B} = set (Neg A # Neg B # G)

goal (1 subgoal):
 1. S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {Neg A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (Or ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {Neg ?A2, Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Neg (Or ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {Neg ?A2, Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (Impl A B) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg (Impl A B) \<in> S

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg A # Neg B # G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> A
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg A # Neg B # G \<turnstile> A

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
A # Neg A # Neg B # G \<turnstile> A

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg A # Neg B # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> Neg A
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg A # Neg B # G \<turnstile> Neg A

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
A # Neg A # Neg B # G \<turnstile> A
A # Neg A # Neg B # G \<turnstile> Neg A
[PROOF STEP]
have \<open>A # Neg A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> A
A # Neg A # Neg B # G \<turnstile> Neg A

goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> A
A # Neg A # Neg B # G \<turnstile> Neg A
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg A # Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>A # Neg A # Neg B # G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> B
[PROOF STEP]
using FFE
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> FF
?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. A # Neg A # Neg B # G \<turnstile> B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg A # Neg B # G \<turnstile> B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg A # Neg B # G \<turnstile> B
[PROOF STEP]
have \<open>Neg A # Neg B # G \<turnstile> Impl A B\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> B

goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> Impl A B
[PROOF STEP]
using ImplI
[PROOF STATE]
proof (prove)
using this:
A # Neg A # Neg B # G \<turnstile> B
?a # ?G \<turnstile> ?b \<Longrightarrow> ?G \<turnstile> Impl ?a ?b

goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> Impl A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> Impl A B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> Impl A B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>Neg A # Neg B # G \<turnstile> Neg (Impl A B)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
using * \<open>Neg (Impl A B) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Impl A B) \<in> S

goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> Neg (Impl A B)

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
Neg A # Neg B # G \<turnstile> Impl A B
Neg A # Neg B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
have \<open>Neg A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> Impl A B
Neg A # Neg B # G \<turnstile> Neg (Impl A B)

goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> Impl A B
Neg A # Neg B # G \<turnstile> Neg (Impl A B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg A # Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg A # Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg B # G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. Neg B # G \<turnstile> A
[PROOF STEP]
using Class
[PROOF STATE]
proof (prove)
using this:
Neg A # Neg B # G \<turnstile> FF
Neg ?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. Neg B # G \<turnstile> A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> A

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # B # G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # B # G \<turnstile> B
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # B # G \<turnstile> B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # B # G \<turnstile> B
[PROOF STEP]
have \<open>B # G \<turnstile> Impl A B\<close>
[PROOF STATE]
proof (prove)
using this:
A # B # G \<turnstile> B

goal (1 subgoal):
 1. B # G \<turnstile> Impl A B
[PROOF STEP]
using ImplI
[PROOF STATE]
proof (prove)
using this:
A # B # G \<turnstile> B
?a # ?G \<turnstile> ?b \<Longrightarrow> ?G \<turnstile> Impl ?a ?b

goal (1 subgoal):
 1. B # G \<turnstile> Impl A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Impl A B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Impl A B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>B # G \<turnstile> Neg (Impl A B)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
using * \<open>Neg (Impl A B) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Impl A B) \<in> S

goal (1 subgoal):
 1. B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> Neg (Impl A B)

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> Impl A B
B # G \<turnstile> Neg (Impl A B)
[PROOF STEP]
have \<open>B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Impl A B
B # G \<turnstile> Neg (Impl A B)

goal (1 subgoal):
 1. B # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> Impl A B
B # G \<turnstile> Neg (Impl A B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> Neg B\<close>
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> Neg B
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. G \<turnstile> Neg B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg B

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg B # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg A
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. Neg B # G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> Neg A

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg B # G \<turnstile> Neg A
[PROOF STEP]
have \<open>Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> Neg A

goal (1 subgoal):
 1. Neg B # G \<turnstile> FF
[PROOF STEP]
using NegE \<open>Neg B # G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> Neg A
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF
Neg B # G \<turnstile> A

goal (1 subgoal):
 1. Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using cut \<open>G \<turnstile> Neg B\<close>
[PROOF STATE]
proof (prove)
using this:
Neg B # G \<turnstile> FF
\<lbrakk>?G \<turnstile> ?A; ?A # ?G \<turnstile> ?B\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?B
G \<turnstile> Neg B

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
A # Neg B # G \<turnstile> FF \<Longrightarrow> False

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg B # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> A # Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg B # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> A # Neg B # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> A # Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> A # Neg B # G \<turnstile> FF

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>{A, Neg B} \<union> S = set (A # Neg B # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. {A, Neg B} \<union> S = set (A # Neg B # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. {A, Neg B} \<union> S = set (A # Neg B # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
{A, Neg B} \<union> S = set (A # Neg B # G)

goal (8 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Impl A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 8. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> A # Neg B # G \<turnstile> FF
{A, Neg B} \<union> S = set (A # Neg B # G)
[PROOF STEP]
show \<open>S \<union> {A, Neg B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> A # Neg B # G \<turnstile> FF
{A, Neg B} \<union> S = set (A # Neg B # G)

goal (1 subgoal):
 1. S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {A, Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (Impl ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {?A2, Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Neg (Impl ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {?A2, Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Or A B \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Or A B \<in> S

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Or A B \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Or A B\<close>
[PROOF STATE]
proof (prove)
using this:
Or A B \<in> S

goal (1 subgoal):
 1. G \<turnstile> Or A B
[PROOF STEP]
using * Assum
[PROOF STATE]
proof (prove)
using this:
Or A B \<in> S
S = set G
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. G \<turnstile> Or A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or A B

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or A B

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>(\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF)\<close>
        and \<open>(\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF)\<close>
[PROOF STATE]
proof (state)
this:
\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF
[PROOF STEP]
have \<open>A # G \<turnstile> FF\<close> and \<open>B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF

goal (1 subgoal):
 1. A # G \<turnstile> FF &&& B # G \<turnstile> FF
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF
S = set G

goal (1 subgoal):
 1. A # G \<turnstile> FF &&& B # G \<turnstile> FF
[PROOF STEP]
by simp_all
[PROOF STATE]
proof (state)
this:
A # G \<turnstile> FF
B # G \<turnstile> FF

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # G \<turnstile> FF
B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # G \<turnstile> FF
B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using OrE \<open>G \<turnstile> Or A B\<close>
[PROOF STATE]
proof (prove)
using this:
A # G \<turnstile> FF
B # G \<turnstile> FF
\<lbrakk>?G \<turnstile> Or ?a ?b; ?a # ?G \<turnstile> ?c; ?b # ?G \<turnstile> ?c\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?c
G \<turnstile> Or A B

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
\<lbrakk>\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (7 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Or A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 7. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<lbrakk>\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False
[PROOF STEP]
show \<open>S \<union> {A} \<in> ?C \<or> S \<union> {B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<lbrakk>\<forall>G'. set G' = S \<union> {A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (1 subgoal):
 1. S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Or ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Or ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (And A B) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg (And A B) \<in> S

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
let ?x = \<open>Or (Neg A) (Neg B)\<close>
[PROOF STATE]
proof (state)
goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>B # A # Neg ?x # G \<turnstile> A\<close> and \<open>B # A # Neg ?x # G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> A &&& B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> B
[PROOF STEP]
by (simp_all add: Assum)
[PROOF STATE]
proof (state)
this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> A
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> B

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> A
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> B
[PROOF STEP]
have \<open>B # A # Neg ?x # G \<turnstile> And A B\<close>
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> A
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> B

goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B
[PROOF STEP]
using AndI
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> A
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> B
\<lbrakk>?G \<turnstile> ?a; ?G \<turnstile> ?b\<rbrakk> \<Longrightarrow> ?G \<turnstile> And ?a ?b

goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>B # A # Neg ?x # G \<turnstile> Neg (And A B)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)
[PROOF STEP]
using * \<open>Neg (And A B) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (And A B) \<in> S

goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)
[PROOF STEP]
have \<open>B # A # Neg ?x # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)

goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> And A B
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (And A B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> Neg B\<close>
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
B # A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> ?x\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
using OrI2
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg B
?G \<turnstile> ?b \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> Neg ?x\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (Or (Neg A) (Neg B))
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (Or (Neg A) (Neg B))

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (Or (Neg A) (Neg B))
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (Or (Neg A) (Neg B))

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg (Or (Neg A) (Neg B))
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg ?x # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF

goal (1 subgoal):
 1. Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) (Neg B)) # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A
[PROOF STEP]
have \<open>Neg ?x # G \<turnstile> ?x\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A

goal (1 subgoal):
 1. Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
using OrI1
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Neg A
?G \<turnstile> ?a \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
have \<open>G \<turnstile> Or (Neg A) (Neg B)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)

goal (1 subgoal):
 1. G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
using Class'
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) (Neg B)) # G \<turnstile> Or (Neg A) (Neg B)
Neg ?A # ?G \<turnstile> ?A \<Longrightarrow> ?G \<turnstile> ?A

goal (1 subgoal):
 1. G \<turnstile> Or (Neg A) (Neg B)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or (Neg A) (Neg B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or (Neg A) (Neg B)

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>(\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF)\<close>
        and \<open>(\<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF)\<close>
[PROOF STATE]
proof (state)
this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF
[PROOF STEP]
have \<open>Neg A # G \<turnstile> FF\<close> and \<open>Neg B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF

goal (1 subgoal):
 1. Neg A # G \<turnstile> FF &&& Neg B # G \<turnstile> FF
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF
S = set G

goal (1 subgoal):
 1. Neg A # G \<turnstile> FF &&& Neg B # G \<turnstile> FF
[PROOF STEP]
by simp_all
[PROOF STATE]
proof (state)
this:
Neg A # G \<turnstile> FF
Neg B # G \<turnstile> FF

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg A # G \<turnstile> FF
Neg B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # G \<turnstile> FF
Neg B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using OrE \<open>G \<turnstile> Or (Neg A) (Neg B)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # G \<turnstile> FF
Neg B # G \<turnstile> FF
\<lbrakk>?G \<turnstile> Or ?a ?b; ?a # ?G \<turnstile> ?c; ?b # ?G \<turnstile> ?c\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?c
G \<turnstile> Or (Neg A) (Neg B)

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (6 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (And A B) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 6. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False
[PROOF STEP]
show \<open>S \<union> {Neg A} \<in> ?C \<or> S \<union> {Neg B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {Neg B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (1 subgoal):
 1. S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (And ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {Neg ?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Neg (And ?A2 ?B2) \<in> S \<Longrightarrow> S \<union> {Neg ?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {Neg ?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix A B
[PROOF STATE]
proof (state)
goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Impl A B \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Impl A B \<in> S

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
let ?x = \<open>Or (Neg A) B\<close>
[PROOF STATE]
proof (state)
goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> A\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> A
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> A

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> A

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> Impl A B\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B
[PROOF STEP]
using * \<open>Impl A B \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Impl A B \<in> S

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) B) # G \<turnstile> A
A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> B\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> A
A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> B
[PROOF STEP]
using ImplE
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> A
A # Neg (Or (Neg A) B) # G \<turnstile> Impl A B
\<lbrakk>?G \<turnstile> Impl ?a ?b; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?b

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) B) # G \<turnstile> B
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> ?x\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> B

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
[PROOF STEP]
using OrI2
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> B
?G \<turnstile> ?b \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> Neg ?x\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> Neg (Or (Neg A) B)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> Neg (Or (Neg A) B)

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
A # Neg (Or (Neg A) B) # G \<turnstile> Neg (Or (Neg A) B)
[PROOF STEP]
have \<open>A # Neg ?x # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
A # Neg (Or (Neg A) B) # G \<turnstile> Neg (Or (Neg A) B)

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
A # Neg (Or (Neg A) B) # G \<turnstile> Neg (Or (Neg A) B)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. A # Neg (Or (Neg A) B) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
A # Neg (Or (Neg A) B) # G \<turnstile> FF

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
A # Neg (Or (Neg A) B) # G \<turnstile> FF
[PROOF STEP]
have \<open>Neg ?x # G \<turnstile> Neg A\<close>
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> FF

goal (1 subgoal):
 1. Neg (Or (Neg A) B) # G \<turnstile> Neg A
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
A # Neg (Or (Neg A) B) # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. Neg (Or (Neg A) B) # G \<turnstile> Neg A
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Or (Neg A) B) # G \<turnstile> Neg A

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Or (Neg A) B) # G \<turnstile> Neg A
[PROOF STEP]
have \<open>Neg ?x # G \<turnstile> ?x\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) B) # G \<turnstile> Neg A

goal (1 subgoal):
 1. Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
[PROOF STEP]
using OrI1
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) B) # G \<turnstile> Neg A
?G \<turnstile> ?a \<Longrightarrow> ?G \<turnstile> Or ?a ?b

goal (1 subgoal):
 1. Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
[PROOF STEP]
have \<open>G \<turnstile> Or (Neg A) B\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B

goal (1 subgoal):
 1. G \<turnstile> Or (Neg A) B
[PROOF STEP]
using Class'
[PROOF STATE]
proof (prove)
using this:
Neg (Or (Neg A) B) # G \<turnstile> Or (Neg A) B
Neg ?A # ?G \<turnstile> ?A \<Longrightarrow> ?G \<turnstile> ?A

goal (1 subgoal):
 1. G \<turnstile> Or (Neg A) B
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or (Neg A) B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Or (Neg A) B

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>(\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF)\<close>
        and \<open>(\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF)\<close>
[PROOF STATE]
proof (state)
this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF
[PROOF STEP]
have \<open>Neg A # G \<turnstile> FF\<close> and \<open>B # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF

goal (1 subgoal):
 1. Neg A # G \<turnstile> FF &&& B # G \<turnstile> FF
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF
\<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF
S = set G

goal (1 subgoal):
 1. Neg A # G \<turnstile> FF &&& B # G \<turnstile> FF
[PROOF STEP]
by simp_all
[PROOF STATE]
proof (state)
this:
Neg A # G \<turnstile> FF
B # G \<turnstile> FF

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg A # G \<turnstile> FF
B # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # G \<turnstile> FF
B # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using OrE \<open>G \<turnstile> Or (Neg A) B\<close>
[PROOF STATE]
proof (prove)
using this:
Neg A # G \<turnstile> FF
B # G \<turnstile> FF
\<lbrakk>?G \<turnstile> Or ?a ?b; ?a # ?G \<turnstile> ?c; ?b # ?G \<turnstile> ?c\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?c
G \<turnstile> Or (Neg A) B

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (5 subgoals):
 1. \<And>S A B. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Impl A B \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 5. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False
[PROOF STEP]
show \<open>S \<union> {Neg A} \<in> ?C \<or> S \<union> {B} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<lbrakk>\<forall>G'. set G' = S \<union> {Neg A} \<longrightarrow> G' \<turnstile> FF; \<forall>G'. set G' = S \<union> {B} \<longrightarrow> G' \<turnstile> FF\<rbrakk> \<Longrightarrow> False

goal (1 subgoal):
 1. S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {Neg A} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {B} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Impl ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {Neg ?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Impl ?A2 ?B2 \<in> S \<Longrightarrow> S \<union> {Neg ?A2} \<in> {set G |G. \<not> G \<turnstile> FF} \<or> S \<union> {?B2} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix P and t :: \<open>'a term\<close>
[PROOF STATE]
proof (state)
goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>closedt 0 t\<close> and \<open>Forall P \<in> S\<close>
[PROOF STATE]
proof (state)
this:
closedt 0 t
Forall P \<in> S

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
closedt 0 t
Forall P \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Forall P\<close>
[PROOF STATE]
proof (prove)
using this:
closedt 0 t
Forall P \<in> S

goal (1 subgoal):
 1. G \<turnstile> Forall P
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
closedt 0 t
Forall P \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Forall P
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Forall P

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Forall P
[PROOF STEP]
have \<open>G \<turnstile> P[t/0]\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Forall P

goal (1 subgoal):
 1. G \<turnstile> P[t/0]
[PROOF STEP]
using ForallE
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Forall P
?G \<turnstile> Forall ?a \<Longrightarrow> ?G \<turnstile> ?a[?t/0]

goal (1 subgoal):
 1. G \<turnstile> P[t/0]
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> P[t/0]

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> P[t/0]

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>P[t/0] # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> FF

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[t/0] # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using cut \<open>G \<turnstile> P[t/0]\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> FF
\<lbrakk>?G \<turnstile> ?A; ?A # ?G \<turnstile> ?B\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?B
G \<turnstile> P[t/0]

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> FF \<Longrightarrow> False

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[t/0] # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> P[t/0] # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> P[t/0] # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> P[t/0] # G \<turnstile> FF

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> P[t/0] # G \<turnstile> FF

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {P[t/0]} = set (P[t/0] # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {P[t/0]} = set (P[t/0] # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {P[t/0]} = set (P[t/0] # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {P[t/0]} = set (P[t/0] # G)

goal (4 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Forall P \<in> S\<rbrakk> \<Longrightarrow> S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 4. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> P[t/0] # G \<turnstile> FF
S \<union> {P[t/0]} = set (P[t/0] # G)
[PROOF STEP]
show \<open>S \<union> {P[t/0]} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> P[t/0] # G \<turnstile> FF
S \<union> {P[t/0]} = set (P[t/0] # G)

goal (1 subgoal):
 1. S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {P[t/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
\<lbrakk>closedt 0 ?t2; Forall ?P2 \<in> S\<rbrakk> \<Longrightarrow> S \<union> {?P2[?t2/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
\<lbrakk>closedt 0 ?t2; Forall ?P2 \<in> S\<rbrakk> \<Longrightarrow> S \<union> {?P2[?t2/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix P and t :: \<open>'a term\<close>
[PROOF STATE]
proof (state)
goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>closedt 0 t\<close> and \<open>Neg (Exists P) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
closedt 0 t
Neg (Exists P) \<in> S

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
closedt 0 t
Neg (Exists P) \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Neg (Exists P)\<close>
[PROOF STATE]
proof (prove)
using this:
closedt 0 t
Neg (Exists P) \<in> S

goal (1 subgoal):
 1. G \<turnstile> Neg (Exists P)
[PROOF STEP]
using Assum *
[PROOF STATE]
proof (prove)
using this:
closedt 0 t
Neg (Exists P) \<in> S
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a
S = set G

goal (1 subgoal):
 1. G \<turnstile> Neg (Exists P)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (Exists P)

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> Neg (Exists P)
[PROOF STEP]
have \<open>P[t/0] \<in> set (P[t/0] # G)\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> Neg (Exists P)

goal (1 subgoal):
 1. P[t/0] \<in> set (P[t/0] # G)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
P[t/0] \<in> set (P[t/0] # G)

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[t/0] \<in> set (P[t/0] # G)
[PROOF STEP]
have \<open>P[t/0] # G \<turnstile> P[t/0]\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] \<in> set (P[t/0] # G)

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> P[t/0]
[PROOF STEP]
using Assum
[PROOF STATE]
proof (prove)
using this:
P[t/0] \<in> set (P[t/0] # G)
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> P[t/0]
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> P[t/0]

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[t/0] # G \<turnstile> P[t/0]
[PROOF STEP]
have \<open>P[t/0] # G \<turnstile> Exists P\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> P[t/0]

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> Exists P
[PROOF STEP]
using ExistsI
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> P[t/0]
?G \<turnstile> ?a[?t/0] \<Longrightarrow> ?G \<turnstile> Exists ?a

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> Exists P
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> Exists P

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> Exists P

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>P[t/0] # G \<turnstile> Neg (Exists P)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. P[t/0] # G \<turnstile> Neg (Exists P)
[PROOF STEP]
using * \<open>Neg (Exists P) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Exists P) \<in> S

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> Neg (Exists P)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> Neg (Exists P)

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
P[t/0] # G \<turnstile> Exists P
P[t/0] # G \<turnstile> Neg (Exists P)
[PROOF STEP]
have \<open>P[t/0] # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> Exists P
P[t/0] # G \<turnstile> Neg (Exists P)

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> Exists P
P[t/0] # G \<turnstile> Neg (Exists P)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. P[t/0] # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
P[t/0] # G \<turnstile> FF

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[t/0] # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> Neg (P[t/0])\<close>
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> Neg (P[t/0])
[PROOF STEP]
using NegI
[PROOF STATE]
proof (prove)
using this:
P[t/0] # G \<turnstile> FF
?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> Neg ?a

goal (1 subgoal):
 1. G \<turnstile> Neg (P[t/0])
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (P[t/0])

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (P[t/0])

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (P[t/0]) # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
Neg (P[t/0]) # G \<turnstile> FF

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (P[t/0]) # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[t/0]) # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using cut \<open>G \<turnstile> Neg (P[t/0])\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[t/0]) # G \<turnstile> FF
\<lbrakk>?G \<turnstile> ?A; ?A # ?G \<turnstile> ?B\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?B
G \<turnstile> Neg (P[t/0])

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (P[t/0]) # G \<turnstile> FF \<Longrightarrow> False

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (P[t/0]) # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> Neg (P[t/0]) # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[t/0]) # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> Neg (P[t/0]) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> Neg (P[t/0]) # G \<turnstile> FF

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> Neg (P[t/0]) # G \<turnstile> FF

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)

goal (3 subgoals):
 1. \<And>S P t. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; closedt 0 t; Neg (Exists P) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 3. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> Neg (P[t/0]) # G \<turnstile> FF
S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)
[PROOF STEP]
show \<open>S \<union> {Neg (P[t/0])} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> Neg (P[t/0]) # G \<turnstile> FF
S \<union> {Neg (P[t/0])} = set (Neg (P[t/0]) # G)

goal (1 subgoal):
 1. S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
S \<union> {Neg (P[t/0])} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
\<lbrakk>closedt 0 ?t2; Neg (Exists ?P2) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (?P2[?t2/0])} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
\<lbrakk>closedt 0 ?t2; Neg (Exists ?P2) \<in> S\<rbrakk> \<Longrightarrow> S \<union> {Neg (?P2[?t2/0])} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix P
[PROOF STATE]
proof (state)
goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Exists P \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Exists P \<in> S

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Exists P \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Exists P\<close>
[PROOF STATE]
proof (prove)
using this:
Exists P \<in> S

goal (1 subgoal):
 1. G \<turnstile> Exists P
[PROOF STEP]
using * Assum
[PROOF STATE]
proof (prove)
using this:
Exists P \<in> S
S = set G
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. G \<turnstile> Exists P
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Exists P

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>finite ((\<Union>p \<in> set G. params p) \<union> params P)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. finite (\<Union> (params ` set G) \<union> params P)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
finite (\<Union> (params ` set G) \<union> params P)

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
finite (\<Union> (params ` set G) \<union> params P)
[PROOF STEP]
have \<open>infinite (- ((\<Union>p \<in> set G. params p) \<union> params P))\<close>
[PROOF STATE]
proof (prove)
using this:
finite (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
using inf_param Diff_infinite_finite finite_compl
[PROOF STATE]
proof (prove)
using this:
finite (\<Union> (params ` set G) \<union> params P)
infinite UNIV
\<lbrakk>finite ?T; infinite ?S\<rbrakk> \<Longrightarrow> infinite (?S - ?T)
finite ?A \<Longrightarrow> finite (- ?A) = finite UNIV

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
have \<open>infinite (- ((\<Union>p \<in> set G. params p) \<union> params P))\<close>
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
by (simp add: Compl_eq_Diff_UNIV)
[PROOF STATE]
proof (state)
this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
obtain x where **: \<open>x \<in> - ((\<Union>p \<in> set G. params p) \<union> params P)\<close>
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. (\<And>x. x \<in> - (\<Union> (params ` set G) \<union> params P) \<Longrightarrow> thesis) \<Longrightarrow> thesis
[PROOF STEP]
using infinite_imp_nonempty
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))
infinite ?S \<Longrightarrow> ?S \<noteq> {}

goal (1 subgoal):
 1. (\<And>x. x \<in> - (\<Union> (params ` set G) \<union> params P) \<Longrightarrow> thesis) \<Longrightarrow> thesis
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>P[App x []/0] # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
P[App x []/0] # G \<turnstile> FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
P[App x []/0] # G \<turnstile> FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>list_all (\<lambda>p. x \<notin> params p) G\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) G
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) G
[PROOF STEP]
by (simp add: list_all_iff)
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) G

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) G

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>x \<notin> params P\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
x \<notin> params P

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
x \<notin> params P

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>x \<notin> params FF\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. x \<notin> params FF
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
x \<notin> params FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
P[App x []/0] # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
P[App x []/0] # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using ExistsE \<open>G \<turnstile> Exists P\<close>
[PROOF STATE]
proof (prove)
using this:
P[App x []/0] # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF
\<lbrakk>?G \<turnstile> Exists ?a; ?a[App ?n []/0] # ?G \<turnstile> ?b; list_all (\<lambda>p. ?n \<notin> params p) ?G; ?n \<notin> params ?a; ?n \<notin> params ?b\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?b
G \<turnstile> Exists P

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by fast
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
P[App x []/0] # G \<turnstile> FF \<Longrightarrow> False

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
P[App x []/0] # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> P[App x []/0] # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
P[App x []/0] # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> P[App x []/0] # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> P[App x []/0] # G \<turnstile> FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> P[App x []/0] # G \<turnstile> FF

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {P[App x []/0]} = set (P[App x []/0] # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {P[App x []/0]} = set (P[App x []/0] # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {P[App x []/0]} = set (P[App x []/0] # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {P[App x []/0]} = set (P[App x []/0] # G)

goal (2 subgoals):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Exists P \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
 2. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> P[App x []/0] # G \<turnstile> FF
S \<union> {P[App x []/0]} = set (P[App x []/0] # G)
[PROOF STEP]
show \<open>\<exists>x. S \<union> {P[App x []/0]} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> P[App x []/0] # G \<turnstile> FF
S \<union> {P[App x []/0]} = set (P[App x []/0] # G)

goal (1 subgoal):
 1. \<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<exists>x. S \<union> {P[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Exists ?P2 \<in> S \<Longrightarrow> \<exists>x. S \<union> {?P2[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
Exists ?P2 \<in> S \<Longrightarrow> \<exists>x. S \<union> {?P2[App x []/0]} \<in> {set G |G. \<not> G \<turnstile> FF}

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
fix P
[PROOF STATE]
proof (state)
goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (Forall P) \<in> S\<close>
[PROOF STATE]
proof (state)
this:
Neg (Forall P) \<in> S

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Forall P) \<in> S
[PROOF STEP]
have \<open>G \<turnstile> Neg (Forall P)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Forall P) \<in> S

goal (1 subgoal):
 1. G \<turnstile> Neg (Forall P)
[PROOF STEP]
using * Assum
[PROOF STATE]
proof (prove)
using this:
Neg (Forall P) \<in> S
S = set G
?a \<in> set ?G \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. G \<turnstile> Neg (Forall P)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Neg (Forall P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>finite ((\<Union>p \<in> set G. params p) \<union> params P)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. finite (\<Union> (params ` set G) \<union> params P)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
finite (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
finite (\<Union> (params ` set G) \<union> params P)
[PROOF STEP]
have \<open>infinite (- ((\<Union>p \<in> set G. params p) \<union> params P))\<close>
[PROOF STATE]
proof (prove)
using this:
finite (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
using inf_param Diff_infinite_finite finite_compl
[PROOF STATE]
proof (prove)
using this:
finite (\<Union> (params ` set G) \<union> params P)
infinite UNIV
\<lbrakk>finite ?T; infinite ?S\<rbrakk> \<Longrightarrow> infinite (?S - ?T)
finite ?A \<Longrightarrow> finite (- ?A) = finite UNIV

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
have \<open>infinite (- ((\<Union>p \<in> set G. params p) \<union> params P))\<close>
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
by (simp add: Compl_eq_Diff_UNIV)
[PROOF STATE]
proof (state)
this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
infinite (- (\<Union> (params ` set G) \<union> params P))
[PROOF STEP]
obtain x where **: \<open>x \<in> - ((\<Union>p \<in> set G. params p) \<union> params P)\<close>
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))

goal (1 subgoal):
 1. (\<And>x. x \<in> - (\<Union> (params ` set G) \<union> params P) \<Longrightarrow> thesis) \<Longrightarrow> thesis
[PROOF STEP]
using infinite_imp_nonempty
[PROOF STATE]
proof (prove)
using this:
infinite (- (\<Union> (params ` set G) \<union> params P))
infinite ?S \<Longrightarrow> ?S \<noteq> {}

goal (1 subgoal):
 1. (\<And>x. x \<in> - (\<Union> (params ` set G) \<union> params P) \<Longrightarrow> thesis) \<Longrightarrow> thesis
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
let ?x = \<open>Neg (Exists (Neg P))\<close>
[PROOF STATE]
proof (state)
goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>Neg (P[App x []/0]) # ?x # G \<turnstile> Neg P[App x []/0]\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg P[App x []/0]
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg P[App x []/0]

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg P[App x []/0]
[PROOF STEP]
have \<open>Neg (P[App x []/0]) # ?x # G \<turnstile> Exists (Neg P)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg P[App x []/0]

goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)
[PROOF STEP]
using ExistsI
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg P[App x []/0]
?G \<turnstile> ?a[?t/0] \<Longrightarrow> ?G \<turnstile> Exists ?a

goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>Neg (P[App x []/0]) # ?x # G \<turnstile> ?x\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg (Exists (Neg P))
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg (Exists (Neg P))

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg (Exists (Neg P))
[PROOF STEP]
have \<open>Neg (P[App x []/0]) # ?x # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg (Exists (Neg P))

goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Exists (Neg P)
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> Neg (Exists (Neg P))
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
have \<open>?x # G \<turnstile> P[App x []/0]\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]
[PROOF STEP]
using Class
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # Neg (Exists (Neg P)) # G \<turnstile> FF
Neg ?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>list_all (\<lambda>p. x \<notin> params p) (?x # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)
[PROOF STEP]
by (simp add: list_all_iff)
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>x \<notin> params P\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
x \<notin> params P

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]
list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)
x \<notin> params P
[PROOF STEP]
have \<open>?x # G \<turnstile> Forall P\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]
list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)
x \<notin> params P

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> Forall P
[PROOF STEP]
using ForallI
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> P[App x []/0]
list_all (\<lambda>p. x \<notin> params p) (Neg (Exists (Neg P)) # G)
x \<notin> params P
\<lbrakk>?G \<turnstile> ?a[App ?n []/0]; list_all (\<lambda>p. ?n \<notin> params p) ?G; ?n \<notin> params ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> Forall ?a

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> Forall P
[PROOF STEP]
by fast
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> Forall P

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> Forall P

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>?x # G \<turnstile> Neg (Forall P)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)
[PROOF STEP]
using * \<open>Neg (Forall P) \<in> S\<close>
[PROOF STATE]
proof (prove)
using this:
S = set G
Neg (Forall P) \<in> S

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)
[PROOF STEP]
by (simp add: Assum)
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
Neg (Exists (Neg P)) # G \<turnstile> Forall P
Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)
[PROOF STEP]
have \<open>?x # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> Forall P
Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
using NegE
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> Forall P
Neg (Exists (Neg P)) # G \<turnstile> Neg (Forall P)
\<lbrakk>?G \<turnstile> Neg ?a; ?G \<turnstile> ?a\<rbrakk> \<Longrightarrow> ?G \<turnstile> FF

goal (1 subgoal):
 1. Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
Neg (Exists (Neg P)) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (Exists (Neg P)) # G \<turnstile> FF
[PROOF STEP]
have \<open>G \<turnstile> Exists (Neg P)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> FF

goal (1 subgoal):
 1. G \<turnstile> Exists (Neg P)
[PROOF STEP]
using Class
[PROOF STATE]
proof (prove)
using this:
Neg (Exists (Neg P)) # G \<turnstile> FF
Neg ?a # ?G \<turnstile> FF \<Longrightarrow> ?G \<turnstile> ?a

goal (1 subgoal):
 1. G \<turnstile> Exists (Neg P)
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
G \<turnstile> Exists (Neg P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
{
[PROOF STATE]
proof (state)
this:
G \<turnstile> Exists (Neg P)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
assume \<open>Neg (P[App x []/0]) # G \<turnstile> FF\<close>
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>list_all (\<lambda>p. x \<notin> params p) G\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) G
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. list_all (\<lambda>p. x \<notin> params p) G
[PROOF STEP]
by (simp add: list_all_iff)
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) G

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
list_all (\<lambda>p. x \<notin> params p) G

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>x \<notin> params P\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
using **
[PROOF STATE]
proof (prove)
using this:
x \<in> - (\<Union> (params ` set G) \<union> params P)

goal (1 subgoal):
 1. x \<notin> params P
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
x \<notin> params P

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
x \<notin> params P

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>x \<notin> params FF\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. x \<notin> params FF
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
x \<notin> params FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
Neg (P[App x []/0]) # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF
[PROOF STEP]
have \<open>G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
using ExistsE \<open>G \<turnstile> Exists (Neg P)\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # G \<turnstile> FF
list_all (\<lambda>p. x \<notin> params p) G
x \<notin> params P
x \<notin> params FF
\<lbrakk>?G \<turnstile> Exists ?a; ?a[App ?n []/0] # ?G \<turnstile> ?b; list_all (\<lambda>p. ?n \<notin> params p) ?G; ?n \<notin> params ?a; ?n \<notin> params ?b\<rbrakk> \<Longrightarrow> ?G \<turnstile> ?b
G \<turnstile> Exists (Neg P)

goal (1 subgoal):
 1. G \<turnstile> FF
[PROOF STEP]
by fastforce
[PROOF STATE]
proof (state)
this:
G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
G \<turnstile> FF
[PROOF STEP]
have False
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
using \<open>\<not> G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
G \<turnstile> FF
\<not> G \<turnstile> FF

goal (1 subgoal):
 1. False
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
False

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (P[App x []/0]) # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
then
[PROOF STATE]
proof (chain)
picking this:
Neg (P[App x []/0]) # G \<turnstile> FF \<Longrightarrow> False
[PROOF STEP]
have \<open>\<not> Neg (P[App x []/0]) # G \<turnstile> FF\<close>
[PROOF STATE]
proof (prove)
using this:
Neg (P[App x []/0]) # G \<turnstile> FF \<Longrightarrow> False

goal (1 subgoal):
 1. \<not> Neg (P[App x []/0]) # G \<turnstile> FF
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<not> Neg (P[App x []/0]) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
moreover
[PROOF STATE]
proof (state)
this:
\<not> Neg (P[App x []/0]) # G \<turnstile> FF

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
have \<open>S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)\<close>
[PROOF STATE]
proof (prove)
goal (1 subgoal):
 1. S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)
[PROOF STEP]
using *
[PROOF STATE]
proof (prove)
using this:
S = set G

goal (1 subgoal):
 1. S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)
[PROOF STEP]
by simp
[PROOF STATE]
proof (state)
this:
S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)

goal (1 subgoal):
 1. \<And>S P. \<lbrakk>S \<in> {set G |G. \<not> G \<turnstile> FF}; Neg (Forall P) \<in> S\<rbrakk> \<Longrightarrow> \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
ultimately
[PROOF STATE]
proof (chain)
picking this:
\<not> Neg (P[App x []/0]) # G \<turnstile> FF
S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)
[PROOF STEP]
show \<open>\<exists>x. S \<union> {Neg (P[App x []/0])} \<in> ?C\<close>
[PROOF STATE]
proof (prove)
using this:
\<not> Neg (P[App x []/0]) # G \<turnstile> FF
S \<union> {Neg (P[App x []/0])} = set (Neg (P[App x []/0]) # G)

goal (1 subgoal):
 1. \<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}
[PROOF STEP]
by blast
[PROOF STATE]
proof (state)
this:
\<exists>x. S \<union> {Neg (P[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}

goal:
No subgoals!
[PROOF STEP]
}
[PROOF STATE]
proof (state)
this:
Neg (Forall ?P2) \<in> S \<Longrightarrow> \<exists>x. S \<union> {Neg (?P2[App x []/0])} \<in> {set G |G. \<not> G \<turnstile> FF}

goal:
No subgoals!
[PROOF STEP]
qed