0.003 * [progress]: [Phase 1 of 3] Setting up. 0.004 * * * [progress]: [1/2] Preparing points 0.007 * * * * [points]: Sampling 256 additional inputs, on iter 0 have 0 / 256 0.009 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.251 * * * * [points]: Setting MPFR precision to 64 0.262 * * * * [points]: Setting MPFR precision to 320 0.267 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.276 * * * * [points]: Setting MPFR precision to 64 0.280 * * * * [points]: Setting MPFR precision to 320 0.284 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.289 * * * * [points]: Setting MPFR precision to 64 0.298 * * * * [points]: Setting MPFR precision to 320 0.302 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.305 * * * * [points]: Setting MPFR precision to 64 0.316 * * * * [points]: Setting MPFR precision to 320 0.328 * * * * [points]: Computing exacts for 256 points 0.333 * * * * [points]: Setting MPFR precision to 64 0.364 * * * * [points]: Setting MPFR precision to 320 0.401 * * * * [points]: Filtering points with unrepresentable outputs 0.403 * * * * [points]: Sampled 256 points with exact outputs 0.404 * * * [progress]: [2/2] Setting up program. 0.473 * [progress]: [Phase 2 of 3] Improving. 0.473 * * * * [progress]: [ 1 / 1 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 0.475 * [simplify]: Simplifying (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)) 0.476 * * [simplify]: iters left: 6 (16 enodes) 1.069 * * [simplify]: iters left: 5 (45 enodes) 1.086 * * [simplify]: iters left: 4 (91 enodes) 1.123 * * [simplify]: iters left: 3 (310 enodes) 1.309 * * [simplify]: Extracting #0: cost 1 inf + 0 1.310 * * [simplify]: Extracting #1: cost 31 inf + 0 1.311 * * [simplify]: Extracting #2: cost 123 inf + 1 1.312 * * [simplify]: Extracting #3: cost 201 inf + 1129 1.313 * * [simplify]: Extracting #4: cost 263 inf + 9871 1.319 * * [simplify]: Extracting #5: cost 270 inf + 82040 1.342 * * [simplify]: Extracting #6: cost 192 inf + 363234 1.388 * * [simplify]: Extracting #7: cost 15 inf + 679901 1.430 * * [simplify]: Extracting #8: cost 0 inf + 712557 1.479 * [simplify]: Simplified to (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a)) 1.479 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a))) 1.498 * * [progress]: iteration 1 / 4 1.498 * * * [progress]: picking best candidate 1.515 * * * * [pick]: Picked #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 1.515 * * * [progress]: localizing error 1.866 * * * [progress]: generating rewritten candidates 1.867 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 1.873 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 2) 1.873 * * * * [progress]: [ 3 / 4 ] rewriting at (2) 1.878 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2 1 2) 1.884 * * * [progress]: generating series expansions 1.884 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 1.884 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 2) 1.884 * * * * [progress]: [ 3 / 4 ] generating series at (2) 1.884 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2 1 2) 1.884 * * * [progress]: simplifying candidates 1.885 * * * * [progress]: [ 1 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> 1.885 * * * * [progress]: [ 2 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> 1.885 * * * * [progress]: [ 3 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 1.885 * * * * [progress]: [ 4 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 1.885 * [simplify]: Simplifying (-.p16 (*.p16 (neg.p16 b) (neg.p16 b)) (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) 1.885 * * [simplify]: iters left: 6 (14 enodes) 1.889 * * [simplify]: iters left: 5 (42 enodes) 1.897 * * [simplify]: iters left: 4 (117 enodes) 1.943 * * [simplify]: iters left: 3 (426 enodes) 2.218 * * [simplify]: Extracting #0: cost 1 inf + 0 2.218 * * [simplify]: Extracting #1: cost 51 inf + 0 2.218 * * [simplify]: Extracting #2: cost 242 inf + 0 2.220 * * [simplify]: Extracting #3: cost 408 inf + 4895 2.235 * * [simplify]: Extracting #4: cost 386 inf + 288425 2.305 * * [simplify]: Extracting #5: cost 133 inf + 992840 2.419 * * [simplify]: Extracting #6: cost 2 inf + 1243260 2.508 * * [simplify]: Extracting #7: cost 0 inf + 1250148 2.619 * [simplify]: Simplified to (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) 2.619 * [simplify]: Simplified (2 1) to (λ (a b c) (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))) 2.619 * * * * [progress]: [ 5 / 10 ] simplifiying candidate #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 2.619 * * * * [progress]: [ 6 / 10 ] simplifiying candidate #posit16 4))))) (*.p16 (real->posit16 2) a)))> 2.619 * * * * [progress]: [ 7 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 2.619 * [simplify]: Simplifying (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)) 2.620 * * [simplify]: iters left: 6 (16 enodes) 2.623 * * [simplify]: iters left: 5 (45 enodes) 2.632 * * [simplify]: iters left: 4 (91 enodes) 2.663 * * [simplify]: iters left: 3 (310 enodes) 2.840 * * [simplify]: Extracting #0: cost 1 inf + 0 2.840 * * [simplify]: Extracting #1: cost 31 inf + 0 2.841 * * [simplify]: Extracting #2: cost 123 inf + 1 2.842 * * [simplify]: Extracting #3: cost 201 inf + 1129 2.844 * * [simplify]: Extracting #4: cost 263 inf + 9871 2.850 * * [simplify]: Extracting #5: cost 270 inf + 82040 2.879 * * [simplify]: Extracting #6: cost 192 inf + 363234 2.915 * * [simplify]: Extracting #7: cost 15 inf + 679901 2.961 * * [simplify]: Extracting #8: cost 0 inf + 712557 3.001 * [simplify]: Simplified to (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a)) 3.001 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a))) 3.001 * * * * [progress]: [ 8 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 3.002 * [simplify]: Simplifying (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)) 3.002 * * [simplify]: iters left: 6 (16 enodes) 3.009 * * [simplify]: iters left: 5 (45 enodes) 3.025 * * [simplify]: iters left: 4 (91 enodes) 3.055 * * [simplify]: iters left: 3 (310 enodes) 3.199 * * [simplify]: Extracting #0: cost 1 inf + 0 3.199 * * [simplify]: Extracting #1: cost 31 inf + 0 3.199 * * [simplify]: Extracting #2: cost 123 inf + 1 3.200 * * [simplify]: Extracting #3: cost 201 inf + 1129 3.202 * * [simplify]: Extracting #4: cost 263 inf + 9871 3.208 * * [simplify]: Extracting #5: cost 270 inf + 82040 3.235 * * [simplify]: Extracting #6: cost 192 inf + 363234 3.271 * * [simplify]: Extracting #7: cost 15 inf + 679901 3.332 * * [simplify]: Extracting #8: cost 0 inf + 712557 3.367 * [simplify]: Simplified to (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a)) 3.367 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a))) 3.367 * * * * [progress]: [ 9 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 3.368 * [simplify]: Simplifying (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)) 3.368 * * [simplify]: iters left: 6 (16 enodes) 3.372 * * [simplify]: iters left: 5 (45 enodes) 3.380 * * [simplify]: iters left: 4 (91 enodes) 3.411 * * [simplify]: iters left: 3 (310 enodes) 3.557 * * [simplify]: Extracting #0: cost 1 inf + 0 3.557 * * [simplify]: Extracting #1: cost 31 inf + 0 3.558 * * [simplify]: Extracting #2: cost 123 inf + 1 3.559 * * [simplify]: Extracting #3: cost 201 inf + 1129 3.561 * * [simplify]: Extracting #4: cost 263 inf + 9871 3.566 * * [simplify]: Extracting #5: cost 270 inf + 82040 3.581 * * [simplify]: Extracting #6: cost 192 inf + 363234 3.624 * * [simplify]: Extracting #7: cost 15 inf + 679901 3.663 * * [simplify]: Extracting #8: cost 0 inf + 712557 3.710 * [simplify]: Simplified to (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a)) 3.710 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a))) 3.710 * * * * [progress]: [ 10 / 10 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 3.711 * [simplify]: Simplifying (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)) 3.711 * * [simplify]: iters left: 6 (16 enodes) 3.715 * * [simplify]: iters left: 5 (45 enodes) 3.724 * * [simplify]: iters left: 4 (91 enodes) 3.759 * * [simplify]: iters left: 3 (310 enodes) 3.899 * * [simplify]: Extracting #0: cost 1 inf + 0 3.900 * * [simplify]: Extracting #1: cost 31 inf + 0 3.900 * * [simplify]: Extracting #2: cost 123 inf + 1 3.901 * * [simplify]: Extracting #3: cost 201 inf + 1129 3.903 * * [simplify]: Extracting #4: cost 263 inf + 9871 3.913 * * [simplify]: Extracting #5: cost 270 inf + 82040 3.939 * * [simplify]: Extracting #6: cost 192 inf + 363234 3.967 * * [simplify]: Extracting #7: cost 15 inf + 679901 4.019 * * [simplify]: Extracting #8: cost 0 inf + 712557 4.062 * [simplify]: Simplified to (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a)) 4.063 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 (real->posit16 2) a))) 4.063 * * * [progress]: adding candidates to table 4.505 * * [progress]: iteration 2 / 4 4.505 * * * [progress]: picking best candidate 4.611 * * * * [pick]: Picked #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 4.611 * * * [progress]: localizing error 4.815 * * * [progress]: generating rewritten candidates 4.815 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 4.817 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 2) 4.817 * * * * [progress]: [ 3 / 4 ] rewriting at (2) 4.821 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2 1) 4.833 * * * [progress]: generating series expansions 4.833 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 4.833 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 2) 4.833 * * * * [progress]: [ 3 / 4 ] generating series at (2) 4.833 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2 1) 4.833 * * * [progress]: simplifying candidates 4.833 * * * * [progress]: [ 1 / 10 ] simplifiying candidate #posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> 4.833 * * * * [progress]: [ 2 / 10 ] simplifiying candidate #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> 4.833 * * * * [progress]: [ 3 / 10 ] simplifiying candidate #posit16 4) a) c)))) (real->posit16 2)) a))> 4.833 * * * * [progress]: [ 4 / 10 ] simplifiying candidate #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))> 4.834 * [simplify]: Simplifying (-.p16 (*.p16 (neg.p16 b) (neg.p16 b)) (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) 4.834 * * [simplify]: iters left: 6 (14 enodes) 4.838 * * [simplify]: iters left: 5 (42 enodes) 4.846 * * [simplify]: iters left: 4 (117 enodes) 4.892 * * [simplify]: iters left: 3 (432 enodes) 5.171 * * [simplify]: Extracting #0: cost 1 inf + 0 5.172 * * [simplify]: Extracting #1: cost 51 inf + 0 5.173 * * [simplify]: Extracting #2: cost 242 inf + 0 5.175 * * [simplify]: Extracting #3: cost 412 inf + 3092 5.194 * * [simplify]: Extracting #4: cost 427 inf + 239293 5.280 * * [simplify]: Extracting #5: cost 159 inf + 940878 5.397 * * [simplify]: Extracting #6: cost 1 inf + 1259592 5.519 * * [simplify]: Extracting #7: cost 0 inf + 1262236 5.639 * [simplify]: Simplified to (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 c (*.p16 a (real->posit16 4)))) 5.639 * [simplify]: Simplified (2 1) to (λ (a b c) (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 c (*.p16 a (real->posit16 4)))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))))) 5.639 * * * * [progress]: [ 5 / 10 ] simplifiying candidate #posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> 5.640 * * * * [progress]: [ 6 / 10 ] simplifiying candidate #posit16 4) a) c) (*.p16 (*.p16 (real->posit16 4) a) c))) (+.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> 5.640 * * * * [progress]: [ 7 / 10 ] simplifiying candidate #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 5.640 * * * * [progress]: [ 8 / 10 ] simplifiying candidate #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 5.640 * * * * [progress]: [ 9 / 10 ] simplifiying candidate #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 5.640 * * * * [progress]: [ 10 / 10 ] simplifiying candidate #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> 5.640 * * * [progress]: adding candidates to table 6.068 * * [progress]: iteration 3 / 4 6.068 * * * [progress]: picking best candidate 6.245 * * * * [pick]: Picked #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 6.245 * * * [progress]: localizing error 6.483 * * * [progress]: generating rewritten candidates 6.483 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1 1) 6.485 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 2) 6.485 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 2 1 2) 6.489 * * * * [progress]: [ 4 / 4 ] rewriting at (2) 6.493 * * * [progress]: generating series expansions 6.493 * * * * [progress]: [ 1 / 4 ] generating series at (2 1 1) 6.493 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 2) 6.493 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 2 1 2) 6.493 * * * * [progress]: [ 4 / 4 ] generating series at (2) 6.493 * * * [progress]: simplifying candidates 6.493 * * * * [progress]: [ 1 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> 6.493 * * * * [progress]: [ 2 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> 6.493 * * * * [progress]: [ 3 / 9 ] simplifiying candidate #posit16 4) a) c)))) (real->posit16 2)) a))> 6.493 * * * * [progress]: [ 4 / 9 ] simplifiying candidate #posit16 4))))) (real->posit16 2)) a))> 6.493 * * * * [progress]: [ 5 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 a (real->posit16 2))))> 6.494 * [simplify]: Simplifying (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) 6.494 * * [simplify]: iters left: 5 (12 enodes) 6.497 * * [simplify]: iters left: 4 (37 enodes) 6.504 * * [simplify]: iters left: 3 (79 enodes) 6.538 * * [simplify]: iters left: 2 (262 enodes) 6.660 * * [simplify]: Extracting #0: cost 1 inf + 0 6.660 * * [simplify]: Extracting #1: cost 17 inf + 0 6.661 * * [simplify]: Extracting #2: cost 88 inf + 1 6.662 * * [simplify]: Extracting #3: cost 166 inf + 804 6.663 * * [simplify]: Extracting #4: cost 230 inf + 3734 6.668 * * [simplify]: Extracting #5: cost 225 inf + 64494 6.690 * * [simplify]: Extracting #6: cost 137 inf + 332479 6.713 * * [simplify]: Extracting #7: cost 1 inf + 596662 6.739 * * [simplify]: Extracting #8: cost 0 inf + 599226 6.789 * [simplify]: Simplified to (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) 6.789 * [simplify]: Simplified (2 1) to (λ (a b c) (/.p16 (-.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 a (real->posit16 2)))) 6.789 * * * * [progress]: [ 6 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 6.790 * * * * [progress]: [ 7 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 6.790 * * * * [progress]: [ 8 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 6.790 * * * * [progress]: [ 9 / 9 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (real->posit16 2)) a))> 6.790 * * * [progress]: adding candidates to table 7.312 * * [progress]: iteration 4 / 4 7.312 * * * [progress]: picking best candidate 7.440 * * * * [pick]: Picked #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 7.440 * * * [progress]: localizing error 7.786 * * * [progress]: generating rewritten candidates 7.786 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2 2) 7.791 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 7.799 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2 2 2) 7.799 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2 2 2 1 2) 7.807 * * * [progress]: generating series expansions 7.808 * * * * [progress]: [ 1 / 4 ] generating series at (2 2 2) 7.808 * * * * [progress]: [ 2 / 4 ] generating series at (2) 7.808 * * * * [progress]: [ 3 / 4 ] generating series at (2 2 2 2) 7.808 * * * * [progress]: [ 4 / 4 ] generating series at (2 2 2 2 1 2) 7.808 * * * [progress]: simplifying candidates 7.808 * * * * [progress]: [ 1 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))) (neg.p16 b)))))> 7.808 * * * * [progress]: [ 2 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))> 7.808 * [simplify]: Simplifying (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) 7.808 * * [simplify]: iters left: 5 (12 enodes) 7.813 * * [simplify]: iters left: 4 (31 enodes) 7.824 * * [simplify]: iters left: 3 (64 enodes) 7.849 * * [simplify]: iters left: 2 (183 enodes) 7.963 * * [simplify]: Extracting #0: cost 1 inf + 0 7.963 * * [simplify]: Extracting #1: cost 6 inf + 0 7.963 * * [simplify]: Extracting #2: cost 10 inf + 1 7.964 * * [simplify]: Extracting #3: cost 22 inf + 804 7.964 * * [simplify]: Extracting #4: cost 64 inf + 1445 7.965 * * [simplify]: Extracting #5: cost 132 inf + 3371 7.967 * * [simplify]: Extracting #6: cost 212 inf + 14038 7.975 * * [simplify]: Extracting #7: cost 133 inf + 122101 8.000 * * [simplify]: Extracting #8: cost 13 inf + 330931 8.025 * * [simplify]: Extracting #9: cost 0 inf + 360062 8.052 * [simplify]: Simplified to (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) 8.052 * [simplify]: Simplified (2 2) to (λ (a b c) (/.p16 (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b))) 8.052 * * * * [progress]: [ 3 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))> 8.052 * * * * [progress]: [ 4 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4))))))))> 8.053 * * * * [progress]: [ 5 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 8.053 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))) 8.053 * * [simplify]: iters left: 6 (21 enodes) 8.063 * * [simplify]: iters left: 5 (61 enodes) 8.085 * * [simplify]: iters left: 4 (154 enodes) 8.127 * * [simplify]: iters left: 3 (373 enodes) 8.298 * * [simplify]: Extracting #0: cost 1 inf + 0 8.298 * * [simplify]: Extracting #1: cost 7 inf + 0 8.298 * * [simplify]: Extracting #2: cost 59 inf + 0 8.298 * * [simplify]: Extracting #3: cost 119 inf + 83 8.299 * * [simplify]: Extracting #4: cost 137 inf + 11032 8.301 * * [simplify]: Extracting #5: cost 183 inf + 27270 8.305 * * [simplify]: Extracting #6: cost 223 inf + 84764 8.326 * * [simplify]: Extracting #7: cost 60 inf + 347389 8.362 * * [simplify]: Extracting #8: cost 1 inf + 460459 8.403 * * [simplify]: Extracting #9: cost 0 inf + 461583 8.423 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))) 8.423 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a)))) 8.423 * * * * [progress]: [ 6 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 8.423 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))) 8.423 * * [simplify]: iters left: 6 (21 enodes) 8.428 * * [simplify]: iters left: 5 (61 enodes) 8.451 * * [simplify]: iters left: 4 (154 enodes) 8.492 * * [simplify]: iters left: 3 (373 enodes) 8.653 * * [simplify]: Extracting #0: cost 1 inf + 0 8.653 * * [simplify]: Extracting #1: cost 7 inf + 0 8.653 * * [simplify]: Extracting #2: cost 59 inf + 0 8.654 * * [simplify]: Extracting #3: cost 119 inf + 83 8.655 * * [simplify]: Extracting #4: cost 137 inf + 11032 8.656 * * [simplify]: Extracting #5: cost 183 inf + 27270 8.661 * * [simplify]: Extracting #6: cost 223 inf + 84764 8.673 * * [simplify]: Extracting #7: cost 60 inf + 347389 8.692 * * [simplify]: Extracting #8: cost 1 inf + 460459 8.715 * * [simplify]: Extracting #9: cost 0 inf + 461583 8.754 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))) 8.754 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a)))) 8.754 * * * * [progress]: [ 7 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 8.754 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))) 8.755 * * [simplify]: iters left: 6 (21 enodes) 8.766 * * [simplify]: iters left: 5 (61 enodes) 8.790 * * [simplify]: iters left: 4 (154 enodes) 8.854 * * [simplify]: iters left: 3 (373 enodes) 9.046 * * [simplify]: Extracting #0: cost 1 inf + 0 9.046 * * [simplify]: Extracting #1: cost 7 inf + 0 9.046 * * [simplify]: Extracting #2: cost 59 inf + 0 9.047 * * [simplify]: Extracting #3: cost 119 inf + 83 9.047 * * [simplify]: Extracting #4: cost 137 inf + 11032 9.049 * * [simplify]: Extracting #5: cost 183 inf + 27270 9.053 * * [simplify]: Extracting #6: cost 223 inf + 84764 9.069 * * [simplify]: Extracting #7: cost 60 inf + 347389 9.104 * * [simplify]: Extracting #8: cost 1 inf + 460459 9.126 * * [simplify]: Extracting #9: cost 0 inf + 461583 9.160 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))) 9.161 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a)))) 9.161 * * * * [progress]: [ 8 / 8 ] simplifiying candidate #posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))))> 9.161 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 (+.p16 (neg.p16 b) b) (+.p16 (neg.p16 b) (neg.p16 b))) (*.p16 (real->posit16 4) (*.p16 a c))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))))) 9.161 * * [simplify]: iters left: 6 (21 enodes) 9.171 * * [simplify]: iters left: 5 (61 enodes) 9.195 * * [simplify]: iters left: 4 (154 enodes) 9.260 * * [simplify]: iters left: 3 (373 enodes) 9.475 * * [simplify]: Extracting #0: cost 1 inf + 0 9.475 * * [simplify]: Extracting #1: cost 7 inf + 0 9.475 * * [simplify]: Extracting #2: cost 59 inf + 0 9.476 * * [simplify]: Extracting #3: cost 119 inf + 83 9.478 * * [simplify]: Extracting #4: cost 137 inf + 11032 9.481 * * [simplify]: Extracting #5: cost 183 inf + 27270 9.490 * * [simplify]: Extracting #6: cost 223 inf + 84764 9.515 * * [simplify]: Extracting #7: cost 60 inf + 347389 9.556 * * [simplify]: Extracting #8: cost 1 inf + 460459 9.595 * * [simplify]: Extracting #9: cost 0 inf + 461583 9.636 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))) 9.636 * [simplify]: Simplified (2) to (λ (a b c) (/.p16 (+.p16 (*.p16 (real->posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a)))) 9.636 * * * [progress]: adding candidates to table 10.200 * [progress]: [Phase 3 of 3] Extracting. 10.201 * * [regime]: Finding splitpoints for: (#posit16 4) a) c) (*.p16 (*.p16 (real->posit16 4) a) c))) (+.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> #posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))> #posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))))> #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))>) 10.206 * * * [regime-changes]: Trying 3 branch expressions: (c a b) 10.207 * * * * [regimes]: Trying to branch on c from (#posit16 4) a) c) (*.p16 (*.p16 (real->posit16 4) a) c))) (+.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> #posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))> #posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))))> #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))>) 10.573 * * * * [regimes]: Trying to branch on a from (#posit16 4) a) c) (*.p16 (*.p16 (real->posit16 4) a) c))) (+.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> #posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))> #posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))))> #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))>) 10.919 * * * * [regimes]: Trying to branch on b from (#posit16 4) a) c) (*.p16 (*.p16 (real->posit16 4) a) c))) (+.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (*.p16 (real->posit16 2) a)))> #posit16 4) (*.p16 a c)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))) (real->posit16 2)) a))> #posit16 4) (*.p16 a c))) (*.p16 (real->posit16 2) a)) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))))))> #posit16 4) (*.p16 c a)) (real->posit16 0.0)) (*.p16 (real->posit16 2) (*.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 c a)))) b) a))))> #posit16 4) a) c)))) (*.p16 (real->posit16 2) a)))> #posit16 4) a) c))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c))))) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (neg.p16 b) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 (real->posit16 4) a) c)))))))>) 11.261 * * * [regime]: Found split indices: #