916 |
916 |
917 (* probably perfectly replaced by auto-generated version *) |
917 (* probably perfectly replaced by auto-generated version *) |
918 val scr_make_polynomial = |
918 val scr_make_polynomial = |
919 "Script Expand_binoms t_t = " ^ |
919 "Script Expand_binoms t_t = " ^ |
920 "(Repeat " ^ |
920 "(Repeat " ^ |
921 "((Try (Repeat (Rewrite real_diff_minus False))) @@ " ^ |
921 "((Try (Repeat (Rewrite ''real_diff_minus'' False))) @@ " ^ |
922 |
922 |
923 " (Try (Repeat (Rewrite distrib_right False))) @@ " ^ |
923 " (Try (Repeat (Rewrite ''distrib_right'' False))) @@ " ^ |
924 " (Try (Repeat (Rewrite distrib_left False))) @@ " ^ |
924 " (Try (Repeat (Rewrite ''distrib_left'' False))) @@ " ^ |
925 " (Try (Repeat (Rewrite left_diff_distrib False))) @@ " ^ |
925 " (Try (Repeat (Rewrite ''left_diff_distrib'' False))) @@ " ^ |
926 " (Try (Repeat (Rewrite right_diff_distrib False))) @@ " ^ |
926 " (Try (Repeat (Rewrite ''right_diff_distrib'' False))) @@ " ^ |
927 |
927 |
928 " (Try (Repeat (Rewrite mult_1_left False))) @@ " ^ |
928 " (Try (Repeat (Rewrite ''mult_1_left'' False))) @@ " ^ |
929 " (Try (Repeat (Rewrite mult_zero_left False))) @@ " ^ |
929 " (Try (Repeat (Rewrite ''mult_zero_left'' False))) @@ " ^ |
930 " (Try (Repeat (Rewrite add_0_left False))) @@ " ^ |
930 " (Try (Repeat (Rewrite ''add_0_left'' False))) @@ " ^ |
931 |
931 |
932 " (Try (Repeat (Rewrite mult_commute False))) @@ " ^ |
932 " (Try (Repeat (Rewrite ''mult_commute'' False))) @@ " ^ |
933 " (Try (Repeat (Rewrite real_mult_left_commute False))) @@ " ^ |
933 " (Try (Repeat (Rewrite ''real_mult_left_commute'' False))) @@ " ^ |
934 " (Try (Repeat (Rewrite mult_assoc False))) @@ " ^ |
934 " (Try (Repeat (Rewrite ''mult_assoc'' False))) @@ " ^ |
935 " (Try (Repeat (Rewrite add_commute False))) @@ " ^ |
935 " (Try (Repeat (Rewrite ''add_commute'' False))) @@ " ^ |
936 " (Try (Repeat (Rewrite add_left_commute False))) @@ " ^ |
936 " (Try (Repeat (Rewrite ''add_left_commute'' False))) @@ " ^ |
937 " (Try (Repeat (Rewrite add_assoc False))) @@ " ^ |
937 " (Try (Repeat (Rewrite ''add_assoc'' False))) @@ " ^ |
938 |
938 |
939 " (Try (Repeat (Rewrite sym_realpow_twoI False))) @@ " ^ |
939 " (Try (Repeat (Rewrite ''sym_realpow_twoI'' False))) @@ " ^ |
940 " (Try (Repeat (Rewrite realpow_plus_1 False))) @@ " ^ |
940 " (Try (Repeat (Rewrite ''realpow_plus_1'' False))) @@ " ^ |
941 " (Try (Repeat (Rewrite sym_real_mult_2 False))) @@ " ^ |
941 " (Try (Repeat (Rewrite ''sym_real_mult_2'' False))) @@ " ^ |
942 " (Try (Repeat (Rewrite real_mult_2_assoc False))) @@ " ^ |
942 " (Try (Repeat (Rewrite ''real_mult_2_assoc'' False))) @@ " ^ |
943 |
943 |
944 " (Try (Repeat (Rewrite real_num_collect False))) @@ " ^ |
944 " (Try (Repeat (Rewrite ''real_num_collect'' False))) @@ " ^ |
945 " (Try (Repeat (Rewrite real_num_collect_assoc False))) @@ " ^ |
945 " (Try (Repeat (Rewrite ''real_num_collect_assoc'' False))) @@ " ^ |
946 |
946 |
947 " (Try (Repeat (Rewrite real_one_collect False))) @@ " ^ |
947 " (Try (Repeat (Rewrite ''real_one_collect'' False))) @@ " ^ |
948 " (Try (Repeat (Rewrite real_one_collect_assoc False))) @@ " ^ |
948 " (Try (Repeat (Rewrite ''real_one_collect_assoc'' False))) @@ " ^ |
949 |
949 |
950 " (Try (Repeat (Calculate PLUS ))) @@ " ^ |
950 " (Try (Repeat (Calculate ''PLUS'' ))) @@ " ^ |
951 " (Try (Repeat (Calculate TIMES ))) @@ " ^ |
951 " (Try (Repeat (Calculate ''TIMES'' ))) @@ " ^ |
952 " (Try (Repeat (Calculate POWER)))) " ^ |
952 " (Try (Repeat (Calculate ''POWER'')))) " ^ |
953 " t_t)"; |
953 " t_t)"; |
954 |
954 |
955 (*version used by MG.02/03, overwritten by version AG in 04 below |
955 (*version used by MG.02/03, overwritten by version AG in 04 below |
956 val make_polynomial = prep_rls'( |
956 val make_polynomial = prep_rls'( |
957 Rule.Seq{id = "make_polynomial", preconds = []:term list, |
957 Rule.Seq{id = "make_polynomial", preconds = []:term list, |
971 |
971 |
972 (* replacement by auto-generated version seemed to cause ERROR in algein.sml *) |
972 (* replacement by auto-generated version seemed to cause ERROR in algein.sml *) |
973 val scr_expand_binoms = |
973 val scr_expand_binoms = |
974 "Script Expand_binoms t_t =" ^ |
974 "Script Expand_binoms t_t =" ^ |
975 "(Repeat " ^ |
975 "(Repeat " ^ |
976 "((Try (Repeat (Rewrite real_plus_binom_pow2 False))) @@ " ^ |
976 "((Try (Repeat (Rewrite ''real_plus_binom_pow2'' False))) @@ " ^ |
977 " (Try (Repeat (Rewrite real_plus_binom_times False))) @@ " ^ |
977 " (Try (Repeat (Rewrite ''real_plus_binom_times'' False))) @@ " ^ |
978 " (Try (Repeat (Rewrite real_minus_binom_pow2 False))) @@ " ^ |
978 " (Try (Repeat (Rewrite ''real_minus_binom_pow2'' False))) @@ " ^ |
979 " (Try (Repeat (Rewrite real_minus_binom_times False))) @@ " ^ |
979 " (Try (Repeat (Rewrite ''real_minus_binom_times'' False))) @@ " ^ |
980 " (Try (Repeat (Rewrite real_plus_minus_binom1 False))) @@ " ^ |
980 " (Try (Repeat (Rewrite ''real_plus_minus_binom1'' False))) @@ " ^ |
981 " (Try (Repeat (Rewrite real_plus_minus_binom2 False))) @@ " ^ |
981 " (Try (Repeat (Rewrite ''real_plus_minus_binom2'' False))) @@ " ^ |
982 |
982 |
983 " (Try (Repeat (Rewrite mult_1_left False))) @@ " ^ |
983 " (Try (Repeat (Rewrite ''mult_1_left'' False))) @@ " ^ |
984 " (Try (Repeat (Rewrite mult_zero_left False))) @@ " ^ |
984 " (Try (Repeat (Rewrite ''mult_zero_left'' False))) @@ " ^ |
985 " (Try (Repeat (Rewrite add_0_left False))) @@ " ^ |
985 " (Try (Repeat (Rewrite ''add_0_left'' False))) @@ " ^ |
986 |
986 |
987 " (Try (Repeat (Calculate PLUS ))) @@ " ^ |
987 " (Try (Repeat (Calculate ''PLUS'' ))) @@ " ^ |
988 " (Try (Repeat (Calculate TIMES ))) @@ " ^ |
988 " (Try (Repeat (Calculate ''TIMES'' ))) @@ " ^ |
989 " (Try (Repeat (Calculate POWER))) @@ " ^ |
989 " (Try (Repeat (Calculate ''POWER''))) @@ " ^ |
990 |
990 |
991 " (Try (Repeat (Rewrite sym_realpow_twoI False))) @@ " ^ |
991 " (Try (Repeat (Rewrite ''sym_realpow_twoI'' False))) @@ " ^ |
992 " (Try (Repeat (Rewrite realpow_plus_1 False))) @@ " ^ |
992 " (Try (Repeat (Rewrite ''realpow_plus_1'' False))) @@ " ^ |
993 " (Try (Repeat (Rewrite sym_real_mult_2 False))) @@ " ^ |
993 " (Try (Repeat (Rewrite ''sym_real_mult_2'' False))) @@ " ^ |
994 " (Try (Repeat (Rewrite real_mult_2_assoc False))) @@ " ^ |
994 " (Try (Repeat (Rewrite ''real_mult_2_assoc'' False))) @@ " ^ |
995 |
995 |
996 " (Try (Repeat (Rewrite real_num_collect False))) @@ " ^ |
996 " (Try (Repeat (Rewrite ''real_num_collect'' False))) @@ " ^ |
997 " (Try (Repeat (Rewrite real_num_collect_assoc False))) @@ " ^ |
997 " (Try (Repeat (Rewrite ''real_num_collect_assoc'' False))) @@ " ^ |
998 |
998 |
999 " (Try (Repeat (Rewrite real_one_collect False))) @@ " ^ |
999 " (Try (Repeat (Rewrite ''real_one_collect'' False))) @@ " ^ |
1000 " (Try (Repeat (Rewrite real_one_collect_assoc False))) @@ " ^ |
1000 " (Try (Repeat (Rewrite ''real_one_collect_assoc'' False))) @@ " ^ |
1001 |
1001 |
1002 " (Try (Repeat (Calculate PLUS ))) @@ " ^ |
1002 " (Try (Repeat (Calculate ''PLUS'' ))) @@ " ^ |
1003 " (Try (Repeat (Calculate TIMES ))) @@ " ^ |
1003 " (Try (Repeat (Calculate ''TIMES'' ))) @@ " ^ |
1004 " (Try (Repeat (Calculate POWER)))) " ^ |
1004 " (Try (Repeat (Calculate ''POWER'')))) " ^ |
1005 " t_t)"; |
1005 " t_t)"; |
1006 |
1006 |
1007 val expand_binoms = |
1007 val expand_binoms = |
1008 Rule.Rls{id = "expand_binoms", preconds = [], rew_ord = ("termlessI",termlessI), |
1008 Rule.Rls{id = "expand_binoms", preconds = [], rew_ord = ("termlessI",termlessI), |
1009 erls = Atools_erls, srls = Rule.Erls, |
1009 erls = Atools_erls, srls = Rule.Erls, |
1627 prls = Rule.append_rls "simplification_for_polynomials_prls" Rule.e_rls |
1627 prls = Rule.append_rls "simplification_for_polynomials_prls" Rule.e_rls |
1628 [(*for preds in where_*) |
1628 [(*for preds in where_*) |
1629 Rule.Calc ("Poly.is'_polyexp",eval_is_polyexp"")], |
1629 Rule.Calc ("Poly.is'_polyexp",eval_is_polyexp"")], |
1630 crls = Rule.e_rls, errpats = [], nrls = norm_Poly}, |
1630 crls = Rule.e_rls, errpats = [], nrls = norm_Poly}, |
1631 "Script SimplifyScript (t_t::real) = " ^ |
1631 "Script SimplifyScript (t_t::real) = " ^ |
1632 " ((Rewrite_Set norm_Poly False) t_t)")] |
1632 " ((Rewrite_Set ''norm_Poly'' False) t_t)")] |
1633 \<close> |
1633 \<close> |
1634 |
1634 |
1635 ML \<open> |
1635 ML \<open> |
1636 \<close> ML \<open> |
1636 \<close> ML \<open> |
1637 \<close> |
1637 \<close> |