equal
deleted
inserted
replaced
1217 to context *) |
1217 to context *) |
1218 val ctxt = fold ProofContext.declare_term (List.concat (map (map fst) all_propp)) ctxt; |
1218 val ctxt = fold ProofContext.declare_term (List.concat (map (map fst) all_propp)) ctxt; |
1219 |
1219 |
1220 (* CB: resolve schematic variables (patterns) in conclusion and external |
1220 (* CB: resolve schematic variables (patterns) in conclusion and external |
1221 elements. *) |
1221 elements. *) |
1222 val all_propp' = map2 (op ~~) |
1222 val all_propp' = map2 (curry (op ~~)) |
1223 (#1 (#2 (ProofContext.bind_propp_schematic_i (ctxt, all_propp))), map (map snd) all_propp); |
1223 (#1 (#2 (ProofContext.bind_propp_schematic_i (ctxt, all_propp)))) (map (map snd) all_propp); |
1224 val (concl, propp) = splitAt(length raw_concl, all_propp'); |
1224 val (concl, propp) = splitAt(length raw_concl, all_propp'); |
1225 val propps = unflat raw_propps propp; |
1225 val propps = unflat raw_propps propp; |
1226 val proppss = map (uncurry unflat) (raw_proppss ~~ propps); |
1226 val proppss = map (uncurry unflat) (raw_proppss ~~ propps); |
1227 |
1227 |
1228 (* CB: obtain all parameters from identifier part of raw_elemss *) |
1228 (* CB: obtain all parameters from identifier part of raw_elemss *) |