Beckmann Sample, near normal, slope_x

Time bar (total: 26.1s)

analyze174.0ms (0.7%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
50%0%0%100%0%0%0%3
50%0%0%100%0%0%0%4
50%0%0%100%0%0%0%5
75%0%0%100%0%0%0%6
75%0%0%100%0%0%0%7
75%0%0%100%0%0%0%8
87.5%0%0%100%0%0%0%9
87.5%0%0%100%0%0%0%10
87.5%0%0%100%0%0%0%11
93.8%0%0%100%0%0%0%12
Compiler

Compiled 39 to 31 computations (20.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 67.0ms
Operation ival-mult, time spent: 12.0ms, 18.0% of total-time
Operation ival-log, time spent: 10.0ms, 15.0% of total-time
Operation ival-<=, time spent: 10.0ms, 15.0% of total-time
Operation ival-cos, time spent: 9.0ms, 13.0% of total-time
Operation ival-sqrt, time spent: 8.0ms, 12.0% of total-time
Operation ival-pi, time spent: 4.0ms, 6.0% of total-time
Operation ival-sub, time spent: 4.0ms, 6.0% of total-time
Operation ival-neg, time spent: 3.0ms, 4.0% of total-time
Operation ival-and, time spent: 3.0ms, 4.0% of total-time
Operation ival->, time spent: 3.0ms, 4.0% of total-time
Operation const, time spent: 2.0ms, 3.0% of total-time

sample2.7s (10.3%)

Results
2.4s8255×0valid
1.0ms0precondition
0.0ms0valid
Precisions
Click to see histograms. Total time spent on operations: 1.2s
Operation ival-log, time spent: 229.0ms, 19.0% of total-time
Operation ival-mult, time spent: 186.0ms, 16.0% of total-time
Operation ival-sub, time spent: 165.0ms, 14.0% of total-time
Operation ival-<=, time spent: 152.0ms, 13.0% of total-time
Operation ival-cos, time spent: 121.0ms, 10.0% of total-time
Operation ival-sqrt, time spent: 101.0ms, 8.0% of total-time
Operation ival-and, time spent: 54.0ms, 5.0% of total-time
Operation const, time spent: 50.0ms, 4.0% of total-time
Operation ival->, time spent: 50.0ms, 4.0% of total-time
Operation ival-neg, time spent: 42.0ms, 4.0% of total-time
Operation ival-pi, time spent: 41.0ms, 3.0% of total-time
Bogosity

preprocess4.3s (16.4%)

Algorithm
egg-herbie
Rules
1353×fma-def
585×unsub-neg
538×fma-neg
538×distribute-neg-in
437×associate-+l+
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
2560-256(0.9999268054962158 0.005214991047978401 0.0002315864257980138)(PI.f32)
00-0-(-.f32 1 u1)
00-0-(*.f32 2 (PI.f32))
00-0-(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
00-0-(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
00-0-u1
00-0-(log.f32 (-.f32 1 u1))
00-0-(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
00-0-(*.f32 (*.f32 2 (PI.f32)) u2)
00-0-2
00-0-u2
00-0-1
00-0-(neg.f32 (log.f32 (-.f32 1 u1)))
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
049559
1109521
2201521
3348521
4583521
5993521
61224521
71676521
82448521
92970521
103738521
115164521
126066521
136255521
146267521
156729521
167863521
Stop Event
node limit
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) (neg.f32 u2))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) (neg.f32 u2)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) cosTheta_i)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u1)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 u1))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))) (sqrt.f32 (neg.f32 (log1p.f32 u1))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 u1))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) (neg.f32 u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
(*.f32 (neg.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (neg.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (neg.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (neg.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 (neg.f32 u1))))) (neg.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (neg.f32 (sqrt.f32 (neg.f32 (log1p.f32 u1)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 u1))) (neg.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (neg.f32 (sqrt.f32 (neg.f32 (log1p.f32 u1)))))
(neg.f32 (*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) (neg.f32 u2)))))
(*.f32 (neg.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (neg.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1))))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (neg.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (neg.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 cosTheta_i)))))
(*.f32 (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 cosTheta_i)))))
(*.f32 (cos.f32 (*.f32 (PI.f32) (*.f32 u2 -2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 cosTheta_i)))))
(*.f32 (cos.f32 (*.f32 2 (*.f32 (PI.f32) u2))) (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 cosTheta_i)))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) cosTheta_i)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) cosTheta_i))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 2 (*.f32 (PI.f32) cosTheta_i))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) cosTheta_i)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (PI.f32) (*.f32 2 cosTheta_i))))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u1)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u2)))) (cos.f32 (*.f32 u1 (*.f32 2 (PI.f32)))))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u2)))) (cos.f32 (*.f32 u1 (*.f32 2 (PI.f32)))))
Symmetry

(abs cosTheta_i)

(abs u2)

Compiler

Compiled 124 to 94 computations (24.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.9s
Operation ival-log, time spent: 1.8s, 64.0% of total-time
Operation ival-sub, time spent: 328.0ms, 11.0% of total-time
Operation ival-mult, time spent: 276.0ms, 10.0% of total-time
Operation ival-cos, time spent: 215.0ms, 8.0% of total-time
Operation ival-sqrt, time spent: 98.0ms, 3.0% of total-time
Operation ival-neg, time spent: 58.0ms, 2.0% of total-time
Operation const, time spent: 35.0ms, 1.0% of total-time
Operation ival-pi, time spent: 19.0ms, 1.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 39 to 23 computations (41% saved)

prune2.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
99.2%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 31 to 27 computations (12.9% saved)

localize3.1s (11.9%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
6.3%
(PI.f32)
6.3%
(PI.f32)
Compiler

Compiled 98 to 59 computations (39.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.3s
Operation ival-log, time spent: 949.0ms, 42.0% of total-time
Operation ival-log1p, time spent: 428.0ms, 19.0% of total-time
Operation ival-cos, time spent: 257.0ms, 11.0% of total-time
Operation ival-mult, time spent: 250.0ms, 11.0% of total-time
Operation ival-sub, time spent: 196.0ms, 9.0% of total-time
Operation ival-sqrt, time spent: 92.0ms, 4.0% of total-time
Operation ival-neg, time spent: 49.0ms, 2.0% of total-time
Operation const, time spent: 24.0ms, 1.0% of total-time
Operation ival-pi, time spent: 9.0ms, 0.0% of total-time

series0.0ms (0%)

Counts
2 → 0

rewrite196.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
737×log1p-expm1-u
737×expm1-log1p-u
647×prod-diff
461×log-prod
282×fma-def
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036
1246
22346
323806
Stop Event
node limit
Counts
2 → 126
Calls
Call 1
Inputs
(PI.f32)
(PI.f32)
Outputs
(+.f32 (PI.f32) 0)
(+.f32 (+.f32 (PI.f32) 1) -1)
(+.f32 0 (PI.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(-.f32 (+.f32 (PI.f32) 1) 1)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(*.f32 1 (PI.f32))
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(*.f32 2 (*.f32 1/2 (PI.f32)))
(*.f32 1/3 (*.f32 3 (PI.f32)))
(*.f32 3 (*.f32 1/3 (PI.f32)))
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(*.f32 (log.f32 (E.f32)) (PI.f32))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(pow.f32 (PI.f32) 1)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(fabs.f32 (PI.f32))
(log.f32 (exp.f32 (PI.f32)))
(cbrt.f32 (pow.f32 (PI.f32) 3))
(expm1.f32 (log1p.f32 (PI.f32)))
(exp.f32 (log.f32 (PI.f32)))
(log1p.f32 (expm1.f32 (PI.f32)))
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)
(+.f32 (PI.f32) 0)
(+.f32 (+.f32 (PI.f32) 1) -1)
(+.f32 0 (PI.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(-.f32 (+.f32 (PI.f32) 1) 1)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(*.f32 1 (PI.f32))
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(*.f32 2 (*.f32 1/2 (PI.f32)))
(*.f32 1/3 (*.f32 3 (PI.f32)))
(*.f32 3 (*.f32 1/3 (PI.f32)))
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(*.f32 (log.f32 (E.f32)) (PI.f32))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(pow.f32 (PI.f32) 1)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(fabs.f32 (PI.f32))
(log.f32 (exp.f32 (PI.f32)))
(cbrt.f32 (pow.f32 (PI.f32) 3))
(expm1.f32 (log1p.f32 (PI.f32)))
(exp.f32 (log.f32 (PI.f32)))
(log1p.f32 (expm1.f32 (PI.f32)))
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)

simplify79.0ms (0.3%)

Algorithm
egg-herbie
Rules
827×log-prod
506×associate-+l+
489×associate-+r+
257×unswap-sqr
223×*-commutative
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01601602
13591522
214151490
369031490
Stop Event
node limit
Counts
126 → 85
Calls
Call 1
Inputs
(+.f32 (PI.f32) 0)
(+.f32 (+.f32 (PI.f32) 1) -1)
(+.f32 0 (PI.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(-.f32 (+.f32 (PI.f32) 1) 1)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(*.f32 1 (PI.f32))
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(*.f32 2 (*.f32 1/2 (PI.f32)))
(*.f32 1/3 (*.f32 3 (PI.f32)))
(*.f32 3 (*.f32 1/3 (PI.f32)))
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(*.f32 (log.f32 (E.f32)) (PI.f32))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(pow.f32 (PI.f32) 1)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(fabs.f32 (PI.f32))
(log.f32 (exp.f32 (PI.f32)))
(cbrt.f32 (pow.f32 (PI.f32) 3))
(expm1.f32 (log1p.f32 (PI.f32)))
(exp.f32 (log.f32 (PI.f32)))
(log1p.f32 (expm1.f32 (PI.f32)))
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)
(+.f32 (PI.f32) 0)
(+.f32 (+.f32 (PI.f32) 1) -1)
(+.f32 0 (PI.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(-.f32 (+.f32 (PI.f32) 1) 1)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(*.f32 1 (PI.f32))
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(*.f32 2 (*.f32 1/2 (PI.f32)))
(*.f32 1/3 (*.f32 3 (PI.f32)))
(*.f32 3 (*.f32 1/3 (PI.f32)))
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(*.f32 (log.f32 (E.f32)) (PI.f32))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(pow.f32 (PI.f32) 1)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(fabs.f32 (PI.f32))
(log.f32 (exp.f32 (PI.f32)))
(cbrt.f32 (pow.f32 (PI.f32) 3))
(expm1.f32 (log1p.f32 (PI.f32)))
(exp.f32 (log.f32 (PI.f32)))
(log1p.f32 (expm1.f32 (PI.f32)))
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)
Outputs
(+.f32 (PI.f32) 0)
(PI.f32)
(+.f32 (+.f32 (PI.f32) 1) -1)
(PI.f32)
(+.f32 0 (PI.f32))
(PI.f32)
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(PI.f32)
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(PI.f32)
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(PI.f32)
(-.f32 (+.f32 (PI.f32) 1) 1)
(PI.f32)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(PI.f32)
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log1p.f32 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32)))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log1p.f32 (*.f32 (expm1.f32 (PI.f32)) (+.f32 -1 (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(PI.f32)
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(-.f32 (log1p.f32 (neg.f32 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log1p.f32 (neg.f32 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(PI.f32)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(PI.f32)
(*.f32 1 (PI.f32))
(PI.f32)
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(PI.f32)
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(PI.f32)
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(PI.f32)
(*.f32 2 (*.f32 1/2 (PI.f32)))
(PI.f32)
(*.f32 1/3 (*.f32 3 (PI.f32)))
(PI.f32)
(*.f32 3 (*.f32 1/3 (PI.f32)))
(PI.f32)
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(PI.f32)
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(PI.f32)
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (cbrt.f32 (PI.f32)) (log.f32 (exp.f32 (sqrt.f32 (PI.f32))))))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/6)))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (fabs.f32 (pow.f32 (PI.f32) 3/4)))
(*.f32 (pow.f32 (PI.f32) 1/4) (pow.f32 (PI.f32) 3/4))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(PI.f32)
(*.f32 (log.f32 (E.f32)) (PI.f32))
(PI.f32)
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (cbrt.f32 (PI.f32)) (log.f32 (exp.f32 (sqrt.f32 (PI.f32))))))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/6)))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(PI.f32)
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 8)))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (cbrt.f32 (pow.f32 (PI.f32) 5/2)))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 8)))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (cbrt.f32 (pow.f32 (PI.f32) 5/2)))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(PI.f32)
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (fabs.f32 (pow.f32 (PI.f32) 3/4)))
(*.f32 (pow.f32 (PI.f32) 1/4) (pow.f32 (PI.f32) 3/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)))
(*.f32 (pow.f32 (PI.f32) 1/6) (fabs.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5/2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 5/2))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(PI.f32)
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(PI.f32)
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (+.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) -1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (PI.f32) 1) 3)) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (PI.f32) 1) 3)) (+.f32 1 (*.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (PI.f32) 2))
(/.f32 (*.f32 (+.f32 (PI.f32) 2) (PI.f32)) (+.f32 (PI.f32) 2))
(/.f32 (+.f32 (PI.f32) 2) (/.f32 (+.f32 (PI.f32) 2) (PI.f32)))
(pow.f32 (PI.f32) 1)
(PI.f32)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(PI.f32)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(PI.f32)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(PI.f32)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(PI.f32)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(PI.f32)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(PI.f32)
(fabs.f32 (PI.f32))
(PI.f32)
(log.f32 (exp.f32 (PI.f32)))
(PI.f32)
(cbrt.f32 (pow.f32 (PI.f32) 3))
(PI.f32)
(expm1.f32 (log1p.f32 (PI.f32)))
(PI.f32)
(exp.f32 (log.f32 (PI.f32)))
(PI.f32)
(log1p.f32 (expm1.f32 (PI.f32)))
(PI.f32)
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(PI.f32)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(PI.f32)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(PI.f32)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)
(PI.f32)
(+.f32 (PI.f32) 0)
(PI.f32)
(+.f32 (+.f32 (PI.f32) 1) -1)
(PI.f32)
(+.f32 0 (PI.f32))
(PI.f32)
(+.f32 (*.f32 2 (*.f32 1/3 (PI.f32))) (*.f32 1/3 (PI.f32)))
(PI.f32)
(+.f32 (*.f32 1/3 (PI.f32)) (*.f32 2 (*.f32 1/3 (PI.f32))))
(PI.f32)
(+.f32 (*.f32 1/2 (PI.f32)) (*.f32 1/2 (PI.f32)))
(PI.f32)
(-.f32 (+.f32 (PI.f32) 1) 1)
(PI.f32)
(-.f32 (+.f32 (PI.f32) 1) (log.f32 (E.f32)))
(PI.f32)
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32))))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log1p.f32 (-.f32 (pow.f32 (expm1.f32 (PI.f32)) 2) (expm1.f32 (PI.f32)))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (PI.f32)) 3)) (log1p.f32 (*.f32 (expm1.f32 (PI.f32)) (+.f32 -1 (expm1.f32 (PI.f32))))))
(-.f32 (log.f32 (pow.f32 (E.f32) (+.f32 (PI.f32) 1))) (log.f32 (E.f32)))
(PI.f32)
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (PI.f32)))))
(-.f32 (log1p.f32 (neg.f32 (pow.f32 (expm1.f32 (PI.f32)) 2))) (log1p.f32 (neg.f32 (expm1.f32 (PI.f32)))))
(*.f32 (PI.f32) 1)
(PI.f32)
(*.f32 (PI.f32) (log.f32 (E.f32)))
(PI.f32)
(*.f32 1 (PI.f32))
(PI.f32)
(*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (PI.f32)) 2))
(PI.f32)
(*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (cbrt.f32 (PI.f32)))
(PI.f32)
(*.f32 (sqrt.f32 (PI.f32)) (sqrt.f32 (PI.f32)))
(PI.f32)
(*.f32 2 (*.f32 1/2 (PI.f32)))
(PI.f32)
(*.f32 1/3 (*.f32 3 (PI.f32)))
(PI.f32)
(*.f32 3 (*.f32 1/3 (PI.f32)))
(PI.f32)
(*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(PI.f32)
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))))
(PI.f32)
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 2)))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2)) (pow.f32 (PI.f32) 1/6))))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/6) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (cbrt.f32 (PI.f32)))))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (cbrt.f32 (PI.f32)) (log.f32 (exp.f32 (sqrt.f32 (PI.f32))))))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/6)))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (fabs.f32 (pow.f32 (PI.f32) 3/4)))
(*.f32 (pow.f32 (PI.f32) 1/4) (pow.f32 (PI.f32) 3/4))
(*.f32 (pow.f32 (PI.f32) 1/4) (*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (PI.f32))))
(PI.f32)
(*.f32 (pow.f32 (PI.f32) 1/4) (log.f32 (pow.f32 (exp.f32 (sqrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/4))))
(PI.f32)
(*.f32 (log.f32 (E.f32)) (PI.f32))
(PI.f32)
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (cbrt.f32 (PI.f32))) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (*.f32 (cbrt.f32 (PI.f32)) (log.f32 (exp.f32 (sqrt.f32 (PI.f32))))))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/6)))
(*.f32 (pow.f32 1 1/3) (PI.f32))
(PI.f32)
(*.f32 (pow.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2) 1/3) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 8)))
(*.f32 (pow.f32 (pow.f32 (PI.f32) 5/2) 1/3) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (cbrt.f32 (pow.f32 (PI.f32) 5/2)))
(*.f32 (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4) 2)))
(*.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 8)))
(*.f32 (cbrt.f32 (pow.f32 (PI.f32) 5/2)) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (cbrt.f32 (pow.f32 (PI.f32) 5/2)))
(*.f32 (*.f32 (sqrt.f32 (PI.f32)) (pow.f32 (PI.f32) 1/4)) (pow.f32 (PI.f32) 1/4))
(PI.f32)
(*.f32 (sqrt.f32 (pow.f32 (PI.f32) 3/2)) (pow.f32 (PI.f32) 1/4))
(*.f32 (pow.f32 (PI.f32) 1/4) (sqrt.f32 (pow.f32 (PI.f32) 3/2)))
(*.f32 (pow.f32 (PI.f32) 1/4) (fabs.f32 (pow.f32 (PI.f32) 3/4)))
(*.f32 (pow.f32 (PI.f32) 1/4) (pow.f32 (PI.f32) 3/4))
(*.f32 (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)) (pow.f32 (PI.f32) 1/6))
(*.f32 (pow.f32 (PI.f32) 1/6) (sqrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5)))
(*.f32 (pow.f32 (PI.f32) 1/6) (fabs.f32 (pow.f32 (cbrt.f32 (PI.f32)) 5/2)))
(*.f32 (pow.f32 (PI.f32) 1/6) (pow.f32 (cbrt.f32 (PI.f32)) 5/2))
(*.f32 (*.f32 (cbrt.f32 (PI.f32)) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2))
(*.f32 (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4)) (*.f32 (cbrt.f32 (PI.f32)) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)))
(*.f32 (cbrt.f32 (PI.f32)) (*.f32 (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2) (cbrt.f32 (pow.f32 (cbrt.f32 (PI.f32)) 4))))
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (cbrt.f32 (cbrt.f32 (PI.f32))) 2)) (cbrt.f32 (cbrt.f32 (PI.f32))))
(PI.f32)
(*.f32 (*.f32 (pow.f32 (cbrt.f32 (PI.f32)) 2) (pow.f32 (PI.f32) 1/6)) (pow.f32 (PI.f32) 1/6))
(PI.f32)
(/.f32 (-.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) 1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 1 (+.f32 (PI.f32) 1))))
(/.f32 (+.f32 (pow.f32 (+.f32 (PI.f32) 1) 3) -1) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (PI.f32) 1) 3)) (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (PI.f32) 1) 3)) (+.f32 1 (*.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 2))))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (+.f32 (PI.f32) 1) 1))
(/.f32 (fma.f32 (+.f32 (PI.f32) 1) (+.f32 (PI.f32) 1) -1) (+.f32 (PI.f32) 2))
(/.f32 (*.f32 (+.f32 (PI.f32) 2) (PI.f32)) (+.f32 (PI.f32) 2))
(/.f32 (+.f32 (PI.f32) 2) (/.f32 (+.f32 (PI.f32) 2) (PI.f32)))
(pow.f32 (PI.f32) 1)
(PI.f32)
(pow.f32 (cbrt.f32 (PI.f32)) 3)
(PI.f32)
(pow.f32 (pow.f32 (PI.f32) 2) 1/2)
(PI.f32)
(pow.f32 (pow.f32 (PI.f32) 3) 1/3)
(PI.f32)
(pow.f32 (sqrt.f32 (PI.f32)) 2)
(PI.f32)
(pow.f32 (E.f32) (log.f32 (PI.f32)))
(PI.f32)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (log.f32 (PI.f32))) 2)) (cbrt.f32 (log.f32 (PI.f32))))
(pow.f32 (exp.f32 (sqrt.f32 (log.f32 (PI.f32)))) (sqrt.f32 (log.f32 (PI.f32))))
(sqrt.f32 (pow.f32 (PI.f32) 2))
(PI.f32)
(fabs.f32 (PI.f32))
(PI.f32)
(log.f32 (exp.f32 (PI.f32)))
(PI.f32)
(cbrt.f32 (pow.f32 (PI.f32) 3))
(PI.f32)
(expm1.f32 (log1p.f32 (PI.f32)))
(PI.f32)
(exp.f32 (log.f32 (PI.f32)))
(PI.f32)
(log1p.f32 (expm1.f32 (PI.f32)))
(PI.f32)
(fma.f32 1 (+.f32 (PI.f32) 1) -1)
(PI.f32)
(fma.f32 (+.f32 (PI.f32) 1) 1 -1)
(PI.f32)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (PI.f32) 1)) (cbrt.f32 (+.f32 (PI.f32) 1))) (cbrt.f32 (+.f32 (PI.f32) 1)) -1)
(PI.f32)
(fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)
(PI.f32)

eval60.0ms (0.2%)

Compiler

Compiled 3440 to 2199 computations (36.1% saved)

prune36.0ms (0.1%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New1664170
Fresh000
Picked022
Done000
Total1666172
Accuracy
99.3%
Counts
172 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
99.0%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (E.f32)) (PI.f32))) u2)))
99.2%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 113 to 100 computations (11.5% saved)

localize8.8s (33.7%)

Localize:

Found 5 expressions with local error:

NewAccuracyProgram
6.3%
(PI.f32)
6.3%
(PI.f32)
6.3%
(E.f32)
6.3%
(PI.f32)
6.3%
(PI.f32)
Compiler

Compiled 314 to 203 computations (35.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.2s
Operation ival-log, time spent: 1.9s, 31.0% of total-time
Operation ival-add, time spent: 933.0ms, 15.0% of total-time
Operation ival-sub, time spent: 641.0ms, 10.0% of total-time
Operation ival-mult, time spent: 457.0ms, 7.0% of total-time
Operation ival-sqrt, time spent: 445.0ms, 7.0% of total-time
Operation ival-cos, time spent: 442.0ms, 7.0% of total-time
Operation ival-log1p, time spent: 439.0ms, 7.0% of total-time
Operation ival-neg, time spent: 360.0ms, 6.0% of total-time
Operation ival-e, time spent: 320.0ms, 5.0% of total-time
Operation ival-fma, time spent: 127.0ms, 2.0% of total-time
Operation const, time spent: 98.0ms, 2.0% of total-time
Operation ival-pi, time spent: 9.0ms, 0.0% of total-time

series0.0ms (0%)

Counts
1 → 0

rewrite95.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
601×log1p-expm1-u
601×expm1-log1p-u
438×prod-diff
355×pow-unpow
345×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033
1253
22233
320573
Stop Event
node limit
Counts
1 → 67
Calls
Call 1
Inputs
(E.f32)
Outputs
(+.f32 (E.f32) 0)
(+.f32 (E.f32) (log.f32 (pow.f32 1 (E.f32))))
(+.f32 (+.f32 (E.f32) 1) -1)
(+.f32 0 (E.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (E.f32))) (*.f32 1/3 (E.f32)))
(+.f32 (*.f32 1/3 (E.f32)) (*.f32 2 (*.f32 1/3 (E.f32))))
(+.f32 (*.f32 1/3 (E.f32)) (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))))
(+.f32 (*.f32 1/2 (E.f32)) (*.f32 1/2 (E.f32)))
(+.f32 (log.f32 (pow.f32 1 (E.f32))) (E.f32))
(+.f32 (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))) (*.f32 1/3 (E.f32)))
(-.f32 (+.f32 (E.f32) 1) 1)
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (E.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (E.f32)) 2) (expm1.f32 (E.f32))))))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (E.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (E.f32)))))
(*.f32 (E.f32) 1)
(*.f32 1 (E.f32))
(*.f32 (exp.f32 1/3) (exp.f32 2/3))
(*.f32 (exp.f32 2/3) (exp.f32 1/3))
(*.f32 (exp.f32 1/2) (exp.f32 1/2))
(*.f32 1/3 (*.f32 3 (E.f32)))
(*.f32 2 (*.f32 1/2 (E.f32)))
(*.f32 3 (*.f32 1/3 (E.f32)))
(*.f32 (exp.f32 2/9) (*.f32 (exp.f32 1/9) (exp.f32 2/3)))
(*.f32 (exp.f32 1/9) (log.f32 (exp.f32 (exp.f32 8/9))))
(*.f32 (exp.f32 1/6) (exp.f32 5/6))
(*.f32 (exp.f32 1/6) (log.f32 (exp.f32 (exp.f32 5/6))))
(*.f32 (exp.f32 4/9) (pow.f32 (exp.f32 2/3) 5/6))
(*.f32 (exp.f32 1/4) (pow.f32 (E.f32) 3/4))
(*.f32 (exp.f32 1/4) (sqrt.f32 (exp.f32 3/2)))
(*.f32 (exp.f32 1/4) (log.f32 (exp.f32 (pow.f32 (E.f32) 3/4))))
(*.f32 (*.f32 1/3 (E.f32)) 3)
(*.f32 (*.f32 (E.f32) 2) 1/2)
(*.f32 (exp.f32 5/6) (exp.f32 1/6))
(*.f32 (*.f32 3 (E.f32)) 1/3)
(*.f32 (cbrt.f32 (exp.f32 8/3)) (exp.f32 1/9))
(*.f32 (cbrt.f32 (exp.f32 5/2)) (exp.f32 1/6))
(*.f32 (pow.f32 (E.f32) 3/4) (exp.f32 1/4))
(*.f32 (sqrt.f32 (exp.f32 3/2)) (exp.f32 1/4))
(*.f32 (sqrt.f32 (exp.f32 5/3)) (exp.f32 1/6))
(*.f32 (/.f32 (E.f32) 2) 2)
(*.f32 (*.f32 (exp.f32 1/3) (exp.f32 4/9)) (exp.f32 2/9))
(*.f32 (exp.f32 8/9) (exp.f32 1/9))
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 3) 1) (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) (+.f32 1 (+.f32 (E.f32) 1))))
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 2) 1) (+.f32 (+.f32 (E.f32) 1) 1))
(pow.f32 (E.f32) 1)
(pow.f32 (exp.f32 1/3) 3)
(pow.f32 (exp.f32 2/3) 3/2)
(pow.f32 (exp.f32 2) 1/2)
(pow.f32 (exp.f32 3) 1/3)
(pow.f32 (exp.f32 1/2) 2)
(pow.f32 (exp.f32 1/9) 9)
(pow.f32 (exp.f32 1/6) 6)
(pow.f32 (exp.f32 6) 1/6)
(pow.f32 (exp.f32 3/2) 2/3)
(pow.f32 (exp.f32 9) 1/9)
(pow.f32 (exp.f32 4) 1/4)
(pow.f32 (exp.f32 1/4) 4)
(sqrt.f32 (exp.f32 2))
(fabs.f32 (E.f32))
(log.f32 (exp.f32 (E.f32)))
(cbrt.f32 (exp.f32 3))
(expm1.f32 (log1p.f32 (E.f32)))
(exp.f32 1)
(log1p.f32 (expm1.f32 (E.f32)))
(fma.f32 1 (+.f32 (E.f32) 1) -1)
(fma.f32 (+.f32 (E.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (E.f32) 1)) (cbrt.f32 (+.f32 (E.f32) 1))) (cbrt.f32 (+.f32 (E.f32) 1)) -1)
(fma.f32 (hypot.f32 1 (exp.f32 1/2)) (hypot.f32 1 (exp.f32 1/2)) -1)

simplify59.0ms (0.2%)

Algorithm
egg-herbie
Rules
695×distribute-lft-in
670×distribute-rgt-in
489×associate-+l+
470×associate-+r+
340×distribute-lft-out
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01634294967919
1329639
21254639
Stop Event
node limit
Counts
67 → 82
Calls
Call 1
Inputs
(+.f32 (E.f32) 0)
(+.f32 (E.f32) (log.f32 (pow.f32 1 (E.f32))))
(+.f32 (+.f32 (E.f32) 1) -1)
(+.f32 0 (E.f32))
(+.f32 (*.f32 2 (*.f32 1/3 (E.f32))) (*.f32 1/3 (E.f32)))
(+.f32 (*.f32 1/3 (E.f32)) (*.f32 2 (*.f32 1/3 (E.f32))))
(+.f32 (*.f32 1/3 (E.f32)) (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))))
(+.f32 (*.f32 1/2 (E.f32)) (*.f32 1/2 (E.f32)))
(+.f32 (log.f32 (pow.f32 1 (E.f32))) (E.f32))
(+.f32 (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))) (*.f32 1/3 (E.f32)))
(-.f32 (+.f32 (E.f32) 1) 1)
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (E.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (E.f32)) 2) (expm1.f32 (E.f32))))))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (E.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (E.f32)))))
(*.f32 (E.f32) 1)
(*.f32 1 (E.f32))
(*.f32 (exp.f32 1/3) (exp.f32 2/3))
(*.f32 (exp.f32 2/3) (exp.f32 1/3))
(*.f32 (exp.f32 1/2) (exp.f32 1/2))
(*.f32 1/3 (*.f32 3 (E.f32)))
(*.f32 2 (*.f32 1/2 (E.f32)))
(*.f32 3 (*.f32 1/3 (E.f32)))
(*.f32 (exp.f32 2/9) (*.f32 (exp.f32 1/9) (exp.f32 2/3)))
(*.f32 (exp.f32 1/9) (log.f32 (exp.f32 (exp.f32 8/9))))
(*.f32 (exp.f32 1/6) (exp.f32 5/6))
(*.f32 (exp.f32 1/6) (log.f32 (exp.f32 (exp.f32 5/6))))
(*.f32 (exp.f32 4/9) (pow.f32 (exp.f32 2/3) 5/6))
(*.f32 (exp.f32 1/4) (pow.f32 (E.f32) 3/4))
(*.f32 (exp.f32 1/4) (sqrt.f32 (exp.f32 3/2)))
(*.f32 (exp.f32 1/4) (log.f32 (exp.f32 (pow.f32 (E.f32) 3/4))))
(*.f32 (*.f32 1/3 (E.f32)) 3)
(*.f32 (*.f32 (E.f32) 2) 1/2)
(*.f32 (exp.f32 5/6) (exp.f32 1/6))
(*.f32 (*.f32 3 (E.f32)) 1/3)
(*.f32 (cbrt.f32 (exp.f32 8/3)) (exp.f32 1/9))
(*.f32 (cbrt.f32 (exp.f32 5/2)) (exp.f32 1/6))
(*.f32 (pow.f32 (E.f32) 3/4) (exp.f32 1/4))
(*.f32 (sqrt.f32 (exp.f32 3/2)) (exp.f32 1/4))
(*.f32 (sqrt.f32 (exp.f32 5/3)) (exp.f32 1/6))
(*.f32 (/.f32 (E.f32) 2) 2)
(*.f32 (*.f32 (exp.f32 1/3) (exp.f32 4/9)) (exp.f32 2/9))
(*.f32 (exp.f32 8/9) (exp.f32 1/9))
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 3) 1) (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) (+.f32 1 (+.f32 (E.f32) 1))))
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 2) 1) (+.f32 (+.f32 (E.f32) 1) 1))
(pow.f32 (E.f32) 1)
(pow.f32 (exp.f32 1/3) 3)
(pow.f32 (exp.f32 2/3) 3/2)
(pow.f32 (exp.f32 2) 1/2)
(pow.f32 (exp.f32 3) 1/3)
(pow.f32 (exp.f32 1/2) 2)
(pow.f32 (exp.f32 1/9) 9)
(pow.f32 (exp.f32 1/6) 6)
(pow.f32 (exp.f32 6) 1/6)
(pow.f32 (exp.f32 3/2) 2/3)
(pow.f32 (exp.f32 9) 1/9)
(pow.f32 (exp.f32 4) 1/4)
(pow.f32 (exp.f32 1/4) 4)
(sqrt.f32 (exp.f32 2))
(fabs.f32 (E.f32))
(log.f32 (exp.f32 (E.f32)))
(cbrt.f32 (exp.f32 3))
(expm1.f32 (log1p.f32 (E.f32)))
(exp.f32 1)
(log1p.f32 (expm1.f32 (E.f32)))
(fma.f32 1 (+.f32 (E.f32) 1) -1)
(fma.f32 (+.f32 (E.f32) 1) 1 -1)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (E.f32) 1)) (cbrt.f32 (+.f32 (E.f32) 1))) (cbrt.f32 (+.f32 (E.f32) 1)) -1)
(fma.f32 (hypot.f32 1 (exp.f32 1/2)) (hypot.f32 1 (exp.f32 1/2)) -1)
Outputs
(+.f32 (E.f32) 0)
(E.f32)
(+.f32 (E.f32) (log.f32 (pow.f32 1 (E.f32))))
(E.f32)
(+.f32 (+.f32 (E.f32) 1) -1)
(E.f32)
(+.f32 0 (E.f32))
(E.f32)
(+.f32 (*.f32 2 (*.f32 1/3 (E.f32))) (*.f32 1/3 (E.f32)))
(E.f32)
(+.f32 (*.f32 1/3 (E.f32)) (*.f32 2 (*.f32 1/3 (E.f32))))
(E.f32)
(+.f32 (*.f32 1/3 (E.f32)) (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))))
(E.f32)
(+.f32 (*.f32 1/2 (E.f32)) (*.f32 1/2 (E.f32)))
(E.f32)
(+.f32 (log.f32 (pow.f32 1 (E.f32))) (E.f32))
(E.f32)
(+.f32 (log.f32 (pow.f32 (exp.f32 2/3) (E.f32))) (*.f32 1/3 (E.f32)))
(E.f32)
(-.f32 (+.f32 (E.f32) 1) 1)
(E.f32)
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (E.f32)) 3)) (log.f32 (+.f32 1 (-.f32 (pow.f32 (expm1.f32 (E.f32)) 2) (expm1.f32 (E.f32))))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (E.f32)) 3)) (log1p.f32 (-.f32 (pow.f32 (expm1.f32 (E.f32)) 2) (expm1.f32 (E.f32)))))
(-.f32 (log1p.f32 (pow.f32 (expm1.f32 (E.f32)) 3)) (log1p.f32 (*.f32 (expm1.f32 (E.f32)) (+.f32 -1 (expm1.f32 (E.f32))))))
(-.f32 (log.f32 (-.f32 1 (pow.f32 (expm1.f32 (E.f32)) 2))) (log.f32 (-.f32 1 (expm1.f32 (E.f32)))))
(-.f32 (log1p.f32 (neg.f32 (pow.f32 (expm1.f32 (E.f32)) 2))) (log1p.f32 (neg.f32 (expm1.f32 (E.f32)))))
(*.f32 (E.f32) 1)
(E.f32)
(*.f32 1 (E.f32))
(E.f32)
(*.f32 (exp.f32 1/3) (exp.f32 2/3))
(E.f32)
(*.f32 (exp.f32 2/3) (exp.f32 1/3))
(E.f32)
(*.f32 (exp.f32 1/2) (exp.f32 1/2))
(E.f32)
(*.f32 1/3 (*.f32 3 (E.f32)))
(E.f32)
(*.f32 2 (*.f32 1/2 (E.f32)))
(E.f32)
(*.f32 3 (*.f32 1/3 (E.f32)))
(E.f32)
(*.f32 (exp.f32 2/9) (*.f32 (exp.f32 1/9) (exp.f32 2/3)))
(E.f32)
(*.f32 (exp.f32 1/9) (log.f32 (exp.f32 (exp.f32 8/9))))
(E.f32)
(*.f32 (exp.f32 1/6) (exp.f32 5/6))
(E.f32)
(*.f32 (exp.f32 1/6) (log.f32 (exp.f32 (exp.f32 5/6))))
(E.f32)
(*.f32 (exp.f32 4/9) (pow.f32 (exp.f32 2/3) 5/6))
(*.f32 (exp.f32 1/4) (pow.f32 (E.f32) 3/4))
(*.f32 (exp.f32 1/4) (sqrt.f32 (exp.f32 3/2)))
(*.f32 (exp.f32 1/4) (log.f32 (exp.f32 (pow.f32 (E.f32) 3/4))))
(*.f32 (exp.f32 1/4) (pow.f32 (E.f32) 3/4))
(*.f32 (*.f32 1/3 (E.f32)) 3)
(E.f32)
(*.f32 (*.f32 (E.f32) 2) 1/2)
(E.f32)
(*.f32 (exp.f32 5/6) (exp.f32 1/6))
(E.f32)
(*.f32 (*.f32 3 (E.f32)) 1/3)
(E.f32)
(*.f32 (cbrt.f32 (exp.f32 8/3)) (exp.f32 1/9))
(*.f32 (exp.f32 1/9) (cbrt.f32 (exp.f32 8/3)))
(*.f32 (cbrt.f32 (exp.f32 5/2)) (exp.f32 1/6))
(*.f32 (exp.f32 1/6) (cbrt.f32 (exp.f32 5/2)))
(*.f32 (pow.f32 (E.f32) 3/4) (exp.f32 1/4))
(*.f32 (exp.f32 1/4) (pow.f32 (E.f32) 3/4))
(*.f32 (sqrt.f32 (exp.f32 3/2)) (exp.f32 1/4))
(*.f32 (exp.f32 1/4) (sqrt.f32 (exp.f32 3/2)))
(*.f32 (sqrt.f32 (exp.f32 5/3)) (exp.f32 1/6))
(*.f32 (exp.f32 1/6) (sqrt.f32 (exp.f32 5/3)))
(*.f32 (/.f32 (E.f32) 2) 2)
(E.f32)
(*.f32 (*.f32 (exp.f32 1/3) (exp.f32 4/9)) (exp.f32 2/9))
(E.f32)
(*.f32 (exp.f32 8/9) (exp.f32 1/9))
(E.f32)
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 3) 1) (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) (+.f32 1 (+.f32 (E.f32) 1))))
(/.f32 (+.f32 (pow.f32 (+.f32 (E.f32) 1) 3) -1) (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) (+.f32 (E.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (E.f32) 1) 3)) (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) (+.f32 (E.f32) 2)))
(/.f32 (+.f32 -1 (pow.f32 (+.f32 (E.f32) 1) 3)) (+.f32 (E.f32) (+.f32 2 (pow.f32 (+.f32 (E.f32) 1) 2))))
(/.f32 (-.f32 (pow.f32 (+.f32 (E.f32) 1) 2) 1) (+.f32 (+.f32 (E.f32) 1) 1))
(/.f32 (+.f32 (pow.f32 (+.f32 (E.f32) 1) 2) -1) (+.f32 (E.f32) 2))
(/.f32 (*.f32 (+.f32 (E.f32) 2) (E.f32)) (+.f32 (E.f32) 2))
(pow.f32 (E.f32) 1)
(E.f32)
(pow.f32 (exp.f32 1/3) 3)
(E.f32)
(pow.f32 (exp.f32 2/3) 3/2)
(pow.f32 (exp.f32 2) 1/2)
(sqrt.f32 (exp.f32 2))
(pow.f32 (exp.f32 3) 1/3)
(cbrt.f32 (exp.f32 3))
(pow.f32 (exp.f32 1/2) 2)
(E.f32)
(pow.f32 (exp.f32 1/9) 9)
(pow.f32 (exp.f32 1/6) 6)
(E.f32)
(pow.f32 (exp.f32 6) 1/6)
(pow.f32 (exp.f32 3/2) 2/3)
(*.f32 (pow.f32 (exp.f32 3/2) 1/3) (pow.f32 (exp.f32 3/2) 1/3))
(*.f32 (cbrt.f32 (exp.f32 3/2)) (cbrt.f32 (exp.f32 3/2)))
(pow.f32 (exp.f32 9) 1/9)
(*.f32 (pow.f32 (exp.f32 9) 1/18) (pow.f32 (exp.f32 9) 1/18))
(pow.f32 (exp.f32 4) 1/4)
(pow.f32 (exp.f32 1/4) 4)
(E.f32)
(sqrt.f32 (exp.f32 2))
(fabs.f32 (E.f32))
(E.f32)
(log.f32 (exp.f32 (E.f32)))
(E.f32)
(cbrt.f32 (exp.f32 3))
(expm1.f32 (log1p.f32 (E.f32)))
(E.f32)
(exp.f32 1)
(E.f32)
(log1p.f32 (expm1.f32 (E.f32)))
(E.f32)
(fma.f32 1 (+.f32 (E.f32) 1) -1)
(E.f32)
(fma.f32 (+.f32 (E.f32) 1) 1 -1)
(E.f32)
(fma.f32 (*.f32 (cbrt.f32 (+.f32 (E.f32) 1)) (cbrt.f32 (+.f32 (E.f32) 1))) (cbrt.f32 (+.f32 (E.f32) 1)) -1)
(E.f32)
(fma.f32 (hypot.f32 1 (exp.f32 1/2)) (hypot.f32 1 (exp.f32 1/2)) -1)

eval987.0ms (3.8%)

Compiler

Compiled 46102 to 32001 computations (30.6% saved)

prune160.0ms (0.6%)

Pruning

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New178111782
Fresh000
Picked044
Done022
Total178171788
Accuracy
99.3%
Counts
1788 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
98.0%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (pow.f32 (exp.f32 1/9) 9)) (PI.f32))) u2)))
99.0%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (E.f32)) (PI.f32))) u2)))
99.2%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 134 to 119 computations (11.2% saved)

localize4.9s (18.6%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
6.3%
(PI.f32)
Compiler

Compiled 92 to 67 computations (27.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.2s
Operation ival-exp, time spent: 1.9s, 46.0% of total-time
Operation ival-log, time spent: 1.3s, 30.0% of total-time
Operation ival-log1p, time spent: 383.0ms, 9.0% of total-time
Operation ival-pow, time spent: 263.0ms, 6.0% of total-time
Operation ival-mult, time spent: 191.0ms, 5.0% of total-time
Operation ival-cos, time spent: 115.0ms, 3.0% of total-time
Operation const, time spent: 35.0ms, 1.0% of total-time
Operation ival-sqrt, time spent: 26.0ms, 1.0% of total-time
Operation ival-neg, time spent: 19.0ms, 0.0% of total-time
Operation ival-pi, time spent: 12.0ms, 0.0% of total-time

eval38.0ms (0.1%)

Compiler

Compiled 2189 to 1416 computations (35.3% saved)

prune20.0ms (0.1%)

Pruning

7 alts after pruning (0 fresh and 7 done)

PrunedKeptTotal
New85085
Fresh000
Picked011
Done066
Total85792
Accuracy
99.3%
Counts
92 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
98.0%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (pow.f32 (exp.f32 1/9) 9)) (PI.f32))) u2)))
99.0%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (E.f32)) (PI.f32))) u2)))
99.2%
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
53.9%
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 250 to 202 computations (19.2% saved)

regimes48.0ms (0.2%)

Accuracy

Total -14.5b remaining (-5635.9%)

Threshold costs -14.5b (-5635.9%)

Counts
7 → 1
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (-.f32 (+.f32 (PI.f32) 1) 1)) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (E.f32)) (PI.f32))) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (*.f32 (log.f32 (pow.f32 (exp.f32 1/9) 9)) (PI.f32))) u2)))
(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (fma.f32 (sqrt.f32 (+.f32 (PI.f32) 1)) (sqrt.f32 (+.f32 (PI.f32) 1)) -1)) u2)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Calls

10 calls:

7.0ms
(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
6.0ms
cosTheta_i
5.0ms
(*.f32 (*.f32 2 (PI.f32)) u2)
5.0ms
u1
5.0ms
u2
Results
AccuracySegmentsBranch
99.2%1cosTheta_i
99.2%1u1
99.2%1u2
99.2%1(*.f32 (sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
99.2%1(sqrt.f32 (neg.f32 (log.f32 (-.f32 1 u1))))
99.2%1(neg.f32 (log.f32 (-.f32 1 u1)))
99.2%1(log.f32 (-.f32 1 u1))
99.2%1(-.f32 1 u1)
99.2%1(cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2))
99.2%1(*.f32 (*.f32 2 (PI.f32)) u2)
Compiler

Compiled 75 to 64 computations (14.7% saved)

simplify3.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative
sub-neg
neg-mul-1
+-commutative
neg-sub0
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01847
12747
23147
33347
Stop Event
done
saturated
Calls
Call 1
Inputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Outputs
(*.f32 (sqrt.f32 (neg.f32 (log1p.f32 (neg.f32 u1)))) (cos.f32 (*.f32 (*.f32 2 (PI.f32)) u2)))
Compiler

Compiled 15 to 13 computations (13.3% saved)

soundness406.0ms (1.6%)

Rules
1353×fma-def
585×unsub-neg
538×fma-neg
538×distribute-neg-in
437×associate-+l+
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
049559
1109521
2201521
3348521
4583521
5993521
61224521
71676521
82448521
92970521
103738521
115164521
126066521
136255521
146267521
156729521
167863521
Stop Event
node limit
Compiler

Compiled 42 to 33 computations (21.4% saved)

end0.0ms (0%)

preprocess28.0ms (0.1%)

Remove

(abs u2)

(abs cosTheta_i)

Compiler

Compiled 182 to 158 computations (13.2% saved)

Profiling

Loading profile data...