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.006 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.007 * * * * [points]: Setting MPFR precision to 64 0.009 * * * * [points]: Setting MPFR precision to 320 0.010 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.011 * * * * [points]: Setting MPFR precision to 64 0.014 * * * * [points]: Setting MPFR precision to 320 0.017 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.018 * * * * [points]: Setting MPFR precision to 64 0.023 * * * * [points]: Setting MPFR precision to 320 0.028 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.029 * * * * [points]: Setting MPFR precision to 64 0.037 * * * * [points]: Setting MPFR precision to 320 0.046 * * * * [points]: Computing exacts for 256 points 0.047 * * * * [points]: Setting MPFR precision to 64 0.066 * * * * [points]: Setting MPFR precision to 320 0.081 * * * * [points]: Filtering points with unrepresentable outputs 0.081 * * * * [points]: Sampled 256 points with exact outputs 0.082 * * * [progress]: [2/2] Setting up program. 0.086 * [progress]: [Phase 2 of 3] Improving. 0.086 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.087 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.087 * * [simplify]: iters left: 2 (7 enodes) 0.088 * * [simplify]: iters left: 1 (24 enodes) 0.092 * * [simplify]: Extracting #0: cost 1 inf + 0 0.092 * * [simplify]: Extracting #1: cost 6 inf + 0 0.092 * * [simplify]: Extracting #2: cost 15 inf + 0 0.092 * * [simplify]: Extracting #3: cost 19 inf + 728 0.092 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.093 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.093 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.093 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.098 * * [progress]: iteration 1 / 4 0.098 * * * [progress]: picking best candidate 0.115 * * * * [pick]: Picked # 0.115 * * * [progress]: localizing error 0.173 * * * [progress]: generating rewritten candidates 0.173 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.176 * * * [progress]: generating series expansions 0.176 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.176 * * * [progress]: simplifying candidates 0.176 * * * * [progress]: [ 1 / 3 ] simplifiying candidate # 0.176 * * * * [progress]: [ 2 / 3 ] simplifiying candidate # 0.176 * * * * [progress]: [ 3 / 3 ] simplifiying candidate # 0.176 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.176 * * [simplify]: iters left: 2 (7 enodes) 0.177 * * [simplify]: iters left: 1 (24 enodes) 0.182 * * [simplify]: Extracting #0: cost 1 inf + 0 0.182 * * [simplify]: Extracting #1: cost 6 inf + 0 0.182 * * [simplify]: Extracting #2: cost 15 inf + 0 0.182 * * [simplify]: Extracting #3: cost 19 inf + 728 0.183 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.183 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.184 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.184 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.184 * * * [progress]: adding candidates to table 0.249 * * [progress]: iteration 2 / 4 0.249 * * * [progress]: picking best candidate 0.258 * * * * [pick]: Picked # 0.258 * * * [progress]: localizing error 0.414 * * * [progress]: generating rewritten candidates 0.414 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 0.421 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 0.424 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1) 0.429 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 0.435 * * * [progress]: generating series expansions 0.435 * * * * [progress]: [ 1 / 4 ] generating series at (2) 0.435 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 0.435 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1) 0.435 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 0.435 * * * [progress]: simplifying candidates 0.435 * * * * [progress]: [ 1 / 13 ] simplifiying candidate # 0.435 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.435 * * [simplify]: iters left: 2 (7 enodes) 0.436 * * [simplify]: iters left: 1 (18 enodes) 0.438 * * [simplify]: Extracting #0: cost 1 inf + 0 0.438 * * [simplify]: Extracting #1: cost 3 inf + 0 0.439 * * [simplify]: Extracting #2: cost 7 inf + 0 0.439 * * [simplify]: Extracting #3: cost 2 inf + 326 0.439 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.439 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.439 * [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.439 * * * * [progress]: [ 2 / 13 ] simplifiying candidate # 0.439 * [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.439 * * [simplify]: iters left: 4 (11 enodes) 0.442 * * [simplify]: iters left: 3 (47 enodes) 0.451 * * [simplify]: iters left: 2 (143 enodes) 0.492 * * [simplify]: Extracting #0: cost 1 inf + 0 0.492 * * [simplify]: Extracting #1: cost 25 inf + 0 0.492 * * [simplify]: Extracting #2: cost 73 inf + 0 0.492 * * [simplify]: Extracting #3: cost 142 inf + 2332 0.494 * * [simplify]: Extracting #4: cost 134 inf + 55820 0.501 * * [simplify]: Extracting #5: cost 28 inf + 228590 0.511 * * [simplify]: Extracting #6: cost 1 inf + 283752 0.522 * * [simplify]: Extracting #7: cost 0 inf + 287356 0.532 * [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.533 * [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.533 * * * * [progress]: [ 3 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 4 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 5 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 6 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 7 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 8 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 9 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 10 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 11 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 12 / 13 ] simplifiying candidate # 0.533 * * * * [progress]: [ 13 / 13 ] simplifiying candidate # 0.533 * * * [progress]: adding candidates to table 0.676 * * [progress]: iteration 3 / 4 0.676 * * * [progress]: picking best candidate 0.703 * * * * [pick]: Picked # 0.703 * * * [progress]: localizing error 0.837 * * * [progress]: generating rewritten candidates 0.837 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2) 0.839 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2 1) 0.844 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 0.849 * * * * [progress]: [ 4 / 4 ] rewriting at (2) 0.852 * * * [progress]: generating series expansions 0.852 * * * * [progress]: [ 1 / 4 ] generating series at (2 2) 0.852 * * * * [progress]: [ 2 / 4 ] generating series at (2 2 1) 0.852 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 0.852 * * * * [progress]: [ 4 / 4 ] generating series at (2) 0.852 * * * [progress]: simplifying candidates 0.852 * * * * [progress]: [ 1 / 9 ] simplifiying candidate # 0.853 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.853 * * [simplify]: iters left: 2 (7 enodes) 0.855 * * [simplify]: iters left: 1 (18 enodes) 0.858 * * [simplify]: Extracting #0: cost 1 inf + 0 0.858 * * [simplify]: Extracting #1: cost 3 inf + 0 0.858 * * [simplify]: Extracting #2: cost 7 inf + 0 0.858 * * [simplify]: Extracting #3: cost 2 inf + 326 0.858 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.858 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.858 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.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)))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 0.858 * * * * [progress]: [ 2 / 9 ] simplifiying candidate # 0.858 * * * * [progress]: [ 3 / 9 ] simplifiying candidate # 0.858 * * * * [progress]: [ 4 / 9 ] simplifiying candidate # 0.859 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.859 * * [simplify]: iters left: 2 (7 enodes) 0.861 * * [simplify]: iters left: 1 (18 enodes) 0.864 * * [simplify]: Extracting #0: cost 1 inf + 0 0.864 * * [simplify]: Extracting #1: cost 3 inf + 0 0.864 * * [simplify]: Extracting #2: cost 7 inf + 0 0.864 * * [simplify]: Extracting #3: cost 2 inf + 326 0.864 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.864 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.864 * [simplify]: Simplified (2 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 (*.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))))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 0.864 * * * * [progress]: [ 5 / 9 ] simplifiying candidate # 0.865 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.865 * * [simplify]: iters left: 2 (7 enodes) 0.867 * * [simplify]: iters left: 1 (24 enodes) 0.872 * * [simplify]: Extracting #0: cost 1 inf + 0 0.872 * * [simplify]: Extracting #1: cost 6 inf + 0 0.872 * * [simplify]: Extracting #2: cost 15 inf + 0 0.872 * * [simplify]: Extracting #3: cost 19 inf + 728 0.873 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.873 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.874 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.874 * [simplify]: Simplified (2 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 x.re y.re) (*.p16 x.im y.im))) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)))) 0.874 * * * * [progress]: [ 6 / 9 ] simplifiying candidate # 0.874 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.874 * * [simplify]: iters left: 2 (7 enodes) 0.876 * * [simplify]: iters left: 1 (18 enodes) 0.879 * * [simplify]: Extracting #0: cost 1 inf + 0 0.880 * * [simplify]: Extracting #1: cost 3 inf + 0 0.880 * * [simplify]: Extracting #2: cost 7 inf + 0 0.880 * * [simplify]: Extracting #3: cost 2 inf + 326 0.880 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.880 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.880 * [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.880 * * * * [progress]: [ 7 / 9 ] simplifiying candidate # 0.880 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.880 * * [simplify]: iters left: 2 (7 enodes) 0.882 * * [simplify]: iters left: 1 (18 enodes) 0.885 * * [simplify]: Extracting #0: cost 1 inf + 0 0.885 * * [simplify]: Extracting #1: cost 3 inf + 0 0.886 * * [simplify]: Extracting #2: cost 7 inf + 0 0.886 * * [simplify]: Extracting #3: cost 2 inf + 326 0.886 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.886 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.886 * [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.886 * * * * [progress]: [ 8 / 9 ] simplifiying candidate # 0.886 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.886 * * [simplify]: iters left: 2 (7 enodes) 0.888 * * [simplify]: iters left: 1 (18 enodes) 0.891 * * [simplify]: Extracting #0: cost 1 inf + 0 0.891 * * [simplify]: Extracting #1: cost 3 inf + 0 0.891 * * [simplify]: Extracting #2: cost 7 inf + 0 0.891 * * [simplify]: Extracting #3: cost 2 inf + 326 0.892 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.892 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.892 * [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.892 * * * * [progress]: [ 9 / 9 ] simplifiying candidate # 0.892 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.892 * * [simplify]: iters left: 2 (7 enodes) 0.894 * * [simplify]: iters left: 1 (18 enodes) 0.897 * * [simplify]: Extracting #0: cost 1 inf + 0 0.897 * * [simplify]: Extracting #1: cost 3 inf + 0 0.897 * * [simplify]: Extracting #2: cost 7 inf + 0 0.897 * * [simplify]: Extracting #3: cost 2 inf + 326 0.897 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.898 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.898 * [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.898 * * * [progress]: adding candidates to table 1.017 * * [progress]: iteration 4 / 4 1.017 * * * [progress]: picking best candidate 1.060 * * * * [pick]: Picked # 1.060 * * * [progress]: localizing error 1.303 * * * [progress]: generating rewritten candidates 1.303 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2 1) 1.310 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 1.315 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2 2) 1.321 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2 1 1) 1.326 * * * [progress]: generating series expansions 1.326 * * * * [progress]: [ 1 / 4 ] generating series at (2 2 1) 1.326 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 1.326 * * * * [progress]: [ 3 / 4 ] generating series at (2 2 2) 1.326 * * * * [progress]: [ 4 / 4 ] generating series at (2 2 1 1) 1.333 * * * [progress]: simplifying candidates 1.334 * * * * [progress]: [ 1 / 13 ] simplifiying candidate # 1.334 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.334 * * [simplify]: iters left: 2 (7 enodes) 1.336 * * [simplify]: iters left: 1 (24 enodes) 1.342 * * [simplify]: Extracting #0: cost 1 inf + 0 1.342 * * [simplify]: Extracting #1: cost 6 inf + 0 1.342 * * [simplify]: Extracting #2: cost 15 inf + 0 1.342 * * [simplify]: Extracting #3: cost 19 inf + 728 1.343 * * [simplify]: Extracting #4: cost 3 inf + 11524 1.343 * * [simplify]: Extracting #5: cost 0 inf + 15936 1.344 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 1.344 * [simplify]: Simplified (2 2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.p16 (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.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))))) 1.345 * * * * [progress]: [ 2 / 13 ] simplifiying candidate # 1.345 * [simplify]: Simplifying (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im))) 1.345 * * [simplify]: iters left: 3 (9 enodes) 1.348 * * [simplify]: iters left: 2 (28 enodes) 1.355 * * [simplify]: iters left: 1 (42 enodes) 1.364 * * [simplify]: Extracting #0: cost 1 inf + 0 1.364 * * [simplify]: Extracting #1: cost 3 inf + 0 1.364 * * [simplify]: Extracting #2: cost 17 inf + 0 1.364 * * [simplify]: Extracting #3: cost 11 inf + 967 1.364 * * [simplify]: Extracting #4: cost 0 inf + 7108 1.365 * [simplify]: Simplified to (+.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im))) 1.365 * [simplify]: Simplified (2 2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (*.p16 (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (-.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))))) (+.p16 (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im))))) 1.365 * * * * [progress]: [ 3 / 13 ] simplifiying candidate # 1.365 * [simplify]: Simplifying (*.p16 (/.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)))) (*.p16 x.im y.im)) 1.365 * * [simplify]: iters left: 5 (12 enodes) 1.370 * * [simplify]: iters left: 4 (45 enodes) 1.382 * * [simplify]: iters left: 3 (122 enodes) 1.428 * * [simplify]: iters left: 2 (456 enodes) 1.949 * * [simplify]: Extracting #0: cost 1 inf + 0 1.949 * * [simplify]: Extracting #1: cost 133 inf + 0 1.951 * * [simplify]: Extracting #2: cost 476 inf + 324 1.962 * * [simplify]: Extracting #3: cost 458 inf + 240024 2.024 * * [simplify]: Extracting #4: cost 154 inf + 1122869 2.109 * * [simplify]: Extracting #5: cost 58 inf + 1360602 2.184 * * [simplify]: Extracting #6: cost 0 inf + 1476045 2.252 * * [simplify]: Extracting #7: cost 0 inf + 1475485 2.320 * [simplify]: Simplified to (/.p16 (*.p16 y.im x.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 2.320 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 (/.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)))) (*.p16 x.re y.re)) (/.p16 (*.p16 y.im x.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)))))) 2.320 * * * * [progress]: [ 4 / 13 ] simplifiying candidate # 2.320 * [simplify]: Simplifying (*.p16 (*.p16 x.im y.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))))) 2.320 * * [simplify]: iters left: 5 (12 enodes) 2.323 * * [simplify]: iters left: 4 (45 enodes) 2.331 * * [simplify]: iters left: 3 (128 enodes) 2.361 * * [simplify]: iters left: 2 (473 enodes) 2.908 * * [simplify]: Extracting #0: cost 1 inf + 0 2.908 * * [simplify]: Extracting #1: cost 105 inf + 0 2.911 * * [simplify]: Extracting #2: cost 423 inf + 2 2.918 * * [simplify]: Extracting #3: cost 454 inf + 148196 2.961 * * [simplify]: Extracting #4: cost 186 inf + 890802 3.030 * * [simplify]: Extracting #5: cost 61 inf + 1252750 3.118 * * [simplify]: Extracting #6: cost 1 inf + 1363435 3.202 * * [simplify]: Extracting #7: cost 0 inf + 1365959 3.263 * [simplify]: Simplified to (/.p16 (*.p16 x.im y.im) (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 3.263 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 (*.p16 x.re y.re) (/.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))))) (/.p16 (*.p16 x.im y.im) (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)))))) 3.263 * * * * [progress]: [ 5 / 13 ] simplifiying candidate # 3.263 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (-.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))))) 3.263 * * [simplify]: iters left: 5 (13 enodes) 3.266 * * [simplify]: iters left: 4 (50 enodes) 3.275 * * [simplify]: iters left: 3 (149 enodes) 3.315 * * [simplify]: Extracting #0: cost 1 inf + 0 3.315 * * [simplify]: Extracting #1: cost 17 inf + 0 3.315 * * [simplify]: Extracting #2: cost 57 inf + 0 3.316 * * [simplify]: Extracting #3: cost 121 inf + 0 3.316 * * [simplify]: Extracting #4: cost 174 inf + 12958 3.322 * * [simplify]: Extracting #5: cost 62 inf + 203298 3.332 * * [simplify]: Extracting #6: cost 10 inf + 298036 3.346 * * [simplify]: Extracting #7: cost 0 inf + 319076 3.366 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (*.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.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))))) 3.367 * [simplify]: Simplified (2 2 1) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (*.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.im x.im) (*.p16 y.im x.im)) (*.p16 (*.p16 y.re x.re) (*.p16 y.re x.re))))) (*.p16 (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))))) 3.367 * * * * [progress]: [ 6 / 13 ] simplifiying candidate # 3.367 * [simplify]: Simplifying (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im))) 3.367 * * [simplify]: iters left: 3 (8 enodes) 3.370 * * [simplify]: iters left: 2 (25 enodes) 3.376 * * [simplify]: iters left: 1 (55 enodes) 3.393 * * [simplify]: Extracting #0: cost 1 inf + 0 3.393 * * [simplify]: Extracting #1: cost 15 inf + 0 3.394 * * [simplify]: Extracting #2: cost 41 inf + 0 3.394 * * [simplify]: Extracting #3: cost 35 inf + 968 3.395 * * [simplify]: Extracting #4: cost 6 inf + 23616 3.397 * * [simplify]: Extracting #5: cost 0 inf + 31800 3.398 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))) 3.399 * [simplify]: Simplified (2 2 1) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (/.p16 (*.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))) (-.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)))))) 3.399 * * * * [progress]: [ 7 / 13 ] simplifiying candidate # 3.399 * * * * [progress]: [ 8 / 13 ] simplifiying candidate # 3.399 * * * * [progress]: [ 9 / 13 ] simplifiying candidate # 3.399 * * * * [progress]: [ 10 / 13 ] simplifiying candidate # 3.399 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 3.399 * * [simplify]: iters left: 2 (7 enodes) 3.401 * * [simplify]: iters left: 1 (18 enodes) 3.404 * * [simplify]: Extracting #0: cost 1 inf + 0 3.405 * * [simplify]: Extracting #1: cost 3 inf + 0 3.405 * * [simplify]: Extracting #2: cost 7 inf + 0 3.405 * * [simplify]: Extracting #3: cost 2 inf + 326 3.405 * * [simplify]: Extracting #4: cost 0 inf + 1332 3.405 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 3.405 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.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)))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 3.405 * * * * [progress]: [ 11 / 13 ] simplifiying candidate # 3.405 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 3.405 * * [simplify]: iters left: 2 (7 enodes) 3.407 * * [simplify]: iters left: 1 (18 enodes) 3.411 * * [simplify]: Extracting #0: cost 1 inf + 0 3.411 * * [simplify]: Extracting #1: cost 3 inf + 0 3.411 * * [simplify]: Extracting #2: cost 7 inf + 0 3.411 * * [simplify]: Extracting #3: cost 2 inf + 326 3.411 * * [simplify]: Extracting #4: cost 0 inf + 1332 3.411 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 3.411 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.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)))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 3.411 * * * * [progress]: [ 12 / 13 ] simplifiying candidate # 3.411 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 3.411 * * [simplify]: iters left: 2 (7 enodes) 3.413 * * [simplify]: iters left: 1 (18 enodes) 3.417 * * [simplify]: Extracting #0: cost 1 inf + 0 3.417 * * [simplify]: Extracting #1: cost 3 inf + 0 3.417 * * [simplify]: Extracting #2: cost 7 inf + 0 3.417 * * [simplify]: Extracting #3: cost 2 inf + 326 3.417 * * [simplify]: Extracting #4: cost 0 inf + 1332 3.417 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 3.417 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.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)))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 3.417 * * * * [progress]: [ 13 / 13 ] simplifiying candidate # 3.418 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 3.418 * * [simplify]: iters left: 2 (7 enodes) 3.420 * * [simplify]: iters left: 1 (18 enodes) 3.423 * * [simplify]: Extracting #0: cost 1 inf + 0 3.423 * * [simplify]: Extracting #1: cost 3 inf + 0 3.423 * * [simplify]: Extracting #2: cost 7 inf + 0 3.423 * * [simplify]: Extracting #3: cost 2 inf + 326 3.423 * * [simplify]: Extracting #4: cost 0 inf + 1332 3.423 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 3.423 * [simplify]: Simplified (2 2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) (*.p16 (/.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)))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 3.424 * * * [progress]: adding candidates to table 3.586 * [progress]: [Phase 3 of 3] Extracting. 3.586 * * [regime]: Finding splitpoints for: (# # # # # # # # # #) 3.589 * * * [regime-changes]: Trying 4 branch expressions: (y.im x.im y.re x.re) 3.589 * * * * [regimes]: Trying to branch on y.im from (# # # # # # # # # #) 3.742 * * * * [regimes]: Trying to branch on x.im from (# # # # # # # # # #) 3.903 * * * * [regimes]: Trying to branch on y.re from (# # # # # # # # # #) 4.027 * * * * [regimes]: Trying to branch on x.re from (# # # # # # # # # #) 4.167 * * * [regime]: Found split indices: #