Details

Time bar (total: 2.0s)

analyze84.0ms (4.3%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.9%0.1%0
0%99.9%0.1%1
0%99.9%0.1%2
0%99.9%0.1%3
25%74.9%0.1%4
37.5%62.4%0.1%5
56.2%43.7%0.1%6
65.6%34.3%0.1%7
76.5%23.4%0.1%8
82%18%0.1%9
87.8%12.1%0.1%10
90.7%9.2%0.1%11
93.8%6.1%0.1%12
95.3%4.6%0.1%13
96.8%3.1%0.1%14
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample777.0ms (39.6%)

Results
761.0ms8256×body128valid
Compiler

Compiled 18 to 14 computations (22.2% saved)

preprocess14.0ms (0.7%)

Algorithm
egg-herbie
Rules
associate-/r*_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01018
11618
22018
022
Stop Event
saturated
saturated
Compiler

Compiled 8 to 6 computations (25% saved)

simplify17.0ms (0.9%)

Algorithm
egg-herbie
Rules
associate-/r*_binary64
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
1109
2129
Stop Event
saturated
Counts
1 → 1

prune2.0ms (0.1%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
15.7b
Counts
2 → 1
Alt Table
StatusErrorProgram
15.7b
(cbrt.f64 (/.f64 g (*.f64 2 a)))
Compiler

Compiled 24 to 18 computations (25% saved)

localize4.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
15.4b
(cbrt.f64 (/.f64 g (*.f64 2 a)))

series32.0ms (1.6%)

Counts
1 → 0
Calls

6 calls:

9.0ms
(cbrt.f64 (/.f64 g (*.f64 2 a)))
a
-inf
9.0ms
(cbrt.f64 (/.f64 g (*.f64 2 a)))
g
-inf
4.0ms
(cbrt.f64 (/.f64 g (*.f64 2 a)))
a
0
3.0ms
(cbrt.f64 (/.f64 g (*.f64 2 a)))
g
0
3.0ms
(cbrt.f64 (/.f64 g (*.f64 2 a)))
a
inf

rewrite37.0ms (1.9%)

Algorithm
batch-egg-rewrite
Rules
695×log1p-expm1-u_binary64
695×expm1-log1p-u_binary64
129×expm1-udef_binary64
129×log1p-udef_binary64
115×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
079
11469
218719
Stop Event
node limit
Counts
1 → 30

simplify6.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
30 → 30

prune26.0ms (1.3%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New23730
Fresh000
Picked011
Done000
Total23831
Error
0.2b
Counts
31 → 8
Alt Table
StatusErrorProgram
15.7b
(cbrt.f64 (/.f64 g (*.f64 2 a)))
0.9b
(/.f64 (cbrt.f64 g) (cbrt.f64 (*.f64 2 a)))
16.3b
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 1/2 a)))) 3)
0.8b
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (cbrt.f64 a))
0.8b
(/.f64 1 (/.f64 (cbrt.f64 (*.f64 2 a)) (cbrt.f64 g)))
15.4b
(/.f64 1 (cbrt.f64 (*.f64 2 (/.f64 a g))))
0.8b
(*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 (*.f64 2 a))))
0.8b
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
Compiler

Compiled 445 to 340 computations (23.6% saved)

localize6.0ms (0.3%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.3b
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (cbrt.f64 a))
0.6b
(cbrt.f64 (*.f64 g 1/2))
0.6b
(cbrt.f64 a)

series62.0ms (3.2%)

Counts
3 → 0
Calls

12 calls:

13.0ms
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (cbrt.f64 a))
a
-inf
9.0ms
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (cbrt.f64 a))
g
-inf
9.0ms
(cbrt.f64 (*.f64 g 1/2))
g
-inf
8.0ms
(cbrt.f64 a)
a
-inf
4.0ms
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (cbrt.f64 a))
g
0

rewrite50.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
758×log1p-expm1-u_binary64
758×expm1-log1p-u_binary64
139×log1p-udef_binary64
80×egg-rr
78×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
116318
2203818
Stop Event
node limit
Counts
3 → 80

simplify9.0ms (0.5%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
80 → 80

prune54.0ms (2.8%)

Pruning

13 alts after pruning (12 fresh and 1 done)

PrunedKeptTotal
New72880
Fresh246
Picked101
Done011
Total751388
Error
0.1b
Counts
88 → 13
Alt Table
StatusErrorProgram
0.8b
(*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 (*.f64 2 a))))
1.5b
(*.f64 (/.f64 (cbrt.f64 g) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 2)) (/.f64 (cbrt.f64 1/2) (cbrt.f64 (cbrt.f64 a))))
16.3b
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 1/2 a)))) 3)
1.5b
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 3))
15.7b
(cbrt.f64 (/.f64 g (*.f64 2 a)))
0.8b
(/.f64 1 (/.f64 (cbrt.f64 (*.f64 2 a)) (cbrt.f64 g)))
15.4b
(pow.f64 (cbrt.f64 (/.f64 a (*.f64 g 1/2))) -1)
40.7b
(pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 g (/.f64 a 1/2)))) 2)
0.8b
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
0.9b
(*.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 1/2) (/.f64 1 (cbrt.f64 a))))
1.5b
(*.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g 1/2))) 2) (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 g 1/2))) (/.f64 1 (cbrt.f64 a))))
0.8b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
1.5b
(/.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g 1/2))) 3) (cbrt.f64 a))
Compiler

Compiled 1208 to 880 computations (27.2% saved)

localize7.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (cbrt.f64 a))
0.4b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
0.6b
(cbrt.f64 (*.f64 g 1/2))
0.6b
(cbrt.f64 a)

series50.0ms (2.6%)

Counts
2 → 0
Calls

9 calls:

15.0ms
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
a
-inf
9.0ms
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
g
-inf
9.0ms
(/.f64 1 (cbrt.f64 a))
a
-inf
5.0ms
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
g
inf
3.0ms
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
g
0

rewrite52.0ms (2.6%)

Algorithm
batch-egg-rewrite
Rules
788×log1p-expm1-u_binary64
788×expm1-log1p-u_binary64
92×add-sqr-sqrt_binary64
86×add-cbrt-cube_binary64
84×add-cube-cbrt_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01017
119715
2225315
Stop Event
node limit
Counts
2 → 51

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
51 → 51

prune69.0ms (3.5%)

Pruning

16 alts after pruning (14 fresh and 2 done)

PrunedKeptTotal
New91495
Fresh11011
Picked011
Done011
Total9216108
Error
0.1b
Counts
108 → 16
Alt Table
StatusErrorProgram
0.9b
(*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 a)))
16.3b
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 1/2 a)))) 3)
0.9b
(/.f64 (cbrt.f64 g) (/.f64 (cbrt.f64 a) (cbrt.f64 1/2)))
0.8b
(/.f64 1 (/.f64 (cbrt.f64 (*.f64 2 a)) (cbrt.f64 g)))
1.1b
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 g 1/2)) 2)) (/.f64 (cbrt.f64 a) (cbrt.f64 (cbrt.f64 (*.f64 g 1/2)))))
15.4b
(pow.f64 (cbrt.f64 (/.f64 a (*.f64 g 1/2))) -1)
0.8b
(*.f64 (cbrt.f64 g) (/.f64 1 (cbrt.f64 (*.f64 2 a))))
1.5b
(*.f64 (/.f64 (cbrt.f64 g) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 2)) (/.f64 (cbrt.f64 1/2) (cbrt.f64 (cbrt.f64 a))))
30.9b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (sqrt.f64 (pow.f64 (cbrt.f64 a) -2)))
1.5b
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 3))
15.7b
(cbrt.f64 (/.f64 g (*.f64 2 a)))
40.7b
(pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 g (/.f64 a 1/2)))) 2)
0.8b
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
0.9b
(*.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 1/2) (/.f64 1 (cbrt.f64 a))))
0.8b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
1.5b
(/.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g 1/2))) 3) (cbrt.f64 a))
Compiler

Compiled 1473 to 1096 computations (25.6% saved)

localize7.0ms (0.4%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
0.6b
(cbrt.f64 g)
0.7b
(cbrt.f64 (/.f64 1/2 a))

series63.0ms (3.2%)

Counts
3 → 0
Calls

12 calls:

12.0ms
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
g
-inf
10.0ms
(cbrt.f64 g)
g
-inf
9.0ms
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
a
-inf
9.0ms
(cbrt.f64 (/.f64 1/2 a))
a
-inf
5.0ms
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
a
0

rewrite43.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
687×log1p-expm1-u_binary64
687×expm1-log1p-u_binary64
138×expm1-udef_binary64
138×log1p-udef_binary64
127×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
116418
2192718
Stop Event
node limit
Counts
3 → 65

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
65 → 65

prune39.0ms (2%)

Pruning

16 alts after pruning (13 fresh and 3 done)

PrunedKeptTotal
New62365
Fresh31013
Picked011
Done022
Total651681
Error
0.0b
Counts
81 → 16
Alt Table
StatusErrorProgram
0.9b
(*.f64 (*.f64 (cbrt.f64 g) (cbrt.f64 1/2)) (/.f64 1 (cbrt.f64 a)))
16.3b
(pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g (/.f64 1/2 a)))) 3)
1.1b
(/.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (*.f64 g 1/2)) 2)) (/.f64 (cbrt.f64 a) (cbrt.f64 (cbrt.f64 (*.f64 g 1/2)))))
15.4b
(pow.f64 (cbrt.f64 (/.f64 a (*.f64 g 1/2))) -1)
1.6b
(*.f64 (cbrt.f64 g) (pow.f64 (cbrt.f64 (cbrt.f64 (/.f64 1/2 a))) 3))
1.5b
(/.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (*.f64 g 1/2))) 3) (cbrt.f64 a))
0.8b
(*.f64 (cbrt.f64 g) (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 1 a))))
30.9b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (sqrt.f64 (pow.f64 (cbrt.f64 a) -2)))
1.5b
(/.f64 (cbrt.f64 (*.f64 g 1/2)) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 3))
15.7b
(cbrt.f64 (/.f64 g (*.f64 2 a)))
0.8b
(/.f64 1 (/.f64 (cbrt.f64 (*.f64 2 a)) (cbrt.f64 g)))
40.7b
(pow.f64 (sqrt.f64 (cbrt.f64 (/.f64 g (/.f64 a 1/2)))) 2)
1.5b
(*.f64 (/.f64 (cbrt.f64 g) (pow.f64 (cbrt.f64 (cbrt.f64 a)) 2)) (/.f64 (cbrt.f64 1/2) (cbrt.f64 (cbrt.f64 a))))
0.8b
(*.f64 (cbrt.f64 g) (cbrt.f64 (/.f64 1/2 a)))
0.8b
(*.f64 (cbrt.f64 (*.f64 g 1/2)) (/.f64 1 (cbrt.f64 a)))
0.8b
(*.f64 (cbrt.f64 g) (/.f64 (cbrt.f64 1/2) (cbrt.f64 a)))
Compiler

Compiled 851 to 612 computations (28.1% saved)

regimes262.0ms (13.4%)

Accuracy

Total 0.7b remaining (91%)

Threshold costs 0.7b (91%)

Counts
50 → 1
Compiler

Compiled 3126 to 2492 computations (20.3% saved)

simplify2.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
1911
Stop Event
saturated

end170.0ms (8.7%)

Stop Event
fuel
Compiler

Compiled 206 to 166 computations (19.4% saved)

Profiling

Loading profile data...