src/Tools/isac/MathEngine/solve.sml
changeset 59833 9331e61f55dd
parent 59815 13461d66970e
child 59846 7184a26ac7d5
     1.1 --- a/src/Tools/isac/MathEngine/solve.sml	Fri Mar 20 19:31:55 2020 +0100
     1.2 +++ b/src/Tools/isac/MathEngine/solve.sml	Mon Mar 23 13:31:29 2020 +0100
     1.3 @@ -14,7 +14,6 @@
     1.4    val complete_solve :
     1.5       auto -> Ctree.pos' list -> Calc.T -> string * Ctree.pos' list * Calc.T
     1.6  
     1.7 -  val detailrls : Ctree.ctree -> Ctree.pos' -> string * Ctree.ctree * Ctree.pos'
     1.8  (* ---- for tests only: shifted from below to remove the Warning "unused" at fun.def. --------- *)
     1.9    (*NONE*)
    1.10  (*/-------------------------------------------------------- ! aktivate for Test_Isac BEGIN ---\* )
    1.11 @@ -93,39 +92,4 @@
    1.12        complete_solve auto (c @ c') ptp
    1.13      end;
    1.14  
    1.15 -(* aux.fun for detailrls with Rrls, reverse rewriting *)
    1.16 -fun rul_terms_2nds _ nds _ [] = nds
    1.17 -  | rul_terms_2nds thy nds t ((rule, res as (t', _)) :: rts) =
    1.18 -    (append_atomic [] (NONE(*guessed*), (Istate.e_istate, ContextC.e_ctxt)) t (Tactic.rule2tac thy [] rule) res Complete EmptyPtree) ::
    1.19 -      (rul_terms_2nds thy nds t' rts);
    1.20 -
    1.21 -(* detail steps done internally by Rewrite_Set* into Ctree 
    1.22 -  by use of a program *)
    1.23 -fun detailrls pt (pos as (p, _)) = 
    1.24 -  let
    1.25 -    val t = get_obj g_form pt p
    1.26 -	  val tac = get_obj g_tac pt p
    1.27 -	  val rls = (assoc_rls o Tactic.rls_of) tac
    1.28 -    val ctxt = get_ctxt pt pos
    1.29 -  in
    1.30 -    case rls of
    1.31 -	    Rule.Rrls {scr = Rule.Rfuns {init_state, ...}, ...} => 
    1.32 -	    let
    1.33 -        val (_, _, _, rul_terms) = init_state t
    1.34 -	      val newnds = rul_terms_2nds (Proof_Context.theory_of ctxt) [] t rul_terms
    1.35 -	      val pt''' = ins_chn newnds pt p 
    1.36 -	    in ("detailrls", pt''', (p @ [length newnds], Res)) end
    1.37 -	  | _ =>
    1.38 -	    let
    1.39 -        val is = Generate.init_istate tac t
    1.40 -	      val tac_ = Tactic.Apply_Method' (Celem.e_metID(*WN0402: see generate1 !?!*), SOME t, is, ctxt)
    1.41 -	      val pos' = ((lev_on o lev_dn) p, Frm)
    1.42 -	      val thy = Celem.assoc_thy "Isac_Knowledge"
    1.43 -	      val (_, _, _, pt') = Generate.generate1 tac_ (is, ctxt) (pt, pos') (* implicit Take *)
    1.44 -	      val (_,_, (pt'', _)) = complete_solve CompleteSubpbl [] (pt', pos')
    1.45 -	      val newnds = children (get_nd pt'' p)
    1.46 -	      val pt''' = ins_chn newnds pt p (*complete_solve cuts branches after*)
    1.47 -	    in ("detailrls", pt''', (p @ [length newnds], Res)) end
    1.48 -  end;
    1.49 -
    1.50  end
    1.51 \ No newline at end of file