0.002 * [progress]: [Phase 1 of 3] Setting up. 0.003 * * * [progress]: [1/2] Preparing points 0.004 * * * * [points]: Sampling 256 additional inputs, on iter 0 have 0 / 256 0.006 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.077 * * * * [points]: Setting MPFR precision to 64 0.079 * * * * [points]: Setting MPFR precision to 320 0.081 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.084 * * * * [points]: Setting MPFR precision to 64 0.087 * * * * [points]: Setting MPFR precision to 320 0.091 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.096 * * * * [points]: Setting MPFR precision to 64 0.102 * * * * [points]: Setting MPFR precision to 320 0.108 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.113 * * * * [points]: Setting MPFR precision to 64 0.124 * * * * [points]: Setting MPFR precision to 320 0.134 * * * * [points]: Computing exacts for 256 points 0.139 * * * * [points]: Setting MPFR precision to 64 0.169 * * * * [points]: Setting MPFR precision to 320 0.200 * * * * [points]: Filtering points with unrepresentable outputs 0.202 * * * * [points]: Sampled 256 points with exact outputs 0.202 * * * [progress]: [2/2] Setting up program. 0.234 * [progress]: [Phase 2 of 3] Improving. 0.235 * * * * [progress]: [ 1 / 1 ] simplifiying candidate #posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)))> 0.237 * [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.238 * * [simplify]: iteration 1: (16 enodes) 0.273 * * [simplify]: iteration 2: (39 enodes) 0.283 * * [simplify]: iteration 3: (72 enodes) 0.302 * * [simplify]: iteration 4: (196 enodes) 0.419 * * [simplify]: iteration 5: (779 enodes) 1.717 * * [simplify]: Extracting #0: cost 1 inf + 0 1.718 * * [simplify]: Extracting #1: cost 5 inf + 0 1.718 * * [simplify]: Extracting #2: cost 18 inf + 1 1.718 * * [simplify]: Extracting #3: cost 44 inf + 83 1.718 * * [simplify]: Extracting #4: cost 110 inf + 2612 1.719 * * [simplify]: Extracting #5: cost 329 inf + 5940 1.724 * * [simplify]: Extracting #6: cost 753 inf + 12354 1.736 * * [simplify]: Extracting #7: cost 1123 inf + 34787 1.765 * * [simplify]: Extracting #8: cost 885 inf + 426469 1.890 * * [simplify]: Extracting #9: cost 201 inf + 2033217 2.034 * * [simplify]: Extracting #10: cost 8 inf + 2319465 2.222 * * [simplify]: Extracting #11: cost 0 inf + 2306138 2.385 * [simplify]: Simplified to (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (*.p16 (real->posit16 2) a)) 2.438 * * [progress]: iteration 1 / 4 2.438 * * * [progress]: picking best candidate 2.454 * * * * [pick]: Picked #posit16 4)))) b) (*.p16 (real->posit16 2) a)))> 2.454 * * * [progress]: localizing error 2.673 * * * [progress]: generating rewritten candidates 2.674 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 2.678 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1) 2.679 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1 2) 2.685 * * * * [progress]: [ 4 / 4 ] rewriting at (2) 2.693 * * * [progress]: generating series expansions 2.694 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 2.694 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1) 2.694 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1 2) 2.694 * * * * [progress]: [ 4 / 4 ] generating series at (2) 2.694 * * * [progress]: simplifying candidates 2.694 * * * * [progress]: [ 1 / 10 ] simplifiying candidate #posit16 4)))) (neg.p16 b)) (*.p16 (real->posit16 2) a)))> 2.694 * * * * [progress]: [ 2 / 10 ] simplifiying candidate #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (*.p16 (real->posit16 2) a)))> 2.694 * * * * [progress]: [ 3 / 10 ] simplifiying candidate #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 2.694 * * * * [progress]: [ 4 / 10 ] simplifiying candidate #posit16 4) (*.p16 c a)))) b) (*.p16 (real->posit16 2) a)))> 2.694 * * * * [progress]: [ 5 / 10 ] simplifiying candidate #posit16 4)))) b) (real->posit16 2)) a))> 2.694 * * * * [progress]: [ 6 / 10 ] simplifiying candidate #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b))))> 2.695 * * * * [progress]: [ 7 / 10 ] simplifiying candidate #posit16 4)))) b) (*.p16 (real->posit16 2) a)))> 2.695 * * * * [progress]: [ 8 / 10 ] simplifiying candidate #posit16 4)))) b) (*.p16 (real->posit16 2) a)))> 2.695 * * * * [progress]: [ 9 / 10 ] simplifiying candidate #posit16 4)))) b) (*.p16 (real->posit16 2) a)))> 2.695 * * * * [progress]: [ 10 / 10 ] simplifiying candidate #posit16 4)))) b) (*.p16 (real->posit16 2) a)))> 2.695 * [simplify]: Simplifying (neg.p16 b), (-.p16 (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)), (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b), (*.p16 a (real->posit16 4)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (real->posit16 2)), (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (*.p16 (real->posit16 2) a)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (*.p16 (real->posit16 2) a)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (*.p16 (real->posit16 2) a)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (*.p16 (real->posit16 2) a)) 2.695 * * [simplify]: iteration 1: (22 enodes) 2.706 * * [simplify]: iteration 2: (62 enodes) 2.730 * * [simplify]: iteration 3: (173 enodes) 2.800 * * [simplify]: iteration 4: (610 enodes) 3.209 * * [simplify]: Extracting #0: cost 7 inf + 0 3.210 * * [simplify]: Extracting #1: cost 218 inf + 0 3.211 * * [simplify]: Extracting #2: cost 540 inf + 1206 3.219 * * [simplify]: Extracting #3: cost 641 inf + 187555 3.265 * * [simplify]: Extracting #4: cost 417 inf + 903761 3.360 * * [simplify]: Extracting #5: cost 105 inf + 1678703 3.483 * * [simplify]: Extracting #6: cost 0 inf + 1880574 3.624 * * [simplify]: Extracting #7: cost 0 inf + 1880254 3.795 * [simplify]: Simplified to (neg.p16 b), (-.p16 (real->posit16 0.0) (*.p16 (*.p16 a c) (real->posit16 4))), (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4))))), (*.p16 (real->posit16 4) a), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (real->posit16 2)), (*.p16 (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4))))) (*.p16 a (real->posit16 2))), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (*.p16 a (real->posit16 2))), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (*.p16 a (real->posit16 2))), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (*.p16 a (real->posit16 2))), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (*.p16 a (real->posit16 2))) 3.796 * * * [progress]: adding candidates to table 4.172 * * [progress]: iteration 2 / 4 4.172 * * * [progress]: picking best candidate 4.241 * * * * [pick]: Picked #posit16 4)))) b) (real->posit16 2)) a))> 4.241 * * * [progress]: localizing error 4.449 * * * [progress]: generating rewritten candidates 4.449 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1 1) 4.452 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 4.453 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1 1 2) 4.468 * * * * [progress]: [ 4 / 4 ] rewriting at (2) 4.472 * * * [progress]: generating series expansions 4.472 * * * * [progress]: [ 1 / 4 ] generating series at (2 1 1) 4.472 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 4.472 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1 1 2) 4.472 * * * * [progress]: [ 4 / 4 ] generating series at (2) 4.472 * * * [progress]: simplifying candidates 4.472 * * * * [progress]: [ 1 / 9 ] simplifiying candidate #posit16 4)))) (neg.p16 b)) (real->posit16 2)) a))> 4.472 * * * * [progress]: [ 2 / 9 ] simplifiying candidate #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (real->posit16 2)) a))> 4.472 * * * * [progress]: [ 3 / 9 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 4.472 * * * * [progress]: [ 4 / 9 ] simplifiying candidate #posit16 4) (*.p16 c a)))) b) (real->posit16 2)) a))> 4.472 * * * * [progress]: [ 5 / 9 ] simplifiying candidate #posit16 4)))) b) (*.p16 a (real->posit16 2))))> 4.472 * * * * [progress]: [ 6 / 9 ] simplifiying candidate #posit16 4)))) b) (real->posit16 2)) a))> 4.473 * * * * [progress]: [ 7 / 9 ] simplifiying candidate #posit16 4)))) b) (real->posit16 2)) a))> 4.473 * * * * [progress]: [ 8 / 9 ] simplifiying candidate #posit16 4)))) b) (real->posit16 2)) a))> 4.473 * * * * [progress]: [ 9 / 9 ] simplifiying candidate #posit16 4)))) b) (real->posit16 2)) a))> 4.473 * [simplify]: Simplifying (neg.p16 b), (-.p16 (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)), (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b) (real->posit16 2)) 4.473 * * [simplify]: iteration 1: (20 enodes) 4.480 * * [simplify]: iteration 2: (50 enodes) 4.491 * * [simplify]: iteration 3: (133 enodes) 4.560 * * [simplify]: iteration 4: (535 enodes) 4.895 * * [simplify]: Extracting #0: cost 6 inf + 0 4.895 * * [simplify]: Extracting #1: cost 125 inf + 0 4.898 * * [simplify]: Extracting #2: cost 402 inf + 1607 4.919 * * [simplify]: Extracting #3: cost 513 inf + 162148 4.993 * * [simplify]: Extracting #4: cost 314 inf + 858998 5.121 * * [simplify]: Extracting #5: cost 104 inf + 1438699 5.260 * * [simplify]: Extracting #6: cost 1 inf + 1626817 5.417 * * [simplify]: Extracting #7: cost 0 inf + 1629664 5.538 * [simplify]: Simplified to (neg.p16 b), (-.p16 (real->posit16 0.0) (*.p16 (*.p16 a c) (real->posit16 4))), (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4))))), (*.p16 (real->posit16 4) a), (*.p16 (real->posit16 2) a), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (real->posit16 2)), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a c) (real->posit16 4)))) b) (real->posit16 2)) 5.539 * * * [progress]: adding candidates to table 5.844 * * [progress]: iteration 3 / 4 5.844 * * * [progress]: picking best candidate 5.959 * * * * [pick]: Picked #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 5.959 * * * [progress]: localizing error 6.217 * * * [progress]: generating rewritten candidates 6.217 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 6.220 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1) 6.220 * * * * [progress]: [ 3 / 4 ] rewriting at (2) 6.223 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1 1) 6.229 * * * [progress]: generating series expansions 6.229 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 6.229 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1) 6.229 * * * * [progress]: [ 3 / 4 ] generating series at (2) 6.229 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1 1) 6.229 * * * [progress]: simplifying candidates 6.229 * * * * [progress]: [ 1 / 10 ] simplifiying candidate #posit16 4))))) (neg.p16 b)) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 2 / 10 ] simplifiying candidate #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b)) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 3 / 10 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 6.229 * * * * [progress]: [ 4 / 10 ] simplifiying candidate #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b))))> 6.229 * * * * [progress]: [ 5 / 10 ] simplifiying candidate #posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 6 / 10 ] simplifiying candidate #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 7 / 10 ] simplifiying candidate #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 8 / 10 ] simplifiying candidate #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 9 / 10 ] simplifiying candidate #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 6.229 * * * * [progress]: [ 10 / 10 ] simplifiying candidate #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> 6.230 * [simplify]: Simplifying (neg.p16 b), (-.p16 (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)), (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b) (real->posit16 2)), (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b)), (neg.p16 (*.p16 c (*.p16 a (real->posit16 4)))), (-.p16 (*.p16 (*.p16 b b) (*.p16 b b)) (*.p16 (*.p16 c (*.p16 a (real->posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))), (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)) 6.230 * * [simplify]: iteration 1: (25 enodes) 6.238 * * [simplify]: iteration 2: (76 enodes) 6.267 * * [simplify]: iteration 3: (230 enodes) 6.371 * * [simplify]: iteration 4: (925 enodes) 7.911 * * [simplify]: Extracting #0: cost 9 inf + 0 7.912 * * [simplify]: Extracting #1: cost 192 inf + 0 7.914 * * [simplify]: Extracting #2: cost 765 inf + 1847 7.918 * * [simplify]: Extracting #3: cost 1265 inf + 10437 7.946 * * [simplify]: Extracting #4: cost 1534 inf + 349453 8.082 * * [simplify]: Extracting #5: cost 709 inf + 2132378 8.297 * * [simplify]: Extracting #6: cost 136 inf + 3450902 8.573 * * [simplify]: Extracting #7: cost 4 inf + 3725797 8.829 * * [simplify]: Extracting #8: cost 0 inf + 3733696 9.192 * * [simplify]: Extracting #9: cost 0 inf + 3733376 9.494 * [simplify]: Simplified to (neg.p16 b), (-.p16 (real->posit16 0.0) (*.p16 (real->posit16 4) (*.p16 a c))), (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))), (/.p16 (-.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c)))) b) (real->posit16 2)), (*.p16 (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))))) (*.p16 (real->posit16 2) a)), (neg.p16 (*.p16 (real->posit16 4) (*.p16 a c))), (*.p16 (-.p16 (*.p16 b b) (*.p16 (real->posit16 4) (*.p16 a c))) (+.p16 (*.p16 (real->posit16 4) (*.p16 a c)) (*.p16 b b))), (+.p16 (*.p16 (real->posit16 4) (*.p16 a c)) (*.p16 b b)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)) 9.496 * * * [progress]: adding candidates to table 9.868 * * [progress]: iteration 4 / 4 9.869 * * * [progress]: picking best candidate 9.991 * * * * [pick]: Picked #posit16 4))))) b) (real->posit16 2)) a))> 9.991 * * * [progress]: localizing error 10.337 * * * [progress]: generating rewritten candidates 10.337 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1 1) 10.341 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 10.342 * * * * [progress]: [ 3 / 4 ] rewriting at (2) 10.349 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1 1 1) 10.360 * * * [progress]: generating series expansions 10.360 * * * * [progress]: [ 1 / 4 ] generating series at (2 1 1) 10.360 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 10.360 * * * * [progress]: [ 3 / 4 ] generating series at (2) 10.360 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1 1 1) 10.360 * * * [progress]: simplifying candidates 10.360 * * * * [progress]: [ 1 / 9 ] simplifiying candidate #posit16 4))))) (neg.p16 b)) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 2 / 9 ] simplifiying candidate #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b)) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 3 / 9 ] simplifiying candidate #posit16 4))))) b) (*.p16 a (real->posit16 2))))> 10.360 * * * * [progress]: [ 4 / 9 ] simplifiying candidate #posit16 4)))))) b) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 5 / 9 ] simplifiying candidate #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 6 / 9 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 7 / 9 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 10.360 * * * * [progress]: [ 8 / 9 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 10.361 * * * * [progress]: [ 9 / 9 ] simplifiying candidate #posit16 4))))) b) (real->posit16 2)) a))> 10.361 * [simplify]: Simplifying (neg.p16 b), (-.p16 (*.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)), (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b), (*.p16 a (real->posit16 2)), (neg.p16 (*.p16 c (*.p16 a (real->posit16 4)))), (-.p16 (*.p16 (*.p16 b b) (*.p16 b b)) (*.p16 (*.p16 c (*.p16 a (real->posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))), (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)) 10.361 * * [simplify]: iteration 1: (22 enodes) 10.385 * * [simplify]: iteration 2: (63 enodes) 10.414 * * [simplify]: iteration 3: (173 enodes) 10.518 * * [simplify]: iteration 4: (760 enodes) 11.564 * * [simplify]: Extracting #0: cost 8 inf + 0 11.564 * * [simplify]: Extracting #1: cost 110 inf + 0 11.567 * * [simplify]: Extracting #2: cost 572 inf + 1045 11.583 * * [simplify]: Extracting #3: cost 875 inf + 195525 11.702 * * [simplify]: Extracting #4: cost 828 inf + 1306220 11.971 * * [simplify]: Extracting #5: cost 84 inf + 3065197 12.298 * * [simplify]: Extracting #6: cost 2 inf + 3280755 12.574 * * [simplify]: Extracting #7: cost 0 inf + 3288683 12.896 * [simplify]: Simplified to (neg.p16 b), (-.p16 (real->posit16 0.0) (*.p16 (*.p16 a (real->posit16 4)) c)), (+.p16 b (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a (real->posit16 4)) c)))), (*.p16 a (real->posit16 2)), (neg.p16 (*.p16 (*.p16 a (real->posit16 4)) c)), (*.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 a (real->posit16 4)) c)) (+.p16 (*.p16 (*.p16 a (real->posit16 4)) c) (*.p16 b b))), (+.p16 (*.p16 (*.p16 a (real->posit16 4)) c) (*.p16 b b)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)), (*.p16 a (real->posit16 4)) 12.897 * * * [progress]: adding candidates to table 13.301 * [progress]: [Phase 3 of 3] Extracting. 13.302 * * [regime]: Finding splitpoints for: (#posit16 4)))) b) (real->posit16 2)) a))> #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (real->posit16 2)) a))> #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b))))> #posit16 4))))) b) (real->posit16 2)) a))>) 13.306 * * * [regime-changes]: Trying 3 branch expressions: (c a b) 13.307 * * * * [regimes]: Trying to branch on c from (#posit16 4)))) b) (real->posit16 2)) a))> #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (real->posit16 2)) a))> #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b))))> #posit16 4))))) b) (real->posit16 2)) a))>) 13.522 * * * * [regimes]: Trying to branch on a from (#posit16 4)))) b) (real->posit16 2)) a))> #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (real->posit16 2)) a))> #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b))))> #posit16 4))))) b) (real->posit16 2)) a))>) 13.777 * * * * [regimes]: Trying to branch on b from (#posit16 4)))) b) (real->posit16 2)) a))> #posit16 4)))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4))))) (*.p16 b b)) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 (*.p16 c a) (real->posit16 4)))) b)) (real->posit16 2)) a))> #posit16 4))) (*.p16 c (*.p16 a (real->posit16 4))))) (+.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) b) (*.p16 (real->posit16 2) a)))> #posit16 4))))) (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4)))))) (*.p16 b b)) (*.p16 (*.p16 (real->posit16 2) a) (+.p16 (sqrt.p16 (-.p16 (*.p16 b b) (*.p16 c (*.p16 a (real->posit16 4))))) b))))> #posit16 4))))) b) (real->posit16 2)) a))>) 13.988 * * * [regime]: Found split indices: #