diff -r 3074b3de4f4f -r d6b6c74a8bcf src/Pure/proofterm.ML --- a/src/Pure/proofterm.ML Sat Apr 12 17:00:43 2008 +0200 +++ b/src/Pure/proofterm.ML Sat Apr 12 17:00:45 2008 +0200 @@ -916,16 +916,13 @@ fun shrink_proof thy = let - val compress_typ = Compress.typ thy; - val compress_term = Compress.term thy; - fun shrink ls lev (prf as Abst (a, T, body)) = let val (b, is, ch, body') = shrink ls (lev+1) body - in (b, is, ch, if ch then Abst (a, Option.map compress_typ T, body') else prf) end + in (b, is, ch, if ch then Abst (a, T, body') else prf) end | shrink ls lev (prf as AbsP (a, t, body)) = let val (b, is, ch, body') = shrink (lev::ls) lev body in (b orelse member (op =) is 0, map_filter (fn 0 => NONE | i => SOME (i-1)) is, - ch, if ch then AbsP (a, Option.map compress_term t, body') else prf) + ch, if ch then AbsP (a, t, body') else prf) end | shrink ls lev prf = let val (is, ch, _, prf') = shrink' ls lev [] [] prf @@ -940,13 +937,13 @@ | shrink' ls lev ts prfs (prf as prf1 % t) = let val (is, ch, (ch', t')::ts', prf') = shrink' ls lev (t::ts) prfs prf1 in (is, ch orelse ch', ts', - if ch orelse ch' then prf' % Option.map compress_term t' else prf) end + if ch orelse ch' then prf' % t' else prf) end | shrink' ls lev ts prfs (prf as PBound i) = (if exists (fn SOME (Bound j) => lev-j <= List.nth (ls, i) | _ => true) ts orelse has_duplicates (op =) (Library.foldl (fn (js, SOME (Bound j)) => j :: js | (js, _) => js) ([], ts)) orelse exists #1 prfs then [i] else [], false, map (pair false) ts, prf) - | shrink' ls lev ts prfs (Hyp t) = ([], false, map (pair false) ts, Hyp (compress_term t)) + | shrink' ls lev ts prfs (Hyp t) = ([], false, map (pair false) ts, Hyp t) | shrink' ls lev ts prfs (prf as MinProof _) = ([], false, map (pair false) ts, prf) | shrink' ls lev ts prfs prf =