Octave 3.8, jcobi/2

Time bar (total: 2.4s)

analyze62.0ms (2.5%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%28.1%71.9%0%0%0%0
0%0%28.1%71.9%0%0%0%1
0%0%28.1%71.9%0%0%0%2
25%7%21.1%71.9%0%0%0%3
62.5%17.5%10.5%71.9%0%0%0%4
75%21.1%7%71.9%0%0%0%5
81.3%22.8%5.3%71.9%0%0%0%6
82.8%23.2%4.8%71.9%0%0%0%7
84.4%23.7%4.4%71.9%0%0%0%8
87.5%24.6%3.5%71.9%0%0%0%9
89.5%25.1%3%71.9%0%0%0%10
91.8%25.8%2.3%71.9%0%0%0%11
93.7%26.3%1.8%71.9%0%0%0%12
Compiler

Compiled 43 to 22 computations (48.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.0ms
ival-add: 14.0ms (39.9% of total)
ival-div: 7.0ms (20% of total)
ival-mult: 6.0ms (17.1% of total)
ival->: 4.0ms (11.4% of total)
ival-sub: 2.0ms (5.7% of total)
ival-and: 1.0ms (2.9% of total)
const: 1.0ms (2.9% of total)

sample2.1s (85.1%)

Results
1.3s7012×256valid
243.0ms694×1024valid
116.0ms490×512valid
28.0ms60×2048valid
Precisions
Click to see histograms. Total time spent on operations: 923.0ms
ival-add: 262.0ms (28.4% of total)
ival-div: 221.0ms (23.9% of total)
ival-mult: 202.0ms (21.9% of total)
ival->: 133.0ms (14.4% of total)
ival-sub: 62.0ms (6.7% of total)
ival-and: 22.0ms (2.4% of total)
const: 20.0ms (2.2% of total)
Bogosity

preprocess102.0ms (4.2%)

Algorithm
egg-herbie
Rules
639×associate-*r*
597×associate-*l*
488×distribute-rgt-in
482×distribute-lft-in
267×div-sub
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0821297
12141201
27561141
339771133
Stop Event
node limit
Calls
Call 1
Inputs
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 (neg.f64 alpha) beta) (-.f64 beta (neg.f64 alpha))) (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha (neg.f64 beta)) (-.f64 (neg.f64 beta) alpha)) (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i))) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 (neg.f64 alpha) beta) (-.f64 beta (neg.f64 alpha))) (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha (neg.f64 beta)) (-.f64 (neg.f64 beta) alpha)) (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i))) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 beta alpha) (-.f64 alpha beta)) (+.f64 (+.f64 beta alpha) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 beta alpha) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 i beta) (-.f64 beta i)) (+.f64 (+.f64 i beta) (*.f64 #s(literal 2 binary64) alpha))) (+.f64 (+.f64 (+.f64 i beta) (*.f64 #s(literal 2 binary64) alpha)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha i) (-.f64 i alpha)) (+.f64 (+.f64 alpha i) (*.f64 #s(literal 2 binary64) beta))) (+.f64 (+.f64 (+.f64 alpha i) (*.f64 #s(literal 2 binary64) beta)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
Outputs
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (*.f64 (+.f64 (+.f64 alpha beta) (+.f64 (*.f64 #s(literal 2 binary64) i) #s(literal 2 binary64))) (+.f64 beta (+.f64 alpha (*.f64 #s(literal 2 binary64) i))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (*.f64 (-.f64 beta alpha) (/.f64 (+.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i (+.f64 alpha beta)))) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal 2 binary64) i beta))) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta)))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (/.f64 (-.f64 beta alpha) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (*.f64 (+.f64 (+.f64 alpha beta) (+.f64 (*.f64 #s(literal 2 binary64) i) #s(literal 2 binary64))) (+.f64 beta (+.f64 alpha (*.f64 #s(literal 2 binary64) i))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (*.f64 (-.f64 beta alpha) (/.f64 (+.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i (+.f64 alpha beta)))) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal 2 binary64) i beta))) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta)))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (/.f64 (-.f64 beta alpha) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 (neg.f64 alpha) beta) (-.f64 beta (neg.f64 alpha))) (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 beta alpha) (-.f64 beta (neg.f64 alpha))) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 beta alpha))) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 beta alpha))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 beta alpha) (+.f64 (-.f64 beta alpha) (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64)))) (/.f64 (+.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i (-.f64 beta alpha))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (/.f64 (-.f64 beta alpha) (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha)) (+.f64 #s(literal 2 binary64) (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha) (+.f64 beta (-.f64 (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64)) alpha)))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha (neg.f64 beta)) (-.f64 (neg.f64 beta) alpha)) (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 alpha beta) (-.f64 (neg.f64 beta) alpha)) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 alpha beta))) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 alpha beta))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 alpha beta) (/.f64 (-.f64 (neg.f64 beta) alpha) (*.f64 (fma.f64 #s(literal 2 binary64) i (-.f64 alpha beta)) (+.f64 (-.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (-.f64 alpha beta) (/.f64 (-.f64 (neg.f64 beta) alpha) (*.f64 (-.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 #s(literal 2 binary64) (-.f64 alpha (fma.f64 i #s(literal -2 binary64) beta))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (-.f64 alpha beta) (/.f64 (+.f64 alpha beta) (*.f64 (+.f64 alpha (-.f64 #s(literal 2 binary64) (fma.f64 i #s(literal -2 binary64) beta))) (-.f64 (fma.f64 i #s(literal -2 binary64) beta) alpha))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i))) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (*.f64 (+.f64 (+.f64 alpha beta) (+.f64 (*.f64 #s(literal 2 binary64) (neg.f64 i)) #s(literal 2 binary64))) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (+.f64 beta (*.f64 i #s(literal -2 binary64)))) (+.f64 alpha (+.f64 beta (+.f64 #s(literal 2 binary64) (*.f64 i #s(literal -2 binary64))))))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 i #s(literal -2 binary64) beta))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 alpha (+.f64 beta (fma.f64 i #s(literal -2 binary64) #s(literal 2 binary64)))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 (neg.f64 alpha) beta) (-.f64 beta (neg.f64 alpha))) (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 (neg.f64 alpha) beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 beta alpha) (-.f64 beta (neg.f64 alpha))) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 beta alpha))) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 beta alpha))))) #s(literal -2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 beta alpha) (+.f64 (-.f64 beta alpha) (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64)))) (/.f64 (+.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i (-.f64 beta alpha))))) #s(literal -2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (/.f64 (-.f64 beta alpha) (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha)) (+.f64 #s(literal 2 binary64) (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha))) #s(literal 1 binary64)) #s(literal -2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (-.f64 (fma.f64 #s(literal 2 binary64) i beta) alpha) (+.f64 beta (-.f64 (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64)) alpha)))) #s(literal 1 binary64)) #s(literal -2 binary64))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha (neg.f64 beta)) (-.f64 (neg.f64 beta) alpha)) (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha (neg.f64 beta)) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (-.f64 alpha beta) (-.f64 (neg.f64 beta) alpha)) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 alpha beta))) (+.f64 (*.f64 #s(literal 2 binary64) i) (-.f64 alpha beta))))) #s(literal -2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 alpha beta) (/.f64 (-.f64 (neg.f64 beta) alpha) (*.f64 (fma.f64 #s(literal 2 binary64) i (-.f64 alpha beta)) (+.f64 (-.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))))) #s(literal -2 binary64))
(/.f64 (fma.f64 (-.f64 alpha beta) (/.f64 (-.f64 (neg.f64 beta) alpha) (*.f64 (-.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 #s(literal 2 binary64) (-.f64 alpha (fma.f64 i #s(literal -2 binary64) beta))))) #s(literal 1 binary64)) #s(literal -2 binary64))
(/.f64 (fma.f64 (-.f64 alpha beta) (/.f64 (+.f64 alpha beta) (*.f64 (+.f64 alpha (-.f64 #s(literal 2 binary64) (fma.f64 i #s(literal -2 binary64) beta))) (-.f64 (fma.f64 i #s(literal -2 binary64) beta) alpha))) #s(literal 1 binary64)) #s(literal -2 binary64))
(neg.f64 (/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i))) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (*.f64 (+.f64 (+.f64 alpha beta) (+.f64 (*.f64 #s(literal 2 binary64) (neg.f64 i)) #s(literal 2 binary64))) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) (neg.f64 i)))))) #s(literal -2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (+.f64 beta (*.f64 i #s(literal -2 binary64)))) (+.f64 alpha (+.f64 beta (+.f64 #s(literal 2 binary64) (*.f64 i #s(literal -2 binary64))))))))) #s(literal -2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 i #s(literal -2 binary64) beta))))) #s(literal 1 binary64)) #s(literal -2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 beta alpha) (*.f64 (+.f64 alpha (fma.f64 i #s(literal -2 binary64) beta)) (+.f64 alpha (+.f64 beta (fma.f64 i #s(literal -2 binary64) #s(literal 2 binary64)))))) #s(literal 1 binary64)) #s(literal -2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 beta alpha) (-.f64 alpha beta)) (+.f64 (+.f64 beta alpha) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 beta alpha) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 alpha beta)) (*.f64 (+.f64 (+.f64 alpha beta) (+.f64 (*.f64 #s(literal 2 binary64) i) #s(literal 2 binary64))) (+.f64 beta (+.f64 alpha (*.f64 #s(literal 2 binary64) i)))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (+.f64 alpha beta) (/.f64 (/.f64 (-.f64 alpha beta) (fma.f64 #s(literal 2 binary64) i (+.f64 alpha beta))) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha beta) (/.f64 (-.f64 alpha beta) (*.f64 (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 #s(literal 2 binary64) i beta))) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta)))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (/.f64 (+.f64 alpha beta) (+.f64 alpha (+.f64 beta (fma.f64 #s(literal 2 binary64) i #s(literal 2 binary64))))) (/.f64 (-.f64 alpha beta) (+.f64 alpha (fma.f64 #s(literal 2 binary64) i beta))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 i beta) (-.f64 beta i)) (+.f64 (+.f64 i beta) (*.f64 #s(literal 2 binary64) alpha))) (+.f64 (+.f64 (+.f64 i beta) (*.f64 #s(literal 2 binary64) alpha)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 beta i) (-.f64 beta i)) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 i (+.f64 beta (*.f64 alpha #s(literal 2 binary64))))) (+.f64 i (+.f64 beta (*.f64 alpha #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 beta i) (/.f64 (-.f64 beta i) (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i)))) (+.f64 #s(literal 2 binary64) (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 beta i) (/.f64 (-.f64 beta i) (*.f64 (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i)) (+.f64 #s(literal 2 binary64) (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (/.f64 (-.f64 beta i) (+.f64 #s(literal 2 binary64) (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i)))) (/.f64 (+.f64 beta i) (fma.f64 alpha #s(literal 2 binary64) (+.f64 beta i))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha i) (-.f64 i alpha)) (+.f64 (+.f64 alpha i) (*.f64 #s(literal 2 binary64) beta))) (+.f64 (+.f64 (+.f64 alpha i) (*.f64 #s(literal 2 binary64) beta)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 alpha i) (-.f64 i alpha)) (*.f64 (+.f64 #s(literal 2 binary64) (+.f64 alpha (+.f64 i (*.f64 beta #s(literal 2 binary64))))) (+.f64 alpha (+.f64 i (*.f64 beta #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1 binary64) (*.f64 (+.f64 alpha i) (/.f64 (/.f64 (-.f64 i alpha) (fma.f64 beta #s(literal 2 binary64) (+.f64 alpha i))) (+.f64 alpha (+.f64 i (fma.f64 beta #s(literal 2 binary64) #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha i) (/.f64 (-.f64 i alpha) (*.f64 (+.f64 alpha (fma.f64 beta #s(literal 2 binary64) i)) (+.f64 alpha (+.f64 i (fma.f64 beta #s(literal 2 binary64) #s(literal 2 binary64)))))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (fma.f64 (+.f64 alpha i) (/.f64 (-.f64 i alpha) (*.f64 (+.f64 alpha (fma.f64 beta #s(literal 2 binary64) i)) (+.f64 alpha (+.f64 #s(literal 2 binary64) (fma.f64 beta #s(literal 2 binary64) i))))) #s(literal 1 binary64)) #s(literal 2 binary64))

explain172.0ms (7.1%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
940-1(-1.8264548572483155e-163 4.073873941633229e-156 4.650813474777826e-211)(/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))
570-0-(+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64))
00-0-(-.f64 beta alpha)
00-0-(*.f64 #s(literal 2 binary64) i)
00-0-(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
00-0-(+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))
00-0-#s(literal 2 binary64)
00-0-i
00-0-(+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))
00-0-(*.f64 (+.f64 alpha beta) (-.f64 beta alpha))
00-0-alpha
00-0-#s(literal 1 binary64)
00-0-(+.f64 alpha beta)
00-0-beta
00-0-(/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64)))
Results
65.0ms426×256valid
23.0ms32×512valid
19.0ms52×1024valid
1.0ms2048valid
Compiler

Compiled 306 to 47 computations (84.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 42.0ms
ival-div: 14.0ms (33.4% of total)
ival-add: 14.0ms (33.4% of total)
ival-mult: 9.0ms (21.5% of total)
ival-sub: 4.0ms (9.5% of total)
const: 1.0ms (2.4% of total)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
60.1%
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
Compiler

Compiled 64 to 30 computations (53.1% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative
1-exp
*-commutative
sub-neg
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
021115
135115
239115
341115
442115
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
Outputs
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)) #s(literal 2 binary64))) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (+.f64 (/.f64 (/.f64 (*.f64 (+.f64 alpha beta) (-.f64 beta alpha)) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i))) (+.f64 #s(literal 2 binary64) (+.f64 (+.f64 alpha beta) (*.f64 #s(literal 2 binary64) i)))) #s(literal 1 binary64)) #s(literal 2 binary64))

soundness0.0ms (0%)

Stop Event
fuel
Compiler

Compiled 32 to 15 computations (53.1% saved)

preprocess19.0ms (0.8%)

Compiler

Compiled 128 to 60 computations (53.1% saved)

end0.0ms (0%)

Profiling

Loading profile data...