HairBSDF, sample_f, cosTheta

Time bar (total: 14.9s)

analyze2.4s (16%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%1.5%98.5%0%0%0%0
0%0%1.5%98.5%0%0%0%1
0%0%2.6%97.4%0%0%0%2
0%0%2.6%97.4%0%0%0%3
0%0%4.5%95.5%0%0%0%4
0%0%4.5%95.5%0%0%0%5
0%0%7.5%92.5%0%0%0%6
0%0%7.5%92.5%0%0%0%7
0%0%12.1%87.9%0%0%0%8
0%0%11.9%88.1%0%0%0%9
0%0%18.4%81.6%0%0%0%10
0.5%0.1%17.7%82.2%0%0%0%11
0.3%0.1%26.7%73.2%0%0%0%12
Compiler

Compiled 32 to 24 computations (25% saved)

sample6.0s (40%)

Results
3.1s8256×body256valid
2.9s9083×body256precondition
Bogosity

preprocess483.0ms (3.2%)

Algorithm
egg-herbie
Rules
2258×fma-def
1702×unsub-neg
1252×associate--l-
928×fma-neg
846×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
038196
167156
2140156
3356156
4938156
52018156
63081156
73526156
83894156
94211156
104701156
115188156
125787156
136514156
146958156
157099156
167286156
177294156
187343156
197375156
207426156
217426156
227426156
Stop Event
node limit
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 (neg.f32 u) (*.f32 (-.f32 1 (neg.f32 u)) (exp.f32 (/.f32 -2 v)))))))
(+.f32 1 (*.f32 (neg.f32 v) (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 (neg.f32 v))))))))
(+.f32 1 (*.f32 u (log.f32 (+.f32 v (*.f32 (-.f32 1 v) (exp.f32 (/.f32 -2 u)))))))
Outputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)
(+.f32 1 (*.f32 v (log.f32 (+.f32 (neg.f32 u) (*.f32 (-.f32 1 (neg.f32 u)) (exp.f32 (/.f32 -2 v)))))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 (neg.f32 u) (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (neg.f32 u)))))))
(fma.f32 v (log.f32 (-.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (+.f32 1 u)) u)) 1)
(fma.f32 v (log.f32 (fma.f32 (exp.f32 (/.f32 -2 v)) (+.f32 1 u) (neg.f32 u))) 1)
(fma.f32 v (log.f32 (fma.f32 u (expm1.f32 (/.f32 -2 v)) (exp.f32 (/.f32 -2 v)))) 1)
(+.f32 1 (*.f32 (neg.f32 v) (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 (neg.f32 v))))))))
(fma.f32 (neg.f32 v) (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 2 v)) u)) 1)
(fma.f32 v (neg.f32 (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 2 v)) u))) 1)
(-.f32 1 (*.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 2 v)) u))))
(+.f32 1 (*.f32 u (log.f32 (+.f32 v (*.f32 (-.f32 1 v) (exp.f32 (/.f32 -2 u)))))))
(fma.f32 u (log.f32 (fma.f32 (-.f32 1 v) (exp.f32 (/.f32 -2 u)) v)) 1)
Compiler

Compiled 19 to 15 computations (21.1% saved)

simplify284.0ms (1.9%)

Algorithm
egg-herbie
Rules
6030×fma-def
3772×associate-+r+
768×distribute-lft-out
712×distribute-rgt-in
698×distribute-lft-in
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01545
12337
23837
36537
413237
522137
634337
752937
886637
999737
10107537
11110437
12114837
13132037
14161437
15196237
16243637
17262637
18263237
19298437
20352137
21374637
22396237
23396237
24396237
25396237
26597037
27597037
28597037
29597037
Stop Event
node limit
Counts
1 → 2
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
Outputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
(fma.f32 v (log.f32 (fma.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)) u)) 1)

eval1.0ms (0%)

Compiler

Compiled 30 to 22 computations (26.7% saved)

prune3.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Accurracy
100.0%
Counts
3 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
Compiler

Compiled 34 to 26 computations (23.5% saved)

localize2.0s (13.4%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
100.0%
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
99.9%
(exp.f32 (/.f32 -2 v))
Compiler

Compiled 74 to 53 computations (28.4% saved)

series7.0ms (0.1%)

Counts
2 → 28
Calls

9 calls:

TimeVariablePointExpression
2.0ms
u
@0
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
1.0ms
v
@0
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
1.0ms
u
@inf
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
1.0ms
v
@inf
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
1.0ms
v
@inf
(exp.f32 (/.f32 -2 v))

rewrite108.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
984×log-prod
770×exp-prod
586×pow-prod-down
578×prod-exp
496×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134
122534
2270334
Stop Event
node limit
Counts
2 → 90
Calls
Call 1
Inputs
(exp.f32 (/.f32 -2 v))
(*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))
Outputs
(+.f32 0 (exp.f32 (/.f32 -2 v)))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(-.f32 (exp.f32 (log1p.f32 (exp.f32 (/.f32 -2 v)))) 1)
(*.f32 (exp.f32 (/.f32 -2 v)) 1)
(*.f32 1 (exp.f32 (/.f32 -2 v)))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))))
(*.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))))
(*.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))))
(*.f32 (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))) (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))))
(*.f32 (pow.f32 (E.f32) (*.f32 2 (*.f32 1/3 (/.f32 -2 v)))) (pow.f32 (E.f32) (*.f32 1/3 (/.f32 -2 v))))
(/.f32 (pow.f32 (E.f32) (exp.f32 (log1p.f32 (/.f32 -2 v)))) (E.f32))
(pow.f32 (exp.f32 (/.f32 -2 v)) 1)
(pow.f32 (E.f32) (/.f32 -2 v))
(pow.f32 (exp.f32 -2) (/.f32 1 v))
(pow.f32 (exp.f32 -2) (*.f32 (/.f32 1 v) 1))
(pow.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) 3)
(pow.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)) 1/2)
(pow.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3) 1/3)
(pow.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) 2)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (*.f32 (cbrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 (/.f32 1 v)) -2)
(pow.f32 (exp.f32 (cbrt.f32 (/.f32 -2 v))) (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (*.f32 (sqrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 2) (/.f32 1 (neg.f32 v)))
(pow.f32 (+.f32 1 (expm1.f32 (/.f32 -2 v))) 1)
(pow.f32 (pow.f32 (E.f32) -2) (/.f32 1 v))
(pow.f32 (pow.f32 (exp.f32 -2) (pow.f32 (cbrt.f32 (/.f32 1 v)) 2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 -2) (sqrt.f32 (/.f32 1 v))) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) 1) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 -2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 -2 v))) 2)) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (sqrt.f32 (/.f32 -2 v)))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (sqrt.f32 (cbrt.f32 (/.f32 -2 v)))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) 1) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (cbrt.f32 (/.f32 -2 v))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 -2)) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v)))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v))))
(sqrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))
(log.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))
(log.f32 (+.f32 1 (expm1.f32 (exp.f32 (/.f32 -2 v)))))
(cbrt.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3))
(expm1.f32 (log1p.f32 (exp.f32 (/.f32 -2 v))))
(log1p.f32 (expm1.f32 (exp.f32 (/.f32 -2 v))))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(+.f32 0 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(-.f32 (exp.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))) 1)
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (pow.f32 u 3))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (*.f32 u u))) (+.f32 1 u))
(/.f32 (*.f32 (-.f32 1 (pow.f32 u 3)) (exp.f32 (/.f32 -2 v))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (*.f32 (-.f32 1 (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (+.f32 1 u))
(pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 1)
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(pow.f32 (cbrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 3)
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2) 1/2)
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 2)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2)) (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(pow.f32 (exp.f32 (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))) (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(sqrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2))
(log.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))))
(cbrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3))
(expm1.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1))
(exp.f32 (*.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1) 1))
(exp.f32 (*.f32 (*.f32 1/3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 3))
(exp.f32 (*.f32 (*.f32 3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 1/3))
(exp.f32 (*.f32 (*.f32 1/2 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2))
(exp.f32 (+.f32 (/.f32 -2 v) (*.f32 (log1p.f32 (neg.f32 u)) 1)))
(exp.f32 (+.f32 (*.f32 (log1p.f32 (neg.f32 u)) 1) (/.f32 -2 v)))
(log1p.f32 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))

simplify76.0ms (0.5%)

Algorithm
egg-herbie
Rules
1866×fma-def
902×distribute-lft-in
840×distribute-rgt-in
574×unswap-sqr
540×sqr-pow
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02563676
16333420
220603340
Stop Event
node limit
Counts
118 → 134
Calls
Call 1
Inputs
1
(-.f32 1 (*.f32 2 (/.f32 1 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (*.f32 2 (/.f32 1 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (+.f32 (*.f32 4/3 (/.f32 1 (pow.f32 v 3))) (*.f32 2 (/.f32 1 v))))
1
(-.f32 1 (*.f32 2 (/.f32 1 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (*.f32 2 (/.f32 1 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (+.f32 (*.f32 4/3 (/.f32 1 (pow.f32 v 3))) (*.f32 2 (/.f32 1 v))))
(exp.f32 (/.f32 -2 v))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v))))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v))))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(-.f32 1 u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) 1) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2))))) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 (*.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3))) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2)))))) u)
(-.f32 1 u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) 1) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2))))) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 (*.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3))) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2)))))) u)
(+.f32 0 (exp.f32 (/.f32 -2 v)))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(-.f32 (exp.f32 (log1p.f32 (exp.f32 (/.f32 -2 v)))) 1)
(*.f32 (exp.f32 (/.f32 -2 v)) 1)
(*.f32 1 (exp.f32 (/.f32 -2 v)))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))))
(*.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))))
(*.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))))
(*.f32 (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))) (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))))
(*.f32 (pow.f32 (E.f32) (*.f32 2 (*.f32 1/3 (/.f32 -2 v)))) (pow.f32 (E.f32) (*.f32 1/3 (/.f32 -2 v))))
(/.f32 (pow.f32 (E.f32) (exp.f32 (log1p.f32 (/.f32 -2 v)))) (E.f32))
(pow.f32 (exp.f32 (/.f32 -2 v)) 1)
(pow.f32 (E.f32) (/.f32 -2 v))
(pow.f32 (exp.f32 -2) (/.f32 1 v))
(pow.f32 (exp.f32 -2) (*.f32 (/.f32 1 v) 1))
(pow.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) 3)
(pow.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)) 1/2)
(pow.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3) 1/3)
(pow.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) 2)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (*.f32 (cbrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 (/.f32 1 v)) -2)
(pow.f32 (exp.f32 (cbrt.f32 (/.f32 -2 v))) (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (*.f32 (sqrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 2) (/.f32 1 (neg.f32 v)))
(pow.f32 (+.f32 1 (expm1.f32 (/.f32 -2 v))) 1)
(pow.f32 (pow.f32 (E.f32) -2) (/.f32 1 v))
(pow.f32 (pow.f32 (exp.f32 -2) (pow.f32 (cbrt.f32 (/.f32 1 v)) 2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 -2) (sqrt.f32 (/.f32 1 v))) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) 1) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 -2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 -2 v))) 2)) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (sqrt.f32 (/.f32 -2 v)))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (sqrt.f32 (cbrt.f32 (/.f32 -2 v)))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) 1) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (cbrt.f32 (/.f32 -2 v))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 -2)) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v)))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v))))
(sqrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))
(log.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))
(log.f32 (+.f32 1 (expm1.f32 (exp.f32 (/.f32 -2 v)))))
(cbrt.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3))
(expm1.f32 (log1p.f32 (exp.f32 (/.f32 -2 v))))
(log1p.f32 (expm1.f32 (exp.f32 (/.f32 -2 v))))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(+.f32 0 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(-.f32 (exp.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))) 1)
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (pow.f32 u 3))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (*.f32 u u))) (+.f32 1 u))
(/.f32 (*.f32 (-.f32 1 (pow.f32 u 3)) (exp.f32 (/.f32 -2 v))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (*.f32 (-.f32 1 (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (+.f32 1 u))
(pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 1)
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(pow.f32 (cbrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 3)
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2) 1/2)
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 2)
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2)) (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(pow.f32 (exp.f32 (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))) (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(sqrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2))
(log.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))))
(cbrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3))
(expm1.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1))
(exp.f32 (*.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1) 1))
(exp.f32 (*.f32 (*.f32 1/3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 3))
(exp.f32 (*.f32 (*.f32 3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 1/3))
(exp.f32 (*.f32 (*.f32 1/2 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2))
(exp.f32 (+.f32 (/.f32 -2 v) (*.f32 (log1p.f32 (neg.f32 u)) 1)))
(exp.f32 (+.f32 (*.f32 (log1p.f32 (neg.f32 u)) 1) (/.f32 -2 v)))
(log1p.f32 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
Outputs
1
(-.f32 1 (*.f32 2 (/.f32 1 v)))
(-.f32 1 (/.f32 2 v))
(+.f32 1 (/.f32 -2 v))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (*.f32 2 (/.f32 1 v)))
(+.f32 1 (-.f32 (/.f32 2 (*.f32 v v)) (/.f32 2 v)))
(+.f32 1 (+.f32 (/.f32 2 (*.f32 v v)) (/.f32 -2 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (+.f32 (*.f32 4/3 (/.f32 1 (pow.f32 v 3))) (*.f32 2 (/.f32 1 v))))
(-.f32 (+.f32 1 (/.f32 2 (*.f32 v v))) (+.f32 (/.f32 2 v) (/.f32 4/3 (pow.f32 v 3))))
(+.f32 1 (-.f32 (/.f32 2 (*.f32 v v)) (+.f32 (/.f32 2 v) (/.f32 4/3 (pow.f32 v 3)))))
(+.f32 (/.f32 2 (*.f32 v v)) (+.f32 (+.f32 1 (/.f32 -2 v)) (/.f32 -4/3 (pow.f32 v 3))))
1
(-.f32 1 (*.f32 2 (/.f32 1 v)))
(-.f32 1 (/.f32 2 v))
(+.f32 1 (/.f32 -2 v))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (*.f32 2 (/.f32 1 v)))
(+.f32 1 (-.f32 (/.f32 2 (*.f32 v v)) (/.f32 2 v)))
(+.f32 1 (+.f32 (/.f32 2 (*.f32 v v)) (/.f32 -2 v)))
(-.f32 (+.f32 1 (*.f32 2 (/.f32 1 (pow.f32 v 2)))) (+.f32 (*.f32 4/3 (/.f32 1 (pow.f32 v 3))) (*.f32 2 (/.f32 1 v))))
(-.f32 (+.f32 1 (/.f32 2 (*.f32 v v))) (+.f32 (/.f32 2 v) (/.f32 4/3 (pow.f32 v 3))))
(+.f32 1 (-.f32 (/.f32 2 (*.f32 v v)) (+.f32 (/.f32 2 v) (/.f32 4/3 (pow.f32 v 3)))))
(+.f32 (/.f32 2 (*.f32 v v)) (+.f32 (+.f32 1 (/.f32 -2 v)) (/.f32 -4/3 (pow.f32 v 3))))
(exp.f32 (/.f32 -2 v))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v))))
(*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v))))
(*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (*.f32 -1 (*.f32 u (exp.f32 (/.f32 -2 v)))) (exp.f32 (/.f32 -2 v)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(-.f32 1 u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) 1) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) 1) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2))))) u)
(-.f32 (+.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) 1) (*.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)))) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) (fma.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)) 1)) u)
(+.f32 1 (-.f32 (*.f32 (/.f32 (-.f32 1 u) v) (+.f32 (/.f32 2 v) -2)) u))
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 (*.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3))) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2)))))) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) (fma.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)))))) u)
(fma.f32 -2 (/.f32 (-.f32 1 u) v) (-.f32 (fma.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3)) (fma.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)) 1)) u))
(fma.f32 -2 (/.f32 (-.f32 1 u) v) (+.f32 (*.f32 (/.f32 (-.f32 1 u) (*.f32 v v)) (+.f32 (/.f32 -4/3 v) 2)) (-.f32 1 u)))
(-.f32 1 u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) 1) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) 1) u)
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2))))) u)
(-.f32 (+.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) 1) (*.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)))) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) (fma.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)) 1)) u)
(+.f32 1 (-.f32 (*.f32 (/.f32 (-.f32 1 u) v) (+.f32 (/.f32 2 v) -2)) u))
(-.f32 (+.f32 (*.f32 -2 (/.f32 (-.f32 1 u) v)) (+.f32 (*.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3))) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (pow.f32 v 2)))))) u)
(-.f32 (fma.f32 -2 (/.f32 (-.f32 1 u) v) (fma.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3)) (+.f32 1 (*.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)))))) u)
(fma.f32 -2 (/.f32 (-.f32 1 u) v) (-.f32 (fma.f32 -4/3 (/.f32 (-.f32 1 u) (pow.f32 v 3)) (fma.f32 2 (/.f32 (-.f32 1 u) (*.f32 v v)) 1)) u))
(fma.f32 -2 (/.f32 (-.f32 1 u) v) (+.f32 (*.f32 (/.f32 (-.f32 1 u) (*.f32 v v)) (+.f32 (/.f32 -4/3 v) 2)) (-.f32 1 u)))
(+.f32 0 (exp.f32 (/.f32 -2 v)))
(exp.f32 (/.f32 -2 v))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(*.f32 3 (log.f32 (cbrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(*.f32 2 (log.f32 (sqrt.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))))
(-.f32 (exp.f32 (log1p.f32 (exp.f32 (/.f32 -2 v)))) 1)
(exp.f32 (/.f32 -2 v))
(*.f32 (exp.f32 (/.f32 -2 v)) 1)
(exp.f32 (/.f32 -2 v))
(*.f32 1 (exp.f32 (/.f32 -2 v)))
(exp.f32 (/.f32 -2 v))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v))))
(*.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))))
(*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v))))
(*.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))))
(exp.f32 (/.f32 -2 v))
(*.f32 (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))) (pow.f32 (E.f32) (*.f32 1/2 (/.f32 -2 v))))
(exp.f32 (/.f32 -2 v))
(*.f32 (pow.f32 (E.f32) (*.f32 2 (*.f32 1/3 (/.f32 -2 v)))) (pow.f32 (E.f32) (*.f32 1/3 (/.f32 -2 v))))
(*.f32 (pow.f32 (E.f32) (*.f32 2 (/.f32 -2/3 v))) (pow.f32 (E.f32) (/.f32 -2/3 v)))
(*.f32 (pow.f32 (E.f32) (/.f32 -4/3 v)) (pow.f32 (E.f32) (/.f32 -2/3 v)))
(/.f32 (pow.f32 (E.f32) (exp.f32 (log1p.f32 (/.f32 -2 v)))) (E.f32))
(pow.f32 (exp.f32 (/.f32 -2 v)) 1)
(exp.f32 (/.f32 -2 v))
(pow.f32 (E.f32) (/.f32 -2 v))
(exp.f32 (/.f32 -2 v))
(pow.f32 (exp.f32 -2) (/.f32 1 v))
(exp.f32 (/.f32 -2 v))
(pow.f32 (exp.f32 -2) (*.f32 (/.f32 1 v) 1))
(exp.f32 (/.f32 -2 v))
(pow.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) 3)
(exp.f32 (/.f32 -2 v))
(pow.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)) 1/2)
(exp.f32 (/.f32 -2 v))
(pow.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3) 1/3)
(exp.f32 (/.f32 -2 v))
(pow.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) 2)
(exp.f32 (/.f32 -2 v))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (*.f32 (cbrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (/.f32 1 v)) -2)
(exp.f32 (/.f32 -2 v))
(pow.f32 (exp.f32 (cbrt.f32 (/.f32 -2 v))) (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (*.f32 (sqrt.f32 (/.f32 -2 v)) 1))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 2) (/.f32 1 (neg.f32 v)))
(exp.f32 (/.f32 -2 v))
(pow.f32 (+.f32 1 (expm1.f32 (/.f32 -2 v))) 1)
(+.f32 1 (expm1.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (E.f32) -2) (/.f32 1 v))
(pow.f32 (pow.f32 (exp.f32 -2) (pow.f32 (cbrt.f32 (/.f32 1 v)) 2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 -2) (sqrt.f32 (/.f32 1 v))) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) 1) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 -2)) (cbrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (pow.f32 (cbrt.f32 (cbrt.f32 (/.f32 -2 v))) 2)) (cbrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (cbrt.f32 (sqrt.f32 (/.f32 -2 v)))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2)) (sqrt.f32 (cbrt.f32 (/.f32 -2 v)))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) 1) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (/.f32 -2 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (cbrt.f32 (/.f32 -2 v))) (cbrt.f32 (sqrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 -2)) (sqrt.f32 (/.f32 1 v)))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (pow.f32 (cbrt.f32 (/.f32 -2 v)) 2))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (fabs.f32 (cbrt.f32 (/.f32 -2 v)))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (cbrt.f32 (/.f32 -2 v))) (sqrt.f32 (cbrt.f32 (/.f32 -2 v))))
(pow.f32 (pow.f32 (exp.f32 (sqrt.f32 (/.f32 -2 v))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v)))) (sqrt.f32 (sqrt.f32 (/.f32 -2 v))))
(sqrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))
(exp.f32 (/.f32 -2 v))
(log.f32 (exp.f32 (exp.f32 (/.f32 -2 v))))
(exp.f32 (/.f32 -2 v))
(log.f32 (+.f32 1 (expm1.f32 (exp.f32 (/.f32 -2 v)))))
(exp.f32 (/.f32 -2 v))
(cbrt.f32 (pow.f32 (exp.f32 (/.f32 -2 v)) 3))
(exp.f32 (/.f32 -2 v))
(expm1.f32 (log1p.f32 (exp.f32 (/.f32 -2 v))))
(exp.f32 (/.f32 -2 v))
(log1p.f32 (expm1.f32 (exp.f32 (/.f32 -2 v))))
(exp.f32 (/.f32 -2 v))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 0 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v)))) 2)) (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(*.f32 3 (log.f32 (cbrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(+.f32 (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))) (log.f32 (sqrt.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(-.f32 (exp.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))) 1)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (pow.f32 u 3))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (fma.f32 u (+.f32 1 u) 1) (-.f32 1 (pow.f32 u 3))))
(/.f32 (-.f32 1 (pow.f32 u 3)) (/.f32 (fma.f32 u (+.f32 1 u) 1) (exp.f32 (/.f32 -2 v))))
(*.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (-.f32 1 (pow.f32 u 3)) (+.f32 1 (fma.f32 u u u))))
(/.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 (*.f32 u u))) (+.f32 1 u))
(/.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (+.f32 1 u) (-.f32 1 (*.f32 u u))))
(*.f32 (-.f32 1 (*.f32 u u)) (/.f32 (exp.f32 (/.f32 -2 v)) (+.f32 1 u)))
(/.f32 (*.f32 (-.f32 1 (pow.f32 u 3)) (exp.f32 (/.f32 -2 v))) (fma.f32 u (+.f32 1 u) 1))
(/.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (fma.f32 u (+.f32 1 u) 1) (-.f32 1 (pow.f32 u 3))))
(/.f32 (-.f32 1 (pow.f32 u 3)) (/.f32 (fma.f32 u (+.f32 1 u) 1) (exp.f32 (/.f32 -2 v))))
(*.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (-.f32 1 (pow.f32 u 3)) (+.f32 1 (fma.f32 u u u))))
(/.f32 (*.f32 (-.f32 1 (*.f32 u u)) (exp.f32 (/.f32 -2 v))) (+.f32 1 u))
(/.f32 (exp.f32 (/.f32 -2 v)) (/.f32 (+.f32 1 u) (-.f32 1 (*.f32 u u))))
(*.f32 (-.f32 1 (*.f32 u u)) (/.f32 (exp.f32 (/.f32 -2 v)) (+.f32 1 u)))
(pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 1)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(pow.f32 (cbrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 3)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2) 1/2)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(pow.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3) 1/3)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(pow.f32 (sqrt.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))) 2)
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(pow.f32 (exp.f32 (pow.f32 (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2)) (cbrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(pow.f32 (exp.f32 (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))) (sqrt.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))))
(sqrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 2))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(log.f32 (pow.f32 (exp.f32 (-.f32 1 u)) (exp.f32 (/.f32 -2 v))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(log.f32 (+.f32 1 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(cbrt.f32 (pow.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u)) 3))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(expm1.f32 (log1p.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (*.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))) 1) 1))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (*.f32 1/3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 3))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (*.f32 3 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 1/3))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (*.f32 (*.f32 1/2 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u)))) 2))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (*.f32 (log1p.f32 (neg.f32 u)) 1)))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (*.f32 (log1p.f32 (neg.f32 u)) 1) (/.f32 -2 v)))
(pow.f32 (E.f32) (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(exp.f32 (+.f32 (/.f32 -2 v) (log1p.f32 (neg.f32 u))))
(log1p.f32 (expm1.f32 (*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 (exp.f32 (/.f32 -2 v)) 1 (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 1 (exp.f32 (/.f32 -2 v)) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(-.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))) (*.f32 (exp.f32 (/.f32 -2 v)) u))
(fma.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u) (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v)))))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(-.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))) (*.f32 (exp.f32 (/.f32 -2 v)) u))
(fma.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u) (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v)))))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(-.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))) (*.f32 (exp.f32 (/.f32 -2 v)) u))
(fma.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u) (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v)))))
(fma.f32 (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(fma.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(-.f32 (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (pow.f32 (exp.f32 2) (/.f32 -2 v)))) (*.f32 (exp.f32 (/.f32 -2 v)) u))
(fma.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u) (*.f32 (cbrt.f32 (exp.f32 (/.f32 -2 v))) (cbrt.f32 (exp.f32 (/.f32 -4 v)))))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (exp.f32 (/.f32 -2 v)) (neg.f32 u)))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))
(fma.f32 (sqrt.f32 (exp.f32 (/.f32 -2 v))) (sqrt.f32 (exp.f32 (/.f32 -2 v))) (*.f32 (neg.f32 u) (exp.f32 (/.f32 -2 v))))
(*.f32 (+.f32 (neg.f32 u) 1) (exp.f32 (/.f32 -2 v)))
(*.f32 (exp.f32 (/.f32 -2 v)) (-.f32 1 u))

eval66.0ms (0.4%)

Compiler

Compiled 2927 to 2189 computations (25.2% saved)

prune27.0ms (0.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New1322134
Fresh000
Picked011
Done000
Total1323135
Accurracy
100.0%
Counts
135 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
Compiler

Compiled 84 to 64 computations (23.8% saved)

localize1.9s (12.9%)

Local Accuracy

Found 1 expressions with local accuracy:

NewAccuracyProgram
99.9%
(exp.f32 (/.f32 -2 v))
Compiler

Compiled 82 to 55 computations (32.9% saved)

eval33.0ms (0.2%)

Compiler

Compiled 1223 to 953 computations (22.1% saved)

prune22.0ms (0.1%)

Pruning

4 alts after pruning (1 fresh and 3 done)

PrunedKeptTotal
New66167
Fresh000
Picked022
Done011
Total66470
Accurracy
100.0%
Counts
70 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u 1))))
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u 1))))
Compiler

Compiled 104 to 80 computations (23.1% saved)

localize79.0ms (0.5%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
99.4%
(*.f32 v (log.f32 (+.f32 u 1)))
78.3%
(log.f32 (+.f32 u 1))
Compiler

Compiled 27 to 19 computations (29.6% saved)

series47.0ms (0.3%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
44.0ms
v
@0
(*.f32 v (log.f32 (+.f32 u 1)))
1.0ms
v
@inf
(*.f32 v (log.f32 (+.f32 u 1)))
0.0ms
u
@0
(log.f32 (+.f32 u 1))
0.0ms
u
@-inf
(*.f32 v (log.f32 (+.f32 u 1)))
0.0ms
u
@inf
(log.f32 (+.f32 u 1))

rewrite126.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1650×pow1
1514×add-exp-log
1514×log1p-expm1-u
1514×expm1-log1p-u
1482×add-log-exp
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0928
117616
2212716
Stop Event
node limit
Counts
2 → 33
Calls
Call 1
Inputs
(log.f32 (+.f32 u 1))
(*.f32 v (log.f32 (+.f32 u 1)))
Outputs
(+.f32 0 (log1p.f32 u))
(+.f32 (log.f32 (hypot.f32 1 (sqrt.f32 u))) (log.f32 (hypot.f32 1 (sqrt.f32 u))))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 u 1)) 2)) (log.f32 (cbrt.f32 (+.f32 u 1))))
(-.f32 (log.f32 (fma.f32 u u -1)) (log.f32 (+.f32 u -1)))
(-.f32 (log.f32 (+.f32 1 (pow.f32 u 3))) (log.f32 (fma.f32 u u (-.f32 1 u))))
(-.f32 (+.f32 1 (log1p.f32 u)) 1)
(*.f32 1 (log1p.f32 u))
(*.f32 (log1p.f32 u) 1)
(*.f32 (cbrt.f32 (log1p.f32 u)) (pow.f32 (cbrt.f32 (log1p.f32 u)) 2))
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 u)) 2) (cbrt.f32 (log1p.f32 u)))
(*.f32 (sqrt.f32 (log1p.f32 u)) (sqrt.f32 (log1p.f32 u)))
(pow.f32 (log1p.f32 u) 1)
(pow.f32 (cbrt.f32 (log1p.f32 u)) 3)
(pow.f32 (pow.f32 (log1p.f32 u) 3) 1/3)
(pow.f32 (sqrt.f32 (log1p.f32 u)) 2)
(sqrt.f32 (pow.f32 (log1p.f32 u) 2))
(cbrt.f32 (pow.f32 (log1p.f32 u) 3))
(expm1.f32 (log1p.f32 (log1p.f32 u)))
(exp.f32 (log.f32 (log1p.f32 u)))
(log1p.f32 u)
(-.f32 (+.f32 1 (*.f32 (log1p.f32 u) v)) 1)
(pow.f32 (*.f32 (log1p.f32 u) v) 1)
(pow.f32 (cbrt.f32 (*.f32 (log1p.f32 u) v)) 3)
(pow.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 u) v)) 2)
(sqrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 2))
(log.f32 (pow.f32 (+.f32 u 1) v))
(cbrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3))
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u) 3) (pow.f32 v 3)))
(cbrt.f32 (*.f32 (pow.f32 v 3) (pow.f32 (log1p.f32 u) 3)))
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 u) v)))
(exp.f32 (log.f32 (*.f32 (log1p.f32 u) v)))
(log1p.f32 (expm1.f32 (*.f32 (log1p.f32 u) v)))

simplify64.0ms (0.4%)

Algorithm
egg-herbie
Rules
1306×fma-def
712×log-prod
640×unswap-sqr
578×fma-neg
440×associate-+l-
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01531341
13731205
212181139
347201115
Stop Event
node limit
Counts
69 → 107
Calls
Call 1
Inputs
u
(+.f32 (*.f32 -1/2 (pow.f32 u 2)) u)
(+.f32 (*.f32 -1/2 (pow.f32 u 2)) (+.f32 (*.f32 1/3 (pow.f32 u 3)) u))
(+.f32 (*.f32 -1/4 (pow.f32 u 4)) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (+.f32 (*.f32 1/3 (pow.f32 u 3)) u)))
(*.f32 -1 (log.f32 (/.f32 1 u)))
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (/.f32 1 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (/.f32 1 u)) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1))
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (log.f32 -1) (/.f32 1 u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (log.f32 -1) (/.f32 1 u))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 -1) (/.f32 1 u)))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v u)
(+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (*.f32 v u))
(+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 v (pow.f32 u 3))) (*.f32 v u)))
(+.f32 (*.f32 -1/4 (*.f32 v (pow.f32 u 4))) (+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 v (pow.f32 u 3))) (*.f32 v u))))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(+.f32 (/.f32 v u) (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))))
(+.f32 (/.f32 v u) (+.f32 (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))) (*.f32 -1/2 (/.f32 v (pow.f32 u 2)))))
(+.f32 (/.f32 v u) (+.f32 (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))) (+.f32 (*.f32 -1/2 (/.f32 v (pow.f32 u 2))) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(+.f32 (/.f32 v u) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v))
(+.f32 (/.f32 v u) (+.f32 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v) (*.f32 -1/2 (/.f32 v (pow.f32 u 2)))))
(+.f32 (/.f32 v u) (+.f32 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v) (+.f32 (*.f32 -1/2 (/.f32 v (pow.f32 u 2))) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 0 (log1p.f32 u))
(+.f32 (log.f32 (hypot.f32 1 (sqrt.f32 u))) (log.f32 (hypot.f32 1 (sqrt.f32 u))))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 u 1)) 2)) (log.f32 (cbrt.f32 (+.f32 u 1))))
(-.f32 (log.f32 (fma.f32 u u -1)) (log.f32 (+.f32 u -1)))
(-.f32 (log.f32 (+.f32 1 (pow.f32 u 3))) (log.f32 (fma.f32 u u (-.f32 1 u))))
(-.f32 (+.f32 1 (log1p.f32 u)) 1)
(*.f32 1 (log1p.f32 u))
(*.f32 (log1p.f32 u) 1)
(*.f32 (cbrt.f32 (log1p.f32 u)) (pow.f32 (cbrt.f32 (log1p.f32 u)) 2))
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 u)) 2) (cbrt.f32 (log1p.f32 u)))
(*.f32 (sqrt.f32 (log1p.f32 u)) (sqrt.f32 (log1p.f32 u)))
(pow.f32 (log1p.f32 u) 1)
(pow.f32 (cbrt.f32 (log1p.f32 u)) 3)
(pow.f32 (pow.f32 (log1p.f32 u) 3) 1/3)
(pow.f32 (sqrt.f32 (log1p.f32 u)) 2)
(sqrt.f32 (pow.f32 (log1p.f32 u) 2))
(cbrt.f32 (pow.f32 (log1p.f32 u) 3))
(expm1.f32 (log1p.f32 (log1p.f32 u)))
(exp.f32 (log.f32 (log1p.f32 u)))
(log1p.f32 u)
(-.f32 (+.f32 1 (*.f32 (log1p.f32 u) v)) 1)
(pow.f32 (*.f32 (log1p.f32 u) v) 1)
(pow.f32 (cbrt.f32 (*.f32 (log1p.f32 u) v)) 3)
(pow.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 u) v)) 2)
(sqrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 2))
(log.f32 (pow.f32 (+.f32 u 1) v))
(cbrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3))
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u) 3) (pow.f32 v 3)))
(cbrt.f32 (*.f32 (pow.f32 v 3) (pow.f32 (log1p.f32 u) 3)))
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 u) v)))
(exp.f32 (log.f32 (*.f32 (log1p.f32 u) v)))
(log1p.f32 (expm1.f32 (*.f32 (log1p.f32 u) v)))
Outputs
u
(+.f32 (*.f32 -1/2 (pow.f32 u 2)) u)
(fma.f32 -1/2 (*.f32 u u) u)
(fma.f32 u (*.f32 u -1/2) u)
(+.f32 (*.f32 -1/2 (pow.f32 u 2)) (+.f32 (*.f32 1/3 (pow.f32 u 3)) u))
(fma.f32 -1/2 (*.f32 u u) (fma.f32 1/3 (pow.f32 u 3) u))
(fma.f32 u (*.f32 u -1/2) (fma.f32 1/3 (pow.f32 u 3) u))
(+.f32 (*.f32 -1/4 (pow.f32 u 4)) (+.f32 (*.f32 -1/2 (pow.f32 u 2)) (+.f32 (*.f32 1/3 (pow.f32 u 3)) u)))
(fma.f32 -1/4 (pow.f32 u 4) (fma.f32 -1/2 (*.f32 u u) (fma.f32 1/3 (pow.f32 u 3) u)))
(fma.f32 u (*.f32 u -1/2) (fma.f32 -1/4 (pow.f32 u 4) (fma.f32 1/3 (pow.f32 u 3) u)))
(*.f32 -1 (log.f32 (/.f32 1 u)))
(neg.f32 (neg.f32 (log.f32 u)))
(log.f32 u)
(+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (/.f32 1 u))
(fma.f32 -1 (neg.f32 (log.f32 u)) (/.f32 1 u))
(+.f32 (/.f32 1 u) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (/.f32 1 u)) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (/.f32 1 u)) (/.f32 1/2 (*.f32 u u)))
(+.f32 (log.f32 u) (+.f32 (/.f32 1 u) (/.f32 -1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 u) (/.f32 (/.f32 -1/2 u) u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 1 u))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (/.f32 1 u))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))) (/.f32 1/2 (*.f32 u u)))
(+.f32 (+.f32 (/.f32 1 u) (+.f32 (log.f32 u) (/.f32 1/3 (pow.f32 u 3)))) (/.f32 -1/2 (*.f32 u u)))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (log.f32 u) (/.f32 (/.f32 -1/2 u) u))))
(+.f32 (log.f32 u) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (/.f32 (/.f32 -1/2 u) u))))
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1))
(neg.f32 (neg.f32 (log.f32 u)))
(log.f32 u)
(+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (log.f32 -1) (/.f32 1 u)))
(fma.f32 -1 (neg.f32 (log.f32 u)) (/.f32 1 u))
(+.f32 (/.f32 1 u) (log.f32 u))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (log.f32 -1) (/.f32 1 u))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (/.f32 1 u)) (/.f32 1/2 (*.f32 u u)))
(+.f32 (log.f32 u) (+.f32 (/.f32 1 u) (/.f32 -1/2 (*.f32 u u))))
(+.f32 (/.f32 1 u) (+.f32 (log.f32 u) (/.f32 (/.f32 -1/2 u) u)))
(-.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (+.f32 (*.f32 1/3 (/.f32 1 (pow.f32 u 3))) (+.f32 (log.f32 -1) (/.f32 1 u)))) (*.f32 1/2 (/.f32 1 (pow.f32 u 2))))
(-.f32 (fma.f32 -1 (neg.f32 (log.f32 u)) (+.f32 (/.f32 1 u) (/.f32 1/3 (pow.f32 u 3)))) (/.f32 1/2 (*.f32 u u)))
(+.f32 (+.f32 (/.f32 1 u) (+.f32 (log.f32 u) (/.f32 1/3 (pow.f32 u 3)))) (/.f32 -1/2 (*.f32 u u)))
(+.f32 (/.f32 1 u) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (log.f32 u) (/.f32 (/.f32 -1/2 u) u))))
(+.f32 (log.f32 u) (+.f32 (/.f32 1/3 (pow.f32 u 3)) (+.f32 (/.f32 1 u) (/.f32 (/.f32 -1/2 u) u))))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v (log.f32 (+.f32 1 u)))
(*.f32 v (log1p.f32 u))
(*.f32 v u)
(*.f32 u v)
(+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (*.f32 v u))
(fma.f32 -1/2 (*.f32 (*.f32 u u) v) (*.f32 u v))
(fma.f32 u v (*.f32 -1/2 (*.f32 u (*.f32 u v))))
(*.f32 v (fma.f32 u (*.f32 u -1/2) u))
(+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 v (pow.f32 u 3))) (*.f32 v u)))
(fma.f32 -1/2 (*.f32 (*.f32 u u) v) (fma.f32 1/3 (*.f32 (pow.f32 u 3) v) (*.f32 u v)))
(fma.f32 (*.f32 -1/2 v) (*.f32 u u) (fma.f32 u v (*.f32 (pow.f32 u 3) (*.f32 1/3 v))))
(fma.f32 u v (*.f32 v (*.f32 (*.f32 u u) (+.f32 -1/2 (*.f32 u 1/3)))))
(*.f32 v (fma.f32 u (*.f32 u -1/2) (fma.f32 1/3 (pow.f32 u 3) u)))
(+.f32 (*.f32 -1/4 (*.f32 v (pow.f32 u 4))) (+.f32 (*.f32 -1/2 (*.f32 v (pow.f32 u 2))) (+.f32 (*.f32 1/3 (*.f32 v (pow.f32 u 3))) (*.f32 v u))))
(fma.f32 -1/4 (*.f32 (pow.f32 u 4) v) (fma.f32 -1/2 (*.f32 (*.f32 u u) v) (fma.f32 1/3 (*.f32 (pow.f32 u 3) v) (*.f32 u v))))
(fma.f32 -1/4 (*.f32 (pow.f32 u 4) v) (fma.f32 (*.f32 -1/2 v) (*.f32 u u) (fma.f32 u v (*.f32 (pow.f32 u 3) (*.f32 1/3 v)))))
(+.f32 (*.f32 v (fma.f32 1/3 (pow.f32 u 3) u)) (*.f32 v (fma.f32 u (*.f32 u -1/2) (*.f32 -1/4 (pow.f32 u 4)))))
(*.f32 v (fma.f32 u (*.f32 u -1/2) (fma.f32 -1/4 (pow.f32 u 4) (fma.f32 1/3 (pow.f32 u 3) u))))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(neg.f32 (*.f32 (neg.f32 (log.f32 u)) v))
(*.f32 (log.f32 u) v)
(+.f32 (/.f32 v u) (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))))
(+.f32 (neg.f32 (*.f32 (neg.f32 (log.f32 u)) v)) (/.f32 v u))
(+.f32 (*.f32 (log.f32 u) v) (/.f32 v u))
(fma.f32 (log.f32 u) v (/.f32 v u))
(+.f32 (/.f32 v u) (+.f32 (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))) (*.f32 -1/2 (/.f32 v (pow.f32 u 2)))))
(+.f32 (/.f32 v u) (fma.f32 -1 (*.f32 (neg.f32 (log.f32 u)) v) (/.f32 (*.f32 -1/2 v) (*.f32 u u))))
(+.f32 (/.f32 v u) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 (log.f32 u) v)))
(fma.f32 (log.f32 u) v (*.f32 (+.f32 (/.f32 -1/2 u) 1) (/.f32 v u)))
(fma.f32 (+.f32 (/.f32 -1/2 u) 1) (/.f32 v u) (*.f32 (log.f32 u) v))
(+.f32 (/.f32 v u) (+.f32 (*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u)))) (+.f32 (*.f32 -1/2 (/.f32 v (pow.f32 u 2))) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (/.f32 v u) (fma.f32 -1 (*.f32 (neg.f32 (log.f32 u)) v) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (*.f32 (log.f32 u) v) (+.f32 (/.f32 v u) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (/.f32 v u) (fma.f32 (log.f32 u) v (*.f32 (/.f32 v (*.f32 u u)) (+.f32 -1/2 (/.f32 1/3 u)))))
(fma.f32 (/.f32 v (*.f32 u u)) (+.f32 -1/2 (/.f32 1/3 u)) (fma.f32 (log.f32 u) v (/.f32 v u)))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(neg.f32 (*.f32 (neg.f32 (log.f32 u)) v))
(*.f32 (log.f32 u) v)
(+.f32 (/.f32 v u) (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v))
(+.f32 (neg.f32 (*.f32 (neg.f32 (log.f32 u)) v)) (/.f32 v u))
(+.f32 (*.f32 (log.f32 u) v) (/.f32 v u))
(fma.f32 (log.f32 u) v (/.f32 v u))
(+.f32 (/.f32 v u) (+.f32 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v) (*.f32 -1/2 (/.f32 v (pow.f32 u 2)))))
(+.f32 (/.f32 v u) (fma.f32 -1 (*.f32 (neg.f32 (log.f32 u)) v) (/.f32 (*.f32 -1/2 v) (*.f32 u u))))
(+.f32 (/.f32 v u) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 (log.f32 u) v)))
(fma.f32 (log.f32 u) v (*.f32 (+.f32 (/.f32 -1/2 u) 1) (/.f32 v u)))
(fma.f32 (+.f32 (/.f32 -1/2 u) 1) (/.f32 v u) (*.f32 (log.f32 u) v))
(+.f32 (/.f32 v u) (+.f32 (*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v) (+.f32 (*.f32 -1/2 (/.f32 v (pow.f32 u 2))) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (/.f32 v u) (fma.f32 -1 (*.f32 (neg.f32 (log.f32 u)) v) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (*.f32 (log.f32 u) v) (+.f32 (/.f32 v u) (fma.f32 -1/2 (/.f32 v (*.f32 u u)) (*.f32 1/3 (/.f32 v (pow.f32 u 3))))))
(+.f32 (/.f32 v u) (fma.f32 (log.f32 u) v (*.f32 (/.f32 v (*.f32 u u)) (+.f32 -1/2 (/.f32 1/3 u)))))
(fma.f32 (/.f32 v (*.f32 u u)) (+.f32 -1/2 (/.f32 1/3 u)) (fma.f32 (log.f32 u) v (/.f32 v u)))
(+.f32 0 (log1p.f32 u))
(log1p.f32 u)
(+.f32 (log.f32 (hypot.f32 1 (sqrt.f32 u))) (log.f32 (hypot.f32 1 (sqrt.f32 u))))
(*.f32 2 (log.f32 (hypot.f32 1 (sqrt.f32 u))))
(+.f32 (log.f32 (pow.f32 (cbrt.f32 (+.f32 u 1)) 2)) (log.f32 (cbrt.f32 (+.f32 u 1))))
(+.f32 (*.f32 2 (log.f32 (cbrt.f32 (+.f32 u 1)))) (log.f32 (cbrt.f32 (+.f32 u 1))))
(*.f32 3 (log.f32 (cbrt.f32 (+.f32 u 1))))
(-.f32 (log.f32 (fma.f32 u u -1)) (log.f32 (+.f32 u -1)))
(-.f32 (log.f32 (+.f32 1 (pow.f32 u 3))) (log.f32 (fma.f32 u u (-.f32 1 u))))
(-.f32 (log1p.f32 (pow.f32 u 3)) (log.f32 (fma.f32 u u (-.f32 1 u))))
(-.f32 (log1p.f32 (pow.f32 u 3)) (log.f32 (-.f32 (fma.f32 u u 1) u)))
(-.f32 (log1p.f32 (pow.f32 u 3)) (log1p.f32 (-.f32 (*.f32 u u) u)))
(-.f32 (+.f32 1 (log1p.f32 u)) 1)
(log1p.f32 u)
(*.f32 1 (log1p.f32 u))
(log1p.f32 u)
(*.f32 (log1p.f32 u) 1)
(log1p.f32 u)
(*.f32 (cbrt.f32 (log1p.f32 u)) (pow.f32 (cbrt.f32 (log1p.f32 u)) 2))
(log1p.f32 u)
(*.f32 (pow.f32 (cbrt.f32 (log1p.f32 u)) 2) (cbrt.f32 (log1p.f32 u)))
(log1p.f32 u)
(*.f32 (sqrt.f32 (log1p.f32 u)) (sqrt.f32 (log1p.f32 u)))
(log1p.f32 u)
(pow.f32 (log1p.f32 u) 1)
(log1p.f32 u)
(pow.f32 (cbrt.f32 (log1p.f32 u)) 3)
(log1p.f32 u)
(pow.f32 (pow.f32 (log1p.f32 u) 3) 1/3)
(log1p.f32 u)
(pow.f32 (sqrt.f32 (log1p.f32 u)) 2)
(log1p.f32 u)
(sqrt.f32 (pow.f32 (log1p.f32 u) 2))
(log1p.f32 u)
(cbrt.f32 (pow.f32 (log1p.f32 u) 3))
(log1p.f32 u)
(expm1.f32 (log1p.f32 (log1p.f32 u)))
(log1p.f32 u)
(exp.f32 (log.f32 (log1p.f32 u)))
(log1p.f32 u)
(log1p.f32 u)
(-.f32 (+.f32 1 (*.f32 (log1p.f32 u) v)) 1)
(*.f32 v (log1p.f32 u))
(pow.f32 (*.f32 (log1p.f32 u) v) 1)
(*.f32 v (log1p.f32 u))
(pow.f32 (cbrt.f32 (*.f32 (log1p.f32 u) v)) 3)
(*.f32 v (log1p.f32 u))
(pow.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3) 1/3)
(*.f32 v (log1p.f32 u))
(pow.f32 (sqrt.f32 (*.f32 (log1p.f32 u) v)) 2)
(*.f32 v (log1p.f32 u))
(sqrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 2))
(*.f32 v (log1p.f32 u))
(log.f32 (pow.f32 (+.f32 u 1) v))
(*.f32 v (log1p.f32 u))
(cbrt.f32 (pow.f32 (*.f32 (log1p.f32 u) v) 3))
(*.f32 v (log1p.f32 u))
(cbrt.f32 (*.f32 (pow.f32 (log1p.f32 u) 3) (pow.f32 v 3)))
(*.f32 v (log1p.f32 u))
(cbrt.f32 (*.f32 (pow.f32 v 3) (pow.f32 (log1p.f32 u) 3)))
(*.f32 v (log1p.f32 u))
(expm1.f32 (log1p.f32 (*.f32 (log1p.f32 u) v)))
(*.f32 v (log1p.f32 u))
(exp.f32 (log.f32 (*.f32 (log1p.f32 u) v)))
(*.f32 v (log1p.f32 u))
(log1p.f32 (expm1.f32 (*.f32 (log1p.f32 u) v)))
(*.f32 v (log1p.f32 u))

eval30.0ms (0.2%)

Compiler

Compiled 1557 to 991 computations (36.4% saved)

prune19.0ms (0.1%)

Pruning

4 alts after pruning (2 fresh and 2 done)

PrunedKeptTotal
New1052107
Fresh000
Picked101
Done123
Total1074111
Accurracy
100.0%
Counts
111 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(+.f32 1 (*.f32 (log.f32 u) v))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v u))
99.7%
(+.f32 1 (*.f32 (log.f32 u) v))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v u))
Compiler

Compiled 90 to 68 computations (24.4% saved)

localize81.0ms (0.5%)

Local Accuracy

Found 2 expressions with local accuracy:

NewAccuracyProgram
98.9%
(*.f32 (log.f32 u) v)
100.0%
(*.f32 v u)
Compiler

Compiled 29 to 12 computations (58.6% saved)

series82.0ms (0.6%)

Counts
2 → 24
Calls

12 calls:

TimeVariablePointExpression
45.0ms
v
@0
(*.f32 (log.f32 u) v)
16.0ms
u
@-inf
(*.f32 (log.f32 u) v)
10.0ms
u
@0
(*.f32 (log.f32 u) v)
9.0ms
u
@inf
(*.f32 (log.f32 u) v)
0.0ms
v
@inf
(*.f32 (log.f32 u) v)

rewrite58.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
1424×pow1
1294×add-exp-log
1294×log1p-expm1-u
1294×expm1-log1p-u
1260×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
115218
2179518
Stop Event
node limit
Counts
2 → 22
Calls
Call 1
Inputs
(*.f32 v u)
(*.f32 (log.f32 u) v)
Outputs
(-.f32 (+.f32 1 (*.f32 v u)) 1)
(pow.f32 (*.f32 v u) 1)
(pow.f32 (cbrt.f32 (*.f32 v u)) 3)
(pow.f32 (pow.f32 (*.f32 v u) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 v u)) 2)
(sqrt.f32 (pow.f32 (*.f32 v u) 2))
(log.f32 (pow.f32 (exp.f32 v) u))
(cbrt.f32 (pow.f32 (*.f32 v u) 3))
(expm1.f32 (log1p.f32 (*.f32 v u)))
(exp.f32 (log.f32 (*.f32 v u)))
(log1p.f32 (expm1.f32 (*.f32 v u)))
(-.f32 (+.f32 1 (*.f32 v (log.f32 u))) 1)
(pow.f32 (*.f32 v (log.f32 u)) 1)
(pow.f32 (cbrt.f32 (*.f32 v (log.f32 u))) 3)
(pow.f32 (pow.f32 (*.f32 v (log.f32 u)) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 v (log.f32 u))) 2)
(sqrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 2))
(log.f32 (pow.f32 u v))
(cbrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 3))
(expm1.f32 (log1p.f32 (*.f32 v (log.f32 u))))
(exp.f32 (log.f32 (*.f32 v (log.f32 u))))
(log1p.f32 (-.f32 (pow.f32 u v) 1))

simplify48.0ms (0.3%)

Algorithm
egg-herbie
Rules
1362×distribute-rgt-in
1342×distribute-lft-in
1224×log-prod
1056×fma-def
922×associate-*r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
064600
1151534
2541468
33170468
Stop Event
node limit
Counts
46 → 30
Calls
Call 1
Inputs
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(-.f32 (+.f32 1 (*.f32 v u)) 1)
(pow.f32 (*.f32 v u) 1)
(pow.f32 (cbrt.f32 (*.f32 v u)) 3)
(pow.f32 (pow.f32 (*.f32 v u) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 v u)) 2)
(sqrt.f32 (pow.f32 (*.f32 v u) 2))
(log.f32 (pow.f32 (exp.f32 v) u))
(cbrt.f32 (pow.f32 (*.f32 v u) 3))
(expm1.f32 (log1p.f32 (*.f32 v u)))
(exp.f32 (log.f32 (*.f32 v u)))
(log1p.f32 (expm1.f32 (*.f32 v u)))
(-.f32 (+.f32 1 (*.f32 v (log.f32 u))) 1)
(pow.f32 (*.f32 v (log.f32 u)) 1)
(pow.f32 (cbrt.f32 (*.f32 v (log.f32 u))) 3)
(pow.f32 (pow.f32 (*.f32 v (log.f32 u)) 3) 1/3)
(pow.f32 (sqrt.f32 (*.f32 v (log.f32 u))) 2)
(sqrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 2))
(log.f32 (pow.f32 u v))
(cbrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 3))
(expm1.f32 (log1p.f32 (*.f32 v (log.f32 u))))
(exp.f32 (log.f32 (*.f32 v (log.f32 u))))
(log1p.f32 (-.f32 (pow.f32 u v) 1))
Outputs
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 v (log.f32 u))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 v (log.f32 u))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 v (log.f32 u))
(*.f32 -1 (*.f32 v (log.f32 (/.f32 1 u))))
(*.f32 v (log.f32 u))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 v (log.f32 u))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 v (log.f32 u))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 v (log.f32 u))
(*.f32 (+.f32 (*.f32 -1 (log.f32 (/.f32 -1 u))) (log.f32 -1)) v)
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(*.f32 v (log.f32 u))
(-.f32 (+.f32 1 (*.f32 v u)) 1)
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(pow.f32 (*.f32 v u) 1)
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(pow.f32 (cbrt.f32 (*.f32 v u)) 3)
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(pow.f32 (pow.f32 (*.f32 v u) 3) 1/3)
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(pow.f32 (sqrt.f32 (*.f32 v u)) 2)
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(sqrt.f32 (pow.f32 (*.f32 v u) 2))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(log.f32 (pow.f32 (exp.f32 v) u))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(cbrt.f32 (pow.f32 (*.f32 v u) 3))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(expm1.f32 (log1p.f32 (*.f32 v u)))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(exp.f32 (log.f32 (*.f32 v u)))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(log1p.f32 (expm1.f32 (*.f32 v u)))
(+.f32 1 (-.f32 (*.f32 v u) 1))
(+.f32 (*.f32 v u) 0)
(*.f32 v u)
(-.f32 (+.f32 1 (*.f32 v (log.f32 u))) 1)
(*.f32 v (log.f32 u))
(pow.f32 (*.f32 v (log.f32 u)) 1)
(*.f32 v (log.f32 u))
(pow.f32 (cbrt.f32 (*.f32 v (log.f32 u))) 3)
(*.f32 v (log.f32 u))
(pow.f32 (pow.f32 (*.f32 v (log.f32 u)) 3) 1/3)
(*.f32 v (log.f32 u))
(pow.f32 (sqrt.f32 (*.f32 v (log.f32 u))) 2)
(*.f32 v (log.f32 u))
(sqrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 2))
(*.f32 v (log.f32 u))
(log.f32 (pow.f32 u v))
(*.f32 v (log.f32 u))
(cbrt.f32 (pow.f32 (*.f32 v (log.f32 u)) 3))
(*.f32 v (log.f32 u))
(expm1.f32 (log1p.f32 (*.f32 v (log.f32 u))))
(*.f32 v (log.f32 u))
(exp.f32 (log.f32 (*.f32 v (log.f32 u))))
(*.f32 v (log.f32 u))
(log1p.f32 (-.f32 (pow.f32 u v) 1))
(log1p.f32 (+.f32 (pow.f32 u v) -1))
(log1p.f32 (+.f32 -1 (pow.f32 u v)))

eval7.0ms (0%)

Compiler

Compiled 247 to 154 computations (37.7% saved)

prune8.0ms (0.1%)

Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New29130
Fresh000
Picked022
Done022
Total29534
Accurracy
100.0%
Counts
34 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.6%
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
99.7%
(+.f32 1 (*.f32 (log.f32 u) v))
100.0%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
99.9%
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
98.6%
(+.f32 1 (*.f32 v u))
Compiler

Compiled 122 to 90 computations (26.2% saved)

regimes36.0ms (0.2%)

Counts
7 → 1
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v u))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
(+.f32 1 (*.f32 (log.f32 u) v))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u 1))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
Outputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
Calls

4 calls:

22.0ms
u
6.0ms
(*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))
4.0ms
v
2.0ms
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
Results
AccuracySegmentsBranch
100.0%1u
100.0%1v
100.0%1(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
100.0%1(*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v))))))
Compiler

Compiled 104 to 75 computations (27.9% saved)

regimes10.0ms (0.1%)

Counts
6 → 1
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v u))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
(+.f32 1 (*.f32 (log.f32 u) v))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u 1))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
Outputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
Calls

2 calls:

5.0ms
u
4.0ms
v
Results
AccuracySegmentsBranch
99.9%1u
99.9%1v
Compiler

Compiled 57 to 40 computations (29.8% saved)

regimes11.0ms (0.1%)

Counts
5 → 1
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v u))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
(+.f32 1 (*.f32 (log.f32 u) v))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u 1))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (-.f32 1 u)))))
Outputs
(+.f32 1 (*.f32 (log.f32 u) v))
Calls

2 calls:

6.0ms
u
3.0ms
v
Results
AccuracySegmentsBranch
99.7%1u
99.7%1v
Compiler

Compiled 46 to 32 computations (30.4% saved)

regimes21.0ms (0.1%)

Counts
2 → 1
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v u))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
Outputs
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
Calls

2 calls:

15.0ms
u
4.0ms
v
Results
AccuracySegmentsBranch
98.6%1u
98.6%1v
Compiler

Compiled 22 to 15 computations (31.8% saved)

regimes27.0ms (0.2%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v u))
Outputs
(+.f32 1 (*.f32 v u))
Calls

2 calls:

14.0ms
u
11.0ms
v
Results
AccuracySegmentsBranch
98.6%1u
98.6%1v
Compiler

Compiled 13 to 9 computations (30.8% saved)

simplify27.0ms (0.2%)

Algorithm
egg-herbie
Rules
24×+-commutative
14×*-commutative
12×unsub-neg
10×neg-mul-1
sub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027133
146133
253133
359133
467133
578133
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
(+.f32 1 (*.f32 (log.f32 u) v))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
(+.f32 1 (*.f32 v u))
Outputs
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (*.f32 (-.f32 1 u) (exp.f32 (/.f32 -2 v)))))))
(+.f32 1 (*.f32 v (log.f32 (+.f32 u (exp.f32 (/.f32 -2 v))))))
(+.f32 1 (*.f32 (log.f32 u) v))
(+.f32 1 (*.f32 v (log.f32 u)))
(+.f32 1 (+.f32 1 (-.f32 (*.f32 v u) 1)))
(+.f32 1 (+.f32 1 (+.f32 (*.f32 v u) -1)))
(+.f32 1 (*.f32 v u))
Compiler

Compiled 56 to 43 computations (23.2% saved)

soundness570.0ms (3.8%)

Rules
1424×pow1
1362×distribute-rgt-in
1342×distribute-lft-in
1306×fma-def
1294×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0818
115218
2179518
064600
1151534
2541468
33170468
01531341
13731205
212181139
347201115
Stop Event
node limit
node limit
node limit
Compiler

Compiled 118 to 85 computations (28% saved)

end0.0ms (0%)

preprocess170.0ms (1.1%)

Compiler

Compiled 130 to 94 computations (27.7% saved)

Profiling

Loading profile data...