127.370 * [progress]: [Phase 1 of 3] Setting up. 0.003 * * * [progress]: [1/2] Preparing points 0.003 * * * * [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.007 * * * * [points]: Setting MPFR precision to 64 0.008 * * * * [points]: Setting MPFR precision to 320 0.010 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.012 * * * * [points]: Setting MPFR precision to 64 0.015 * * * * [points]: Setting MPFR precision to 320 0.018 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.021 * * * * [points]: Setting MPFR precision to 64 0.026 * * * * [points]: Setting MPFR precision to 320 0.031 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.033 * * * * [points]: Setting MPFR precision to 64 0.042 * * * * [points]: Setting MPFR precision to 320 0.061 * * * * [points]: Computing exacts for 256 points 0.064 * * * * [points]: Setting MPFR precision to 64 0.088 * * * * [points]: Setting MPFR precision to 320 0.113 * * * * [points]: Filtering points with unrepresentable outputs 0.114 * * * * [points]: Sampled 256 points with exact outputs 0.114 * * * [progress]: [2/2] Setting up program. 0.124 * [progress]: [Phase 2 of 3] Improving. 0.124 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.124 * [simplify]: Simplifying: (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) 0.124 * * [simplify]: iteration 1: (11 enodes) 0.128 * * [simplify]: iteration 2: (20 enodes) 0.135 * * [simplify]: iteration 3: (49 enodes) 0.155 * * [simplify]: iteration 4: (107 enodes) 0.196 * * [simplify]: iteration 5: (220 enodes) 0.323 * * [simplify]: iteration 6: (586 enodes) 0.593 * * [simplify]: iteration 7: (1308 enodes) 1.926 * * [simplify]: Extracting #0: cost 1 inf + 0 1.926 * * [simplify]: Extracting #1: cost 50 inf + 0 1.928 * * [simplify]: Extracting #2: cost 178 inf + 1 1.933 * * [simplify]: Extracting #3: cost 165 inf + 9320 1.947 * * [simplify]: Extracting #4: cost 58 inf + 101527 1.963 * * [simplify]: Extracting #5: cost 1 inf + 155760 1.979 * * [simplify]: Extracting #6: cost 0 inf + 147002 1.995 * * [simplify]: Extracting #7: cost 0 inf + 146642 2.023 * [simplify]: Simplified to: (*.p16 x.im (+.p16 (*.p16 x.re x.re) (+.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (*.p16 x.re x.re)))) 2.044 * * [progress]: iteration 1 / 4 2.044 * * * [progress]: picking best candidate 2.062 * * * * [pick]: Picked # 2.062 * * * [progress]: localizing error 2.352 * * * [progress]: generating rewritten candidates 2.352 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1 1) 2.356 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 2.360 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2) 2.363 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1) 2.367 * * * [progress]: generating series expansions 2.367 * * * * [progress]: [ 1 / 4 ] generating series at (2 1 1) 2.367 * * * * [progress]: [ 2 / 4 ] generating series at (2) 2.367 * * * * [progress]: [ 3 / 4 ] generating series at (2 2) 2.367 * * * * [progress]: [ 4 / 4 ] generating series at (2 1) 2.367 * * * [progress]: simplifying candidates 2.367 * * * * [progress]: [ 1 / 68 ] simplifiying candidate # 2.367 * * * * [progress]: [ 2 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.367 * * * * [progress]: [ 3 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 4 / 68 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 5 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 6 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 7 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 8 / 68 ] simplifiying candidate # 2.368 * * * * [progress]: [ 9 / 68 ] simplifiying candidate # 2.368 * * * * [progress]: [ 10 / 68 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 11 / 68 ] simplifiying candidate #posit16 (posit16->quire16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 12 / 68 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) (*.p16 x.im x.im) (real->posit16 1.0))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 13 / 68 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 14 / 68 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 15 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 16 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 17 / 68 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 18 / 68 ] simplifiying candidate #posit16 1.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 19 / 68 ] simplifiying candidate #posit16 1.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 20 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.368 * * * * [progress]: [ 21 / 68 ] simplifiying candidate #posit16 0.0)))> 2.368 * * * * [progress]: [ 22 / 68 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.368 * * * * [progress]: [ 23 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.368 * * * * [progress]: [ 24 / 68 ] simplifiying candidate #posit16 0.0)))> 2.368 * * * * [progress]: [ 25 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.368 * * * * [progress]: [ 26 / 68 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 27 / 68 ] simplifiying candidate #posit16 (posit16->quire16 (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))))> 2.369 * * * * [progress]: [ 28 / 68 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (real->posit16 1.0))))> 2.369 * * * * [progress]: [ 29 / 68 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.369 * * * * [progress]: [ 30 / 68 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 31 / 68 ] simplifiying candidate #posit16 0.0)))> 2.369 * * * * [progress]: [ 32 / 68 ] simplifiying candidate #posit16 0.0)))> 2.369 * * * * [progress]: [ 33 / 68 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 34 / 68 ] simplifiying candidate #posit16 1.0)))> 2.369 * * * * [progress]: [ 35 / 68 ] simplifiying candidate #posit16 1.0)))> 2.369 * * * * [progress]: [ 36 / 68 ] simplifiying candidate # 2.369 * * * * [progress]: [ 37 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 38 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 39 / 68 ] simplifiying candidate #posit16 1.0) x.re))))> 2.369 * * * * [progress]: [ 40 / 68 ] simplifiying candidate #posit16 1.0))))> 2.369 * * * * [progress]: [ 41 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 42 / 68 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))))> 2.369 * * * * [progress]: [ 43 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.369 * * * * [progress]: [ 44 / 68 ] simplifiying candidate #posit16 0.0))))> 2.370 * * * * [progress]: [ 45 / 68 ] simplifiying candidate #posit16 0.0))))> 2.370 * * * * [progress]: [ 46 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 2.370 * * * * [progress]: [ 47 / 68 ] simplifiying candidate #posit16 1.0))))> 2.370 * * * * [progress]: [ 48 / 68 ] simplifiying candidate #posit16 1.0))))> 2.370 * * * * [progress]: [ 49 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 50 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 51 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 52 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 53 / 68 ] simplifiying candidate #posit16 1.0) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 54 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 55 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 56 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 57 / 68 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im))) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 58 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 59 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 60 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 61 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 62 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 63 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 2.370 * * * * [progress]: [ 64 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 65 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 66 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 67 / 68 ] simplifiying candidate # 2.370 * * * * [progress]: [ 68 / 68 ] simplifiying candidate # 2.371 * [simplify]: Simplifying: (+.p16 x.re x.im) (-.p16 x.re x.im) (-.p16 (*.p16 x.re x.re) (real->posit16 0.0)) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (-.p16 (real->posit16 0.0) (*.p16 x.im x.im)) (+.p16 (real->posit16 0.0) (*.p16 x.im x.im)) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (neg.p16 (*.p16 x.im x.im)) (-.p16 (*.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 (*.p16 x.im x.im) (*.p16 x.im x.im))) (+.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (real->posit16 1.0) (posit16->quire16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) (*.p16 x.im x.im) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (real->posit16 0.0)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (real->posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (-.p16 (real->posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (*.p16 (real->posit16 1.0) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (real->posit16 1.0) x.im) (*.p16 (-.p16 (*.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 (*.p16 x.im x.im) (*.p16 x.im x.im))) x.im) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) (+.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)) 2.372 * * [simplify]: iteration 1: (41 enodes) 2.388 * * [simplify]: iteration 2: (74 enodes) 2.403 * * [simplify]: iteration 3: (204 enodes) 2.638 * * [simplify]: iteration 4: (923 enodes) 16.866 * * [simplify]: Extracting #0: cost 26 inf + 0 16.871 * * [simplify]: Extracting #1: cost 1436 inf + 323 16.890 * * [simplify]: Extracting #2: cost 2370 inf + 79185 16.977 * * [simplify]: Extracting #3: cost 568 inf + 1117133 17.111 * * [simplify]: Extracting #4: cost 33 inf + 1524432 17.216 * * [simplify]: Extracting #5: cost 0 inf + 1541128 17.354 * [simplify]: Simplified to: (+.p16 x.im x.re) (-.p16 x.re x.im) (*.p16 x.re x.re) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (neg.p16 (*.p16 x.im x.im)) (*.p16 x.im x.im) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (neg.p16 (*.p16 x.im x.im)) (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 (*.p16 x.re x.re) (neg.p16 (*.p16 x.im x.im)))) (+.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) (*.p16 x.im x.im) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re)) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (neg.p16 (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re))) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))) (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re)) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re)) (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re)) x.re (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.im) (*.p16 x.re x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im (*.p16 (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 (*.p16 x.re x.re) (neg.p16 (*.p16 x.im x.im)))) x.im) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) 17.358 * * * [progress]: adding candidates to table 19.182 * * [progress]: iteration 2 / 4 19.182 * * * [progress]: picking best candidate 19.249 * * * * [pick]: Picked #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.250 * * * [progress]: localizing error 19.527 * * * [progress]: generating rewritten candidates 19.527 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 19.527 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 19.532 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 2) 19.536 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1 1 2) 19.548 * * * [progress]: generating series expansions 19.548 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 19.548 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 19.548 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 2) 19.548 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1 1 2) 19.548 * * * [progress]: simplifying candidates 19.548 * * * * [progress]: [ 1 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 2 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.im (-.p16 x.re x.im))) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 3 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (real->posit16 0.0)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 4 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 5 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 (-.p16 x.re x.im) x.im) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 6 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.548 * * * * [progress]: [ 7 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (real->posit16 0.0) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 8 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (*.p16 (real->posit16 0.0) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 9 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 10 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 11 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 x.im (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re))) (+.p16 x.re x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 12 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 13 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 14 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 15 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 16 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 17 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 18 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (-.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 19 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 20 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 21 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 22 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 23 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 19.549 * * * * [progress]: [ 24 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.re)))> 19.549 * * * * [progress]: [ 25 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 26 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 19.549 * * * * [progress]: [ 27 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 19.549 * * * * [progress]: [ 28 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 19.550 * * * * [progress]: [ 29 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 19.550 * * * * [progress]: [ 30 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (quire16->posit16 (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im)))) x.re)))> 19.550 * * * * [progress]: [ 31 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (+.p16 (real->posit16 0.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 19.550 * * * * [progress]: [ 32 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 19.550 * * * * [progress]: [ 33 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (-.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 19.550 * * * * [progress]: [ 34 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 19.550 * * * * [progress]: [ 35 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 19.550 * * * * [progress]: [ 36 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 19.550 * * * * [progress]: [ 37 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (+.p16 x.im x.im) x.re) x.re)))> 19.550 * * * * [progress]: [ 38 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 39 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 40 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 41 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 42 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 43 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 44 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 45 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 46 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 47 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (/.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re)) (+.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 48 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 49 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.550 * * * * [progress]: [ 50 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (quire16->posit16 (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 51 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (+.p16 (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 52 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 53 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (-.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 54 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 55 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 56 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 57 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 58 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 59 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 60 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * * * * [progress]: [ 61 / 61 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 19.551 * [simplify]: Simplifying: (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (*.p16 x.im (*.p16 x.im (-.p16 x.re x.im))) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.im (real->posit16 0.0)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (real->posit16 0.0)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) x.im) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im) (*.p16 (real->posit16 0.0) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (*.p16 (real->posit16 0.0) x.im) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.im x.re) (*.p16 x.im x.re) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (+.p16 x.im x.im)) (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (real->posit16 1.0) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) 19.552 * * [simplify]: iteration 1: (42 enodes) 19.563 * * [simplify]: iteration 2: (81 enodes) 19.612 * * [simplify]: iteration 3: (244 enodes) 19.989 * * [simplify]: iteration 4: (1108 enodes) 24.571 * * [simplify]: Extracting #0: cost 19 inf + 0 24.574 * * [simplify]: Extracting #1: cost 706 inf + 1 24.590 * * [simplify]: Extracting #2: cost 1662 inf + 68940 24.654 * * [simplify]: Extracting #3: cost 388 inf + 1061698 24.793 * * [simplify]: Extracting #4: cost 51 inf + 1488091 24.929 * * [simplify]: Extracting #5: cost 2 inf + 1554429 25.070 * * [simplify]: Extracting #6: cost 0 inf + 1558115 25.207 * [simplify]: Simplified to: (*.p16 (-.p16 x.re x.im) (*.p16 x.im x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (*.p16 (-.p16 x.re x.im) (*.p16 x.im x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (real->posit16 0.0) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (*.p16 x.im x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (*.p16 (-.p16 x.re x.im) (*.p16 x.im x.im)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (real->posit16 0.0) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (real->posit16 0.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (+.p16 x.re x.im)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.re x.im) x.re x.re (*.p16 (+.p16 x.im x.im) x.re) (*.p16 (+.p16 x.im x.im) x.re) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.im) x.re)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) x.re) (-.p16 x.re x.im) (-.p16 x.re x.im) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) (+.p16 x.re x.im) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) (*.p16 (+.p16 x.re x.im) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.re x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)) 25.214 * * * [progress]: adding candidates to table 27.489 * * [progress]: iteration 3 / 4 27.489 * * * [progress]: picking best candidate 27.558 * * * * [pick]: Picked #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.558 * * * [progress]: localizing error 27.882 * * * [progress]: generating rewritten candidates 27.882 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 27.883 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 27.892 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1 1) 27.911 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 27.918 * * * [progress]: generating series expansions 27.918 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 27.918 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 27.918 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1 1) 27.918 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 27.918 * * * [progress]: simplifying candidates 27.918 * * * * [progress]: [ 1 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.918 * * * * [progress]: [ 2 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.im (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.im (-.p16 x.re x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.918 * * * * [progress]: [ 3 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 4 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 5 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 6 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 7 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 8 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 x.im (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.im x.re)) (+.p16 x.re x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 9 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 10 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 11 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 12 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 13 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 14 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 15 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (-.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 16 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.919 * * * * [progress]: [ 17 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 18 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 19 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 x.im x.re) (*.p16 x.im (-.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 20 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.im x.re) (*.p16 x.im (neg.p16 x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 21 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.im (real->posit16 0.0)) (*.p16 x.im (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 22 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (real->posit16 0.0))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 23 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 (neg.p16 x.im) x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 24 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (real->posit16 0.0) x.im) (*.p16 (-.p16 x.re x.im) x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 25 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (real->posit16 0.0) x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 26 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 27 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 28 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 29 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 x.im (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 30 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 31 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.920 * * * * [progress]: [ 32 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (quire16->posit16 (posit16->quire16 (*.p16 x.im (-.p16 x.re x.im)))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 33 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (real->posit16 0.0) (*.p16 x.im (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 34 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 35 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 36 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 37 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 38 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 39 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 40 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 27.921 * * * * [progress]: [ 41 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.re)))> 27.921 * * * * [progress]: [ 42 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 43 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 27.921 * * * * [progress]: [ 44 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 27.921 * * * * [progress]: [ 45 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 27.921 * * * * [progress]: [ 46 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 27.922 * * * * [progress]: [ 47 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (quire16->posit16 (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im)))) x.re)))> 27.922 * * * * [progress]: [ 48 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (real->posit16 0.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 27.922 * * * * [progress]: [ 49 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 27.922 * * * * [progress]: [ 50 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 27.922 * * * * [progress]: [ 51 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 27.922 * * * * [progress]: [ 52 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 27.922 * * * * [progress]: [ 53 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 27.922 * * * * [progress]: [ 54 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (+.p16 x.im x.im) x.re) x.re)))> 27.922 * * * * [progress]: [ 55 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.922 * * * * [progress]: [ 56 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.922 * * * * [progress]: [ 57 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.922 * * * * [progress]: [ 58 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 27.923 * [simplify]: Simplifying: (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.re) (*.p16 x.im (*.p16 x.im (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.im (-.p16 x.re x.im))) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.im (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.im x.re)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im x.re) (*.p16 x.im (neg.p16 x.im)) (*.p16 x.im (real->posit16 0.0)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (real->posit16 0.0)) (*.p16 x.re x.im) (*.p16 (neg.p16 x.im) x.im) (*.p16 (real->posit16 0.0) x.im) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (real->posit16 0.0) x.im) (*.p16 x.im (real->posit16 1.0)) (*.p16 x.im (real->posit16 1.0)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (-.p16 x.re x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.im x.re) (*.p16 x.im x.re) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (+.p16 x.im x.im)) (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) 27.924 * * [simplify]: iteration 1: (36 enodes) 27.947 * * [simplify]: iteration 2: (75 enodes) 27.966 * * [simplify]: iteration 3: (249 enodes) 28.327 * * [simplify]: iteration 4: (992 enodes) 31.318 * * [simplify]: Extracting #0: cost 16 inf + 0 31.322 * * [simplify]: Extracting #1: cost 832 inf + 2 31.335 * * [simplify]: Extracting #2: cost 1697 inf + 92153 31.381 * * [simplify]: Extracting #3: cost 614 inf + 1067476 31.493 * * [simplify]: Extracting #4: cost 40 inf + 1700378 31.570 * * [simplify]: Extracting #5: cost 2 inf + 1755377 31.652 * * [simplify]: Extracting #6: cost 0 inf + 1759061 31.768 * [simplify]: Simplified to: (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (*.p16 (*.p16 x.im (-.p16 x.re x.im)) x.im) (*.p16 x.im (*.p16 (-.p16 x.re x.im) x.re)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im) (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.im (+.p16 x.re x.im)) (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im))) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re x.im) (*.p16 (neg.p16 x.im) x.im) (real->posit16 0.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 0.0) (*.p16 x.re x.im) (*.p16 (neg.p16 x.im) x.im) (real->posit16 0.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 0.0) x.im x.im (*.p16 x.im (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.re x.im)) x.im) (*.p16 x.im (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (-.p16 x.re x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.re x.im) (*.p16 x.re x.im) x.re x.re (*.p16 x.im (+.p16 x.re x.re)) (*.p16 x.im (+.p16 x.re x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (+.p16 x.re x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.im (-.p16 x.re x.im)) 31.774 * * * [progress]: adding candidates to table 33.856 * * [progress]: iteration 4 / 4 33.856 * * * [progress]: picking best candidate 33.886 * * * * [pick]: Picked # 33.886 * * * [progress]: localizing error 34.039 * * * [progress]: generating rewritten candidates 34.039 * * * * [progress]: [ 1 / 4 ] rewriting at (2 2) 34.043 * * * * [progress]: [ 2 / 4 ] rewriting at (2) 34.046 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2 1) 34.050 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2 2) 34.055 * * * [progress]: generating series expansions 34.055 * * * * [progress]: [ 1 / 4 ] generating series at (2 2) 34.055 * * * * [progress]: [ 2 / 4 ] generating series at (2) 34.055 * * * * [progress]: [ 3 / 4 ] generating series at (2 2 1) 34.055 * * * * [progress]: [ 4 / 4 ] generating series at (2 2 2) 34.055 * * * [progress]: simplifying candidates 34.055 * * * * [progress]: [ 1 / 71 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.055 * * * * [progress]: [ 2 / 71 ] simplifiying candidate #posit16 0.0))))> 34.055 * * * * [progress]: [ 3 / 71 ] simplifiying candidate # 34.055 * * * * [progress]: [ 4 / 71 ] simplifiying candidate # 34.056 * * * * [progress]: [ 5 / 71 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 6 / 71 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 7 / 71 ] simplifiying candidate #posit16 0.0))))> 34.056 * * * * [progress]: [ 8 / 71 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 9 / 71 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 10 / 71 ] simplifiying candidate #posit16 (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))))> 34.056 * * * * [progress]: [ 11 / 71 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re) (real->posit16 1.0)))))> 34.056 * * * * [progress]: [ 12 / 71 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (+.p16 x.re x.re) x.re))))> 34.056 * * * * [progress]: [ 13 / 71 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 14 / 71 ] simplifiying candidate #posit16 0.0))))> 34.056 * * * * [progress]: [ 15 / 71 ] simplifiying candidate #posit16 0.0))))> 34.056 * * * * [progress]: [ 16 / 71 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 17 / 71 ] simplifiying candidate #posit16 1.0))))> 34.056 * * * * [progress]: [ 18 / 71 ] simplifiying candidate #posit16 1.0))))> 34.056 * * * * [progress]: [ 19 / 71 ] simplifiying candidate # 34.056 * * * * [progress]: [ 20 / 71 ] simplifiying candidate # 34.056 * * * * [progress]: [ 21 / 71 ] simplifiying candidate # 34.056 * * * * [progress]: [ 22 / 71 ] simplifiying candidate #posit16 1.0)) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.056 * * * * [progress]: [ 23 / 71 ] simplifiying candidate #posit16 1.0)) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.056 * * * * [progress]: [ 24 / 71 ] simplifiying candidate #posit16 1.0)))> 34.056 * * * * [progress]: [ 25 / 71 ] simplifiying candidate #posit16 1.0)))> 34.056 * * * * [progress]: [ 26 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 27 / 71 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))))> 34.056 * * * * [progress]: [ 28 / 71 ] simplifiying candidate #posit16 0.0) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.056 * * * * [progress]: [ 29 / 71 ] simplifiying candidate #posit16 0.0)))> 34.056 * * * * [progress]: [ 30 / 71 ] simplifiying candidate #posit16 0.0)))> 34.056 * * * * [progress]: [ 31 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.057 * * * * [progress]: [ 32 / 71 ] simplifiying candidate #posit16 1.0)))> 34.057 * * * * [progress]: [ 33 / 71 ] simplifiying candidate #posit16 1.0)))> 34.057 * * * * [progress]: [ 34 / 71 ] simplifiying candidate # 34.057 * * * * [progress]: [ 35 / 71 ] simplifiying candidate # 34.057 * * * * [progress]: [ 36 / 71 ] simplifiying candidate # 34.057 * * * * [progress]: [ 37 / 71 ] simplifiying candidate #posit16 1.0)) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 38 / 71 ] simplifiying candidate #posit16 1.0)) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 39 / 71 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 40 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 41 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 42 / 71 ] simplifiying candidate #posit16 1.0) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 43 / 71 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 44 / 71 ] simplifiying candidate # 34.057 * * * * [progress]: [ 45 / 71 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 46 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 47 / 71 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 48 / 71 ] simplifiying candidate #posit16 0.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 49 / 71 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 50 / 71 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 51 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 52 / 71 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 53 / 71 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 x.re x.re) x.re))))> 34.057 * * * * [progress]: [ 54 / 71 ] simplifiying candidate # 34.057 * * * * [progress]: [ 55 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.057 * * * * [progress]: [ 56 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.057 * * * * [progress]: [ 57 / 71 ] simplifiying candidate #posit16 1.0) x.re)))))> 34.057 * * * * [progress]: [ 58 / 71 ] simplifiying candidate #posit16 1.0)))))> 34.058 * * * * [progress]: [ 59 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.058 * * * * [progress]: [ 60 / 71 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (+.p16 x.re x.re) x.re))))))> 34.058 * * * * [progress]: [ 61 / 71 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.058 * * * * [progress]: [ 62 / 71 ] simplifiying candidate #posit16 0.0)))))> 34.058 * * * * [progress]: [ 63 / 71 ] simplifiying candidate #posit16 0.0)))))> 34.058 * * * * [progress]: [ 64 / 71 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 x.re x.re) x.re)))))> 34.058 * * * * [progress]: [ 65 / 71 ] simplifiying candidate #posit16 1.0)))))> 34.058 * * * * [progress]: [ 66 / 71 ] simplifiying candidate #posit16 1.0)))))> 34.058 * * * * [progress]: [ 67 / 71 ] simplifiying candidate # 34.058 * * * * [progress]: [ 68 / 71 ] simplifiying candidate # 34.058 * * * * [progress]: [ 69 / 71 ] simplifiying candidate # 34.058 * * * * [progress]: [ 70 / 71 ] simplifiying candidate # 34.058 * * * * [progress]: [ 71 / 71 ] simplifiying candidate # 34.059 * [simplify]: Simplifying: (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 0.0)) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)) (+.p16 (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (+.p16 x.re x.re) x.re)) (+.p16 (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (+.p16 x.re x.re) x.re)) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)) (+.p16 (real->posit16 0.0) (*.p16 (+.p16 x.re x.re) x.re)) (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)) (-.p16 (real->posit16 0.0) (*.p16 (+.p16 x.re x.re) x.re)) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.p16 x.re x.re) x.re) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (+.p16 x.re x.re) x.re) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 x.im (*.p16 (+.p16 x.re x.re) x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (*.p16 (*.p16 (+.p16 x.re x.re) x.re) x.im) (*.p16 x.im (real->posit16 1.0)) (*.p16 x.im (real->posit16 1.0)) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re)))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (real->posit16 1.0) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (+.p16 x.re x.re) x.re) (*.p16 (+.p16 x.re x.re) x.re) (*.p16 (real->posit16 1.0) x.re) (*.p16 (+.p16 x.re x.re) x.re) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.re x.re) x.re)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) (*.p16 x.im (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.re x.re) x.re))) 34.059 * * [simplify]: iteration 1: (40 enodes) 34.071 * * [simplify]: iteration 2: (83 enodes) 34.096 * * [simplify]: iteration 3: (228 enodes) 34.407 * * [simplify]: iteration 4: (1005 enodes) 36.896 * * [simplify]: Extracting #0: cost 23 inf + 0 36.898 * * [simplify]: Extracting #1: cost 681 inf + 44 36.905 * * [simplify]: Extracting #2: cost 917 inf + 73256 36.931 * * [simplify]: Extracting #3: cost 306 inf + 406444 36.968 * * [simplify]: Extracting #4: cost 23 inf + 664933 37.009 * * [simplify]: Extracting #5: cost 0 inf + 692466 37.050 * [simplify]: Simplified to: (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) (*.p16 x.re (+.p16 (+.p16 x.re x.re) (-.p16 x.re x.im))) (*.p16 x.re (+.p16 (+.p16 x.re x.re) (-.p16 x.re x.im))) (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) (*.p16 x.re (+.p16 x.re x.re)) (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) (neg.p16 (*.p16 x.re (+.p16 x.re x.re))) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im)))) (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im))) (*.p16 x.re (+.p16 x.re x.re)) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im))) (+.p16 x.re x.re) x.re) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) x.im) (*.p16 (+.p16 x.re x.re) (*.p16 x.im x.re)) (*.p16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) x.im) (*.p16 (+.p16 x.re x.re) (*.p16 x.im x.re)) x.im x.im (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im)) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) x.im) (*.p16 x.re (-.p16 x.re x.im)) (-.p16 x.re x.im) (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (+.p16 x.im x.re) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) (+.p16 x.im x.re))) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 x.re (+.p16 x.re x.re)) (*.p16 x.re (+.p16 x.re x.re)) x.re (*.p16 x.re (+.p16 x.re x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.re (+.p16 x.re x.re))) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 0.0) (real->posit16 1.0) (real->posit16 1.0) (real->posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im) 37.055 * * * [progress]: adding candidates to table 38.552 * [progress]: [Phase 3 of 3] Extracting. 38.552 * * [regime]: Finding splitpoints for: (# #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (+.p16 x.re x.re) x.re))))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im))))> # #) 38.554 * * * [regime-changes]: Trying 2 branch expressions: (x.im x.re) 38.554 * * * * [regimes]: Trying to branch on x.im from (# #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (+.p16 x.re x.re) x.re))))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im))))> # #) 38.645 * * * * [regimes]: Trying to branch on x.re from (# #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (+.p16 x.re x.re) x.re))))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 x.im (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (-.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)) (*.p16 x.im x.im))) x.im))))> # #) 38.768 * * * [regime]: Found split indices: #