equal
deleted
inserted
replaced
954 val _ = tracing "Restoring terms..." |
954 val _ = tracing "Restoring terms..." |
955 val empty = Const("Orderings.bot_class.bot", fastype_of t_compr) |
955 val empty = Const("Orderings.bot_class.bot", fastype_of t_compr) |
956 fun mk_insert x S = |
956 fun mk_insert x S = |
957 Const (@{const_name "Set.insert"}, fastype_of x --> fastype_of S --> fastype_of S) $ x $ S |
957 Const (@{const_name "Set.insert"}, fastype_of x --> fastype_of S --> fastype_of S) $ x $ S |
958 fun mk_set_compr in_insert [] xs = |
958 fun mk_set_compr in_insert [] xs = |
959 rev ((Free ("...", fastype_of t_compr)) :: |
959 rev ((Free ("dots", fastype_of t_compr)) :: (* FIXME proper name!? *) |
960 (if null in_insert then xs else (fold mk_insert in_insert empty) :: xs)) |
960 (if null in_insert then xs else (fold mk_insert in_insert empty) :: xs)) |
961 | mk_set_compr in_insert (t :: ts) xs = |
961 | mk_set_compr in_insert (t :: ts) xs = |
962 let |
962 let |
963 val frees = Term.add_frees t [] |
963 val frees = Term.add_frees t [] |
964 in |
964 in |