src/HOL/Tools/res_atp.ML
changeset 20854 f9cf9e62d11c
parent 20823 5480ec4b542d
child 20868 724ab9896068
equal deleted inserted replaced
20853:3ff5a2e05810 20854:f9cf9e62d11c
   200     end;
   200     end;
   201 
   201 
   202 exception FN_LG of term;
   202 exception FN_LG of term;
   203 
   203 
   204 fun fn_lg (t as Const(f,tp)) (lg,seen) = 
   204 fun fn_lg (t as Const(f,tp)) (lg,seen) = 
   205     if is_hol_fn tp then (upgrade_lg HOL lg, t ins seen) else (lg, t ins seen) 
   205     if is_hol_fn tp then (upgrade_lg HOL lg, insert (op =) t seen) else (lg, insert (op =) t seen) 
   206   | fn_lg (t as Free(f,tp)) (lg,seen) = 
   206   | fn_lg (t as Free(f,tp)) (lg,seen) = 
   207     if is_hol_fn tp then (upgrade_lg HOL lg, t ins seen) else (lg, t ins seen) 
   207     if is_hol_fn tp then (upgrade_lg HOL lg, insert (op =) t seen) else (lg, insert (op =) t seen) 
   208   | fn_lg (t as Var(f,tp)) (lg,seen) =
   208   | fn_lg (t as Var(f,tp)) (lg,seen) =
   209     if is_hol_fn tp then (upgrade_lg HOL lg,t ins seen) else (lg,t ins seen)
   209     if is_hol_fn tp then (upgrade_lg HOL lg,insert (op =) t seen) else (lg,insert (op =) t seen)
   210   | fn_lg (t as Abs(_,_,_)) (lg,seen) = (upgrade_lg HOLC lg,t ins seen)
   210   | fn_lg (t as Abs(_,_,_)) (lg,seen) = (upgrade_lg HOLC lg,insert (op =) t seen)
   211   | fn_lg f _ = raise FN_LG(f); 
   211   | fn_lg f _ = raise FN_LG(f); 
   212 
   212 
   213 
   213 
   214 fun term_lg [] (lg,seen) = (lg,seen)
   214 fun term_lg [] (lg,seen) = (lg,seen)
   215   | term_lg (tm::tms) (FOL,seen) =
   215   | term_lg (tm::tms) (FOL,seen) =
   224   | term_lg _ (lg,seen) = (lg,seen)
   224   | term_lg _ (lg,seen) = (lg,seen)
   225 
   225 
   226 exception PRED_LG of term;
   226 exception PRED_LG of term;
   227 
   227 
   228 fun pred_lg (t as Const(P,tp)) (lg,seen)= 
   228 fun pred_lg (t as Const(P,tp)) (lg,seen)= 
   229       if is_hol_pred tp then (upgrade_lg HOL lg, t ins seen) else (lg,t ins seen) 
   229       if is_hol_pred tp then (upgrade_lg HOL lg, insert (op =) t seen) else (lg,insert (op =) t seen) 
   230   | pred_lg (t as Free(P,tp)) (lg,seen) =
   230   | pred_lg (t as Free(P,tp)) (lg,seen) =
   231       if is_hol_pred tp then (upgrade_lg HOL lg, t ins seen) else (lg,t ins seen)
   231       if is_hol_pred tp then (upgrade_lg HOL lg, insert (op =) t seen) else (lg,insert (op =) t seen)
   232   | pred_lg (t as Var(_,_)) (lg,seen) = (upgrade_lg HOL lg, t ins seen)
   232   | pred_lg (t as Var(_,_)) (lg,seen) = (upgrade_lg HOL lg, insert (op =) t seen)
   233   | pred_lg P _ = raise PRED_LG(P);
   233   | pred_lg P _ = raise PRED_LG(P);
   234 
   234 
   235 
   235 
   236 fun lit_lg (Const("Not",_) $ P) (lg,seen) = lit_lg P (lg,seen)
   236 fun lit_lg (Const("Not",_) $ P) (lg,seen) = lit_lg P (lg,seen)
   237   | lit_lg P (lg,seen) =
   237   | lit_lg P (lg,seen) =