equal
deleted
inserted
replaced
290 in |
290 in |
291 (sk_term,(t,sk_term)::epss) |
291 (sk_term,(t,sk_term)::epss) |
292 end; |
292 end; |
293 |
293 |
294 |
294 |
295 fun sk_lookup [] t = None |
295 fun sk_lookup [] t = NONE |
296 | sk_lookup ((tm,sk_tm)::tms) t = if (t = tm) then Some (sk_tm) else (sk_lookup tms t); |
296 | sk_lookup ((tm,sk_tm)::tms) t = if (t = tm) then SOME (sk_tm) else (sk_lookup tms t); |
297 |
297 |
298 |
298 |
299 |
299 |
300 (* get the proper skolem term to replace epsilon term *) |
300 (* get the proper skolem term to replace epsilon term *) |
301 fun get_skolem epss t = |
301 fun get_skolem epss t = |
302 let val sk_fun = sk_lookup epss t |
302 let val sk_fun = sk_lookup epss t |
303 in |
303 in |
304 case sk_fun of None => get_new_skolem epss t |
304 case sk_fun of NONE => get_new_skolem epss t |
305 | Some sk => (sk,epss) |
305 | SOME sk => (sk,epss) |
306 end; |
306 end; |
307 |
307 |
308 |
308 |
309 fun rm_Eps_cls_aux epss (t as (Const ("Hilbert_Choice.Eps",_) $ Abs(_,_,_))) = get_skolem epss t |
309 fun rm_Eps_cls_aux epss (t as (Const ("Hilbert_Choice.Eps",_) $ Abs(_,_,_))) = get_skolem epss t |
310 | rm_Eps_cls_aux epss (P $ Q) = |
310 | rm_Eps_cls_aux epss (P $ Q) = |