src/Provers/blast.ML
changeset 20854 f9cf9e62d11c
parent 20664 ffbc5a57191a
child 21295 63552bc99cfb
equal deleted inserted replaced
20853:3ff5a2e05810 20854:f9cf9e62d11c
   249 
   249 
   250 
   250 
   251 (*Accumulate all 'loose' bound vars referring to level 'lev' or beyond.
   251 (*Accumulate all 'loose' bound vars referring to level 'lev' or beyond.
   252    (Bound 0) is loose at level 0 *)
   252    (Bound 0) is loose at level 0 *)
   253 fun add_loose_bnos (Bound i, lev, js)   = if i<lev then js
   253 fun add_loose_bnos (Bound i, lev, js)   = if i<lev then js
   254                                           else  (i-lev) ins_int js
   254                                           else insert (op =) (i - lev) js
   255   | add_loose_bnos (Abs (_,t), lev, js) = add_loose_bnos (t, lev+1, js)
   255   | add_loose_bnos (Abs (_,t), lev, js) = add_loose_bnos (t, lev+1, js)
   256   | add_loose_bnos (f$t, lev, js)       =
   256   | add_loose_bnos (f$t, lev, js)       =
   257                 add_loose_bnos (f, lev, add_loose_bnos (t, lev, js))
   257                 add_loose_bnos (f, lev, add_loose_bnos (t, lev, js))
   258   | add_loose_bnos (_, _, js)           = js;
   258   | add_loose_bnos (_, _, js)           = js;
   259 
   259