25.571 * [progress]: [Phase 1 of 3] Setting up. 0.002 * * * [progress]: [1/2] Preparing points 0.012 * * * [progress]: [2/2] Setting up program. 0.014 * [progress]: [Phase 2 of 3] Improving. 0.015 * [simplify]: Simplifying using # : (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 0.027 * * [simplify]: iteration 0 : 228 enodes (cost 7 ) 0.027 * * [simplify]: iteration 1 : 228 enodes (cost 7 ) 0.027 * [simplify]: Simplified to: (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 0.033 * * [progress]: iteration 1 / 4 0.033 * * * [progress]: picking best candidate 0.035 * * * * [pick]: Picked # 0.035 * * * [progress]: localizing error 0.039 * * * [progress]: generating rewritten candidates 0.039 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.047 * * * [progress]: generating series expansions 0.047 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.047 * [approximate]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in (x) around 0 0.047 * [taylor]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in x 0.047 * [taylor]: Taking taylor expansion of x in x 0.047 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 x)) in x 0.047 * [taylor]: Taking taylor expansion of 1.0 in x 0.047 * [taylor]: Taking taylor expansion of (* 0.5 x) in x 0.047 * [taylor]: Taking taylor expansion of 0.5 in x 0.047 * [taylor]: Taking taylor expansion of x in x 0.047 * [taylor]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in x 0.047 * [taylor]: Taking taylor expansion of x in x 0.047 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 x)) in x 0.047 * [taylor]: Taking taylor expansion of 1.0 in x 0.047 * [taylor]: Taking taylor expansion of (* 0.5 x) in x 0.047 * [taylor]: Taking taylor expansion of 0.5 in x 0.047 * [taylor]: Taking taylor expansion of x in x 0.049 * [approximate]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in (x) around 0 0.049 * [taylor]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in x 0.049 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 (/ 1 x))) in x 0.049 * [taylor]: Taking taylor expansion of 1.0 in x 0.049 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.049 * [taylor]: Taking taylor expansion of 0.5 in x 0.049 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.049 * [taylor]: Taking taylor expansion of x in x 0.049 * [taylor]: Taking taylor expansion of x in x 0.050 * [taylor]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in x 0.050 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 (/ 1 x))) in x 0.050 * [taylor]: Taking taylor expansion of 1.0 in x 0.050 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.050 * [taylor]: Taking taylor expansion of 0.5 in x 0.050 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.050 * [taylor]: Taking taylor expansion of x in x 0.050 * [taylor]: Taking taylor expansion of x in x 0.052 * [approximate]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in (x) around 0 0.052 * [taylor]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in x 0.052 * [taylor]: Taking taylor expansion of -1 in x 0.052 * [taylor]: Taking taylor expansion of (/ (+ (* 0.5 (/ 1 x)) 1.0) x) in x 0.052 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 x)) 1.0) in x 0.052 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.052 * [taylor]: Taking taylor expansion of 0.5 in x 0.053 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.053 * [taylor]: Taking taylor expansion of x in x 0.053 * [taylor]: Taking taylor expansion of 1.0 in x 0.053 * [taylor]: Taking taylor expansion of x in x 0.053 * [taylor]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in x 0.053 * [taylor]: Taking taylor expansion of -1 in x 0.053 * [taylor]: Taking taylor expansion of (/ (+ (* 0.5 (/ 1 x)) 1.0) x) in x 0.053 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 x)) 1.0) in x 0.053 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.053 * [taylor]: Taking taylor expansion of 0.5 in x 0.053 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.053 * [taylor]: Taking taylor expansion of x in x 0.053 * [taylor]: Taking taylor expansion of 1.0 in x 0.053 * [taylor]: Taking taylor expansion of x in x 0.056 * * * [progress]: simplifying candidates 0.056 * [simplify]: Simplifying using # : (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (+.f64 (log.f64 x) (log.f64 (-.f64 1.0 (*.f64 x 0.5)))) (log.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (exp.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (*.f64 (*.f64 x x) x) (*.f64 (*.f64 (-.f64 1.0 (*.f64 x 0.5)) (-.f64 1.0 (*.f64 x 0.5))) (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (*.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (sqrt.f64 x) (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (sqrt.f64 x) (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))) (*.f64 1.0 x) (*.f64 (neg.f64 (*.f64 x 0.5)) x) (*.f64 x (*.f64 (cbrt.f64 (-.f64 1.0 (*.f64 x 0.5))) (cbrt.f64 (-.f64 1.0 (*.f64 x 0.5))))) (*.f64 x (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 x 1) (*.f64 (cbrt.f64 x) (-.f64 1.0 (*.f64 x 0.5))) (*.f64 (sqrt.f64 x) (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 (pow.f64 1.0 3) (pow.f64 (*.f64 x 0.5) 3))) (*.f64 x (-.f64 (*.f64 1.0 1.0) (*.f64 (*.f64 x 0.5) (*.f64 x 0.5)))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) 0.103 * * [simplify]: iteration 0 : 4987 enodes (cost 218 ) 0.104 * * [simplify]: iteration 1 : 4987 enodes (cost 218 ) 0.105 * [simplify]: Simplified to: (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (log.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (log.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (exp.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (pow.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 3) (*.f64 (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (pow.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 3) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (sqrt.f64 x) (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 (sqrt.f64 x) (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))) (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))) (*.f64 x (*.f64 (cbrt.f64 (-.f64 1.0 (*.f64 x 0.5))) (cbrt.f64 (-.f64 1.0 (*.f64 x 0.5))))) (*.f64 x (sqrt.f64 (-.f64 1.0 (*.f64 x 0.5)))) x (*.f64 (-.f64 1.0 (*.f64 x 0.5)) (cbrt.f64 x)) (*.f64 (-.f64 1.0 (*.f64 x 0.5)) (sqrt.f64 x)) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 (pow.f64 1.0 3) (pow.f64 (*.f64 x 0.5) 3))) (*.f64 x (-.f64 (*.f64 1.0 1.0) (*.f64 (*.f64 x 0.5) (*.f64 x 0.5)))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 0.105 * * * [progress]: adding candidates to table 0.132 * * [progress]: iteration 2 / 4 0.132 * * * [progress]: picking best candidate 0.134 * * * * [pick]: Picked # 0.134 * * * [progress]: localizing error 0.142 * * * [progress]: generating rewritten candidates 0.142 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.147 * * * [progress]: generating series expansions 0.147 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.147 * [approximate]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in (x) around 0 0.147 * [taylor]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in x 0.147 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.147 * [taylor]: Taking taylor expansion of 1.0 in x 0.147 * [taylor]: Taking taylor expansion of x in x 0.147 * [taylor]: Taking taylor expansion of (* 0.5 (pow x 2)) in x 0.147 * [taylor]: Taking taylor expansion of 0.5 in x 0.147 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.147 * [taylor]: Taking taylor expansion of x in x 0.147 * [taylor]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in x 0.147 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.147 * [taylor]: Taking taylor expansion of 1.0 in x 0.147 * [taylor]: Taking taylor expansion of x in x 0.147 * [taylor]: Taking taylor expansion of (* 0.5 (pow x 2)) in x 0.147 * [taylor]: Taking taylor expansion of 0.5 in x 0.147 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.147 * [taylor]: Taking taylor expansion of x in x 0.149 * [approximate]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in (x) around 0 0.149 * [taylor]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in x 0.149 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.149 * [taylor]: Taking taylor expansion of 1.0 in x 0.149 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.150 * [taylor]: Taking taylor expansion of x in x 0.150 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.150 * [taylor]: Taking taylor expansion of 0.5 in x 0.150 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.150 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.150 * [taylor]: Taking taylor expansion of x in x 0.150 * [taylor]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in x 0.150 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.150 * [taylor]: Taking taylor expansion of 1.0 in x 0.150 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.150 * [taylor]: Taking taylor expansion of x in x 0.150 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.150 * [taylor]: Taking taylor expansion of 0.5 in x 0.150 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.150 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.150 * [taylor]: Taking taylor expansion of x in x 0.153 * [approximate]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in (x) around 0 0.153 * [taylor]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in x 0.153 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x))) in x 0.153 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.153 * [taylor]: Taking taylor expansion of 0.5 in x 0.153 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.153 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.153 * [taylor]: Taking taylor expansion of x in x 0.153 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.153 * [taylor]: Taking taylor expansion of 1.0 in x 0.153 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.153 * [taylor]: Taking taylor expansion of x in x 0.153 * [taylor]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in x 0.153 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x))) in x 0.153 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.153 * [taylor]: Taking taylor expansion of 0.5 in x 0.153 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.153 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.153 * [taylor]: Taking taylor expansion of x in x 0.153 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.153 * [taylor]: Taking taylor expansion of 1.0 in x 0.153 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.154 * [taylor]: Taking taylor expansion of x in x 0.157 * * * [progress]: simplifying candidates 0.157 * [simplify]: Simplifying using # : (*.f64 (exp.f64 (*.f64 x 1.0)) (exp.f64 (*.f64 x (neg.f64 (*.f64 x 0.5))))) (log.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (exp.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (*.f64 (cbrt.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (cbrt.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5)))))) (cbrt.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (*.f64 (*.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5)))) (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (sqrt.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (sqrt.f64 (+.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (+.f64 (pow.f64 (*.f64 x 1.0) 3) (pow.f64 (*.f64 x (neg.f64 (*.f64 x 0.5))) 3)) (+.f64 (*.f64 (*.f64 x 1.0) (*.f64 x 1.0)) (-.f64 (*.f64 (*.f64 x (neg.f64 (*.f64 x 0.5))) (*.f64 x (neg.f64 (*.f64 x 0.5)))) (*.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5)))))) (-.f64 (*.f64 (*.f64 x 1.0) (*.f64 x 1.0)) (*.f64 (*.f64 x (neg.f64 (*.f64 x 0.5))) (*.f64 x (neg.f64 (*.f64 x 0.5))))) (-.f64 (*.f64 x 1.0) (*.f64 x (neg.f64 (*.f64 x 0.5)))) (+.f64 1.0 (neg.f64 (*.f64 x 0.5))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) (-.f64 (*.f64 1.0 x) (*.f64 0.5 (pow.f64 x 2))) 0.212 * * [simplify]: iteration 0 : 5363 enodes (cost 154 ) 0.213 * [simplify]: Simplified to: (pow.f64 (exp.f64 x) (-.f64 1.0 (*.f64 x 0.5))) (log.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (pow.f64 (exp.f64 x) (-.f64 1.0 (*.f64 x 0.5))) (*.f64 (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))))) (cbrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (pow.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 3) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (sqrt.f64 (*.f64 x (-.f64 1.0 (*.f64 x 0.5)))) (-.f64 (pow.f64 (*.f64 x 1.0) 3) (pow.f64 (*.f64 x (*.f64 x 0.5)) 3)) (+.f64 (*.f64 (*.f64 0.5 0.5) (pow.f64 x 4)) (*.f64 (*.f64 x (*.f64 x 1.0)) (+.f64 1.0 (*.f64 x 0.5)))) (*.f64 x (*.f64 (-.f64 (*.f64 1.0 1.0) (*.f64 0.5 (*.f64 x (*.f64 x 0.5)))) x)) (*.f64 x (+.f64 1.0 (*.f64 x 0.5))) (-.f64 1.0 (*.f64 x 0.5)) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 0.213 * * * [progress]: adding candidates to table 0.231 * [progress]: [Phase 3 of 3] Extracting. 0.231 * * [regime]: Finding splitpoints for: (# #) 0.231 * * * [regime-changes]: Trying 2 branch expressions: ((*.f64 x (-.f64 1.0 (*.f64 x 0.5))) x) 0.231 * * * * [regimes]: Trying to branch on (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) from (# #) 0.257 * * * * [regimes]: Trying to branch on x from (# #) 0.279 * * * [regime]: Found split indices: #