src/HOL/MicroJava/J/Conform.ML
changeset 8116 759f712f8f06
parent 8106 de9fae0cdfde
child 8185 59b62e8804b4
equal deleted inserted replaced
8115:c802042066e8 8116:759f712f8f06
   133 by   (atac 1);
   133 by   (atac 1);
   134 by  (Fast_tac 1);
   134 by  (Fast_tac 1);
   135 qed_spec_mp "non_np_objD'";
   135 qed_spec_mp "non_np_objD'";
   136 
   136 
   137 Goal "wf_prog wf_mb G \\<Longrightarrow> \\<forall>Ts Ts'. list_all2 (conf G h) vs Ts \\<longrightarrow> list_all2 (\\<lambda>T T'. G\\<turnstile>T\\<preceq>T') Ts Ts' \\<longrightarrow>  list_all2 (conf G h) vs Ts'";
   137 Goal "wf_prog wf_mb G \\<Longrightarrow> \\<forall>Ts Ts'. list_all2 (conf G h) vs Ts \\<longrightarrow> list_all2 (\\<lambda>T T'. G\\<turnstile>T\\<preceq>T') Ts Ts' \\<longrightarrow>  list_all2 (conf G h) vs Ts'";
   138 by( induct_tac "vs" 1);
   138 by(induct_tac "vs" 1);
   139 by(  ALLGOALS Clarsimp_tac);
   139  by(ALLGOALS Clarsimp_tac);
   140 by(  ALLGOALS (forward_tac [list_all2_lengthD RS sym]));
   140 by(forward_tac [list_all2_lengthD RS sym] 1);
   141 by(  ALLGOALS (full_simp_tac (simpset()addsimps[length_Suc_conv])));
   141 by(full_simp_tac (simpset()addsimps[length_Suc_conv]) 1);
   142 by(  Safe_tac);
   142 by(Safe_tac);
   143 by(  rotate_tac ~1 1);
   143 by(forward_tac [list_all2_lengthD RS sym] 1);
   144 by(  ALLGOALS (forward_tac [list_all2_lengthD RS sym]));
   144 by(full_simp_tac (simpset()addsimps[length_Suc_conv]) 1);
   145 by(  ALLGOALS (full_simp_tac (simpset()addsimps[length_Suc_conv])));
   145 by(Clarify_tac 1);
   146 by(  ALLGOALS Clarify_tac);
   146 by(fast_tac (claset() addEs [conf_widen]) 1);
   147 by( fast_tac (claset() addEs [conf_widen]) 1);
       
   148 qed_spec_mp "conf_list_gext_widen";
   147 qed_spec_mp "conf_list_gext_widen";
   149 
   148 
   150 
   149 
   151 section "lconf";
   150 section "lconf";
   152 
   151