Details

Time bar (total: 16.3s)

analyze1.9s (11.4%)

Algorithm
search
Search
TrueOtherFalseIter
0%3%97%0
0%3%97%1
0%3%97%2
0%3%97%3
0%3%97%4
0%3%97%5
0%1.5%98.5%6
0%1.5%98.5%7
0%1.5%98.5%8
0%1.5%98.5%9
0%1.5%98.5%10
0.6%0.9%98.5%11
0.6%0.9%98.5%12
0.6%0.9%98.5%13
0.6%0.9%98.5%14
Compiler

Compiled 69 to 51 computations (26.1% saved)

sample129.0ms (0.8%)

Algorithm
intervals
Symmetry

(sort cosTheta_i cosTheta_O)

(sort sinTheta_i sinTheta_O)

Results
31.0ms256×body128valid
13.0ms260×pre128true
0.0msbody128nan
Compiler

Compiled 104 to 78 computations (25% saved)

simplify47.0ms (0.3%)

Algorithm
egg-herbie
Rules
788×fma-neg_binary32
718×fma-def_binary32
560×exp-diff_binary32
512×exp-sum_binary32
448×sub-neg_binary32
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02235
15333
214531
353229
4211929
5443129
6497529

prune5.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.2b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.2b
(exp.f32 (+.f32 (+.f32 (-.f32 (-.f32 (/.f32 (*.f32 cosTheta_i cosTheta_O) v) (/.f32 (*.f32 sinTheta_i sinTheta_O) v)) (/.f32 1 v)) 6931/10000) (log.f32 (/.f32 1 (*.f32 2 v)))))
0.2b
(*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
Compiler

Compiled 160 to 112 computations (30% saved)

localize50.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))
0.1b
(exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))
0.1b
(fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)
0.1b
(*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))

series221.0ms (1.4%)

Counts
4 → 180
Calls

4 calls:

120.0ms
(*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
48.0ms
(exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))
41.0ms
(-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))
11.0ms
(fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)

rewrite30.0ms (0.2%)

Algorithm
rewrite-expression-head
Rules
44×add-sqr-sqrt_binary32
39×*-un-lft-identity_binary32
35×add-cube-cbrt_binary32
28×exp-sum_binary32
27×prod-diff_binary32
Counts
4 → 123
Calls

4 calls:

11.0ms
(*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
4.0ms
(exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))
3.0ms
(-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))
0.0ms
(fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)

simplify175.0ms (1.1%)

Algorithm
egg-herbie
Rules
392×times-frac_binary32
288×associate-/l*_binary32
278×associate-*r*_binary32
275×associate-+r+_binary32
243×fma-def_binary32
Counts
303 → 223
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
044111185
1119810395
2515610395

prune469.0ms (2.9%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2176223
Fresh101
Picked101
Done000
Total2196225
Error
0.0b
Counts
225 → 6
Alt Table
StatusErrorProgram
0.2b
(*.f32 (/.f32 1/2 v) (pow.f32 (E.f32) (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
12.0b
(*.f32 (*.f32 1/2 (/.f32 (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) v)) (exp.f32 (fma.f32 (neg.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))))
2.7b
(*.f32 (/.f32 1/2 v) (pow.f32 (exp.f32 (+.f32 (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)) (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))) (-.f32 (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)) (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.2b
(*.f32 (sqrt.f32 (*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))) (sqrt.f32 (*.f32 (/.f32 1/2 v) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
0.2b
(*.f32 (*.f32 (cbrt.f32 (/.f32 1/2 v)) (cbrt.f32 (/.f32 1/2 v))) (*.f32 (cbrt.f32 (/.f32 1/2 v)) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
Compiler

Compiled 11015 to 6394 computations (42% saved)

localize75.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))
0.1b
(exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))
0.1b
(fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)
0.3b
(/.f32 (sqrt.f32 1/2) (sqrt.f32 v))

series18.0ms (0.1%)

Counts
1 → 0
Calls

1 calls:

18.0ms
(/.f32 (sqrt.f32 1/2) (sqrt.f32 v))

rewrite9.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
42×sqrt-prod_binary32
36×times-frac_binary32
31×add-sqr-sqrt_binary32
29×*-un-lft-identity_binary32
29×add-cube-cbrt_binary32
Counts
1 → 64
Calls

1 calls:

5.0ms
(/.f32 (sqrt.f32 1/2) (sqrt.f32 v))

simplify135.0ms (0.8%)

Algorithm
egg-herbie
Rules
850×fma-neg_binary32
761×times-frac_binary32
622×div-sub_binary32
577×associate-/l/_binary32
510×fma-def_binary32
Counts
64 → 62
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0801071
11221037
22181037
33391037
44881037
56261037
611771037
731421037
844301037
943281037
1049401037
1147511037

prune625.0ms (3.8%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New2443247
Fresh235
Picked101
Done000
Total2476253
Error
0.0b
Counts
253 → 6
Alt Table
StatusErrorProgram
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (*.f32 (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
12.0b
(*.f32 (*.f32 1/2 (/.f32 (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) v)) (exp.f32 (fma.f32 (neg.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))))
2.6b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (+.f32 (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)))) (-.f32 (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)) (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
0.2b
(*.f32 (/.f32 1/2 v) (pow.f32 (E.f32) (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
0.2b
(*.f32 (*.f32 (cbrt.f32 (/.f32 1/2 v)) (cbrt.f32 (/.f32 1/2 v))) (*.f32 (cbrt.f32 (/.f32 1/2 v)) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
Compiler

Compiled 11801 to 6806 computations (42.3% saved)

localize76.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))
0.3b
(/.f32 (sqrt.f32 1/2) (sqrt.f32 v))
0.3b
(*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))
0.5b
(*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))

series412.0ms (2.5%)

Counts
3 → 16
Calls

3 calls:

227.0ms
(*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))
166.0ms
(cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))
20.0ms
(*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))

rewrite122.0ms (0.7%)

Algorithm
rewrite-expression-head
Rules
368×add-sqr-sqrt_binary32
361×cbrt-prod_binary32
324×sqrt-prod_binary32
324×times-frac_binary32
174×*-un-lft-identity_binary32
Counts
3 → 353
Calls

3 calls:

34.0ms
(*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))
22.0ms
(*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))
3.0ms
(cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))

simplify354.0ms (2.2%)

Algorithm
egg-herbie
Rules
692×unswap-sqr_binary32
320×log-prod_binary32
297×*-commutative_binary32
272×associate-/l*_binary32
253×associate-*l*_binary32
Counts
369 → 346
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
025412108
140011556
2124910960
3287410660
4447310660
5497810660

prune2.5s (15.1%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New7022704
Fresh145
Picked011
Done000
Total7037710
Error
0.0b
Counts
710 → 7
Alt Table
StatusErrorProgram
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 5) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (*.f32 (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
12.0b
(*.f32 (*.f32 1/2 (/.f32 (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) v)) (exp.f32 (fma.f32 (neg.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (*.f32 (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (cbrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))))
2.6b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (+.f32 (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)))) (-.f32 (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)) (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
0.2b
(*.f32 (/.f32 1/2 v) (pow.f32 (E.f32) (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
Compiler

Compiled 37101 to 23017 computations (38% saved)

localize89.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))
0.3b
(/.f32 (sqrt.f32 1/2) (sqrt.f32 v))
0.3b
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))))
1.4b
(pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8)

series245.0ms (1.5%)

Counts
2 → 8
Calls

2 calls:

227.0ms
(pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8)
18.0ms
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))))

rewrite100.0ms (0.6%)

Algorithm
rewrite-expression-head
Rules
425×cbrt-prod_binary32
268×add-sqr-sqrt_binary32
172×sqrt-prod_binary32
172×times-frac_binary32
141×unpow-prod-down_binary32
Counts
2 → 239
Calls

2 calls:

42.0ms
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))))
8.0ms
(pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8)

simplify414.0ms (2.5%)

Algorithm
egg-herbie
Rules
430×*-commutative_binary32
402×sqr-pow_binary32
232×unswap-sqr_binary32
230×fma-def_binary32
221×associate-/l*_binary32
Counts
247 → 250
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02868860
15028740
213438582
319218523
426238509
547898509
649948509
749568509
848448509

prune2.0s (12%)

Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New5424546
Fresh325
Picked101
Done011
Total5467553
Error
0.0b
Counts
553 → 7
Alt Table
StatusErrorProgram
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (pow.f32 (sqrt.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) 8) (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 5)) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (*.f32 (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))) (cbrt.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
0.1b
(*.f32 (expm1.f32 (log1p.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) 8) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (sqrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) 9) (pow.f32 (cbrt.f32 (cbrt.f32 (sqrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) 9)) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
2.6b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (pow.f32 (exp.f32 (+.f32 (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))) (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)))) (-.f32 (sqrt.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000)) (sqrt.f32 (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v)))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (*.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
0.1b
(*.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v)) (*.f32 (*.f32 (exp.f32 (*.f32 (log.f32 (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) 8)) (cbrt.f32 (cbrt.f32 (/.f32 (sqrt.f32 1/2) (sqrt.f32 v))))) (exp.f32 (-.f32 (fma.f32 cosTheta_O (/.f32 cosTheta_i v) 6931/10000) (fma.f32 sinTheta_i (/.f32 sinTheta_O v) (/.f32 1 v))))))
Compiler

Compiled 27734 to 17990 computations (35.1% saved)

regimes3.4s (21.2%)

Accuracy

Total 0.0b remaining (31.8%)

Threshold costs 0.0b (31.8%)

Counts
268 → 1
Compiler

Compiled 96695 to 69127 computations (28.5% saved)

simplify4.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
+-commutative_binary32
sub-neg_binary32
neg-sub0_binary32
neg-mul-1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03480
14280
24680
34880
44980
54880

end29.0ms (0.2%)

Remove

(sort sinTheta_i sinTheta_O)

(sort cosTheta_i cosTheta_O)

Compiler

Compiled 270 to 210 computations (22.2% saved)

sample2.7s (16.8%)

Algorithm
intervals
Results
1.1s8000×body128valid
586.0ms8114×pre128true
13.0ms114×body128nan
Compiler

Compiled 488 to 349 computations (28.5% saved)

Profiling

Loading profile data...