AI.Clustering.Hierarchical.Internal:ward from clustering-0.2.1

Time bar (total: 3.7s)

analyze295.0ms (8.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.7%0.3%0%0%0%0
0%0%99.7%0.3%0%0%0%1
0%0%99.7%0.3%0%0%0%2
0%0%99.7%0.3%0%0%0%3
0%0%99.7%0.3%0%0%0%4
12.5%12.5%87.2%0.3%0%0%0%5
12.5%12.5%87.2%0.3%0%0%0%6
12.5%12.5%87.2%0.3%0%0%0%7
18.8%18.7%81%0.3%0%0%0%8
28.1%28%71.7%0.3%0%0%0%9
28.1%28%71.7%0.3%0%0%0%10
42.2%42.1%57.6%0.3%0%0%0%11
42.2%42.1%57.6%0.3%0%0%0%12
Compiler

Compiled 28 to 17 computations (39.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 134.0ms
Operation ival-add, time spent: 61.0ms, 45.0% of total-time
Operation ival-mult, time spent: 48.0ms, 36.0% of total-time
Operation ival-sub, time spent: 14.0ms, 10.0% of total-time
Operation ival-div, time spent: 10.0ms, 7.0% of total-time
Operation const, time spent: 2.0ms, 1.0% of total-time

sample2.1s (57.4%)

Results
2.0s8252×0valid
2.0ms5exit
1.0ms3valid
0.0ms0valid
0.0ms1valid
Precisions
Click to see histograms. Total time spent on operations: 1.2s
Operation ival-add, time spent: 750.0ms, 65.0% of total-time
Operation ival-mult, time spent: 200.0ms, 17.0% of total-time
Operation ival-sub, time spent: 127.0ms, 11.0% of total-time
Operation ival-div, time spent: 65.0ms, 6.0% of total-time
Operation const, time spent: 14.0ms, 1.0% of total-time
Bogosity

preprocess273.0ms (7.5%)

Algorithm
egg-herbie
Rules
1380×div-sub
1262×fma-def
1074×sub-neg
1054×associate-+l+
796×unsub-neg
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1050-0-(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
80-0-(-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b))
50-0-(+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a))
00-0-x
00-0-(*.f64 (+.f64 t y) a)
00-0-(+.f64 t y)
00-0-b
00-0-(+.f64 (+.f64 x t) y)
00-0-(+.f64 x t)
00-0-(+.f64 x y)
00-0-(*.f64 (+.f64 x y) z)
00-0-y
00-0-(*.f64 y b)
00-0-z
00-0-t
00-0-a
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01752682
15402634
213172610
350652606
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (neg.f64 x) y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 (neg.f64 x) t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x (neg.f64 y)) z) (*.f64 (+.f64 t (neg.f64 y)) a)) (*.f64 (neg.f64 y) b)) (+.f64 (+.f64 x t) (neg.f64 y)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) (neg.f64 z)) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 (neg.f64 t) y) a)) (*.f64 y b)) (+.f64 (+.f64 x (neg.f64 t)) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) (neg.f64 a))) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y (neg.f64 b))) (+.f64 (+.f64 x t) y))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (neg.f64 x) y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 (neg.f64 x) t) y)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x (neg.f64 y)) z) (*.f64 (+.f64 t (neg.f64 y)) a)) (*.f64 (neg.f64 y) b)) (+.f64 (+.f64 x t) (neg.f64 y))))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) (neg.f64 z)) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 (neg.f64 t) y) a)) (*.f64 y b)) (+.f64 (+.f64 x (neg.f64 t)) y)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) (neg.f64 a))) (*.f64 y b)) (+.f64 (+.f64 x t) y)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y (neg.f64 b))) (+.f64 (+.f64 x t) y)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 y x) z) (*.f64 (+.f64 t x) a)) (*.f64 x b)) (+.f64 (+.f64 y t) x))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 z y) x) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 z t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 t y) z) (*.f64 (+.f64 x y) a)) (*.f64 y b)) (+.f64 (+.f64 t x) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 a y) z) (*.f64 (+.f64 t y) x)) (*.f64 y b)) (+.f64 (+.f64 a t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 b y) z) (*.f64 (+.f64 t y) a)) (*.f64 y x)) (+.f64 (+.f64 b t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x z) y) (*.f64 (+.f64 t z) a)) (*.f64 z b)) (+.f64 (+.f64 x t) z))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x t) z) (*.f64 (+.f64 y t) a)) (*.f64 t b)) (+.f64 (+.f64 x y) t))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x a) z) (*.f64 (+.f64 t a) y)) (*.f64 a b)) (+.f64 (+.f64 x t) a))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x b) z) (*.f64 (+.f64 t b) a)) (*.f64 b y)) (+.f64 (+.f64 x t) b))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) t) (*.f64 (+.f64 z y) a)) (*.f64 y b)) (+.f64 (+.f64 x z) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) a) (*.f64 (+.f64 t y) z)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) b) (*.f64 (+.f64 t y) a)) (*.f64 y z)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 a y) t)) (*.f64 y b)) (+.f64 (+.f64 x a) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 b y) a)) (*.f64 y t)) (+.f64 (+.f64 x b) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) b)) (*.f64 y a)) (+.f64 (+.f64 x t) y))
Outputs
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (neg.f64 x) y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 (neg.f64 x) t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 y (neg.f64 x)) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 y (+.f64 t (neg.f64 x))))
(/.f64 (-.f64 (fma.f64 (+.f64 y t) a (*.f64 z (-.f64 y x))) (*.f64 y b)) (+.f64 y (-.f64 t x)))
(/.f64 (-.f64 (fma.f64 z (-.f64 y x) (*.f64 (+.f64 y t) a)) (*.f64 y b)) (-.f64 t (-.f64 x y)))
(/.f64 (-.f64 (*.f64 (+.f64 y t) a) (fma.f64 z (-.f64 x y) (*.f64 y b))) (+.f64 t (-.f64 y x)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x (neg.f64 y)) z) (*.f64 (+.f64 t (neg.f64 y)) a)) (*.f64 (neg.f64 y) b)) (+.f64 (+.f64 x t) (neg.f64 y)))
(/.f64 (+.f64 (fma.f64 (-.f64 x y) z (*.f64 a (-.f64 t y))) (*.f64 y b)) (+.f64 x (-.f64 t y)))
(/.f64 (fma.f64 z (-.f64 x y) (fma.f64 a (-.f64 t y) (*.f64 y b))) (+.f64 x (-.f64 t y)))
(/.f64 (fma.f64 y b (fma.f64 z (-.f64 x y) (*.f64 a (-.f64 t y)))) (+.f64 x (-.f64 t y)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) (neg.f64 z)) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) (neg.f64 z) (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (fma.f64 (+.f64 y t) a (*.f64 (+.f64 x y) (neg.f64 z))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (*.f64 (+.f64 y t) a) (fma.f64 (+.f64 x y) z (*.f64 y b))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 (neg.f64 t) y) a)) (*.f64 y b)) (+.f64 (+.f64 x (neg.f64 t)) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 a (+.f64 y (neg.f64 t)))) (*.f64 y b)) (+.f64 y (-.f64 x t)))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 a (-.f64 y t))) (*.f64 y b)) (+.f64 x (-.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (-.f64 (*.f64 a (-.f64 y t)) (*.f64 y b))) (+.f64 x (-.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) (neg.f64 a))) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) (neg.f64 a))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (neg.f64 (fma.f64 (+.f64 y t) a (*.f64 y b)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y (neg.f64 b))) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 b (neg.f64 y))) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y b))) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 y b (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a))) (+.f64 x (+.f64 y t)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 (neg.f64 x) y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 (neg.f64 x) t) y)))
(/.f64 (neg.f64 (-.f64 (fma.f64 (+.f64 y (neg.f64 x)) z (*.f64 (+.f64 y t) a)) (*.f64 y b))) (+.f64 y (+.f64 t (neg.f64 x))))
(/.f64 (+.f64 (neg.f64 (fma.f64 (+.f64 y t) a (*.f64 z (-.f64 y x)))) (*.f64 y b)) (+.f64 y (-.f64 t x)))
(/.f64 (-.f64 (*.f64 y b) (fma.f64 z (-.f64 y x) (*.f64 (+.f64 y t) a))) (-.f64 t (-.f64 x y)))
(/.f64 (-.f64 (*.f64 y b) (fma.f64 z (-.f64 y x) (*.f64 (+.f64 y t) a))) (+.f64 t (-.f64 y x)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x (neg.f64 y)) z) (*.f64 (+.f64 t (neg.f64 y)) a)) (*.f64 (neg.f64 y) b)) (+.f64 (+.f64 x t) (neg.f64 y))))
(/.f64 (neg.f64 (+.f64 (fma.f64 (-.f64 x y) z (*.f64 a (-.f64 t y))) (*.f64 y b))) (+.f64 x (-.f64 t y)))
(/.f64 (neg.f64 (fma.f64 z (-.f64 x y) (fma.f64 a (-.f64 t y) (*.f64 y b)))) (+.f64 x (-.f64 t y)))
(/.f64 (-.f64 (*.f64 z (-.f64 y x)) (fma.f64 a (-.f64 t y) (*.f64 y b))) (+.f64 x (-.f64 t y)))
(/.f64 (-.f64 (*.f64 a (-.f64 y t)) (fma.f64 z (-.f64 x y) (*.f64 y b))) (+.f64 x (-.f64 t y)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) (neg.f64 z)) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y)))
(/.f64 (neg.f64 (-.f64 (fma.f64 (+.f64 x y) (neg.f64 z) (*.f64 (+.f64 y t) a)) (*.f64 y b))) (+.f64 x (+.f64 y t)))
(/.f64 (+.f64 (neg.f64 (fma.f64 (+.f64 y t) a (*.f64 (+.f64 x y) (neg.f64 z)))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (+.f64 (*.f64 y b) (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) (neg.f64 a)))) (+.f64 x (+.f64 y t)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 (neg.f64 t) y) a)) (*.f64 y b)) (+.f64 (+.f64 x (neg.f64 t)) y)))
(/.f64 (neg.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 a (+.f64 y (neg.f64 t)))) (*.f64 y b))) (+.f64 y (-.f64 x t)))
(/.f64 (+.f64 (neg.f64 (fma.f64 (+.f64 x y) z (*.f64 a (-.f64 y t)))) (*.f64 y b)) (+.f64 x (-.f64 y t)))
(/.f64 (-.f64 (*.f64 y b) (fma.f64 (+.f64 x y) z (*.f64 a (-.f64 y t)))) (+.f64 x (-.f64 y t)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) (neg.f64 a))) (*.f64 y b)) (+.f64 (+.f64 x t) y)))
(/.f64 (neg.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) (neg.f64 a))) (*.f64 y b))) (+.f64 x (+.f64 y t)))
(/.f64 (+.f64 (neg.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) (neg.f64 a)))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (neg.f64 (fma.f64 (+.f64 x y) z (neg.f64 (fma.f64 (+.f64 y t) a (*.f64 y b))))) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 z (-.f64 (neg.f64 y) x) (fma.f64 (+.f64 y t) a (*.f64 y b))) (+.f64 x (+.f64 y t)))
(neg.f64 (/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y (neg.f64 b))) (+.f64 (+.f64 x t) y)))
(/.f64 (neg.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 b (neg.f64 y)))) (+.f64 x (+.f64 y t)))
(/.f64 (neg.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y b)))) (+.f64 x (+.f64 y t)))
(/.f64 (neg.f64 (fma.f64 y b (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 y x) z) (*.f64 (+.f64 t x) a)) (*.f64 x b)) (+.f64 (+.f64 y t) x))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 a (+.f64 x t))) (*.f64 x b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 z y) x) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 z t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 y z) x (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 y (+.f64 z t)))
(/.f64 (-.f64 (fma.f64 (+.f64 y t) a (*.f64 x (+.f64 y z))) (*.f64 y b)) (+.f64 y (+.f64 z t)))
(/.f64 (-.f64 (fma.f64 (+.f64 y t) a (*.f64 x (+.f64 y z))) (*.f64 y b)) (+.f64 t (+.f64 y z)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 t y) z) (*.f64 (+.f64 x y) a)) (*.f64 y b)) (+.f64 (+.f64 t x) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) a (*.f64 z (+.f64 y t))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 a y) z) (*.f64 (+.f64 t y) x)) (*.f64 y b)) (+.f64 (+.f64 a t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 y a) z (*.f64 x (+.f64 y t))) (*.f64 y b)) (+.f64 y (+.f64 t a)))
(/.f64 (-.f64 (fma.f64 x (+.f64 y t) (*.f64 z (+.f64 y a))) (*.f64 y b)) (+.f64 y (+.f64 t a)))
(/.f64 (-.f64 (fma.f64 x (+.f64 y t) (*.f64 z (+.f64 y a))) (*.f64 y b)) (+.f64 (+.f64 y t) a))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 b y) z) (*.f64 (+.f64 t y) a)) (*.f64 y x)) (+.f64 (+.f64 b t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 y b) z (*.f64 (+.f64 y t) a)) (*.f64 x y)) (+.f64 y (+.f64 t b)))
(/.f64 (-.f64 (fma.f64 (+.f64 y t) a (*.f64 z (+.f64 y b))) (*.f64 x y)) (+.f64 y (+.f64 t b)))
(/.f64 (-.f64 (fma.f64 z (+.f64 y b) (*.f64 (+.f64 y t) a)) (*.f64 x y)) (+.f64 (+.f64 y t) b))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x z) y) (*.f64 (+.f64 t z) a)) (*.f64 z b)) (+.f64 (+.f64 x t) z))
(/.f64 (-.f64 (fma.f64 (+.f64 x z) y (*.f64 a (+.f64 z t))) (*.f64 z b)) (+.f64 x (+.f64 z t)))
(/.f64 (fma.f64 y (+.f64 x z) (fma.f64 a (+.f64 z t) (*.f64 b (neg.f64 z)))) (+.f64 x (+.f64 z t)))
(/.f64 (-.f64 (fma.f64 y (+.f64 x z) (*.f64 a (+.f64 z t))) (*.f64 z b)) (+.f64 x (+.f64 z t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x t) z) (*.f64 (+.f64 y t) a)) (*.f64 t b)) (+.f64 (+.f64 x y) t))
(/.f64 (-.f64 (fma.f64 (+.f64 x t) z (*.f64 (+.f64 y t) a)) (*.f64 t b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (fma.f64 z (+.f64 x t) (*.f64 (+.f64 y t) a)) (*.f64 t b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x a) z) (*.f64 (+.f64 t a) y)) (*.f64 a b)) (+.f64 (+.f64 x t) a))
(/.f64 (-.f64 (fma.f64 (+.f64 x a) z (*.f64 y (+.f64 t a))) (*.f64 a b)) (+.f64 x (+.f64 t a)))
(/.f64 (-.f64 (fma.f64 z (+.f64 x a) (*.f64 y (+.f64 t a))) (*.f64 a b)) (+.f64 x (+.f64 t a)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x b) z) (*.f64 (+.f64 t b) a)) (*.f64 b y)) (+.f64 (+.f64 x t) b))
(/.f64 (-.f64 (fma.f64 (+.f64 x b) z (*.f64 a (+.f64 t b))) (*.f64 y b)) (+.f64 x (+.f64 t b)))
(/.f64 (-.f64 (fma.f64 z (+.f64 x b) (*.f64 a (+.f64 t b))) (*.f64 y b)) (+.f64 t (+.f64 x b)))
(/.f64 (-.f64 (fma.f64 z (+.f64 x b) (*.f64 a (+.f64 t b))) (*.f64 y b)) (+.f64 x (+.f64 t b)))
(/.f64 (fma.f64 z (+.f64 x b) (fma.f64 a (+.f64 t b) (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 t b)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) t) (*.f64 (+.f64 z y) a)) (*.f64 y b)) (+.f64 (+.f64 x z) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) t (*.f64 a (+.f64 y z))) (*.f64 y b)) (+.f64 x (+.f64 y z)))
(/.f64 (fma.f64 a (+.f64 y z) (fma.f64 (+.f64 x y) t (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y z)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) a) (*.f64 (+.f64 t y) z)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) a (*.f64 z (+.f64 y t))) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) b) (*.f64 (+.f64 t y) a)) (*.f64 y z)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) b (*.f64 (+.f64 y t) a)) (*.f64 y z)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) b (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 z)))) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) b (-.f64 (*.f64 (+.f64 y t) a) (*.f64 y z))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 a y) t)) (*.f64 y b)) (+.f64 (+.f64 x a) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 t (+.f64 y a))) (*.f64 y b)) (+.f64 x (+.f64 y a)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 b y) a)) (*.f64 y t)) (+.f64 (+.f64 x b) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 a (+.f64 y b))) (*.f64 y t)) (+.f64 y (+.f64 x b)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 a (+.f64 y b) (*.f64 t (neg.f64 y)))) (+.f64 x (+.f64 y b)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) b)) (*.f64 y a)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) b)) (*.f64 y a)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) b (*.f64 y (neg.f64 a)))) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (-.f64 (*.f64 (+.f64 y t) b) (*.f64 y a))) (+.f64 x (+.f64 y t)))
Compiler

Compiled 201 to 50 computations (75.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
Operation ival-add, time spent: 41.0ms, 62.0% of total-time
Operation ival-mult, time spent: 12.0ms, 18.0% of total-time
Operation ival-sub, time spent: 8.0ms, 12.0% of total-time
Operation ival-div, time spent: 4.0ms, 6.0% of total-time
Operation const, time spent: 1.0ms, 2.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 46 to 19 computations (58.7% saved)

prune2.0ms (0.1%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
61.4%
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
61.3%
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
61.2%
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Compiler

Compiled 79 to 44 computations (44.3% saved)

localize640.0ms (17.5%)

Compiler

Compiled 222 to 28 computations (87.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 368.0ms
Operation ival-add, time spent: 159.0ms, 43.0% of total-time
Operation ival-mult, time spent: 58.0ms, 16.0% of total-time
Operation ival-fma, time spent: 57.0ms, 15.0% of total-time
Operation ival-sub, time spent: 47.0ms, 13.0% of total-time
Operation ival-div, time spent: 38.0ms, 10.0% of total-time
Operation ival-neg, time spent: 8.0ms, 2.0% of total-time
Operation const, time spent: 2.0ms, 1.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 6 to 6 computations (0% saved)

prune3.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked033
Done000
Total033
Accuracy
61.4%
Counts
3 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
61.4%
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
61.3%
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
61.2%
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Compiler

Compiled 146 to 71 computations (51.4% saved)

regimes26.0ms (0.7%)

Counts
3 → 1
Calls
Call 1
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
Outputs
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
Calls

7 calls:

4.0ms
a
4.0ms
x
3.0ms
b
3.0ms
t
3.0ms
z
Results
AccuracySegmentsBranch
61.4%1x
61.4%1y
61.4%1z
61.4%1t
61.4%1a
61.4%1b
61.4%1(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Compiler

Compiled 69 to 52 computations (24.6% saved)

regimes22.0ms (0.6%)

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

7 calls:

3.0ms
t
3.0ms
b
3.0ms
z
3.0ms
a
3.0ms
x
Results
AccuracySegmentsBranch
61.3%1a
61.3%1y
61.3%1z
61.3%1t
61.3%1b
61.3%1x
61.3%1(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Compiler

Compiled 69 to 52 computations (24.6% saved)

regimes21.0ms (0.6%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Outputs
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Calls

7 calls:

5.0ms
z
3.0ms
x
3.0ms
t
3.0ms
a
3.0ms
y
Results
AccuracySegmentsBranch
61.2%1y
61.2%1a
61.2%1z
61.2%1t
61.2%1b
61.2%1(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
61.2%1x
Compiler

Compiled 69 to 52 computations (24.6% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Rules
22×+-commutative
14×*-commutative
10×sub-neg
neg-mul-1
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038274
160274
269274
374274
476274
Stop Event
done
saturated
Calls
Call 1
Inputs
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
Outputs
(/.f64 (fma.f64 (+.f64 x y) z (fma.f64 (+.f64 y t) a (*.f64 y (neg.f64 b)))) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (fma.f64 (+.f64 x y) z (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 x (+.f64 y t)))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 t y) a)) (*.f64 y b)) (+.f64 (+.f64 x t) y))
(/.f64 (-.f64 (+.f64 (*.f64 (+.f64 x y) z) (*.f64 (+.f64 y t) a)) (*.f64 y b)) (+.f64 y (+.f64 x t)))
Compiler

Compiled 79 to 44 computations (44.3% saved)

soundness200.0ms (5.5%)

Rules
1380×div-sub
1380×div-sub
1262×fma-def
1262×fma-def
1074×sub-neg
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01752682
15402634
213172610
350652606
01752682
15402634
213172610
350652606
Stop Event
node limit
node limit
Compiler

Compiled 275 to 66 computations (76% saved)

end0.0ms (0%)

preprocess66.0ms (1.8%)

Compiler

Compiled 362 to 136 computations (62.4% saved)

Profiling

Loading profile data...