185.505 * [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.004 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.006 * * * * [points]: Setting MPFR precision to 64 0.008 * * * * [points]: Setting MPFR precision to 320 0.010 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.012 * * * * [points]: Setting MPFR precision to 64 0.014 * * * * [points]: Setting MPFR precision to 320 0.017 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.019 * * * * [points]: Setting MPFR precision to 64 0.024 * * * * [points]: Setting MPFR precision to 320 0.029 * * * * [points]: Computing exacts on every 2 of 256 points to ramp up precision 0.031 * * * * [points]: Setting MPFR precision to 64 0.039 * * * * [points]: Setting MPFR precision to 320 0.048 * * * * [points]: Computing exacts for 256 points 0.050 * * * * [points]: Setting MPFR precision to 64 0.088 * * * * [points]: Setting MPFR precision to 320 0.108 * * * * [points]: Filtering points with unrepresentable outputs 0.109 * * * * [points]: Sampled 256 points with exact outputs 0.109 * * * [progress]: [2/2] Setting up program. 0.114 * [progress]: [Phase 2 of 3] Improving. 0.114 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.114 * [simplify]: Simplifying: (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) 0.114 * * [simplify]: iteration 1: (11 enodes) 0.116 * * [simplify]: iteration 2: (21 enodes) 0.120 * * [simplify]: iteration 3: (51 enodes) 0.129 * * [simplify]: iteration 4: (106 enodes) 0.156 * * [simplify]: iteration 5: (223 enodes) 0.269 * * [simplify]: iteration 6: (622 enodes) 0.534 * * [simplify]: iteration 7: (1485 enodes) 3.606 * * [simplify]: Extracting #0: cost 1 inf + 0 3.607 * * [simplify]: Extracting #1: cost 169 inf + 0 3.610 * * [simplify]: Extracting #2: cost 423 inf + 1 3.618 * * [simplify]: Extracting #3: cost 418 inf + 47997 3.643 * * [simplify]: Extracting #4: cost 181 inf + 300968 3.689 * * [simplify]: Extracting #5: cost 6 inf + 541596 3.740 * * [simplify]: Extracting #6: cost 0 inf + 546728 3.811 * * [simplify]: Extracting #7: cost 0 inf + 546408 3.882 * [simplify]: Simplified to: (*.p16 x.re (-.p16 (*.p16 x.re x.re) (+.p16 (+.p16 (*.p16 x.im x.im) (*.p16 x.im x.im)) (*.p16 x.im x.im)))) 3.892 * * [progress]: iteration 1 / 4 3.892 * * * [progress]: picking best candidate 3.908 * * * * [pick]: Picked # 3.908 * * * [progress]: localizing error 4.174 * * * [progress]: generating rewritten candidates 4.174 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 4.179 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1) 4.184 * * * * [progress]: [ 3 / 4 ] rewriting at (2 2) 4.188 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1) 4.191 * * * [progress]: generating series expansions 4.191 * * * * [progress]: [ 1 / 4 ] generating series at (2) 4.191 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1) 4.191 * * * * [progress]: [ 3 / 4 ] generating series at (2 2) 4.191 * * * * [progress]: [ 4 / 4 ] generating series at (2 1) 4.191 * * * [progress]: simplifying candidates 4.191 * * * * [progress]: [ 1 / 69 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.191 * * * * [progress]: [ 2 / 69 ] simplifiying candidate #posit16 0.0)))> 4.191 * * * * [progress]: [ 3 / 69 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 4 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 5 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 6 / 69 ] simplifiying candidate #posit16 0.0)))> 4.192 * * * * [progress]: [ 7 / 69 ] simplifiying candidate # 4.192 * * * * [progress]: [ 8 / 69 ] simplifiying candidate # 4.192 * * * * [progress]: [ 9 / 69 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 10 / 69 ] simplifiying candidate #posit16 (posit16->quire16 (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))))> 4.192 * * * * [progress]: [ 11 / 69 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0))))> 4.192 * * * * [progress]: [ 12 / 69 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 13 / 69 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 14 / 69 ] simplifiying candidate #posit16 0.0)))> 4.192 * * * * [progress]: [ 15 / 69 ] simplifiying candidate #posit16 0.0)))> 4.192 * * * * [progress]: [ 16 / 69 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.192 * * * * [progress]: [ 17 / 69 ] simplifiying candidate #posit16 1.0)))> 4.192 * * * * [progress]: [ 18 / 69 ] simplifiying candidate #posit16 1.0)))> 4.192 * * * * [progress]: [ 19 / 69 ] simplifiying candidate # 4.192 * * * * [progress]: [ 20 / 69 ] simplifiying candidate #posit16 0.0)) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 21 / 69 ] simplifiying candidate #posit16 0.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 22 / 69 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 23 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 24 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 25 / 69 ] simplifiying candidate #posit16 0.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.192 * * * * [progress]: [ 26 / 69 ] simplifiying candidate # 4.192 * * * * [progress]: [ 27 / 69 ] simplifiying candidate # 4.192 * * * * [progress]: [ 28 / 69 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 29 / 69 ] simplifiying candidate #posit16 (posit16->quire16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 30 / 69 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) (*.p16 x.im x.im) (real->posit16 1.0))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 31 / 69 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re x.re)) x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 32 / 69 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 33 / 69 ] simplifiying candidate #posit16 0.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 34 / 69 ] simplifiying candidate #posit16 0.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 35 / 69 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 36 / 69 ] simplifiying candidate #posit16 1.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 37 / 69 ] simplifiying candidate #posit16 1.0)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 38 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.193 * * * * [progress]: [ 39 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.193 * * * * [progress]: [ 40 / 69 ] simplifiying candidate #posit16 1.0) x.im))))> 4.193 * * * * [progress]: [ 41 / 69 ] simplifiying candidate #posit16 1.0))))> 4.193 * * * * [progress]: [ 42 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.193 * * * * [progress]: [ 43 / 69 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))))> 4.193 * * * * [progress]: [ 44 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.193 * * * * [progress]: [ 45 / 69 ] simplifiying candidate #posit16 0.0))))> 4.193 * * * * [progress]: [ 46 / 69 ] simplifiying candidate #posit16 0.0))))> 4.193 * * * * [progress]: [ 47 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 4.193 * * * * [progress]: [ 48 / 69 ] simplifiying candidate #posit16 1.0))))> 4.193 * * * * [progress]: [ 49 / 69 ] simplifiying candidate #posit16 1.0))))> 4.193 * * * * [progress]: [ 50 / 69 ] simplifiying candidate # 4.193 * * * * [progress]: [ 51 / 69 ] simplifiying candidate # 4.193 * * * * [progress]: [ 52 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.193 * * * * [progress]: [ 53 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 54 / 69 ] simplifiying candidate #posit16 1.0) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 55 / 69 ] simplifiying candidate # 4.194 * * * * [progress]: [ 56 / 69 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 57 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 58 / 69 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re))) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 59 / 69 ] simplifiying candidate #posit16 0.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 60 / 69 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 61 / 69 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 62 / 69 ] simplifiying candidate #posit16 1.0) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 63 / 69 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 64 / 69 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 4.194 * * * * [progress]: [ 65 / 69 ] simplifiying candidate # 4.194 * * * * [progress]: [ 66 / 69 ] simplifiying candidate # 4.194 * * * * [progress]: [ 67 / 69 ] simplifiying candidate # 4.194 * * * * [progress]: [ 68 / 69 ] simplifiying candidate # 4.194 * * * * [progress]: [ 69 / 69 ] simplifiying candidate # 4.195 * [simplify]: Simplifying: (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (real->posit16 0.0)) (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.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)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (real->posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (+.p16 (real->posit16 0.0) (*.p16 (+.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)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (neg.p16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (*.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (*.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 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (real->posit16 1.0) (posit16->quire16 (-.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))) (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im 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 (*.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 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 1.0) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im 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 (-.p16 x.re x.im) x.re) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (real->posit16 1.0) x.re) (*.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.re) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re 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 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) x.re) (*.p16 (+.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)) x.re) (*.p16 (+.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)) x.re) (*.p16 (+.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)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) 4.195 * * [simplify]: iteration 1: (46 enodes) 4.207 * * [simplify]: iteration 2: (92 enodes) 4.240 * * [simplify]: iteration 3: (346 enodes) 4.664 * * [simplify]: Extracting #0: cost 28 inf + 0 4.665 * * [simplify]: Extracting #1: cost 393 inf + 806 4.668 * * [simplify]: Extracting #2: cost 554 inf + 10005 4.681 * * [simplify]: Extracting #3: cost 276 inf + 334055 4.714 * * [simplify]: Extracting #4: cost 1 inf + 592171 4.755 * * [simplify]: Extracting #5: cost 0 inf + 592054 4.790 * [simplify]: Simplified to: (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (neg.p16 (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (neg.p16 (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (*.p16 (+.p16 (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)))) (+.p16 (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (real->posit16 1.0) (posit16->quire16 (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)))) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.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.im x.re) (-.p16 x.re x.im) (*.p16 x.re x.re) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (neg.p16 (*.p16 x.im x.im)) (*.p16 x.im x.im) (*.p16 (+.p16 x.im x.re) (-.p16 x.re 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.im x.im) (*.p16 x.re x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re 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 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) x.im (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re)) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.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.re (-.p16 x.re x.im)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) x.re (*.p16 x.re (-.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 (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 x.re (-.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 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (+.p16 (*.p16 (*.p16 x.im x.im) x.re) (*.p16 (*.p16 x.im x.im) x.re))) 4.797 * * * [progress]: adding candidates to table 5.639 * * [progress]: iteration 2 / 4 5.639 * * * [progress]: picking best candidate 5.703 * * * * [pick]: Picked #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 5.703 * * * [progress]: localizing error 6.028 * * * [progress]: generating rewritten candidates 6.028 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 6.029 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 6.038 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 2) 6.044 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 1 1 1) 6.049 * * * [progress]: generating series expansions 6.049 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 6.049 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 6.049 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 2) 6.049 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 1 1 1) 6.049 * * * [progress]: simplifying candidates 6.049 * * * * [progress]: [ 1 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.049 * * * * [progress]: [ 2 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.049 * * * * [progress]: [ 3 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 4 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 5 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 6 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 7 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 8 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.im x.re)) (+.p16 x.re x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 9 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 10 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 11 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 12 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 13 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 14 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 15 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 16 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 17 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 18 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 19 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 20 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 6.050 * * * * [progress]: [ 21 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.im (+.p16 x.re x.re)) x.im)))> 6.050 * * * * [progress]: [ 22 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (+.p16 (*.p16 x.re x.im) (real->posit16 0.0)) (*.p16 x.re x.im)) x.im)))> 6.050 * * * * [progress]: [ 23 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.im)))> 6.050 * * * * [progress]: [ 24 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (real->posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.im)))> 6.050 * * * * [progress]: [ 25 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (+.p16 (real->posit16 0.0) (*.p16 x.re x.im))) x.im)))> 6.050 * * * * [progress]: [ 26 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.im)))> 6.050 * * * * [progress]: [ 27 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (*.p16 x.re x.im) (-.p16 (real->posit16 0.0) (*.p16 x.re x.im))) x.im)))> 6.051 * * * * [progress]: [ 28 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.im)))> 6.051 * * * * [progress]: [ 29 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 6.051 * * * * [progress]: [ 30 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (quire16->posit16 (posit16->quire16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)))) x.im)))> 6.051 * * * * [progress]: [ 31 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) (*.p16 x.re x.im) (real->posit16 1.0))) x.im)))> 6.051 * * * * [progress]: [ 32 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 33 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (real->posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.im)))> 6.051 * * * * [progress]: [ 34 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.im)))> 6.051 * * * * [progress]: [ 35 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.im)))> 6.051 * * * * [progress]: [ 36 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.im)))> 6.051 * * * * [progress]: [ 37 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 1.0)) x.im)))> 6.051 * * * * [progress]: [ 38 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (/.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 1.0)) x.im)))> 6.051 * * * * [progress]: [ 39 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 40 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re (neg.p16 x.im))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 41 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 42 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (real->posit16 0.0))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 43 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 (neg.p16 x.im) x.re)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 44 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 (real->posit16 0.0) x.re) (*.p16 (-.p16 x.re x.im) x.re)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 45 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (real->posit16 0.0) x.re)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 46 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 47 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 48 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 49 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 50 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 51 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.051 * * * * [progress]: [ 52 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (quire16->posit16 (posit16->quire16 (*.p16 x.re (-.p16 x.re x.im)))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 53 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 54 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 55 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 56 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 57 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 58 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 59 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 60 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 61 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 62 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * * * * [progress]: [ 63 / 63 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 6.052 * [simplify]: Simplifying: (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.re (-.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 (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 x.re (-.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.im) (+.p16 x.re x.re) (+.p16 (*.p16 x.re x.im) (real->posit16 0.0)) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (+.p16 (real->posit16 0.0) (*.p16 x.re x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (-.p16 (real->posit16 0.0) (*.p16 x.re x.im)) (real->posit16 1.0) (+.p16 x.im x.im) (posit16->quire16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) (*.p16 x.re x.im) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) 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.re) (*.p16 x.re (neg.p16 x.im)) (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re x.re) (*.p16 (neg.p16 x.im) x.re) (*.p16 (real->posit16 0.0) x.re) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (real->posit16 0.0) x.re) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 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) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)) 6.053 * * [simplify]: iteration 1: (43 enodes) 6.065 * * [simplify]: iteration 2: (87 enodes) 6.095 * * [simplify]: iteration 3: (274 enodes) 6.588 * * [simplify]: iteration 4: (1170 enodes) 10.868 * * [simplify]: Extracting #0: cost 22 inf + 0 10.871 * * [simplify]: Extracting #1: cost 1086 inf + 363 10.894 * * [simplify]: Extracting #2: cost 1937 inf + 111094 10.961 * * [simplify]: Extracting #3: cost 889 inf + 1007654 11.078 * * [simplify]: Extracting #4: cost 67 inf + 1841774 11.205 * * [simplify]: Extracting #5: cost 0 inf + 1922572 11.298 * * [simplify]: Extracting #6: cost 0 inf + 1922332 11.388 * [simplify]: Simplified to: (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re)) (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (*.p16 x.re (*.p16 (+.p16 x.im x.re) (+.p16 x.im x.re)))) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.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.im) (+.p16 x.re x.re) (*.p16 x.im x.re) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) (*.p16 x.im x.re) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) (neg.p16 (*.p16 x.im x.re)) (real->posit16 1.0) (+.p16 x.im x.im) (posit16->quire16 (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re))) (quire16-mul-add (posit16->quire16 (*.p16 x.im x.re)) (*.p16 x.im x.re) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 x.im x.re)) 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.re) (*.p16 x.re (neg.p16 x.im)) (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0) (*.p16 x.re x.re) (*.p16 x.re (neg.p16 x.im)) (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0) x.re x.re (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re)) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 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) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.im)) (quire16->posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.im)) 11.391 * * * [progress]: adding candidates to table 12.177 * * [progress]: iteration 3 / 4 12.177 * * * [progress]: picking best candidate 12.222 * * * * [pick]: Picked #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.222 * * * [progress]: localizing error 12.501 * * * [progress]: generating rewritten candidates 12.501 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 12.501 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 12.507 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1 1) 12.510 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 12.514 * * * [progress]: generating series expansions 12.514 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 12.514 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 12.514 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1 1) 12.514 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 12.514 * * * [progress]: simplifying candidates 12.514 * * * * [progress]: [ 1 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 2 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 3 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 4 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 5 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 6 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 x.re (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 7 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 8 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.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.im)))> 12.514 * * * * [progress]: [ 9 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 10 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.514 * * * * [progress]: [ 11 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 12 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 13 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 14 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 15 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (-.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 16 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 17 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 18 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (/.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 19 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 20 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 x.re (neg.p16 x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 21 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 22 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (real->posit16 0.0))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 23 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.re) (*.p16 (neg.p16 x.im) x.re)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 24 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 (real->posit16 0.0) x.re) (*.p16 (-.p16 x.re x.im) x.re)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 25 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (real->posit16 0.0) x.re)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 26 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 27 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (real->posit16 1.0)) (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 28 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 29 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.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.im)))> 12.515 * * * * [progress]: [ 30 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 31 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 32 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (quire16->posit16 (posit16->quire16 (*.p16 x.re (-.p16 x.re x.im)))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 33 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 34 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 35 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (-.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 36 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 x.re (-.p16 x.re x.im))) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.515 * * * * [progress]: [ 37 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 38 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (/.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 39 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) x.re) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 40 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> 12.516 * * * * [progress]: [ 41 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.im)))> 12.516 * * * * [progress]: [ 42 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 43 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 44 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.im)))> 12.516 * * * * [progress]: [ 45 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.im)))> 12.516 * * * * [progress]: [ 46 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.im)))> 12.516 * * * * [progress]: [ 47 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (quire16->posit16 (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im)))) x.im)))> 12.516 * * * * [progress]: [ 48 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (real->posit16 0.0) (*.p16 x.re (+.p16 x.im x.im))) x.im)))> 12.516 * * * * [progress]: [ 49 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (+.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.im)))> 12.516 * * * * [progress]: [ 50 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (-.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.im)))> 12.516 * * * * [progress]: [ 51 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.im)))> 12.516 * * * * [progress]: [ 52 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.im)))> 12.516 * * * * [progress]: [ 53 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.im)))> 12.516 * * * * [progress]: [ 54 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 (+.p16 x.im x.im) x.re) x.im)))> 12.516 * * * * [progress]: [ 55 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 56 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 57 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.516 * * * * [progress]: [ 58 / 58 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> 12.517 * [simplify]: Simplifying: (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.im) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) x.re) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0)) (*.p16 (*.p16 x.re (-.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 (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 x.re (-.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.re) (*.p16 x.re (neg.p16 x.im)) (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (real->posit16 0.0)) (*.p16 x.re x.re) (*.p16 (neg.p16 x.im) x.re) (*.p16 (real->posit16 0.0) x.re) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (-.p16 x.re x.im) x.re) (*.p16 (real->posit16 0.0) x.re) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (real->posit16 1.0)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 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 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 x.im) (+.p16 x.im x.im) (+.p16 x.im x.im) (+.p16 x.im x.im) 12.517 * * [simplify]: iteration 1: (35 enodes) 12.532 * * [simplify]: iteration 2: (74 enodes) 12.558 * * [simplify]: iteration 3: (248 enodes) 12.943 * * [simplify]: iteration 4: (1014 enodes) 15.935 * * [simplify]: Extracting #0: cost 17 inf + 0 15.937 * * [simplify]: Extracting #1: cost 757 inf + 1 15.951 * * [simplify]: Extracting #2: cost 1611 inf + 79885 15.980 * * [simplify]: Extracting #3: cost 1073 inf + 541312 16.045 * * [simplify]: Extracting #4: cost 183 inf + 1419336 16.123 * * [simplify]: Extracting #5: cost 4 inf + 1633448 16.210 * * [simplify]: Extracting #6: cost 0 inf + 1636897 16.280 * [simplify]: Simplified to: (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re x.re) (-.p16 x.re x.im)) (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 x.re x.re) (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (*.p16 (+.p16 x.im x.re) (*.p16 x.re (+.p16 x.im x.re))) (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im))) (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im))) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.re) (*.p16 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 x.re) (*.p16 (neg.p16 x.im) x.re) (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0) (*.p16 x.re x.re) (*.p16 (neg.p16 x.im) x.re) (real->posit16 0.0) (*.p16 x.re (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 0.0) x.re x.re (*.p16 x.re (-.p16 x.re x.im)) (*.p16 (+.p16 x.im x.re) (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (-.p16 x.re x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 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.im x.re) (*.p16 x.im x.re) (*.p16 x.im x.re) (*.p16 x.im x.re) 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 x.im) (+.p16 x.im x.im) (+.p16 x.im x.im) (+.p16 x.im x.im) 16.286 * * * [progress]: adding candidates to table 16.862 * * [progress]: iteration 4 / 4 16.862 * * * [progress]: picking best candidate 16.913 * * * * [pick]: Picked # 16.913 * * * [progress]: localizing error 17.144 * * * [progress]: generating rewritten candidates 17.144 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 17.147 * * * * [progress]: [ 2 / 4 ] rewriting at (2 2) 17.150 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 17.155 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2 1) 17.160 * * * [progress]: generating series expansions 17.160 * * * * [progress]: [ 1 / 4 ] generating series at (2) 17.160 * * * * [progress]: [ 2 / 4 ] generating series at (2 2) 17.160 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 17.160 * * * * [progress]: [ 4 / 4 ] generating series at (2 2 1) 17.160 * * * [progress]: simplifying candidates 17.160 * * * * [progress]: [ 1 / 66 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.160 * * * * [progress]: [ 2 / 66 ] simplifiying candidate #posit16 0.0)))> 17.160 * * * * [progress]: [ 3 / 66 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.160 * * * * [progress]: [ 4 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.160 * * * * [progress]: [ 5 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 6 / 66 ] simplifiying candidate #posit16 0.0)))> 17.161 * * * * [progress]: [ 7 / 66 ] simplifiying candidate # 17.161 * * * * [progress]: [ 8 / 66 ] simplifiying candidate # 17.161 * * * * [progress]: [ 9 / 66 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 10 / 66 ] simplifiying candidate #posit16 (posit16->quire16 (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))))> 17.161 * * * * [progress]: [ 11 / 66 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0))))> 17.161 * * * * [progress]: [ 12 / 66 ] simplifiying candidate #posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.161 * * * * [progress]: [ 13 / 66 ] simplifiying candidate #posit16 0.0) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 14 / 66 ] simplifiying candidate #posit16 0.0)))> 17.161 * * * * [progress]: [ 15 / 66 ] simplifiying candidate #posit16 0.0)))> 17.161 * * * * [progress]: [ 16 / 66 ] simplifiying candidate #posit16 1.0) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 17 / 66 ] simplifiying candidate #posit16 1.0)))> 17.161 * * * * [progress]: [ 18 / 66 ] simplifiying candidate #posit16 1.0)))> 17.161 * * * * [progress]: [ 19 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 20 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.161 * * * * [progress]: [ 21 / 66 ] simplifiying candidate #posit16 1.0) x.im))))> 17.162 * * * * [progress]: [ 22 / 66 ] simplifiying candidate #posit16 1.0))))> 17.162 * * * * [progress]: [ 23 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.162 * * * * [progress]: [ 24 / 66 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))))> 17.162 * * * * [progress]: [ 25 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.162 * * * * [progress]: [ 26 / 66 ] simplifiying candidate #posit16 0.0))))> 17.162 * * * * [progress]: [ 27 / 66 ] simplifiying candidate #posit16 0.0))))> 17.162 * * * * [progress]: [ 28 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))))> 17.162 * * * * [progress]: [ 29 / 66 ] simplifiying candidate #posit16 1.0))))> 17.162 * * * * [progress]: [ 30 / 66 ] simplifiying candidate #posit16 1.0))))> 17.162 * * * * [progress]: [ 31 / 66 ] simplifiying candidate # 17.162 * * * * [progress]: [ 32 / 66 ] simplifiying candidate # 17.162 * * * * [progress]: [ 33 / 66 ] simplifiying candidate # 17.162 * * * * [progress]: [ 34 / 66 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.162 * * * * [progress]: [ 35 / 66 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.162 * * * * [progress]: [ 36 / 66 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.162 * * * * [progress]: [ 37 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.162 * * * * [progress]: [ 38 / 66 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re))) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 39 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 40 / 66 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 41 / 66 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 42 / 66 ] simplifiying candidate #posit16 1.0) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 43 / 66 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 44 / 66 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 45 / 66 ] simplifiying candidate # 17.163 * * * * [progress]: [ 46 / 66 ] simplifiying candidate #posit16 0.0)) (*.p16 x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 47 / 66 ] simplifiying candidate #posit16 0.0)) x.im)))> 17.163 * * * * [progress]: [ 48 / 66 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))) x.im)))> 17.163 * * * * [progress]: [ 49 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.re))) x.im)))> 17.163 * * * * [progress]: [ 50 / 66 ] simplifiying candidate #posit16 0.0)) x.im)))> 17.163 * * * * [progress]: [ 51 / 66 ] simplifiying candidate #posit16 0.0) (*.p16 x.im x.re))) x.im)))> 17.163 * * * * [progress]: [ 52 / 66 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))) x.im)))> 17.163 * * * * [progress]: [ 53 / 66 ] simplifiying candidate #posit16 (posit16->quire16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)))) x.im)))> 17.163 * * * * [progress]: [ 54 / 66 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) (*.p16 x.im x.re) (real->posit16 1.0))) x.im)))> 17.163 * * * * [progress]: [ 55 / 66 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) x.im x.re)) x.im)))> 17.163 * * * * [progress]: [ 56 / 66 ] simplifiying candidate #posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))) x.im)))> 17.164 * * * * [progress]: [ 57 / 66 ] simplifiying candidate #posit16 0.0)) x.im)))> 17.164 * * * * [progress]: [ 58 / 66 ] simplifiying candidate #posit16 0.0)) x.im)))> 17.164 * * * * [progress]: [ 59 / 66 ] simplifiying candidate #posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))) x.im)))> 17.164 * * * * [progress]: [ 60 / 66 ] simplifiying candidate #posit16 1.0)) x.im)))> 17.164 * * * * [progress]: [ 61 / 66 ] simplifiying candidate #posit16 1.0)) x.im)))> 17.164 * * * * [progress]: [ 62 / 66 ] simplifiying candidate # 17.164 * * * * [progress]: [ 63 / 66 ] simplifiying candidate # 17.164 * * * * [progress]: [ 64 / 66 ] simplifiying candidate # 17.164 * * * * [progress]: [ 65 / 66 ] simplifiying candidate # 17.164 * * * * [progress]: [ 66 / 66 ] simplifiying candidate # 17.165 * [simplify]: Simplifying: (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (real->posit16 0.0)) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (real->posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (+.p16 (real->posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (neg.p16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (-.p16 (*.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (*.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 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im)) (real->posit16 1.0) (posit16->quire16 (-.p16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im))) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im 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 (+.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 1.0) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im 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 (-.p16 x.re x.im) x.re) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) x.re) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) x.re) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 (+.p16 x.re x.im) (-.p16 x.re 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.im) (real->posit16 0.0)) (+.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 0.0) (*.p16 x.im x.re)) (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) (-.p16 (real->posit16 0.0) (*.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re))) (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) (*.p16 x.im x.re) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 x.re 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.re x.im) (-.p16 x.re x.im) (+.p16 x.re x.im) (-.p16 x.re x.im) (+.p16 x.re x.im) (-.p16 x.re x.im) (+.p16 x.re x.im) (-.p16 x.re x.im) 17.166 * * [simplify]: iteration 1: (42 enodes) 17.184 * * [simplify]: iteration 2: (79 enodes) 17.212 * * [simplify]: iteration 3: (325 enodes) 17.763 * * [simplify]: Extracting #0: cost 24 inf + 0 17.763 * * [simplify]: Extracting #1: cost 287 inf + 1 17.765 * * [simplify]: Extracting #2: cost 453 inf + 14168 17.778 * * [simplify]: Extracting #3: cost 213 inf + 341717 17.810 * * [simplify]: Extracting #4: cost 77 inf + 536191 17.856 * * [simplify]: Extracting #5: cost 0 inf + 608334 17.891 * [simplify]: Simplified to: (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (neg.p16 (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)) (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (neg.p16 (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (*.p16 (+.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)))) (+.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re))) (real->posit16 1.0) (posit16->quire16 (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)))) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re)) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)) (real->posit16 1.0)) (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.re)) (*.p16 (+.p16 x.im x.im) 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.im (*.p16 (+.p16 x.im x.im) x.re)) (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)) x.im (*.p16 x.im (*.p16 (+.p16 x.im x.im) x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 x.im (*.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 (-.p16 x.re x.im) x.re) (*.p16 (*.p16 x.re (+.p16 x.im x.re)) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.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 (*.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 x.im x.re) (*.p16 (+.p16 x.im x.im) x.re) (*.p16 (+.p16 x.im x.im) x.re) (*.p16 x.im x.re) (*.p16 (+.p16 x.im x.im) x.re) (neg.p16 (*.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.p16 x.im x.im) x.re)) (quire16-mul-add (posit16->quire16 (*.p16 x.im x.re)) (*.p16 x.im x.re) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 x.im x.re)) 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.re x.im) (+.p16 x.im x.re) (-.p16 x.re x.im) (+.p16 x.im x.re) (-.p16 x.re x.im) (+.p16 x.im x.re) (-.p16 x.re x.im) 17.894 * * * [progress]: adding candidates to table 18.611 * [progress]: [Phase 3 of 3] Extracting. 18.611 * * [regime]: Finding splitpoints for: (#posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> # # #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> # #) 18.612 * * * [regime-changes]: Trying 2 branch expressions: (x.im x.re) 18.613 * * * * [regimes]: Trying to branch on x.im from (#posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> # # #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> # #) 18.699 * * * * [regimes]: Trying to branch on x.re from (#posit16 (quire16-mul-sub (posit16->quire16 (*.p16 (*.p16 x.re (-.p16 x.re x.im)) (+.p16 x.im x.re))) (*.p16 x.re (+.p16 x.im x.im)) x.im)))> # # #posit16 (quire16-mul-sub (posit16->quire16 (+.p16 (*.p16 x.im (*.p16 x.re (-.p16 x.re x.im))) (*.p16 x.re (*.p16 x.re (-.p16 x.re x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.im)))> # #) 18.800 * * * [regime]: Found split indices: #