Details

Time bar (total: 9.2s)

analyze132.0ms (1.4%)

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

Compiled 96 to 69 computations (28.1% saved)

sample167.0ms (1.8%)

Algorithm
intervals
Results
66.0ms256×body128valid
13.0ms256×pre128true
Compiler

Compiled 173 to 125 computations (27.7% saved)

simplify72.0ms (0.8%)

Algorithm
egg-herbie
Rules
493×associate--l+_binary32
415×unsub-neg_binary32
384×associate--l-_binary32
362×distribute-rgt-in_binary32
356×distribute-neg-in_binary32
Counts
1 → 1
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
027101
166101
218972
360672
4160272
5225972
6486972
7495172

prune5.0ms (0.1%)

Pruning

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New011
Fresh101
Picked000
Done000
Total112
Error
0.4b
Counts
2 → 1
Alt Table
StatusErrorProgram
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
Compiler

Compiled 156 to 111 computations (28.8% saved)

localize136.0ms (1.5%)

Local error

Found 4 expressions with local error:

0.2b
(*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi)
0.2b
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
0.3b
(*.f32 (*.f32 uy 2) PI.f32)
0.3b
(*.f32 (*.f32 uy 2) PI.f32)

rewrite139.0ms (1.5%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
16×add-cbrt-cube_binary32
16×add-exp-log_binary32
16×pow1_binary32
10×add-sqr-sqrt_binary32
associate-*r*_binary32
Counts
4 → 61
Calls

4 calls:

5.0ms
(*.f32 (*.f32 uy 2) PI.f32)
4.0ms
(*.f32 (*.f32 uy 2) PI.f32)
4.0ms
(*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi)
2.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
Compiler

Compiled 2898 to 1908 computations (34.2% saved)

series83.0ms (0.9%)

Error
0.3b
Counts
4 → 21
Calls

4 calls:

29.0ms
(*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi)
13.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
11.0ms
(*.f32 (*.f32 uy 2) PI.f32)
8.0ms
(*.f32 (*.f32 uy 2) PI.f32)
Compiler

Compiled 2482 to 1742 computations (29.8% saved)

simplify191.0ms (2.1%)

Algorithm
egg-herbie
Rules
440×distribute-rgt-neg-in_binary32
430×*-commutative_binary32
405×sub-neg_binary32
402×cancel-sign-sub-inv_binary32
371×distribute-lft-neg-in_binary32
Counts
82 → 55
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01161318
12811159
29801147
316441123
427751123
542361123
647721123
749411123
848751123

prune122.0ms (1.3%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New46955
Fresh000
Picked101
Done000
Total47956
Error
0.2b
Counts
56 → 9
Alt Table
StatusErrorProgram
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (log.f32 (exp.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (exp.f32 (log.f32 (*.f32 2 (*.f32 uy PI.f32))))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
1.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sqrt.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32))) (*.f32 yi (sqrt.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32)))))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi)) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
3.0b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 2 (*.f32 uy (*.f32 PI.f32 yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) (*.f32 (cbrt.f32 yi) (cbrt.f32 yi))) (cbrt.f32 yi)))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (log.f32 (exp.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
Compiler

Compiled 3345 to 2187 computations (34.6% saved)

localize120.0ms (1.3%)

Local error

Found 4 expressions with local error:

0.2b
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
0.3b
(*.f32 (*.f32 uy 2) PI.f32)
0.3b
(*.f32 uy PI.f32)
1.4b
(exp.f32 (log.f32 (*.f32 2 (*.f32 uy PI.f32))))

rewrite255.0ms (2.8%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
17×pow1_binary32
11×add-cbrt-cube_binary32
11×add-exp-log_binary32
10×add-sqr-sqrt_binary32
*-un-lft-identity_binary32
Counts
4 → 58
Calls

4 calls:

4.0ms
(exp.f32 (log.f32 (*.f32 2 (*.f32 uy PI.f32))))
4.0ms
(*.f32 (*.f32 uy 2) PI.f32)
3.0ms
(*.f32 uy PI.f32)
2.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
Compiler

Compiled 2753 to 1784 computations (35.2% saved)

series163.0ms (1.8%)

Error
0.2b
Counts
4 → 15
Calls

4 calls:

106.0ms
(exp.f32 (log.f32 (*.f32 2 (*.f32 uy PI.f32))))
13.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
10.0ms
(*.f32 uy PI.f32)
9.0ms
(*.f32 (*.f32 uy 2) PI.f32)
Compiler

Compiled 1975 to 1394 computations (29.4% saved)

simplify87.0ms (0.9%)

Algorithm
egg-herbie
Rules
467×sub-neg_binary32
357×*-commutative_binary32
301×exp-diff_binary32
229×cancel-sign-sub-inv_binary32
219×distribute-rgt-neg-in_binary32
Counts
73 → 49
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0124861
1264753
2840753
31645753
43480753
54762753
64924753

prune122.0ms (1.3%)

Pruning

9 alts after pruning (9 fresh and 0 done)

PrunedKeptTotal
New48149
Fresh088
Picked101
Done000
Total49958
Error
0.2b
Counts
58 → 9
Alt Table
StatusErrorProgram
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (log.f32 (exp.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
1.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sqrt.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32))) (*.f32 yi (sqrt.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32)))))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi)) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (log.f32 (exp.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
3.0b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 2 (*.f32 uy (*.f32 PI.f32 yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) (*.f32 (cbrt.f32 yi) (cbrt.f32 yi))) (cbrt.f32 yi)))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
Compiler

Compiled 2879 to 1937 computations (32.7% saved)

localize109.0ms (1.2%)

Local error

Found 4 expressions with local error:

0.3b
(*.f32 (*.f32 uy 2) PI.f32)
0.3b
(*.f32 PI.f32 (sqrt.f32 uy))
0.4b
(*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy)))
1.4b
(exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))

rewrite301.0ms (3.3%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
26×pow1_binary32
16×add-cbrt-cube_binary32
16×add-exp-log_binary32
15×add-sqr-sqrt_binary32
13×pow-prod-down_binary32
Counts
4 → 77
Calls

4 calls:

7.0ms
(exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))
7.0ms
(*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy)))
4.0ms
(*.f32 PI.f32 (sqrt.f32 uy))
4.0ms
(*.f32 (*.f32 uy 2) PI.f32)
Compiler

Compiled 3706 to 2185 computations (41% saved)

series51.0ms (0.6%)

Error
0.2b
Counts
4 → 12
Calls

4 calls:

14.0ms
(exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))
10.0ms
(*.f32 PI.f32 (sqrt.f32 uy))
9.0ms
(*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy)))
9.0ms
(*.f32 (*.f32 uy 2) PI.f32)
Compiler

Compiled 1618 to 1166 computations (27.9% saved)

simplify93.0ms (1%)

Algorithm
egg-herbie
Rules
422×prod-exp_binary32
353×*-commutative_binary32
349×div-exp_binary32
295×sub-neg_binary32
224×unswap-sqr_binary32
Counts
89 → 64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01211244
1261798
2806798
31398798
42924798
54809798
65431798

prune138.0ms (1.5%)

Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New64064
Fresh088
Picked011
Done000
Total64973
Error
0.2b
Counts
73 → 9
Alt Table
StatusErrorProgram
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (log.f32 (exp.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
1.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sqrt.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32))) (*.f32 yi (sqrt.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32)))))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi)) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (log.f32 (exp.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
3.0b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 2 (*.f32 uy (*.f32 PI.f32 yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) (*.f32 (cbrt.f32 yi) (cbrt.f32 yi))) (cbrt.f32 yi)))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
Compiler

Compiled 3141 to 2029 computations (35.4% saved)

localize104.0ms (1.1%)

Local error

Found 4 expressions with local error:

0.2b
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
0.3b
(*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))
0.3b
(*.f32 (*.f32 uy 2) PI.f32)
0.5b
(*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32)))

rewrite279.0ms (3%)

Algorithm
rewrite-expression-head
Error
0.2b
Rules
23×add-exp-log_binary32
23×pow1_binary32
16×add-cbrt-cube_binary32
14×associate-*l*_binary32
14×*-un-lft-identity_binary32
Counts
4 → 81
Calls

4 calls:

11.0ms
(*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))
10.0ms
(*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32)))
4.0ms
(*.f32 (*.f32 uy 2) PI.f32)
2.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
Compiler

Compiled 4222 to 2123 computations (49.7% saved)

series78.0ms (0.8%)

Error
0.2b
Counts
4 → 15
Calls

4 calls:

21.0ms
(*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32)))
14.0ms
(sin.f32 (*.f32 (*.f32 uy 2) PI.f32))
10.0ms
(*.f32 (*.f32 uy 2) PI.f32)
10.0ms
(*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))
Compiler

Compiled 1974 to 1313 computations (33.5% saved)

simplify119.0ms (1.3%)

Algorithm
egg-herbie
Rules
347×distribute-rgt-out_binary32
325×associate-*l*_binary32
262×associate-*r*_binary32
246×count-2_binary32
239×unswap-sqr_binary32
Counts
96 → 74
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01511500
13531301
213261229
324321220
447401220
549861220
649381220

prune165.0ms (1.8%)

Pruning

9 alts after pruning (7 fresh and 2 done)

PrunedKeptTotal
New74074
Fresh077
Picked011
Done011
Total74983
Error
0.2b
Counts
83 → 9
Alt Table
StatusErrorProgram
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (log.f32 (exp.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (exp.f32 (log.f32 (*.f32 2 (*.f32 (sqrt.f32 uy) (*.f32 PI.f32 (sqrt.f32 uy))))))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
1.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sqrt.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32))) (*.f32 yi (sqrt.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32)))))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi)) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))) (cbrt.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
5.3b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (sin.f32 (log.f32 (exp.f32 (*.f32 2 (*.f32 uy PI.f32))))) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
3.0b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 2 (*.f32 uy (*.f32 PI.f32 yi))))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.5b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 uy 2) PI.f32)) xi) (*.f32 (*.f32 (sin.f32 (*.f32 2 (*.f32 uy PI.f32))) (*.f32 (cbrt.f32 yi) (cbrt.f32 yi))) (cbrt.f32 yi)))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
0.4b
(+.f32 (*.f32 (sqrt.f32 (-.f32 1 (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) (*.f32 ux (*.f32 (-.f32 1 ux) maxCos))))) (+.f32 (*.f32 (cos.f32 (*.f32 (*.f32 (+.f32 uy uy) (*.f32 (cbrt.f32 PI.f32) (cbrt.f32 PI.f32))) (cbrt.f32 PI.f32))) xi) (*.f32 (sin.f32 (*.f32 (*.f32 uy 2) PI.f32)) yi))) (*.f32 (*.f32 ux (*.f32 (-.f32 1 ux) maxCos)) zi))
Compiler

Compiled 3288 to 1966 computations (40.2% saved)

regimes2.2s (23.6%)

Accuracy

Total 0.2b remaining (46.5%)

Threshold costs 0.2b (46.5%)

Compiler

Compiled 68735 to 49009 computations (28.7% saved)

simplify11.0ms (0.1%)

Algorithm
egg-herbie
Rules
39×distribute-rgt-neg-in_binary32
26×distribute-lft-neg-in_binary32
25×cancel-sign-sub-inv_binary32
19×neg-sub0_binary32
19×neg-mul-1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03177
15277
26677
38077
49377
510877
611777
713377
815977
918577
1019777
1120477
1220677
1320277

end1.0ms (0%)

Compiler

Compiled 55 to 40 computations (27.3% saved)

sample3.8s (41.1%)

Algorithm
intervals
Results
2.2s8000×body128valid
430.0ms8000×pre128true
Compiler

Compiled 685 to 482 computations (29.6% saved)

Profiling

Loading profile data...