src/HOL/Complex/ex/linrtac.ML
changeset 26939 1035c89b4c02
parent 26075 815f3ccc0b45
child 27436 9581777503e9
equal deleted inserted replaced
26938:64e850c3da9e 26939:1035c89b4c02
    89     val (th, tac) = case (prop_of pre_thm) of
    89     val (th, tac) = case (prop_of pre_thm) of
    90         Const ("==>", _) $ (Const ("Trueprop", _) $ t1) $ _ =>
    90         Const ("==>", _) $ (Const ("Trueprop", _) $ t1) $ _ =>
    91     let val pth = linr_oracle thy (Pattern.eta_long [] t1)
    91     let val pth = linr_oracle thy (Pattern.eta_long [] t1)
    92     in 
    92     in 
    93           (trace_msg ("calling procedure with term:\n" ^
    93           (trace_msg ("calling procedure with term:\n" ^
    94              Sign.string_of_term thy t1);
    94              Syntax.string_of_term ctxt t1);
    95            ((pth RS iffD2) RS pre_thm,
    95            ((pth RS iffD2) RS pre_thm,
    96             assm_tac (i + 1) THEN (if q then I else TRY) (rtac TrueI i)))
    96             assm_tac (i + 1) THEN (if q then I else TRY) (rtac TrueI i)))
    97     end
    97     end
    98       | _ => (pre_thm, assm_tac i)
    98       | _ => (pre_thm, assm_tac i)
    99   in (rtac (((mp_step nh) o (spec_step np)) th) i 
    99   in (rtac (((mp_step nh) o (spec_step np)) th) i