src/HOL/Decision_Procs/mir_tac.ML
changeset 38549 d0385f2764d8
parent 37887 2ae085b07f2f
child 38558 32ad17fe2b9c
equal deleted inserted replaced
38548:dea0d2cca822 38549:d0385f2764d8
   130        TRY (simp_tac simpset1 1), TRY (simp_tac simpset2 1), TRY (simp_tac mir_ss 1)]
   130        TRY (simp_tac simpset1 1), TRY (simp_tac simpset2 1), TRY (simp_tac mir_ss 1)]
   131       (Thm.trivial ct))
   131       (Thm.trivial ct))
   132     fun assm_tac i = REPEAT_DETERM_N nh (assume_tac i)
   132     fun assm_tac i = REPEAT_DETERM_N nh (assume_tac i)
   133     (* The result of the quantifier elimination *)
   133     (* The result of the quantifier elimination *)
   134     val (th, tac) = case (prop_of pre_thm) of
   134     val (th, tac) = case (prop_of pre_thm) of
   135         Const ("==>", _) $ (Const ("Trueprop", _) $ t1) $ _ =>
   135         Const ("==>", _) $ (Const (@{const_name "Trueprop"}, _) $ t1) $ _ =>
   136     let val pth =
   136     let val pth =
   137           (* If quick_and_dirty then run without proof generation as oracle*)
   137           (* If quick_and_dirty then run without proof generation as oracle*)
   138              if !quick_and_dirty
   138              if !quick_and_dirty
   139              then mirfr_oracle (false, cterm_of thy (Pattern.eta_long [] t1))
   139              then mirfr_oracle (false, cterm_of thy (Pattern.eta_long [] t1))
   140              else mirfr_oracle (true, cterm_of thy (Pattern.eta_long [] t1))
   140              else mirfr_oracle (true, cterm_of thy (Pattern.eta_long [] t1))