Details

Time bar (total: 20.4s)

analyze8.0ms (0%)

Algorithm
search
Search
TrueOtherFalseIter
0%0%100%0
0%0%100%1
Compiler

Compiled 118 to 85 computations (28% saved)

sample4.3s (21.1%)

Results
4.3s8256×body128valid
Compiler

Compiled 236 to 170 computations (28% saved)

preprocess35.0ms (0.2%)

Algorithm
egg-herbie
Rules
16×fma-def_binary32
1-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01911584
12091584
066
Stop Event
saturated
saturated
Compiler

Compiled 71 to 50 computations (29.6% saved)

simplify7.0ms (0%)

Algorithm
egg-herbie
Rules
1-exp_binary32
fma-def_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02799
13099
Stop Event
saturated
Counts
1 → 2

prune8.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.3b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
Compiler

Compiled 417 to 290 computations (30.5% saved)

localize92.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (*.f32 (-.f32 1 ux) maxCos) ux)
0.2b
(*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))
0.2b
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
0.3b
(*.f32 (*.f32 uy 2) (PI.f32))

series413.0ms (2%)

Counts
4 → 108
Calls

27 calls:

189.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
yi
0
44.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
uy
-inf
29.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
yi
-inf
23.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
yi
inf
22.0ms
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
uy
inf

rewrite53.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
344×log-pow_binary32
331×expm1-udef_binary32
331×log1p-udef_binary32
187×add-sqr-sqrt_binary32
175×log1p-expm1-u_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01964
135564
2369764
Stop Event
node limit
Counts
4 → 58

simplify850.0ms (4.2%)

Algorithm
egg-herbie
Rules
1601×sqr-pow_binary32
537×pow-sqr_binary32
68×cube-mult_binary32
68×unpow3_binary32
62×cube-prod_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03015354
14415314
25135314
35815314
46565314
57345314
68195314
79085314
810035314
911025314
1012075314
1113165314
1214315314
1315505314
1416755314
1518045314
1619395314
1720785314
1822235314
1923725314
2025275314
2126865314
2227235314
2327275314
2427275314
2528825314
2630475314
2732205314
2833995314
2935825314
3037715314
3139645314
3241635314
3343665314
3445755314
3547885314
3647965314
3748005314
3848005314
Stop Event
node limit
Counts
166 → 134

prune1.8s (8.7%)

Pruning

16 alts after pruning (16 fresh and 0 done)

PrunedKeptTotal
New25615271
Fresh011
Picked101
Done000
Total25716273
Error
0.1b
Counts
273 → 16
Alt Table
StatusErrorProgram
4.6b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (cbrt.f32 (*.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) 3) (pow.f32 yi 3)))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (pow.f32 (*.f32 (*.f32 uy 2) (PI.f32)) 3) 1/3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.9b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 maxCos ux) zi))
10.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (log.f32 (pow.f32 (pow.f32 (exp.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32)))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (cbrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 3)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
1.1b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (-.f32 (fma.f32 2 (*.f32 (*.f32 (PI.f32) (*.f32 uy yi)) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/15 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 5) (pow.f32 uy 5))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))) (fma.f32 8/315 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 7) (pow.f32 uy 7))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/3 (*.f32 (*.f32 (pow.f32 uy 3) (*.f32 yi (pow.f32 (PI.f32) 3))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (cbrt.f32 (*.f32 (pow.f32 (*.f32 uy 2) 3) (pow.f32 (PI.f32) 3)))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (pow.f32 (sqrt.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))) 2) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
16.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (sqrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 2)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
2.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))) zi))
Compiler

Compiled 22952 to 15156 computations (34% saved)

localize103.0ms (0.5%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))
0.2b
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
0.2b
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
0.3b
(*.f32 (*.f32 uy 2) (PI.f32))

series9.0ms (0%)

Counts
1 → 12
Calls

6 calls:

3.0ms
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
maxCos
-inf
2.0ms
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
maxCos
0
2.0ms
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
maxCos
inf
1.0ms
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
ux
-inf
1.0ms
(*.f32 maxCos (-.f32 ux (pow.f32 ux 2)))
ux
inf

rewrite31.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
559×log1p-expm1-u_binary32
559×expm1-log1p-u_binary32
221×unpow-prod-down_binary32
176×pow2_binary32
169×log-prod_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
114010
2150010
Stop Event
node limit
Counts
1 → 16

simplify2.8s (13.6%)

Algorithm
egg-herbie
Rules
997×sqr-pow_binary32
rem-sqrt-square_binary32
1-exp_binary32
unpow1_binary32
unpow1/2_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010141
117141
225141
332141
438141
543141
648141
753141
858141
963141
1068141
1173141
1278141
1383141
1488141
1593141
1698141
17103141
18108141
19113141
20118141
21123141
22128141
23133141
24138141
25143141
26148141
27153141
28158141
29163141
30168141
31173141
32178141
33183141
34188141
35193141
36198141
37203141
38208141
39213141
40218141
41223141
42228141
43233141
44238141
45243141
46248141
47253141
48258141
49263141
50268141
51273141
52278141
53283141
54288141
55293141
56298141
57303141
58308141
59313141
60318141
61323141
62328141
63333141
64338141
65343141
66348141
67353141
68358141
69363141
70368141
71373141
72378141
73383141
74388141
75393141
76398141
77403141
78408141
79413141
80418141
81423141
82428141
83433141
84438141
85443141
86448141
87453141
88458141
89463141
90468141
91473141
92478141
93483141
94488141
95493141
96498141
97503141
98508141
99513141
100518141
101523141
102528141
103533141
104538141
105543141
106548141
107553141
108558141
109563141
110568141
111573141
112578141
113583141
114588141
115593141
116598141
117603141
118608141
119613141
120618141
121623141
122628141
123633141
124638141
125643141
126648141
127653141
128658141
129663141
130668141
131673141
132678141
133683141
134688141
135693141
136698141
137703141
138708141
139713141
140718141
141723141
142728141
143733141
144738141
145743141
146748141
147753141
148758141
149763141
150768141
151773141
152778141
153783141
154788141
155793141
156798141
157803141
158808141
159813141
160818141
161823141
162828141
163833141
164838141
165843141
166848141
167853141
168858141
169863141
170868141
171873141
172878141
173883141
174888141
175893141
176898141
177903141
178908141
179913141
180918141
181923141
182928141
183933141
184938141
185943141
186948141
187953141
188958141
189963141
190968141
191973141
192978141
193983141
194988141
195993141
196998141
1971003141
1981008141
1991013141
2001018141
2011023141
2021028141
2031033141
2041038141
2051043141
2061048141
2071053141
2081058141
2091063141
2101068141
2111073141
2121078141
2131083141
2141088141
2151093141
2161098141
2171103141
2181108141
2191113141
2201118141
2211123141
2221128141
2231133141
2241138141
2251143141
2261148141
2271153141
2281158141
2291163141
2301168141
2311173141
2321178141
2331183141
2341188141
2351193141
2361198141
2371203141
2381208141
2391213141
2401218141
2411223141
2421228141
2431233141
2441238141
2451243141
2461248141
2471253141
2481258141
2491263141
2501268141
2511273141
2521278141
2531283141
2541288141
2551293141
2561298141
2571303141
2581308141
2591313141
2601318141
2611323141
2621328141
2631333141
2641338141
2651343141
2661348141
2671353141
2681358141
2691363141
2701368141
2711373141
2721378141
2731383141
2741388141
2751393141
2761398141
2771403141
2781408141
2791413141
2801418141
2811423141
2821428141
2831433141
2841438141
2851443141
2861448141
2871453141
2881458141
2891463141
2901468141
2911473141
2921478141
2931483141
2941488141
2951493141
2961498141
2971503141
2981508141
2991513141
3001518141
3011523141
3021528141
3031533141
3041538141
3051543141
3061548141
3071553141
3081558141
3091563141
3101568141
3111573141
3121578141
3131583141
3141588141
3151593141
3161598141
3171603141
3181608141
3191613141
3201618141
3211623141
3221628141
3231633141
3241638141
3251643141
3261648141
3271653141
3281658141
3291663141
3301668141
3311673141
3321678141
3331683141
3341688141
3351693141
3361698141
3371703141
3381708141
3391713141
3401718141
3411723141
3421728141
3431733141
3441738141
3451743141
3461748141
3471753141
3481758141
3491763141
3501768141
3511773141
3521778141
3531783141
3541788141
3551793141
3561798141
3571803141
3581808141
3591813141
3601818141
3611823141
3621828141
3631833141
3641838141
3651843141
3661848141
3671853141
3681858141
3691863141
3701868141
3711873141
3721878141
3731883141
3741888141
3751893141
3761898141
3771903141
3781908141
3791913141
3801918141
3811923141
3821928141
3831933141
3841938141
3851943141
3861948141
3871953141
3881958141
3891963141
3901968141
3911973141
3921978141
3931983141
3941988141
3951993141
3961998141
3972003141
3982008141
3992013141
4002018141
4012023141
4022028141
4032033141
4042038141
4052043141
4062048141
4072053141
4082058141
4092063141
4102068141
4112073141
4122078141
4132083141
4142088141
4152093141
4162098141
4172103141
4182108141
4192113141
4202118141
4212123141
4222128141
4232133141
4242138141
4252143141
4262148141
4272153141
4282158141
4292163141
4302168141
4312173141
4322178141
4332183141
4342188141
4352193141
4362198141
4372203141
4382208141
4392213141
4402218141
4412223141
4422228141
4432233141
4442238141
4452243141
4462248141
4472253141
4482258141
4492263141
4502268141
4512273141
4522278141
4532283141
4542288141
4552293141
4562298141
4572303141
4582308141
4592313141
4602318141
4612323141
4622328141
4632333141
4642338141
4652343141
4662348141
4672353141
4682358141
4692363141
4702368141
4712373141
4722378141
4732383141
4742388141
4752393141
4762398141
4772403141
4782408141
4792413141
4802418141
4812423141
4822428141
4832433141
4842438141
4852443141
4862448141
4872453141
4882458141
4892463141
4902468141
4912473141
4922478141
4932483141
4942488141
4952493141
4962498141
4972503141
4982508141
4992513141
5002518141
5012523141
5022528141
5032533141
5042538141
5052543141
5062548141
5072553141
5082558141
5092563141
5102568141
5112573141
5122578141
5132583141
5142588141
5152593141
5162598141
5172603141
5182608141
5192613141
5202618141
5212623141
5222628141
5232633141
5242638141
5252643141
5262648141
5272653141
5282658141
5292663141
5302668141
5312673141
5322678141
5332683141
5342688141
5352693141
5362698141
5372703141
5382708141
5392713141
5402718141
5412723141
5422728141
5432733141
5442738141
5452743141
5462748141
5472753141
5482758141
5492763141
5502768141
5512773141
5522778141
5532783141
5542788141
5552793141
5562798141
5572803141
5582808141
5592813141
5602818141
5612823141
5622828141
5632833141
5642838141
5652843141
5662848141
5672853141
5682858141
5692863141
5702868141
5712873141
5722878141
5732883141
5742888141
5752893141
5762898141
5772903141
5782908141
5792913141
5802918141
5812923141
5822928141
5832933141
5842938141
5852943141
5862948141
5872953141
5882958141
5892963141
5902968141
5912973141
5922978141
5932983141
5942988141
5952993141
5962998141
5973003141
5983008141
5993013141
6003018141
6013023141
6023028141
6033033141
6043038141
6053043141
6063048141
6073053141
6083058141
6093063141
6103068141
6113073141
6123078141
6133083141
6143088141
6153093141
6163098141
6173103141
6183108141
6193113141
6203118141
6213123141
6223128141
6233133141
6243138141
6253143141
6263148141
6273153141
6283158141
6293163141
6303168141
6313173141
6323178141
6333183141
6343188141
6353193141
6363198141
6373203141
6383208141
6393213141
6403218141
6413223141
6423228141
6433233141
6443238141
6453243141
6463248141
6473253141
6483258141
6493263141
6503268141
6513273141
6523278141
6533283141
6543288141
6553293141
6563298141
6573303141
6583308141
6593313141
6603318141
6613323141
6623328141
6633333141
6643338141
6653343141
6663348141
6673353141
6683358141
6693363141
6703368141
6713373141
6723378141
6733383141
6743388141
6753393141
6763398141
6773403141
6783408141
6793413141
6803418141
6813423141
6823428141
6833433141
6843438141
6853443141
6863448141
6873453141
6883458141
6893463141
6903468141
6913473141
6923478141
6933483141
6943488141
6953493141
6963498141
6973503141
6983508141
6993513141
7003518141
7013523141
7023528141
7033533141
7043538141
7053543141
7063548141
7073553141
7083558141
7093563141
7103568141
7113573141
7123578141
7133583141
7143588141
7153593141
7163598141
7173603141
7183608141
7193613141
7203618141
7213623141
7223628141
7233633141
7243638141
7253643141
7263648141
7273653141
7283658141
7293663141
7303668141
7313673141
7323678141
7333683141
7343688141
7353693141
7363698141
7373703141
7383708141
7393713141
7403718141
7413723141
7423728141
7433733141
7443738141
7453743141
7463748141
7473753141
7483758141
7493763141
7503768141
7513773141
7523778141
7533783141
7543788141
7553793141
7563798141
7573803141
7583808141
7593813141
7603818141
7613823141
7623828141
7633833141
7643838141
7653843141
7663848141
7673853141
7683858141
7693863141
7703868141
7713873141
7723878141
7733883141
7743888141
7753893141
7763898141
7773903141
7783908141
7793913141
7803918141
7813923141
7823928141
7833933141
7843938141
7853943141
7863948141
7873953141
7883958141
7893963141
7903968141
7913973141
7923978141
7933983141
7943988141
7953993141
7963998141
7974003141
7984008141
7994013141
8004018141
8014023141
8024028141
8034033141
8044038141
8054043141
8064048141
8074053141
8084058141
8094063141
8104068141
8114073141
8124078141
8134083141
8144088141
8154093141
8164098141
8174103141
8184108141
8194113141
8204118141
8214123141
8224128141
8234133141
8244138141
8254143141
8264148141
8274153141
8284158141
8294163141
8304168141
8314173141
8324178141
8334183141
8344188141
8354193141
8364198141
8374203141
8384208141
8394213141
8404218141
8414223141
8424228141
8434233141
8444238141
8454243141
8464248141
8474253141
8484258141
8494263141
8504268141
8514273141
8524278141
8534283141
8544288141
8554293141
8564298141
8574303141
8584308141
8594313141
8604318141
8614323141
8624328141
8634333141
8644338141
8654343141
8664348141
8674353141
8684358141
8694363141
8704368141
8714373141
8724378141
8734383141
8744388141
8754393141
8764398141
8774403141
8784408141
8794413141
8804418141
8814423141
8824428141
8834433141
8844438141
8854443141
8864448141
8874453141
8884458141
8894463141
8904468141
8914473141
8924478141
8934483141
8944488141
8954493141
8964498141
8974503141
8984508141
8994513141
9004518141
9014523141
9024528141
9034533141
9044538141
9054543141
9064548141
9074553141
9084558141
9094563141
9104568141
9114573141
9124578141
9134583141
9144588141
9154593141
9164598141
9174603141
9184608141
9194613141
9204618141
9214623141
9224628141
9234633141
9244638141
9254643141
9264648141
9274653141
9284658141
9294663141
9304668141
9314673141
9324678141
9334683141
9344688141
9354693141
9364698141
9374703141
9384708141
9394713141
9404718141
9414723141
9424728141
9434733141
9444738141
9454743141
9464748141
9474753141
9484758141
9494763141
9504768141
9514773141
9524778141
9534783141
9544788141
9554793141
9564798141
9574803141
9584808141
9594813141
9604818141
9614823141
9624828141
9634833141
9644838141
9654843141
9664848141
9674853141
9684858141
9694863141
9704868141
9714873141
9724878141
9734883141
9744888141
9754893141
9764898141
9774903141
9784908141
9794913141
9804918141
9814923141
9824928141
9834933141
9844938141
9854943141
9864948141
9874953141
9884958141
9894963141
9904968141
9914973141
9924978141
9934983141
9944988141
9954993141
9964998141
Stop Event
node limit
Counts
28 → 21

prune912.0ms (4.5%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New1684172
Fresh41115
Picked101
Done000
Total17315188
Error
0.1b
Counts
188 → 15
Alt Table
StatusErrorProgram
10.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (log.f32 (pow.f32 (pow.f32 (exp.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32)))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (cbrt.f32 (*.f32 (pow.f32 (*.f32 uy 2) 3) (pow.f32 (PI.f32) 3)))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
4.6b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (cbrt.f32 (*.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) 3) (pow.f32 yi 3)))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (pow.f32 (*.f32 (*.f32 uy 2) (PI.f32)) 3) 1/3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.9b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 maxCos ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (cbrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 3)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2) zi))
16.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (sqrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 2)) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
1.1b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (-.f32 (fma.f32 2 (*.f32 (*.f32 (PI.f32) (*.f32 uy yi)) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/15 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 5) (pow.f32 uy 5))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))) (fma.f32 8/315 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 7) (pow.f32 uy 7))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/3 (*.f32 (*.f32 (pow.f32 uy 3) (*.f32 yi (pow.f32 (PI.f32) 3))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
2.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))) zi))
Compiler

Compiled 16308 to 10704 computations (34.4% saved)

localize117.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 maxCos (-.f32 ux (*.f32 ux ux)))
0.3b
(*.f32 (*.f32 uy 2) (PI.f32))
0.4b
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
1.4b
(sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux))))

series168.0ms (0.8%)

Counts
3 → 40
Calls

18 calls:

24.0ms
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
ux
inf
23.0ms
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
ux
-inf
20.0ms
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
maxCos
-inf
19.0ms
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
maxCos
inf
18.0ms
(pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2)
maxCos
0

rewrite39.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
625×log1p-expm1-u_binary32
625×expm1-log1p-u_binary32
191×log-prod_binary32
145×log-pow_binary32
138×expm1-udef_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0932
118032
2171732
Stop Event
node limit
Counts
3 → 62

simplify273.0ms (1.3%)

Algorithm
egg-herbie
Rules
1732×sqr-pow_binary32
764×pow-sqr_binary32
78×cube-prod_binary32
78×cube-mult_binary32
78×unpow3_binary32
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
043694
178654
2105654
3137654
4177654
5217654
6264654
7314654
8371654
9431654
10498654
11568654
12645654
13725654
14812654
15902654
16999654
171099654
181206654
191316654
201433654
211553654
221680654
231810654
241947654
252087654
262234654
272242654
282246654
292246654
302394654
312547654
322707654
332874654
343044654
353221654
363401654
373588654
383778654
393975654
404175654
414183654
424187654
434187654
444392654
454598654
464815654
Stop Event
node limit
Counts
102 → 73

prune613.0ms (3%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New1030103
Fresh01414
Picked011
Done000
Total10315118
Error
0.1b
Counts
118 → 15
Alt Table
StatusErrorProgram
10.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (log.f32 (pow.f32 (pow.f32 (exp.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32)))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (cbrt.f32 (*.f32 (pow.f32 (*.f32 uy 2) 3) (pow.f32 (PI.f32) 3)))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
4.6b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (cbrt.f32 (*.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) 3) (pow.f32 yi 3)))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (pow.f32 (*.f32 (*.f32 uy 2) (PI.f32)) 3) 1/3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.9b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 maxCos ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (cbrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 3)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2) zi))
16.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (sqrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 2)) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
1.1b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (-.f32 (fma.f32 2 (*.f32 (*.f32 (PI.f32) (*.f32 uy yi)) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/15 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 5) (pow.f32 uy 5))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))) (fma.f32 8/315 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 7) (pow.f32 uy 7))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/3 (*.f32 (*.f32 (pow.f32 uy 3) (*.f32 yi (pow.f32 (PI.f32) 3))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
2.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))) zi))
Compiler

Compiled 9779 to 6250 computations (36.1% saved)

localize87.0ms (0.4%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f32 (*.f32 (-.f32 1 ux) maxCos) ux)
0.2b
(*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))
0.2b
(*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)
0.3b
(*.f32 (*.f32 uy 2) (PI.f32))

prune1.7s (8.3%)

Pruning

15 alts after pruning (13 fresh and 2 done)

PrunedKeptTotal
New2710271
Fresh01313
Picked011
Done011
Total27115286
Error
0.1b
Counts
286 → 15
Alt Table
StatusErrorProgram
10.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (log.f32 (pow.f32 (pow.f32 (exp.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32)))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (cbrt.f32 (*.f32 (pow.f32 (*.f32 uy 2) 3) (pow.f32 (PI.f32) 3)))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
4.6b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (cbrt.f32 (*.f32 (pow.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) 3) (pow.f32 yi 3)))) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (pow.f32 (*.f32 (*.f32 uy 2) (PI.f32)) 3) 1/3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.9b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 maxCos ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (cbrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 3)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (+.f32 (*.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi) (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (pow.f32 (sqrt.f32 (*.f32 maxCos (-.f32 ux (*.f32 ux ux)))) 2) zi))
16.8b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (pow.f32 (sqrt.f32 (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (pow.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) 2)))) yi)) 2)) (*.f32 (*.f32 maxCos (-.f32 ux (pow.f32 ux 2))) zi))
1.1b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (-.f32 (fma.f32 2 (*.f32 (*.f32 (PI.f32) (*.f32 uy yi)) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/15 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 5) (pow.f32 uy 5))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))) (fma.f32 8/315 (*.f32 (*.f32 yi (*.f32 (pow.f32 (PI.f32) 7) (pow.f32 uy 7))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))) (*.f32 4/3 (*.f32 (*.f32 (pow.f32 uy 3) (*.f32 yi (pow.f32 (PI.f32) 3))) (sqrt.f32 (-.f32 (+.f32 1 (*.f32 2 (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 3)))) (fma.f32 (*.f32 maxCos maxCos) (*.f32 ux ux) (*.f32 (*.f32 maxCos maxCos) (pow.f32 ux 4)))))))))) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.3b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (sqrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 2)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.4b
(+.f32 (fma.f32 (*.f32 (cos.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
0.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 (*.f32 uy 2) (PI.f32))) 3)) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) zi))
2.5b
(+.f32 (fma.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) xi (*.f32 (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) (PI.f32))) (sqrt.f32 (-.f32 1 (*.f32 (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux) (*.f32 (*.f32 (-.f32 1 ux) maxCos) ux))))) yi)) (*.f32 (*.f32 -1 (*.f32 maxCos (pow.f32 ux 2))) zi))
Compiler

Compiled 21897 to 14500 computations (33.8% saved)

regimes5.4s (26.6%)

Accuracy

Total 0.2b remaining (49.6%)

Threshold costs 0.2b (49.6%)

Counts
214 → 1
Compiler

Compiled 156309 to 112245 computations (28.2% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
1-exp_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03697
13897
Stop Event
saturated

end628.0ms (3.1%)

Stop Event
fuel
Compiler

Compiled 1322 to 927 computations (29.9% saved)

Profiling

Loading profile data...