Details

Time bar (total: 18.4s)

analyze3.1s (16.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%99.7%0.3%0
0%99.7%0.3%1
0%99.7%0.3%2
0%99.7%0.3%3
0%99.7%0.3%4
0%99.7%0.3%5
0%99.7%0.3%6
0%98.1%1.9%7
0%98.1%1.9%8
0%97.8%2.2%9
0%96.8%3.2%10
0%96.3%3.7%11
0%94.3%5.7%12
0.4%92.1%7.5%13
0.6%90.8%8.6%14
Compiler

Compiled 35 to 24 computations (31.4% saved)

sample128.0ms (0.7%)

Algorithm
intervals
Results
53.0ms451×body128nan
34.0ms256×body128valid
3.0ms24×body128invalid
Compiler

Compiled 75 to 53 computations (29.3% saved)

simplify52.0ms (0.3%)

Algorithm
egg-herbie
Rules
515×fma-neg_binary64
481×neg-mul-1_binary64
395×fma-def_binary64
358×cancel-sign-sub-inv_binary64
348×unsub-neg_binary64
Counts
1 → 1
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02242
15840
218240
375738
4281537
5455537
6494437

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
26.9b
Counts
2 → 2
Alt Table
StatusErrorProgram
26.9b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
31.7b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (-.f64 (-.f64 t (*.f64 2 (/.f64 (*.f64 l l) Om))) (*.f64 (*.f64 n (pow.f64 (/.f64 l Om) 2)) (-.f64 U U*)))))
Compiler

Compiled 161 to 103 computations (36% saved)

localize16.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.5b
(*.f64 n (/.f64 l Om))
8.2b
(*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))))
10.1b
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
18.1b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))

rewrite222.0ms (1.2%)

Algorithm
rewrite-expression-head
Error
20.3b
Rules
30×pow1_binary64
27×add-cbrt-cube_binary64
27×add-exp-log_binary64
21×add-sqr-sqrt_binary64
17×associate-*r*_binary64
Counts
4 → 107
Calls

4 calls:

10.0ms
(*.f64 n (/.f64 l Om))
8.0ms
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
8.0ms
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
7.0ms
(*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))))
Compiler

Compiled 3547 to 1377 computations (61.2% saved)

series806.0ms (4.4%)

Error
16.4b
Counts
4 → 96
Calls

4 calls:

355.0ms
(*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))))
304.0ms
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
61.0ms
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
22.0ms
(*.f64 n (/.f64 l Om))
Compiler

Compiled 9765 to 6898 computations (29.4% saved)

simplify132.0ms (0.7%)

Algorithm
egg-herbie
Rules
669×associate-*l*_binary64
664×associate-*r*_binary64
230×associate-/l*_binary64
205×*-commutative_binary64
186×fma-def_binary64
Counts
203 → 171
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
05117592
113266954
253086954

prune133.0ms (0.7%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New15219171
Fresh101
Picked011
Done000
Total15320173
Error
12.2b
Counts
173 → 20
Alt Table
StatusErrorProgram
45.6b
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 2 (*.f64 n U)) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) 3)))
60.1b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 (*.f64 n n) (*.f64 (*.f64 l l) (-.f64 U* U))) Om) (/.f64 U Om))))
63.1b
(fma.f64 n (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)))))) (*.f64 (sqrt.f64 (/.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om))))) (-.f64 (*.f64 1/2 (*.f64 t (sqrt.f64 2))) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om))))
58.1b
(neg.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l))))
61.1b
(sqrt.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 2 (*.f64 n U))) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))
56.2b
(sqrt.f64 (*.f64 2 (*.f64 n (*.f64 (*.f64 l l) (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))))))
27.9b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))
40.5b
(sqrt.f64 (/.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
26.9b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
60.2b
(neg.f64 (*.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))
38.4b
(sqrt.f64 (*.f64 U (fma.f64 2 (fma.f64 n t (/.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 l l) U*))) (*.f64 Om Om))) (*.f64 (/.f64 (*.f64 n (*.f64 l l)) Om) -4))))
59.8b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 (*.f64 l l) (-.f64 U* U)) U)))) (/.f64 (sqrt.f64 2) Om))
35.0b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4))))
56.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l)))
43.3b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
55.5b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l))
35.3b
(sqrt.f64 (fma.f64 t (*.f64 2 (*.f64 n U)) (*.f64 (/.f64 (*.f64 n (*.f64 U (*.f64 l l))) Om) -4)))
51.3b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))))))))) (sqrt.f64 (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))
42.9b
(-.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om) (sqrt.f64 (/.f64 (*.f64 n U) t))))
39.1b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U))))
Compiler

Compiled 4728 to 2031 computations (57% saved)

localize15.0ms (0.1%)

Local error

Found 4 expressions with local error:

5.8b
(*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))
6.0b
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
8.1b
(*.f64 (-.f64 U* U) (/.f64 l Om))
18.1b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))

rewrite190.0ms (1%)

Algorithm
rewrite-expression-head
Error
9.8b
Rules
36×pow1_binary64
30×add-cbrt-cube_binary64
30×add-exp-log_binary64
20×pow-prod-down_binary64
20×add-sqr-sqrt_binary64
Counts
4 → 111
Calls

4 calls:

11.0ms
(*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))
8.0ms
(*.f64 (-.f64 U* U) (/.f64 l Om))
6.0ms
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))
5.0ms
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
Compiler

Compiled 3359 to 1256 computations (62.6% saved)

series812.0ms (4.4%)

Error
12.2b
Counts
4 → 105
Calls

4 calls:

355.0ms
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
296.0ms
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))
59.0ms
(*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))
41.0ms
(*.f64 (-.f64 U* U) (/.f64 l Om))
Compiler

Compiled 10243 to 7147 computations (30.2% saved)

simplify179.0ms (1%)

Algorithm
egg-herbie
Rules
681×fma-def_binary64
586×associate-*r*_binary64
523×associate-*l*_binary64
418×*-commutative_binary64
250×fma-neg_binary64
Counts
216 → 193
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
05387784
112937220
245727160
352707160

prune149.0ms (0.8%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New1903193
Fresh21618
Picked101
Done011
Total19320213
Error
9.8b
Counts
213 → 20
Alt Table
StatusErrorProgram
45.6b
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 2 (*.f64 n U)) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) 3)))
60.1b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 (*.f64 n n) (*.f64 (*.f64 l l) (-.f64 U* U))) Om) (/.f64 U Om))))
63.1b
(fma.f64 n (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)))))) (*.f64 (sqrt.f64 (/.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om))))) (-.f64 (*.f64 1/2 (*.f64 t (sqrt.f64 2))) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om))))
44.9b
(*.f64 (sqrt.f64 (*.f64 n 2)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (/.f64 l Om) (-.f64 U* U)))) t))))
61.1b
(sqrt.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 2 (*.f64 n U))) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t))))
40.5b
(sqrt.f64 (/.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
26.9b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
58.1b
(neg.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om)))))) (*.f64 (sqrt.f64 2) l))))
42.9b
(-.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om) (sqrt.f64 (/.f64 (*.f64 n U) t))))
60.2b
(neg.f64 (*.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))
38.4b
(sqrt.f64 (*.f64 U (fma.f64 2 (fma.f64 n t (/.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 l l) U*))) (*.f64 Om Om))) (*.f64 (/.f64 (*.f64 n (*.f64 l l)) Om) -4))))
59.8b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 (*.f64 l l) (-.f64 U* U)) U)))) (/.f64 (sqrt.f64 2) Om))
35.0b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4))))
56.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l)))
43.3b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
55.5b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l))
35.3b
(sqrt.f64 (fma.f64 t (*.f64 2 (*.f64 n U)) (*.f64 (/.f64 (*.f64 n (*.f64 U (*.f64 l l))) Om) -4)))
56.2b
(sqrt.f64 (*.f64 2 (*.f64 n (*.f64 (*.f64 l l) (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))))))
51.3b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))))))))) (sqrt.f64 (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))
39.1b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U))))
Compiler

Compiled 4670 to 2058 computations (55.9% saved)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

6.9b
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4)))
7.3b
(*.f64 (/.f64 (*.f64 l l) Om) U)
7.7b
(/.f64 (*.f64 l l) Om)
13.7b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4))))

rewrite134.0ms (0.7%)

Algorithm
rewrite-expression-head
Error
8.5b
Rules
20×add-cbrt-cube_binary64
20×add-exp-log_binary64
17×add-sqr-sqrt_binary64
11×*-un-lft-identity_binary64
11×add-cube-cbrt_binary64
Counts
4 → 88
Calls

4 calls:

7.0ms
(*.f64 (/.f64 (*.f64 l l) Om) U)
4.0ms
(/.f64 (*.f64 l l) Om)
3.0ms
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4)))
2.0ms
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4))))
Compiler

Compiled 2066 to 827 computations (60% saved)

series234.0ms (1.3%)

Error
8.8b
Counts
4 → 59
Calls

4 calls:

93.0ms
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4))))
90.0ms
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 (*.f64 l l) Om) U) -4)))
25.0ms
(*.f64 (/.f64 (*.f64 l l) Om) U)
13.0ms
(/.f64 (*.f64 l l) Om)
Compiler

Compiled 3374 to 2443 computations (27.6% saved)

simplify109.0ms (0.6%)

Algorithm
egg-herbie
Rules
621×fma-def_binary64
539×associate-/l*_binary64
436×times-frac_binary64
202×associate-*l*_binary64
201×associate-/r*_binary64
Counts
147 → 115
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02113072
14772613
216182613
346062613
450802613

prune91.0ms (0.5%)

Pruning

23 alts after pruning (22 fresh and 1 done)

PrunedKeptTotal
New1087115
Fresh31518
Picked101
Done011
Total11223135
Error
7.6b
Counts
135 → 23
Alt Table
StatusErrorProgram
45.6b
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 2 (*.f64 n U)) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) 3)))
60.1b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 (*.f64 n n) (*.f64 (*.f64 l l) (-.f64 U* U))) Om) (/.f64 U Om))))
63.1b
(fma.f64 n (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)))))) (*.f64 (sqrt.f64 (/.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om))))) (-.f64 (*.f64 1/2 (*.f64 t (sqrt.f64 2))) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om))))
30.4b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4))))
56.9b
(sqrt.f64 (*.f64 -4 (*.f64 n (/.f64 (*.f64 U (*.f64 l l)) Om))))
58.1b
(neg.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om)))))) (*.f64 (sqrt.f64 2) l))))
42.9b
(-.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om) (sqrt.f64 (/.f64 (*.f64 n U) t))))
60.2b
(neg.f64 (*.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))
35.1b
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 n (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))) (sqrt.f64 (sqrt.f64 (*.f64 n (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))))
38.4b
(sqrt.f64 (*.f64 U (fma.f64 2 (fma.f64 n t (/.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 l l) U*))) (*.f64 Om Om))) (*.f64 (/.f64 (*.f64 n (*.f64 l l)) Om) -4))))
59.8b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 (*.f64 l l) (-.f64 U* U)) U)))) (/.f64 (sqrt.f64 2) Om))
35.9b
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 n (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))))
39.1b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U))))
57.1b
(neg.f64 (*.f64 l (sqrt.f64 (*.f64 -4 (/.f64 (*.f64 n U) Om)))))
56.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l)))
43.3b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
56.6b
(*.f64 l (sqrt.f64 (*.f64 -4 (/.f64 (*.f64 n U) Om))))
44.9b
(*.f64 (sqrt.f64 (*.f64 n 2)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (/.f64 l Om) (-.f64 U* U)))) t))))
35.3b
(sqrt.f64 (fma.f64 t (*.f64 2 (*.f64 n U)) (*.f64 (/.f64 (*.f64 n (*.f64 U (*.f64 l l))) Om) -4)))
56.2b
(sqrt.f64 (*.f64 2 (*.f64 n (*.f64 (*.f64 l l) (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))))))
51.3b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))))))))) (sqrt.f64 (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))
26.9b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
48.8b
(*.f64 (sqrt.f64 n) (sqrt.f64 (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))
Compiler

Compiled 2746 to 1484 computations (46% saved)

localize14.0ms (0.1%)

Local error

Found 4 expressions with local error:

0.6b
(*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om)))
6.2b
(*.f64 U (/.f64 l Om))
6.9b
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4)))
13.7b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4))))

rewrite144.0ms (0.8%)

Algorithm
rewrite-expression-head
Error
7.6b
Rules
41×add-exp-log_binary64
32×add-cbrt-cube_binary64
28×add-sqr-sqrt_binary64
21×*-un-lft-identity_binary64
21×add-cube-cbrt_binary64
Counts
4 → 113
Calls

4 calls:

8.0ms
(*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om)))
5.0ms
(*.f64 U (/.f64 l Om))
3.0ms
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4)))
2.0ms
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4))))
Compiler

Compiled 2920 to 1436 computations (50.8% saved)

series237.0ms (1.3%)

Error
7.6b
Counts
4 → 62
Calls

4 calls:

92.0ms
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4))))
89.0ms
(*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4)))
23.0ms
(*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om)))
22.0ms
(*.f64 U (/.f64 l Om))
Compiler

Compiled 3550 to 2564 computations (27.8% saved)

simplify116.0ms (0.6%)

Algorithm
egg-herbie
Rules
714×fma-def_binary64
358×associate-/r*_binary64
299×associate-/l/_binary64
281×associate-*r*_binary64
278×associate-*l*_binary64
Counts
175 → 148
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02493472
15493150
220252943
344762943
450772943

prune92.0ms (0.5%)

Pruning

24 alts after pruning (22 fresh and 2 done)

PrunedKeptTotal
New1462148
Fresh12021
Picked011
Done011
Total14724171
Error
7.6b
Counts
171 → 24
Alt Table
StatusErrorProgram
45.6b
(sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 2 (*.f64 n U)) (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) 3)))
60.1b
(sqrt.f64 (*.f64 2 (*.f64 (/.f64 (*.f64 (*.f64 n n) (*.f64 (*.f64 l l) (-.f64 U* U))) Om) (/.f64 U Om))))
63.1b
(fma.f64 n (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)))))) (*.f64 (sqrt.f64 (/.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)) (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om))))) (-.f64 (*.f64 1/2 (*.f64 t (sqrt.f64 2))) (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om))))
30.4b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (*.f64 U (/.f64 l Om))) -4))))
56.9b
(sqrt.f64 (*.f64 -4 (*.f64 n (/.f64 (*.f64 U (*.f64 l l)) Om))))
56.2b
(sqrt.f64 (*.f64 2 (*.f64 n (*.f64 (*.f64 l l) (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))))))
40.6b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (log.f64 (exp.f64 (/.f64 (*.f64 U l) Om)))) -4))))
58.1b
(neg.f64 (fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (fma.f64 (/.f64 U Om) (/.f64 n Om) (/.f64 2 Om)))))) (*.f64 (sqrt.f64 2) l))))
42.9b
(-.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U)))) (*.f64 (/.f64 (*.f64 (sqrt.f64 2) (*.f64 l l)) Om) (sqrt.f64 (/.f64 (*.f64 n U) t))))
60.2b
(neg.f64 (*.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 U (*.f64 l l)) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))
38.4b
(sqrt.f64 (*.f64 U (fma.f64 2 (fma.f64 n t (/.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 l l) U*))) (*.f64 Om Om))) (*.f64 (/.f64 (*.f64 n (*.f64 l l)) Om) -4))))
59.8b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 n (*.f64 (*.f64 (*.f64 l l) (-.f64 U* U)) U)))) (/.f64 (sqrt.f64 2) Om))
35.9b
(expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 n (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))))
39.1b
(*.f64 (sqrt.f64 2) (sqrt.f64 (*.f64 n (*.f64 t U))))
57.1b
(neg.f64 (*.f64 l (sqrt.f64 (*.f64 -4 (/.f64 (*.f64 n U) Om)))))
56.6b
(fma.f64 1/2 (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om)))))) (/.f64 (*.f64 t (sqrt.f64 2)) l)) (*.f64 (sqrt.f64 (*.f64 n (*.f64 U (-.f64 (/.f64 (*.f64 n U*) (*.f64 Om Om)) (+.f64 (/.f64 2 Om) (/.f64 (*.f64 n U) (*.f64 Om Om))))))) (*.f64 (sqrt.f64 2) l)))
43.3b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)))
56.6b
(*.f64 l (sqrt.f64 (*.f64 -4 (/.f64 (*.f64 n U) Om))))
44.9b
(*.f64 (sqrt.f64 (*.f64 n 2)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (/.f64 l Om) (-.f64 U* U)))) t))))
35.3b
(sqrt.f64 (fma.f64 t (*.f64 2 (*.f64 n U)) (*.f64 (/.f64 (*.f64 n (*.f64 U (*.f64 l l))) Om) -4)))
32.8b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 t U) (*.f64 (*.f64 (/.f64 l 1) (expm1.f64 (log1p.f64 (/.f64 (*.f64 U l) Om)))) -4))))
51.3b
(/.f64 (sqrt.f64 (*.f64 n (*.f64 2 (*.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))) t)) (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om)))))))))) (sqrt.f64 (-.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 n (*.f64 (-.f64 U* U) (/.f64 l Om))))))))
26.9b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
48.8b
(*.f64 (sqrt.f64 n) (sqrt.f64 (*.f64 U (fma.f64 -4 (/.f64 (*.f64 l l) Om) (*.f64 2 t)))))
Compiler

Compiled 2443 to 1270 computations (48% saved)

regimes7.0s (37.9%)

Accuracy

Total 16.2b remaining (61.1%)

Threshold costs 0b (0%)

Compiler

Compiled 91010 to 56042 computations (38.4% saved)

bsearch22.0ms (0.1%)

Compiler

Compiled 33 to 22 computations (33.3% saved)

simplify37.0ms (0.2%)

Algorithm
egg-herbie
Rules
181×distribute-rgt-neg-in_binary64
119×cancel-sign-sub-inv_binary64
118×distribute-lft-neg-out_binary64
116×distribute-lft-neg-in_binary64
99×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
054184
188184
2116184
3139184
4165184
5186184
6201184
7227184
8256184
9289184
10350184
11444184
12555184
13635184
14711184
15768184
16802184
17821184
18825184
19817184

end2.0ms (0%)

Compiler

Compiled 130 to 73 computations (43.8% saved)

sample4.3s (23.1%)

Algorithm
intervals
Results
1.5s12279×body128nan
1.1s8000×body128valid
144.0ms1148×body128invalid
Compiler

Compiled 973 to 590 computations (39.4% saved)

Profiling

Loading profile data...