(in-package :5am-division) (let* ((f (string->poly "x^2" '(x y))) (y-sq (string->poly "y^2" '(x y))) (fl (cdr (string->poly "[x+y,x-2*y]" '(x y)))) (quotients (cdr (string->poly "[x-y,0]" '(x y)))) (one (make-instance 'rational-field :value 1))) (assert (universal-equalp (multiple-value-list (normal-form f fl)) (list y-sq one 2))) (assert (universal-equalp (multiple-value-list (poly-pseudo-divide f fl)) (list quotients y-sq one 2))) ;;(assert (buchberger-criterion fl)) )