FastMath test2

Time bar (total: 2.4s)

analyze13.0ms (0.5%)

Memory
3.9MiB live, 3.9MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 27 to 21 computations (22.2% saved)

sample2.2s (91.5%)

Memory
-1.9MiB live, 700.2MiB allocated
Samples
506.0ms8 129×0valid-sollya
392.0ms8 129×0valid-baseline
361.0ms8 129×0valid-rival
14.0ms63×2valid-baseline
10.0ms64×1valid-baseline
8.0ms63×2valid-rival
5.0ms64×1valid-rival
4.0ms63×2valid-sollya
4.0ms64×1valid-sollya
0ms101×0sollya-faithful-roduning
0ms8 155×0sollya-correct-roduning
Bogosity

preprocess169.0ms (6.9%)

Memory
5.0MiB live, 20.2MiB allocated
Algorithm
egg-herbie
Rules
1 024×fmm-def
561×fma-define
131×unsub-neg
122×cancel-sign-sub-inv
114×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
032258
193183
2291141
3870133
42080133
53117133
63822133
73852133
83852133
94034133
104034133
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
(+.f64 (+.f64 (*.f64 (neg.f64 d1) #s(literal 10 binary64)) (*.f64 (neg.f64 d1) d2)) (*.f64 (neg.f64 d1) #s(literal 20 binary64)))
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 (neg.f64 d2))) (*.f64 d1 #s(literal 20 binary64)))
(neg.f64 (+.f64 (+.f64 (*.f64 (neg.f64 d1) #s(literal 10 binary64)) (*.f64 (neg.f64 d1) d2)) (*.f64 (neg.f64 d1) #s(literal 20 binary64))))
(neg.f64 (+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 (neg.f64 d2))) (*.f64 d1 #s(literal 20 binary64))))
(+.f64 (+.f64 (*.f64 d2 #s(literal 10 binary64)) (*.f64 d2 d1)) (*.f64 d2 #s(literal 20 binary64)))
Outputs
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
(+.f64 (*.f64 d1 (+.f64 #s(literal 10 binary64) d2)) (*.f64 d1 #s(literal 20 binary64)))
(*.f64 d1 (+.f64 #s(literal 20 binary64) (+.f64 #s(literal 10 binary64) d2)))
(*.f64 d1 (+.f64 d2 #s(literal 30 binary64)))
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
(+.f64 (*.f64 d1 (+.f64 #s(literal 10 binary64) d2)) (*.f64 d1 #s(literal 20 binary64)))
(*.f64 d1 (+.f64 #s(literal 20 binary64) (+.f64 #s(literal 10 binary64) d2)))
(*.f64 d1 (+.f64 d2 #s(literal 30 binary64)))
(+.f64 (+.f64 (*.f64 (neg.f64 d1) #s(literal 10 binary64)) (*.f64 (neg.f64 d1) d2)) (*.f64 (neg.f64 d1) #s(literal 20 binary64)))
(+.f64 (*.f64 (neg.f64 d1) (+.f64 #s(literal 10 binary64) d2)) (*.f64 #s(literal 20 binary64) (neg.f64 d1)))
(*.f64 (neg.f64 d1) (+.f64 #s(literal 20 binary64) (+.f64 #s(literal 10 binary64) d2)))
(neg.f64 (*.f64 d1 (+.f64 d2 #s(literal 30 binary64))))
(*.f64 d1 (-.f64 #s(literal -30 binary64) d2))
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 (neg.f64 d2))) (*.f64 d1 #s(literal 20 binary64)))
(+.f64 (*.f64 d1 #s(literal 20 binary64)) (*.f64 d1 (+.f64 #s(literal 10 binary64) (neg.f64 d2))))
(*.f64 d1 (+.f64 #s(literal 20 binary64) (-.f64 #s(literal 10 binary64) d2)))
(*.f64 d1 (-.f64 #s(literal 30 binary64) d2))
(neg.f64 (+.f64 (+.f64 (*.f64 (neg.f64 d1) #s(literal 10 binary64)) (*.f64 (neg.f64 d1) d2)) (*.f64 (neg.f64 d1) #s(literal 20 binary64))))
(+.f64 (*.f64 d1 (+.f64 #s(literal 10 binary64) d2)) (*.f64 d1 #s(literal 20 binary64)))
(*.f64 d1 (+.f64 #s(literal 20 binary64) (+.f64 #s(literal 10 binary64) d2)))
(*.f64 d1 (+.f64 d2 #s(literal 30 binary64)))
(neg.f64 (+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 (neg.f64 d2))) (*.f64 d1 #s(literal 20 binary64))))
(neg.f64 (+.f64 (*.f64 d1 #s(literal 20 binary64)) (*.f64 d1 (+.f64 #s(literal 10 binary64) (neg.f64 d2)))))
(neg.f64 (*.f64 d1 (+.f64 #s(literal 20 binary64) (-.f64 #s(literal 10 binary64) d2))))
(*.f64 d1 (neg.f64 (-.f64 #s(literal 30 binary64) d2)))
(*.f64 d1 (+.f64 d2 #s(literal -30 binary64)))
(+.f64 (+.f64 (*.f64 d2 #s(literal 10 binary64)) (*.f64 d2 d1)) (*.f64 d2 #s(literal 20 binary64)))
(+.f64 (*.f64 d2 (+.f64 #s(literal 10 binary64) d1)) (*.f64 d2 #s(literal 20 binary64)))
(*.f64 d2 (+.f64 (+.f64 d1 #s(literal 10 binary64)) #s(literal 20 binary64)))
(*.f64 d2 (+.f64 d1 #s(literal 30 binary64)))
Symmetry

(negabs d1)

Compiler

Compiled 13 to 9 computations (30.8% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
Compiler

Compiled 26 to 18 computations (30.8% saved)

simplify2.0ms (0.1%)

Memory
0.3MiB live, 0.3MiB allocated
Algorithm
egg-herbie
Rules
*-commutative
+-commutative
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01443
11943
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))
Outputs
(+.f64 (+.f64 (*.f64 d1 #s(literal 10 binary64)) (*.f64 d1 d2)) (*.f64 d1 #s(literal 20 binary64)))

soundness0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Stop Event
fuel
Compiler

Compiled 13 to 9 computations (30.8% saved)

preprocess24.0ms (1%)

Memory
1.2MiB live, 32.7MiB allocated
Remove

(negabs d1)

Compiler

Compiled 118 to 82 computations (30.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...