((|NFtoSF|
(((|DoubleFloat|) #1=(|Float|))
(#2=(|NonNegativeInteger|) (|Zero| . #3=(#2#)))
(#4=(|Integer|) (|Zero| . #5=(#4#)))
(#6=(|Float|) (|convert| (|DoubleFloat|) #6#))
(#7=(|DoubleFloat|) (|Zero| . #8=(#7#)) (+ . #9=(#7# #7# #7#)))
(|arguments| (|x| . #1#))))
(|RNPolyToUPoly|
((#10=(|SparseUnivariatePolynomial| #11=(|Fraction| (|Integer|)))
#12=(|Polynomial| #13=(|Fraction| (|Integer|))))
(#10# (|monomial| #10# #11# . #14=((|NonNegativeInteger|))) (|Zero| #10#)
(+ #10# #10# #10#))
(#12# (|zero?| #15=(|Boolean|) #12#)
(|totalDegree| #16=(|NonNegativeInteger|) #12#) (|reductum| #12# #12#)
(|leadingCoefficient| #13# #12#))
(|locals| (#:G543 . #15#)) (|arguments| (|p| . #12#))))
(|RNtoNF|
((#17=(|Float|) #18=(|Fraction| (|Integer|)))
(#6# (|coerce| #6# (|Fraction| #19=(|Integer|))))
(|arguments| (|r| . #18#))))
(|RNtoSF|
((#20=(|DoubleFloat|) #21=(|Fraction| (|Integer|)))
(#7# (|coerce| #7# (|Fraction| #22=(|Integer|))))
(|arguments| (|r| . #21#))))
(|SFPolyToUPoly|
((#23=(|SparseUnivariatePolynomial| #24=(|DoubleFloat|))
#25=(|Polynomial| #26=(|DoubleFloat|)))
(#23# (|monomial| #23# #24# . #14#) (|Zero| #23#) (+ #23# #23# #23#))
(#25# (|zero?| #15# #25#) (|totalDegree| #16# #25#) (|reductum| #25# #25#)
(|leadingCoefficient| #26# #25#))
(|locals| (#:G542 . #15#)) (|arguments| (|p| . #25#))))
(|SFtoNF|
(((|Float|) #27=(|DoubleFloat|)) (#7# (|convert| (|Float|) #7#))
(|arguments| (|x| . #27#))))
(|coerce|
((#28=(|OutputForm|) $) (#29=(|Symbol|) (|coerce| (|OutputForm|) #29#))
(#30=(|Polynomial| (|Integer|)) (|coerce| (|OutputForm|) #30#))
(#31=(|Point| (|DoubleFloat|)) (|coerce| (|OutputForm|) #31#))
(#28# (|vconcat| #28# #28# #28#) (|message| #28# (|String|))
(|hconcat| #28# (|List| #28#)))
(#32=(|List| #33=(|OutputForm|)) (|nil| #32#) (|cons| #32# #33# #32#))
(#34=(|Fraction| (|Integer|)) (|coerce| (|OutputForm|) #34#))
(|locals| (|zip| . #28#) (|yy| |OutputForm|) (|yLo| |OutputForm|)
(|yHi| . #35=(|OutputForm|)) (|xx| |OutputForm|) (|xLo| |OutputForm|)
(|xHi| |OutputForm|) (|pp| |OutputForm|) (|ll| |List| (|OutputForm|))
(|les| . #28#) (|l| |List| #35#) (|ff| . #28#) (|f| . #32#) (|com| . #28#))
(|arguments| (|acplot| . $))))
(|coerceCoefsToRNs|
((#36=(|Polynomial| #37=(|Fraction| (|Integer|)))
#38=(|Polynomial| (|Integer|)))
((|PolynomialFunctions2| #39=(|Integer|) #40=(|Fraction| (|Integer|)))
(|map| (|Polynomial| #40#) (|Mapping| #40# #39#) (|Polynomial| #39#)))
(#40# (|coerce| #40# . #41=((|Integer|)))) (|arguments| (|p| . #38#))))
(|coerceCoefsToSFs|
((#42=(|Polynomial| (|DoubleFloat|)) #43=(|Polynomial| (|Integer|)))
((|PolynomialFunctions2| #44=(|Integer|) #45=(|DoubleFloat|))
(|map| (|Polynomial| #45#) (|Mapping| #45# #44#) (|Polynomial| #44#)))
(#7# (|coerce| . #46=(#7# #22#))) (|arguments| (|p| . #43#))))
(|computeNextPt|
((#47=(|Record| (|:| |newPt| #48=(|Point| (|DoubleFloat|)))
(|:| |type| (|String|)))
#49=(|Polynomial| #50=(|DoubleFloat|)) #51=(|Polynomial| (|DoubleFloat|))
#52=(|Polynomial| (|DoubleFloat|)) #53=(|Symbol|) #54=(|Symbol|)
#55=(|Point| (|DoubleFloat|)) #56=(|Point| (|DoubleFloat|))
#57=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|)))
#58=(|DoubleFloat|) #59=(|DoubleFloat|) #60=(|PositiveInteger|)
#61=(|List| #62=(|Point| (|DoubleFloat|)))
#63=(|List| (|Point| (|DoubleFloat|))))
(#64=(|Union| #65=(|Point| (|DoubleFloat|)) #66="failed")
(|coerce| #65# #64#) (|case| #67=(|Boolean|) #64# #66#)
(|autoCoerce| #65# #64#))
(#68=(|Union| #69=(|DoubleFloat|) #70="failed") (|case| #67# #68# #70#)
(|autoCoerce| #69# #68#))
(#29# (= . #71=((|Boolean|) #29# #29#)))
(#72=(|String|) (= . #73=(#74=(|Boolean|) #72# #72#)))
(#49# (|ground| #50# #49#) (|eval| #49# #49# #75=(|Symbol|) #50#))
(#76=(|PointPackage| #77=(|DoubleFloat|))
(|yCoord| . #78=(#77# (|Point| #77#)))
(|xCoord| . #79=(#77# (|Point| #77#))))
(#61# (|null| #80=(|Boolean|) #61#) (|nil| #61#) (|cons| #61# #62# #61#)
(= #80# #61# #61#))
(#7# (|min| . #81=(#7# #7# #7#)) (|abs| . #82=(#7# #7#))
(>= . #83=(#84=(|Boolean|) #7# #7#)) (> . #85=(#84# #7# #7#))
(= . #86=(#84# #7# #7#)) (<= . #87=(#84# #7# #7#)) (< . #88=(#84# #7# #7#))
(/ . #89=(#7# #7# #22#)) (- . #90=(#7# #7# #7#)) (+ . #9#)
(* . #91=(#7# #7# #7#)))
(#92=(|Boolean|) (|min| . #93=(#92#)))
(|locals| (|yy| . #77#) (|yPointList| . #61#)
(|yMinSF| . #94=(|DoubleFloat|)) (|yMaxSF| . #95=(|DoubleFloat|))
(|yLo| . #77#) (|yHi| . #77#) (|y2Temp| . #7#) (|y2New| . #68#)
(|y2Approxx| . #7#) (|y2Approx| . #7#) (|y2| . #7#) (|y1| . #77#)
(|y0| . #77#) (|xx| . #77#) (|xPointList| . #61#)
(|xMinSF| . #96=(|DoubleFloat|)) (|xMaxSF| . #97=(|DoubleFloat|))
(|xLo| . #77#) (|xHi| . #77#) (|x2Temp| . #7#) (|x2New| . #68#)
(|x2Approxx| . #7#) (|x2Approx| . #7#) (|x2| |DoubleFloat|) (|x1| . #77#)
(|x0| . #77#) (|py| . #50#) (|px| . #50#)
(|pt2| . #98=(|Point| #99=(|DoubleFloat|))) (|pt1| . #98#) (|pt| . #98#)
(|lookingFor| . #100=(|String|)) (|incVar0| . #54#) (|incVar| . #54#)
(|f| . #23#) (|deltaY| . #7#) (|deltaX| . #7#) (|critPt2| . #64#)
(|critPt1| . #64#) (|critPt| . #64#) (|bdryPt| . #64#) (#:G588 . #84#)
(#:G587 . #84#) (#:G586 . #84#) (#:G585 . #84#) (#:G584 . #84#)
(#:G583 . #84#) (#:G582 . #84#) (#:G581 . #84#))
(|arguments| (|y| . #54#) (|x| . #53#) (|pSF| . #49#) (|p1| . #56#)
(|p0| . #55#) (|err| . #59#) (|dpdySF| . #52#) (|dpdxSF| . #51#)
(|delta| . #58#) (|crits| . #61#) (|corners| . #57#) (|bound| . #60#)
(|bdry| . #63#))))
(|constructor|
(NIL (#101=(|PositiveInteger|) (|One| . #102=(#101#)))
(#2# (|One| . #103=(#2#))) (#4# (- #4# #4#))
(#6# (|float| #6# #19# #19# (|PositiveInteger|)))
(#7# (|float| #7# #22# #22# (|PositiveInteger|)))
(|locals| (TOP . #104=(|String|))
(|Rep| |Join|
(|RecordCategory|
. #105=((|:| |poly| #30#) (|:| |xVar| #106=(|Symbol|))
(|:| |yVar| #107=(|Symbol|)) (|:| |minXVal| #34#)
(|:| |maxXVal| #108=(|Fraction| (|Integer|)))
(|:| |minYVal| #109=(|Fraction| (|Integer|)))
(|:| |maxYVal| #110=(|Fraction| (|Integer|)))
(|:| |bdryPts|
#111=(|Record|
(|:| |left| (|List| (|Point| (|DoubleFloat|))))
(|:| |right| (|List| (|Point| (|DoubleFloat|))))
(|:| |bottom| (|List| (|Point| (|DoubleFloat|))))
(|:| |top| (|List| (|Point| (|DoubleFloat|))))))
(|:| |hTanPts| #112=(|List| (|Point| (|DoubleFloat|))))
(|:| |vTanPts| #113=(|List| (|Point| (|DoubleFloat|))))
(|:| |branches| #114=(|List| (|List| #31#)))))
(CATEGORY |domain|
(SIGNATURE |construct|
(#115=(|Record| . #105#) #30# #106# #107# #34# #108# #109# #110# #111#
#112# #113# #114#))
(SIGNATURE ~= (#67# #115# #115#))
(SIGNATURE |hash| ((|SingleInteger|) #115#))
(SIGNATURE |coerce| ((|OutputForm|) #115#))
(SIGNATURE |elt| (#30# #115# #116="poly"))
(SIGNATURE |elt| (#106# #115# #117="xVar"))
(SIGNATURE |elt| (#107# #115# #118="yVar"))
(SIGNATURE |elt| (#34# #115# #119="minXVal"))
(SIGNATURE |elt| (#108# #115# #120="maxXVal"))
(SIGNATURE |elt| (#109# #115# #121="minYVal"))
(SIGNATURE |elt| (#110# #115# #122="maxYVal"))
(SIGNATURE |elt| (#111# #115# #123="bdryPts"))
(SIGNATURE |elt| (#112# #115# #124="hTanPts"))
(SIGNATURE |elt| (#113# #115# #125="vTanPts"))
(SIGNATURE |elt| (#114# #115# #126="branches"))
(SIGNATURE |setelt| (#30# #115# #116# #30#))
(SIGNATURE |setelt| (#106# #115# #117# #106#))
(SIGNATURE |setelt| (#107# #115# #118# #107#))
(SIGNATURE |setelt| (#34# #115# #119# #34#))
(SIGNATURE |setelt| (#108# #115# #120# #108#))
(SIGNATURE |setelt| (#109# #115# #121# #109#))
(SIGNATURE |setelt| (#110# #115# #122# #110#))
(SIGNATURE |setelt| (#111# #115# #123# #111#))
(SIGNATURE |setelt| (#112# #115# #124# #112#))
(SIGNATURE |setelt| (#113# #115# #125# #113#))
(SIGNATURE |setelt| (#114# #115# #126# #114#))
(SIGNATURE |copy| (#115# #115#))))
(PLOTERR . #7#) (NADA . #72#) (EPSILON . #6#) (CRIT . #100#)
(BOTTOM |String|) (BDRY |String|))))
(|dummyFirstPt|
((#127=(|Point| (|DoubleFloat|)) #128=(|Point| (|DoubleFloat|))
#129=(|Polynomial| #130=(|DoubleFloat|))
#131=(|Polynomial| (|DoubleFloat|)) #132=(|Symbol|) #133=(|Symbol|)
#134=(|List| #135=(|Point| (|DoubleFloat|)))
#136=(|List| (|Point| (|DoubleFloat|)))
#137=(|List| (|Point| (|DoubleFloat|)))
#138=(|List| (|Point| (|DoubleFloat|))))
(#129# (|ground| #130# #129#)
(|eval| #129# #129# #139=(|List| #75#) (|List| #130#)))
(#76# (|yCoord| . #78#) (|xCoord| . #79#))
(#134# (|member?| #80# #135# #134#))
(#7# (|Zero| . #8#) (|One| . #140=(#7#)) (< . #88#) (- . #90#) (+ . #9#)
(* . #91#))
(|locals| (|zero| . #7#) (|y1| . #77#) (|x1| . #77#) (|py| . #130#)
(|px| . #130#) (|one| . #7#) (#:G572 . #84#) (#:G571 . #80#)
(#:G570 . #80#) (#:G569 . #80#) (#:G568 . #80#))
(|arguments| (|y| . #133#) (|x| . #132#) (|tp| . #138#) (|rt| . #136#)
(|p1| . #128#) (|lf| . #134#) (|dpdySF| . #131#) (|dpdxSF| . #129#)
(|bt| . #137#))))
(|findPtOnList|
((#64# #141=(|Point| (|DoubleFloat|))
#142=(|List| (|Point| (|DoubleFloat|))))
(#64# (|autoCoerce| #64# #66#)) (|locals| (#:G541 . #143=(|Boolean|)))
(|arguments| (|pt| . #141#) (|pointList| . #142#))))
(|getXMax|
((#97#
#144=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|))))
(|arguments| (|corners| . #144#))))
(|getXMin|
((#96#
#145=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|))))
(|arguments| (|corners| . #145#))))
(|getYMax|
((#95#
#146=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|))))
(|arguments| (|corners| . #146#))))
(|getYMin|
((#94#
#147=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|))))
(|arguments| (|corners| . #147#))))
(|inRect?|
(((|Boolean|) #148=(|List| #149=(|Float|)) #150=(|Float|) #151=(|Float|)
#152=(|Float|) #153=(|Float|))
(#148# (|second| #149# #148#) (|first| #149# #148#))
(#6# (<= . #154=(#155=(|Boolean|) #6# #6#))) (#92# (|false| . #156=(#92#)))
(|locals| (|yy| . #149#) (|xx| . #149#))
(|arguments| (|yMinNF| . #152#) (|yMaxNF| . #153#) (|xMinNF| . #150#)
(|xMaxNF| . #151#) (|point| . #148#))))
(|listBranches|
(((|List| (|List| (|Point| (|DoubleFloat|)))) $)
(|arguments| (|acplot| . $))))
(|listPtsInRect|
((#157=(|List| #158=(|Point| (|DoubleFloat|)))
#159=(|List| #160=(|List| #161=(|Float|))) #162=(|Float|) #163=(|Float|)
#164=(|Float|) #165=(|Float|))
(#157# (|nil| #157#) (|cons| #157# #158# #157#))
(#160# (|second| #161# #160#) (|first| #161# #160#)) (#6# (<= . #154#))
(|locals| (|yy| . #161#) (|xx| . #161#) (|pointList| . #157#))
(|arguments| (|yMin| . #164#) (|yMax| . #165#) (|xMin| . #162#)
(|xMax| . #163#) (|points| . #159#))))
(|listPtsOnHorizBdry|
((#166=(|List| #167=(|Point| (|DoubleFloat|)))
#168=(|Polynomial| #169=(|Fraction| (|Integer|))) #170=(|Symbol|)
#171=(|Fraction| (|Integer|)) #172=(|Float|) #173=(|Float|))
(#174=(|RealSolvePackage|)
(|solve|
. #175=(#176=(|List| #177=(|Float|))
(|Polynomial| (|Fraction| #178=(|Integer|))) #177#)))
(#168# (|eval| #168# #168# #75# #169#))
(#166# (|nil| #166#) (|cons| #166# #167# #166#))
(#6# (< . #179=(#155# #6# #6#)))
(|locals| (|ySF| . #20#) (|roots| . #176#) (|pointList| . #166#)
(|f| . #168#))
(|arguments| (|y0| . #171#) (|y| . #170#) (|xMinNF| . #172#)
(|xMaxNF| . #173#) (|pRN| . #168#))))
(|listPtsOnLoop|
((#180=(|List| (|List| (|Point| (|DoubleFloat|))))
#181=(|Polynomial| #182=(|DoubleFloat|))
#183=(|Polynomial| (|DoubleFloat|)) #184=(|Polynomial| (|DoubleFloat|))
#185=(|Symbol|) #186=(|Symbol|) #187=(|Point| (|DoubleFloat|))
#188=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|)))
#189=(|DoubleFloat|) #190=(|DoubleFloat|) #191=(|PositiveInteger|)
#192=(|List| #193=(|Point| (|DoubleFloat|)))
#194=(|List| (|Point| (|DoubleFloat|))))
(#72# (= . #73#))
(#181# (|ground| #182# #181#) (|eval| #181# #181# #139# (|List| #182#)))
(#76# (|yCoord| . #78#) (|xCoord| . #79#))
(#187# (= (|Boolean|) #187# #187#))
(#192# (|second| #193# #192#) (|remove| #192# #193# #192#)
(|first| #193# #192#) (|cons| #192# #193# #192#))
(#7# (|One| . #140#) (- . #90#))
(|locals| (|y1| . #77#) (|x1| . #77#) (|py| . #182#) (|px| . #182#)
(|ptInfo| . #47#) (|pt1| . #193#) (|pt0| . #193#) (|pointList| . #192#)
(|p2| . #48#) (|p0| . #98#) (#:G580 . #74#) (#:G579 . #74#) (#:G578 . #74#)
(#:G577 . #74#))
(|arguments| (|y| . #186#) (|x| . #185#) (|pSF| . #181#) (|p1| . #187#)
(|err| . #190#) (|dpdySF| . #184#) (|dpdxSF| . #183#) (|delta| . #189#)
(|crits| . #192#) (|corners| . #188#) (|bound| . #191#) (|bdry| . #194#))))
(|listPtsOnSegment|
(((|List| (|List| (|Point| (|DoubleFloat|))))
#195=(|Polynomial| (|DoubleFloat|)) #196=(|Polynomial| (|DoubleFloat|))
#197=(|Polynomial| (|DoubleFloat|)) #198=(|Symbol|) #199=(|Symbol|)
#200=(|Point| (|DoubleFloat|)) #201=(|Point| (|DoubleFloat|))
#202=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|)))
#203=(|DoubleFloat|) #204=(|DoubleFloat|) #205=(|PositiveInteger|)
#206=(|List| #207=(|Point| (|DoubleFloat|)))
(|List| (|Point| (|DoubleFloat|))))
(#72# (= . #73#))
(#206# (|second| #207# #206#) (|remove| #206# #207# #206#)
(|first| #207# #206#) (|cons| #206# #207# #206#))
(|locals| (|ptInfo| . #47#) (|pt1| . #207#) (|pt0| . #207#)
(|pointList| . #206#) (|p2| . #48#) (#:G576 . #74#) (#:G575 . #74#)
(#:G574 . #74#) (#:G573 . #74#))
(|arguments| (|y| . #199#) (|x| . #198#) (|pSF| . #195#) (|p1| . #201#)
(|p0| . #200#) (|err| . #204#) (|dpdySF| . #197#) (|dpdxSF| . #196#)
(|delta| . #203#) (|crits| . #206#) (|corners| . #202#) (|bound| . #205#)
(|bdry| . #206#))))
(|listPtsOnVertBdry|
((#208=(|List| #209=(|Point| (|DoubleFloat|)))
#210=(|Polynomial| #211=(|Fraction| (|Integer|))) #212=(|Symbol|)
#213=(|Fraction| (|Integer|)) #214=(|Float|) #215=(|Float|))
(#174# (|solve| . #175#)) (#210# (|eval| #210# #210# #75# #211#))
(#208# (|nil| #208#) (|cons| #208# #209# #208#)) (#6# (<= . #154#))
(|locals| (|xSF| . #20#) (|roots| . #176#) (|pointList| . #208#)
(|f| . #210#))
(|arguments| (|yMinNF| . #214#) (|yMaxNF| . #215#) (|x0| . #213#)
(|x| . #212#) (|pRN| . #210#))))
(|makeCorners|
((#216=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|)))
#217=(|DoubleFloat|) #218=(|DoubleFloat|) #219=(|DoubleFloat|)
#220=(|DoubleFloat|))
(|arguments| (|yMinSF| . #219#) (|yMaxSF| . #220#) (|xMinSF| . #217#)
(|xMaxSF| . #218#))))
(|makeGeneralSketch|
(($ #221=(|Polynomial| (|Integer|)) #222=(|Symbol|) #223=(|Symbol|)
#224=(|Fraction| #225=(|Integer|)) (|Fraction| (|Integer|))
(|Fraction| (|Integer|)) (|Fraction| (|Integer|)))
(#174#
(|realSolve|
. #226=(#227=(|List| #176#) (|List| #228=(|Polynomial| #178#))
(|List| (|Symbol|)) #177#)))
(#101# (|One| . #102#)) (#221# (|differentiate| #221# #221# . #229=(#75#)))
(#2# (|One| . #103#) (> . #230=(#231=(|Boolean|) #2# #2#)))
(#157# (|append| #157# #157# #157#)) (#227# (|append| #227# #227# #227#))
(#224# (/ #224# #225# #225#) (- #224# #224#) (* #224# #224# #224#))
(#232=(|Factored| #233=(|Polynomial| (|Integer|)))
(|numberOfFactors| #234=(|NonNegativeInteger|) #232#)
(|nthFactor| #233# #232# (|Integer|)) (|coerce| #232# #233#))
(#7# (|min| . #81#) (/ . #89#) (- . #90#))
(|locals| (|yMinSF| . #20#) (|yMinNF| . #17#) (|yMaxSF| . #20#)
(|yMaxNF| . #17#) (|xMinSF| . #20#) (|xMinNF| . #17#) (|xMaxSF| . #20#)
(|xMaxNF| . #17#) (|vtans| . #157#) (|vtanPts| . #227#) (|vInc| . #224#)
(|tp| . #166#) (|singPts| . #227#) (|rt| . #208#) (|pSF| . #42#)
(|pRN| . #36#) (|p| . #233#) (|lf| . #208#) (|htans| . #157#)
(|htanPts| . #227#) (|hInc| . #224#)
(|foo| |Mapping| (|Boolean|) (|List| (|Float|))) (|factoredPol| . #232#)
(|err| . #7#) (|dpdySF| . #42#) (|dpdy| . #221#) (|dpdxSF| . #42#)
(|dpdx| . #221#) (|delta| . #7#) (|crits| . #157#) (|critPts| . #227#)
(|corners| . #216#) (|bt| . #166#)
(|bran| . #235=(|List| #236=(|List| (|Point| (|DoubleFloat|)))))
(|bound| |PositiveInteger|)
(|bdPts| |Record| (|:| |left| (|List| (|Point| (|DoubleFloat|))))
(|:| |right| (|List| (|Point| (|DoubleFloat|))))
(|:| |bottom| (|List| (|Point| (|DoubleFloat|))))
(|:| |top| (|List| (|Point| (|DoubleFloat|)))))
(#:G567 . #237=(|Boolean|)) (#:G566 . #237#) (#:G565 . #237#)
(#:G564 . #237#) (#:G563 . #237#) (#:G562 . #231#))
(|arguments| (|yMin| . #238=(|Fraction| (|Integer|))) (|yMax| . #238#)
(|y| . #223#) (|xMin| . #239=(|Fraction| (|Integer|))) (|xMax| . #239#)
(|x| . #222#) (|pol| . #221#))))
(|makeLineSketch|
(($ #240=(|Polynomial| #241=(|Integer|)) #242=(|Symbol|) #243=(|Symbol|)
#244=(|Fraction| (|Integer|)) #245=(|Fraction| (|Integer|))
#246=(|Fraction| (|Integer|)) #247=(|Fraction| (|Integer|)))
(#101# (|One| . #102#))
(#240# (|ground| #241# #240#)
(|coefficient| #240# #240# . #248=(#75# #16#)))
(#2# (|Zero| . #3#) (|One| . #103#))
(#249=(|List| #250=(|Point| (|DoubleFloat|))) (|nil| #249#)
(|cons| #249# #250# #249#))
(#251=(|List| #252=(|List| (|Point| (|DoubleFloat|)))) (|nil| #251#)
(|cons| #251# #252# #251#))
(#4# (|Zero| . #5#))
(#7# (|coerce| . #46#) (<= . #87#) (< . #88#) (/ . #253=(#7# #7# #7#))
(- . #90#) (* . #91#))
(|locals| (|yRight| . #7#) (|yMinSF| . #20#) (|yMaxSF| . #20#)
(|yLeft| . #7#) (|xTop| . #7#) (|xMinSF| . #20#) (|xMaxSF| . #20#)
(|xBottom| . #7#) (|vtans| . #249#) (|tp| . #249#) (|rt| . #249#)
(|pt| . #98#) (|lf| . #249#) (|htans| . #249#) (|c| |DoubleFloat|)
(|bt| . #249#) (|branch| . #249#) (|bran| . #251#) (|b| |DoubleFloat|)
(|a| |DoubleFloat|))
(|arguments| (|yMin| . #246#) (|yMax| . #247#) (|y| . #243#)
(|xMin| . #244#) (|xMax| . #245#) (|x| . #242#) (|p| . #240#))))
(|makeOneVarSketch|
(($ #254=(|Polynomial| (|Integer|)) #255=(|Symbol|) #256=(|Symbol|)
#257=(|Fraction| (|Integer|)) #258=(|Fraction| (|Integer|))
#259=(|Fraction| (|Integer|)) #260=(|Fraction| (|Integer|))
#261=(|Symbol|))
(#29# (= . #71#)) (#174# (|solve| #176# #228# #177#))
(#262=(|List| #263=(|Point| (|DoubleFloat|))) (|nil| #262#)
(|cons| #262# #263# #262#))
(#264=(|List| #265=(|List| (|Point| (|DoubleFloat|)))) (|nil| #264#)
(|cons| #264# #265# #264#))
(#266=(|List| #267=(|DoubleFloat|)) (|null| #80# #266#) (|nil| #266#)
(|cons| #266# #267# #266#))
(#6# (<= . #154#))
(|locals| (|yMinSF| . #20#) (|yMaxSF| . #20#) (|xMinSF| . #20#)
(|xMaxSF| . #20#) (|vtans| . #262#) (|tp| . #262#) (|sketchRoots| . #266#)
(|rt| . #262#) (|roots| . #176#) (|pt2| . #98#) (|pt1| . #98#)
(|minVal| . #17#) (|maxVal| . #17#) (|lf| . #262#) (|htans| . #262#)
(|bt| . #262#) (|branch| |List| #98#) (|bran| . #264#))
(|arguments| (|yMin| . #259#) (|yMax| . #260#) (|y| . #256#)
(|xMin| . #257#) (|xMax| . #258#) (|x| . #255#) (|var| . #261#)
(|p| . #254#))))
(|makePt|
((#98# #268=(|DoubleFloat|) #269=(|DoubleFloat|))
(#98# (|point| #98# (|List| #99#))) (|locals| (|l| |List| #269#))
(|arguments| (|yy| . #269#) (|xx| . #268#))))
(|makeRatFcnSketch|
(($ #270=(|Polynomial| (|Integer|)) #271=(|Symbol|) #272=(|Symbol|)
#273=(|Fraction| (|Integer|)) #274=(|Fraction| (|Integer|))
#275=(|Fraction| (|Integer|)) #276=(|Fraction| (|Integer|))
#277=(|Symbol|))
(#29# (= . #71#)) (#10# (|elt| #11# #10# #11#))
(#23# (|elt| #24# #23# #24#))
(#174# (|solve| . #175#) (|realSolve| . #226#)) (#101# (|One| . #102#))
(#270# (|differentiate| #270# #270# . #229#)
(|coefficient| #270# #270# . #248#) (- #270# #270#))
(#36# (|eval| #36# #36# #75# #37#))
(#278=(|Plot|)
(|plot| #278# (|Mapping| #279=(|DoubleFloat|) #279#) (|Segment| #279#))
(|listBranches| (|List| (|List| (|Point| #279#))) #278#))
(#2# (|Zero| . #3#) (|One| . #103#) (> . #230#))
(#280=(|List| #281=(|Segment| (|DoubleFloat|))) (|nil| #280#)
(|cons| #280# #281# #280#))
(#157# (|nil| #157#) (|map| #157# (|Mapping| #158# #158#) #157#)
(|cons| #157# #158# #157#))
(#282=(|List| #283=(|List| (|Point| (|DoubleFloat|)))) (|nil| #282#)
(|first| #283# #282#) (|cons| #282# #283# #282#))
(#284=(|List| #285=(|DoubleFloat|))
(|sort| #284# (|Mapping| #80# #285# #285#) #284#) (|rest| #284# #284#)
(|remove| #284# #285# #284#) (|null| #80# #284#) (|nil| #284#)
(|last| #285# #284#) (|first| #285# #284#) (|cons| #284# #285# #284#))
(#4# (|Zero| . #5#)) (#273# (|Zero| #273#) (= #286=(|Boolean|) #273# #273#))
(#6# (< . #179#))
(#287=(|Factored| #288=(|Polynomial| (|Integer|)))
(|numberOfFactors| #234# #287#) (|coerce| #287# #288#))
(#7# (|abs| . #82#) (|Zero| . #8#) (|One| . #140#) (> . #85#) (= . #86#)
(< . #88#) (/ . #253#) (- . #90#) (+ . #9#))
(|locals| (|yMinSF| . #20#) (|yMinNF| . #17#) (|yMaxSF| . #20#)
(|yMaxNF| . #17#) (|xMinSF| . #20#) (|xMinNF| . #17#) (|xMaxSF| . #20#)
(|xMaxNF| . #17#) (|vtans| . #157#) (|vtanPts| . #227#) (|tp| . #157#)
(|topList| . #289=(|List| (|DoubleFloat|))) (|top| . #285#)
(|singList| . #284#) (|segList| . #280#)
(|segInfo|
. #290=(|Record| (|:| |seg| #291=(|Segment| #292=(|DoubleFloat|)))
(|:| |left| #293=(|DoubleFloat|))
(|:| |lowerVals| #294=(|List| (|DoubleFloat|)))
(|:| |upperVals| #289#)))
(|rt| . #157#) (|roots| . #176#) (|rightVal| . #295=(|DoubleFloat|))
(|pRN| . #36#) (|outList| . #284#) (|numUPolySF| . #23#) (|num| . #270#)
(|minSF| . #20#) (|maxSF| . #20#) (|lo| . #293#) (|lf| . #157#)
(|leftVal| . #295#) (|indVarMinSF| . #20#) (|indVarMinNF| . #17#)
(|indVarMin| . #273#) (|indVarMaxSF| . #20#) (|indVarMaxNF| . #17#)
(|indVarMax| . #274#) (|htans| . #157#) (|htanPts| . #227#) (|hi| . #285#)
(|factoredP| . #287#) (|f| |Mapping| #295# (|DoubleFloat|))
(|dpdy| . #270#) (|dpdx| . #270#) (|depVarMinSF| . #20#)
(|depVarMin| . #275#) (|depVarMaxSF| . #20#) (|depVarMax| . #276#)
(|denUPolySF| . #23#) (|denUPolyRN| . #10#) (|den| . #270#)
(|curve| . #283#) (|bt| . #157#) (|bran| . #282#) (|botList| . #294#)
(|bot| . #285#) (|RFPlot| . #278#) (#:G561 . #231#))
(|arguments| (|yMin| . #275#) (|yMax| . #276#) (|y| . #272#)
(|xMin| . #273#) (|xMax| . #274#) (|x| . #271#) (|p| . #270#)
(|depVar| . #277#))))
(|makeSketch|
(($ #296=(|Polynomial| (|Integer|)) #297=(|Symbol|) #298=(|Symbol|)
#299=(|Segment| #300=(|Fraction| (|Integer|)))
#301=(|Segment| (|Fraction| (|Integer|))))
(#299# (|lo| #300# #299#) (|hi| #300# #299#)) (#101# (|One| . #102#))
(#296# (|variables| #139# #296#) (|totalDegree| #16# #296#)
(|degree| #16# #296# #75#))
(#2# (|Zero| . #3#) (> . #230#) (= #302=(|Boolean|) #2# #2#))
(#139# (|member?| #80# #75# #139#) (|first| #75# #139#)
(|#| (|NonNegativeInteger|) #139#))
(#300# (<= #286# #300# #300#))
(|locals| (|yMin| . #300#) (|yMax| . #300#) (|xMin| . #300#)
(|xMax| . #300#) (|varList| . #139#) (#:G558 . #302#) (#:G557 . #302#)
(#:G556 . #302#) (#:G555 . #80#) (#:G554 . #80#) (#:G553 . #302#)
(#:G552 . #80#) (#:G551 . #80#) (#:G550 . #302#) (#:G549 . #231#))
(|arguments| (|yRange| . #301#) (|y| . #298#) (|xRange| . #299#)
(|x| . #297#) (|p| . #296#))))
(|newX|
((#239# #303=(|List| (|List| (|Float|))) #304=(|List| (|List| (|Float|)))
#305=(|Float|) #306=(|Float|) #307=(|Float|) #308=(|Fraction| (|Integer|))
#309=(|Fraction| (|Integer|)))
(#239# (|coerce| #239# . #41#) (/ #239# #239# #239#) (+ #239# #239# #239#))
(#6# (|min| . #310=(#6# #6# #6#)) (|max| . #311=(#6# #6# #6#))
(+ . #312=(#6# #6# #6#)))
(|locals| (|xRtNF| . #6#) (|xNewNF| . #6#) (|xLftNF| . #6#)
(|goo| |Mapping| (|Boolean|) (|List| (|Float|)))
(|foo| |Mapping| (|Boolean|) (|List| (|Float|))) (#:G546 . #237#)
(#:G545 . #237#))
(|arguments| (|yMinNF| . #305#) (|yMaxNF| . #306#) (|xRN| . #308#)
(|xNF| . #307#) (|vtanPts| . #303#) (|singPts| . #304#)
(|horizInc| . #309#))))
(|newY|
((#238# #313=(|List| (|List| (|Float|))) #314=(|List| (|List| (|Float|)))
#315=(|Float|) #316=(|Float|) #317=(|Float|) #318=(|Fraction| (|Integer|))
#319=(|Fraction| (|Integer|)))
(#238# (|coerce| #238# . #41#) (/ #238# #238# #238#) (+ #238# #238# #238#))
(#6# (|min| . #310#) (|max| . #311#) (+ . #312#))
(|locals| (|yTopNF| . #6#) (|yNewNF| . #6#) (|yBotNF| . #6#)
(|goo| |Mapping| (|Boolean|) (|List| (|Float|)))
(|foo| |Mapping| (|Boolean|) (|List| (|Float|))) (#:G548 . #237#)
(#:G547 . #237#))
(|arguments| (|yRN| . #318#) (|yNF| . #317#) (|xMinNF| . #315#)
(|xMaxNF| . #316#) (|vertInc| . #319#) (|singPts| . #314#)
(|htanPts| . #313#))))
(|newtonApprox|
((#68# #320=(|SparseUnivariatePolynomial| #321=(|DoubleFloat|))
#322=(|DoubleFloat|) #323=(|DoubleFloat|) #324=(|PositiveInteger|))
(#68# (|autoCoerce| #68# #69#))
(#320# (|elt| #321# #320# #321#) (|differentiate| #320# #320#))
(#101# (|One| . #102#) (= (|Boolean|) #101# #101#) (+ #101# #101# #101#))
(#2# (|One| . #103#)) (#7# (|abs| . #82#) (> . #85#) (/ . #253#) (- . #90#))
(|locals| (|oldApprox| . #7#) (|newApprox| . #7#) (|i| . #101#)
(|Df| . #320#))
(|arguments| (|f| . #320#) (|err| . #323#) (|bound| . #324#)
(|a0| . #322#))))
(|onHorzSeg?|
(((|Boolean|) #325=(|List| #326=(|Float|)) #327=(|Float|) #328=(|Float|)
#329=(|Float|))
(#325# (|second| #326# #325#) (|first| #326# #325#))
(#6# (= . #330=(#155# #6# #6#)) (<= . #154#)) (#92# (|false| . #156#))
(|locals| (|yy| . #326#) (|xx| . #326#))
(|arguments| (|yNF| . #329#) (|xMinNF| . #327#) (|xMaxNF| . #328#)
(|point| . #325#))))
(|onVertSeg?|
(((|Boolean|) #331=(|List| #332=(|Float|)) #333=(|Float|) #334=(|Float|)
#335=(|Float|))
(#331# (|second| #332# #331#) (|first| #332# #331#))
(#6# (= . #330#) (<= . #154#)) (#92# (|false| . #156#))
(|locals| (|yy| . #332#) (|xx| . #332#))
(|arguments| (|yMinNF| . #333#) (|yMaxNF| . #334#) (|xNF| . #335#)
(|point| . #331#))))
(|ptsSuchThat?|
((#237# #336=(|List| (|List| (|Float|)))
#337=(|Mapping| #338=(|Boolean|) (|List| (|Float|))))
(#92# (|true| . #339=(#92#)) (|false| . #156#)) (|locals| (#:G544 . #338#))
(|arguments| (|pred| . #337#) (|points| . #336#))))
(|refine|
(($ $ #340=(|DoubleFloat|)) (#30# (|differentiate| #30# #30# . #229#))
(#112# (|append| #112# #112# #112#))
(#7# (|min| . #81#) (/ . #89#) (- . #90#) (* . #91#)) (#92# (|min| . #93#))
(|locals| (|yMinSF| . #20#) (|yMin| . #109#) (|yMaxSF| . #20#)
(|yMax| . #110#) (|y| . #107#) (|xMinSF| . #20#) (|xMin| . #34#)
(|xMaxSF| . #20#) (|xMax| . #108#) (|x| . #106#) (|vtans| . #113#)
(|pSF| . #42#) (|p| . #30#) (|htans| . #112#) (|err| . #7#)
(|dpdySF| . #42#) (|dpdy| . #30#) (|dpdxSF| . #42#) (|dpdx| . #30#)
(|delta| . #7#) (|crits| . #112#) (|corners| . #216#) (|bran| . #235#)
(|bound| |PositiveInteger|) (|bdPts| . #111#))
(|arguments| (|stepFraction| . #340#) (|plot| . $))))
(|samePlottedPt?|
((#143# #341=(|Point| (|DoubleFloat|)) #342=(|Point| (|DoubleFloat|)))
(#76# (|yCoord| . #78#) (|xCoord| . #79#))
(#7# (|abs| . #82#) (< . #88#) (- . #90#)) (#92# (|false| . #156#))
(|locals| (|y1| . #77#) (|y0| . #77#) (|x1| . #77#) (|x0| . #77#)
(#:G540 . #84#))
(|arguments| (|p1| . #342#) (|p0| . #341#))))
(|segmentInfo|
((#290# #343=(|Mapping| #344=(|DoubleFloat|) (|DoubleFloat|))
#345=(|DoubleFloat|) #346=(|DoubleFloat|)
#347=(|List| #348=(|DoubleFloat|)) (|List| (|DoubleFloat|))
#349=(|List| (|DoubleFloat|)) #350=(|DoubleFloat|) #351=(|DoubleFloat|))
(#72# (= . #73#)) (#291# (|segment| #291# #292# #292#))
(#347# (|rest| #347# #347#) (|null| #80# #347#) (|nil| #347#)
(|first| #348# #347#))
(#7# (|coerce| . #46#) (>= . #83#) (<= . #87#) (< . #88#) (/ . #253#)
(- . #90#))
(|locals| (|val| . #344#) (|top| . #348#) (|nxt| . #348#)
(|nextFrom| . #104#) (|currentFrom| . #104#) (|current| . #348#)
(|bot| . #348#) (#:G560 . #352=(|Boolean|)) (#:G559 . #352#))
(|arguments| (|topList| . #347#) (|singList| . #349#) (|minSF| . #350#)
(|maxSF| . #351#) (|lo| . #345#) (|hi| . #346#) (|f| . #343#)
(|botList| . #347#))))
(|singValBetween?|
((#352# #353=(|DoubleFloat|) #354=(|DoubleFloat|)
#355=(|List| (|DoubleFloat|)))
(#7# (< . #88#)) (#92# (|true| . #339#) (|false| . #156#))
(|arguments| (|xSingList| . #355#) (|xNext| . #354#) (|xCurrent| . #353#))))
(|swapCoords|
(((|Point| (|DoubleFloat|)) #356=(|Point| (|DoubleFloat|)))
(#76# (|yCoord| . #78#) (|xCoord| . #79#)) (|arguments| (|pt| . #356#))))
(|traceBranches|
((#235# #357=(|Polynomial| (|DoubleFloat|))
#358=(|Polynomial| (|DoubleFloat|)) #359=(|Polynomial| (|DoubleFloat|))
#360=(|Symbol|) #361=(|Symbol|)
#362=(|Record| (|:| |minXVal| (|DoubleFloat|))
(|:| |maxXVal| (|DoubleFloat|))
(|:| |minYVal| (|DoubleFloat|))
(|:| |maxYVal| (|DoubleFloat|)))
#363=(|DoubleFloat|) #364=(|DoubleFloat|) #365=(|PositiveInteger|)
#366=(|List| #367=(|Point| (|DoubleFloat|)))
#368=(|Record| (|:| |left| #369=(|List| (|Point| (|DoubleFloat|))))
(|:| |right| #370=(|List| (|Point| (|DoubleFloat|))))
(|:| |bottom| #371=(|List| (|Point| (|DoubleFloat|))))
(|:| |top| #372=(|List| (|Point| (|DoubleFloat|))))))
(#366# (|null| #80# #366#) (|first| #367# #366#)
(|append| #366# #366# #366#))
(#235# (|third| #236# #235#) (|second| #236# #235#) (|nil| #235#)
(|first| #236# #235#) (|cons| #235# #236# #235#))
(#92# (|not| #92# #92#))
(|locals| (|tp| . #372#) (|segInfo| . #180#) (|rt| . #370#) (|pt| . #367#)
(|p0| . #127#) (|lf| . #369#) (|bt| . #371#) (|bran| . #235#)
(|bdry| . #236#))
(|arguments| (|y| . #361#) (|x| . #360#) (|pSF| . #357#) (|err| . #364#)
(|dpdySF| . #359#) (|dpdxSF| . #358#) (|delta| . #363#) (|crits| . #236#)
(|corners| . #362#) (|bound| . #365#) (|bdPts| . #368#)))))