Details

Time bar (total: 1.7s)

analyze2.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%50%0%0%50%0%2
50%25%25%0%0%50%0%3
66.7%25%12.5%0%0%62.5%0%4
80%25%6.2%0%0%68.7%0%5
88.9%25%3.1%0%0%71.8%0%6
94.1%25%1.6%0%0%73.4%0%7
97%25%0.8%0%0%74.2%0%8
98.5%25%0.4%0%0%74.6%0%9
99.2%25%0.2%0%0%74.8%0%10
99.6%25%0.1%0%0%74.9%0%11
99.8%25%0%0%0%74.9%0%12
Compiler

Compiled 8 to 5 computations (37.5% saved)

sample1.1s (63%)

Results
1.1s8256×body256valid
1.0ms18×body256invalid
Bogosity

preprocess238.0ms (13.9%)

Algorithm
egg-herbie
Rules
2524×fma-neg
1468×fma-def
1306×associate-+r+
864×associate--r-
850×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
1919
21419
32219
43119
54819
610019
714419
821719
948719
10137919
11287719
12453219
13497419
14516219
15521719
16522719
17522719
18633919
19634719
20639919
21639919
22753319
011
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Outputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Compiler

Compiled 8 to 5 computations (37.5% saved)

simplify233.0ms (13.6%)

Algorithm
egg-herbie
Rules
2524×fma-neg
1468×fma-def
1306×associate-+r+
864×associate--r-
850×associate-+l+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0719
1919
21419
32219
43119
54819
610019
714419
821719
948719
10137919
11287719
12453219
13497419
14516219
15521719
16522719
17522719
18633919
19634719
20639919
21639919
22753319
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Outputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))

eval0.0ms (0%)

Compiler

Compiled 7 to 4 computations (42.9% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
99.5%
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
99.5%
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Compiler

Compiled 7 to 4 computations (42.9% saved)

localize6.0ms (0.4%)

Local error

Found 2 expressions with local error:

NewErrorProgram
99.9%
(log.f64 (log.f64 x))
99.5%
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
Compiler

Compiled 13 to 4 computations (69.2% saved)

series89.0ms (5.2%)

Counts
2 → 16
Calls

6 calls:

TimeVariablePointExpression
37.0ms
x
@0
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
36.0ms
x
@-inf
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
16.0ms
x
@inf
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
0.0ms
x
@-inf
(log.f64 (log.f64 x))
0.0ms
x
@0
(log.f64 (log.f64 x))

rewrite65.0ms (3.8%)

Algorithm
batch-egg-rewrite
Rules
1566×add-sqr-sqrt
1550×*-un-lft-identity
1448×add-cube-cbrt
1430×add-cbrt-cube
1416×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0724
114324
2190124
Stop Event
node limit
Calls
Call 1
Inputs
(-.f64 (log.f64 x) (log.f64 (log.f64 x)))
(log.f64 (log.f64 x))
Outputs
((((x +.f64 (log.f64 x) (neg.f64 (log.f64 (log.f64 x)))))) (((x +.f64 (log.f64 x) (*.f64 (neg.f64 (log.f64 (log.f64 x))) 1)))) (((x +.f64 (log.f64 (/.f64 x (log.f64 x))) (fma.f64 (neg.f64 (log.f64 (log.f64 x))) 1 (log.f64 (log.f64 x)))))) (((x +.f64 (log.f64 (/.f64 x (log.f64 x))) (fma.f64 (neg.f64 (sqrt.f64 (log.f64 (log.f64 x)))) (sqrt.f64 (log.f64 (log.f64 x))) (log.f64 (log.f64 x)))))) (((x +.f64 (log.f64 (/.f64 x (log.f64 x))) (fma.f64 (neg.f64 (cbrt.f64 (log.f64 (log.f64 x)))) (pow.f64 (cbrt.f64 (log.f64 (log.f64 x))) 2) (log.f64 (log.f64 x)))))) (((x +.f64 (neg.f64 (log.f64 (log.f64 x))) (log.f64 x)))) (((x *.f64 (log.f64 (/.f64 x (log.f64 x))) 1))) (((x *.f64 1 (log.f64 (/.f64 x (log.f64 x)))))) (((x *.f64 (sqrt.f64 (log.f64 (/.f64 x (log.f64 x)))) (sqrt.f64 (log.f64 (/.f64 x (log.f64 x))))))) (((x *.f64 (cbrt.f64 (log.f64 (/.f64 x (log.f64 x)))) (pow.f64 (cbrt.f64 (log.f64 (/.f64 x (log.f64 x)))) 2)))) (((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 x (log.f64 x)))) 2) (cbrt.f64 (log.f64 (/.f64 x (log.f64 x))))))) (((x *.f64 (-.f64 (pow.f64 (log.f64 x) 2) (pow.f64 (log.f64 (log.f64 x)) 2)) (/.f64 1 (log.f64 (*.f64 x (log.f64 x))))))) (((x *.f64 (-.f64 (pow.f64 (log.f64 x) 3) (pow.f64 (log.f64 (log.f64 x)) 3)) (/.f64 1 (+.f64 (pow.f64 (log.f64 x) 2) (*.f64 (log.f64 (log.f64 x)) (log.f64 (*.f64 x (log.f64 x))))))))) (((x *.f64 (+.f64 (sqrt.f64 (log.f64 x)) (sqrt.f64 (log.f64 (log.f64 x)))) (-.f64 (sqrt.f64 (log.f64 x)) (sqrt.f64 (log.f64 (log.f64 x))))))) (((x /.f64 1 (/.f64 (log.f64 (*.f64 x (log.f64 x))) (-.f64 (pow.f64 (log.f64 x) 2) (pow.f64 (log.f64 (log.f64 x)) 2)))))) (((x /.f64 1 (/.f64 (+.f64 (pow.f64 (log.f64 x) 2) (*.f64 (log.f64 (log.f64 x)) (log.f64 (*.f64 x (log.f64 x))))) (-.f64 (pow.f64 (log.f64 x) 3) (pow.f64 (log.f64 (log.f64 x)) 3)))))) (((x /.f64 (-.f64 (pow.f64 (log.f64 x) 2) (pow.f64 (log.f64 (log.f64 x)) 2)) (log.f64 (*.f64 x (log.f64 x)))))) (((x /.f64 (-.f64 (pow.f64 (log.f64 x) 3) (pow.f64 (log.f64 (log.f64 x)) 3)) (+.f64 (pow.f64 (log.f64 x) 2) (*.f64 (log.f64 (log.f64 x)) (log.f64 (*.f64 x (log.f64 x)))))))) (((x /.f64 (-.f64 (pow.f64 (log.f64 x) 2) (*.f64 (neg.f64 (log.f64 (log.f64 x))) (neg.f64 (log.f64 (log.f64 x))))) (-.f64 (log.f64 x) (neg.f64 (log.f64 (log.f64 x))))))) (((x /.f64 (+.f64 (pow.f64 (log.f64 x) 3) (pow.f64 (neg.f64 (log.f64 (log.f64 x))) 3)) (+.f64 (pow.f64 (log.f64 x) 2) (-.f64 (*.f64 (neg.f64 (log.f64 (log.f64 x))) (neg.f64 (log.f64 (log.f64 x)))) (*.f64 (log.f64 x) (neg.f64 (log.f64 (log.f64 x))))))))) (((x /.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 x) 2) (pow.f64 (log.f64 (log.f64 x)) 2))) (neg.f64 (log.f64 (*.f64 x (log.f64 x))))))) (((x /.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 x) 3) (pow.f64 (log.f64 (log.f64 x)) 3))) (neg.f64 (+.f64 (pow.f64 (log.f64 x) 2) (*.f64 (log.f64 (log.f64 x)) (log.f64 (*.f64 x (log.f64 x))))))))) (((x pow.f64 (log.f64 (/.f64 x (log.f64 x))) 1))) (((x pow.f64 (sqrt.f64 (log.f64 (/.f64 x (log.f64 x)))) 2))) (((x pow.f64 (cbrt.f64 (log.f64 (/.f64 x (log.f64 x)))) 3))) (((x pow.f64 (pow.f64 (log.f64 (/.f64 x (log.f64 x))) 3) 1/3))) (((x sqrt.f64 (pow.f64 (log.f64 (/.f64 x (log.f64 x))) 2)))) (((x log.f64 (/.f64 x (log.f64 x))))) (((x cbrt.f64 (pow.f64 (log.f64 (/.f64 x (log.f64 x))) 3)))) (((x expm1.f64 (log1p.f64 (log.f64 (/.f64 x (log.f64 x))))))) (((x exp.f64 (log.f64 (log.f64 (/.f64 x (log.f64 x))))))) (((x exp.f64 (*.f64 (log.f64 (log.f64 (/.f64 x (log.f64 x)))) 1)))) (((x log1p.f64 (-.f64 (/.f64 x (log.f64 x)) 1)))) (((x fma.f64 1 (log.f64 x) (neg.f64 (log.f64 (log.f64 x)))))) (((x fma.f64 (sqrt.f64 (log.f64 x)) (sqrt.f64 (log.f64 x)) (neg.f64 (log.f64 (log.f64 x)))))) (((x fma.f64 (pow.f64 (cbrt.f64 (log.f64 x)) 2) (cbrt.f64 (log.f64 x)) (neg.f64 (log.f64 (log.f64 x)))))))
((((x +.f64 0 (log.f64 (log.f64 x))))) (((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (log.f64 x)) 2)) (log.f64 (cbrt.f64 (log.f64 x)))))) (((x +.f64 (log.f64 (sqrt.f64 (log.f64 x))) (log.f64 (sqrt.f64 (log.f64 x)))))) (((x -.f64 (+.f64 1 (log.f64 (log.f64 x))) 1))) (((x *.f64 (log.f64 (log.f64 x)) 1))) (((x *.f64 1 (log.f64 (log.f64 x))))) (((x *.f64 (sqrt.f64 (log.f64 (log.f64 x))) (sqrt.f64 (log.f64 (log.f64 x)))))) (((x *.f64 (cbrt.f64 (log.f64 (log.f64 x))) (pow.f64 (cbrt.f64 (log.f64 (log.f64 x))) 2)))) (((x *.f64 (pow.f64 (cbrt.f64 (log.f64 (log.f64 x))) 2) (cbrt.f64 (log.f64 (log.f64 x)))))) (((x pow.f64 (log.f64 (log.f64 x)) 1))) (((x pow.f64 (sqrt.f64 (log.f64 (log.f64 x))) 2))) (((x pow.f64 (cbrt.f64 (log.f64 (log.f64 x))) 3))) (((x pow.f64 (pow.f64 (log.f64 (log.f64 x)) 3) 1/3))) (((x sqrt.f64 (pow.f64 (log.f64 (log.f64 x)) 2)))) (((x cbrt.f64 (pow.f64 (log.f64 (log.f64 x)) 3)))) (((x expm1.f64 (log1p.f64 (log.f64 (log.f64 x)))))) (((x exp.f64 (log.f64 (log.f64 (log.f64 x)))))) (((x exp.f64 (*.f64 (log.f64 (log.f64 (log.f64 x))) 1)))) (((x log1p.f64 (-.f64 (log.f64 x) 1)))))

end0.0ms (0%)

Profiling

Loading profile data...