0.002 * [progress]: [Phase 1 of 3] Setting up. 0.002 * * * [progress]: [1/2] Preparing points 0.003 * * * * [points]: Sampling 256 additional inputs, on iter 0 have 0 / 256 0.005 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.006 * * * * [points]: Setting MPFR precision to 64 0.008 * * * * [points]: Setting MPFR precision to 320 0.009 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.010 * * * * [points]: Setting MPFR precision to 64 0.013 * * * * [points]: Setting MPFR precision to 320 0.015 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.016 * * * * [points]: Setting MPFR precision to 64 0.020 * * * * [points]: Setting MPFR precision to 320 0.025 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.026 * * * * [points]: Setting MPFR precision to 64 0.032 * * * * [points]: Setting MPFR precision to 320 0.040 * * * * [points]: Computing exacts for 256 points 0.040 * * * * [points]: Setting MPFR precision to 64 0.053 * * * * [points]: Setting MPFR precision to 320 0.067 * * * * [points]: Filtering points with unrepresentable outputs 0.068 * * * * [points]: Sampled 256 points with exact outputs 0.068 * * * [progress]: [2/2] Setting up program. 0.075 * [progress]: [Phase 2 of 3] Improving. 0.075 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.076 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.076 * * [simplify]: iters left: 2 (7 enodes) 0.078 * * [simplify]: iters left: 1 (24 enodes) 0.081 * * [simplify]: Extracting #0: cost 1 inf + 0 0.081 * * [simplify]: Extracting #1: cost 6 inf + 0 0.081 * * [simplify]: Extracting #2: cost 15 inf + 0 0.082 * * [simplify]: Extracting #3: cost 19 inf + 728 0.082 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.082 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.083 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.083 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.102 * * [progress]: iteration 1 / 4 0.103 * * * [progress]: picking best candidate 0.108 * * * * [pick]: Picked # 0.108 * * * [progress]: localizing error 0.178 * * * [progress]: generating rewritten candidates 0.178 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.182 * * * [progress]: generating series expansions 0.182 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.182 * * * [progress]: simplifying candidates 0.182 * * * * [progress]: [ 1 / 3 ] simplifiying candidate # 0.182 * * * * [progress]: [ 2 / 3 ] simplifiying candidate # 0.182 * * * * [progress]: [ 3 / 3 ] simplifiying candidate # 0.183 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.183 * * [simplify]: iters left: 2 (7 enodes) 0.185 * * [simplify]: iters left: 1 (24 enodes) 0.191 * * [simplify]: Extracting #0: cost 1 inf + 0 0.191 * * [simplify]: Extracting #1: cost 6 inf + 0 0.191 * * [simplify]: Extracting #2: cost 15 inf + 0 0.192 * * [simplify]: Extracting #3: cost 19 inf + 728 0.192 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.193 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.193 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.193 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.193 * * * [progress]: adding candidates to table 0.252 * * [progress]: iteration 2 / 4 0.252 * * * [progress]: picking best candidate 0.260 * * * * [pick]: Picked # 0.260 * * * [progress]: localizing error 0.433 * * * [progress]: generating rewritten candidates 0.433 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 0.443 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 0.448 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 0.457 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 0.465 * * * [progress]: generating series expansions 0.465 * * * * [progress]: [ 1 / 4 ] generating series at (2) 0.465 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 0.465 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 0.465 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 0.466 * * * [progress]: simplifying candidates 0.466 * * * * [progress]: [ 1 / 13 ] simplifiying candidate # 0.466 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.466 * * [simplify]: iters left: 2 (7 enodes) 0.468 * * [simplify]: iters left: 1 (18 enodes) 0.471 * * [simplify]: Extracting #0: cost 1 inf + 0 0.471 * * [simplify]: Extracting #1: cost 3 inf + 0 0.471 * * [simplify]: Extracting #2: cost 7 inf + 0 0.471 * * [simplify]: Extracting #3: cost 2 inf + 326 0.471 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.472 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.472 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im))))) 0.472 * * * * [progress]: [ 2 / 13 ] simplifiying candidate # 0.472 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re))) (*.p16 (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)))) 0.472 * * [simplify]: iters left: 4 (11 enodes) 0.476 * * [simplify]: iters left: 3 (47 enodes) 0.490 * * [simplify]: iters left: 2 (143 enodes) 0.533 * * [simplify]: Extracting #0: cost 1 inf + 0 0.533 * * [simplify]: Extracting #1: cost 25 inf + 0 0.534 * * [simplify]: Extracting #2: cost 73 inf + 0 0.534 * * [simplify]: Extracting #3: cost 142 inf + 2332 0.536 * * [simplify]: Extracting #4: cost 134 inf + 55820 0.543 * * [simplify]: Extracting #5: cost 28 inf + 228590 0.552 * * [simplify]: Extracting #6: cost 1 inf + 283752 0.563 * * [simplify]: Extracting #7: cost 0 inf + 287356 0.575 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) 0.575 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)))))) 0.575 * * * * [progress]: [ 3 / 13 ] simplifiying candidate # 0.575 * * * * [progress]: [ 4 / 13 ] simplifiying candidate # 0.575 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.575 * * [simplify]: iters left: 2 (7 enodes) 0.576 * * [simplify]: iters left: 1 (18 enodes) 0.580 * * [simplify]: Extracting #0: cost 1 inf + 0 0.580 * * [simplify]: Extracting #1: cost 3 inf + 0 0.580 * * [simplify]: Extracting #2: cost 7 inf + 0 0.580 * * [simplify]: Extracting #3: cost 2 inf + 326 0.580 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.580 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.580 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 0.580 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.580 * * [simplify]: iters left: 2 (7 enodes) 0.582 * * [simplify]: iters left: 1 (24 enodes) 0.587 * * [simplify]: Extracting #0: cost 1 inf + 0 0.587 * * [simplify]: Extracting #1: cost 6 inf + 0 0.587 * * [simplify]: Extracting #2: cost 15 inf + 0 0.587 * * [simplify]: Extracting #3: cost 19 inf + 728 0.587 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.588 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.588 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.588 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 0.588 * * * * [progress]: [ 5 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 6 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 7 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 8 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 9 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 10 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 11 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 12 / 13 ] simplifiying candidate # 0.588 * * * * [progress]: [ 13 / 13 ] simplifiying candidate # 0.588 * * * [progress]: adding candidates to table 0.737 * * [progress]: iteration 3 / 4 0.737 * * * [progress]: picking best candidate 0.753 * * * * [pick]: Picked # 0.753 * * * [progress]: localizing error 0.894 * * * [progress]: generating rewritten candidates 0.894 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 0.900 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 0.904 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 0.918 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 0.926 * * * [progress]: generating series expansions 0.926 * * * * [progress]: [ 1 / 4 ] generating series at (2) 0.926 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 0.926 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 0.926 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 0.926 * * * [progress]: simplifying candidates 0.926 * * * * [progress]: [ 1 / 10 ] simplifiying candidate # 0.926 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re))) (*.p16 (*.p16 x.im (*.p16 y.im (*.p16 x.im y.im))) (*.p16 x.im (*.p16 y.im (*.p16 x.im y.im))))) 0.926 * * [simplify]: iters left: 5 (12 enodes) 0.929 * * [simplify]: iters left: 4 (47 enodes) 0.940 * * [simplify]: iters left: 3 (140 enodes) 0.985 * * [simplify]: Extracting #0: cost 1 inf + 0 0.985 * * [simplify]: Extracting #1: cost 25 inf + 0 0.985 * * [simplify]: Extracting #2: cost 73 inf + 0 0.985 * * [simplify]: Extracting #3: cost 132 inf + 3937 1.285 * * [simplify]: Extracting #4: cost 121 inf + 55816 1.294 * * [simplify]: Extracting #5: cost 27 inf + 207728 1.308 * * [simplify]: Extracting #6: cost 2 inf + 258918 1.323 * * [simplify]: Extracting #7: cost 0 inf + 265566 1.338 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) 1.338 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 x.im (*.p16 y.im (*.p16 x.im y.im))))))) 1.338 * * * * [progress]: [ 2 / 10 ] simplifiying candidate # 1.339 * * * * [progress]: [ 3 / 10 ] simplifiying candidate # 1.339 * * * * [progress]: [ 4 / 10 ] simplifiying candidate # 1.339 * * * * [progress]: [ 5 / 10 ] simplifiying candidate # 1.339 * [simplify]: Simplifying (*.p16 x.im y.im) 1.339 * * [simplify]: iters left: 1 (3 enodes) 1.340 * * [simplify]: Extracting #0: cost 1 inf + 0 1.341 * * [simplify]: Extracting #1: cost 3 inf + 0 1.341 * * [simplify]: Extracting #2: cost 1 inf + 2 1.341 * * [simplify]: Extracting #3: cost 0 inf + 324 1.341 * [simplify]: Simplified to (*.p16 y.im x.im) 1.341 * [simplify]: Simplified (2 1 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 y.im x.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.341 * * * * [progress]: [ 6 / 10 ] simplifiying candidate # 1.341 * * * * [progress]: [ 7 / 10 ] simplifiying candidate # 1.341 * * * * [progress]: [ 8 / 10 ] simplifiying candidate # 1.341 * * * * [progress]: [ 9 / 10 ] simplifiying candidate # 1.341 * * * * [progress]: [ 10 / 10 ] simplifiying candidate # 1.341 * * * [progress]: adding candidates to table 1.475 * * [progress]: iteration 4 / 4 1.475 * * * [progress]: picking best candidate 1.487 * * * * [pick]: Picked # 1.487 * * * [progress]: localizing error 1.648 * * * [progress]: generating rewritten candidates 1.648 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 1.655 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 1.658 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 2) 1.664 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1) 1.670 * * * [progress]: generating series expansions 1.671 * * * * [progress]: [ 1 / 4 ] generating series at (2) 1.671 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 1.671 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 2) 1.671 * * * * [progress]: [ 4 / 4 ] generating series at (2 1) 1.671 * * * [progress]: simplifying candidates 1.671 * * * * [progress]: [ 1 / 10 ] simplifiying candidate # 1.671 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re))) (*.p16 (*.p16 (*.p16 (*.p16 x.im y.im) x.im) y.im) (*.p16 (*.p16 (*.p16 x.im y.im) x.im) y.im))) 1.671 * * [simplify]: iters left: 5 (12 enodes) 1.674 * * [simplify]: iters left: 4 (47 enodes) 1.684 * * [simplify]: iters left: 3 (135 enodes) 1.720 * * [simplify]: Extracting #0: cost 1 inf + 0 1.720 * * [simplify]: Extracting #1: cost 25 inf + 0 1.721 * * [simplify]: Extracting #2: cost 75 inf + 0 1.721 * * [simplify]: Extracting #3: cost 133 inf + 2333 1.723 * * [simplify]: Extracting #4: cost 114 inf + 63108 1.729 * * [simplify]: Extracting #5: cost 22 inf + 215104 1.739 * * [simplify]: Extracting #6: cost 0 inf + 257884 1.748 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) 1.749 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))) (-.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 (*.p16 x.im y.im) x.im) y.im))))) 1.749 * * * * [progress]: [ 2 / 10 ] simplifiying candidate # 1.749 * * * * [progress]: [ 3 / 10 ] simplifiying candidate # 1.749 * [simplify]: Simplifying (*.p16 x.im y.im) 1.749 * * [simplify]: iters left: 1 (3 enodes) 1.750 * * [simplify]: Extracting #0: cost 1 inf + 0 1.750 * * [simplify]: Extracting #1: cost 3 inf + 0 1.750 * * [simplify]: Extracting #2: cost 1 inf + 2 1.750 * * [simplify]: Extracting #3: cost 0 inf + 324 1.750 * [simplify]: Simplified to (*.p16 y.im x.im) 1.750 * [simplify]: Simplified (2 1 2 1) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 y.im x.im) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.750 * * * * [progress]: [ 4 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 5 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 6 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 7 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 8 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 9 / 10 ] simplifiying candidate # 1.750 * * * * [progress]: [ 10 / 10 ] simplifiying candidate # 1.750 * * * [progress]: adding candidates to table 1.880 * [progress]: [Phase 3 of 3] Extracting. 1.880 * * [regime]: Finding splitpoints for: (# # # #) 1.882 * * * [regime-changes]: Trying 4 branch expressions: (y.im x.im y.re x.re) 1.882 * * * * [regimes]: Trying to branch on y.im from (# # # #) 1.966 * * * * [regimes]: Trying to branch on x.im from (# # # #) 2.042 * * * * [regimes]: Trying to branch on y.re from (# # # #) 2.118 * * * * [regimes]: Trying to branch on x.re from (# # # #) 2.191 * * * [regime]: Found split indices: #