src/HOL/HoareParallel/OG_Examples.thy
changeset 13601 fd3e3d6b37b2
parent 13517 42efec18f5b2
child 14757 556ce89b7d41
equal deleted inserted replaced
13600:9702c8636a7b 13601:fd3e3d6b37b2
   192 apply force
   192 apply force
   193 apply force
   193 apply force
   194 --{* 6 subgoals left *}
   194 --{* 6 subgoals left *}
   195 prefer 6
   195 prefer 6
   196 apply(erule_tac x=i in allE)
   196 apply(erule_tac x=i in allE)
   197 apply force
   197 apply fastsimp
   198 --{* 5 subgoals left *}
   198 --{* 5 subgoals left *}
   199 prefer 5
   199 prefer 5
   200 apply(tactic {* ALLGOALS (case_tac "j=k") *})
   200 apply(tactic {* ALLGOALS (case_tac "j=k") *})
   201 --{* 10 subgoals left *}
   201 --{* 10 subgoals left *}
   202 apply simp_all
   202 apply simp_all
   203 apply(erule_tac x=i in allE)
   203 apply(erule_tac x=k in allE)
   204 apply force
   204 apply force
   205 --{* 9 subgoals left *}
   205 --{* 9 subgoals left *}
   206 apply(case_tac "j=l")
   206 apply(case_tac "j=l")
   207  apply simp
   207  apply simp
   208  apply(erule_tac x=k in allE)
   208  apply(erule_tac x=k in allE)
   436 --{* 138 vc  *}
   436 --{* 138 vc  *}
   437 apply(tactic {* ALLGOALS Clarify_tac *})
   437 apply(tactic {* ALLGOALS Clarify_tac *})
   438 --{* 112 subgoals left *}
   438 --{* 112 subgoals left *}
   439 apply(simp_all (no_asm))
   439 apply(simp_all (no_asm))
   440 apply(tactic {*ALLGOALS (conjI_Tac (K all_tac)) *})
   440 apply(tactic {*ALLGOALS (conjI_Tac (K all_tac)) *})
   441 --{* 860 subgoals left *}
   441 --{* 930 subgoals left *}
   442 apply(tactic {* ALLGOALS Clarify_tac *})
   442 apply(tactic {* ALLGOALS Clarify_tac *})
   443 apply(simp_all only:length_0_conv [THEN sym])
   443 apply(simp_all (asm_lr) only:length_0_conv [THEN sym])
   444 --{* 36 subgoals left *}
   444 --{* 44 subgoals left *}
   445 apply (simp_all del:length_0_conv add: nth_list_update mod_less_divisor mod_lemma)
   445 apply (simp_all (asm_lr) del:length_0_conv add: nth_list_update mod_less_divisor mod_lemma)
   446 --{* 32 subgoals left *}
   446 --{* 33 subgoals left *}
   447 apply(tactic {* ALLGOALS Clarify_tac *})
   447 apply(tactic {* ALLGOALS Clarify_tac *})
   448 apply(tactic {* TRYALL arith_tac *})
   448 apply(tactic {* TRYALL arith_tac *})
   449 --{* 9 subgoals left *}
   449 --{* 10 subgoals left *}
   450 apply (force simp add:less_Suc_eq)
   450 apply (force simp add:less_Suc_eq)
   451 apply(drule sym)
   451 apply(drule sym)
   452 apply (force simp add:less_Suc_eq)+
   452 apply (force simp add:less_Suc_eq)+
   453 done
   453 done
   454 
   454