1 (* all outcommented in order to demonstrate authoring:
5 (** interface isabelle -- isac **)
6 theory' := overwritel (!theory', [("LogExp.thy",LogExp.thy)]);
8 (*--------------------------------------------------*)
12 (prep_pbt LogExp.thy "pbl_test_equ_univ_log" [] e_pblID
13 (["logarithmic","univariate","equation"],
14 [("#Given",["equality e_","solveFor v_"]),
15 ("#Where",["matches ((?a log ?v_) = ?b) e_"]),
16 ("#Find" ,["solutions v_i_"]),
17 ("#With" ,["||(lhs (Subst (v_i_,v_) e_) - \
18 \ (rhs (Subst (v_i_,v_) e_) || < eps)"])
20 PolyEq_prls, Some "solve (e_::bool, v_)",
21 [["Equation","solve_log"]]));
25 (prep_met LogExp.thy "met_equ_log" [] e_metID
26 (["Equation","solve_log"],
27 [("#Given" ,["equality e_","solveFor v_"]),
28 ("#Where" ,["matches ((?a log ?v_) = ?b) e_"]),
29 ("#Find" ,["solutions v_i_"])
31 {rew_ord'="termlessI",rls'=PolyEq_erls,srls=e_rls,prls=PolyEq_prls,
32 calc=[],crls=PolyEq_crls, nrls=norm_Rational},
33 "Script Solve_log (e_::bool) (v_::real) = \
34 \(let e_ = ((Rewrite equality_power False) @@ \
35 \ (Rewrite exp_invers_log False) @@ \
36 \ (Rewrite_Set norm_Poly False)) e_ \
39 (*--------------------------------------------------*)