fabs fraction 1

Time bar (total: 4.9s)

analyze41.0ms (0.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%49.9%49.9%0.1%0%0%0%3
50%49.9%49.9%0.1%0%0%0%4
50%49.9%49.9%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
75%74.9%25%0.1%0%0%0%7
75%74.9%25%0.1%0%0%0%8
87.5%87.4%12.5%0.1%0%0%0%9
87.5%87.4%12.5%0.1%0%0%0%10
87.5%87.4%12.5%0.1%0%0%0%11
93.8%93.6%6.2%0.1%0%0%0%12
Compiler

Compiled 16 to 11 computations (31.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
Operation ival-mult, time spent: 4.0ms, 20.0% of total-time
Operation ival-div, time spent: 4.0ms, 20.0% of total-time
Operation ival-add, time spent: 4.0ms, 20.0% of total-time
Operation ival-fabs, time spent: 3.0ms, 15.0% of total-time
Operation ival-sub, time spent: 3.0ms, 15.0% of total-time
Operation const, time spent: 1.0ms, 5.0% of total-time

sample1.4s (27.4%)

Results
988.0ms6536×0valid
262.0ms1719×0infinite
0.0ms0infinite
Precisions
Click to see histograms. Total time spent on operations: 581.0ms
Operation ival-add, time spent: 167.0ms, 29.0% of total-time
Operation ival-div, time spent: 153.0ms, 26.0% of total-time
Operation ival-sub, time spent: 137.0ms, 24.0% of total-time
Operation ival-mult, time spent: 67.0ms, 12.0% of total-time
Operation ival-fabs, time spent: 36.0ms, 6.0% of total-time
Operation const, time spent: 22.0ms, 4.0% of total-time
Bogosity

preprocess1.3s (25.6%)

Algorithm
egg-herbie
Rules
2010×fma-neg
1076×fma-define
854×times-frac
594×sub-neg
592×associate-+l+
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-x
00-0-(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
00-0-(*.f64 (/.f64 x y) z)
00-0-y
00-0-(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
00-0-(/.f64 (+.f64 x 4) y)
00-0-(+.f64 x 4)
00-0-z
00-0-4
00-0-(/.f64 x y)
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
054594
1147562
2307546
3763526
42438518
54139491
65763491
77943491
Stop Event
node limit
Calls
Call 1
Inputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 (neg.f64 x) 4) y) (*.f64 (/.f64 (neg.f64 x) y) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) (neg.f64 y)) (*.f64 (/.f64 x (neg.f64 y)) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) (neg.f64 z))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 (neg.f64 x) 4) y) (*.f64 (/.f64 (neg.f64 x) y) z))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) (neg.f64 y)) (*.f64 (/.f64 x (neg.f64 y)) z))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) (neg.f64 z)))))
(fabs.f64 (-.f64 (/.f64 (+.f64 y 4) x) (*.f64 (/.f64 y x) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 z 4) y) (*.f64 (/.f64 z y) x)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) z) (*.f64 (/.f64 x z) y)))
Outputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 (neg.f64 x) 4) y) (*.f64 (/.f64 (neg.f64 x) y) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 4 (neg.f64 x)) y) (*.f64 z (/.f64 x (neg.f64 y)))))
(fabs.f64 (+.f64 (*.f64 (/.f64 x y) z) (/.f64 (-.f64 4 x) y)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 4 x) y)))
(fabs.f64 (fma.f64 (/.f64 x y) (-.f64 1 z) (/.f64 -4 y)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) (neg.f64 y)) (*.f64 (/.f64 x (neg.f64 y)) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) (neg.f64 z))))
(fabs.f64 (+.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (+.f64 x 4) y)))
(fabs.f64 (*.f64 (/.f64 1 y) (fma.f64 x z (+.f64 x 4))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 (neg.f64 x) 4) y) (*.f64 (/.f64 (neg.f64 x) y) z))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 4 (neg.f64 x)) y) (*.f64 z (/.f64 x (neg.f64 y))))))
(neg.f64 (fabs.f64 (+.f64 (*.f64 (/.f64 x y) z) (/.f64 (-.f64 4 x) y))))
(neg.f64 (fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 4 x) y))))
(neg.f64 (fabs.f64 (fma.f64 (/.f64 x y) (-.f64 1 z) (/.f64 -4 y))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) (neg.f64 y)) (*.f64 (/.f64 x (neg.f64 y)) z))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) (neg.f64 y)) (*.f64 z (/.f64 x (neg.f64 y))))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))))
(neg.f64 (fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y))))
(neg.f64 (fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x)))))
(neg.f64 (fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) (neg.f64 z)))))
(neg.f64 (fabs.f64 (+.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))))
(neg.f64 (fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (+.f64 x 4) y))))
(neg.f64 (fabs.f64 (*.f64 (/.f64 1 y) (fma.f64 x z (+.f64 x 4)))))
(fabs.f64 (-.f64 (/.f64 (+.f64 y 4) x) (*.f64 (/.f64 y x) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 4 y) x) (*.f64 z (/.f64 y x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 4 y) x) (*.f64 y (/.f64 z x))))
(fabs.f64 (fma.f64 y (/.f64 z x) (/.f64 (neg.f64 (+.f64 4 y)) x)))
(fabs.f64 (fma.f64 y (/.f64 z x) (/.f64 (-.f64 -4 y) x)))
(fabs.f64 (-.f64 (/.f64 (+.f64 z 4) y) (*.f64 (/.f64 z y) x)))
(fabs.f64 (-.f64 (/.f64 (+.f64 4 z) y) (*.f64 x (/.f64 z y))))
(fabs.f64 (-.f64 (/.f64 (+.f64 4 z) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 z) y)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) z) (*.f64 (/.f64 x z) y)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) z) (*.f64 y (/.f64 x z))))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) z) (*.f64 x (/.f64 y z))))
(fabs.f64 (-.f64 (*.f64 x (/.f64 y z)) (/.f64 (+.f64 x 4) z)))
(fabs.f64 (fma.f64 x (/.f64 y z) (/.f64 (-.f64 -4 x) z)))
(fabs.f64 (*.f64 (/.f64 -1 z) (fma.f64 x y (-.f64 -4 x))))
Symmetry

(abs y)

Compiler

Compiled 109 to 52 computations (52.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 654.0ms
Operation ival-add, time spent: 334.0ms, 51.0% of total-time
Operation ival-div, time spent: 132.0ms, 20.0% of total-time
Operation ival-sub, time spent: 128.0ms, 20.0% of total-time
Operation ival-mult, time spent: 28.0ms, 4.0% of total-time
Operation const, time spent: 21.0ms, 3.0% of total-time
Operation ival-fabs, time spent: 11.0ms, 2.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 25 to 16 computations (36% saved)

prune2.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
93.4%
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
97.0%
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
Compiler

Compiled 43 to 29 computations (32.6% saved)

localize1.3s (26.7%)

Compiler

Compiled 121 to 59 computations (51.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.2s
Operation ival-add, time spent: 313.0ms, 26.0% of total-time
Operation ival-sub, time spent: 301.0ms, 25.0% of total-time
Operation composed, time spent: 244.0ms, 20.0% of total-time
Operation ival-div, time spent: 165.0ms, 14.0% of total-time
Operation ival-mult, time spent: 120.0ms, 10.0% of total-time
Operation const, time spent: 33.0ms, 3.0% of total-time
Operation ival-fabs, time spent: 21.0ms, 2.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked033
Done000
Total033
Accuracy
100.0%
Counts
3 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.9%
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
93.4%
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
97.0%
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
Compiler

Compiled 80 to 52 computations (35% saved)

regimes29.0ms (0.6%)

Counts
3 → 2
Calls
Call 1
Inputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
Outputs
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y)))
Calls

5 calls:

9.0ms
x
7.0ms
y
6.0ms
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
4.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
4.0ms
z
Results
AccuracySegmentsBranch
98.7%2x
99.9%2y
97.0%1z
97.0%1(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
97.0%1(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
Compiler

Compiled 41 to 28 computations (31.7% saved)

regimes13.0ms (0.3%)

Counts
2 → 1
Calls
Call 1
Inputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
Outputs
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
Calls

2 calls:

8.0ms
y
4.0ms
x
Results
AccuracySegmentsBranch
97.0%1x
98.8%3y
Compiler

Compiled 8 to 6 computations (25% saved)

regimes14.0ms (0.3%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
Outputs
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
Calls

5 calls:

3.0ms
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
3.0ms
(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
3.0ms
y
3.0ms
x
3.0ms
z
Results
AccuracySegmentsBranch
93.4%1y
93.4%1z
93.4%1(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
93.4%1(-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z))
93.4%1x
Compiler

Compiled 41 to 28 computations (31.7% saved)

bsearch19.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
19.0ms
4.747686038230956e-23
2.4053168797165294e-21
Results
15.0ms96×0valid
2.0ms15×0infinite
0.0ms0valid
Compiler

Compiled 231 to 162 computations (29.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
Operation ival-add, time spent: 3.0ms, 38.0% of total-time
Operation ival-div, time spent: 2.0ms, 25.0% of total-time
Operation ival-sub, time spent: 2.0ms, 25.0% of total-time
Operation ival-mult, time spent: 1.0ms, 13.0% of total-time
Operation ival-fabs, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

simplify9.0ms (0.2%)

Algorithm
egg-herbie
Rules
24×+-commutative
22×sub-neg
20×*-commutative
16×neg-sub0
16×neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
035194
150194
273194
389194
4103194
5112194
6115194
7116194
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 y 4572544305500111/5316911983139663491615228241121378304) (fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x)))) (fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y))))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
Outputs
(if (<=.f64 y 4572544305500111/5316911983139663491615228241121378304) (fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x)))) (fabs.f64 (fma.f64 x (/.f64 z y) (/.f64 (-.f64 -4 x) y))))
(fabs.f64 (*.f64 (/.f64 -1 y) (fma.f64 x z (-.f64 -4 x))))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 (/.f64 x y) z)))
(fabs.f64 (-.f64 (/.f64 (+.f64 x 4) y) (*.f64 z (/.f64 x y))))
Compiler

Compiled 58 to 39 computations (32.8% saved)

soundness577.0ms (11.7%)

Rules
2010×fma-neg
2010×fma-neg
1076×fma-define
1076×fma-define
854×times-frac
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
054594
1147562
2307546
3763526
42438518
54139491
65763491
77943491
054594
1147562
2307546
3763526
42438518
54139491
65763491
77943491
Stop Event
node limit
node limit
Compiler

Compiled 123 to 65 computations (47.2% saved)

end0.0ms (0%)

preprocess295.0ms (6%)

Compiler

Compiled 308 to 200 computations (35.1% saved)

Profiling

Loading profile data...