Details

Time bar (total: 54.0s)

analyze5.7s (10.6%)

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)

sample274.0ms (0.5%)

Algorithm
intervals
Results
75.0ms362×body128nan
61.0ms256×body128valid
9.0ms28×body128invalid
Compiler

Compiled 75 to 53 computations (29.3% saved)

simplify75.0ms (0.1%)

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 → 2
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02242
15840
218240
375738
4281537
5455537
6494437

prune10.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
29.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
29.7b
(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))))))))
34.3b
(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 189 to 119 computations (37% saved)

localize37.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
4.9b
(*.f64 n (/.f64 l Om))
5.4b
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
9.9b
(*.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)))))))
18.7b
(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))))))))

series3.7s (6.8%)

Counts
4 → 216
Calls

4 calls:

2.8s
(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))))))))
778.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)))))))
76.0ms
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
28.0ms
(*.f64 n (/.f64 l Om))

rewrite71.0ms (0.1%)

Algorithm
rewrite-expression-head
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:

17.0ms
(*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))
14.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)))))))
12.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))))))))
10.0ms
(*.f64 n (/.f64 l Om))

simplify568.0ms (1.1%)

Algorithm
egg-herbie
Rules
787×fma-def_binary64
459×*-commutative_binary64
231×associate-*r*_binary64
165×+-commutative_binary64
153×cancel-sign-sub-inv_binary64
Counts
323 → 286
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0106119930
1356719396
2511519396

prune1.4s (2.7%)

Pruning

19 alts after pruning (19 fresh and 0 done)

PrunedKeptTotal
New26719286
Fresh101
Picked101
Done000
Total26919288
Error
14.7b
Counts
288 → 19
Alt Table
StatusErrorProgram
42.3b
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) t)) (/.f64 (*.f64 (pow.f64 l 2) (sqrt.f64 2)) Om)))
35.9b
(sqrt.f64 (*.f64 n (fma.f64 2 (*.f64 U t) (*.f64 -4 (/.f64 (*.f64 (*.f64 l l) U) Om)))))
29.9b
(*.f64 (sqrt.f64 (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))))))))) (sqrt.f64 (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.3b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (*.f64 n (-.f64 (*.f64 (*.f64 l l) U*) (*.f64 (*.f64 l l) U)))))) (/.f64 (sqrt.f64 2) Om))
36.5b
(cbrt.f64 (*.f64 (*.f64 (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)))))))) (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))))))))) (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))))))))))
29.3b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))
56.8b
(neg.f64 (*.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)))
29.7b
(sqrt.f64 (+.f64 (*.f64 t (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))) (*.f64 (*.f64 2 n) U))))
29.7b
(sqrt.f64 (*.f64 (*.f64 (*.f64 2 n) U) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 (cbrt.f64 (*.f64 n (/.f64 l Om))) (cbrt.f64 (*.f64 n (/.f64 l Om)))) (cbrt.f64 (*.f64 n (/.f64 l Om))))))))))
35.6b
(sqrt.f64 (fma.f64 2 (*.f64 n (*.f64 U t)) (*.f64 -4 (/.f64 (*.f64 n (*.f64 (*.f64 l l) U)) Om))))
62.7b
(-.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))) (fma.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))) (/.f64 (*.f64 U t) (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))))))
60.0b
(*.f64 (*.f64 n (sqrt.f64 2)) (sqrt.f64 (*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 l 2) U*) (pow.f64 Om 2)) (/.f64 (*.f64 (pow.f64 l 2) U) (pow.f64 Om 2))) U)))
58.2b
(sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 n) U) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))))
42.7b
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) U)) (sqrt.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
38.6b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2))
57.6b
(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 (sqrt.f64 2) t) 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))))
57.7b
(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 (sqrt.f64 2) t) 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)))
56.9b
(*.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.0b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
Compiler

Compiled 23395 to 12018 computations (48.6% saved)

localize35.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.4b
(*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))
5.8b
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
6.9b
(/.f64 (*.f64 n l) Om)
18.7b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))

series3.9s (7.2%)

Counts
4 → 180
Calls

4 calls:

3.2s
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))
644.0ms
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
73.0ms
(*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))
30.0ms
(/.f64 (*.f64 n l) Om)

rewrite55.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
31×pow1_binary64
30×add-cbrt-cube_binary64
30×add-exp-log_binary64
17×pow-prod-down_binary64
13×cbrt-unprod_binary64
Counts
4 → 102
Calls

4 calls:

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

simplify340.0ms (0.6%)

Algorithm
egg-herbie
Rules
758×fma-def_binary64
446×*-commutative_binary64
227×associate-*r*_binary64
160×+-commutative_binary64
152×associate-/l*_binary64
Counts
282 → 260
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0103419411
1345018930
2498118930

prune863.0ms (1.6%)

Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New2537260
Fresh41418
Picked101
Done000
Total25821279
Error
12.6b
Counts
279 → 21
Alt Table
StatusErrorProgram
29.9b
(*.f64 (sqrt.f64 (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))))))))) (sqrt.f64 (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.3b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (*.f64 n (-.f64 (*.f64 (*.f64 l l) U*) (*.f64 (*.f64 l l) U)))))) (/.f64 (sqrt.f64 2) Om))
57.6b
(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 (sqrt.f64 2) t) 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))))
29.9b
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
56.8b
(neg.f64 (*.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)))
29.7b
(sqrt.f64 (+.f64 (*.f64 t (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))) (*.f64 (*.f64 2 n) U))))
62.7b
(-.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))) (fma.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))) (/.f64 (*.f64 U t) (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))))))
29.5b
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
43.6b
(*.f64 (sqrt.f64 (*.f64 2 n)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))
60.0b
(*.f64 (*.f64 n (sqrt.f64 2)) (sqrt.f64 (*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 l 2) U*) (pow.f64 Om 2)) (/.f64 (*.f64 (pow.f64 l 2) U) (pow.f64 Om 2))) U)))
29.3b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
56.9b
(*.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))
36.2b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
58.2b
(sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 n) U) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))))
42.7b
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) U)) (sqrt.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
38.6b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2))
42.3b
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) t)) (/.f64 (*.f64 (pow.f64 l 2) (sqrt.f64 2)) Om)))
61.4b
(sqrt.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 n 2)) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))
35.6b
(sqrt.f64 (fma.f64 2 (*.f64 n (*.f64 U t)) (*.f64 -4 (/.f64 (*.f64 n (*.f64 (*.f64 l l) U)) Om))))
33.6b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (neg.f64 (/.f64 (*.f64 n (*.f64 l U)) Om))) t))))
43.0b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
Compiler

Compiled 22237 to 11608 computations (47.8% saved)

localize40.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.4b
(*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))
5.8b
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t)))
7.0b
(*.f64 (*.f64 n l) (/.f64 1 Om))
18.7b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))

series3.5s (6.5%)

Counts
4 → 216
Calls

4 calls:

2.8s
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
616.0ms
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t)))
67.0ms
(*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))
29.0ms
(*.f64 (*.f64 n l) (/.f64 1 Om))

rewrite75.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
70×add-exp-log_binary64
46×add-cbrt-cube_binary64
43×pow1_binary64
41×prod-exp_binary64
25×cbrt-unprod_binary64
Counts
4 → 125
Calls

4 calls:

16.0ms
(*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))
13.0ms
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t)))
11.0ms
(*.f64 (*.f64 n l) (/.f64 1 Om))
8.0ms
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))

simplify527.0ms (1%)

Algorithm
egg-herbie
Rules
759×fma-def_binary64
457×*-commutative_binary64
244×associate-*r*_binary64
162×+-commutative_binary64
147×associate-/l*_binary64
Counts
341 → 303
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0105420014
1349319446
2497619446

prune1.4s (2.5%)

Pruning

21 alts after pruning (20 fresh and 1 done)

PrunedKeptTotal
New3021303
Fresh11920
Picked011
Done000
Total30321324
Error
12.6b
Counts
324 → 21
Alt Table
StatusErrorProgram
38.6b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2))
43.6b
(*.f64 (sqrt.f64 (*.f64 2 n)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
29.9b
(*.f64 (sqrt.f64 (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))))))))) (sqrt.f64 (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.3b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (*.f64 n (-.f64 (*.f64 (*.f64 l l) U*) (*.f64 (*.f64 l l) U)))))) (/.f64 (sqrt.f64 2) Om))
57.6b
(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 (sqrt.f64 2) t) 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))))
29.9b
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
56.8b
(neg.f64 (*.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)))
29.7b
(sqrt.f64 (+.f64 (*.f64 t (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))) (*.f64 (*.f64 2 n) U))))
62.7b
(-.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))) (fma.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))) (/.f64 (*.f64 U t) (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))))))
29.5b
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
60.0b
(*.f64 (*.f64 n (sqrt.f64 2)) (sqrt.f64 (*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 l 2) U*) (pow.f64 Om 2)) (/.f64 (*.f64 (pow.f64 l 2) U) (pow.f64 Om 2))) U)))
29.3b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
56.9b
(*.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))
36.2b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
58.2b
(sqrt.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 2 n) U) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om)))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))) (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))))
42.7b
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) U)) (sqrt.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
42.3b
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) t)) (/.f64 (*.f64 (pow.f64 l 2) (sqrt.f64 2)) Om)))
61.4b
(sqrt.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 n 2)) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))
35.6b
(sqrt.f64 (fma.f64 2 (*.f64 n (*.f64 U t)) (*.f64 -4 (/.f64 (*.f64 n (*.f64 (*.f64 l l) U)) Om))))
33.6b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (neg.f64 (/.f64 (*.f64 n (*.f64 l U)) Om))) t))))
43.0b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
Compiler

Compiled 23853 to 12649 computations (47% saved)

localize50.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
5.4b
(*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))
5.8b
(*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
6.9b
(/.f64 (*.f64 n l) Om)
18.7b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))

prune2.2s (4%)

Pruning

20 alts after pruning (19 fresh and 1 done)

PrunedKeptTotal
New5191520
Fresh11819
Picked101
Done011
Total52120541
Error
12.6b
Counts
541 → 20
Alt Table
StatusErrorProgram
38.6b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2))
43.6b
(*.f64 (sqrt.f64 (*.f64 2 n)) (sqrt.f64 (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
29.9b
(*.f64 (sqrt.f64 (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))))))))) (sqrt.f64 (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.3b
(*.f64 (sqrt.f64 (*.f64 n (*.f64 U (*.f64 n (-.f64 (*.f64 (*.f64 l l) U*) (*.f64 (*.f64 l l) U)))))) (/.f64 (sqrt.f64 2) Om))
57.6b
(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 (sqrt.f64 2) t) 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))))
29.9b
(*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))) (cbrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
56.8b
(neg.f64 (*.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)))
29.7b
(sqrt.f64 (+.f64 (*.f64 t (*.f64 (*.f64 2 n) U)) (*.f64 (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))) (*.f64 (*.f64 2 n) U))))
35.6b
(sqrt.f64 (fma.f64 2 (*.f64 n (*.f64 U t)) (*.f64 -4 (/.f64 (*.f64 n (*.f64 (*.f64 l l) U)) Om))))
29.6b
(*.f64 (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (sqrt.f64 (*.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 n 2) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))) (cbrt.f64 (*.f64 (*.f64 n 2) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (cbrt.f64 (*.f64 (*.f64 n 2) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))))
62.7b
(-.f64 (*.f64 2 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om))))))))) (fma.f64 n (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))) (/.f64 (*.f64 U t) (sqrt.f64 (*.f64 -2 (*.f64 U (-.f64 (/.f64 (*.f64 (*.f64 l l) U) (*.f64 Om Om)) (/.f64 (*.f64 (*.f64 l l) U*) (*.f64 Om Om)))))))))
60.0b
(*.f64 (*.f64 n (sqrt.f64 2)) (sqrt.f64 (*.f64 (-.f64 (/.f64 (*.f64 (pow.f64 l 2) U*) (pow.f64 Om 2)) (/.f64 (*.f64 (pow.f64 l 2) U) (pow.f64 Om 2))) U)))
29.3b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 (*.f64 n l) (/.f64 1 Om)))) t))))
56.9b
(*.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))
36.2b
(cbrt.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))) (sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t))))))
42.3b
(-.f64 (*.f64 (sqrt.f64 (*.f64 n (*.f64 t U))) (sqrt.f64 2)) (*.f64 (sqrt.f64 (/.f64 (*.f64 n U) t)) (/.f64 (*.f64 (pow.f64 l 2) (sqrt.f64 2)) Om)))
61.4b
(sqrt.f64 (log.f64 (pow.f64 (exp.f64 (*.f64 n 2)) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))))
33.6b
(sqrt.f64 (*.f64 (*.f64 2 n) (*.f64 U (fma.f64 (/.f64 l Om) (fma.f64 l -2 (neg.f64 (/.f64 (*.f64 n (*.f64 l U)) Om))) t))))
42.7b
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 n) U)) (sqrt.f64 (+.f64 t (*.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (*.f64 n (/.f64 l Om))))))))
43.0b
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 n U))) (sqrt.f64 (fma.f64 (/.f64 l Om) (fma.f64 l -2 (*.f64 (-.f64 U* U) (/.f64 (*.f64 n l) Om))) t)))
Compiler

Compiled 55617 to 27046 computations (51.4% saved)

regimes21.0s (38.9%)

Accuracy

Total 15.5b remaining (56.5%)

Threshold costs 0b (0%)

Counts
374 → 5
Compiler

Compiled 146474 to 84106 computations (42.6% saved)

bsearch637.0ms (1.2%)

Steps
ItersRangePoint
8
2.1086149555419787e+200
4.793308636305579e+203
2.7421380102116284e+200
7
8.87853335043791e-274
1.4499900169392111e-272
1.344976359452591e-272
4
-3.206859378154402e-179
-1.034930684858659e-192
-4.765493873791625e-180
6
-2.2735333393102985e+171
-3.346280043847441e+170
-1.0705867384987085e+171
Compiler

Compiled 7 to 6 computations (14.3% saved)

simplify20.0ms (0%)

Algorithm
egg-herbie
Rules
36×*-commutative_binary64
19×+-commutative_binary64
17×sub-neg_binary64
14×neg-sub0_binary64
14×neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071233
1110233
2139233
3172233
4201233
5212233
6215233
7213233

end11.0ms (0%)

Compiler

Compiled 162 to 88 computations (45.7% saved)

sample7.5s (13.9%)

Algorithm
intervals
Results
2.9s12852×body128nan
1.8s8000×body128valid
265.0ms1140×body128invalid
Compiler

Compiled 1128 to 629 computations (44.2% saved)

Profiling

Loading profile data...