test/Tools/isac/Interpret/li-tool.sml
changeset 60741 22586d7fedb0
parent 60739 78a78f428ef8
child 60746 3ba85d40b3c7
equal deleted inserted replaced
60740:51b4f393518d 60741:22586d7fedb0
   366         map (fn (_, variants, _, _, _) => variants) i_model
   366         map (fn (_, variants, _, _, _) => variants) i_model
   367         |> flat
   367         |> flat
   368         |> distinct op =
   368         |> distinct op =
   369     val variants_separated = map (filter_variants' i_model) all_variants
   369     val variants_separated = map (filter_variants' i_model) all_variants
   370     val sums_corr = map (cnt_corrects) variants_separated
   370     val sums_corr = map (cnt_corrects) variants_separated
   371     val sum_variant_s = arrange_args1 sums_corr (1, all_variants)
   371     val sum_variant_s = arrange_args sums_corr (1, all_variants)
   372     val (_, max_variant) = hd (*..crude decision, up to improvement *)
   372     val (_, max_variant) = hd (*..crude decision, up to improvement *)
   373       (sort (fn ((i, _), (j, _)) => int_ord (i, j)) sum_variant_s)
   373       (sort (fn ((i, _), (j, _)) => int_ord (i, j)) sum_variant_s)
   374     val i_model_max =
   374     val i_model_max =
   375       filter (fn (_, variants, _ , _ ,_) => member (op =) variants max_variant) i_model
   375       filter (fn (_, variants, _ , _ ,_) => member (op =) variants max_variant) i_model
   376     val equal_descr_pairs = map (get_equal_descr i_model) model_patt |> flat
   376     val equal_descr_pairs = map (get_equal_descr i_model) model_patt |> flat
   441 (*+*)val "[l_l, q_q, r_b, fun_var, id_der, id_momentum, id_lat_force, vs, b_b]"
   441 (*+*)val "[l_l, q_q, r_b, fun_var, id_der, id_momentum, id_lat_force, vs, b_b]"
   442  = formals |> UnparseC.terms @{context}
   442  = formals |> UnparseC.terms @{context}
   443 (*+*)val 9 = length formals
   443 (*+*)val 9 = length formals
   444 
   444 
   445     val preconds =
   445     val preconds =
   446       Pre_Conds.check_envs_TEST ctxt where_rls where_ (env_model, (env_subst, env_eval))
   446       Pre_Conds.check_envs ctxt where_rls where_ (env_model, (env_subst, env_eval))
   447     val ctxt = ctxt |> ContextC.insert_assumptions (map snd (snd preconds));
   447     val ctxt = ctxt |> ContextC.insert_assumptions (map snd (snd preconds));
   448     val ist = Istate.e_pstate
   448     val ist = Istate.e_pstate
   449       |> Istate.set_eval prog_rls
   449       |> Istate.set_eval prog_rls
   450       |> Istate.set_env_true (relate_args [] formals actuals ctxt prog met_id formals actuals)
   450       |> Istate.set_env_true (relate_args [] formals actuals ctxt prog met_id formals actuals)
   451 ;
   451 ;