0.002 * [progress]: [Phase 1 of 3] Setting up. 0.002 * * * [progress]: [1/2] Preparing points 0.002 * * * * [points]: Sampling 256 additional inputs, on iter 0 have 0 / 256 0.004 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.005 * * * * [points]: Setting MPFR precision to 64 0.006 * * * * [points]: Setting MPFR precision to 320 0.007 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.008 * * * * [points]: Setting MPFR precision to 64 0.010 * * * * [points]: Setting MPFR precision to 320 0.013 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.013 * * * * [points]: Setting MPFR precision to 64 0.018 * * * * [points]: Setting MPFR precision to 320 0.022 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.023 * * * * [points]: Setting MPFR precision to 64 0.028 * * * * [points]: Setting MPFR precision to 320 0.033 * * * * [points]: Computing exacts for 256 points 0.034 * * * * [points]: Setting MPFR precision to 64 0.048 * * * * [points]: Setting MPFR precision to 320 0.076 * * * * [points]: Filtering points with unrepresentable outputs 0.077 * * * * [points]: Sampled 256 points with exact outputs 0.078 * * * [progress]: [2/2] Setting up program. 0.085 * [progress]: [Phase 2 of 3] Improving. 0.085 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.086 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.086 * * [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.100 * * [progress]: iteration 1 / 4 0.100 * * * [progress]: picking best candidate 0.104 * * * * [pick]: Picked # 0.104 * * * [progress]: localizing error 0.167 * * * [progress]: generating rewritten candidates 0.167 * * * * [progress]: [ 1 / 1 ] rewriting at (2) 0.169 * * * [progress]: generating series expansions 0.170 * * * * [progress]: [ 1 / 1 ] generating series at (2) 0.170 * * * [progress]: simplifying candidates 0.170 * * * * [progress]: [ 1 / 3 ] simplifiying candidate # 0.170 * [simplify]: Simplifying (neg.p16 (*.p16 x.im y.im)) 0.170 * * [simplify]: iters left: 2 (4 enodes) 0.171 * * [simplify]: iters left: 1 (9 enodes) 0.172 * * [simplify]: Extracting #0: cost 1 inf + 0 0.172 * * [simplify]: Extracting #1: cost 2 inf + 0 0.172 * * [simplify]: Extracting #2: cost 4 inf + 0 0.172 * * [simplify]: Extracting #3: cost 2 inf + 2 0.172 * * [simplify]: Extracting #4: cost 0 inf + 726 0.172 * [simplify]: Simplified to (neg.p16 (*.p16 y.im x.im)) 0.172 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (+.p16 (*.p16 x.re y.re) (neg.p16 (*.p16 y.im x.im)))) 0.172 * * * * [progress]: [ 2 / 3 ] simplifiying candidate # 0.172 * [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))) 0.172 * * [simplify]: iters left: 3 (9 enodes) 0.174 * * [simplify]: iters left: 2 (37 enodes) 0.189 * * [simplify]: iters left: 1 (90 enodes) 0.214 * * [simplify]: Extracting #0: cost 1 inf + 0 0.214 * * [simplify]: Extracting #1: cost 21 inf + 0 0.215 * * [simplify]: Extracting #2: cost 55 inf + 0 0.215 * * [simplify]: Extracting #3: cost 87 inf + 2654 0.217 * * [simplify]: Extracting #4: cost 68 inf + 28908 0.223 * * [simplify]: Extracting #5: cost 2 inf + 125654 0.229 * * [simplify]: Extracting #6: cost 0 inf + 128020 0.233 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 0.233 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 0.234 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.234 * * [simplify]: iters left: 2 (7 enodes) 0.235 * * [simplify]: iters left: 1 (18 enodes) 0.237 * * [simplify]: Extracting #0: cost 1 inf + 0 0.237 * * [simplify]: Extracting #1: cost 3 inf + 0 0.237 * * [simplify]: Extracting #2: cost 7 inf + 0 0.237 * * [simplify]: Extracting #3: cost 2 inf + 326 0.237 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.238 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 0.238 * [simplify]: Simplified (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 x.im y.im))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 0.238 * * * * [progress]: [ 3 / 3 ] simplifiying candidate # 0.238 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 0.238 * * [simplify]: iters left: 2 (7 enodes) 0.240 * * [simplify]: iters left: 1 (24 enodes) 0.244 * * [simplify]: Extracting #0: cost 1 inf + 0 0.244 * * [simplify]: Extracting #1: cost 6 inf + 0 0.244 * * [simplify]: Extracting #2: cost 15 inf + 0 0.244 * * [simplify]: Extracting #3: cost 19 inf + 728 0.244 * * [simplify]: Extracting #4: cost 3 inf + 11524 0.244 * * [simplify]: Extracting #5: cost 0 inf + 15936 0.245 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 0.245 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.245 * * * [progress]: adding candidates to table 0.300 * * [progress]: iteration 2 / 4 0.300 * * * [progress]: picking best candidate 0.309 * * * * [pick]: Picked # 0.309 * * * [progress]: localizing error 0.504 * * * [progress]: generating rewritten candidates 0.504 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 0.514 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 0.519 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 0.530 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 0.540 * * * [progress]: generating series expansions 0.540 * * * * [progress]: [ 1 / 4 ] generating series at (2) 0.540 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 0.540 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 0.540 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 0.540 * * * [progress]: simplifying candidates 0.540 * * * * [progress]: [ 1 / 13 ] simplifiying candidate # 0.541 * [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))) 0.541 * * [simplify]: iters left: 3 (9 enodes) 0.543 * * [simplify]: iters left: 2 (26 enodes) 0.550 * * [simplify]: iters left: 1 (53 enodes) 0.563 * * [simplify]: Extracting #0: cost 1 inf + 0 0.563 * * [simplify]: Extracting #1: cost 10 inf + 0 0.563 * * [simplify]: Extracting #2: cost 26 inf + 0 0.563 * * [simplify]: Extracting #3: cost 39 inf + 0 0.564 * * [simplify]: Extracting #4: cost 56 inf + 728 0.565 * * [simplify]: Extracting #5: cost 21 inf + 32616 0.567 * * [simplify]: Extracting #6: cost 1 inf + 61996 0.570 * * [simplify]: Extracting #7: cost 0 inf + 63840 0.575 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 0.575 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 0.575 * * * * [progress]: [ 2 / 13 ] simplifiying candidate # 0.575 * [simplify]: Simplifying (*.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.576 * * [simplify]: iters left: 4 (11 enodes) 0.580 * * [simplify]: iters left: 3 (38 enodes) 0.590 * * [simplify]: iters left: 2 (102 enodes) 0.626 * * [simplify]: iters left: 1 (321 enodes) 0.841 * * [simplify]: Extracting #0: cost 1 inf + 0 0.841 * * [simplify]: Extracting #1: cost 15 inf + 0 0.842 * * [simplify]: Extracting #2: cost 101 inf + 0 0.843 * * [simplify]: Extracting #3: cost 148 inf + 11121 1.147 * * [simplify]: Extracting #4: cost 30 inf + 145689 1.159 * * [simplify]: Extracting #5: cost 0 inf + 184306 1.171 * * [simplify]: Extracting #6: cost 0 inf + 183986 1.184 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 y.im x.im) (*.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.184 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (-.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.im x.im) (*.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.184 * * * * [progress]: [ 3 / 13 ] simplifiying candidate # 1.184 * * * * [progress]: [ 4 / 13 ] simplifiying candidate # 1.184 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.184 * * [simplify]: iters left: 2 (7 enodes) 1.185 * * [simplify]: iters left: 1 (18 enodes) 1.188 * * [simplify]: Extracting #0: cost 1 inf + 0 1.188 * * [simplify]: Extracting #1: cost 3 inf + 0 1.188 * * [simplify]: Extracting #2: cost 7 inf + 0 1.188 * * [simplify]: Extracting #3: cost 2 inf + 326 1.188 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.188 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 1.188 * [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)))) 1.188 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.188 * * [simplify]: iters left: 2 (7 enodes) 1.189 * * [simplify]: iters left: 1 (24 enodes) 1.193 * * [simplify]: Extracting #0: cost 1 inf + 0 1.193 * * [simplify]: Extracting #1: cost 6 inf + 0 1.193 * * [simplify]: Extracting #2: cost 15 inf + 0 1.193 * * [simplify]: Extracting #3: cost 19 inf + 728 1.194 * * [simplify]: Extracting #4: cost 3 inf + 11524 1.194 * * [simplify]: Extracting #5: cost 0 inf + 15936 1.194 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 1.195 * [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)))) 1.195 * * * * [progress]: [ 5 / 13 ] simplifiying candidate # 1.195 * [simplify]: Simplifying (neg.p16 (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im))) 1.195 * * [simplify]: iters left: 3 (5 enodes) 1.196 * * [simplify]: iters left: 2 (14 enodes) 1.198 * * [simplify]: iters left: 1 (21 enodes) 1.201 * * [simplify]: Extracting #0: cost 1 inf + 0 1.201 * * [simplify]: Extracting #1: cost 2 inf + 0 1.201 * * [simplify]: Extracting #2: cost 9 inf + 0 1.201 * * [simplify]: Extracting #3: cost 6 inf + 323 1.201 * * [simplify]: Extracting #4: cost 0 inf + 3614 1.201 * [simplify]: Simplified to (neg.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im))) 1.201 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 (*.p16 x.re y.re) (*.p16 x.re y.re)) (neg.p16 (*.p16 (*.p16 y.im x.im) (*.p16 y.im x.im)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.201 * * * * [progress]: [ 6 / 13 ] simplifiying candidate # 1.202 * [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)))) 1.202 * * [simplify]: iters left: 4 (11 enodes) 1.206 * * [simplify]: iters left: 3 (47 enodes) 1.220 * * [simplify]: iters left: 2 (143 enodes) 1.281 * * [simplify]: Extracting #0: cost 1 inf + 0 1.281 * * [simplify]: Extracting #1: cost 25 inf + 0 1.281 * * [simplify]: Extracting #2: cost 73 inf + 0 1.282 * * [simplify]: Extracting #3: cost 137 inf + 2332 1.285 * * [simplify]: Extracting #4: cost 130 inf + 54538 1.294 * * [simplify]: Extracting #5: cost 25 inf + 226634 1.308 * * [simplify]: Extracting #6: cost 2 inf + 276060 1.323 * * [simplify]: Extracting #7: cost 0 inf + 281626 1.338 * [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)))) 1.338 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.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.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)))) 1.338 * [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.338 * * [simplify]: iters left: 3 (9 enodes) 1.341 * * [simplify]: iters left: 2 (28 enodes) 1.347 * * [simplify]: iters left: 1 (42 enodes) 1.358 * * [simplify]: Extracting #0: cost 1 inf + 0 1.358 * * [simplify]: Extracting #1: cost 3 inf + 0 1.358 * * [simplify]: Extracting #2: cost 17 inf + 0 1.359 * * [simplify]: Extracting #3: cost 11 inf + 967 1.359 * * [simplify]: Extracting #4: cost 0 inf + 7108 1.359 * [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.359 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.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.359 * * * * [progress]: [ 7 / 13 ] simplifiying candidate # 1.360 * [simplify]: Simplifying (*.p16 (*.p16 x.im y.im) x.im) 1.360 * * [simplify]: iters left: 2 (4 enodes) 1.361 * * [simplify]: iters left: 1 (10 enodes) 1.363 * * [simplify]: Extracting #0: cost 1 inf + 0 1.363 * * [simplify]: Extracting #1: cost 5 inf + 0 1.363 * * [simplify]: Extracting #2: cost 3 inf + 2 1.363 * * [simplify]: Extracting #3: cost 0 inf + 1287 1.363 * [simplify]: Simplified to (*.p16 x.im (*.p16 y.im x.im)) 1.363 * [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 x.im (*.p16 y.im x.im)) y.im)) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.363 * * * * [progress]: [ 8 / 13 ] simplifiying candidate # 1.363 * [simplify]: Simplifying (*.p16 y.im (*.p16 x.im y.im)) 1.363 * * [simplify]: iters left: 2 (4 enodes) 1.365 * * [simplify]: iters left: 1 (10 enodes) 1.367 * * [simplify]: Extracting #0: cost 1 inf + 0 1.367 * * [simplify]: Extracting #1: cost 5 inf + 0 1.367 * * [simplify]: Extracting #2: cost 3 inf + 2 1.367 * * [simplify]: Extracting #3: cost 0 inf + 1287 1.367 * [simplify]: Simplified to (*.p16 x.im (*.p16 y.im y.im)) 1.367 * [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 x.im (*.p16 x.im (*.p16 y.im y.im)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.367 * * * * [progress]: [ 9 / 13 ] simplifiying candidate # 1.367 * * * * [progress]: [ 10 / 13 ] simplifiying candidate # 1.367 * [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.367 * * [simplify]: iters left: 3 (9 enodes) 1.370 * * [simplify]: iters left: 2 (37 enodes) 1.380 * * [simplify]: iters left: 1 (90 enodes) 1.409 * * [simplify]: Extracting #0: cost 1 inf + 0 1.409 * * [simplify]: Extracting #1: cost 21 inf + 0 1.409 * * [simplify]: Extracting #2: cost 55 inf + 0 1.409 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.411 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.416 * * [simplify]: Extracting #5: cost 2 inf + 125654 1.422 * * [simplify]: Extracting #6: cost 0 inf + 128020 1.428 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 1.428 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.428 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.428 * * [simplify]: iters left: 2 (7 enodes) 1.431 * * [simplify]: iters left: 1 (18 enodes) 1.434 * * [simplify]: Extracting #0: cost 1 inf + 0 1.434 * * [simplify]: Extracting #1: cost 3 inf + 0 1.434 * * [simplify]: Extracting #2: cost 7 inf + 0 1.434 * * [simplify]: Extracting #3: cost 2 inf + 326 1.434 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.434 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 1.434 * [simplify]: Simplified (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 x.im y.im))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 1.434 * * * * [progress]: [ 11 / 13 ] simplifiying candidate # 1.435 * [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.435 * * [simplify]: iters left: 3 (9 enodes) 1.438 * * [simplify]: iters left: 2 (37 enodes) 1.447 * * [simplify]: iters left: 1 (90 enodes) 1.476 * * [simplify]: Extracting #0: cost 1 inf + 0 1.476 * * [simplify]: Extracting #1: cost 21 inf + 0 1.477 * * [simplify]: Extracting #2: cost 55 inf + 0 1.477 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.478 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.484 * * [simplify]: Extracting #5: cost 2 inf + 125654 1.490 * * [simplify]: Extracting #6: cost 0 inf + 128020 1.496 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 1.496 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.496 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.496 * * [simplify]: iters left: 2 (7 enodes) 1.498 * * [simplify]: iters left: 1 (18 enodes) 1.502 * * [simplify]: Extracting #0: cost 1 inf + 0 1.502 * * [simplify]: Extracting #1: cost 3 inf + 0 1.502 * * [simplify]: Extracting #2: cost 7 inf + 0 1.502 * * [simplify]: Extracting #3: cost 2 inf + 326 1.502 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.502 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 1.502 * [simplify]: Simplified (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 x.im y.im))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 1.502 * * * * [progress]: [ 12 / 13 ] simplifiying candidate # 1.502 * [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.503 * * [simplify]: iters left: 3 (9 enodes) 1.506 * * [simplify]: iters left: 2 (37 enodes) 1.515 * * [simplify]: iters left: 1 (90 enodes) 1.544 * * [simplify]: Extracting #0: cost 1 inf + 0 1.544 * * [simplify]: Extracting #1: cost 21 inf + 0 1.545 * * [simplify]: Extracting #2: cost 55 inf + 0 1.545 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.547 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.552 * * [simplify]: Extracting #5: cost 2 inf + 125654 1.558 * * [simplify]: Extracting #6: cost 0 inf + 128020 1.566 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 1.566 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.566 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.567 * * [simplify]: iters left: 2 (7 enodes) 1.569 * * [simplify]: iters left: 1 (18 enodes) 1.572 * * [simplify]: Extracting #0: cost 1 inf + 0 1.572 * * [simplify]: Extracting #1: cost 3 inf + 0 1.572 * * [simplify]: Extracting #2: cost 7 inf + 0 1.572 * * [simplify]: Extracting #3: cost 2 inf + 326 1.572 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.572 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 1.572 * [simplify]: Simplified (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 x.im y.im))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 1.572 * * * * [progress]: [ 13 / 13 ] simplifiying candidate # 1.573 * [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.573 * * [simplify]: iters left: 3 (9 enodes) 1.576 * * [simplify]: iters left: 2 (37 enodes) 1.585 * * [simplify]: iters left: 1 (90 enodes) 1.606 * * [simplify]: Extracting #0: cost 1 inf + 0 1.606 * * [simplify]: Extracting #1: cost 21 inf + 0 1.606 * * [simplify]: Extracting #2: cost 55 inf + 0 1.606 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.607 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.611 * * [simplify]: Extracting #5: cost 2 inf + 125654 1.615 * * [simplify]: Extracting #6: cost 0 inf + 128020 1.619 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 1.619 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 1.619 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 1.619 * * [simplify]: iters left: 2 (7 enodes) 1.621 * * [simplify]: iters left: 1 (18 enodes) 1.624 * * [simplify]: Extracting #0: cost 1 inf + 0 1.624 * * [simplify]: Extracting #1: cost 3 inf + 0 1.624 * * [simplify]: Extracting #2: cost 7 inf + 0 1.624 * * [simplify]: Extracting #3: cost 2 inf + 326 1.624 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.624 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 1.624 * [simplify]: Simplified (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 x.im y.im))) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)))) 1.625 * * * [progress]: adding candidates to table 1.834 * * [progress]: iteration 3 / 4 1.835 * * * [progress]: picking best candidate 1.873 * * * * [pick]: Picked # 1.873 * * * [progress]: localizing error 2.034 * * * [progress]: generating rewritten candidates 2.034 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2) 2.037 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 2.040 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2 2) 2.043 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2 1) 2.048 * * * [progress]: generating series expansions 2.048 * * * * [progress]: [ 1 / 4 ] generating series at (2 2) 2.048 * * * * [progress]: [ 2 / 4 ] generating series at (2) 2.048 * * * * [progress]: [ 3 / 4 ] generating series at (2 2 2) 2.048 * * * * [progress]: [ 4 / 4 ] generating series at (2 2 1) 2.048 * * * [progress]: simplifying candidates 2.048 * * * * [progress]: [ 1 / 10 ] simplifiying candidate # 2.048 * [simplify]: Simplifying (/.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.048 * * [simplify]: iters left: 4 (11 enodes) 2.051 * * [simplify]: iters left: 3 (39 enodes) 2.061 * * [simplify]: iters left: 2 (95 enodes) 2.086 * * [simplify]: iters left: 1 (307 enodes) 2.241 * * [simplify]: Extracting #0: cost 1 inf + 0 2.241 * * [simplify]: Extracting #1: cost 35 inf + 0 2.242 * * [simplify]: Extracting #2: cost 175 inf + 0 2.243 * * [simplify]: Extracting #3: cost 263 inf + 8316 2.253 * * [simplify]: Extracting #4: cost 267 inf + 204297 2.285 * * [simplify]: Extracting #5: cost 103 inf + 570590 2.321 * * [simplify]: Extracting #6: cost 0 inf + 801211 2.369 * [simplify]: Simplified to (/.p16 (real->posit16 1.0) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 2.369 * [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 (real->posit16 1.0) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im))))) 2.369 * * * * [progress]: [ 2 / 10 ] simplifiying candidate # 2.370 * [simplify]: Simplifying (/.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))))) 2.370 * * [simplify]: iters left: 5 (12 enodes) 2.374 * * [simplify]: iters left: 4 (42 enodes) 2.387 * * [simplify]: iters left: 3 (112 enodes) 2.428 * * [simplify]: iters left: 2 (410 enodes) 3.099 * * [simplify]: Extracting #0: cost 1 inf + 0 3.100 * * [simplify]: Extracting #1: cost 71 inf + 0 3.101 * * [simplify]: Extracting #2: cost 410 inf + 0 3.105 * * [simplify]: Extracting #3: cost 682 inf + 10202 3.125 * * [simplify]: Extracting #4: cost 568 inf + 410878 3.189 * * [simplify]: Extracting #5: cost 60 inf + 1333963 3.265 * * [simplify]: Extracting #6: cost 1 inf + 1443724 3.348 * * [simplify]: Extracting #7: cost 0 inf + 1433849 3.411 * * [simplify]: Extracting #8: cost 0 inf + 1432369 3.493 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 y.im x.im)) (-.p16 (*.p16 x.re y.re) (*.p16 y.im x.im))) 3.493 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (*.p16 (+.p16 (*.p16 x.re y.re) (*.p16 y.im x.im)) (-.p16 (*.p16 x.re y.re) (*.p16 y.im x.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 3.494 * * * * [progress]: [ 3 / 10 ] simplifiying candidate # 3.494 * [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.494 * * [simplify]: iters left: 3 (8 enodes) 3.497 * * [simplify]: iters left: 2 (21 enodes) 3.501 * * [simplify]: iters left: 1 (22 enodes) 3.505 * * [simplify]: Extracting #0: cost 1 inf + 0 3.505 * * [simplify]: Extracting #1: cost 3 inf + 0 3.505 * * [simplify]: Extracting #2: cost 4 inf + 1 3.505 * * [simplify]: Extracting #3: cost 7 inf + 2 3.505 * * [simplify]: Extracting #4: cost 2 inf + 328 3.505 * * [simplify]: Extracting #5: cost 0 inf + 1334 3.505 * [simplify]: Simplified to (real->posit16 1.0) 3.506 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (*.p16 (real->posit16 1.0) (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 3.506 * * * * [progress]: [ 4 / 10 ] simplifiying candidate # 3.506 * [simplify]: Simplifying (neg.p16 (*.p16 x.im y.im)) 3.506 * * [simplify]: iters left: 2 (4 enodes) 3.507 * * [simplify]: iters left: 1 (9 enodes) 3.509 * * [simplify]: Extracting #0: cost 1 inf + 0 3.509 * * [simplify]: Extracting #1: cost 2 inf + 0 3.509 * * [simplify]: Extracting #2: cost 4 inf + 0 3.509 * * [simplify]: Extracting #3: cost 2 inf + 2 3.509 * * [simplify]: Extracting #4: cost 0 inf + 726 3.509 * [simplify]: Simplified to (neg.p16 (*.p16 y.im x.im)) 3.509 * [simplify]: Simplified (2 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 x.im y.im)) (+.p16 (*.p16 x.re y.re) (neg.p16 (*.p16 y.im x.im)))))) 3.509 * * * * [progress]: [ 5 / 10 ] simplifiying candidate # 3.509 * [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))) 3.509 * * [simplify]: iters left: 3 (9 enodes) 3.512 * * [simplify]: iters left: 2 (37 enodes) 3.518 * * [simplify]: iters left: 1 (90 enodes) 3.538 * * [simplify]: Extracting #0: cost 1 inf + 0 3.538 * * [simplify]: Extracting #1: cost 21 inf + 0 3.538 * * [simplify]: Extracting #2: cost 55 inf + 0 3.539 * * [simplify]: Extracting #3: cost 87 inf + 2654 3.539 * * [simplify]: Extracting #4: cost 68 inf + 28908 3.543 * * [simplify]: Extracting #5: cost 2 inf + 125654 3.547 * * [simplify]: Extracting #6: cost 0 inf + 128020 3.551 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 3.551 * [simplify]: Simplified (2 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 x.re y.re) (*.p16 x.im y.im)) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))))) 3.552 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 3.552 * * [simplify]: iters left: 2 (7 enodes) 3.553 * * [simplify]: iters left: 1 (18 enodes) 3.555 * * [simplify]: Extracting #0: cost 1 inf + 0 3.555 * * [simplify]: Extracting #1: cost 3 inf + 0 3.555 * * [simplify]: Extracting #2: cost 7 inf + 0 3.555 * * [simplify]: Extracting #3: cost 2 inf + 326 3.555 * * [simplify]: Extracting #4: cost 0 inf + 1332 3.555 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 3.556 * [simplify]: Simplified (2 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 x.im y.im)) (/.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 y.im x.im) (*.p16 y.re x.re)))))) 3.556 * * * * [progress]: [ 6 / 10 ] simplifiying candidate # 3.556 * * * * [progress]: [ 7 / 10 ] simplifiying candidate # 3.556 * [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.556 * * [simplify]: iters left: 3 (9 enodes) 3.558 * * [simplify]: iters left: 2 (26 enodes) 3.563 * * [simplify]: iters left: 1 (53 enodes) 3.577 * * [simplify]: Extracting #0: cost 1 inf + 0 3.577 * * [simplify]: Extracting #1: cost 10 inf + 0 3.577 * * [simplify]: Extracting #2: cost 26 inf + 0 3.577 * * [simplify]: Extracting #3: cost 39 inf + 0 3.578 * * [simplify]: Extracting #4: cost 56 inf + 728 3.579 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.581 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.582 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.584 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 3.584 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 3.584 * * * * [progress]: [ 8 / 10 ] simplifiying candidate # 3.584 * [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.584 * * [simplify]: iters left: 3 (9 enodes) 3.586 * * [simplify]: iters left: 2 (26 enodes) 3.592 * * [simplify]: iters left: 1 (53 enodes) 3.603 * * [simplify]: Extracting #0: cost 1 inf + 0 3.603 * * [simplify]: Extracting #1: cost 10 inf + 0 3.603 * * [simplify]: Extracting #2: cost 26 inf + 0 3.603 * * [simplify]: Extracting #3: cost 39 inf + 0 3.604 * * [simplify]: Extracting #4: cost 56 inf + 728 3.604 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.606 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.608 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.609 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 3.609 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 3.609 * * * * [progress]: [ 9 / 10 ] simplifiying candidate # 3.610 * [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.610 * * [simplify]: iters left: 3 (9 enodes) 3.612 * * [simplify]: iters left: 2 (26 enodes) 3.619 * * [simplify]: iters left: 1 (53 enodes) 3.632 * * [simplify]: Extracting #0: cost 1 inf + 0 3.632 * * [simplify]: Extracting #1: cost 10 inf + 0 3.632 * * [simplify]: Extracting #2: cost 26 inf + 0 3.633 * * [simplify]: Extracting #3: cost 39 inf + 0 3.633 * * [simplify]: Extracting #4: cost 56 inf + 728 3.634 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.636 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.638 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.641 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 3.641 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 3.641 * * * * [progress]: [ 10 / 10 ] simplifiying candidate # 3.641 * [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.641 * * [simplify]: iters left: 3 (9 enodes) 3.644 * * [simplify]: iters left: 2 (26 enodes) 3.649 * * [simplify]: iters left: 1 (53 enodes) 3.663 * * [simplify]: Extracting #0: cost 1 inf + 0 3.663 * * [simplify]: Extracting #1: cost 10 inf + 0 3.663 * * [simplify]: Extracting #2: cost 26 inf + 0 3.663 * * [simplify]: Extracting #3: cost 39 inf + 0 3.663 * * [simplify]: Extracting #4: cost 56 inf + 728 3.664 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.666 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.669 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.671 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 3.672 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 3.672 * * * [progress]: adding candidates to table 3.816 * * [progress]: iteration 4 / 4 3.816 * * * [progress]: picking best candidate 3.857 * * * * [pick]: Picked # 3.857 * * * [progress]: localizing error 3.996 * * * [progress]: generating rewritten candidates 3.996 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 4.001 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 2) 4.004 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2) 4.008 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1) 4.013 * * * [progress]: generating series expansions 4.013 * * * * [progress]: [ 1 / 4 ] generating series at (2) 4.013 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 2) 4.013 * * * * [progress]: [ 3 / 4 ] generating series at (2 2) 4.013 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1) 4.013 * * * [progress]: simplifying candidates 4.013 * * * * [progress]: [ 1 / 10 ] simplifiying candidate # 4.013 * [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))) 4.013 * * [simplify]: iters left: 3 (9 enodes) 4.016 * * [simplify]: iters left: 2 (26 enodes) 4.023 * * [simplify]: iters left: 1 (53 enodes) 4.037 * * [simplify]: Extracting #0: cost 1 inf + 0 4.038 * * [simplify]: Extracting #1: cost 10 inf + 0 4.038 * * [simplify]: Extracting #2: cost 26 inf + 0 4.038 * * [simplify]: Extracting #3: cost 39 inf + 0 4.038 * * [simplify]: Extracting #4: cost 56 inf + 728 4.039 * * [simplify]: Extracting #5: cost 21 inf + 32616 4.041 * * [simplify]: Extracting #6: cost 1 inf + 61996 4.042 * * [simplify]: Extracting #7: cost 0 inf + 63840 4.044 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))) 4.044 * [simplify]: Simplified (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 y.im x.im) (*.p16 y.re x.re)) (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im))))) 4.044 * * * * [progress]: [ 2 / 10 ] simplifiying candidate # 4.045 * [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))) 4.045 * * [simplify]: iters left: 3 (8 enodes) 4.046 * * [simplify]: iters left: 2 (25 enodes) 4.050 * * [simplify]: iters left: 1 (55 enodes) 4.064 * * [simplify]: Extracting #0: cost 1 inf + 0 4.064 * * [simplify]: Extracting #1: cost 15 inf + 0 4.064 * * [simplify]: Extracting #2: cost 41 inf + 0 4.064 * * [simplify]: Extracting #3: cost 35 inf + 968 4.065 * * [simplify]: Extracting #4: cost 6 inf + 23616 4.066 * * [simplify]: Extracting #5: cost 0 inf + 31800 4.068 * [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))) 4.068 * [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.re y.re)) (*.p16 (*.p16 x.im y.im) (*.p16 x.im y.im)))) (*.p16 (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re))))) 4.068 * * * * [progress]: [ 3 / 10 ] simplifiying candidate # 4.068 * [simplify]: Simplifying (neg.p16 (*.p16 x.im y.im)) 4.068 * * [simplify]: iters left: 2 (4 enodes) 4.069 * * [simplify]: iters left: 1 (9 enodes) 4.070 * * [simplify]: Extracting #0: cost 1 inf + 0 4.070 * * [simplify]: Extracting #1: cost 2 inf + 0 4.070 * * [simplify]: Extracting #2: cost 4 inf + 0 4.070 * * [simplify]: Extracting #3: cost 2 inf + 2 4.070 * * [simplify]: Extracting #4: cost 0 inf + 726 4.070 * [simplify]: Simplified to (neg.p16 (*.p16 y.im x.im)) 4.070 * [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.im y.im)) (+.p16 (*.p16 x.re y.re) (neg.p16 (*.p16 y.im x.im)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 4.070 * * * * [progress]: [ 4 / 10 ] simplifiying candidate # 4.071 * [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))) 4.071 * * [simplify]: iters left: 3 (9 enodes) 4.073 * * [simplify]: iters left: 2 (37 enodes) 4.079 * * [simplify]: iters left: 1 (90 enodes) 4.097 * * [simplify]: Extracting #0: cost 1 inf + 0 4.097 * * [simplify]: Extracting #1: cost 21 inf + 0 4.098 * * [simplify]: Extracting #2: cost 55 inf + 0 4.098 * * [simplify]: Extracting #3: cost 87 inf + 2654 4.099 * * [simplify]: Extracting #4: cost 68 inf + 28908 4.103 * * [simplify]: Extracting #5: cost 2 inf + 125654 4.107 * * [simplify]: Extracting #6: cost 0 inf + 128020 4.112 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) 4.112 * [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.im y.im)) (/.p16 (*.p16 (-.p16 (*.p16 y.re x.re) (*.p16 x.im y.im)) (+.p16 (*.p16 y.re x.re) (*.p16 x.im y.im))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 4.112 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.112 * * [simplify]: iters left: 2 (7 enodes) 4.113 * * [simplify]: iters left: 1 (18 enodes) 4.115 * * [simplify]: Extracting #0: cost 1 inf + 0 4.115 * * [simplify]: Extracting #1: cost 3 inf + 0 4.115 * * [simplify]: Extracting #2: cost 7 inf + 0 4.115 * * [simplify]: Extracting #3: cost 2 inf + 326 4.116 * * [simplify]: Extracting #4: cost 0 inf + 1332 4.116 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 4.116 * [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.im y.im)) (/.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 y.im x.im) (*.p16 y.re x.re)))) (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)))) 4.116 * * * * [progress]: [ 5 / 10 ] simplifiying candidate # 4.116 * * * * [progress]: [ 6 / 10 ] simplifiying candidate # 4.116 * * * * [progress]: [ 7 / 10 ] simplifiying candidate # 4.116 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.116 * * [simplify]: iters left: 2 (7 enodes) 4.117 * * [simplify]: iters left: 1 (18 enodes) 4.119 * * [simplify]: Extracting #0: cost 1 inf + 0 4.119 * * [simplify]: Extracting #1: cost 3 inf + 0 4.119 * * [simplify]: Extracting #2: cost 7 inf + 0 4.119 * * [simplify]: Extracting #3: cost 2 inf + 326 4.120 * * [simplify]: Extracting #4: cost 0 inf + 1332 4.120 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 4.120 * [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)))) 4.120 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.120 * * [simplify]: iters left: 2 (7 enodes) 4.121 * * [simplify]: iters left: 1 (24 enodes) 4.125 * * [simplify]: Extracting #0: cost 1 inf + 0 4.125 * * [simplify]: Extracting #1: cost 6 inf + 0 4.125 * * [simplify]: Extracting #2: cost 15 inf + 0 4.125 * * [simplify]: Extracting #3: cost 19 inf + 728 4.125 * * [simplify]: Extracting #4: cost 3 inf + 11524 4.125 * * [simplify]: Extracting #5: cost 0 inf + 15936 4.126 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 4.126 * [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)))) 4.126 * * * * [progress]: [ 8 / 10 ] simplifiying candidate # 4.126 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.126 * * [simplify]: iters left: 2 (7 enodes) 4.127 * * [simplify]: iters left: 1 (18 enodes) 4.130 * * [simplify]: Extracting #0: cost 1 inf + 0 4.130 * * [simplify]: Extracting #1: cost 3 inf + 0 4.130 * * [simplify]: Extracting #2: cost 7 inf + 0 4.130 * * [simplify]: Extracting #3: cost 2 inf + 326 4.130 * * [simplify]: Extracting #4: cost 0 inf + 1332 4.130 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 4.130 * [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)))) 4.131 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.131 * * [simplify]: iters left: 2 (7 enodes) 4.132 * * [simplify]: iters left: 1 (24 enodes) 4.136 * * [simplify]: Extracting #0: cost 1 inf + 0 4.136 * * [simplify]: Extracting #1: cost 6 inf + 0 4.136 * * [simplify]: Extracting #2: cost 15 inf + 0 4.136 * * [simplify]: Extracting #3: cost 19 inf + 728 4.136 * * [simplify]: Extracting #4: cost 3 inf + 11524 4.137 * * [simplify]: Extracting #5: cost 0 inf + 15936 4.137 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 4.137 * [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)))) 4.137 * * * * [progress]: [ 9 / 10 ] simplifiying candidate # 4.138 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.138 * * [simplify]: iters left: 2 (7 enodes) 4.140 * * [simplify]: iters left: 1 (18 enodes) 4.143 * * [simplify]: Extracting #0: cost 1 inf + 0 4.143 * * [simplify]: Extracting #1: cost 3 inf + 0 4.143 * * [simplify]: Extracting #2: cost 7 inf + 0 4.143 * * [simplify]: Extracting #3: cost 2 inf + 326 4.143 * * [simplify]: Extracting #4: cost 0 inf + 1332 4.143 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 4.143 * [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)))) 4.143 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.143 * * [simplify]: iters left: 2 (7 enodes) 4.145 * * [simplify]: iters left: 1 (24 enodes) 4.151 * * [simplify]: Extracting #0: cost 1 inf + 0 4.151 * * [simplify]: Extracting #1: cost 6 inf + 0 4.151 * * [simplify]: Extracting #2: cost 15 inf + 0 4.151 * * [simplify]: Extracting #3: cost 19 inf + 728 4.152 * * [simplify]: Extracting #4: cost 3 inf + 11524 4.152 * * [simplify]: Extracting #5: cost 0 inf + 15936 4.153 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 4.153 * [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)))) 4.153 * * * * [progress]: [ 10 / 10 ] simplifiying candidate # 4.153 * [simplify]: Simplifying (+.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.153 * * [simplify]: iters left: 2 (7 enodes) 4.155 * * [simplify]: iters left: 1 (18 enodes) 4.158 * * [simplify]: Extracting #0: cost 1 inf + 0 4.158 * * [simplify]: Extracting #1: cost 3 inf + 0 4.158 * * [simplify]: Extracting #2: cost 7 inf + 0 4.158 * * [simplify]: Extracting #3: cost 2 inf + 326 4.158 * * [simplify]: Extracting #4: cost 0 inf + 1332 4.158 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.im) (*.p16 y.re x.re)) 4.158 * [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)))) 4.159 * [simplify]: Simplifying (-.p16 (*.p16 x.re y.re) (*.p16 x.im y.im)) 4.159 * * [simplify]: iters left: 2 (7 enodes) 4.161 * * [simplify]: iters left: 1 (24 enodes) 4.166 * * [simplify]: Extracting #0: cost 1 inf + 0 4.166 * * [simplify]: Extracting #1: cost 6 inf + 0 4.166 * * [simplify]: Extracting #2: cost 15 inf + 0 4.166 * * [simplify]: Extracting #3: cost 19 inf + 728 4.167 * * [simplify]: Extracting #4: cost 3 inf + 11524 4.167 * * [simplify]: Extracting #5: cost 0 inf + 15936 4.168 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.re) (*.p16 y.im x.im)) 4.168 * [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)))) 4.168 * * * [progress]: adding candidates to table 4.325 * [progress]: [Phase 3 of 3] Extracting. 4.325 * * [regime]: Finding splitpoints for: (# # # # # #) 4.327 * * * [regime-changes]: Trying 4 branch expressions: (y.im x.im y.re x.re) 4.327 * * * * [regimes]: Trying to branch on y.im from (# # # # # #) 4.456 * * * * [regimes]: Trying to branch on x.im from (# # # # # #) 4.553 * * * * [regimes]: Trying to branch on y.re from (# # # # # #) 4.657 * * * * [regimes]: Trying to branch on x.re from (# # # # # #) 4.788 * * * [regime]: Found split indices: #