fma_test1

Time bar (total: 9.6s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
100%0%0%100%0%0%0%1
Compiler

Compiled 21 to 12 computations (42.9% saved)

sample9.2s (95.3%)

Results
1.0s8255×1valid-sollya
4.8s8255×1valid-rival
Bogosity

preprocess296.0ms (3.1%)

Algorithm
egg-herbie
Rules
727×unsub-neg
573×sub-neg
439×distribute-rgt-neg-in
435×distribute-neg-in
379×distribute-lft-neg-in
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
024256
178196
2274176
31016168
43688148
5587076
6700676
7755176
8776576
9797176
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))))
(neg.f64 (+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))))))
Outputs
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2500000000000000 binary64) t))
(fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal -1/2500000000000000 binary64) t #s(literal -1 binary64)))
(fma.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) (+.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) #s(literal 2 binary64)) (*.f64 t #s(literal -1/2500000000000000 binary64)))
(*.f64 t (+.f64 #s(literal -1/5000000000000000 binary64) (+.f64 #s(literal 1/2500000000000000 binary64) (+.f64 #s(literal -1/5000000000000000 binary64) (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64))))))
(*.f64 t (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64)))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2500000000000000 binary64) t))
(fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal -1/2500000000000000 binary64) t #s(literal -1 binary64)))
(fma.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) (+.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) #s(literal 2 binary64)) (*.f64 t #s(literal -1/2500000000000000 binary64)))
(*.f64 t (+.f64 #s(literal -1/5000000000000000 binary64) (+.f64 #s(literal 1/2500000000000000 binary64) (+.f64 #s(literal -1/5000000000000000 binary64) (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64))))))
(*.f64 t (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64)))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))))
(fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) #s(literal -1 binary64)) (*.f64 #s(literal -1/2500000000000000 binary64) t))
(fma.f64 (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal -1/2500000000000000 binary64) t #s(literal -1 binary64)))
(fma.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) (+.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) #s(literal 2 binary64)) (*.f64 t #s(literal -1/2500000000000000 binary64)))
(*.f64 t (+.f64 #s(literal -1/5000000000000000 binary64) (+.f64 #s(literal 1/2500000000000000 binary64) (+.f64 #s(literal -1/5000000000000000 binary64) (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64))))))
(*.f64 t (*.f64 t #s(literal 1/25000000000000000000000000000000 binary64)))
(neg.f64 (+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 (neg.f64 t) #s(literal 1/5000000000000000 binary64))))))
(neg.f64 (fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/5000000000000000 binary64) (neg.f64 t))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/5000000000000000 binary64) (neg.f64 t))) (+.f64 #s(literal -1 binary64) (*.f64 #s(literal -2 binary64) (*.f64 #s(literal 1/5000000000000000 binary64) (neg.f64 t))))))
(neg.f64 (+.f64 (fma.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal -1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal -1/5000000000000000 binary64))) #s(literal -1 binary64)) (*.f64 t #s(literal 1/2500000000000000 binary64))))
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal -1/2500000000000000 binary64))) (*.f64 (fma.f64 t #s(literal -1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal -1/5000000000000000 binary64) #s(literal 1 binary64))))
(fma.f64 (fma.f64 t #s(literal -1/5000000000000000 binary64) #s(literal 1 binary64)) (fma.f64 t #s(literal 1/5000000000000000 binary64) #s(literal -1 binary64)) (fma.f64 t #s(literal -1/2500000000000000 binary64) #s(literal 1 binary64)))
(*.f64 t (+.f64 (+.f64 (+.f64 #s(literal 1/5000000000000000 binary64) (*.f64 t #s(literal -1/25000000000000000000000000000000 binary64))) #s(literal -1/2500000000000000 binary64)) #s(literal 1/5000000000000000 binary64)))
(*.f64 t (*.f64 t #s(literal -1/25000000000000000000000000000000 binary64)))
Symmetry

(abs t)

Compiler

Compiled 20 to 11 computations (45% saved)

eval0.0ms (0%)

Compiler

Compiled 1 to 1 computations (0% saved)

prune4.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
3.4%
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
Compiler

Compiled 40 to 22 computations (45% saved)

simplify7.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
01564
13064
24064
35264
46064
56564
66764
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
Outputs
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 #s(literal 2 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64))) (+.f64 #s(literal 1 binary64) (*.f64 t #s(literal 1/5000000000000000 binary64)))) (-.f64 #s(literal -1 binary64) (*.f64 (*.f64 t #s(literal 1/5000000000000000 binary64)) #s(literal 2 binary64))))

soundness1.0ms (0%)

Stop Event
fuel
Compiler

Compiled 20 to 11 computations (45% saved)

preprocess147.0ms (1.5%)

Remove

(abs t)

Compiler

Compiled 198 to 108 computations (45.5% saved)

end0.0ms (0%)

Profiling

Loading profile data...