src/Pure/proofterm.ML
changeset 13662 1f8ddc4b371e
parent 13629 a46362d2b19b
child 13744 2241191a3c54
equal deleted inserted replaced
13661:ec97dfc2bfe0 13662:1f8ddc4b371e
   624       | lift' _ _ (PAxm (s, prop, Ts)) =
   624       | lift' _ _ (PAxm (s, prop, Ts)) =
   625           PAxm (s, prop, apsome' (same (map (incr_tvar inc))) Ts)
   625           PAxm (s, prop, apsome' (same (map (incr_tvar inc))) Ts)
   626       | lift' _ _ _ = raise SAME
   626       | lift' _ _ _ = raise SAME
   627     and lifth' Us Ts prf = (lift' Us Ts prf handle SAME => prf);
   627     and lifth' Us Ts prf = (lift' Us Ts prf handle SAME => prf);
   628 
   628 
   629     val ps = map lift_all (Logic.strip_imp_prems (snd (Logic.strip_flexpairs prop)));
   629     val ps = map lift_all (Logic.strip_imp_prems prop);
   630     val k = length ps;
   630     val k = length ps;
   631 
   631 
   632     fun mk_app (b, (i, j, prf)) = 
   632     fun mk_app (b, (i, j, prf)) = 
   633           if b then (i-1, j, prf %% PBound i) else (i, j-1, prf %> Bound j);
   633           if b then (i-1, j, prf %% PBound i) else (i, j-1, prf %> Bound j);
   634 
   634