((** (#1=(F F #2=(|Fraction| #3=(|Integer|))) (#3# (|divide| #4=(|Record| (|:| |quotient| #3#) (|:| |remainder| #3#)) #3# #3#)) (#2# (|numer| #3# #2#) (|denom| #3# #2#)) (|locals| (|qr| . #4#)) (|arguments| (|x| . F) (|q| . #2#)) (F (|coerce| . #5=(F #6=(|Integer|))) (** . #7=(F F (|Integer|))) (* . #8=(F F F))))) (UP2R ((#9=(|Union| #10=(|SparseUnivariatePolynomial| R) "failed") #11=(|SparseUnivariatePolynomial| F)) (#12=(|Union| R #13="failed") (|case| #14=(|Boolean|) #12# #13#) (|autoCoerce| R #12#)) (#9# (|autoCoerce| #9# #10#)) (#10# (|monomial| #10# R . #15=(#16=(|NonNegativeInteger|))) (|Zero| #10#) (+ #10# #10# #10#)) (#11# (~= #17=(|Boolean|) #11# #11#) (|reductum| #11# #11#) (|leadingCoefficient| F #11#) (|degree| #16# #11#) (|Zero| #11#)) (|locals| (|r| . #18=(|Union| R . #19=("failed"))) (|ans| . #10#)) (|arguments| (|p| . #11#)) (R (|Zero| . #20=(R))) (F (|retractIfCan| . #21=(#18# F)) (|Zero| . #22=(F))))) (|belong?| (((|Boolean|) #23=(|BasicOperator|)) (#24=(|BasicOperator|) (|has?| #25=(|Boolean|) #24# #26=(|Identifier|))) (|arguments| (|op| . #23#)))) (|constructor| (NIL ((|CommonOperators|) (|operator| #24# (|Symbol|))) ((|BasicOperatorFunctions1| F) (|evaluate| #27=(|BasicOperator|) #27# (|Mapping| F (|List| F))) (|derivative| #27# #27# (|List| (|Mapping| F (|List| F))))) (#24# (|setProperty| #24# #24# #26# (|None|))) (|locals| (|oproot| . #24#) (|opalg| . #24#) (|dumvar| . F)) (F (|coerce| F #28=(|Symbol|))) ($ (|droot| . #29=(#30=(|OutputForm|) #31=(|List| F)))))) (|dalg| (((|OutputForm|) #32=(|List| F)) (#32# (|second| F #32#)) (|arguments| (|l| . #32#)) (F (|coerce| . #33=((|OutputForm|) F))))) (|definingPolynomial| ((F F) (#34=(|Union| #35=(|Kernel| F) "failed") (|case| #14# #34# #35#) (|autoCoerce| #35# #34#)) (#36=(|List| F) (|second| F #36#) (|first| F #36#)) (#35# (|is?| #37=(|Boolean|) #35# . #38=((|BasicOperator|))) (|argument| #36# #35#)) (|locals| (|r| . #39=(|Union| (|Kernel| F) . #19#)) (|k| |Kernel| F) (#:G560 . #37#) (#:G559 . #37#)) (|arguments| (|x| . F)) (F (|retractIfCan| #39# F) (|retract| . #40=(#6# F)) (- F F F) (** . #7#)))) (|droot| (#29# (#30# (|root| #30# #30# #30#)) (#31# (|second| F #31#) (|first| F #31#)) (#41=(|Integer|) (|coerce| (|OutputForm|) #41#) (= #42=(|Boolean|) #41# #41#)) (|locals| (|x| |OutputForm|) (|n| . F)) (|arguments| (|l| . #31#)) (F (|retract| . #40#) (|coerce| . #33#) (= . #43=(#44=(|Boolean|) F F))))) (|dvalg| ((F #45=(|List| F) #46=(|Symbol|)) (#47=(|SparseUnivariatePolynomial| F) (|map| #47# (|Mapping| F F) #47#) (|elt| F #47# F) (|differentiate| #47# #47#)) (#45# (|second| F #45#) (|first| F #45#)) (#48=(|Fraction| #47#) (|numer| #47# #48#)) (|locals| (|p| . #47#) (|alpha| . F)) (|arguments| (|x| . #46#) (|l| . #45#)) (F (|univariate| . #49=(#48# F (|Kernel| F))) (|retract| . #50=((|Kernel| F) F)) (|kernel| . #51=(F (|BasicOperator|) (|List| F))) (|differentiate| F F #28#) (/ . #52=(F F F)) (- . #53=(F F))))) (|dvroot| ((F #54=(|List| F)) (#55=(|SparseMultivariatePolynomial| R (|Kernel| F)) (|One| #55#)) (#54# (|second| F #54#) (|first| F #54#)) (#56=(|Integer|) (|One| #56#) (- #56# #56# #56#)) (#2# (/ #2# #3# #3#)) (|locals| (|n| . #6#)) (|arguments| (|l| . #54#)) (R (|One| . #57=(R))) (F (|retract| . #40#) (|coerce| . #5#) (|One| . #58=(F)) (/ . #52#)) ($ (** . #1#)))) (|hackroot| ((F F #59=(|Integer|)) (#60=(|Union| #61=(|Integer|) "failed") (|case| #14# #60# #61#) (|autoCoerce| #61# #60#)) (#62=(|SparseMultivariatePolynomial| R (|Kernel| F)) (|retractIfCan| #63=(|Union| (|Integer|) "failed") #62#) (|one?| #64=(|Boolean|) #62#)) (#59# (|positive?| #42# #59#) (|One| #59#) (= #42# #59# #59#)) (#65=(|Fraction| (|Integer|)) (|coerce| #65# . #66=((|Integer|))) (|One| #65#) (/ #65# #65# #65#)) (|locals| (|rx| . #63#) (|dx| . #62#) (#:G550 . #44#) (#:G549 . #42#) (#:G548 . #64#)) (|arguments| (|x| . F) (|n| . #59#)) (R (|One| . #57#)) (F (|numer| . #67=(#68=(|SparseMultivariatePolynomial| R (|Kernel| F)) F)) (|kernel| . #51#) (|denom| . #69=(#62# F)) (|coerce| . #5#) (|One| . #58#) (= . #43#) (/ . #52#) (- . #53#) (+ F F F)) ($ (** . #1#)))) (|ialg| ((F #70=(|List| F)) (#47# (|degree| #16# #47#)) (#16# (|positive?| #71=(|Boolean|) #16#)) (#70# (|second| F #70#) (|first| F #70#)) (#48# (|numer| #47# #48#) (|denom| #47# #48#)) (|locals| (|x| . F) (|p| . F) (|f| . #48#) (#:G541 . #71#)) (|arguments| (|l| . #70#)) (F (|univariate| . #49#) (|retract| . #50#)) ($ (|inrootof| . #72=(F #73=(|SparseUnivariatePolynomial| F) F))))) (|inroot| ((F #74=(|List| F)) (#75=(|Union| R "failed") (|case| #14# #75# R) (|autoCoerce| R #75#)) (#76=(|Union| #77=(|Record| (|:| |var| (|Kernel| F)) (|:| |exponent| (|Integer|))) "failed") (|case| #14# #76# #77#) (|autoCoerce| #77# #76#)) (#74# (|second| F #74#) (|first| F #74#) (|#| (|NonNegativeInteger|) #74#)) (#78=(|Kernel| F) (|is?| #37# #78# . #38#) (|argument| (|List| F) #78#)) (#79=(|Integer|) (|zero?| #42# #79#) (|one?| #42# #79#) (= #42# #79# #79#) (* #79# (|Integer|) #79#)) (#2# (/ #2# #3# #3#)) (#14# (|false| #14#)) (|locals| (|x| . F) (|u| . #76#) (|r| . #18#) (|pr| |Record| (|:| |var| #78#) (|:| |exponent| (|Integer|))) (|n| . #6#) (#:G556 . #14#) (#:G555 . #42#) (#:G554 . #37#) (#:G553 . #42#) (#:G552 . #80=(|Boolean|)) (#:G551 . #42#)) (|arguments| (|l| . #74#)) (F (|retractIfCan| . #21#) (|retract| . #40#) (|one?| #80# F) (|isExpt| #76# F)) ($ (|iroot| . #81=(F R #82=(|Integer|))) (** . #1#)))) (|inroot0| ((F F #83=(|Integer|) #84=(|Boolean|) #85=(|Boolean|)) (#86=(|Union| #87=(|Integer|) "failed") (|coerce| #87# #86#) (|case| #14# #86# #87#) (|autoCoerce| #87# #86#)) (#68# (|retractIfCan| #63# #68#)) (#88=(|PolynomialRoots| (|IndexedExponents| (|Kernel| F)) (|Kernel| F) R (|SparseMultivariatePolynomial| R (|Kernel| F)) F) (|qroot| #89=(|Record| #90=(|:| |exponent| #91=(|NonNegativeInteger|)) (|:| |coef| F) (|:| |radicand| F)) #92=(|Fraction| #93=(|Integer|)) #91#)) (#83# (|exquo| (|Union| #83# "failed") #83# #83#)) (#92# (|coerce| #92# . #66#) (/ #92# #93# #93#)) (#14# (|true| #14#)) (|locals| (|rn| . #63#) (|rec| . #89#) (|rd| . #63#)) (|arguments| (|x| . F) (|num?| . #84#) (|n| . #83#) (|den?| . #85#)) (F (|numer| . #67#) (|denom| . #69#) (|coerce| F (|SparseMultivariatePolynomial| R (|Kernel| F))) (/ . #52#) (** . #7#) (* . #8#)))) (|inrootof| (#72# (#94=(|Union| #95=(|Symbol|) "failed") (|case| #14# #94# #95#) (|autoCoerce| #95# #94#)) (#9# (|case| #14# #9# #10#) (|autoCoerce| #10# #9#)) (#73# (|reductum| #73# #73#) (|monomial?| #17# #73#) (|leadingCoefficient| F #73#) (|elt| F #73# F) (|degree| #16# #73#)) (#16# (|one?| #71# #16#) (|Zero| #16#) (<= #71# #16# #16#)) (|locals| (|rx| . #96=(|Union| #28# . #19#)) (|r| . #9#) (|d| . #16#) (#:G547 . #71#) (#:G546 . #17#) (#:G545 . #71#) (#:G544 . #17#)) (|arguments| (|x| . F) (|q| . #73#)) (R (|rootOf| R (|SparseUnivariatePolynomial| R) (|Symbol|)) (|Zero| . #20#)) (F (|retractIfCan| #96# F) (|kernel| . #51#) (|coerce| . #97=(F R)) (|Zero| . #22#) (/ . #52#) (- . #53#)))) (|iroot| (#81# (#82# (|odd?| #42# #82#)) (|locals| (#:G558 . #44#) (#:G557 . #42#)) (|arguments| (|r| . R) (|n| . #82#)) (R (|nthRoot| R R (|Integer|)) (|before?| #44# R R) (|Zero| . #20#)) (F (|coerce| . #97#) (|Zero| . #22#)))) (|iroot0| ((F R #98=(|Integer|)) (#88# (|rroot| #99=(|Record| #90# (|:| |coef| F) (|:| |radicand| F)) R #91#)) (|locals| (|rec| . #99#)) (|arguments| (|r| . R) (|n| . #98#)) (F (* . #8#)))) (|lzero| ((F #100=(|List| F)) (|arguments| (|l| . #100#)) (F (|Zero| . #22#)))) (|minPoly| ((#101=(|SparseUnivariatePolynomial| F) #102=(|Kernel| F)) (#101# (|monomial| #101# F . #15#) (|coerce| #101# F) (- #101# #101# #101#)) (#16# (|One| #16#)) ((|List| F) (|second| F #103=(|List| F)) (|first| F #103#)) (#102# (|is?| #37# #102# . #38#) (|argument| #103# #102#)) (#48# (|numer| #47# #48#)) (|locals| (#:G563 . #37#) (#:G562 . #37#) (#:G561 . #37#)) (|arguments| (|k| . #102#)) (R (|One| . #57#)) (F (|univariate| . #49#) (|retract| . #50#) (|coerce| . #104=(F (|Kernel| F))) (|One| . #58#)))) (|operator| (((|BasicOperator|) #105=(|BasicOperator|)) (#24# (|is?| #25# #24# (|Symbol|))) (|locals| (#:G543 . #25#) (#:G542 . #25#)) (|arguments| (|op| . #105#)))) (|rootOf| ((F #106=(|SparseUnivariatePolynomial| F) #107=(|Symbol|)) (#108=(|Union| F #109="failed") (|case| #14# #108# #109#) (|autoCoerce| F #108#)) (#106# (|retractIfCan| #110=(|Union| F "failed") #106#) (|degree| #16# #106#)) (#16# (|positive?| #71# #16#)) (#111=(|Kernel| F) (|kernel| #111# (|Symbol|))) (#48# (|numer| #47# #48#) (|denom| #47# #48#)) (|locals| (|r| . #110#) (|n| . #47#) (|k| . #111#) (|f| . #48#) (#:G540 . #71#)) (|arguments| (|x| . #107#) (|p| . #106#)) (F (|univariate| . #49#) (|coerce| . #104#)) ($ (|inrootof| . #72#)))))