Details

Time bar (total: 9.5s)

analyze758.0ms (8%)

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
0%99.9%0.1%4
0%99.9%0.1%5
12.5%68.6%18.9%6
18.7%62.4%18.9%7
18.7%59.3%22%8
28.1%39%32.9%9
32.8%34.3%32.9%10
32.8%32%35.3%11
38.2%20.7%41.1%12
41%17.9%41.1%13
41%16.6%42.5%14
Compiler

Compiled 41 to 24 computations (41.5% saved)

sample72.0ms (0.8%)

Algorithm
intervals
Results
54.0ms238×body256valid
4.0ms35×body128nan
2.0ms18×body128valid
Compiler

Compiled 84 to 50 computations (40.5% saved)

simplify218.0ms (2.3%)

Algorithm
egg-herbie
Rules
637×associate-/l*_binary64
634×div-sub_binary64
582×unsub-neg_binary64
519×sub-neg_binary64
502×times-frac_binary64
Counts
1 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02052
15350
213950
338148
473548
5118948
6140948
7189348
8185348
9223548
10288948
11345748
12363948
13374948
14379748
15382148
16387148
17485848
18479948
19498048
20483448

prune5.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
34.4b
Counts
2 → 2
Alt Table
StatusErrorProgram
34.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
34.4b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
Compiler

Compiled 182 to 100 computations (45.1% saved)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

4.6b
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
7.4b
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))

rewrite138.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
31.4b
Rules
14×add-sqr-sqrt_binary64
11×cbrt-prod_binary64
10×*-un-lft-identity_binary64
sqrt-prod_binary64
add-cube-cbrt_binary64
Counts
4 → 61
Calls

4 calls:

8.0ms
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
7.0ms
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
4.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 2348 to 702 computations (70.1% saved)

series310.0ms (3.3%)

Error
31.3b
Counts
4 → 46
Calls

4 calls:

103.0ms
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
91.0ms
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
28.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
24.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 4733 to 3292 computations (30.4% saved)

simplify112.0ms (1.2%)

Algorithm
egg-herbie
Rules
612×associate-/l*_binary64
463×associate-/r*_binary64
374×associate-*l*_binary64
124×associate-*l/_binary64
123×associate-*r/_binary64
Counts
107 → 67
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02532612
15512582
214542545
349662545
449652545

prune140.0ms (1.5%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New491867
Fresh011
Picked101
Done000
Total501969
Error
31.2b
Counts
69 → 19
Alt Table
StatusErrorProgram
42.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
50.4b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 a))))))
48.5b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (-.f64 (*.f64 1/2 (/.f64 (*.f64 h h) g)) g)) a) -1/2)))
51.5b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (/.f64 (sqrt.f64 (-.f64 (pow.f64 g 6) (pow.f64 h 6))) (sqrt.f64 (+.f64 (pow.f64 g 4) (+.f64 (pow.f64 h 4) (*.f64 (*.f64 h h) (*.f64 g g))))))) a) -1/2)))
34.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
34.6b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
41.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
57.9b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (-.f64 (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (exp.f64 (+.f64 (log.f64 (/.f64 2 a)) (log.f64 g))))) (*.f64 1/12 (*.f64 (/.f64 (cbrt.f64 -1/2) (*.f64 g g)) (*.f64 (*.f64 h h) (cbrt.f64 (exp.f64 (+.f64 (log.f64 (/.f64 2 a)) (log.f64 g)))))))))
52.6b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
32.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
48.4b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 a) 1/3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
57.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (/.f64 2 a)) (log.f64 (/.f64 -1 g)))))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
33.3b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
45.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 2 a) g))))
52.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 g) 1/3) (pow.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a)) 1/3))))
59.8b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (pow.f64 (/.f64 -1/2 (*.f64 g a)) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
44.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) a) -1/2)))
39.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
34.4b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
Compiler

Compiled 3795 to 1898 computations (50% saved)

localize22.0ms (0.2%)

Local error

Found 4 expressions with local error:

3.2b
(-.f64 (*.f64 g g) (*.f64 h h))
4.6b
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))

rewrite207.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
31.0b
Rules
14×add-sqr-sqrt_binary64
10×cbrt-prod_binary64
10×*-un-lft-identity_binary64
sqrt-prod_binary64
add-cube-cbrt_binary64
Counts
4 → 64
Calls

4 calls:

13.0ms
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
Compiler

Compiled 2507 to 788 computations (68.6% saved)

series271.0ms (2.9%)

Error
30.7b
Counts
4 → 48
Calls

4 calls:

89.0ms
(cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a)))
26.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
24.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
22.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 4287 to 2956 computations (31% saved)

simplify110.0ms (1.2%)

Algorithm
egg-herbie
Rules
564×associate-/l*_binary64
428×associate-/r*_binary64
385×associate-*l*_binary64
161×exp-sum_binary64
123×distribute-rgt-in_binary64
Counts
112 → 69
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02152364
14672321
212812297
347272283
450412283

prune194.0ms (2%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New60969
Fresh51318
Picked101
Done000
Total662288
Error
30.4b
Counts
88 → 22
Alt Table
StatusErrorProgram
42.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
43.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g)))))) (cbrt.f64 a)))
50.4b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 a))))))
34.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
34.6b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
38.0b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (cbrt.f64 a)))
48.4b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 a) 1/3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
57.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (/.f64 2 a)) (log.f64 (/.f64 -1 g)))))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
31.8b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 -1 a)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
33.3b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
45.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 2 a) g))))
52.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 g) 1/3) (pow.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a)) 1/3))))
59.8b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (pow.f64 (/.f64 -1/2 (*.f64 g a)) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
48.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (neg.f64 g)))) (cbrt.f64 a)))
44.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) a) -1/2)))
46.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
41.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
51.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
34.4b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
49.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (pow.f64 a 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
56.6b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (cbrt.f64 (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
46.9b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a))) (pow.f64 g 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
Compiler

Compiled 3691 to 1914 computations (48.1% saved)

localize26.0ms (0.3%)

Local error

Found 4 expressions with local error:

3.2b
(-.f64 (*.f64 g g) (*.f64 h h))
3.2b
(-.f64 (*.f64 g g) (*.f64 h h))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))

rewrite191.0ms (2%)

Algorithm
rewrite-expression-head
Error
30.4b
Rules
sqrt-prod_binary64
add-sqr-sqrt_binary64
add-log-exp_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
Counts
4 → 58
Calls

4 calls:

4.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
Compiler

Compiled 2493 to 896 computations (64.1% saved)

series205.0ms (2.2%)

Error
30.4b
Counts
4 → 48
Calls

4 calls:

32.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
31.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
26.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
25.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 3770 to 2631 computations (30.2% saved)

simplify109.0ms (1.1%)

Algorithm
egg-herbie
Rules
478×associate-*l/_binary64
288×cancel-sign-sub-inv_binary64
276×unswap-sqr_binary64
210×associate-/r/_binary64
206×associate-*r*_binary64
Counts
106 → 70
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0861486
11931390
25311390
321151390
448941390
549871390
649611390

prune193.0ms (2%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New69170
Fresh02121
Picked101
Done000
Total702292
Error
30.4b
Counts
92 → 22
Alt Table
StatusErrorProgram
42.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
43.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g)))))) (cbrt.f64 a)))
50.4b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 a))))))
34.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
34.6b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
38.0b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (cbrt.f64 a)))
48.4b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 a) 1/3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
57.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (/.f64 2 a)) (log.f64 (/.f64 -1 g)))))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
33.3b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
56.6b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (cbrt.f64 (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
47.6b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 -1 a)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (neg.f64 g)))) (cbrt.f64 a)))
45.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 2 a) g))))
52.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 g) 1/3) (pow.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a)) 1/3))))
59.8b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (pow.f64 (/.f64 -1/2 (*.f64 g a)) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
48.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (neg.f64 g)))) (cbrt.f64 a)))
44.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) a) -1/2)))
46.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
41.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
51.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
34.4b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
49.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (pow.f64 a 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
46.9b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a))) (pow.f64 g 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
Compiler

Compiled 3516 to 1862 computations (47% saved)

localize19.0ms (0.2%)

Local error

Found 4 expressions with local error:

3.2b
(-.f64 (*.f64 g g) (*.f64 h h))
7.4b
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
29.6b
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))

rewrite206.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
30.4b
Rules
sqrt-prod_binary64
add-sqr-sqrt_binary64
*-un-lft-identity_binary64
add-cube-cbrt_binary64
add-log-exp_binary64
Counts
4 → 55
Calls

4 calls:

10.0ms
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
3.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
Compiler

Compiled 2167 to 675 computations (68.9% saved)

series270.0ms (2.9%)

Error
30.4b
Counts
4 → 46
Calls

4 calls:

96.0ms
(cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2))
27.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
25.0ms
(-.f64 (*.f64 g g) (*.f64 h h))
22.0ms
(sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))
Compiler

Compiled 3950 to 2695 computations (31.8% saved)

simplify133.0ms (1.4%)

Algorithm
egg-herbie
Rules
316×unswap-sqr_binary64
285×associate-*r*_binary64
248×associate-*l*_binary64
202×times-frac_binary64
184×exp-sum_binary64
Counts
101 → 68
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01701734
13711658
29271644
334501588
447851587
549861587
648911587

prune203.0ms (2.1%)

Pruning

22 alts after pruning (22 fresh and 0 done)

PrunedKeptTotal
New64468
Fresh31821
Picked101
Done000
Total682290
Error
30.3b
Counts
90 → 22
Alt Table
StatusErrorProgram
43.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g)))))) (cbrt.f64 a)))
50.4b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (exp.f64 (-.f64 (log.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))))) (log.f64 a))))))
34.4b
(+.f64 (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (+.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 (*.f64 (/.f64 1 (*.f64 2 a)) (-.f64 (neg.f64 g) (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))
34.6b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (*.f64 (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))) (cbrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
38.0b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (*.f64 (fabs.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) (sqrt.f64 (cbrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))))) (cbrt.f64 a)))
48.4b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 a) 1/3) (pow.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
49.1b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (pow.f64 a 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
41.1b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (exp.f64 (log.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
56.6b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (cbrt.f64 (/.f64 -1/2 (*.f64 g a))))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
47.6b
(+.f64 (*.f64 (cbrt.f64 -1/2) (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 -1 a)))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (neg.f64 g)))) (cbrt.f64 a)))
33.3b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))
52.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (cbrt.f64 -1/2) (*.f64 (pow.f64 (/.f64 -1 g) 1/3) (pow.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a)) 1/3))))
44.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (cbrt.f64 (pow.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) 3))) a) -1/2)))
47.4b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g)) (cbrt.f64 (/.f64 1/2 a))) (*.f64 (cbrt.f64 -1/2) (cbrt.f64 (*.f64 (/.f64 -1 g) (*.f64 -1/2 (/.f64 (*.f64 h h) a))))))
59.8b
(+.f64 (*.f64 (cbrt.f64 1/2) (*.f64 (pow.f64 h 2/3) (pow.f64 (/.f64 -1/2 (*.f64 g a)) 1/3))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
48.7b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (neg.f64 g)))) (cbrt.f64 a)))
43.7b
(+.f64 (*.f64 (cbrt.f64 (-.f64 (neg.f64 g) g)) (cbrt.f64 (/.f64 1/2 a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
46.2b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (-.f64 g (*.f64 1/2 (/.f64 (*.f64 h h) g))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
41.8b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) (*.f64 2 a))) (*.f64 (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a)))) (sqrt.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a))))))
51.3b
(+.f64 (cbrt.f64 (/.f64 (-.f64 (*.f64 (sqrt.f64 (+.f64 h g)) (sqrt.f64 (-.f64 g h))) g) (*.f64 2 a))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
34.4b
(+.f64 (*.f64 (cbrt.f64 1/2) (cbrt.f64 (/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h))) g) a))) (cbrt.f64 (*.f64 (/.f64 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))) a) -1/2)))
46.9b
(+.f64 (*.f64 (cbrt.f64 1/2) (/.f64 (cbrt.f64 (*.f64 -1/2 (/.f64 (*.f64 h h) a))) (pow.f64 g 1/3))) (/.f64 (cbrt.f64 (*.f64 -1/2 (+.f64 g (sqrt.f64 (-.f64 (*.f64 g g) (*.f64 h h)))))) (cbrt.f64 a)))
Compiler

Compiled 2757 to 1283 computations (53.5% saved)

regimes2.6s (27.2%)

Accuracy

Total 1.7b remaining (5.5%)

Threshold costs 0b (0%)

Compiler

Compiled 62731 to 36559 computations (41.7% saved)

simplify5.0ms (0%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02152
13252
24252
34852
45152
55152

end1.0ms (0%)

Compiler

Compiled 36 to 20 computations (44.4% saved)

sample2.8s (29.2%)

Algorithm
intervals
Results
1.9s7583×body256valid
133.0ms1212×body128nan
46.0ms417×body128valid
Compiler

Compiled 920 to 551 computations (40.1% saved)

Profiling

Loading profile data...