Details

Time bar (total: 10.2s)

analyze1.7s (16.8%)

Algorithm
search
Search
TrueOtherFalseIter
0%0.8%99.2%0
0%0.8%99.2%1
0%0.8%99.2%2
0%0.8%99.2%3
0%0.8%99.2%4
0%0.8%99.2%5
0.2%0.4%99.4%6
0.2%0.4%99.4%7
0.2%0.4%99.4%8
0.2%0.4%99.4%9
0.3%0.2%99.5%10
0.3%0.2%99.5%11
0.3%0.2%99.5%12
0.3%0.2%99.5%13
0.3%0.1%99.6%14
Compiler

Compiled 48 to 35 computations (27.1% saved)

sample92.0ms (0.9%)

Algorithm
intervals
Results
47.0ms256×body128valid
14.0ms256×pre128true
3.0ms32×pre128false
Compiler

Compiled 81 to 59 computations (27.2% saved)

simplify172.0ms (1.7%)

Algorithm
egg-herbie
Rules
1132×div-sub_binary32
619×times-frac_binary32
357×sub-neg_binary32
347×unsub-neg_binary32
271×associate-/l*_binary32
Counts
1 → 1
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01839
13733
27231
312228
417128
519228
620928
728928
832628
940928
1049928
1191428
12166028
13159428
14156828
15166828
16182028
17199528
18150728
19176528
20153328
21153328
22153328
23153328
24153328
25153328
26134828

prune4.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
0.9b
Counts
2 → 2
Alt Table
StatusErrorProgram
8.2b
(/.f32 (+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
1.0b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 124 to 85 computations (31.5% saved)

localize63.0ms (0.6%)

Local error

Found 4 expressions with local error:

0.1b
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
0.2b
(*.f32 (-.f32 1 u) normAngle)
0.5b
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
1.4b
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle)))

rewrite226.0ms (2.2%)

Algorithm
rewrite-expression-head
Error
0.6b
Rules
42×add-sqr-sqrt_binary32
39×add-exp-log_binary32
32×associate-*r*_binary32
28×*-un-lft-identity_binary32
25×add-cbrt-cube_binary32
Counts
4 → 119
Calls

4 calls:

9.0ms
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle)))
8.0ms
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
7.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
6.0ms
(*.f32 (-.f32 1 u) normAngle)
Compiler

Compiled 3651 to 1996 computations (45.3% saved)

series193.0ms (1.9%)

Error
0.1b
Counts
4 → 44
Calls

4 calls:

72.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i)
38.0ms
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
30.0ms
(*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle)))
15.0ms
(*.f32 (-.f32 1 u) normAngle)
Compiler

Compiled 3748 to 2492 computations (33.5% saved)

simplify124.0ms (1.2%)

Algorithm
egg-herbie
Rules
564×cancel-sign-sub-inv_binary32
406×associate-*r*_binary32
382×associate-*l*_binary32
246×*-commutative_binary32
222×neg-mul-1_binary32
Counts
163 → 128
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03223360
18582941
229102863
344312863
449792863

prune124.0ms (1.2%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New1217128
Fresh011
Picked101
Done000
Total1228130
Error
0.1b
Counts
130 → 8
Alt Table
StatusErrorProgram
2.4b
(+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
1.2b
(+.f32 (*.f32 (*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 u normAngle))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) n0_i) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
0.4b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
1.2b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (cbrt.f32 (sin.f32 (*.f32 u normAngle)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (sin.f32 normAngle))) n1_i))
1.0b
(+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
8.2b
(/.f32 (+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
1.1b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sqrt.f32 (sin.f32 normAngle))) (/.f32 1 (sqrt.f32 (sin.f32 normAngle)))) n1_i))
0.9b
(+.f32 (-.f32 (+.f32 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (+.f32 (*.f32 u n0_i) (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 u 1/6))))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 3326 to 1551 computations (53.4% saved)

localize146.0ms (1.4%)

Local error

Found 4 expressions with local error:

0.3b
(*.f32 (pow.f32 u 3) -1/36)
0.4b
(*.f32 u 7/360)
0.5b
(*.f32 1/120 (pow.f32 u 5))
0.5b
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))

rewrite247.0ms (2.4%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
42×add-sqr-sqrt_binary32
26×associate-*r*_binary32
25×add-exp-log_binary32
22×*-un-lft-identity_binary32
21×associate-*l*_binary32
Counts
4 → 110
Calls

4 calls:

9.0ms
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
5.0ms
(*.f32 (pow.f32 u 3) -1/36)
4.0ms
(*.f32 1/120 (pow.f32 u 5))
3.0ms
(*.f32 u 7/360)
Compiler

Compiled 5850 to 4030 computations (31.1% saved)

series99.0ms (1%)

Error
0.0b
Counts
4 → 20
Calls

4 calls:

45.0ms
(*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle)))
11.0ms
(*.f32 (pow.f32 u 3) -1/36)
10.0ms
(*.f32 1/120 (pow.f32 u 5))
8.0ms
(*.f32 u 7/360)
Compiler

Compiled 2805 to 2036 computations (27.4% saved)

simplify133.0ms (1.3%)

Algorithm
egg-herbie
Rules
304×sub-neg_binary32
271×associate-*l*_binary32
259×associate-*r*_binary32
246×log-prod_binary32
195×exp-prod_binary32
Counts
130 → 85
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
02361821
15041662
217541650
337601626
446851618
549481618
649261618

prune134.0ms (1.3%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New83285
Fresh167
Picked101
Done000
Total85893
Error
0.0b
Counts
93 → 8
Alt Table
StatusErrorProgram
1.2b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (cbrt.f32 (sin.f32 (*.f32 u normAngle)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (sin.f32 normAngle))) n1_i))
0.2b
(+.f32 (*.f32 (+.f32 1 (-.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (+.f32 u (*.f32 1/2 (*.f32 (*.f32 normAngle u) (*.f32 normAngle u)))))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
2.4b
(+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
1.0b
(+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
8.2b
(/.f32 (+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
0.6b
(+.f32 (*.f32 (*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
1.1b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sqrt.f32 (sin.f32 normAngle))) (/.f32 1 (sqrt.f32 (sin.f32 normAngle)))) n1_i))
0.9b
(+.f32 (-.f32 (+.f32 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (+.f32 (*.f32 u n0_i) (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 u 1/6))))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 3690 to 2324 computations (37% saved)

localize165.0ms (1.6%)

Local error

Found 4 expressions with local error:

0.3b
(*.f32 u 1/3)
0.4b
(*.f32 1/6 (pow.f32 u 3))
0.4b
(*.f32 u 7/360)
0.5b
(*.f32 1/120 (pow.f32 u 5))

rewrite269.0ms (2.6%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
31×add-sqr-sqrt_binary32
25×associate-*r*_binary32
18×add-exp-log_binary32
15×*-un-lft-identity_binary32
15×add-cube-cbrt_binary32
Counts
4 → 92
Calls

4 calls:

5.0ms
(*.f32 1/6 (pow.f32 u 3))
5.0ms
(*.f32 1/120 (pow.f32 u 5))
3.0ms
(*.f32 u 7/360)
3.0ms
(*.f32 u 1/3)
Compiler

Compiled 5988 to 3815 computations (36.3% saved)

series52.0ms (0.5%)

Error
0.0b
Counts
4 → 12
Calls

4 calls:

13.0ms
(*.f32 1/120 (pow.f32 u 5))
12.0ms
(*.f32 1/6 (pow.f32 u 3))
10.0ms
(*.f32 u 1/3)
10.0ms
(*.f32 u 7/360)
Compiler

Compiled 1963 to 1336 computations (31.9% saved)

simplify83.0ms (0.8%)

Algorithm
egg-herbie
Rules
486×sqr-pow_binary32
462×unswap-sqr_binary32
361×*-commutative_binary32
233×times-frac_binary32
231×log-prod_binary32
Counts
104 → 56
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
0153937
1284860
2742848
31196848
42194816
53585813
64889813

prune108.0ms (1.1%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New56056
Fresh077
Picked011
Done000
Total56864
Error
0.0b
Counts
64 → 8
Alt Table
StatusErrorProgram
1.2b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (cbrt.f32 (sin.f32 (*.f32 u normAngle)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (sin.f32 normAngle))) n1_i))
0.2b
(+.f32 (*.f32 (+.f32 1 (-.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (+.f32 u (*.f32 1/2 (*.f32 (*.f32 normAngle u) (*.f32 normAngle u)))))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
2.4b
(+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
1.0b
(+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
8.2b
(/.f32 (+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
0.6b
(+.f32 (*.f32 (*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
1.1b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sqrt.f32 (sin.f32 normAngle))) (/.f32 1 (sqrt.f32 (sin.f32 normAngle)))) n1_i))
0.9b
(+.f32 (-.f32 (+.f32 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (+.f32 (*.f32 u n0_i) (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 u 1/6))))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 2815 to 1783 computations (36.7% saved)

localize153.0ms (1.5%)

Local error

Found 4 expressions with local error:

0.4b
(*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
0.4b
(*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
0.4b
(*.f32 u 7/360)
0.5b
(*.f32 1/120 (pow.f32 u 5))

rewrite297.0ms (2.9%)

Algorithm
rewrite-expression-head
Error
0.0b
Rules
42×associate-*r*_binary32
42×add-sqr-sqrt_binary32
29×sqrt-prod_binary32
27×*-un-lft-identity_binary32
26×add-cube-cbrt_binary32
Counts
4 → 112
Calls

4 calls:

13.0ms
(*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
9.0ms
(*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
8.0ms
(*.f32 1/120 (pow.f32 u 5))
3.0ms
(*.f32 u 7/360)
Compiler

Compiled 6837 to 4225 computations (38.2% saved)

series156.0ms (1.5%)

Error
0.0b
Counts
4 → 26
Calls

4 calls:

52.0ms
(*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
39.0ms
(*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle))))
17.0ms
(*.f32 u 7/360)
11.0ms
(*.f32 1/120 (pow.f32 u 5))
Compiler

Compiled 3814 to 2690 computations (29.5% saved)

simplify107.0ms (1%)

Algorithm
egg-herbie
Rules
936×times-frac_binary32
264×associate-*l*_binary32
258×cancel-sign-sub-inv_binary32
233×associate-*r*_binary32
176×associate-+l+_binary32
Counts
138 → 98
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02262716
15132479
215952466
337312466
449702466

prune160.0ms (1.6%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New98098
Fresh066
Picked011
Done011
Total988106
Error
0.0b
Counts
106 → 8
Alt Table
StatusErrorProgram
1.2b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (*.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (cbrt.f32 (sin.f32 (*.f32 u normAngle)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 u normAngle))) (sin.f32 normAngle))) n1_i))
0.2b
(+.f32 (*.f32 (+.f32 1 (-.f32 (*.f32 (*.f32 normAngle normAngle) (+.f32 (*.f32 u 1/3) (*.f32 1/6 (pow.f32 u 3)))) (+.f32 u (*.f32 1/2 (*.f32 (*.f32 normAngle u) (*.f32 normAngle u)))))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
2.4b
(+.f32 (-.f32 n0_i (/.f32 (*.f32 (cos.f32 normAngle) (*.f32 u (*.f32 normAngle n0_i))) (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
1.0b
(+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 n0_i (sin.f32 normAngle))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
8.2b
(/.f32 (+.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) n0_i) (*.f32 (sin.f32 (*.f32 u normAngle)) n1_i)) (sin.f32 normAngle))
0.6b
(+.f32 (*.f32 (*.f32 (*.f32 (sin.f32 (-.f32 normAngle (*.f32 normAngle u))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) (sqrt.f32 (/.f32 1 (sin.f32 normAngle)))) n0_i) (*.f32 (+.f32 (+.f32 (+.f32 u (*.f32 (pow.f32 normAngle 4) (+.f32 (*.f32 1/120 (pow.f32 u 5)) (*.f32 u 7/360)))) (*.f32 (*.f32 (*.f32 normAngle normAngle) 1/6) (-.f32 u (pow.f32 u 3)))) (*.f32 (pow.f32 normAngle 4) (*.f32 (pow.f32 u 3) -1/36))) n1_i))
1.1b
(+.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (-.f32 1 u) normAngle)) (/.f32 1 (sin.f32 normAngle))) n0_i) (*.f32 (*.f32 (/.f32 (sin.f32 (*.f32 u normAngle)) (sqrt.f32 (sin.f32 normAngle))) (/.f32 1 (sqrt.f32 (sin.f32 normAngle)))) n1_i))
0.9b
(+.f32 (-.f32 (+.f32 n0_i (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 u 1/2) (*.f32 1/6 (pow.f32 u 3))))) (+.f32 (*.f32 u n0_i) (*.f32 (*.f32 normAngle (*.f32 normAngle n0_i)) (+.f32 (*.f32 1/2 (*.f32 u u)) (*.f32 u 1/6))))) (*.f32 (*.f32 (sin.f32 (*.f32 u normAngle)) (/.f32 1 (sin.f32 normAngle))) n1_i))
Compiler

Compiled 4642 to 2817 computations (39.3% saved)

regimes1.9s (19%)

Accuracy

Total 0.3b remaining (85.7%)

Threshold costs 0.3b (85.7%)

Compiler

Compiled 48323 to 33002 computations (31.7% saved)

simplify9.0ms (0.1%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
044103
172103
283103
3100103
4111103
5122103
6127103
7130103
8131103
9129103

end1.0ms (0%)

Compiler

Compiled 73 to 50 computations (31.5% saved)

sample3.3s (31.8%)

Algorithm
intervals
Results
1.5s8000×body128valid
510.0ms8000×pre128true
49.0ms940×pre128false
Compiler

Compiled 467 to 312 computations (33.2% saved)

Profiling

Loading profile data...