274 CalcTree [(["Term (5*e + 6*f - 8*g - 9 - 7*e - 4*f + 10*g + 12)", |
274 CalcTree [(["Term (5*e + 6*f - 8*g - 9 - 7*e - 4*f + 10*g + 12)", |
275 "normalform N"], |
275 "normalform N"], |
276 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
276 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
277 ["simplification","for_polynomials","with_minus"]))]; |
277 ["simplification","for_polynomials","with_minus"]))]; |
278 moveActiveRoot 1; |
278 moveActiveRoot 1; |
279 autoCalculate' 1 CompleteCalc; |
279 autoCalculate 1 CompleteCalc; |
280 val ((pt,p),_) = get_calc 1; show_pt pt; |
280 val ((pt,p),_) = get_calc 1; show_pt pt; |
281 if p = ([], Res) andalso |
281 if p = ([], Res) andalso |
282 term2str (get_obj g_res pt (fst p)) = "3 - 2 * e + 2 * f + 2 * g" |
282 term2str (get_obj g_res pt (fst p)) = "3 - 2 * e + 2 * f + 2 * g" |
283 then () else error "polyminus.sml: Vereinfache (3 - 2 * e + 2 * f..."; |
283 then () else error "polyminus.sml: Vereinfache (3 - 2 * e + 2 * f..."; |
284 |
284 |
287 CalcTree [(["Term (-r - 2*s - 3*t + 5 + 4*r + 8*s - 5*t - 2)", |
287 CalcTree [(["Term (-r - 2*s - 3*t + 5 + 4*r + 8*s - 5*t - 2)", |
288 "normalform N"], |
288 "normalform N"], |
289 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
289 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
290 ["simplification","for_polynomials","with_minus"]))]; |
290 ["simplification","for_polynomials","with_minus"]))]; |
291 moveActiveRoot 1; |
291 moveActiveRoot 1; |
292 autoCalculate' 1 CompleteCalc; |
292 autoCalculate 1 CompleteCalc; |
293 val ((pt,p),_) = get_calc 1; show_pt pt; |
293 val ((pt,p),_) = get_calc 1; show_pt pt; |
294 if p = ([], Res) andalso |
294 if p = ([], Res) andalso |
295 term2str (get_obj g_res pt (fst p)) = "3 + 3 * r + 6 * s - 8 * t" |
295 term2str (get_obj g_res pt (fst p)) = "3 + 3 * r + 6 * s - 8 * t" |
296 then () else error "polyminus.sml: Vereinfache 140 d)"; |
296 then () else error "polyminus.sml: Vereinfache 140 d)"; |
297 |
297 |
300 CalcTree [(["Term (3*e - 6*f - 8*e - 4*f + 5*e + 7*f)", |
300 CalcTree [(["Term (3*e - 6*f - 8*e - 4*f + 5*e + 7*f)", |
301 "normalform N"], |
301 "normalform N"], |
302 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
302 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
303 ["simplification","for_polynomials","with_minus"]))]; |
303 ["simplification","for_polynomials","with_minus"]))]; |
304 moveActiveRoot 1; |
304 moveActiveRoot 1; |
305 autoCalculate' 1 CompleteCalc; |
305 autoCalculate 1 CompleteCalc; |
306 val ((pt,p),_) = get_calc 1; show_pt pt; |
306 val ((pt,p),_) = get_calc 1; show_pt pt; |
307 if p = ([], Res) andalso |
307 if p = ([], Res) andalso |
308 term2str (get_obj g_res pt (fst p)) = "- (3 * f)" |
308 term2str (get_obj g_res pt (fst p)) = "- (3 * f)" |
309 then () else error "polyminus.sml: Vereinfache 139 c)"; |
309 then () else error "polyminus.sml: Vereinfache 139 c)"; |
310 |
310 |
313 CalcTree [(["Term (8*u - 5*v - 5*u + 7*v - 6*u - 3*v)", |
313 CalcTree [(["Term (8*u - 5*v - 5*u + 7*v - 6*u - 3*v)", |
314 "normalform N"], |
314 "normalform N"], |
315 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
315 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
316 ["simplification","for_polynomials","with_minus"]))]; |
316 ["simplification","for_polynomials","with_minus"]))]; |
317 moveActiveRoot 1; |
317 moveActiveRoot 1; |
318 autoCalculate' 1 CompleteCalc; |
318 autoCalculate 1 CompleteCalc; |
319 val ((pt,p),_) = get_calc 1; show_pt pt; |
319 val ((pt,p),_) = get_calc 1; show_pt pt; |
320 if p = ([], Res) andalso |
320 if p = ([], Res) andalso |
321 term2str (get_obj g_res pt (fst p)) = "-3 * u - v" |
321 term2str (get_obj g_res pt (fst p)) = "-3 * u - v" |
322 then () else error "polyminus.sml: Vereinfache 139 b)"; |
322 then () else error "polyminus.sml: Vereinfache 139 b)"; |
323 |
323 |
326 CalcTree [(["Term (2*u - 3*v - 6*u + 5*v)", |
326 CalcTree [(["Term (2*u - 3*v - 6*u + 5*v)", |
327 "normalform N"], |
327 "normalform N"], |
328 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
328 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
329 ["simplification","for_polynomials","with_minus"]))]; |
329 ["simplification","for_polynomials","with_minus"]))]; |
330 moveActiveRoot 1; |
330 moveActiveRoot 1; |
331 autoCalculate' 1 CompleteCalc; |
331 autoCalculate 1 CompleteCalc; |
332 val ((pt,p),_) = get_calc 1; show_pt pt; |
332 val ((pt,p),_) = get_calc 1; show_pt pt; |
333 if p = ([], Res) andalso |
333 if p = ([], Res) andalso |
334 term2str (get_obj g_res pt (fst p)) = "-4 * u + 2 * v" |
334 term2str (get_obj g_res pt (fst p)) = "-4 * u + 2 * v" |
335 then () else error "polyminus.sml: Vereinfache 138 a)"; |
335 then () else error "polyminus.sml: Vereinfache 138 a)"; |
336 |
336 |
356 "mitWert [e = 1, f = 2, g = 3]", |
356 "mitWert [e = 1, f = 2, g = 3]", |
357 "Geprueft b"], |
357 "Geprueft b"], |
358 ("PolyMinus",["polynom","probe"], |
358 ("PolyMinus",["polynom","probe"], |
359 ["probe","fuer_polynom"]))]; |
359 ["probe","fuer_polynom"]))]; |
360 moveActiveRoot 1; |
360 moveActiveRoot 1; |
361 autoCalculate' 1 CompleteCalc; |
361 autoCalculate 1 CompleteCalc; |
362 (* autoCalculate' 1 CompleteCalcHead; |
362 (* autoCalculate 1 CompleteCalcHead; |
363 autoCalculate' 1 (Step 1); |
363 autoCalculate 1 (Step 1); |
364 autoCalculate' 1 (Step 1); |
364 autoCalculate 1 (Step 1); |
365 val ((pt,p),_) = get_calc 1; term2str (get_obj g_res pt (fst p)); |
365 val ((pt,p),_) = get_calc 1; term2str (get_obj g_res pt (fst p)); |
366 @@@@@WN081114 gives "??.empty", all "Pruefe" are the same, |
366 @@@@@WN081114 gives "??.empty", all "Pruefe" are the same, |
367 although analogies work in interface.sml: FIXME.WN081114 in "Pruefe"*) |
367 although analogies work in interface.sml: FIXME.WN081114 in "Pruefe"*) |
368 val ((pt,p),_) = get_calc 1; |
368 val ((pt,p),_) = get_calc 1; |
369 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "11 = 11" |
369 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "11 = 11" |
377 CalcTree [(["Term (2*u - 5 - (3 - 4*u) + (8*u + 9))", |
377 CalcTree [(["Term (2*u - 5 - (3 - 4*u) + (8*u + 9))", |
378 "normalform N"], |
378 "normalform N"], |
379 ("PolyMinus",["klammer","polynom","vereinfachen"], |
379 ("PolyMinus",["klammer","polynom","vereinfachen"], |
380 ["simplification","for_polynomials","with_parentheses"]))]; |
380 ["simplification","for_polynomials","with_parentheses"]))]; |
381 moveActiveRoot 1; |
381 moveActiveRoot 1; |
382 autoCalculate' 1 CompleteCalc; |
382 autoCalculate 1 CompleteCalc; |
383 val ((pt,p),_) = get_calc 1; |
383 val ((pt,p),_) = get_calc 1; |
384 if p = ([], Res) andalso |
384 if p = ([], Res) andalso |
385 term2str (get_obj g_res pt (fst p)) = "1 + 14 * u" |
385 term2str (get_obj g_res pt (fst p)) = "1 + 14 * u" |
386 then () else error "polyminus.sml: Vereinfache (2*u - 5 - (3 - ..."; |
386 then () else error "polyminus.sml: Vereinfache (2*u - 5 - (3 - ..."; |
387 show_pt pt; |
387 show_pt pt; |
392 "mitWert [u = 2]", |
392 "mitWert [u = 2]", |
393 "Geprueft b"], |
393 "Geprueft b"], |
394 ("PolyMinus",["polynom","probe"], |
394 ("PolyMinus",["polynom","probe"], |
395 ["probe","fuer_polynom"]))]; |
395 ["probe","fuer_polynom"]))]; |
396 moveActiveRoot 1; |
396 moveActiveRoot 1; |
397 autoCalculate' 1 CompleteCalc; |
397 autoCalculate 1 CompleteCalc; |
398 val ((pt,p),_) = get_calc 1; |
398 val ((pt,p),_) = get_calc 1; |
399 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "29 = 29" |
399 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "29 = 29" |
400 then () else error "polyminus.sml: Probe 29 = 29"; |
400 then () else error "polyminus.sml: Probe 29 = 29"; |
401 show_pt pt; |
401 show_pt pt; |
402 |
402 |
407 CalcTree [(["Term (5*e + 6*f - 8*g - 9 - 7*e - 4*f + 10*g + 12)", |
407 CalcTree [(["Term (5*e + 6*f - 8*g - 9 - 7*e - 4*f + 10*g + 12)", |
408 "normalform N"], |
408 "normalform N"], |
409 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
409 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
410 ["simplification","for_polynomials","with_minus"]))]; |
410 ["simplification","for_polynomials","with_minus"]))]; |
411 moveActiveRoot 1; |
411 moveActiveRoot 1; |
412 autoCalculate' 1 CompleteCalcHead; |
412 autoCalculate 1 CompleteCalcHead; |
413 autoCalculate' 1 (Step 1); |
413 autoCalculate 1 (Step 1); |
414 autoCalculate' 1 (Step 1); |
414 autoCalculate 1 (Step 1); |
415 val ((pt,p),_) = get_calc 1; show_pt pt; |
415 val ((pt,p),_) = get_calc 1; show_pt pt; |
416 "----- 1 ^^^"; |
416 "----- 1 ^^^"; |
417 fetchApplicableTactics 1 0 p; |
417 fetchApplicableTactics 1 0 p; |
418 val appltacs = sel_appl_atomic_tacs pt p; |
418 val appltacs = sel_appl_atomic_tacs pt p; |
419 applyTactic 1 p (hd appltacs) (*addiere_x_plus_minus*); |
419 applyTactic 1 p (hd appltacs) (*addiere_x_plus_minus*); |
453 (*<CALCMESSAGE> failure </CALCMESSAGE> |
453 (*<CALCMESSAGE> failure </CALCMESSAGE> |
454 applyTactic 1 p (hd (sel_appl_atomic_tacs pt p)) (**); |
454 applyTactic 1 p (hd (sel_appl_atomic_tacs pt p)) (**); |
455 val ((pt,p),_) = get_calc 1; show_pt pt; |
455 val ((pt,p),_) = get_calc 1; show_pt pt; |
456 "----- 7 ^^^"; |
456 "----- 7 ^^^"; |
457 *) |
457 *) |
458 autoCalculate' 1 CompleteCalc; |
458 autoCalculate 1 CompleteCalc; |
459 val ((pt,p),_) = get_calc 1; show_pt pt; |
459 val ((pt,p),_) = get_calc 1; show_pt pt; |
460 (*independent from failure above: met_simp_poly_minus not confluent: |
460 (*independent from failure above: met_simp_poly_minus not confluent: |
461 (([9], Res), - (8 * g) + 10 * g + (3 - 2 * e + 2 * f)), |
461 (([9], Res), - (8 * g) + 10 * g + (3 - 2 * e + 2 * f)), |
462 (([], Res), - (8 * g) + 10 * g + (3 - 2 * e + 2 * f))] |
462 (([], Res), - (8 * g) + 10 * g + (3 - 2 * e + 2 * f))] |
463 ~~~~~~~~~~~###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*) |
463 ~~~~~~~~~~~###~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*) |
468 CalcTree [(["Term (- (8 * g) + 10 * g + h)", |
468 CalcTree [(["Term (- (8 * g) + 10 * g + h)", |
469 "normalform N"], |
469 "normalform N"], |
470 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
470 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
471 ["simplification","for_polynomials","with_minus"]))]; |
471 ["simplification","for_polynomials","with_minus"]))]; |
472 moveActiveRoot 1; |
472 moveActiveRoot 1; |
473 autoCalculate' 1 CompleteCalc; |
473 autoCalculate 1 CompleteCalc; |
474 val ((pt,p),_) = get_calc 1; show_pt pt; |
474 val ((pt,p),_) = get_calc 1; show_pt pt; |
475 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "2 * g + h" |
475 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "2 * g + h" |
476 then () else error "polyminus.sml: addiere_vor_minus"; |
476 then () else error "polyminus.sml: addiere_vor_minus"; |
477 |
477 |
478 |
478 |
481 CalcTree [(["Term (- (8 * g) + 10 * g + f)", |
481 CalcTree [(["Term (- (8 * g) + 10 * g + f)", |
482 "normalform N"], |
482 "normalform N"], |
483 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
483 ("PolyMinus",["plus_minus","polynom","vereinfachen"], |
484 ["simplification","for_polynomials","with_minus"]))]; |
484 ["simplification","for_polynomials","with_minus"]))]; |
485 moveActiveRoot 1; |
485 moveActiveRoot 1; |
486 autoCalculate' 1 CompleteCalc; |
486 autoCalculate 1 CompleteCalc; |
487 val ((pt,p),_) = get_calc 1; show_pt pt; |
487 val ((pt,p),_) = get_calc 1; show_pt pt; |
488 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "f + 2 * g" |
488 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "f + 2 * g" |
489 then () else error "polyminus.sml: tausche_vor_plus"; |
489 then () else error "polyminus.sml: tausche_vor_plus"; |
490 |
490 |
491 "----------- pbl binom polynom vereinfachen p.39 -----------------"; |
491 "----------- pbl binom polynom vereinfachen p.39 -----------------"; |
525 CalcTree [(["Term ((3*a + 2) * (4*a - 1))", |
525 CalcTree [(["Term ((3*a + 2) * (4*a - 1))", |
526 "normalform N"], |
526 "normalform N"], |
527 ("PolyMinus",["binom_klammer","polynom","vereinfachen"], |
527 ("PolyMinus",["binom_klammer","polynom","vereinfachen"], |
528 ["simplification","for_polynomials","with_parentheses_mult"]))]; |
528 ["simplification","for_polynomials","with_parentheses_mult"]))]; |
529 moveActiveRoot 1; |
529 moveActiveRoot 1; |
530 autoCalculate' 1 CompleteCalc; |
530 autoCalculate 1 CompleteCalc; |
531 val ((pt,p),_) = get_calc 1; show_pt pt; |
531 val ((pt,p),_) = get_calc 1; show_pt pt; |
532 if p = ([], Res) andalso |
532 if p = ([], Res) andalso |
533 term2str (get_obj g_res pt (fst p)) = "-2 + 12 * a ^^^ 2 + 5 * a" |
533 term2str (get_obj g_res pt (fst p)) = "-2 + 12 * a ^^^ 2 + 5 * a" |
534 then () else error "polyminus.sml: Vereinfache (2*u - 5 - (3 - ..."; |
534 then () else error "polyminus.sml: Vereinfache (2*u - 5 - (3 - ..."; |
535 |
535 |
539 reset_states (); |
539 reset_states (); |
540 CalcTree [(["Term (8*(a - q) + a - 2*q + 3*(a - 2*q))", "normalform N"], |
540 CalcTree [(["Term (8*(a - q) + a - 2*q + 3*(a - 2*q))", "normalform N"], |
541 ("PolyMinus",["binom_klammer","polynom","vereinfachen"], |
541 ("PolyMinus",["binom_klammer","polynom","vereinfachen"], |
542 ["simplification","for_polynomials","with_parentheses_mult"]))]; |
542 ["simplification","for_polynomials","with_parentheses_mult"]))]; |
543 moveActiveRoot 1; |
543 moveActiveRoot 1; |
544 autoCalculate' 1 CompleteCalc; |
544 autoCalculate 1 CompleteCalc; |
545 val ((pt,p),_) = get_calc 1; show_pt pt; |
545 val ((pt,p),_) = get_calc 1; show_pt pt; |
546 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "12 * a - 16 * q" |
546 if p = ([], Res) andalso term2str (get_obj g_res pt (fst p)) = "12 * a - 16 * q" |
547 then () else error "pbl binom polynom vereinfachen: cube"; |
547 then () else error "pbl binom polynom vereinfachen: cube"; |
548 |
548 |
549 "----------- refine Vereinfache ----------------------------------"; |
549 "----------- refine Vereinfache ----------------------------------"; |