33.877 * [progress]: [Phase 1 of 3] Setting up. 0.002 * * * [progress]: [1/2] Preparing points 0.002 * * * * [points]: Sampling 256 additional inputs, on iter 0 have 0 / 256 0.003 * * * * [points]: Computing exacts on every 16 of 256 points to ramp up precision 0.005 * * * * [points]: Setting MPFR precision to 64 0.008 * * * * [points]: Setting MPFR precision to 320 0.009 * * * * [points]: Computing exacts on every 8 of 256 points to ramp up precision 0.011 * * * * [points]: Setting MPFR precision to 64 0.014 * * * * [points]: Setting MPFR precision to 320 0.017 * * * * [points]: Computing exacts on every 4 of 256 points to ramp up precision 0.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.040 * * * * [points]: Setting MPFR precision to 320 0.048 * * * * [points]: Computing exacts for 256 points 0.050 * * * * [points]: Setting MPFR precision to 64 0.076 * * * * [points]: Setting MPFR precision to 320 0.102 * * * * [points]: Filtering points with unrepresentable outputs 0.103 * * * * [points]: Sampled 256 points with exact outputs 0.103 * * * [progress]: [2/2] Setting up program. 0.112 * [progress]: [Phase 2 of 3] Improving. 0.112 * * * * [progress]: [ 1 / 1 ] simplifiying candidate # 0.112 * [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.113 * * [simplify]: iteration 0: 11 enodes 0.116 * * [simplify]: iteration 1: 20 enodes 0.123 * * [simplify]: iteration 2: 49 enodes 0.162 * * [simplify]: iteration 3: 107 enodes 0.183 * * [simplify]: iteration 4: 220 enodes 0.319 * * [simplify]: iteration 5: 586 enodes 0.579 * * [simplify]: iteration 6: 1308 enodes 0.866 * * [simplify]: iteration complete: 2000 enodes 0.866 * * [simplify]: Extracting #0: cost 1 inf + 0 0.866 * * [simplify]: Extracting #1: cost 89 inf + 0 0.867 * * [simplify]: Extracting #2: cost 414 inf + 1 0.869 * * [simplify]: Extracting #3: cost 420 inf + 17510 0.881 * * [simplify]: Extracting #4: cost 209 inf + 204890 0.901 * * [simplify]: Extracting #5: cost 10 inf + 427328 0.923 * * [simplify]: Extracting #6: cost 0 inf + 437588 0.945 * [simplify]: Simplified to: (*.p16 x.im (+.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 (*.p16 x.re x.re) (*.p16 x.re x.re)))) 0.951 * * [progress]: iteration 1 / 4 0.951 * * * [progress]: picking best candidate 0.960 * * * * [pick]: Picked # 0.960 * * * [progress]: localizing error 1.223 * * * [progress]: generating rewritten candidates 1.224 * * * * [progress]: [ 1 / 4 ] rewriting at (2) 1.231 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1) 1.236 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1) 1.241 * * * * [progress]: [ 4 / 4 ] rewriting at (2 2) 1.247 * * * [progress]: generating series expansions 1.247 * * * * [progress]: [ 1 / 4 ] generating series at (2) 1.247 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1) 1.247 * * * * [progress]: [ 3 / 4 ] generating series at (2 1) 1.247 * * * * [progress]: [ 4 / 4 ] generating series at (2 2) 1.247 * * * [progress]: simplifying candidates 1.247 * * * * [progress]: [ 1 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.247 * * * * [progress]: [ 2 / 68 ] simplifiying candidate #posit16 0.0)))> 1.247 * * * * [progress]: [ 3 / 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))))> 1.247 * * * * [progress]: [ 4 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.247 * * * * [progress]: [ 5 / 68 ] simplifiying candidate #posit16 0.0)))> 1.247 * * * * [progress]: [ 6 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.247 * * * * [progress]: [ 7 / 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))))> 1.247 * * * * [progress]: [ 8 / 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)))))> 1.247 * * * * [progress]: [ 9 / 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))))> 1.248 * * * * [progress]: [ 10 / 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)))> 1.248 * * * * [progress]: [ 11 / 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))))> 1.248 * * * * [progress]: [ 12 / 68 ] simplifiying candidate #posit16 0.0)))> 1.248 * * * * [progress]: [ 13 / 68 ] simplifiying candidate #posit16 0.0)))> 1.248 * * * * [progress]: [ 14 / 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))))> 1.248 * * * * [progress]: [ 15 / 68 ] simplifiying candidate #posit16 1.0)))> 1.248 * * * * [progress]: [ 16 / 68 ] simplifiying candidate #posit16 1.0)))> 1.248 * * * * [progress]: [ 17 / 68 ] simplifiying candidate # 1.248 * * * * [progress]: [ 18 / 68 ] simplifiying candidate # 1.248 * * * * [progress]: [ 19 / 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)))> 1.248 * * * * [progress]: [ 20 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.248 * * * * [progress]: [ 21 / 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)))> 1.248 * * * * [progress]: [ 22 / 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)))> 1.248 * * * * [progress]: [ 23 / 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)))> 1.248 * * * * [progress]: [ 24 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.248 * * * * [progress]: [ 25 / 68 ] simplifiying candidate # 1.248 * * * * [progress]: [ 26 / 68 ] simplifiying candidate # 1.249 * * * * [progress]: [ 27 / 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)))> 1.249 * * * * [progress]: [ 28 / 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)))> 1.249 * * * * [progress]: [ 29 / 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)))> 1.249 * * * * [progress]: [ 30 / 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)))> 1.249 * * * * [progress]: [ 31 / 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)))> 1.249 * * * * [progress]: [ 32 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.249 * * * * [progress]: [ 33 / 68 ] simplifiying candidate #posit16 0.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.249 * * * * [progress]: [ 34 / 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)))> 1.249 * * * * [progress]: [ 35 / 68 ] simplifiying candidate #posit16 1.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.249 * * * * [progress]: [ 36 / 68 ] simplifiying candidate #posit16 1.0)) x.im) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.249 * * * * [progress]: [ 37 / 68 ] simplifiying candidate # 1.249 * * * * [progress]: [ 38 / 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)))> 1.249 * * * * [progress]: [ 39 / 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)))> 1.249 * * * * [progress]: [ 40 / 68 ] simplifiying candidate #posit16 1.0) x.im)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.249 * * * * [progress]: [ 41 / 68 ] simplifiying candidate # 1.249 * * * * [progress]: [ 42 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.250 * * * * [progress]: [ 43 / 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)))> 1.250 * * * * [progress]: [ 44 / 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)))> 1.250 * * * * [progress]: [ 45 / 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)))> 1.250 * * * * [progress]: [ 46 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.250 * * * * [progress]: [ 47 / 68 ] simplifiying candidate #posit16 0.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.250 * * * * [progress]: [ 48 / 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)))> 1.250 * * * * [progress]: [ 49 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.250 * * * * [progress]: [ 50 / 68 ] simplifiying candidate #posit16 1.0)) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))> 1.250 * * * * [progress]: [ 51 / 68 ] simplifiying candidate # 1.250 * * * * [progress]: [ 52 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.250 * * * * [progress]: [ 53 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.250 * * * * [progress]: [ 54 / 68 ] simplifiying candidate #posit16 1.0) x.re))))> 1.250 * * * * [progress]: [ 55 / 68 ] simplifiying candidate #posit16 1.0))))> 1.250 * * * * [progress]: [ 56 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.250 * * * * [progress]: [ 57 / 68 ] simplifiying candidate #posit16 (posit16->quire16 (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re)))))> 1.250 * * * * [progress]: [ 58 / 68 ] simplifiying candidate #posit16 0.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.250 * * * * [progress]: [ 59 / 68 ] simplifiying candidate #posit16 0.0))))> 1.250 * * * * [progress]: [ 60 / 68 ] simplifiying candidate #posit16 0.0))))> 1.251 * * * * [progress]: [ 61 / 68 ] simplifiying candidate #posit16 1.0) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.im x.re)) x.re))))> 1.251 * * * * [progress]: [ 62 / 68 ] simplifiying candidate #posit16 1.0))))> 1.251 * * * * [progress]: [ 63 / 68 ] simplifiying candidate #posit16 1.0))))> 1.251 * * * * [progress]: [ 64 / 68 ] simplifiying candidate # 1.251 * * * * [progress]: [ 65 / 68 ] simplifiying candidate # 1.251 * * * * [progress]: [ 66 / 68 ] simplifiying candidate # 1.251 * * * * [progress]: [ 67 / 68 ] simplifiying candidate # 1.251 * * * * [progress]: [ 68 / 68 ] simplifiying candidate # 1.252 * [simplify]: Simplifying: (+.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 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 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 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 (-.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)) 1.253 * * [simplify]: iteration 0: 41 enodes 1.264 * * [simplify]: iteration 1: 79 enodes 1.285 * * [simplify]: iteration 2: 258 enodes 1.477 * * [simplify]: iteration 3: 1200 enodes 2.275 * * [simplify]: iteration complete: 2014 enodes 2.276 * * [simplify]: Extracting #0: cost 26 inf + 0 2.277 * * [simplify]: Extracting #1: cost 412 inf + 1045 2.285 * * [simplify]: Extracting #2: cost 482 inf + 88536 2.317 * * [simplify]: Extracting #3: cost 201 inf + 437447 2.365 * * [simplify]: Extracting #4: cost 16 inf + 604221 2.420 * * [simplify]: Extracting #5: cost 1 inf + 616532 2.471 * * [simplify]: Extracting #6: cost 0 inf + 617575 2.523 * [simplify]: Simplified to: (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (neg.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)))) (real->posit16 1.0) (posit16->quire16 (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (real->posit16 1.0)) (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.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 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) (*.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 x.re x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) x.im (*.p16 (*.p16 x.im (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (+.p16 (*.p16 x.re x.re) (*.p16 x.im x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.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 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.re (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (real->posit16 1.0) (posit16->quire16 (*.p16 x.re (+.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) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) 2.530 * * * [progress]: adding candidates to table 3.538 * * [progress]: iteration 2 / 4 3.538 * * * [progress]: picking best candidate 3.592 * * * * [pick]: Picked #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.592 * * * [progress]: localizing error 3.897 * * * [progress]: generating rewritten candidates 3.897 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 3.897 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1 2) 3.904 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1) 3.920 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 3.924 * * * [progress]: generating series expansions 3.924 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 3.925 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1 2) 3.925 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1) 3.925 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 3.925 * * * [progress]: simplifying candidates 3.925 * * * * [progress]: [ 1 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 2 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 3 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) (*.p16 (real->posit16 1.0) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 4 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (/.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 5 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 6 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (quire16->posit16 (posit16->quire16 (*.p16 (+.p16 x.im x.re) x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 7 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 (real->posit16 0.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 8 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 0.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 9 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (-.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 0.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 10 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 11 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 12 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (/.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 13 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 x.im (+.p16 x.im x.re)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 14 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 15 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 16 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (real->posit16 0.0) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 17 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 (+.p16 x.im 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)) x.re)))> 3.925 * * * * [progress]: [ 18 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 19 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 20 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.925 * * * * [progress]: [ 21 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 22 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 23 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 24 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (*.p16 (+.p16 x.im x.re) x.im)) (+.p16 x.re x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 25 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 26 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 27 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 28 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 29 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 0.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 30 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (-.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 0.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 31 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 32 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 33 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 34 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 35 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 3.926 * * * * [progress]: [ 36 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.im (+.p16 x.re x.re)) x.re)))> 3.926 * * * * [progress]: [ 37 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (+.p16 (*.p16 x.re x.im) (real->posit16 0.0)) (*.p16 x.re x.im)) x.re)))> 3.926 * * * * [progress]: [ 38 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.re)))> 3.926 * * * * [progress]: [ 39 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (real->posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.re)))> 3.926 * * * * [progress]: [ 40 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (+.p16 (real->posit16 0.0) (*.p16 x.re x.im))) x.re)))> 3.926 * * * * [progress]: [ 41 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (-.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.re)))> 3.926 * * * * [progress]: [ 42 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (-.p16 (*.p16 x.re x.im) (-.p16 (real->posit16 0.0) (*.p16 x.re x.im))) x.re)))> 3.926 * * * * [progress]: [ 43 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (real->posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.re)))> 3.926 * * * * [progress]: [ 44 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 3.926 * * * * [progress]: [ 45 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (quire16->posit16 (posit16->quire16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)))) x.re)))> 3.926 * * * * [progress]: [ 46 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) (*.p16 x.re x.im) (real->posit16 1.0))) x.re)))> 3.926 * * * * [progress]: [ 47 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 x.re x.im)) x.re x.im)) x.re)))> 3.927 * * * * [progress]: [ 48 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (real->posit16 0.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.re)))> 3.927 * * * * [progress]: [ 49 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.re)))> 3.927 * * * * [progress]: [ 50 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (-.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 0.0)) x.re)))> 3.927 * * * * [progress]: [ 51 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (real->posit16 1.0) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im))) x.re)))> 3.927 * * * * [progress]: [ 52 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 1.0)) x.re)))> 3.927 * * * * [progress]: [ 53 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (/.p16 (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) (real->posit16 1.0)) x.re)))> 3.927 * * * * [progress]: [ 54 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.927 * * * * [progress]: [ 55 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.927 * * * * [progress]: [ 56 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.927 * * * * [progress]: [ 57 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.927 * * * * [progress]: [ 58 / 58 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 3.927 * [simplify]: Simplifying: (*.p16 (+.p16 x.im x.re) x.im) (*.p16 (+.p16 x.im x.re) x.im) (*.p16 (real->posit16 1.0) x.im) (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.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) (real->posit16 0.0)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)) (*.p16 (real->posit16 0.0) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im 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.im x.re)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.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.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) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)) 3.928 * * [simplify]: iteration 0: 35 enodes 3.938 * * [simplify]: iteration 1: 72 enodes 3.965 * * [simplify]: iteration 2: 220 enodes 4.347 * * [simplify]: iteration 3: 1299 enodes 4.938 * * [simplify]: iteration complete: 2006 enodes 4.938 * * [simplify]: Extracting #0: cost 18 inf + 0 4.939 * * [simplify]: Extracting #1: cost 412 inf + 1 4.944 * * [simplify]: Extracting #2: cost 543 inf + 23823 4.968 * * [simplify]: Extracting #3: cost 221 inf + 295878 4.993 * * [simplify]: Extracting #4: cost 5 inf + 516081 5.013 * * [simplify]: Extracting #5: cost 0 inf + 518893 5.033 * [simplify]: Simplified to: (*.p16 (+.p16 x.re x.im) x.im) (*.p16 (+.p16 x.re x.im) x.im) x.im (*.p16 (+.p16 x.re x.im) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.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) (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (real->posit16 0.0) (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (real->posit16 0.0) (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (+.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (+.p16 x.re x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.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.im) (+.p16 x.re x.re) (*.p16 x.re x.im) (*.p16 x.re (+.p16 x.im x.im)) (*.p16 x.re (+.p16 x.im x.im)) (*.p16 x.re x.im) (*.p16 x.re (+.p16 x.im x.im)) (neg.p16 (*.p16 x.re x.im)) (real->posit16 1.0) (+.p16 x.im x.im) (posit16->quire16 (*.p16 x.re (+.p16 x.im 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) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) (quire16->posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.re x.im) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)) 5.036 * * * [progress]: adding candidates to table 5.816 * * [progress]: iteration 3 / 4 5.816 * * * [progress]: picking best candidate 5.890 * * * * [pick]: Picked #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 5.890 * * * [progress]: localizing error 6.191 * * * [progress]: generating rewritten candidates 6.191 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 6.192 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1 2) 6.198 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1) 6.209 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 6.215 * * * [progress]: generating series expansions 6.215 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 6.215 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1 2) 6.215 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1) 6.215 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 6.215 * * * [progress]: simplifying candidates 6.215 * * * * [progress]: [ 1 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 2 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 3 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) (*.p16 (real->posit16 1.0) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 4 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (/.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 5 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 6 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (quire16->posit16 (posit16->quire16 (*.p16 (+.p16 x.im x.re) x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 7 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 (real->posit16 0.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 8 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 9 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (-.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 10 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 11 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 12 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (/.p16 (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 13 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 x.im (+.p16 x.im x.re)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 14 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 15 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 16 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (real->posit16 0.0) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 17 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im)) (*.p16 (real->posit16 0.0) (-.p16 x.re x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.215 * * * * [progress]: [ 18 / 53 ] 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)))> 6.216 * * * * [progress]: [ 19 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 20 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 21 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 22 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 23 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 24 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (*.p16 (+.p16 x.im x.re) x.im)) (+.p16 x.re x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 25 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 26 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 27 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (quire16->posit16 (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 28 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 29 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 30 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (-.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 31 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 32 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 33 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 34 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 35 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 6.216 * * * * [progress]: [ 36 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.re)))> 6.216 * * * * [progress]: [ 37 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 38 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 6.216 * * * * [progress]: [ 39 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 6.216 * * * * [progress]: [ 40 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 6.216 * * * * [progress]: [ 41 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 6.216 * * * * [progress]: [ 42 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (quire16->posit16 (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im)))) x.re)))> 6.216 * * * * [progress]: [ 43 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (real->posit16 0.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 6.216 * * * * [progress]: [ 44 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (+.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 6.217 * * * * [progress]: [ 45 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (-.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 6.217 * * * * [progress]: [ 46 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 6.217 * * * * [progress]: [ 47 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 6.217 * * * * [progress]: [ 48 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 6.217 * * * * [progress]: [ 49 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 (+.p16 x.im x.im) x.re) x.re)))> 6.217 * * * * [progress]: [ 50 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.217 * * * * [progress]: [ 51 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.217 * * * * [progress]: [ 52 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.217 * * * * [progress]: [ 53 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 6.217 * [simplify]: Simplifying: (*.p16 (+.p16 x.im x.re) x.im) (*.p16 (+.p16 x.im x.re) x.im) (*.p16 (real->posit16 1.0) x.im) (*.p16 (+.p16 x.im x.re) x.im) (real->posit16 1.0) (posit16->quire16 (*.p16 (+.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) (real->posit16 0.0)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (real->posit16 0.0)) (*.p16 (real->posit16 0.0) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im x.re) x.im) (-.p16 x.re x.im)) (*.p16 (*.p16 (+.p16 x.im 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.im x.re)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (real->posit16 1.0) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (*.p16 (+.p16 x.im x.re) x.im)) (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im)) (real->posit16 1.0) (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.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 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) 6.218 * * [simplify]: iteration 0: 28 enodes 6.225 * * [simplify]: iteration 1: 64 enodes 6.244 * * [simplify]: iteration 2: 179 enodes 6.417 * * [simplify]: iteration 3: 918 enodes 6.568 * * [simplify]: iteration complete: 2016 enodes 6.568 * * [simplify]: Extracting #0: cost 15 inf + 0 6.569 * * [simplify]: Extracting #1: cost 315 inf + 2 6.571 * * [simplify]: Extracting #2: cost 656 inf + 23914 6.586 * * [simplify]: Extracting #3: cost 332 inf + 404391 6.609 * * [simplify]: Extracting #4: cost 13 inf + 714775 6.648 * * [simplify]: Extracting #5: cost 0 inf + 728572 6.674 * [simplify]: Simplified to: (*.p16 x.im (+.p16 x.re x.im)) (*.p16 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) (real->posit16 0.0) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (real->posit16 0.0) (real->posit16 0.0) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (real->posit16 0.0) (*.p16 (+.p16 x.re x.im) (-.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.p16 x.im (+.p16 x.re x.im)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.p16 (*.p16 (-.p16 x.re x.im) x.im) (+.p16 x.im x.re)) (*.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) x.im) (+.p16 x.im x.re)) (real->posit16 1.0) (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) 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 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) 6.677 * * * [progress]: adding candidates to table 7.261 * * [progress]: iteration 4 / 4 7.261 * * * [progress]: picking best candidate 7.283 * * * * [pick]: Picked #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)))> 7.283 * * * [progress]: localizing error 7.543 * * * [progress]: generating rewritten candidates 7.543 * * * * [progress]: [ 1 / 4 ] rewriting at (2 1) 7.543 * * * * [progress]: [ 2 / 4 ] rewriting at (2 1 1 1) 7.547 * * * * [progress]: [ 3 / 4 ] rewriting at (2 1 1 1 1) 7.551 * * * * [progress]: [ 4 / 4 ] rewriting at (2 1 2) 7.555 * * * [progress]: generating series expansions 7.555 * * * * [progress]: [ 1 / 4 ] generating series at (2 1) 7.555 * * * * [progress]: [ 2 / 4 ] generating series at (2 1 1 1) 7.555 * * * * [progress]: [ 3 / 4 ] generating series at (2 1 1 1 1) 7.555 * * * * [progress]: [ 4 / 4 ] generating series at (2 1 2) 7.555 * * * [progress]: simplifying candidates 7.555 * * * * [progress]: [ 1 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 2 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 3 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re)) x.im) (+.p16 x.re x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 4 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 5 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 6 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 7 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (quire16->posit16 (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)))> 7.555 * * * * [progress]: [ 8 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (real->posit16 0.0) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 9 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (+.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 10 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (-.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 0.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.555 * * * * [progress]: [ 11 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (real->posit16 1.0) (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 12 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 13 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (/.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im) (real->posit16 1.0))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 14 / 53 ] 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)))> 7.556 * * * * [progress]: [ 15 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 16 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 x.im (-.p16 x.re x.im)) (*.p16 x.re (-.p16 x.re x.im))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 17 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (+.p16 x.im x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 18 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (real->posit16 1.0)) (+.p16 x.im x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 19 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 20 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 21 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 22 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (*.p16 (real->posit16 1.0) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 23 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 24 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 (-.p16 (*.p16 x.re x.re) (*.p16 x.im x.im)) (+.p16 x.im x.re)) (+.p16 x.re x.im)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 25 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 26 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 27 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (quire16->posit16 (posit16->quire16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 28 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (real->posit16 0.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 29 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 0.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 30 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 0.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 31 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (real->posit16 1.0) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 32 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 33 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (/.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (real->posit16 1.0)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 34 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (+.p16 x.im x.re) (-.p16 x.re x.im)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> 7.556 * * * * [progress]: [ 35 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (+.p16 (*.p16 x.re x.im) (*.p16 x.re x.im)) x.re)))> 7.556 * * * * [progress]: [ 36 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (+.p16 (*.p16 x.im x.re) (*.p16 x.im x.re)) x.re)))> 7.556 * * * * [progress]: [ 37 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 7.557 * * * * [progress]: [ 38 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (*.p16 x.re (real->posit16 1.0)) (+.p16 x.im x.im)) x.re)))> 7.557 * * * * [progress]: [ 39 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 7.557 * * * * [progress]: [ 40 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 7.557 * * * * [progress]: [ 41 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 7.557 * * * * [progress]: [ 42 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (quire16->posit16 (posit16->quire16 (*.p16 x.re (+.p16 x.im x.im)))) x.re)))> 7.557 * * * * [progress]: [ 43 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (+.p16 (real->posit16 0.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 7.557 * * * * [progress]: [ 44 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (+.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 7.557 * * * * [progress]: [ 45 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (-.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 0.0)) x.re)))> 7.557 * * * * [progress]: [ 46 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (real->posit16 1.0) (*.p16 x.re (+.p16 x.im x.im))) x.re)))> 7.557 * * * * [progress]: [ 47 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 7.557 * * * * [progress]: [ 48 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (/.p16 (*.p16 x.re (+.p16 x.im x.im)) (real->posit16 1.0)) x.re)))> 7.557 * * * * [progress]: [ 49 / 53 ] simplifiying candidate #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) x.im)) (*.p16 (+.p16 x.im x.im) x.re) x.re)))> 7.557 * * * * [progress]: [ 50 / 53 ] 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)))> 7.557 * * * * [progress]: [ 51 / 53 ] 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)))> 7.557 * * * * [progress]: [ 52 / 53 ] 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)))> 7.557 * * * * [progress]: [ 53 / 53 ] 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)))> 7.558 * [simplify]: Simplifying: (*.p16 (+.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)) (+.p16 x.im x.re)) 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) (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.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 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) (+.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 (-.p16 x.re x.im) (+.p16 x.im x.re)) 7.558 * * [simplify]: iteration 0: 30 enodes 7.565 * * [simplify]: iteration 1: 64 enodes 7.590 * * [simplify]: iteration 2: 248 enodes 7.902 * * [simplify]: iteration 3: 1739 enodes 8.208 * * [simplify]: iteration complete: 2001 enodes 8.208 * * [simplify]: Extracting #0: cost 17 inf + 0 8.209 * * [simplify]: Extracting #1: cost 464 inf + 1 8.214 * * [simplify]: Extracting #2: cost 522 inf + 117886 8.223 * * [simplify]: Extracting #3: cost 222 inf + 322646 8.240 * * [simplify]: Extracting #4: cost 22 inf + 479151 8.266 * * [simplify]: Extracting #5: cost 0 inf + 499442 8.284 * [simplify]: Simplified to: (*.p16 x.im (+.p16 x.im x.re)) (*.p16 x.im (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re))) (*.p16 (+.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))) (*.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 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.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 x.im x.re) (*.p16 (-.p16 x.re x.im) (+.p16 x.im x.re)) (*.p16 (+.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)) (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 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 (-.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 (-.p16 x.re x.im) (+.p16 x.im x.re)) 8.287 * * * [progress]: adding candidates to table 8.836 * [progress]: [Phase 3 of 3] Extracting. 8.837 * * [regime]: Finding splitpoints for: (#posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> # # #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)))> #) 8.838 * * * [regime-changes]: Trying 2 branch expressions: (x.im x.re) 8.838 * * * * [regimes]: Trying to branch on x.im from (#posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> # # #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)))> #) 8.924 * * * * [regimes]: Trying to branch on x.re from (#posit16 (quire16-mul-add (posit16->quire16 (*.p16 (-.p16 x.re x.im) (*.p16 (+.p16 x.im x.re) x.im))) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> #posit16 (quire16-mul-add (posit16->quire16 (*.p16 (+.p16 (*.p16 (-.p16 x.re x.im) x.im) (*.p16 (-.p16 x.re x.im) x.re)) x.im)) (*.p16 x.re (+.p16 x.im x.im)) x.re)))> # # #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)))> #) 9.033 * * * [regime]: Found split indices: #