393 (prop, (types, map_proof_of open_proof (Future.join body)))))] |
393 (prop, (types, map_proof_of open_proof (Future.join body)))))] |
394 and proof_body consts (PBody {oracles, thms, zboxes = _, zproof = _, proof = prf}) = |
394 and proof_body consts (PBody {oracles, thms, zboxes = _, zproof = _, proof = prf}) = |
395 triple (list (pair (pair string (properties o Position.properties_of)) |
395 triple (list (pair (pair string (properties o Position.properties_of)) |
396 (option (term consts)))) (list (thm consts)) (proof consts) (oracles, thms, prf) |
396 (option (term consts)))) (list (thm consts)) (proof consts) (oracles, thms, prf) |
397 and thm consts (a, thm_node) = |
397 and thm consts (a, thm_node) = |
398 pair int (pair string (pair (pair string int) (pair (term consts) (proof_body consts)))) |
398 pair int (pair string (pair Thm_Name.encode (pair (term consts) (proof_body consts)))) |
399 (a, (thm_node_theory_name thm_node, (thm_node_name thm_node, (thm_node_prop thm_node, |
399 (a, (thm_node_theory_name thm_node, (thm_node_name thm_node, (thm_node_prop thm_node, |
400 (Future.join (thm_node_body thm_node)))))); |
400 (Future.join (thm_node_body thm_node)))))); |
401 |
401 |
402 fun standard_term consts t = t |> variant |
402 fun standard_term consts t = t |> variant |
403 [fn Const (a, b) => ([a], list typ (Consts.typargs consts (a, b))), |
403 [fn Const (a, b) => ([a], list typ (Consts.typargs consts (a, b))), |
461 (option (term consts)))) (list (thm consts)) (proof consts) x; |
461 (option (term consts)))) (list (thm consts)) (proof consts) x; |
462 in PBody {oracles = a, thms = b, zboxes = [], zproof = ZDummy, proof = c} end |
462 in PBody {oracles = a, thms = b, zboxes = [], zproof = ZDummy, proof = c} end |
463 and thm consts x = |
463 and thm consts x = |
464 let |
464 let |
465 val (a, (b, (c, (d, e)))) = |
465 val (a, (b, (c, (d, e)))) = |
466 pair int (pair string (pair (pair string int) (pair (term consts) (proof_body consts)))) x |
466 pair int (pair string (pair Thm_Name.decode (pair (term consts) (proof_body consts)))) x |
467 in (a, make_thm_node b c d (Future.value e) no_export) end; |
467 in (a, make_thm_node b c d (Future.value e) no_export) end; |
468 |
468 |
469 in |
469 in |
470 |
470 |
471 val decode = proof; |
471 val decode = proof; |