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.007 * * * * [points]: Setting MPFR precision to 64 0.009 * * * * [points]: Setting MPFR precision to 320 0.011 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.013 * * * * [points]: Setting MPFR precision to 64 0.016 * * * * [points]: Setting MPFR precision to 320 0.019 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.020 * * * * [points]: Setting MPFR precision to 64 0.023 * * * * [points]: Setting MPFR precision to 320 0.026 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.027 * * * * [points]: Setting MPFR precision to 64 0.033 * * * * [points]: Setting MPFR precision to 320 0.046 * * * * [points]: Computing exacts for 256 points 0.047 * * * * [points]: Setting MPFR precision to 64 0.065 * * * * [points]: Setting MPFR precision to 320 0.082 * * * * [points]: Filtering points with unrepresentable outputs 0.083 * * * * [points]: Sampled 256 points with exact outputs 0.083 * * * [progress]: [2/2] Setting up program. 0.089 * [progress]: [Phase 2 of 3] Improving. 0.089 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.089 * [simplify]: Simplifying (/.p16 (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.089 * * [simplify]: iters left: 3 (11 enodes) 0.091 * * [simplify]: iters left: 2 (29 enodes) 0.096 * * [simplify]: iters left: 1 (57 enodes) 0.106 * * [simplify]: Extracting #0: cost 1 inf + 0 0.106 * * [simplify]: Extracting #1: cost 10 inf + 0 0.106 * * [simplify]: Extracting #2: cost 31 inf + 0 0.106 * * [simplify]: Extracting #3: cost 44 inf + 0 0.106 * * [simplify]: Extracting #4: cost 58 inf + 647 0.107 * * [simplify]: Extracting #5: cost 32 inf + 21623 0.108 * * [simplify]: Extracting #6: cost 1 inf + 63920 0.110 * * [simplify]: Extracting #7: cost 0 inf + 65284 0.112 * [simplify]: Simplified to (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.112 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.118 * * [progress]: iteration 1 / 4 0.118 * * * [progress]: picking best candidate 0.123 * * * * [pick]: Picked # 0.123 * * * [progress]: localizing error 0.303 * * * [progress]: generating rewritten candidates 0.303 * * * * [progress]: [ 1 / 3 ] rewriting at (2) 0.306 * * * * [progress]: [ 2 / 3 ] rewriting at (2 1) 0.310 * * * * [progress]: [ 3 / 3 ] rewriting at (2 2) 0.317 * * * [progress]: generating series expansions 0.317 * * * * [progress]: [ 1 / 3 ] generating series at (2) 0.317 * * * * [progress]: [ 2 / 3 ] generating series at (2 1) 0.317 * * * * [progress]: [ 3 / 3 ] generating series at (2 2) 0.317 * * * [progress]: simplifying candidates 0.317 * * * * [progress]: [ 1 / 7 ] simplifiying candidate # 0.317 * [simplify]: Simplifying (*.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 0.317 * * [simplify]: iters left: 3 (11 enodes) 0.321 * * [simplify]: iters left: 2 (30 enodes) 0.329 * * [simplify]: iters left: 1 (72 enodes) 0.353 * * [simplify]: Extracting #0: cost 1 inf + 0 0.353 * * [simplify]: Extracting #1: cost 19 inf + 0 0.353 * * [simplify]: Extracting #2: cost 59 inf + 0 0.354 * * [simplify]: Extracting #3: cost 46 inf + 4819 0.355 * * [simplify]: Extracting #4: cost 16 inf + 31612 0.358 * * [simplify]: Extracting #5: cost 0 inf + 53590 0.361 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) 0.361 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))))) 0.361 * * * * [progress]: [ 2 / 7 ] simplifiying candidate # 0.362 * [simplify]: Simplifying (neg.p16 (*.p16 x.re y.im)) 0.362 * * [simplify]: iters left: 2 (4 enodes) 0.363 * * [simplify]: iters left: 1 (9 enodes) 0.365 * * [simplify]: Extracting #0: cost 1 inf + 0 0.365 * * [simplify]: Extracting #1: cost 2 inf + 0 0.365 * * [simplify]: Extracting #2: cost 4 inf + 0 0.365 * * [simplify]: Extracting #3: cost 2 inf + 2 0.365 * * [simplify]: Extracting #4: cost 0 inf + 726 0.365 * [simplify]: Simplified to (neg.p16 (*.p16 y.im x.re)) 0.365 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.im y.re) (neg.p16 (*.p16 y.im x.re))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.366 * * * * [progress]: [ 3 / 7 ] simplifiying candidate # 0.366 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 0.366 * * [simplify]: iters left: 3 (9 enodes) 0.370 * * [simplify]: iters left: 2 (37 enodes) 0.376 * * [simplify]: iters left: 1 (90 enodes) 0.403 * * [simplify]: Extracting #0: cost 1 inf + 0 0.403 * * [simplify]: Extracting #1: cost 21 inf + 0 0.403 * * [simplify]: Extracting #2: cost 55 inf + 0 0.404 * * [simplify]: Extracting #3: cost 87 inf + 2654 0.405 * * [simplify]: Extracting #4: cost 68 inf + 28908 0.412 * * [simplify]: Extracting #5: cost 2 inf + 125654 0.419 * * [simplify]: Extracting #6: cost 0 inf + 128020 0.426 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) 0.426 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.426 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 0.426 * * [simplify]: iters left: 2 (7 enodes) 0.429 * * [simplify]: iters left: 1 (18 enodes) 0.432 * * [simplify]: Extracting #0: cost 1 inf + 0 0.432 * * [simplify]: Extracting #1: cost 3 inf + 0 0.432 * * [simplify]: Extracting #2: cost 7 inf + 0 0.433 * * [simplify]: Extracting #3: cost 2 inf + 326 0.433 * * [simplify]: Extracting #4: cost 0 inf + 1332 0.433 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 0.433 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.433 * * * * [progress]: [ 4 / 7 ] simplifiying candidate # 0.433 * * * * [progress]: [ 5 / 7 ] simplifiying candidate # 0.433 * [simplify]: Simplifying (/.p16 (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.433 * * [simplify]: iters left: 3 (11 enodes) 0.437 * * [simplify]: iters left: 2 (29 enodes) 0.445 * * [simplify]: iters left: 1 (57 enodes) 0.461 * * [simplify]: Extracting #0: cost 1 inf + 0 0.462 * * [simplify]: Extracting #1: cost 10 inf + 0 0.462 * * [simplify]: Extracting #2: cost 31 inf + 0 0.462 * * [simplify]: Extracting #3: cost 44 inf + 0 0.462 * * [simplify]: Extracting #4: cost 58 inf + 647 0.463 * * [simplify]: Extracting #5: cost 32 inf + 21623 0.465 * * [simplify]: Extracting #6: cost 1 inf + 63920 0.468 * * [simplify]: Extracting #7: cost 0 inf + 65284 0.471 * [simplify]: Simplified to (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.471 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.472 * * * * [progress]: [ 6 / 7 ] simplifiying candidate # 0.472 * [simplify]: Simplifying (/.p16 (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.472 * * [simplify]: iters left: 3 (11 enodes) 0.475 * * [simplify]: iters left: 2 (29 enodes) 0.483 * * [simplify]: iters left: 1 (57 enodes) 0.496 * * [simplify]: Extracting #0: cost 1 inf + 0 0.496 * * [simplify]: Extracting #1: cost 10 inf + 0 0.496 * * [simplify]: Extracting #2: cost 31 inf + 0 0.496 * * [simplify]: Extracting #3: cost 44 inf + 0 0.496 * * [simplify]: Extracting #4: cost 58 inf + 647 0.497 * * [simplify]: Extracting #5: cost 32 inf + 21623 0.498 * * [simplify]: Extracting #6: cost 1 inf + 63920 0.500 * * [simplify]: Extracting #7: cost 0 inf + 65284 0.502 * [simplify]: Simplified to (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.502 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.502 * * * * [progress]: [ 7 / 7 ] simplifiying candidate # 0.502 * [simplify]: Simplifying (/.p16 (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.502 * * [simplify]: iters left: 3 (11 enodes) 0.505 * * [simplify]: iters left: 2 (29 enodes) 0.510 * * [simplify]: iters left: 1 (57 enodes) 0.522 * * [simplify]: Extracting #0: cost 1 inf + 0 0.522 * * [simplify]: Extracting #1: cost 10 inf + 0 0.522 * * [simplify]: Extracting #2: cost 31 inf + 0 0.522 * * [simplify]: Extracting #3: cost 44 inf + 0 0.522 * * [simplify]: Extracting #4: cost 58 inf + 647 0.523 * * [simplify]: Extracting #5: cost 32 inf + 21623 0.524 * * [simplify]: Extracting #6: cost 1 inf + 63920 0.526 * * [simplify]: Extracting #7: cost 0 inf + 65284 0.528 * [simplify]: Simplified to (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 0.528 * [simplify]: Simplified (2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 0.528 * * * [progress]: adding candidates to table 0.656 * * [progress]: iteration 2 / 4 0.656 * * * [progress]: picking best candidate 0.675 * * * * [pick]: Picked # 0.675 * * * [progress]: localizing error 1.000 * * * [progress]: generating rewritten candidates 1.001 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 1.009 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 1.019 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 2) 1.022 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1) 1.029 * * * [progress]: generating series expansions 1.029 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 1.029 * * * * [progress]: [ 2 / 4 ] generating series at (2) 1.030 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 2) 1.030 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1) 1.030 * * * [progress]: simplifying candidates 1.030 * * * * [progress]: [ 1 / 11 ] simplifiying candidate # 1.030 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 1.030 * * [simplify]: iters left: 3 (9 enodes) 1.032 * * [simplify]: iters left: 2 (26 enodes) 1.035 * * [simplify]: iters left: 1 (53 enodes) 1.044 * * [simplify]: Extracting #0: cost 1 inf + 0 1.044 * * [simplify]: Extracting #1: cost 10 inf + 0 1.044 * * [simplify]: Extracting #2: cost 26 inf + 0 1.044 * * [simplify]: Extracting #3: cost 39 inf + 0 1.044 * * [simplify]: Extracting #4: cost 56 inf + 728 1.045 * * [simplify]: Extracting #5: cost 21 inf + 32616 1.047 * * [simplify]: Extracting #6: cost 1 inf + 61996 1.048 * * [simplify]: Extracting #7: cost 0 inf + 63840 1.050 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 1.050 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.050 * * * * [progress]: [ 2 / 11 ] simplifiying candidate # 1.050 * [simplify]: Simplifying (*.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) 1.050 * * [simplify]: iters left: 4 (11 enodes) 1.053 * * [simplify]: iters left: 3 (38 enodes) 1.059 * * [simplify]: iters left: 2 (102 enodes) 1.094 * * [simplify]: iters left: 1 (321 enodes) 1.603 * * [simplify]: Extracting #0: cost 1 inf + 0 1.603 * * [simplify]: Extracting #1: cost 15 inf + 0 1.604 * * [simplify]: Extracting #2: cost 101 inf + 0 1.605 * * [simplify]: Extracting #3: cost 148 inf + 11121 1.609 * * [simplify]: Extracting #4: cost 30 inf + 145689 1.624 * * [simplify]: Extracting #5: cost 0 inf + 184306 1.639 * * [simplify]: Extracting #6: cost 0 inf + 183986 1.648 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re)))) 1.648 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re))) (*.p16 (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re))))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.648 * * * * [progress]: [ 3 / 11 ] simplifiying candidate # 1.648 * [simplify]: Simplifying (*.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 1.648 * * [simplify]: iters left: 3 (11 enodes) 1.651 * * [simplify]: iters left: 2 (30 enodes) 1.657 * * [simplify]: iters left: 1 (72 enodes) 1.677 * * [simplify]: Extracting #0: cost 1 inf + 0 1.677 * * [simplify]: Extracting #1: cost 19 inf + 0 1.677 * * [simplify]: Extracting #2: cost 59 inf + 0 1.678 * * [simplify]: Extracting #3: cost 46 inf + 4819 1.679 * * [simplify]: Extracting #4: cost 16 inf + 31612 1.682 * * [simplify]: Extracting #5: cost 0 inf + 53590 1.685 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) 1.685 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))))) 1.685 * * * * [progress]: [ 4 / 11 ] simplifiying candidate # 1.685 * * * * [progress]: [ 5 / 11 ] simplifiying candidate # 1.686 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 1.686 * * [simplify]: iters left: 2 (7 enodes) 1.688 * * [simplify]: iters left: 1 (18 enodes) 1.692 * * [simplify]: Extracting #0: cost 1 inf + 0 1.692 * * [simplify]: Extracting #1: cost 3 inf + 0 1.693 * * [simplify]: Extracting #2: cost 7 inf + 0 1.693 * * [simplify]: Extracting #3: cost 2 inf + 326 1.693 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.693 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 1.693 * [simplify]: Simplified (2 1 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.693 * [simplify]: Simplifying (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 1.693 * * [simplify]: iters left: 2 (7 enodes) 1.696 * * [simplify]: iters left: 1 (24 enodes) 1.702 * * [simplify]: Extracting #0: cost 1 inf + 0 1.702 * * [simplify]: Extracting #1: cost 6 inf + 0 1.702 * * [simplify]: Extracting #2: cost 15 inf + 0 1.702 * * [simplify]: Extracting #3: cost 19 inf + 728 1.703 * * [simplify]: Extracting #4: cost 3 inf + 11524 1.703 * * [simplify]: Extracting #5: cost 0 inf + 15936 1.704 * [simplify]: Simplified to (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) 1.704 * [simplify]: Simplified (2 1 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.704 * * * * [progress]: [ 6 / 11 ] simplifiying candidate # 1.704 * [simplify]: Simplifying (neg.p16 (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 1.705 * * [simplify]: iters left: 3 (5 enodes) 1.706 * * [simplify]: iters left: 2 (14 enodes) 1.710 * * [simplify]: iters left: 1 (21 enodes) 1.716 * * [simplify]: Extracting #0: cost 1 inf + 0 1.716 * * [simplify]: Extracting #1: cost 2 inf + 0 1.716 * * [simplify]: Extracting #2: cost 9 inf + 0 1.716 * * [simplify]: Extracting #3: cost 6 inf + 323 1.716 * * [simplify]: Extracting #4: cost 0 inf + 3614 1.717 * [simplify]: Simplified to (neg.p16 (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re))) 1.717 * [simplify]: Simplified (2 1 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (neg.p16 (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re)))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.717 * * * * [progress]: [ 7 / 11 ] simplifiying candidate # 1.717 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re))) (*.p16 (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) 1.717 * * [simplify]: iters left: 4 (11 enodes) 1.723 * * [simplify]: iters left: 3 (47 enodes) 1.744 * * [simplify]: iters left: 2 (143 enodes) 1.791 * * [simplify]: Extracting #0: cost 1 inf + 0 1.791 * * [simplify]: Extracting #1: cost 25 inf + 0 1.791 * * [simplify]: Extracting #2: cost 73 inf + 0 1.791 * * [simplify]: Extracting #3: cost 137 inf + 2332 1.793 * * [simplify]: Extracting #4: cost 130 inf + 54538 1.799 * * [simplify]: Extracting #5: cost 25 inf + 226634 1.813 * * [simplify]: Extracting #6: cost 2 inf + 276060 1.825 * * [simplify]: Extracting #7: cost 0 inf + 281626 1.837 * [simplify]: Simplified to (*.p16 (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re))) (-.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re)))) 1.837 * [simplify]: Simplified (2 1 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (/.p16 (*.p16 (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re))) (-.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 y.im x.re) (*.p16 y.im x.re)))) (+.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.837 * [simplify]: Simplifying (+.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 1.837 * * [simplify]: iters left: 3 (9 enodes) 1.839 * * [simplify]: iters left: 2 (28 enodes) 1.843 * * [simplify]: iters left: 1 (42 enodes) 1.849 * * [simplify]: Extracting #0: cost 1 inf + 0 1.849 * * [simplify]: Extracting #1: cost 3 inf + 0 1.849 * * [simplify]: Extracting #2: cost 17 inf + 0 1.849 * * [simplify]: Extracting #3: cost 11 inf + 967 1.849 * * [simplify]: Extracting #4: cost 0 inf + 7108 1.849 * [simplify]: Simplified to (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 1.849 * [simplify]: Simplified (2 1 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re))) (*.p16 (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) (+.p16 (*.p16 (*.p16 y.re x.im) (*.p16 y.re x.im)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.849 * * * * [progress]: [ 8 / 11 ] simplifiying candidate # 1.850 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 1.850 * * [simplify]: iters left: 3 (9 enodes) 1.852 * * [simplify]: iters left: 2 (37 enodes) 1.859 * * [simplify]: iters left: 1 (90 enodes) 1.887 * * [simplify]: Extracting #0: cost 1 inf + 0 1.887 * * [simplify]: Extracting #1: cost 21 inf + 0 1.888 * * [simplify]: Extracting #2: cost 55 inf + 0 1.888 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.890 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.898 * * [simplify]: Extracting #5: cost 2 inf + 125654 1.907 * * [simplify]: Extracting #6: cost 0 inf + 128020 1.915 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) 1.916 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.916 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 1.916 * * [simplify]: iters left: 2 (7 enodes) 1.919 * * [simplify]: iters left: 1 (18 enodes) 1.923 * * [simplify]: Extracting #0: cost 1 inf + 0 1.923 * * [simplify]: Extracting #1: cost 3 inf + 0 1.923 * * [simplify]: Extracting #2: cost 7 inf + 0 1.924 * * [simplify]: Extracting #3: cost 2 inf + 326 1.924 * * [simplify]: Extracting #4: cost 0 inf + 1332 1.924 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 1.924 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 1.924 * * * * [progress]: [ 9 / 11 ] simplifiying candidate # 1.924 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 1.924 * * [simplify]: iters left: 3 (9 enodes) 1.928 * * [simplify]: iters left: 2 (37 enodes) 1.942 * * [simplify]: iters left: 1 (90 enodes) 1.980 * * [simplify]: Extracting #0: cost 1 inf + 0 1.980 * * [simplify]: Extracting #1: cost 21 inf + 0 1.980 * * [simplify]: Extracting #2: cost 55 inf + 0 1.981 * * [simplify]: Extracting #3: cost 87 inf + 2654 1.983 * * [simplify]: Extracting #4: cost 68 inf + 28908 1.991 * * [simplify]: Extracting #5: cost 2 inf + 125654 2.000 * * [simplify]: Extracting #6: cost 0 inf + 128020 2.008 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) 2.008 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.009 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 2.009 * * [simplify]: iters left: 2 (7 enodes) 2.012 * * [simplify]: iters left: 1 (18 enodes) 2.016 * * [simplify]: Extracting #0: cost 1 inf + 0 2.016 * * [simplify]: Extracting #1: cost 3 inf + 0 2.016 * * [simplify]: Extracting #2: cost 7 inf + 0 2.016 * * [simplify]: Extracting #3: cost 2 inf + 326 2.016 * * [simplify]: Extracting #4: cost 0 inf + 1332 2.017 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 2.017 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.017 * * * * [progress]: [ 10 / 11 ] simplifiying candidate # 2.017 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 2.017 * * [simplify]: iters left: 3 (9 enodes) 2.021 * * [simplify]: iters left: 2 (37 enodes) 2.034 * * [simplify]: iters left: 1 (90 enodes) 2.075 * * [simplify]: Extracting #0: cost 1 inf + 0 2.075 * * [simplify]: Extracting #1: cost 21 inf + 0 2.075 * * [simplify]: Extracting #2: cost 55 inf + 0 2.076 * * [simplify]: Extracting #3: cost 87 inf + 2654 2.078 * * [simplify]: Extracting #4: cost 68 inf + 28908 2.085 * * [simplify]: Extracting #5: cost 2 inf + 125654 2.092 * * [simplify]: Extracting #6: cost 0 inf + 128020 2.100 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) 2.100 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.101 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 2.101 * * [simplify]: iters left: 2 (7 enodes) 2.103 * * [simplify]: iters left: 1 (18 enodes) 2.107 * * [simplify]: Extracting #0: cost 1 inf + 0 2.107 * * [simplify]: Extracting #1: cost 3 inf + 0 2.108 * * [simplify]: Extracting #2: cost 7 inf + 0 2.108 * * [simplify]: Extracting #3: cost 2 inf + 326 2.108 * * [simplify]: Extracting #4: cost 0 inf + 1332 2.108 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 2.108 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.108 * * * * [progress]: [ 11 / 11 ] simplifiying candidate # 2.108 * [simplify]: Simplifying (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) 2.108 * * [simplify]: iters left: 3 (9 enodes) 2.112 * * [simplify]: iters left: 2 (37 enodes) 2.123 * * [simplify]: iters left: 1 (90 enodes) 2.157 * * [simplify]: Extracting #0: cost 1 inf + 0 2.157 * * [simplify]: Extracting #1: cost 21 inf + 0 2.158 * * [simplify]: Extracting #2: cost 55 inf + 0 2.158 * * [simplify]: Extracting #3: cost 87 inf + 2654 2.160 * * [simplify]: Extracting #4: cost 68 inf + 28908 2.167 * * [simplify]: Extracting #5: cost 2 inf + 125654 2.174 * * [simplify]: Extracting #6: cost 0 inf + 128020 2.182 * [simplify]: Simplified to (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) 2.182 * [simplify]: Simplified (2 1 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 x.re y.im)) (+.p16 (*.p16 y.re x.im) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.182 * [simplify]: Simplifying (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) 2.183 * * [simplify]: iters left: 2 (7 enodes) 2.185 * * [simplify]: iters left: 1 (18 enodes) 2.189 * * [simplify]: Extracting #0: cost 1 inf + 0 2.189 * * [simplify]: Extracting #1: cost 3 inf + 0 2.189 * * [simplify]: Extracting #2: cost 7 inf + 0 2.189 * * [simplify]: Extracting #3: cost 2 inf + 326 2.189 * * [simplify]: Extracting #4: cost 0 inf + 1332 2.190 * [simplify]: Simplified to (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) 2.190 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 2.190 * * * [progress]: adding candidates to table 2.406 * * [progress]: iteration 3 / 4 2.406 * * * [progress]: picking best candidate 2.458 * * * * [pick]: Picked # 2.458 * * * [progress]: localizing error 2.742 * * * [progress]: generating rewritten candidates 2.742 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1 2) 2.746 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 2.753 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 2 1) 2.759 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1) 2.765 * * * [progress]: generating series expansions 2.765 * * * * [progress]: [ 1 / 4 ] generating series at (2 1 2) 2.765 * * * * [progress]: [ 2 / 4 ] generating series at (2) 2.765 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 2 1) 2.765 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1) 2.765 * * * [progress]: simplifying candidates 2.765 * * * * [progress]: [ 1 / 9 ] simplifiying candidate # 2.765 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) 2.766 * * [simplify]: iters left: 4 (11 enodes) 2.770 * * [simplify]: iters left: 3 (39 enodes) 2.782 * * [simplify]: iters left: 2 (95 enodes) 2.812 * * [simplify]: iters left: 1 (307 enodes) 3.019 * * [simplify]: Extracting #0: cost 1 inf + 0 3.019 * * [simplify]: Extracting #1: cost 35 inf + 0 3.019 * * [simplify]: Extracting #2: cost 175 inf + 0 3.021 * * [simplify]: Extracting #3: cost 263 inf + 8316 3.032 * * [simplify]: Extracting #4: cost 267 inf + 204297 3.053 * * [simplify]: Extracting #5: cost 103 inf + 570590 3.093 * * [simplify]: Extracting #6: cost 0 inf + 801211 3.144 * [simplify]: Simplified to (/.p16 (real->posit16 1.0) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.144 * [simplify]: Simplified (2 1 2 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (*.p16 (/.p16 (real->posit16 1.0) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 3.144 * * * * [progress]: [ 2 / 9 ] simplifiying candidate # 3.144 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 3.145 * * [simplify]: iters left: 3 (11 enodes) 3.147 * * [simplify]: iters left: 2 (29 enodes) 3.151 * * [simplify]: iters left: 1 (57 enodes) 3.168 * * [simplify]: Extracting #0: cost 1 inf + 0 3.168 * * [simplify]: Extracting #1: cost 11 inf + 0 3.168 * * [simplify]: Extracting #2: cost 30 inf + 0 3.168 * * [simplify]: Extracting #3: cost 43 inf + 0 3.169 * * [simplify]: Extracting #4: cost 55 inf + 1610 3.170 * * [simplify]: Extracting #5: cost 40 inf + 12524 3.172 * * [simplify]: Extracting #6: cost 15 inf + 41834 3.175 * * [simplify]: Extracting #7: cost 1 inf + 67280 3.179 * * [simplify]: Extracting #8: cost 0 inf + 70404 3.183 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.183 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))))) 3.183 * * * * [progress]: [ 3 / 9 ] simplifiying candidate # 3.184 * [simplify]: Simplifying (*.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)))) 3.184 * * [simplify]: iters left: 4 (13 enodes) 3.189 * * [simplify]: iters left: 3 (34 enodes) 3.201 * * [simplify]: iters left: 2 (83 enodes) 3.230 * * [simplify]: iters left: 1 (249 enodes) 3.361 * * [simplify]: Extracting #0: cost 1 inf + 0 3.361 * * [simplify]: Extracting #1: cost 49 inf + 0 3.361 * * [simplify]: Extracting #2: cost 210 inf + 0 3.363 * * [simplify]: Extracting #3: cost 256 inf + 52219 3.375 * * [simplify]: Extracting #4: cost 124 inf + 389108 3.404 * * [simplify]: Extracting #5: cost 41 inf + 579214 3.434 * * [simplify]: Extracting #6: cost 2 inf + 618493 3.471 * * [simplify]: Extracting #7: cost 0 inf + 625621 3.516 * [simplify]: Simplified to (*.p16 (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) 3.516 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (*.p16 (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))))) 3.516 * * * * [progress]: [ 4 / 9 ] simplifiying candidate # 3.516 * * * * [progress]: [ 5 / 9 ] simplifiying candidate # 3.517 * * * * [progress]: [ 6 / 9 ] simplifiying candidate # 3.517 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 3.517 * * [simplify]: iters left: 3 (9 enodes) 3.520 * * [simplify]: iters left: 2 (26 enodes) 3.528 * * [simplify]: iters left: 1 (53 enodes) 3.547 * * [simplify]: Extracting #0: cost 1 inf + 0 3.547 * * [simplify]: Extracting #1: cost 10 inf + 0 3.548 * * [simplify]: Extracting #2: cost 26 inf + 0 3.548 * * [simplify]: Extracting #3: cost 39 inf + 0 3.548 * * [simplify]: Extracting #4: cost 56 inf + 728 3.550 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.553 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.555 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.557 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.557 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 3.557 * * * * [progress]: [ 7 / 9 ] simplifiying candidate # 3.557 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 3.557 * * [simplify]: iters left: 3 (9 enodes) 3.559 * * [simplify]: iters left: 2 (26 enodes) 3.563 * * [simplify]: iters left: 1 (53 enodes) 3.573 * * [simplify]: Extracting #0: cost 1 inf + 0 3.573 * * [simplify]: Extracting #1: cost 10 inf + 0 3.573 * * [simplify]: Extracting #2: cost 26 inf + 0 3.573 * * [simplify]: Extracting #3: cost 39 inf + 0 3.574 * * [simplify]: Extracting #4: cost 56 inf + 728 3.574 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.576 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.578 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.579 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.579 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 3.580 * * * * [progress]: [ 8 / 9 ] simplifiying candidate # 3.580 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 3.580 * * [simplify]: iters left: 3 (9 enodes) 3.582 * * [simplify]: iters left: 2 (26 enodes) 3.586 * * [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.610 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.610 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 3.610 * * * * [progress]: [ 9 / 9 ] simplifiying candidate # 3.610 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 3.610 * * [simplify]: iters left: 3 (9 enodes) 3.612 * * [simplify]: iters left: 2 (26 enodes) 3.616 * * [simplify]: iters left: 1 (53 enodes) 3.625 * * [simplify]: Extracting #0: cost 1 inf + 0 3.625 * * [simplify]: Extracting #1: cost 10 inf + 0 3.625 * * [simplify]: Extracting #2: cost 26 inf + 0 3.625 * * [simplify]: Extracting #3: cost 39 inf + 0 3.625 * * [simplify]: Extracting #4: cost 56 inf + 728 3.626 * * [simplify]: Extracting #5: cost 21 inf + 32616 3.628 * * [simplify]: Extracting #6: cost 1 inf + 61996 3.629 * * [simplify]: Extracting #7: cost 0 inf + 63840 3.632 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 3.632 * [simplify]: Simplified (2 1 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (/.p16 (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)))) 3.633 * * * [progress]: adding candidates to table 3.768 * * [progress]: iteration 4 / 4 3.768 * * * [progress]: picking best candidate 3.829 * * * * [pick]: Picked # 3.829 * * * [progress]: localizing error 4.103 * * * [progress]: generating rewritten candidates 4.103 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2) 4.106 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 2) 4.109 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1) 4.112 * * * * [progress]: [ 4 / 4 ] rewriting at (2) 4.116 * * * [progress]: generating series expansions 4.116 * * * * [progress]: [ 1 / 4 ] generating series at (2 2) 4.116 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 2) 4.116 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1) 4.116 * * * * [progress]: [ 4 / 4 ] generating series at (2) 4.116 * * * [progress]: simplifying candidates 4.116 * * * * [progress]: [ 1 / 10 ] simplifiying candidate # 4.116 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im)))) 4.116 * * [simplify]: iters left: 4 (13 enodes) 4.119 * * [simplify]: iters left: 3 (42 enodes) 4.126 * * [simplify]: iters left: 2 (97 enodes) 4.145 * * [simplify]: iters left: 1 (311 enodes) 4.333 * * [simplify]: Extracting #0: cost 1 inf + 0 4.334 * * [simplify]: Extracting #1: cost 39 inf + 0 4.334 * * [simplify]: Extracting #2: cost 188 inf + 0 4.336 * * [simplify]: Extracting #3: cost 261 inf + 28640 4.354 * * [simplify]: Extracting #4: cost 218 inf + 382714 4.392 * * [simplify]: Extracting #5: cost 76 inf + 758198 4.440 * * [simplify]: Extracting #6: cost 0 inf + 874131 4.491 * * [simplify]: Extracting #7: cost 0 inf + 866131 4.545 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)))) 4.545 * [simplify]: Simplified (2 2 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (*.p16 (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im)))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))) 4.545 * * * * [progress]: [ 2 / 10 ] simplifiying candidate # 4.545 * * * * [progress]: [ 3 / 10 ] simplifiying candidate # 4.545 * * * * [progress]: [ 4 / 10 ] simplifiying candidate # 4.545 * [simplify]: Simplifying (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 (*.p16 x.im y.re) (*.p16 x.im y.re)) (*.p16 (*.p16 x.re y.im) (*.p16 x.re y.im))))) 4.546 * * [simplify]: iters left: 5 (16 enodes) 4.549 * * [simplify]: iters left: 4 (51 enodes) 4.559 * * [simplify]: iters left: 3 (133 enodes) 4.613 * * [simplify]: Extracting #0: cost 1 inf + 0 4.613 * * [simplify]: Extracting #1: cost 30 inf + 0 4.613 * * [simplify]: Extracting #2: cost 114 inf + 0 4.613 * * [simplify]: Extracting #3: cost 145 inf + 1289 4.614 * * [simplify]: Extracting #4: cost 173 inf + 9762 4.616 * * [simplify]: Extracting #5: cost 138 inf + 65959 4.622 * * [simplify]: Extracting #6: cost 50 inf + 218736 4.634 * * [simplify]: Extracting #7: cost 1 inf + 332727 4.655 * * [simplify]: Extracting #8: cost 0 inf + 336011 4.676 * [simplify]: Simplified to (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) 4.677 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (*.p16 (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re)) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)))) 4.677 * * * * [progress]: [ 5 / 10 ] simplifiying candidate # 4.677 * [simplify]: Simplifying (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im))) 4.677 * * [simplify]: iters left: 4 (12 enodes) 4.680 * * [simplify]: iters left: 3 (28 enodes) 4.685 * * [simplify]: iters left: 2 (40 enodes) 4.692 * * [simplify]: iters left: 1 (80 enodes) 4.710 * * [simplify]: Extracting #0: cost 1 inf + 0 4.710 * * [simplify]: Extracting #1: cost 6 inf + 0 4.710 * * [simplify]: Extracting #2: cost 27 inf + 0 4.710 * * [simplify]: Extracting #3: cost 62 inf + 1 4.710 * * [simplify]: Extracting #4: cost 53 inf + 1933 4.711 * * [simplify]: Extracting #5: cost 29 inf + 19110 4.712 * * [simplify]: Extracting #6: cost 0 inf + 56519 4.714 * [simplify]: Simplified to (/.p16 (real->posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) 4.714 * [simplify]: Simplified (2 1) to (λ (x.re x.im y.re y.im) (*.p16 (/.p16 (real->posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)))) 4.714 * * * * [progress]: [ 6 / 10 ] simplifiying candidate # 4.714 * [simplify]: Simplifying (*.p16 (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 4.714 * * [simplify]: iters left: 4 (13 enodes) 4.717 * * [simplify]: iters left: 3 (40 enodes) 4.730 * * [simplify]: iters left: 2 (103 enodes) 4.770 * * [simplify]: iters left: 1 (295 enodes) 4.898 * * [simplify]: Extracting #0: cost 1 inf + 0 4.899 * * [simplify]: Extracting #1: cost 35 inf + 0 4.899 * * [simplify]: Extracting #2: cost 195 inf + 0 4.904 * * [simplify]: Extracting #3: cost 318 inf + 73667 4.921 * * [simplify]: Extracting #4: cost 137 inf + 503289 4.969 * * [simplify]: Extracting #5: cost 44 inf + 752110 5.003 * * [simplify]: Extracting #6: cost 0 inf + 818531 5.043 * * [simplify]: Extracting #7: cost 0 inf + 817411 5.079 * [simplify]: Simplified to (*.p16 (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))) 5.079 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (*.p16 (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) (+.p16 (*.p16 y.im x.re) (*.p16 y.re x.im))))) 5.079 * * * * [progress]: [ 7 / 10 ] simplifiying candidate # 5.079 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 5.079 * * [simplify]: iters left: 3 (11 enodes) 5.083 * * [simplify]: iters left: 2 (29 enodes) 5.089 * * [simplify]: iters left: 1 (57 enodes) 5.099 * * [simplify]: Extracting #0: cost 1 inf + 0 5.099 * * [simplify]: Extracting #1: cost 11 inf + 0 5.099 * * [simplify]: Extracting #2: cost 30 inf + 0 5.099 * * [simplify]: Extracting #3: cost 43 inf + 0 5.099 * * [simplify]: Extracting #4: cost 55 inf + 1610 5.100 * * [simplify]: Extracting #5: cost 40 inf + 12524 5.101 * * [simplify]: Extracting #6: cost 15 inf + 41834 5.102 * * [simplify]: Extracting #7: cost 1 inf + 67280 5.104 * * [simplify]: Extracting #8: cost 0 inf + 70404 5.106 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 5.106 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))))) 5.107 * * * * [progress]: [ 8 / 10 ] simplifiying candidate # 5.107 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 5.107 * * [simplify]: iters left: 3 (11 enodes) 5.109 * * [simplify]: iters left: 2 (29 enodes) 5.114 * * [simplify]: iters left: 1 (57 enodes) 5.135 * * [simplify]: Extracting #0: cost 1 inf + 0 5.135 * * [simplify]: Extracting #1: cost 11 inf + 0 5.135 * * [simplify]: Extracting #2: cost 30 inf + 0 5.135 * * [simplify]: Extracting #3: cost 43 inf + 0 5.136 * * [simplify]: Extracting #4: cost 55 inf + 1610 5.136 * * [simplify]: Extracting #5: cost 40 inf + 12524 5.138 * * [simplify]: Extracting #6: cost 15 inf + 41834 5.141 * * [simplify]: Extracting #7: cost 1 inf + 67280 5.144 * * [simplify]: Extracting #8: cost 0 inf + 70404 5.148 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 5.148 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))))) 5.148 * * * * [progress]: [ 9 / 10 ] simplifiying candidate # 5.148 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 5.149 * * [simplify]: iters left: 3 (11 enodes) 5.153 * * [simplify]: iters left: 2 (29 enodes) 5.162 * * [simplify]: iters left: 1 (57 enodes) 5.176 * * [simplify]: Extracting #0: cost 1 inf + 0 5.176 * * [simplify]: Extracting #1: cost 11 inf + 0 5.176 * * [simplify]: Extracting #2: cost 30 inf + 0 5.176 * * [simplify]: Extracting #3: cost 43 inf + 0 5.177 * * [simplify]: Extracting #4: cost 55 inf + 1610 5.177 * * [simplify]: Extracting #5: cost 40 inf + 12524 5.178 * * [simplify]: Extracting #6: cost 15 inf + 41834 5.180 * * [simplify]: Extracting #7: cost 1 inf + 67280 5.182 * * [simplify]: Extracting #8: cost 0 inf + 70404 5.184 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 5.185 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))))) 5.185 * * * * [progress]: [ 10 / 10 ] simplifiying candidate # 5.185 * [simplify]: Simplifying (/.p16 (+.p16 (*.p16 y.re y.re) (*.p16 y.im y.im)) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) 5.185 * * [simplify]: iters left: 3 (11 enodes) 5.187 * * [simplify]: iters left: 2 (29 enodes) 5.192 * * [simplify]: iters left: 1 (57 enodes) 5.202 * * [simplify]: Extracting #0: cost 1 inf + 0 5.202 * * [simplify]: Extracting #1: cost 11 inf + 0 5.202 * * [simplify]: Extracting #2: cost 30 inf + 0 5.202 * * [simplify]: Extracting #3: cost 43 inf + 0 5.202 * * [simplify]: Extracting #4: cost 55 inf + 1610 5.203 * * [simplify]: Extracting #5: cost 40 inf + 12524 5.204 * * [simplify]: Extracting #6: cost 15 inf + 41834 5.205 * * [simplify]: Extracting #7: cost 1 inf + 67280 5.207 * * [simplify]: Extracting #8: cost 0 inf + 70404 5.209 * [simplify]: Simplified to (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))) 5.209 * [simplify]: Simplified (2 2) to (λ (x.re x.im y.re y.im) (/.p16 (/.p16 (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im)) (+.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))) (/.p16 (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re)) (-.p16 (*.p16 y.re x.im) (*.p16 y.im x.re))))) 5.210 * * * [progress]: adding candidates to table 5.348 * [progress]: [Phase 3 of 3] Extracting. 5.348 * * [regime]: Finding splitpoints for: (#posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))> # # # # # # # # # #) 5.355 * * * [regime-changes]: Trying 4 branch expressions: (y.im x.re y.re x.im) 5.355 * * * * [regimes]: Trying to branch on y.im from (#posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))> # # # # # # # # # #) 5.513 * * * * [regimes]: Trying to branch on x.re from (#posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))> # # # # # # # # # #) 5.709 * * * * [regimes]: Trying to branch on y.re from (#posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))> # # # # # # # # # #) 5.846 * * * * [regimes]: Trying to branch on x.im from (#posit16 1.0) (+.p16 (*.p16 y.im y.im) (*.p16 y.re y.re))) (-.p16 (*.p16 x.im y.re) (*.p16 x.re y.im))))> # # # # # # # # # #) 6.045 * * * [regime]: Found split indices: #