***** The environment variable FPTAYLOR_BASE is defined = '/home/roki/GIT/FPTaylor'
Loading configuration file: /home/roki/GIT/FPTaylor/default.cfg
FPTaylor, version 0.9.3+dev

Loading: /home/roki/GIT/paf/FPTaylor/Trid4.txt
Processing: trid

*************************************
Taylor form for: rnd32((rnd32((rnd32((rnd32((rnd32((rnd32((rnd32((rnd32((rnd32((rnd32((rnd32(x1) - rnd32(1))) * rnd32((rnd32(x1) - rnd32(1))))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd32((rnd32(x2) - rnd32(1))) * rnd32((rnd32(x2) - rnd32(1))))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd32((rnd32(x3) - rnd32(1))) * rnd32((rnd32(x3) - rnd32(1))))))) + rnd32((rnd32(x4) * rnd32(x3))))) - rnd32((rnd32((rnd32(x4) - rnd32(1))) * rnd32((rnd32(x4) - rnd32(1))))))) + rnd32((rnd32(x5) * rnd32(x4))))) - rnd32((rnd32((rnd32(x5) - rnd32(1))) * rnd32((rnd32(x5) - rnd32(1)))))))

Conservative bound: [-80804.040962, 50201.026978]

Simplified rounding: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)))))) + rnd32((rnd32(x4) * rnd32(x3))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)))))) + rnd32((rnd32(x5) * rnd32(x4))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1))))))
Building Taylor forms...
Simplifying Taylor forms...
success
v0 = ((((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + (x4 * x3)) - ((x4 - 1) * (x4 - 1))) + (x5 * x4)) - ((x5 - 1) * (x5 - 1)))
-1 (116): exp = -24: (3377699720527875/576460752303423488)
1 (4): exp = -24: ((((x1 - 1) * floor_power2(x1)) + ((x1 - 1) * floor_power2(x1))) + (x2 * floor_power2(x1)))
2 (5): exp = -24: (((x1 - 1) * floor_power2(((x1 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))) + ((x1 - 1) * floor_power2(((x1 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))
3 (8): exp = -24: floor_power2((((x1 - 1) * (x1 - 1)) + interval(-1.54113775352016091347e-03, 1.54113775352016091347e-03)))
4 (10): exp = -24: ((((x1 * floor_power2(x2)) + (-(((x2 - 1) * floor_power2(x2))))) + (-(((x2 - 1) * floor_power2(x2))))) + (x3 * floor_power2(x2)))
5 (13): exp = -24: floor_power2(((x2 * x1) + interval(-7.62939467676915228367e-04, 7.62939467676915228367e-04)))
6 (15): exp = -24: floor_power2(((((x1 - 1) * (x1 - 1)) + (x2 * x1)) + interval(-3.28063972119707657552e-03, 3.28063972119707657552e-03)))
7 (21): exp = -24: ((-(((x2 - 1) * floor_power2(((x2 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))) + (-(((x2 - 1) * floor_power2(((x2 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))))
8 (24): exp = -24: (-(floor_power2((((x2 - 1) * (x2 - 1)) + interval(-1.54113775352016091347e-03, 1.54113775352016091347e-03)))))
9 (26): exp = -24: floor_power2((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + interval(-6.28662122471723879003e-03, 6.28662122471723879003e-03)))
10 (28): exp = -24: ((((x2 * floor_power2(x3)) + (-(((x3 - 1) * floor_power2(x3))))) + (-(((x3 - 1) * floor_power2(x3))))) + (x4 * floor_power2(x3)))
11 (31): exp = -24: floor_power2(((x3 * x2) + interval(-7.62939467676915228367e-04, 7.62939467676915228367e-04)))
12 (33): exp = -24: floor_power2(((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) + interval(-8.51440444239415401839e-03, 8.51440444239415401839e-03)))
13 (39): exp = -24: ((-(((x3 - 1) * floor_power2(((x3 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))) + (-(((x3 - 1) * floor_power2(((x3 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))))
14 (42): exp = -24: (-(floor_power2((((x3 - 1) * (x3 - 1)) + interval(-1.54113775352016091347e-03, 1.54113775352016091347e-03)))))
15 (44): exp = -24: floor_power2((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + interval(-1.15203859459143166666e-02, 1.15203859459143166666e-02)))
16 (46): exp = -24: ((((x3 * floor_power2(x4)) + (-(((x4 - 1) * floor_power2(x4))))) + (-(((x4 - 1) * floor_power2(x4))))) + (x5 * floor_power2(x4)))
17 (49): exp = -24: floor_power2(((x4 * x3) + interval(-7.62939467676915228367e-04, 7.62939467676915228367e-04)))
18 (51): exp = -24: floor_power2(((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + (x4 * x3)) + interval(-1.47247316635912336297e-02, 1.47247316635912336297e-02)))
19 (57): exp = -24: ((-(((x4 - 1) * floor_power2(((x4 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))) + (-(((x4 - 1) * floor_power2(((x4 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))))
20 (60): exp = -24: (-(floor_power2((((x4 - 1) * (x4 - 1)) + interval(-1.54113775352016091347e-03, 1.54113775352016091347e-03)))))
21 (62): exp = -24: floor_power2((((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + (x4 * x3)) - ((x4 - 1) * (x4 - 1))) + interval(-1.87072756671113962779e-02, 1.87072756671113962779e-02)))
22 (64): exp = -24: (((x4 * floor_power2(x5)) + (-(((x5 - 1) * floor_power2(x5))))) + (-(((x5 - 1) * floor_power2(x5)))))
23 (67): exp = -24: floor_power2(((x5 * x4) + interval(-7.62939467676915228367e-04, 7.62939467676915228367e-04)))
24 (69): exp = -24: floor_power2(((((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + (x4 * x3)) - ((x4 - 1) * (x4 - 1))) + (x5 * x4)) + interval(-2.19116213847883149757e-02, 2.19116213847883149757e-02)))
25 (75): exp = -24: ((-(((x5 - 1) * floor_power2(((x5 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))) + (-(((x5 - 1) * floor_power2(((x5 - 1) + interval(-3.81469726562500000000e-06, 3.81469726562500000000e-06)))))))
26 (78): exp = -24: (-(floor_power2((((x5 - 1) * (x5 - 1)) + interval(-1.54113775352016091347e-03, 1.54113775352016091347e-03)))))
27 (80): exp = -24: floor_power2((((((((((((x1 - 1) * (x1 - 1)) + (x2 * x1)) - ((x2 - 1) * (x2 - 1))) + (x3 * x2)) - ((x3 - 1) * (x3 - 1))) + (x4 * x3)) - ((x4 - 1) * (x4 - 1))) + (x5 * x4)) - ((x5 - 1) * (x5 - 1))) + interval(-2.78472903883084758891e-02, 2.78472903883084758891e-02)))

Corresponding original subexpressions:
1: rnd32(x1)
2: rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1))
3: rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1))))
4: rnd32(x2)
5: rnd32((rnd32(x2) * rnd32(x1)))
6: rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1)))))
7: rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1))
8: rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1))))
9: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1))))))
10: rnd32(x3)
11: rnd32((rnd32(x3) * rnd32(x2)))
12: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2)))))
13: rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1))
14: rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1))))
15: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1))))))
16: rnd32(x4)
17: rnd32((rnd32(x4) * rnd32(x3)))
18: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)))))) + rnd32((rnd32(x4) * rnd32(x3)))))
19: rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1))
20: rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1))))
21: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)))))) + rnd32((rnd32(x4) * rnd32(x3))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1))))))
22: rnd32(x5)
23: rnd32((rnd32(x5) * rnd32(x4)))
24: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)))))) + rnd32((rnd32(x4) * rnd32(x3))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)))))) + rnd32((rnd32(x5) * rnd32(x4)))))
25: rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1))
26: rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1))))
27: rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd[32,ne,1.00,-24,0]((rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x1) - 1)))) + rnd32((rnd32(x2) * rnd32(x1))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x2) - 1)))))) + rnd32((rnd32(x3) * rnd32(x2))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x3) - 1)))))) + rnd32((rnd32(x4) * rnd32(x3))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x4) - 1)))))) + rnd32((rnd32(x5) * rnd32(x4))))) - rnd32((rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1)) * rnd[32,ne,1.00,-24,0]((rnd32(x5) - 1))))))

bounds: [-7.275993e+04, 1.544202e+04]

Computing absolute errors
-1: exp = -24: 5.859375e-03 (low = 5.859375e-03, subopt = 0.0%)

Solving the exact optimization problem
exact bound (exp = -24): 4.464080e+05 (low = 4.436960e+05, subopt = 0.6%)
total2: 3.492460e-10 (low = 3.492460e-10, subopt = 0.0%)
exact total: 2.660799e-02 (low = 2.644634e-02, subopt = 0.6%)

Computing relative errors
**WARNING**: 
Cannot compute the relative error: values of the function are close to zero

Elapsed time: 9.44271
*************************************

-------------------------------------------------------------------------------
Problem: trid

Optimization lower bounds for error models:
The absolute error model (exact): 2.644634e-2 (0x1.b14c006p-6) (suboptimality = 0.6%)

Bounds (without rounding): [-7.275994e+4, 1.544202e+4]
Bounds (floating-point): [-7.275997e+4, 1.544205e+4]

Absolute error (exact): 2.660800e-2 (0x1.b3f2006000001p-6)

Elapsed time: 9.44


