* [misc]progress: [Phase 1 of 3] Setting up. * * * [misc]progress: [1/2] Preparing points * * * * [misc]points: Sampling 256 additional inputs, on iter 0 have 0 / 256 * * * * [misc]points: Computing exacts on every 16 of 256 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 64 * * * * [misc]points: Setting MPFR precision to 320 * * * * [misc]points: Setting MPFR precision to 576 * * * * [misc]points: Setting MPFR precision to 832 * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts on every 8 of 256 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts on every 4 of 256 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts on every 2 of 256 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts for 256 points * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Filtering points with unrepresentable outputs * * * * [misc]points: Sampling 89 additional inputs, on iter 1 have 167 / 256 * * * * [misc]points: Computing exacts on every 5 of 89 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts on every 2 of 89 points to ramp up precision * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Computing exacts for 89 points * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Filtering points with unrepresentable outputs * * * * [misc]points: Sampling 28 additional inputs, on iter 2 have 228 / 256 * * * * [misc]points: Computing exacts for 28 points * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Filtering points with unrepresentable outputs * * * * [misc]points: Sampling 9 additional inputs, on iter 3 have 247 / 256 * * * * [misc]points: Computing exacts for 9 points * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Filtering points with unrepresentable outputs * * * * [misc]points: Sampling 4 additional inputs, on iter 4 have 254 / 256 * * * * [misc]points: Computing exacts for 4 points * * * * [misc]points: Setting MPFR precision to 1088 * * * * [misc]points: Setting MPFR precision to 1344 * * * * [misc]points: Filtering points with unrepresentable outputs * * * * [exit]points: Sampled 257 points with exact outputs * * * [misc]progress: [2/2] Setting up program. * [misc]progress: [Phase 2 of 3] Improving. * [enter]simplify: Simplifying (- (exp x) 1) * * [misc]simplify: iters left: 3 (4 enodes) * * [misc]simplify: iters left: 2 (10 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 5 inf + 0 * * [misc]simplify: Extracting #2: cost 2 inf + 3 * * [misc]simplify: Extracting #3: cost 0 inf + 145 * [exit]simplify: Simplified to (expm1 x) * * [misc]progress: iteration 1 / 4 * * * [misc]progress: picking best candidate * * * * [misc]pick: Picked # * * * [misc]progress: localizing error * * * [misc]progress: generating rewritten candidates * * * [misc]progress: generating series expansions * * * [misc]progress: simplifying candidates * * * [misc]progress: adding candidates to table * * [misc]progress: iteration 2 / 4 * * * [misc]progress: picking best candidate * * * * [misc]pick: Picked # * * * [misc]progress: localizing error * * * [misc]progress: generating rewritten candidates * * * * [misc]progress: [ 1 / 1 ] rewriting at (2) * * * [misc]progress: generating series expansions * * * * [misc]progress: [ 1 / 1 ] generating series at (2) * [misc]approximate: Taking taylor expansion of (- (exp x) 1) in (x) around 0 * [misc]taylor: Taking taylor expansion of (- (exp x) 1) in x * [misc]taylor: Taking taylor expansion of (exp x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (exp 0) into 1 * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]taylor: Taking taylor expansion of (- (exp x) 1) in x * [misc]taylor: Taking taylor expansion of (exp x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (exp 0) into 1 * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (+ 1 -1) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (* (exp 0) (+ (* (/ (pow 1 1) 1)))) into 1 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 1 0) into 1 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (* (exp 0) (+ (* (/ (pow 1 2) 2)) (* (/ (pow 0 1) 1)))) into 1/2 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 1/2 0) into 1/2 * [misc]backup-simplify: Simplify 1/2 into 1/2 * [misc]backup-simplify: Simplify (* (exp 0) (+ (* (/ (pow 1 3) 6)) (* (/ (pow 1 1) 1) (/ (pow 0 1) 1)) (* (/ (pow 0 1) 1)))) into 1/6 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 1/6 0) into 1/6 * [misc]backup-simplify: Simplify 1/6 into 1/6 * [misc]backup-simplify: Simplify (+ (* 1/6 (pow x 3)) (+ (* 1/2 (pow x 2)) (* 1 x))) into (+ x (+ (* 1/6 (pow x 3)) (* 1/2 (pow x 2)))) * [misc]approximate: Taking taylor expansion of (- (exp (/ 1 x)) 1) in (x) around 0 * [misc]taylor: Taking taylor expansion of (- (exp (/ 1 x)) 1) in x * [misc]taylor: Taking taylor expansion of (exp (/ 1 x)) in x * [misc]taylor: Taking taylor expansion of (/ 1 x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (/ 1 1) into 1 * [misc]backup-simplify: Simplify (exp (/ 1 x)) into (exp (/ 1 x)) * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]taylor: Taking taylor expansion of (- (exp (/ 1 x)) 1) in x * [misc]taylor: Taking taylor expansion of (exp (/ 1 x)) in x * [misc]taylor: Taking taylor expansion of (/ 1 x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (/ 1 1) into 1 * [misc]backup-simplify: Simplify (exp (/ 1 x)) into (exp (/ 1 x)) * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (+ (exp (/ 1 x)) -1) into (- (exp (/ 1 x)) 1) * [misc]backup-simplify: Simplify (- (exp (/ 1 x)) 1) into (- (exp (/ 1 x)) 1) * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- (exp (/ 1 (/ 1 x))) 1) into (- (exp x) 1) * [misc]approximate: Taking taylor expansion of (- (exp (/ 1 (- x))) 1) in (x) around 0 * [misc]taylor: Taking taylor expansion of (- (exp (/ 1 (- x))) 1) in x * [misc]taylor: Taking taylor expansion of (exp (/ 1 (- x))) in x * [misc]taylor: Taking taylor expansion of (/ 1 (- x)) in x * [misc]taylor: Taking taylor expansion of (- x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (/ 1 -1) into -1 * [misc]backup-simplify: Simplify (exp (/ 1 (- x))) into (exp (/ -1 x)) * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]taylor: Taking taylor expansion of (- (exp (/ 1 (- x))) 1) in x * [misc]taylor: Taking taylor expansion of (exp (/ 1 (- x))) in x * [misc]taylor: Taking taylor expansion of (/ 1 (- x)) in x * [misc]taylor: Taking taylor expansion of (- x) in x * [misc]taylor: Taking taylor expansion of x in x * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (/ 1 -1) into -1 * [misc]backup-simplify: Simplify (exp (/ 1 (- x))) into (exp (/ -1 x)) * [misc]taylor: Taking taylor expansion of 1 in x * [misc]backup-simplify: Simplify 1 into 1 * [misc]backup-simplify: Simplify (- 1) into -1 * [misc]backup-simplify: Simplify (+ (exp (/ -1 x)) -1) into (- (exp (/ -1 x)) 1) * [misc]backup-simplify: Simplify (- (exp (/ -1 x)) 1) into (- (exp (/ -1 x)) 1) * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- 0) into 0 * [misc]backup-simplify: Simplify (+ 0 0) into 0 * [misc]backup-simplify: Simplify 0 into 0 * [misc]backup-simplify: Simplify (- (exp (/ -1 (/ 1 (- x)))) 1) into (- (exp x) 1) * * * [misc]progress: simplifying candidates * * * * [misc]progress: [ 1 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 2 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 3 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 4 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (* (cbrt (exp x)) (cbrt (exp x))) * * [misc]simplify: iters left: 4 (4 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 2 inf + 0 * * [misc]simplify: Extracting #2: cost 3 inf + 0 * * [misc]simplify: Extracting #3: cost 4 inf + 0 * * [misc]simplify: Extracting #4: cost 3 inf + 1 * * [misc]simplify: Extracting #5: cost 0 inf + 414 * [exit]simplify: Simplified to (* (cbrt (exp x)) (cbrt (exp x))) * [misc]simplify: Simplified (2 1) to (λ (x) (fma (* (cbrt (exp x)) (cbrt (exp x))) (cbrt (exp x)) (- 1))) * * * * [misc]progress: [ 5 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (sqrt (exp x)) * * [misc]simplify: iters left: 2 (3 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 2 inf + 0 * * [misc]simplify: Extracting #2: cost 3 inf + 0 * * [misc]simplify: Extracting #3: cost 2 inf + 1 * * [misc]simplify: Extracting #4: cost 0 inf + 183 * [exit]simplify: Simplified to (sqrt (exp x)) * [misc]simplify: Simplified (2 1) to (λ (x) (fma (sqrt (exp x)) (sqrt (exp x)) (- 1))) * * * * [misc]progress: [ 6 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 7 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 8 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 9 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 10 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 11 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 12 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 13 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 14 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 15 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 16 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 17 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (+ (sqrt (exp x)) 1) * * [misc]simplify: iters left: 4 (5 enodes) * * [misc]simplify: iters left: 3 (8 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 3 inf + 0 * * [misc]simplify: Extracting #2: cost 3 inf + 1 * * [misc]simplify: Extracting #3: cost 4 inf + 1 * * [misc]simplify: Extracting #4: cost 3 inf + 2 * * [misc]simplify: Extracting #5: cost 0 inf + 336 * [exit]simplify: Simplified to (+ 1 (sqrt (exp x))) * [misc]simplify: Simplified (2 1) to (λ (x) (* (+ 1 (sqrt (exp x))) (- (sqrt (exp x)) 1))) * * * * [misc]progress: [ 18 / 21 ] simplifiying candidate # * * * * [misc]progress: [ 19 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (+ x (+ (* 1/6 (pow x 3)) (* 1/2 (pow x 2)))) * * [misc]simplify: iters left: 6 (11 enodes) * * [misc]simplify: iters left: 5 (21 enodes) * * [misc]simplify: iters left: 4 (45 enodes) * * [misc]simplify: iters left: 3 (92 enodes) * * [misc]simplify: iters left: 2 (151 enodes) * * [misc]simplify: iters left: 1 (211 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 21 inf + 0 * * [misc]simplify: Extracting #2: cost 21 inf + 3 * * [misc]simplify: Extracting #3: cost 5 inf + 1376 * * [misc]simplify: Extracting #4: cost 0 inf + 1733 * [exit]simplify: Simplified to (fma (* (fma x 1/6 1/2) x) x x) * [misc]simplify: Simplified (2) to (λ (x) (fma (* (fma x 1/6 1/2) x) x x)) * * * * [misc]progress: [ 20 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (- (exp x) 1) * * [misc]simplify: iters left: 3 (4 enodes) * * [misc]simplify: iters left: 2 (10 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 5 inf + 0 * * [misc]simplify: Extracting #2: cost 2 inf + 3 * * [misc]simplify: Extracting #3: cost 0 inf + 145 * [exit]simplify: Simplified to (expm1 x) * [misc]simplify: Simplified (2) to (λ (x) (expm1 x)) * * * * [misc]progress: [ 21 / 21 ] simplifiying candidate # * [enter]simplify: Simplifying (- (exp x) 1) * * [misc]simplify: iters left: 3 (4 enodes) * * [misc]simplify: iters left: 2 (10 enodes) * * [misc]simplify: Extracting #0: cost 1 inf + 0 * * [misc]simplify: Extracting #1: cost 5 inf + 0 * * [misc]simplify: Extracting #2: cost 2 inf + 3 * * [misc]simplify: Extracting #3: cost 0 inf + 145 * [exit]simplify: Simplified to (expm1 x) * [misc]simplify: Simplified (2) to (λ (x) (expm1 x)) * * * [misc]progress: adding candidates to table * [misc]progress: [Phase 3 of 3] Extracting. * * [misc]regime: Finding splitpoints for: (# #) * * * [misc]regime-changes: Trying 3 branch expressions: (x (exp x) (- (exp x) 1)) * * * * [misc]regimes: Trying to branch on x from (# #) * * * * [misc]regimes: Trying to branch on (exp x) from (# #) * * * * [misc]regimes: Trying to branch on (- (exp x) 1) from (# #) * * * [misc]regime: Found split indices: #