8.695 * [progress]: [Phase 1 of 3] Setting up. 0.001 * * * [progress]: [1/2] Preparing points 0.018 * * * [progress]: [2/2] Setting up program. 0.020 * [progress]: [Phase 2 of 3] Improving. 0.020 * [simplify]: Simplifying using # : (* x (+ y 1.0)) 0.024 * * [simplify]: iteration 0 : 13 enodes (cost 2 ) 0.027 * * [simplify]: iteration 1 : 17 enodes (cost 2 ) 0.030 * * [simplify]: iteration 2 : 20 enodes (cost 2 ) 0.033 * * [simplify]: iteration 3 : 20 enodes (cost 2 ) 0.033 * [simplify]: Simplified to: (* x (+ y 1.0)) 0.034 * * [progress]: iteration 1 / 4 0.034 * * * [progress]: picking best candidate 0.035 * * * * [pick]: Picked # 0.035 * * * [progress]: localizing error 0.039 * * * [progress]: generating rewritten candidates 0.040 * * * * [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 (+ y 1.0)) in (x y) around 0 0.047 * [taylor]: Taking taylor expansion of (* x (+ y 1.0)) in y 0.047 * [taylor]: Taking taylor expansion of x in y 0.047 * [taylor]: Taking taylor expansion of (+ y 1.0) in y 0.047 * [taylor]: Taking taylor expansion of y in y 0.047 * [taylor]: Taking taylor expansion of 1.0 in y 0.047 * [taylor]: Taking taylor expansion of (* x (+ y 1.0)) in x 0.047 * [taylor]: Taking taylor expansion of x in x 0.047 * [taylor]: Taking taylor expansion of (+ y 1.0) in x 0.047 * [taylor]: Taking taylor expansion of y in x 0.047 * [taylor]: Taking taylor expansion of 1.0 in x 0.047 * [taylor]: Taking taylor expansion of (* x (+ y 1.0)) in x 0.048 * [taylor]: Taking taylor expansion of x in x 0.048 * [taylor]: Taking taylor expansion of (+ y 1.0) in x 0.048 * [taylor]: Taking taylor expansion of y in x 0.048 * [taylor]: Taking taylor expansion of 1.0 in x 0.048 * [taylor]: Taking taylor expansion of 0 in y 0.049 * [taylor]: Taking taylor expansion of (+ y 1.0) in y 0.049 * [taylor]: Taking taylor expansion of y in y 0.049 * [taylor]: Taking taylor expansion of 1.0 in y 0.050 * [taylor]: Taking taylor expansion of 0 in y 0.052 * [taylor]: Taking taylor expansion of 0 in y 0.054 * [taylor]: Taking taylor expansion of 0 in y 0.054 * [approximate]: Taking taylor expansion of (/ (+ (/ 1 y) 1.0) x) in (x y) around 0 0.054 * [taylor]: Taking taylor expansion of (/ (+ (/ 1 y) 1.0) x) in y 0.054 * [taylor]: Taking taylor expansion of (+ (/ 1 y) 1.0) in y 0.054 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.054 * [taylor]: Taking taylor expansion of y in y 0.055 * [taylor]: Taking taylor expansion of 1.0 in y 0.055 * [taylor]: Taking taylor expansion of x in y 0.055 * [taylor]: Taking taylor expansion of (/ (+ (/ 1 y) 1.0) x) in x 0.055 * [taylor]: Taking taylor expansion of (+ (/ 1 y) 1.0) in x 0.055 * [taylor]: Taking taylor expansion of (/ 1 y) in x 0.055 * [taylor]: Taking taylor expansion of y in x 0.055 * [taylor]: Taking taylor expansion of 1.0 in x 0.055 * [taylor]: Taking taylor expansion of x in x 0.055 * [taylor]: Taking taylor expansion of (/ (+ (/ 1 y) 1.0) x) in x 0.055 * [taylor]: Taking taylor expansion of (+ (/ 1 y) 1.0) in x 0.055 * [taylor]: Taking taylor expansion of (/ 1 y) in x 0.055 * [taylor]: Taking taylor expansion of y in x 0.055 * [taylor]: Taking taylor expansion of 1.0 in x 0.055 * [taylor]: Taking taylor expansion of x in x 0.056 * [taylor]: Taking taylor expansion of (+ (/ 1 y) 1.0) in y 0.056 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.056 * [taylor]: Taking taylor expansion of y in y 0.057 * [taylor]: Taking taylor expansion of 1.0 in y 0.059 * [taylor]: Taking taylor expansion of 0 in y 0.061 * [taylor]: Taking taylor expansion of 0 in y 0.064 * [taylor]: Taking taylor expansion of 0 in y 0.067 * [taylor]: Taking taylor expansion of 0 in y 0.068 * [approximate]: Taking taylor expansion of (* -1 (/ (- 1.0 (/ 1 y)) x)) in (x y) around 0 0.068 * [taylor]: Taking taylor expansion of (* -1 (/ (- 1.0 (/ 1 y)) x)) in y 0.068 * [taylor]: Taking taylor expansion of -1 in y 0.068 * [taylor]: Taking taylor expansion of (/ (- 1.0 (/ 1 y)) x) in y 0.068 * [taylor]: Taking taylor expansion of (- 1.0 (/ 1 y)) in y 0.068 * [taylor]: Taking taylor expansion of 1.0 in y 0.068 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.068 * [taylor]: Taking taylor expansion of y in y 0.068 * [taylor]: Taking taylor expansion of x in y 0.069 * [taylor]: Taking taylor expansion of (* -1 (/ (- 1.0 (/ 1 y)) x)) in x 0.069 * [taylor]: Taking taylor expansion of -1 in x 0.069 * [taylor]: Taking taylor expansion of (/ (- 1.0 (/ 1 y)) x) in x 0.069 * [taylor]: Taking taylor expansion of (- 1.0 (/ 1 y)) in x 0.069 * [taylor]: Taking taylor expansion of 1.0 in x 0.069 * [taylor]: Taking taylor expansion of (/ 1 y) in x 0.069 * [taylor]: Taking taylor expansion of y in x 0.069 * [taylor]: Taking taylor expansion of x in x 0.069 * [taylor]: Taking taylor expansion of (* -1 (/ (- 1.0 (/ 1 y)) x)) in x 0.069 * [taylor]: Taking taylor expansion of -1 in x 0.069 * [taylor]: Taking taylor expansion of (/ (- 1.0 (/ 1 y)) x) in x 0.069 * [taylor]: Taking taylor expansion of (- 1.0 (/ 1 y)) in x 0.069 * [taylor]: Taking taylor expansion of 1.0 in x 0.069 * [taylor]: Taking taylor expansion of (/ 1 y) in x 0.069 * [taylor]: Taking taylor expansion of y in x 0.069 * [taylor]: Taking taylor expansion of x in x 0.070 * [taylor]: Taking taylor expansion of (* -1 (- 1.0 (/ 1 y))) in y 0.070 * [taylor]: Taking taylor expansion of -1 in y 0.070 * [taylor]: Taking taylor expansion of (- 1.0 (/ 1 y)) in y 0.070 * [taylor]: Taking taylor expansion of 1.0 in y 0.070 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.070 * [taylor]: Taking taylor expansion of y in y 0.073 * [taylor]: Taking taylor expansion of 0 in y 0.077 * [taylor]: Taking taylor expansion of 0 in y 0.082 * [taylor]: Taking taylor expansion of 0 in y 0.087 * [taylor]: Taking taylor expansion of 0 in y 0.088 * * * [progress]: simplifying candidates 0.089 * [simplify]: Simplifying using # : (expm1 (* x (+ y 1.0))) (log1p (* x (+ y 1.0))) (* x (+ y 1.0)) (+ (log x) (log (+ y 1.0))) (log (* x (+ y 1.0))) (exp (* x (+ y 1.0))) (* (* (* x x) x) (* (* (+ y 1.0) (+ y 1.0)) (+ y 1.0))) (* (cbrt (* x (+ y 1.0))) (cbrt (* x (+ y 1.0)))) (cbrt (* x (+ y 1.0))) (* (* (* x (+ y 1.0)) (* x (+ y 1.0))) (* x (+ y 1.0))) (sqrt (* x (+ y 1.0))) (sqrt (* x (+ y 1.0))) (* (sqrt x) (sqrt (+ y 1.0))) (* (sqrt x) (sqrt (+ y 1.0))) (* x y) (* x 1.0) (* x 1.0) (* x y) (* y x) (* 1.0 x) (* 1.0 x) (* y x) (* x (* (cbrt (+ y 1.0)) (cbrt (+ y 1.0)))) (* x (sqrt (+ y 1.0))) (* x 1) (* x 1) (* (cbrt x) (+ y 1.0)) (* (sqrt x) (+ y 1.0)) (* x (+ y 1.0)) (* x (+ (pow y 3) (pow 1.0 3))) (* x (- (* y y) (* 1.0 1.0))) (+ (* 1.0 x) (* x y)) (+ (* 1.0 x) (* x y)) (+ (* 1.0 x) (* x y)) 0.093 * * [simplify]: iteration 0 : 128 enodes (cost 96 ) 0.099 * * [simplify]: iteration 1 : 552 enodes (cost 86 ) 0.117 * * [simplify]: iteration 2 : 2242 enodes (cost 86 ) 0.164 * * [simplify]: iteration 3 : 5002 enodes (cost 86 ) 0.166 * [simplify]: Simplified to: (expm1 (* x (+ y 1.0))) (log1p (* x (+ y 1.0))) (* x (+ y 1.0)) (log (* x (+ y 1.0))) (log (* x (+ y 1.0))) (exp (* x (+ y 1.0))) (pow (* x (+ y 1.0)) 3) (* (cbrt (* x (+ y 1.0))) (cbrt (* x (+ y 1.0)))) (cbrt (* x (+ y 1.0))) (pow (* x (+ y 1.0)) 3) (sqrt (* x (+ y 1.0))) (sqrt (* x (+ y 1.0))) (* (sqrt x) (sqrt (+ y 1.0))) (* (sqrt x) (sqrt (+ y 1.0))) (* x y) (* x 1.0) (* x 1.0) (* x y) (* x y) (* x 1.0) (* x 1.0) (* x y) (* x (* (cbrt (+ y 1.0)) (cbrt (+ y 1.0)))) (* x (sqrt (+ y 1.0))) x x (* (cbrt x) (+ y 1.0)) (* (sqrt x) (+ y 1.0)) (* x (+ y 1.0)) (* x (+ (pow y 3) (pow 1.0 3))) (* x (- (* y y) (* 1.0 1.0))) (* x (+ y 1.0)) (* x (+ y 1.0)) (* x (+ y 1.0)) 0.166 * * * [progress]: adding candidates to table 0.202 * * [progress]: iteration 2 / 4 0.202 * * * [progress]: picking best candidate 0.204 * * * * [pick]: Picked # 0.204 * * * [progress]: localizing error 0.209 * * * [progress]: generating rewritten candidates 0.209 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.225 * * * [progress]: generating series expansions 0.225 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.226 * [approximate]: Taking taylor expansion of (+ (* 1.0 x) (* x y)) in (x y) around 0 0.226 * [taylor]: Taking taylor expansion of (+ (* 1.0 x) (* x y)) in y 0.226 * [taylor]: Taking taylor expansion of (* 1.0 x) in y 0.226 * [taylor]: Taking taylor expansion of 1.0 in y 0.226 * [taylor]: Taking taylor expansion of x in y 0.226 * [taylor]: Taking taylor expansion of (* x y) in y 0.226 * [taylor]: Taking taylor expansion of x in y 0.226 * [taylor]: Taking taylor expansion of y in y 0.226 * [taylor]: Taking taylor expansion of (+ (* 1.0 x) (* x y)) in x 0.226 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.226 * [taylor]: Taking taylor expansion of 1.0 in x 0.226 * [taylor]: Taking taylor expansion of x in x 0.226 * [taylor]: Taking taylor expansion of (* x y) in x 0.226 * [taylor]: Taking taylor expansion of x in x 0.226 * [taylor]: Taking taylor expansion of y in x 0.226 * [taylor]: Taking taylor expansion of (+ (* 1.0 x) (* x y)) in x 0.226 * [taylor]: Taking taylor expansion of (* 1.0 x) in x 0.226 * [taylor]: Taking taylor expansion of 1.0 in x 0.226 * [taylor]: Taking taylor expansion of x in x 0.226 * [taylor]: Taking taylor expansion of (* x y) in x 0.226 * [taylor]: Taking taylor expansion of x in x 0.226 * [taylor]: Taking taylor expansion of y in x 0.227 * [taylor]: Taking taylor expansion of 0 in y 0.229 * [taylor]: Taking taylor expansion of (+ y 1.0) in y 0.229 * [taylor]: Taking taylor expansion of y in y 0.229 * [taylor]: Taking taylor expansion of 1.0 in y 0.231 * [taylor]: Taking taylor expansion of 0 in y 0.233 * [taylor]: Taking taylor expansion of 0 in y 0.236 * [taylor]: Taking taylor expansion of 0 in y 0.236 * [approximate]: Taking taylor expansion of (+ (/ 1 (* x y)) (* 1.0 (/ 1 x))) in (x y) around 0 0.236 * [taylor]: Taking taylor expansion of (+ (/ 1 (* x y)) (* 1.0 (/ 1 x))) in y 0.236 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in y 0.236 * [taylor]: Taking taylor expansion of (* x y) in y 0.236 * [taylor]: Taking taylor expansion of x in y 0.236 * [taylor]: Taking taylor expansion of y in y 0.237 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in y 0.237 * [taylor]: Taking taylor expansion of 1.0 in y 0.237 * [taylor]: Taking taylor expansion of (/ 1 x) in y 0.237 * [taylor]: Taking taylor expansion of x in y 0.237 * [taylor]: Taking taylor expansion of (+ (/ 1 (* x y)) (* 1.0 (/ 1 x))) in x 0.237 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in x 0.237 * [taylor]: Taking taylor expansion of (* x y) in x 0.237 * [taylor]: Taking taylor expansion of x in x 0.237 * [taylor]: Taking taylor expansion of y in x 0.237 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.237 * [taylor]: Taking taylor expansion of 1.0 in x 0.237 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.237 * [taylor]: Taking taylor expansion of x in x 0.238 * [taylor]: Taking taylor expansion of (+ (/ 1 (* x y)) (* 1.0 (/ 1 x))) in x 0.238 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in x 0.238 * [taylor]: Taking taylor expansion of (* x y) in x 0.238 * [taylor]: Taking taylor expansion of x in x 0.238 * [taylor]: Taking taylor expansion of y in x 0.238 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.238 * [taylor]: Taking taylor expansion of 1.0 in x 0.238 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.238 * [taylor]: Taking taylor expansion of x in x 0.239 * [taylor]: Taking taylor expansion of (+ (/ 1 y) 1.0) in y 0.239 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.239 * [taylor]: Taking taylor expansion of y in y 0.239 * [taylor]: Taking taylor expansion of 1.0 in y 0.241 * [taylor]: Taking taylor expansion of 0 in y 0.245 * [taylor]: Taking taylor expansion of 0 in y 0.248 * [taylor]: Taking taylor expansion of 0 in y 0.258 * [taylor]: Taking taylor expansion of 0 in y 0.259 * [approximate]: Taking taylor expansion of (- (/ 1 (* x y)) (* 1.0 (/ 1 x))) in (x y) around 0 0.259 * [taylor]: Taking taylor expansion of (- (/ 1 (* x y)) (* 1.0 (/ 1 x))) in y 0.259 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in y 0.259 * [taylor]: Taking taylor expansion of (* x y) in y 0.259 * [taylor]: Taking taylor expansion of x in y 0.259 * [taylor]: Taking taylor expansion of y in y 0.260 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in y 0.260 * [taylor]: Taking taylor expansion of 1.0 in y 0.260 * [taylor]: Taking taylor expansion of (/ 1 x) in y 0.260 * [taylor]: Taking taylor expansion of x in y 0.260 * [taylor]: Taking taylor expansion of (- (/ 1 (* x y)) (* 1.0 (/ 1 x))) in x 0.260 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in x 0.260 * [taylor]: Taking taylor expansion of (* x y) in x 0.260 * [taylor]: Taking taylor expansion of x in x 0.260 * [taylor]: Taking taylor expansion of y in x 0.260 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.260 * [taylor]: Taking taylor expansion of 1.0 in x 0.260 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.260 * [taylor]: Taking taylor expansion of x in x 0.261 * [taylor]: Taking taylor expansion of (- (/ 1 (* x y)) (* 1.0 (/ 1 x))) in x 0.261 * [taylor]: Taking taylor expansion of (/ 1 (* x y)) in x 0.261 * [taylor]: Taking taylor expansion of (* x y) in x 0.261 * [taylor]: Taking taylor expansion of x in x 0.261 * [taylor]: Taking taylor expansion of y in x 0.261 * [taylor]: Taking taylor expansion of (* 1.0 (/ 1 x)) in x 0.261 * [taylor]: Taking taylor expansion of 1.0 in x 0.261 * [taylor]: Taking taylor expansion of (/ 1 x) in x 0.261 * [taylor]: Taking taylor expansion of x in x 0.263 * [taylor]: Taking taylor expansion of (- (/ 1 y) 1.0) in y 0.263 * [taylor]: Taking taylor expansion of (/ 1 y) in y 0.263 * [taylor]: Taking taylor expansion of y in y 0.263 * [taylor]: Taking taylor expansion of 1.0 in y 0.266 * [taylor]: Taking taylor expansion of 0 in y 0.270 * [taylor]: Taking taylor expansion of 0 in y 0.275 * [taylor]: Taking taylor expansion of 0 in y 0.279 * [taylor]: Taking taylor expansion of 0 in y 0.280 * * * [progress]: simplifying candidates 0.280 * [simplify]: Simplifying using # : (expm1 (+ (* x 1.0) (* x y))) (log1p (+ (* x 1.0) (* x y))) (* (exp (* x 1.0)) (exp (* x y))) (log (+ (* x 1.0) (* x y))) (exp (+ (* x 1.0) (* x y))) (* (cbrt (+ (* x 1.0) (* x y))) (cbrt (+ (* x 1.0) (* x y)))) (cbrt (+ (* x 1.0) (* x y))) (* (* (+ (* x 1.0) (* x y)) (+ (* x 1.0) (* x y))) (+ (* x 1.0) (* x y))) (sqrt (+ (* x 1.0) (* x y))) (sqrt (+ (* x 1.0) (* x y))) (+ (pow (* x 1.0) 3) (pow (* x y) 3)) (+ (* (* x 1.0) (* x 1.0)) (- (* (* x y) (* x y)) (* (* x 1.0) (* x y)))) (- (* (* x 1.0) (* x 1.0)) (* (* x y) (* x y))) (- (* x 1.0) (* x y)) (+ 1.0 y) (+ (* x 1.0) (* x y)) (+ (* x 1.0) (* x y)) (+ 1.0 y) (+ (* (cbrt x) 1.0) (* (cbrt x) y)) (+ (* (sqrt x) 1.0) (* (sqrt x) y)) (+ (* x 1.0) (* x y)) (+ (* x 1.0) (* x y)) (+ 1.0 y) (+ (* 1.0 x) (* x y)) (+ (* 1.0 x) (* x y)) (+ (* 1.0 x) (* x y)) 0.286 * * [simplify]: iteration 0 : 118 enodes (cost 96 ) 0.291 * * [simplify]: iteration 1 : 390 enodes (cost 85 ) 0.307 * * [simplify]: iteration 2 : 1452 enodes (cost 84 ) 0.350 * * [simplify]: iteration 3 : 4752 enodes (cost 83 ) 0.449 * * [simplify]: iteration 4 : 5001 enodes (cost 83 ) 0.450 * [simplify]: Simplified to: (expm1 (+ (* x 1.0) (* x y))) (log1p (+ (* x 1.0) (* x y))) (pow (exp x) (+ 1.0 y)) (log (+ (* x 1.0) (* x y))) (pow (exp x) (+ 1.0 y)) (* (cbrt (+ (* x 1.0) (* x y))) (cbrt (+ (* x 1.0) (* x y)))) (cbrt (+ (* x 1.0) (* x y))) (pow (fma x 1.0 (* x y)) 3) (sqrt (+ (* x 1.0) (* x y))) (sqrt (+ (* x 1.0) (* x y))) (+ (pow (* x 1.0) 3) (pow (* x y) 3)) (* (* x x) (- (fma 1.0 1.0 (* y y)) (* 1.0 y))) (* (* x x) (- (* 1.0 1.0) (* y y))) (* x (- 1.0 y)) (+ 1.0 y) (fma x 1.0 (* x y)) (fma x 1.0 (* x y)) (+ 1.0 y) (* (cbrt x) (+ 1.0 y)) (* (sqrt x) (+ 1.0 y)) (fma x 1.0 (* x y)) (fma x 1.0 (* x y)) (+ 1.0 y) (fma x 1.0 (* x y)) (fma x 1.0 (* x y)) (fma x 1.0 (* x y)) 0.451 * * * [progress]: adding candidates to table 0.502 * [progress]: [Phase 3 of 3] Extracting. 0.503 * * [regime]: Finding splitpoints for: (# #) 0.503 * * * [regime-changes]: Trying 4 branch expressions: ((+ y 1.0) (* x (+ y 1.0)) y x) 0.503 * * * * [regimes]: Trying to branch on (+ y 1.0) from (# #) 0.514 * * * * [regimes]: Trying to branch on (* x (+ y 1.0)) from (# #) 0.526 * * * * [regimes]: Trying to branch on y from (# #) 0.543 * * * * [regimes]: Trying to branch on x from (# #) 0.556 * * * [regime]: Found split indices: #