src/Pure/Proof/reconstruct.ML
changeset 33037 b22e44496dc2
parent 32738 15bb09ca0378
child 33038 8f9594c31de4
equal deleted inserted replaced
33015:575bd6548df9 33037:b22e44496dc2
   287   let
   287   let
   288     val (cprf' % SOME prop', thawf) = freeze_thaw_prf (cprf % SOME prop);
   288     val (cprf' % SOME prop', thawf) = freeze_thaw_prf (cprf % SOME prop);
   289     val _ = message "Collecting constraints...";
   289     val _ = message "Collecting constraints...";
   290     val (t, prf, cs, env, _) = make_constraints_cprf thy
   290     val (t, prf, cs, env, _) = make_constraints_cprf thy
   291       (Envir.empty (maxidx_proof cprf ~1)) cprf';
   291       (Envir.empty (maxidx_proof cprf ~1)) cprf';
   292     val cs' = map (fn p => (true, p, op union
   292     val cs' = map (fn p => (true, p, gen_union (op =) 
   293         (pairself (map (fst o dest_Var) o OldTerm.term_vars) p)))
   293         (pairself (map (fst o dest_Var) o OldTerm.term_vars) p)))
   294       (map (pairself (Envir.norm_term env)) ((t, prop')::cs));
   294       (map (pairself (Envir.norm_term env)) ((t, prop')::cs));
   295     val _ = message ("Solving remaining constraints (" ^ string_of_int (length cs') ^ ") ...");
   295     val _ = message ("Solving remaining constraints (" ^ string_of_int (length cs') ^ ") ...");
   296     val env' = solve thy cs' env
   296     val env' = solve thy cs' env
   297   in
   297   in