Details

Time bar (total: 5.1s)

analyze1.0ms (0%)

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

Compiled 38 to 21 computations (44.7% saved)

sample2.4s (46.2%)

Results
2.4s8256×body128valid

preprocess80.0ms (1.5%)

Algorithm
egg-herbie
Rules
967×associate-/l/_binary32
808×associate-/l*_binary32
710×times-frac_binary32
520×associate-/r/_binary32
385×associate-*r/_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01872
14972
217372
373372
4248772
5326772
6326772
7455472
8480772
9492772
10493972
11493972
12494172
13494172
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 tau (PI.f32)) x)) (*.f32 (*.f32 tau (PI.f32)) x)) (/.f32 (sin.f32 (*.f32 tau (PI.f32))) (*.f32 tau (PI.f32))))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))
(*.f32 (sin.f32 (*.f32 x (PI.f32))) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (PI.f32) (*.f32 (*.f32 x x) (*.f32 (PI.f32) tau)))))
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) (*.f32 x (*.f32 (PI.f32) tau))))
(*.f32 (sin.f32 (*.f32 x (PI.f32))) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (PI.f32) (*.f32 tau (*.f32 x (*.f32 x (PI.f32)))))))
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) (*.f32 tau (*.f32 x (*.f32 x (PI.f32)))))))
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 tau (PI.f32)) x)) (*.f32 (*.f32 tau (PI.f32)) x)) (/.f32 (sin.f32 (*.f32 tau (PI.f32))) (*.f32 tau (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (sin.f32 (*.f32 (PI.f32) tau)) (*.f32 (PI.f32) tau)))
(*.f32 (sin.f32 (*.f32 (PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 tau (*.f32 (PI.f32) (*.f32 (PI.f32) tau))))))
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 tau (*.f32 (PI.f32) (*.f32 (PI.f32) tau))))) (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))))
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (sin.f32 (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 tau (*.f32 (PI.f32) (*.f32 (PI.f32) tau))))))
Compiler

Compiled 23 to 10 computations (56.5% saved)

simplify37.0ms (0.7%)

Algorithm
egg-herbie
Rules
745×associate-/l/_binary32
396×associate-/l*_binary32
281×times-frac_binary32
253×associate-/r/_binary32
154×associate-*l/_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01136
12436
28336
333336
4118036
5255936
6268736
7271736
8272736
9273136
10273336
11273336
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 x (PI.f32))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (*.f32 x (PI.f32)) tau)))
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (PI.f32)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (*.f32 (PI.f32) (*.f32 x tau)))))
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (*.f32 (PI.f32) (*.f32 (PI.f32) (*.f32 x tau))))))
(*.f32 (sin.f32 (*.f32 x (PI.f32))) (/.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (*.f32 (PI.f32) (PI.f32))) (*.f32 x (*.f32 x tau))))
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))

prune3.0ms (0.1%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.4b
Counts
3 → 2
Alt Table
StatusErrorProgram
0.8b
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 136 to 64 computations (52.9% saved)

localize38.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 x (PI.f32))
0.3b
(*.f32 (*.f32 x (PI.f32)) tau)
0.4b
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
0.4b
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))

series19.0ms (0.4%)

Counts
4 → 68
Calls

18 calls:

TimeVariablePointExpression
3.0ms
tau
@inf
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
2.0ms
x
@inf
(*.f32 (*.f32 x (PI.f32)) tau)
2.0ms
x
@0
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
1.0ms
x
@-inf
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
1.0ms
tau
@-inf
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))

rewrite65.0ms (1.3%)

Algorithm
batch-egg-rewrite
Rules
720×prod-diff_binary32
203×expm1-udef_binary32
203×log1p-udef_binary32
111×*-un-lft-identity_binary32
111×add-sqr-sqrt_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01047
121347
2311447
Stop Event
node limit
Counts
4 → 113
Calls
Call 1
Inputs
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 (*.f32 x (PI.f32)) tau)
(*.f32 x (PI.f32))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 1 (*.f32 (*.f32 x (PI.f32)) (neg.f32 tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (/.f32 1 x) (PI.f32)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) tau))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau) (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (PI.f32))) (/.f32 1 tau))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 x) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) x) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) x) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 x (PI.f32))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) tau))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (PI.f32))) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) tau))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) tau) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 tau) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) tau) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) 1) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 1) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 x (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (PI.f32) tau))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (*.f32 x (PI.f32)) (neg.f32 tau))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3) (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 (*.f32 x (PI.f32))) (/.f32 (/.f32 1 x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (/.f32 1 x) (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (/.f32 1 x) (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 1 (*.f32 (PI.f32) (neg.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (/.f32 1 x) (PI.f32)) (sin.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) x) (/.f32 1 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) 1) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 1) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 x) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (PI.f32)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (cbrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (sqrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) x) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (PI.f32)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (cbrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (sqrt.f32 (*.f32 x (PI.f32)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (sqrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (*.f32 x (PI.f32)) (sin.f32 (*.f32 x (PI.f32)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) (neg.f32 x))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 x (PI.f32))) 3) (pow.f32 (*.f32 x (PI.f32)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 tau) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 x (PI.f32)) 3) (pow.f32 tau 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 tau 3) (pow.f32 (*.f32 x (PI.f32)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 x (*.f32 (PI.f32) tau))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 x (*.f32 (PI.f32) tau))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 x (PI.f32)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 x (PI.f32)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 x (PI.f32)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 x (PI.f32))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 x (PI.f32)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 x (PI.f32)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 x 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 x (PI.f32))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 x (PI.f32))))))))

simplify67.0ms (1.3%)

Algorithm
egg-herbie
Rules
588×associate-/r*_binary32
515×associate-+l+_binary32
395×associate-*l*_binary32
379×associate-*r*_binary32
321×associate-/l/_binary32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
055982
1148974
2433964
32160964
42821964
53929937
Stop Event
node limit
Counts
181 → 135
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))))
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6))))))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
Outputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) 1)
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) 1)
(fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1)
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x)) (*.f32 1/120 (*.f32 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4)) (pow.f32 x 4)))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (*.f32 1/120 (pow.f32 tau 4)))))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 tau 4) (pow.f32 x 4))) 1))
(fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (fma.f32 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 tau 4))) (pow.f32 x 4) 1))
(fma.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (*.f32 tau (PI.f32)) 4)) 1))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x)) (*.f32 1/120 (*.f32 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4)) (pow.f32 x 4))))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (*.f32 1/120 (pow.f32 tau 4)))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 tau 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (fma.f32 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 tau 4))) (pow.f32 x 4) 1)))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 (*.f32 (PI.f32) x) 6)) (fma.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (*.f32 tau (PI.f32)) 4)) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) 1)
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) 1)
(fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1)
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x)) (*.f32 1/120 (*.f32 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4)) (pow.f32 x 4)))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (*.f32 1/120 (pow.f32 tau 4)))))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 tau 4) (pow.f32 x 4))) 1))
(fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (fma.f32 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 tau 4))) (pow.f32 x 4) 1))
(fma.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (*.f32 tau (PI.f32)) 4)) 1))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 (*.f32 tau tau) (pow.f32 (PI.f32) 2)) (*.f32 x x)) (*.f32 1/120 (*.f32 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4)) (pow.f32 x 4))))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (*.f32 1/120 (pow.f32 tau 4)))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 (pow.f32 tau 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 (*.f32 tau tau) (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (fma.f32 (*.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 tau 4))) (pow.f32 x 4) 1)))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 (*.f32 (PI.f32) x) 6)) (fma.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (*.f32 tau (PI.f32)) 4)) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1)
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) (fma.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4)) 1))
(fma.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1))
(fma.f32 1/120 (pow.f32 (*.f32 (PI.f32) x) 4) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1))
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6))))))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (+.f32 1 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) (*.f32 -1/5040 (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))))))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1) (*.f32 -1/5040 (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) (fma.f32 -1/5040 (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)) 1)))
(fma.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) (fma.f32 -1/5040 (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1)))
(fma.f32 1/120 (pow.f32 (*.f32 (PI.f32) x) 4) (fma.f32 -1/5040 (pow.f32 (*.f32 (PI.f32) x) 6) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)) 1)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 (PI.f32) x))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 (PI.f32) x))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 (PI.f32) x))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)

prune518.0ms (10.1%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New18614200
Fresh011
Picked101
Done000
Total18715202
Error
0.0b
Counts
202 → 15
Alt Table
StatusErrorProgram
1.1b
(*.f32 (*.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
2.9b
(*.f32 (*.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1))
0.8b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.0b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (pow.f32 (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
4.1b
(*.f32 (+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))
1.2b
(*.f32 (/.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (pow.f32 (/.f32 x (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (PI.f32) tau))) -1) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 3) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 6065 to 1629 computations (73.1% saved)

localize43.0ms (0.8%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 x (PI.f32))
0.3b
(*.f32 (PI.f32) (*.f32 tau x))
0.4b
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
0.4b
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))

series4.0ms (0.1%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
0.0ms
tau
@0
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
0.0ms
tau
@inf
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
0.0ms
x
@0
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
0.0ms
tau
@-inf
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
0.0ms
x
@-inf
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))

rewrite48.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
879×log1p-expm1-u_binary32
879×expm1-log1p-u_binary32
86×*-un-lft-identity_binary32
86×add-sqr-sqrt_binary32
86×pow1_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0828
116628
2230128
Stop Event
node limit
Counts
2 → 58
Calls
Call 1
Inputs
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(*.f32 (PI.f32) (*.f32 tau x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 2) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 1 (*.f32 (*.f32 tau x) (neg.f32 (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))) (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (PI.f32)) (/.f32 1 (*.f32 tau x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) 1) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 1) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (PI.f32)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 tau x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (PI.f32)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 tau x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (PI.f32)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 tau x)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 tau x)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (*.f32 tau x)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 tau x)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (*.f32 (PI.f32) tau)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (PI.f32) tau)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (*.f32 (PI.f32) tau)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (*.f32 x (*.f32 (PI.f32) tau)) (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 (*.f32 tau x) (neg.f32 (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3) (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 tau) x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 x (*.f32 (PI.f32) tau)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 x (*.f32 (PI.f32) tau)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 (*.f32 tau x) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 tau x) 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 x (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 x (*.f32 (PI.f32) tau))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 x (*.f32 (PI.f32) tau))))))))

simplify54.0ms (1.1%)

Algorithm
egg-herbie
Rules
935×fma-def_binary32
481×associate-/r*_binary32
352×associate-*l*_binary32
340×associate-*r*_binary32
275×associate-/l/_binary32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
042772
1106768
2323760
31801760
43094760
53946742
Stop Event
node limit
Counts
106 → 70
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
Outputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) 1)
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1)
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (pow.f32 tau 4) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) 1/120))))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1))
(fma.f32 (pow.f32 x 4) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (*.f32 (PI.f32) x) 4)) 1))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (pow.f32 tau 4) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) 1/120))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1)))
(fma.f32 (pow.f32 (PI.f32) 6) (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 x 6))) (fma.f32 (pow.f32 x 4) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1)))
(fma.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (*.f32 (PI.f32) x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 (*.f32 (PI.f32) x) 6)) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x)))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) 1)
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1)
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 1 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (pow.f32 tau 4) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) 1/120))))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1))
(fma.f32 (pow.f32 x 4) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (*.f32 (PI.f32) x) 4)) 1))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(+.f32 (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) (*.f32 tau tau))) (*.f32 (pow.f32 tau 4) (*.f32 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)) 1/120))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/6 (*.f32 tau (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 x x) tau))) (fma.f32 (pow.f32 tau 4) (*.f32 1/120 (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1)))
(fma.f32 (pow.f32 (PI.f32) 6) (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 x 6))) (fma.f32 (pow.f32 x 4) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) 1)))
(fma.f32 1/120 (*.f32 (pow.f32 tau 4) (pow.f32 (*.f32 (PI.f32) x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 (*.f32 x x) tau) tau)) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (pow.f32 (*.f32 (PI.f32) x) 6)) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))

prune285.0ms (5.5%)

Pruning

15 alts after pruning (15 fresh and 0 done)

PrunedKeptTotal
New1634167
Fresh31114
Picked101
Done000
Total16715182
Error
0.0b
Counts
182 → 15
Alt Table
StatusErrorProgram
1.1b
(*.f32 (*.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 2)) (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
2.9b
(*.f32 (*.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1))
0.8b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
4.1b
(*.f32 (+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3)))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (pow.f32 (/.f32 (*.f32 x (PI.f32)) (sin.f32 (*.f32 x (PI.f32)))) -1))
0.8b
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))
1.2b
(*.f32 (/.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
0.9b
(*.f32 (*.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (PI.f32)) (/.f32 1 (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 5278 to 1433 computations (72.8% saved)

localize44.0ms (0.9%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))
0.3b
(*.f32 (*.f32 x (PI.f32)) tau)
0.4b
(/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32)))
0.4b
(/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau))

series2.0ms (0%)

Counts
2 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@0
(/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32)))
0.0ms
x
@inf
(/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32)))
0.0ms
x
@-inf
(/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32)))
0.0ms
x
@0
(expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))
0.0ms
x
@inf
(expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))

rewrite46.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
807×pow1_binary32
748×expm1-log1p-u_binary32
747×log1p-expm1-u_binary32
73×*-un-lft-identity_binary32
73×add-sqr-sqrt_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
114719
2195619
Stop Event
node limit
Counts
2 → 72
Calls
Call 1
Inputs
(/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32)))
(expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sin.f32 (*.f32 x (PI.f32))) (/.f32 (/.f32 1 x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (/.f32 1 x) (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 (/.f32 1 x) (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (neg.f32 (sin.f32 (*.f32 x (PI.f32)))) (/.f32 1 (*.f32 x (neg.f32 (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (/.f32 1 x) (PI.f32)) (sin.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) x) (/.f32 1 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) 1) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 1) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 x) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) x) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (PI.f32)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (PI.f32)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (PI.f32)) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (cbrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2)) (/.f32 (sqrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (cbrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 1 (sqrt.f32 (*.f32 x (PI.f32)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (sqrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (/.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) 2) (sqrt.f32 (*.f32 x (PI.f32)))) (/.f32 (cbrt.f32 (sin.f32 (*.f32 x (PI.f32)))) (sqrt.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 x (/.f32 (sin.f32 (*.f32 x (PI.f32))) (PI.f32))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (neg.f32 (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 x (PI.f32))) 3) (pow.f32 (*.f32 x (PI.f32)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 (+.f32 (*.f32 x (PI.f32)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (+.f32 (*.f32 x (PI.f32)) 1) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 x (PI.f32))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (PI.f32) x)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 x (PI.f32)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 1 (*.f32 x (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 x) 2) (*.f32 (cbrt.f32 x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (cbrt.f32 (*.f32 x (PI.f32))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 2) (cbrt.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (*.f32 (cbrt.f32 (PI.f32)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 x) (*.f32 (sqrt.f32 x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (*.f32 x (PI.f32))) (sqrt.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (sqrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 x (pow.f32 (cbrt.f32 (PI.f32)) 2)) (cbrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 x (sqrt.f32 (PI.f32))) (sqrt.f32 (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (pow.f32 (cbrt.f32 x) 2)) (cbrt.f32 x))))) (#(struct:change #<rule egg-rr> (2) ((x *.f32 (*.f32 (PI.f32) (sqrt.f32 x)) (sqrt.f32 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (pow.f32 (+.f32 (*.f32 x (PI.f32)) 1) 3) 1) (+.f32 (*.f32 (+.f32 (*.f32 x (PI.f32)) 1) (+.f32 (*.f32 x (PI.f32)) 1)) (+.f32 1 (*.f32 (+.f32 (*.f32 x (PI.f32)) 1) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (-.f32 (*.f32 (+.f32 (*.f32 x (PI.f32)) 1) (+.f32 (*.f32 x (PI.f32)) 1)) 1) (+.f32 (+.f32 (*.f32 x (PI.f32)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 x (PI.f32)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 x (PI.f32)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 x (PI.f32))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 x (PI.f32)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 x) (PI.f32)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 x (PI.f32)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 x 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 x (PI.f32))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 x (PI.f32))))))))

simplify53.0ms (1%)

Algorithm
egg-herbie
Rules
989×fma-def_binary32
473×associate-/r*_binary32
360×*-commutative_binary32
295×associate-/l/_binary32
280×sqr-pow_binary32
Iterations

Useful iterations: 6 (0.0ms)

IterNodesCost
033266
179262
2206260
3856260
42199254
52831251
63713242
74468242
84720242
Stop Event
node limit
Counts
96 → 81
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))))
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))))
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6))))))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
(*.f32 (PI.f32) x)
Outputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))))
(+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2))))
(fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) 1)
(fma.f32 (*.f32 x x) (*.f32 -1/6 (pow.f32 (PI.f32) 2)) 1)
(fma.f32 -1/6 (pow.f32 (*.f32 x (PI.f32)) 2) 1)
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))))
(fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) (+.f32 1 (*.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)))))
(fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) (fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) 1))
(fma.f32 -1/6 (*.f32 x (*.f32 x (pow.f32 (PI.f32) 2))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) 1))
(fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) 1))
(fma.f32 1/120 (pow.f32 (*.f32 x (PI.f32)) 4) (fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) 1))
(fma.f32 (pow.f32 (*.f32 x (PI.f32)) 2) (fma.f32 (pow.f32 (*.f32 x (PI.f32)) 2) 1/120 -1/6) 1)
(+.f32 (*.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2))) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6))))))
(fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) (+.f32 1 (fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6))))))
(+.f32 (fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (*.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6)))) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) 1))
(fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) (fma.f32 (*.f32 x x) (*.f32 -1/6 (pow.f32 (PI.f32) 2)) (fma.f32 (pow.f32 x 6) (*.f32 -1/5040 (pow.f32 (PI.f32) 6)) 1)))
(fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (fma.f32 1/120 (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)) (fma.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6)) 1)))
(fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (fma.f32 1/120 (pow.f32 (*.f32 x (PI.f32)) 4) (fma.f32 -1/5040 (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6)) 1)))
(fma.f32 -1/6 (*.f32 (*.f32 x x) (pow.f32 (PI.f32) 2)) (fma.f32 1/120 (pow.f32 (*.f32 x (PI.f32)) 4) (fma.f32 -1/5040 (pow.f32 (*.f32 x (PI.f32)) 6) 1)))
(fma.f32 (pow.f32 (*.f32 x (PI.f32)) 2) (fma.f32 (pow.f32 (*.f32 x (PI.f32)) 2) 1/120 -1/6) (fma.f32 -1/5040 (pow.f32 (*.f32 x (PI.f32)) 6) 1))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))
(*.f32 (PI.f32) x)
(*.f32 x (PI.f32))

prune312.0ms (6.1%)

Pruning

15 alts after pruning (14 fresh and 1 done)

PrunedKeptTotal
New1663169
Fresh31114
Picked011
Done000
Total16915184
Error
0.0b
Counts
184 → 15
Alt Table
StatusErrorProgram
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) 2) (*.f32 (cbrt.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (/.f32 (/.f32 1 x) (PI.f32)) tau))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1))
0.8b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
4.1b
(*.f32 (+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 x) 2) (*.f32 (cbrt.f32 x) (PI.f32)))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3)))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (pow.f32 (/.f32 x (/.f32 (sin.f32 (*.f32 x (PI.f32))) (PI.f32))) -1))
2.9b
(*.f32 (*.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))) (sqrt.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 5518 to 1493 computations (72.9% saved)

localize51.0ms (1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f32 x (*.f32 (PI.f32) tau))
0.3b
(*.f32 (PI.f32) tau)
0.4b
(/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32)))
0.4b
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))

series8.0ms (0.2%)

Counts
3 → 60
Calls

15 calls:

TimeVariablePointExpression
1.0ms
tau
@-inf
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))
1.0ms
tau
@inf
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))
1.0ms
tau
@0
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))
1.0ms
x
@0
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))
0.0ms
tau
@0
(*.f32 x (*.f32 (PI.f32) tau))

rewrite51.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
539×log-prod_binary32
493×prod-diff_binary32
175×expm1-udef_binary32
175×log1p-udef_binary32
154×log-pow_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01033
120233
2256333
Stop Event
node limit
Counts
3 → 78
Calls
Call 1
Inputs
(*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau))))
(*.f32 (PI.f32) tau)
(*.f32 x (*.f32 (PI.f32) tau))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))) (cbrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))))) (log.f32 (cbrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))) (log.f32 (sqrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 (*.f32 tau (*.f32 x (PI.f32))) (sin.f32 (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (cbrt.f32 (pow.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) 2)) (/.f32 (*.f32 tau (*.f32 x (PI.f32))) (cbrt.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32))))) (/.f32 (*.f32 tau (*.f32 x (PI.f32))) (sqrt.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32))))) (neg.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 (PI.f32) tau)) x)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) x) (*.f32 (PI.f32) tau))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (sqrt.f32 (*.f32 tau (*.f32 x (PI.f32))))) (sqrt.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) 1) (*.f32 tau (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (pow.f32 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) 2)) (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 x (PI.f32))) tau)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 -1 (sin.f32 (*.f32 tau (*.f32 x (PI.f32))))) (neg.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (/.f32 1 x) (sin.f32 (*.f32 tau (*.f32 x (PI.f32))))) (*.f32 (PI.f32) tau))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) -1) (neg.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (/.f32 1 x)) (*.f32 (PI.f32) tau))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (/.f32 (pow.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) 3) (pow.f32 (*.f32 tau (*.f32 x (PI.f32))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) 3) (pow.f32 (/.f32 1 (*.f32 tau (*.f32 x (PI.f32)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (/.f32 1 (*.f32 tau (*.f32 x (PI.f32)))) 3) (pow.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 (PI.f32) tau))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (exp.f32 (PI.f32)) tau)) (cbrt.f32 (pow.f32 (exp.f32 (PI.f32)) tau)))) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (PI.f32)) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) tau))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (PI.f32)) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 (PI.f32) tau))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 (PI.f32) tau) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 (PI.f32) tau) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 (PI.f32) tau)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 (PI.f32) tau)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 (PI.f32) tau) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (exp.f32 (PI.f32)) tau))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 (PI.f32) tau))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 (PI.f32) tau) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (PI.f32) 3) (pow.f32 tau 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 tau 3) (pow.f32 (PI.f32) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 (PI.f32) tau)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 (PI.f32) tau)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f32 0 (*.f32 tau (*.f32 x (PI.f32))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (*.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x)) (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x)))) (log.f32 (cbrt.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f32 (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x))) (log.f32 (sqrt.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f32 (exp.f32 (log1p.f32 (*.f32 tau (*.f32 x (PI.f32))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 x (/.f32 1 (*.f32 (PI.f32) tau)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 (PI.f32) tau) (/.f32 1 x))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 tau (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 1 (/.f32 1 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (pow.f32 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) 2) (/.f32 1 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (sqrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) (pow.f32 (*.f32 tau (*.f32 x (PI.f32))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (neg.f32 (*.f32 tau (*.f32 x (PI.f32)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f32 (*.f32 x (PI.f32)) (/.f32 1 tau))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (*.f32 tau (*.f32 x (PI.f32))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (pow.f32 (*.f32 tau (*.f32 x (PI.f32))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f32 (sqrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f32 (pow.f32 (*.f32 tau (*.f32 x (PI.f32))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (pow.f32 (pow.f32 (exp.f32 (PI.f32)) tau) x))))) (#(struct:change #<rule egg-rr> (2) ((x log.f32 (+.f32 1 (expm1.f32 (*.f32 tau (*.f32 x (PI.f32))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (pow.f32 (*.f32 tau (*.f32 x (PI.f32))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 x 3) (pow.f32 (*.f32 (PI.f32) tau) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f32 (*.f32 (pow.f32 (*.f32 (PI.f32) tau) 3) (pow.f32 x 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f32 (log1p.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (log.f32 (*.f32 tau (*.f32 x (PI.f32)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f32 (*.f32 (log.f32 (*.f32 tau (*.f32 x (PI.f32)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f32 (expm1.f32 (*.f32 tau (*.f32 x (PI.f32)))))))))

simplify63.0ms (1.2%)

Algorithm
egg-herbie
Rules
995×fma-def_binary32
474×associate-/r*_binary32
425×associate-*l*_binary32
388×associate-*r*_binary32
275×associate-/l/_binary32
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
058828
1153820
2420820
32168820
43443820
54325802
Stop Event
node limit
Counts
138 → 96
Calls
Call 1
Inputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
1
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) 1)
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))))))
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) (+.f32 1 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)))) (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6)))))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
Outputs
1
(+.f32 1 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))))
(fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) 1)
(fma.f32 (*.f32 tau (*.f32 tau (*.f32 x x))) (*.f32 -1/6 (pow.f32 (PI.f32) 2)) 1)
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)
(+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(+.f32 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 (*.f32 (pow.f32 tau 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (pow.f32 x 4) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 (pow.f32 x 4) (*.f32 (pow.f32 tau 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) 1))
(fma.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1))
(fma.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 (*.f32 tau x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1))
(+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))))
(fma.f32 -1/5040 (*.f32 (*.f32 (pow.f32 tau 6) (pow.f32 x 6)) (pow.f32 (PI.f32) 6)) (+.f32 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1)))
(fma.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (*.f32 -1/5040 (pow.f32 x 6))) (fma.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)))
(fma.f32 (pow.f32 x 6) (*.f32 -1/5040 (pow.f32 (*.f32 tau (PI.f32)) 6)) (fma.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 (*.f32 tau x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
1
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) 1)
(fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) 1)
(fma.f32 (*.f32 tau (*.f32 tau (*.f32 x x))) (*.f32 -1/6 (pow.f32 (PI.f32) 2)) 1)
(fma.f32 (pow.f32 (PI.f32) 2) (*.f32 -1/6 (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) (+.f32 1 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4))))))
(+.f32 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4)))))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 (*.f32 (pow.f32 tau 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (pow.f32 x 4) 1))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 (pow.f32 x 4) (*.f32 (pow.f32 tau 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) 1))
(fma.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1))
(fma.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 (*.f32 tau x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1))
(+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 x 2) (pow.f32 (PI.f32) 2)))) (+.f32 1 (+.f32 (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (pow.f32 (PI.f32) 4)))) (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 x 6) (pow.f32 (PI.f32) 6)))))))
(fma.f32 -1/5040 (*.f32 (*.f32 (pow.f32 tau 6) (pow.f32 x 6)) (pow.f32 (PI.f32) 6)) (+.f32 (fma.f32 -1/6 (*.f32 (*.f32 tau tau) (*.f32 (pow.f32 (PI.f32) 2) (*.f32 x x))) 1) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))
(fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 (*.f32 tau tau) (*.f32 x x))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) 1)))
(fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) (fma.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))) (fma.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6))) 1)))
(fma.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (*.f32 -1/5040 (pow.f32 x 6))) (fma.f32 (pow.f32 tau 4) (*.f32 (pow.f32 x 4) (*.f32 1/120 (pow.f32 (PI.f32) 4))) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)))
(fma.f32 (pow.f32 x 6) (*.f32 -1/5040 (pow.f32 (*.f32 tau (PI.f32)) 6)) (fma.f32 (pow.f32 (PI.f32) 4) (*.f32 1/120 (pow.f32 (*.f32 tau x) 4)) (fma.f32 -1/6 (*.f32 (pow.f32 (PI.f32) 2) (*.f32 tau (*.f32 tau (*.f32 x x)))) 1)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 x (PI.f32))))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(/.f32 (sin.f32 (*.f32 tau (*.f32 (PI.f32) x))) (*.f32 tau (*.f32 (PI.f32) x)))
(/.f32 (sin.f32 (*.f32 (*.f32 tau x) (PI.f32))) (*.f32 (*.f32 tau x) (PI.f32)))
(/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x)))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (PI.f32))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 x (PI.f32)))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))
(*.f32 tau (*.f32 (PI.f32) x))
(*.f32 (*.f32 tau x) (PI.f32))
(*.f32 (PI.f32) (*.f32 tau x))

prune336.0ms (6.5%)

Pruning

17 alts after pruning (15 fresh and 2 done)

PrunedKeptTotal
New1875192
Fresh31013
Picked011
Done011
Total19017207
Error
0.0b
Counts
207 → 17
Alt Table
StatusErrorProgram
1.1b
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3)))
1.2b
(*.f32 (*.f32 (sin.f32 (/.f32 (pow.f32 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32)))) 2) (/.f32 1 (cbrt.f32 (*.f32 tau (*.f32 x (PI.f32))))))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 (*.f32 x (PI.f32))) 3) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.1b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
1.0b
(*.f32 (+.f32 (log.f32 (sqrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))))) (log.f32 (sqrt.f32 (exp.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32)))))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau))))) 1) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (log.f32 (+.f32 1 (expm1.f32 (/.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (*.f32 x (*.f32 (PI.f32) tau)))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
4.1b
(*.f32 (+.f32 (*.f32 -1/5040 (*.f32 (pow.f32 tau 6) (*.f32 (pow.f32 (PI.f32) 6) (pow.f32 x 6)))) (+.f32 1 (+.f32 (*.f32 -1/6 (*.f32 (pow.f32 tau 2) (*.f32 (pow.f32 (PI.f32) 2) (pow.f32 x 2)))) (*.f32 1/120 (*.f32 (pow.f32 tau 4) (*.f32 (pow.f32 (PI.f32) 4) (pow.f32 x 4))))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (pow.f32 (cbrt.f32 (*.f32 x (*.f32 (PI.f32) tau))) 3)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
1.2b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (*.f32 (pow.f32 (cbrt.f32 x) 2) (*.f32 (cbrt.f32 x) (PI.f32)))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (pow.f32 (/.f32 x (/.f32 (sin.f32 (*.f32 x (PI.f32))) (PI.f32))) -1))
0.8b
(*.f32 (pow.f32 (cbrt.f32 (/.f32 (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))) (*.f32 tau (*.f32 x (PI.f32))))) 3) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.7b
(*.f32 (/.f32 1 (/.f32 (*.f32 tau (*.f32 x (PI.f32))) (sin.f32 (*.f32 tau (*.f32 x (PI.f32)))))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 x tau))) (/.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 (PI.f32) tau)) (*.f32 x (*.f32 x (PI.f32)))))
0.6b
(*.f32 (/.f32 (sin.f32 (*.f32 (*.f32 x (PI.f32)) tau)) (*.f32 (*.f32 x (PI.f32)) tau)) (/.f32 (sin.f32 (expm1.f32 (log1p.f32 (*.f32 x (PI.f32))))) (*.f32 x (PI.f32))))
0.8b
(*.f32 (*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))) (-.f32 (exp.f32 (log1p.f32 (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))) 1))
0.7b
(*.f32 (*.f32 (sin.f32 (*.f32 x (*.f32 (PI.f32) tau))) (/.f32 1 (*.f32 x (*.f32 (PI.f32) tau)))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Compiler

Compiled 5810 to 1761 computations (69.7% saved)

regimes377.0ms (7.3%)

Accuracy

Total -4.1b remaining (-612.1%)

Threshold costs -4.1b (-612.1%)

Counts
129 → 1
Compiler

Compiled 3409 to 806 computations (76.4% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
11636
Stop Event
saturated
Calls
Call 1
Inputs
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
Outputs
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 x (PI.f32))) (*.f32 x (PI.f32))))
(*.f32 (/.f32 (sin.f32 (*.f32 (PI.f32) (*.f32 tau x))) (*.f32 (PI.f32) (*.f32 tau x))) (/.f32 (sin.f32 (*.f32 (PI.f32) x)) (*.f32 (PI.f32) x)))

end158.0ms (3.1%)

Stop Event
fuel
Compiler

Compiled 512 to 162 computations (68.4% saved)

Profiling

Loading profile data...