12.852 * [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.014 * [simplify]: Simplifying using # : (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) 0.026 * * [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.027 * * [progress]: iteration 1 / 4 0.027 * * * [progress]: picking best candidate 0.029 * * * * [pick]: Picked # 0.029 * * * [progress]: localizing error 0.033 * * * [progress]: generating rewritten candidates 0.033 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.040 * * * [progress]: generating series expansions 0.040 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.040 * [approximate]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in (x) around 0 0.040 * [taylor]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in x 0.040 * [taylor]: Taking taylor expansion of x in x 0.040 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 x)) in x 0.040 * [taylor]: Taking taylor expansion of 1.0 in x 0.040 * [taylor]: Taking taylor expansion of (* 0.5 x) in x 0.040 * [taylor]: Taking taylor expansion of 0.5 in x 0.040 * [taylor]: Taking taylor expansion of x in x 0.040 * [taylor]: Taking taylor expansion of (* x (- 1.0 (* 0.5 x))) in x 0.040 * [taylor]: Taking taylor expansion of x in x 0.040 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 x)) in x 0.040 * [taylor]: Taking taylor expansion of 1.0 in x 0.040 * [taylor]: Taking taylor expansion of (* 0.5 x) in x 0.040 * [taylor]: Taking taylor expansion of 0.5 in x 0.040 * [taylor]: Taking taylor expansion of x in x 0.042 * [approximate]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in (x) around 0 0.042 * [taylor]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in x 0.042 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 (/ 1 x))) in x 0.042 * [taylor]: Taking taylor expansion of 1.0 in x 0.042 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.042 * [taylor]: Taking taylor expansion of 0.5 in x 0.042 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.042 * [taylor]: Taking taylor expansion of x in x 0.042 * [taylor]: Taking taylor expansion of x in x 0.042 * [taylor]: Taking taylor expansion of (/ (- 1.0 (* 0.5 (/ 1 x))) x) in x 0.042 * [taylor]: Taking taylor expansion of (- 1.0 (* 0.5 (/ 1 x))) in x 0.042 * [taylor]: Taking taylor expansion of 1.0 in x 0.042 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.042 * [taylor]: Taking taylor expansion of 0.5 in x 0.042 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.042 * [taylor]: Taking taylor expansion of x in x 0.042 * [taylor]: Taking taylor expansion of x in x 0.045 * [approximate]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in (x) around 0 0.045 * [taylor]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in x 0.045 * [taylor]: Taking taylor expansion of -1 in x 0.045 * [taylor]: Taking taylor expansion of (/ (+ (* 0.5 (/ 1 x)) 1.0) x) in x 0.045 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 x)) 1.0) in x 0.045 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.045 * [taylor]: Taking taylor expansion of 0.5 in x 0.045 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.045 * [taylor]: Taking taylor expansion of x in x 0.045 * [taylor]: Taking taylor expansion of 1.0 in x 0.045 * [taylor]: Taking taylor expansion of x in x 0.045 * [taylor]: Taking taylor expansion of (* -1 (/ (+ (* 0.5 (/ 1 x)) 1.0) x)) in x 0.045 * [taylor]: Taking taylor expansion of -1 in x 0.045 * [taylor]: Taking taylor expansion of (/ (+ (* 0.5 (/ 1 x)) 1.0) x) in x 0.045 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 x)) 1.0) in x 0.045 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 x)) in x 0.045 * [taylor]: Taking taylor expansion of 0.5 in x 0.045 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.045 * [taylor]: Taking taylor expansion of x in x 0.045 * [taylor]: Taking taylor expansion of 1.0 in x 0.045 * [taylor]: Taking taylor expansion of x in x 0.048 * * * [progress]: simplifying candidates 0.049 * [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.100 * * [simplify]: iteration 0 : 4987 enodes (cost 218 ) 0.100 * * [simplify]: iteration 1 : 4987 enodes (cost 218 ) 0.102 * [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.102 * * * [progress]: adding candidates to table 0.121 * * [progress]: iteration 2 / 4 0.121 * * * [progress]: picking best candidate 0.123 * * * * [pick]: Picked # 0.123 * * * [progress]: localizing error 0.129 * * * [progress]: generating rewritten candidates 0.129 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.134 * * * [progress]: generating series expansions 0.134 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.135 * [approximate]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in (x) around 0 0.135 * [taylor]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in x 0.135 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.135 * [taylor]: Taking taylor expansion of 1.0 in x 0.135 * [taylor]: Taking taylor expansion of x in x 0.135 * [taylor]: Taking taylor expansion of (* 0.5 (pow x 2)) in x 0.135 * [taylor]: Taking taylor expansion of 0.5 in x 0.135 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.135 * [taylor]: Taking taylor expansion of x in x 0.135 * [taylor]: Taking taylor expansion of (- (* 1.0 x) (* 0.5 (pow x 2))) in x 0.135 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.135 * [taylor]: Taking taylor expansion of 1.0 in x 0.135 * [taylor]: Taking taylor expansion of x in x 0.135 * [taylor]: Taking taylor expansion of (* 0.5 (pow x 2)) in x 0.135 * [taylor]: Taking taylor expansion of 0.5 in x 0.135 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.135 * [taylor]: Taking taylor expansion of x in x 0.137 * [approximate]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in (x) around 0 0.137 * [taylor]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in x 0.137 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.137 * [taylor]: Taking taylor expansion of 1.0 in x 0.137 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.137 * [taylor]: Taking taylor expansion of x in x 0.137 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.137 * [taylor]: Taking taylor expansion of 0.5 in x 0.137 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.137 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.137 * [taylor]: Taking taylor expansion of x in x 0.137 * [taylor]: Taking taylor expansion of (- (* 1.0 (/ 1 x)) (* 0.5 (/ 1 (pow x 2)))) in x 0.137 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.137 * [taylor]: Taking taylor expansion of 1.0 in x 0.137 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.137 * [taylor]: Taking taylor expansion of x in x 0.137 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.137 * [taylor]: Taking taylor expansion of 0.5 in x 0.137 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.137 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.137 * [taylor]: Taking taylor expansion of x in x 0.141 * [approximate]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in (x) around 0 0.141 * [taylor]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in x 0.141 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x))) in x 0.141 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.141 * [taylor]: Taking taylor expansion of 0.5 in x 0.141 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.141 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.141 * [taylor]: Taking taylor expansion of x in x 0.141 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.141 * [taylor]: Taking taylor expansion of 1.0 in x 0.141 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.141 * [taylor]: Taking taylor expansion of x in x 0.141 * [taylor]: Taking taylor expansion of (neg (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x)))) in x 0.141 * [taylor]: Taking taylor expansion of (+ (* 0.5 (/ 1 (pow x 2))) (* 1.0 (/ 1 x))) in x 0.141 * [taylor]: Taking taylor expansion of (* 0.5 (/ 1 (pow x 2))) in x 0.141 * [taylor]: Taking taylor expansion of 0.5 in x 0.141 * [taylor]: Taking taylor expansion of (/ 1 (pow x 2)) in x 0.141 * [taylor]: Taking taylor expansion of (pow x 2) in x 0.141 * [taylor]: Taking taylor expansion of x in x 0.141 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.141 * [taylor]: Taking taylor expansion of 1.0 in x 0.141 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.141 * [taylor]: Taking taylor expansion of x in x 0.144 * * * [progress]: simplifying candidates 0.144 * [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.200 * * [simplify]: iteration 0 : 5363 enodes (cost 154 ) 0.201 * [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.201 * * * [progress]: adding candidates to table 0.217 * [progress]: [Phase 3 of 3] Extracting. 0.217 * * [regime]: Finding splitpoints for: (# #) 0.218 * * * [regime-changes]: Trying 2 branch expressions: ((*.f64 x (-.f64 1.0 (*.f64 x 0.5))) x) 0.218 * * * * [regimes]: Trying to branch on (*.f64 x (-.f64 1.0 (*.f64 x 0.5))) from (# #) 0.241 * * * * [regimes]: Trying to branch on x from (# #) 0.263 * * * [regime]: Found split indices: #