src/HOL/Induct/PropLog.ML
changeset 3724 f33e301a89f5
parent 3414 804c8a178a7f
child 3919 c036caebfc75
equal deleted inserted replaced
3723:034f0f5ca43f 3724:f33e301a89f5
   184   We may repeatedly subtract assumptions until none are left!*)
   184   We may repeatedly subtract assumptions until none are left!*)
   185 val [sat] = goal PropLog.thy
   185 val [sat] = goal PropLog.thy
   186     "{} |= p ==> !t. hyps p t - hyps p t0 |- p";
   186     "{} |= p ==> !t. hyps p t - hyps p t0 |- p";
   187 by (rtac (hyps_subset RS (hyps_finite RS finite_subset_induct)) 1);
   187 by (rtac (hyps_subset RS (hyps_finite RS finite_subset_induct)) 1);
   188 by (simp_tac (!simpset addsimps [sat RS sat_thms_p]) 1);
   188 by (simp_tac (!simpset addsimps [sat RS sat_thms_p]) 1);
   189 by (Step_tac 1);
   189 by Safe_tac;
   190 (*Case hyps(p,t)-insert(#v,Y) |- p *)
   190 (*Case hyps(p,t)-insert(#v,Y) |- p *)
   191 by (rtac thms_excluded_middle_rule 1);
   191 by (rtac thms_excluded_middle_rule 1);
   192 by (rtac (insert_Diff_same RS weaken_left) 1);
   192 by (rtac (insert_Diff_same RS weaken_left) 1);
   193 by (etac spec 1);
   193 by (etac spec 1);
   194 by (rtac (insert_Diff_subset2 RS weaken_left) 1);
   194 by (rtac (insert_Diff_subset2 RS weaken_left) 1);