Expression 4, p15

Time bar (total: 5.9s)

analyze1.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
100%0%0%100%0%0%0%1
Compiler

Compiled 24 to 15 computations (37.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation ival-and, time spent: 0.0ms, 0.0% of total-time
Operation ival-mult, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time
Operation ival-<=, time spent: 0.0ms, 0.0% of total-time

sample2.4s (39.8%)

Results
2.1s8255×256valid
0.0ms256valid
Precisions
Click to see histograms. Total time spent on operations: 637.0ms
Operation ival-<=, time spent: 247.0ms, 39.0% of total-time
Operation ival-add, time spent: 185.0ms, 29.0% of total-time
Operation ival-mult, time spent: 113.0ms, 18.0% of total-time
Operation ival-and, time spent: 54.0ms, 8.0% of total-time
Operation const, time spent: 37.0ms, 6.0% of total-time
Bogosity

preprocess550.0ms (9.3%)

Algorithm
egg-herbie
Rules
1098×fma-neg
926×fma-define
285×distribute-rgt-in
258×unsub-neg
223×distribute-lft-in
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-b
00-0-(*.f64 (+.f64 a b) (+.f64 a b))
00-0-a
00-0-(+.f64 a b)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
020257
167217
2237217
3631217
41451217
53042217
63873217
74021217
84021217
94021217
104836217
115124217
125124217
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 (+.f64 a b) (+.f64 a b))
(*.f64 (+.f64 a b) (+.f64 a b))
(*.f64 (+.f64 (neg.f64 a) b) (+.f64 (neg.f64 a) b))
(*.f64 (+.f64 a (neg.f64 b)) (+.f64 a (neg.f64 b)))
(neg.f64 (*.f64 (+.f64 (neg.f64 a) b) (+.f64 (neg.f64 a) b)))
(neg.f64 (*.f64 (+.f64 a (neg.f64 b)) (+.f64 a (neg.f64 b))))
(*.f64 (+.f64 b a) (+.f64 b a))
Outputs
(*.f64 (+.f64 a b) (+.f64 a b))
(*.f64 (+.f64 a b) (+.f64 a b))
(*.f64 (+.f64 (neg.f64 a) b) (+.f64 (neg.f64 a) b))
(*.f64 (+.f64 b (neg.f64 a)) (+.f64 b (neg.f64 a)))
(*.f64 (-.f64 b a) (-.f64 b a))
(*.f64 (+.f64 a (neg.f64 b)) (+.f64 a (neg.f64 b)))
(*.f64 (+.f64 b (neg.f64 a)) (+.f64 b (neg.f64 a)))
(*.f64 (-.f64 b a) (-.f64 b a))
(neg.f64 (*.f64 (+.f64 (neg.f64 a) b) (+.f64 (neg.f64 a) b)))
(*.f64 (+.f64 b (neg.f64 a)) (neg.f64 (+.f64 b (neg.f64 a))))
(*.f64 (-.f64 b a) (-.f64 a b))
(neg.f64 (*.f64 (+.f64 a (neg.f64 b)) (+.f64 a (neg.f64 b))))
(*.f64 (+.f64 b (neg.f64 a)) (neg.f64 (+.f64 b (neg.f64 a))))
(*.f64 (-.f64 b a) (-.f64 a b))
(*.f64 (+.f64 b a) (+.f64 b a))
(*.f64 (+.f64 a b) (+.f64 a b))
Symmetry

(sort a b)

Compiler

Compiled 39 to 14 computations (64.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 22.0ms
Operation ival-add, time spent: 14.0ms, 63.0% of total-time
Operation ival-mult, time spent: 7.0ms, 31.0% of total-time
Operation const, time spent: 1.0ms, 4.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 9 to 4 computations (55.6% saved)

localize43.0ms (0.7%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 15 to 5 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
Operation ival-add, time spent: 6.0ms, 59.0% of total-time
Operation ival-mult, time spent: 4.0ms, 40.0% of total-time
Operation const, time spent: 1.0ms, 10.0% of total-time

series18.0ms (0.3%)

Counts
1 → 24
Calls
Call 1
Inputs
#<alt (*.f64 (+.f64 a b) (+.f64 a b))>
Outputs
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
Calls

6 calls:

TimeVariablePointExpression
13.0ms
a
@-inf
(* (+ a b) (+ a b))
1.0ms
b
@-inf
(* (+ a b) (+ a b))
1.0ms
b
@inf
(* (+ a b) (+ a b))
1.0ms
a
@inf
(* (+ a b) (+ a b))
1.0ms
b
@0
(* (+ a b) (+ a b))

rewrite390.0ms (6.6%)

Algorithm
batch-egg-rewrite
Rules
682×prod-diff
515×log1p-expm1-u
515×expm1-log1p-u
418×unpow-prod-down
405×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
110219
2147319
Stop Event
node limit
Counts
1 → 68
Calls
Call 1
Inputs
(*.f64 (+.f64 a b) (+.f64 a b))
Outputs
(+.f64 (*.f64 a (+.f64 a b)) (*.f64 b (+.f64 a b)))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
(+.f64 #s(literal 0 binary64) (pow.f64 (+.f64 a b) #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 a (+.f64 a b)) #s(literal 1 binary64)) (*.f64 (*.f64 b (+.f64 a b)) #s(literal 1 binary64)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)))) #s(literal 1 binary64))
(/.f64 (pow.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) #s(literal 2 binary64)) (pow.f64 (-.f64 a b) #s(literal 2 binary64)))
(/.f64 (pow.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) #s(literal 2 binary64)) (pow.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (*.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (*.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) (-.f64 a b)))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64)))) (*.f64 (-.f64 a b) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 a (+.f64 a b)) #s(literal 3 binary64)) (pow.f64 (*.f64 b (+.f64 a b)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a (+.f64 a b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 b (+.f64 a b)) #s(literal 2 binary64)) (*.f64 (*.f64 a (+.f64 a b)) (*.f64 b (+.f64 a b))))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 a b)) #s(literal 2 binary64)) (pow.f64 (*.f64 b (+.f64 a b)) #s(literal 2 binary64))) (-.f64 (*.f64 a (+.f64 a b)) (*.f64 b (+.f64 a b))))
(/.f64 (*.f64 (+.f64 a b) (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 a b) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) (+.f64 a b)) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 a b)) (-.f64 a b))
(pow.f64 (+.f64 a b) #s(literal 2 binary64))
(pow.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (+.f64 a b)) #s(literal 6 binary64))
(pow.f64 (cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (+.f64 a b) #s(literal 3 binary64)) #s(literal 2/3 binary64))
(pow.f64 (pow.f64 (+.f64 a b) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (+.f64 a b) #s(literal 6 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (+.f64 a b)) #s(literal 4 binary64))
(sqrt.f64 (pow.f64 (+.f64 a b) #s(literal 4 binary64)))
(log.f64 (exp.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))
(cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 6 binary64)))
(expm1.f64 (log1p.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))
(log1p.f64 (expm1.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (+.f64 a b))))
(exp.f64 (*.f64 (log.f64 (+.f64 a b)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (+.f64 a b))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (cbrt.f64 (+.f64 a b)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (+.f64 a b) #s(literal 6 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 a b)) #s(literal 1 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (+.f64 a b)) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 (+.f64 a b))) #s(literal 1 binary64)) #s(literal 1 binary64)))
(exp.f64 (+.f64 (log.f64 (+.f64 a b)) (*.f64 (log.f64 (+.f64 a b)) #s(literal 1 binary64))))
(exp.f64 (+.f64 (*.f64 (log.f64 (+.f64 a b)) #s(literal 1 binary64)) (log.f64 (+.f64 a b))))
(exp.f64 (+.f64 (*.f64 (log.f64 (+.f64 a b)) #s(literal 1 binary64)) (*.f64 (log.f64 (+.f64 a b)) #s(literal 1 binary64))))
(fma.f64 a (+.f64 a b) (*.f64 b (+.f64 a b)))
(fma.f64 b (+.f64 a b) (*.f64 a (+.f64 a b)))
(fma.f64 (+.f64 a b) a (*.f64 b (+.f64 a b)))
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
(fma.f64 #s(literal 1 binary64) (*.f64 a (+.f64 a b)) (*.f64 b (+.f64 a b)))
(fma.f64 #s(literal 1 binary64) (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))) (*.f64 (cbrt.f64 (+.f64 a b)) b) (*.f64 a (+.f64 a b)))
(fma.f64 (cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64))) (*.f64 (cbrt.f64 (+.f64 a b)) a) (*.f64 b (+.f64 a b)))
(fma.f64 (cbrt.f64 (pow.f64 a #s(literal 2 binary64))) (*.f64 (cbrt.f64 a) (+.f64 a b)) (*.f64 b (+.f64 a b)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (sqrt.f64 (+.f64 a b)) (*.f64 (sqrt.f64 (+.f64 a b)) b) (*.f64 a (+.f64 a b)))
(fma.f64 (sqrt.f64 (+.f64 a b)) (*.f64 (sqrt.f64 (+.f64 a b)) a) (*.f64 b (+.f64 a b)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 a b)) (*.f64 b (+.f64 a b)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (*.f64 a (+.f64 a b)) #s(literal 1 binary64) (*.f64 (*.f64 b (+.f64 a b)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 a b))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 a (+.f64 a b))) (*.f64 b (+.f64 a b)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 a b))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b (+.f64 a b))) (*.f64 a (+.f64 a b)))
(fma.f64 (sqrt.f64 (*.f64 a (+.f64 a b))) (sqrt.f64 (*.f64 a (+.f64 a b))) (*.f64 b (+.f64 a b)))
(fma.f64 (sqrt.f64 (*.f64 b (+.f64 a b))) (sqrt.f64 (*.f64 b (+.f64 a b))) (*.f64 a (+.f64 a b)))
(fma.f64 (*.f64 (+.f64 a b) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 a (+.f64 a b)))
(fma.f64 (*.f64 (+.f64 a b) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 a (+.f64 a b)))
(fma.f64 (*.f64 a (cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)))) (cbrt.f64 (+.f64 a b)) (*.f64 b (+.f64 a b)))
(fma.f64 (*.f64 a (sqrt.f64 (+.f64 a b))) (sqrt.f64 (+.f64 a b)) (*.f64 b (+.f64 a b)))
(fma.f64 (*.f64 (+.f64 a b) (cbrt.f64 (pow.f64 a #s(literal 2 binary64)))) (cbrt.f64 a) (*.f64 b (+.f64 a b)))
(fma.f64 (*.f64 (+.f64 a b) (sqrt.f64 a)) (sqrt.f64 a) (*.f64 b (+.f64 a b)))
(fma.f64 (*.f64 b (cbrt.f64 (pow.f64 (+.f64 a b) #s(literal 2 binary64)))) (cbrt.f64 (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (*.f64 b (sqrt.f64 (+.f64 a b))) (sqrt.f64 (+.f64 a b)) (*.f64 a (+.f64 a b)))

eval53.0ms (0.9%)

Compiler

Compiled 1211 to 538 computations (55.6% saved)

prune23.0ms (0.4%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New89392
Fresh000
Picked011
Done000
Total89493
Accuracy
100.0%
Counts
93 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
100.0%
(+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 47 to 24 computations (48.9% saved)

localize244.0ms (4.1%)

Localize:

Found 6 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 a (+.f64 a b))
100.0%
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
100.0%
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
100.0%
(*.f64 a (+.f64 a b))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
100.0%
(*.f64 b (+.f64 a b))
Compiler

Compiled 81 to 27 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 110.0ms
Operation ival-mult, time spent: 47.0ms, 43.0% of total-time
Operation ival-add, time spent: 39.0ms, 36.0% of total-time
Operation ival-pow, time spent: 14.0ms, 13.0% of total-time
Operation composed, time spent: 8.0ms, 7.0% of total-time
Operation const, time spent: 3.0ms, 3.0% of total-time

series33.0ms (0.6%)

Counts
6 → 132
Calls
Call 1
Inputs
#<alt (*.f64 b (+.f64 a b))>
#<alt (+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))>
#<alt (*.f64 a (+.f64 a b))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))>
#<alt (*.f64 a (+.f64 a b))>
Outputs
#<alt (*.f64 a b)>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 a b)>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a b)>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (*.f64 a b)>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (*.f64 a b)>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 a b)>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a (+.f64 a (*.f64 #s(literal 2 binary64) b))) (pow.f64 b #s(literal 2 binary64)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 b a)) (/.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 b a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a))) a))))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (+.f64 (*.f64 #s(literal 2 binary64) (/.f64 a b)) (/.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 (*.f64 #s(literal -2 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b))) b))))>
#<alt (*.f64 a b)>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (*.f64 (pow.f64 a #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 b a)))>
#<alt (pow.f64 a #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 a #s(literal 2 binary64)))>
#<alt (*.f64 a b)>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 b (+.f64 a (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))>
#<alt (*.f64 a b)>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 b (+.f64 (*.f64 #s(literal -1 binary64) a) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 a #s(literal 2 binary64)) b)))))>
Calls

36 calls:

TimeVariablePointExpression
5.0ms
a
@-inf
(+ (* b (+ a b)) (* a (+ a b)))
1.0ms
a
@inf
(+ (* b (+ a b)) (* a (+ a b)))
1.0ms
b
@0
(* a (+ a b))
1.0ms
b
@-inf
(* b (+ b (* 2 a)))
1.0ms
b
@0
(* b (+ b (* 2 a)))

rewrite305.0ms (5.2%)

Algorithm
batch-egg-rewrite
Rules
868×fma-define
774×log1p-expm1-u
774×expm1-log1p-u
352×fma-neg
192×expm1-undefine
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017156
1250128
23582128
Stop Event
node limit
Counts
6 → 326
Calls
Call 1
Inputs
(*.f64 b (+.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
(*.f64 a (+.f64 a b))
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
(*.f64 a (+.f64 a b))
Outputs
(+.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b a))
(+.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64)))
(+.f64 (*.f64 (*.f64 b a) #s(literal 1 binary64)) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (+.f64 b a)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 b a) (*.f64 b a) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (*.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64))))))
(/.f64 (fma.f64 (*.f64 b a) (*.f64 b a) (neg.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))))) (-.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 b (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 b (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) b) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) b) (-.f64 a b))
(pow.f64 (*.f64 b (+.f64 b a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (hypot.f64 b (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (+.f64 b a)) b))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))))
(cbrt.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 b (+.f64 b a))))
(log1p.f64 (expm1.f64 (*.f64 b (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 b (+.f64 b a))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (+.f64 b a))) #s(literal 1 binary64)))
(fma.f64 b b (*.f64 b a))
(fma.f64 b a (pow.f64 b #s(literal 2 binary64)))
(fma.f64 a b (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) b) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 b a))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b a) #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b a)) (cbrt.f64 (*.f64 b a))) (cbrt.f64 (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b a))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b a))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)))) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (/.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))))
(*.f64 (+.f64 b a) (+.f64 b a))
(*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (+.f64 b a) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 b a)) (+.f64 b a)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 b a)) (*.f64 (sqrt.f64 (+.f64 b a)) (+.f64 b a)))
(*.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(*.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 b a) (-.f64 b a))))
(*.f64 (*.f64 (+.f64 b a) (sqrt.f64 (+.f64 b a))) (sqrt.f64 (+.f64 b a)))
(*.f64 (*.f64 (+.f64 b a) (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 b a)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 b a) (-.f64 b a)) (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 b (*.f64 (+.f64 b a) (*.f64 a (+.f64 b a)))))))
(/.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (*.f64 (+.f64 b a) (-.f64 b a)))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (*.f64 (-.f64 a b) (-.f64 a b)))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (*.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (*.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) (-.f64 a b)))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (*.f64 (-.f64 a b) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a)))) (neg.f64 (*.f64 (+.f64 b a) (-.f64 b a))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))))
(/.f64 (*.f64 (+.f64 b a) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 b a) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (+.f64 b a)) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 b a)) (-.f64 a b))
(pow.f64 (+.f64 b a) #s(literal 2 binary64))
(pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 3 binary64))
(pow.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(sqrt.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 2 binary64)))
(log.f64 (exp.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)))))
(cbrt.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(log1p.f64 (expm1.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(exp.f64 (log.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))) #s(literal 1 binary64)))
(fma.f64 b a (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 b (+.f64 b a) (*.f64 a (+.f64 b a)))
(fma.f64 a b (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 a a (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 a (+.f64 b a) (*.f64 b (+.f64 b a)))
(fma.f64 (+.f64 b a) b (*.f64 a (+.f64 b a)))
(fma.f64 (+.f64 b a) a (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 b (+.f64 b a)) #s(literal 1 binary64) (*.f64 a (+.f64 b a)))
(fma.f64 (*.f64 a (+.f64 b a)) #s(literal 1 binary64) (*.f64 b (+.f64 b a)))
(fma.f64 #s(literal 1 binary64) (*.f64 b (+.f64 b a)) (*.f64 a (+.f64 b a)))
(fma.f64 #s(literal 1 binary64) (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64)) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 b a)) b) (*.f64 a (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 b a)) a) (*.f64 b (+.f64 b a)))
(fma.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) (pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 2 binary64)) (*.f64 a (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b (+.f64 b a))) (*.f64 a (+.f64 b a)))
(fma.f64 (cbrt.f64 (*.f64 a (+.f64 b a))) (pow.f64 (cbrt.f64 (*.f64 a (+.f64 b a))) #s(literal 2 binary64)) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a (+.f64 b a))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 a (+.f64 b a))) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) (+.f64 b a)) (*.f64 a (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) a) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) (+.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (sqrt.f64 (+.f64 b a)) (*.f64 (sqrt.f64 (+.f64 b a)) b) (*.f64 a (+.f64 b a)))
(fma.f64 (sqrt.f64 (+.f64 b a)) (*.f64 (sqrt.f64 (+.f64 b a)) a) (*.f64 b (+.f64 b a)))
(fma.f64 (hypot.f64 b (sqrt.f64 (*.f64 b a))) (hypot.f64 b (sqrt.f64 (*.f64 b a))) (*.f64 a (+.f64 b a)))
(fma.f64 (hypot.f64 a (sqrt.f64 (*.f64 b a))) (hypot.f64 a (sqrt.f64 (*.f64 b a))) (*.f64 b (+.f64 b a)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 b a)) (*.f64 a (+.f64 b a)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) a) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) (+.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b a)) (cbrt.f64 (*.f64 b a))) (cbrt.f64 (*.f64 b a)) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 a (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (fma.f64 b a (*.f64 b (+.f64 b a))))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (fma.f64 b b (*.f64 a (+.f64 b a))))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 b a)) (*.f64 a (+.f64 b a)))
(fma.f64 (*.f64 b (sqrt.f64 (+.f64 b a))) (sqrt.f64 (+.f64 b a)) (*.f64 a (+.f64 b a)))
(fma.f64 (*.f64 (+.f64 b a) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 a (+.f64 b a)))
(fma.f64 (*.f64 (+.f64 b a) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 a (+.f64 b a)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 a (sqrt.f64 (+.f64 b a))) (sqrt.f64 (+.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 (+.f64 b a) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 (+.f64 b a) (sqrt.f64 a)) (sqrt.f64 a) (*.f64 b (+.f64 b a)))
(+.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a))
(+.f64 (*.f64 b a) (pow.f64 a #s(literal 2 binary64)))
(+.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 b a) #s(literal 1 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 b a)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (*.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a)))))
(/.f64 (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 b a) (*.f64 b a))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a)))
(/.f64 (*.f64 a (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 a (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) a) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) a) (-.f64 a b))
(pow.f64 (*.f64 a (+.f64 b a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 b a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (hypot.f64 a (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 b a)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 a (+.f64 b a)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 b a))))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 a (+.f64 b a))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 b a))) #s(literal 1 binary64)))
(fma.f64 b a (pow.f64 a #s(literal 2 binary64)))
(fma.f64 a b (pow.f64 a #s(literal 2 binary64)))
(fma.f64 a a (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) a) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 b a) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) a) (*.f64 b a))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b a)) (cbrt.f64 (*.f64 b a))) (cbrt.f64 (*.f64 b a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 a)) (sqrt.f64 a) (*.f64 b a))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (*.f64 b a))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 a #s(literal 2 binary64)))
(+.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(+.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(+.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b (*.f64 a #s(literal 2 binary64)))) (*.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a #s(literal 2 binary64)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (*.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b (*.f64 a #s(literal 2 binary64))))) (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a #s(literal 2 binary64)))))
(/.f64 (*.f64 b (fma.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 b #s(literal 3 binary64)))) (fma.f64 (*.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 a #s(literal 2 binary64)) b) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 b (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 4 binary64)))) (+.f64 b (*.f64 #s(literal -2 binary64) a)))
(/.f64 (*.f64 (fma.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 b #s(literal 3 binary64))) b) (fma.f64 (*.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 a #s(literal 2 binary64)) b) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 4 binary64))) b) (+.f64 b (*.f64 #s(literal -2 binary64) a)))
(pow.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 b) (fma.f64 a #s(literal 2 binary64) b)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)))))
(cbrt.f64 (pow.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b)) #s(literal 3 binary64)))
(cbrt.f64 (*.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 (fma.f64 a #s(literal 2 binary64) b) #s(literal 3 binary64))))
(cbrt.f64 (*.f64 (pow.f64 (fma.f64 a #s(literal 2 binary64) b) #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))))
(expm1.f64 (log1p.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))))
(log1p.f64 (expm1.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))))
(exp.f64 (log.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (fma.f64 a #s(literal 2 binary64) b))) #s(literal 1 binary64)))
(fma.f64 b b (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 b (*.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 a (*.f64 #s(literal 2 binary64) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 b a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 a #s(literal 2 binary64)) b (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 #s(literal 1 binary64) (*.f64 b (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64))) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) b) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (*.f64 a #s(literal 2 binary64))) (*.f64 (sqrt.f64 (*.f64 a #s(literal 2 binary64))) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 (*.f64 b a) #s(literal 2 binary64) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b (*.f64 a #s(literal 2 binary64)))) (cbrt.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))))) (cbrt.f64 (*.f64 b (*.f64 a #s(literal 2 binary64)))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(fma.f64 (sqrt.f64 (*.f64 b (*.f64 a #s(literal 2 binary64)))) (sqrt.f64 (*.f64 b (*.f64 a #s(literal 2 binary64)))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 a #s(literal 2 binary64))) (sqrt.f64 b)) (*.f64 (sqrt.f64 (*.f64 a #s(literal 2 binary64))) (sqrt.f64 b)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 a #s(literal 2 binary64)))) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 a #s(literal 2 binary64)))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 a #s(literal 2 binary64)) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 a #s(literal 2 binary64)) (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b #s(literal 2 binary64)) a (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (*.f64 a #s(literal 2 binary64))) #s(literal 2 binary64))) (cbrt.f64 (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 (*.f64 a #s(literal 2 binary64)))) (sqrt.f64 (*.f64 a #s(literal 2 binary64))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b (*.f64 a #s(literal 2 binary64))))
(+.f64 (*.f64 b (+.f64 b a)) (*.f64 a (+.f64 b a)))
(+.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a)))
(+.f64 (pow.f64 a #s(literal 2 binary64)) (fma.f64 b a (*.f64 b (+.f64 b a))))
(+.f64 (*.f64 b a) (fma.f64 b b (*.f64 a (+.f64 b a))))
(+.f64 (fma.f64 b (+.f64 b a) (pow.f64 a #s(literal 2 binary64))) (*.f64 b a))
(+.f64 (fma.f64 a (+.f64 b a) (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(-.f64 (exp.f64 (log1p.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)))) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (/.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))))
(*.f64 (+.f64 b a) (+.f64 b a))
(*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (+.f64 b a) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 b a)) (+.f64 b a)))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)))
(*.f64 (sqrt.f64 (+.f64 b a)) (*.f64 (sqrt.f64 (+.f64 b a)) (+.f64 b a)))
(*.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(*.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (/.f64 #s(literal 1 binary64) (*.f64 (+.f64 b a) (-.f64 b a))))
(*.f64 (*.f64 (+.f64 b a) (sqrt.f64 (+.f64 b a))) (sqrt.f64 (+.f64 b a)))
(*.f64 (*.f64 (+.f64 b a) (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 b a)))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 (+.f64 b a) (-.f64 b a)) (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 b (*.f64 (+.f64 b a) (*.f64 a (+.f64 b a)))))))
(/.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a))) (*.f64 (+.f64 b a) (-.f64 b a)))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (*.f64 (-.f64 a b) (-.f64 a b)))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (*.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64)))))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (*.f64 (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))) (-.f64 a b)))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (*.f64 (-.f64 a b) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 a (+.f64 b a)) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (*.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (-.f64 b a)))) (neg.f64 (*.f64 (+.f64 b a) (-.f64 b a))))
(/.f64 (-.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (-.f64 (*.f64 a (+.f64 b a)) (*.f64 b (+.f64 b a))))
(/.f64 (*.f64 (+.f64 b a) (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (+.f64 b a) (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) (+.f64 b a)) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (+.f64 b a)) (-.f64 a b))
(pow.f64 (+.f64 b a) #s(literal 2 binary64))
(pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) #s(literal 3 binary64))
(pow.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(sqrt.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 2 binary64)))
(log.f64 (exp.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)))))
(cbrt.f64 (pow.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(log1p.f64 (expm1.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(exp.f64 (log.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (+.f64 b a) #s(literal 2 binary64))) #s(literal 1 binary64)))
(+.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a))
(+.f64 (*.f64 b a) (pow.f64 a #s(literal 2 binary64)))
(+.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 b a) #s(literal 1 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 a (+.f64 b a)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b a) (*.f64 b a)) (*.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a)))))
(/.f64 (-.f64 (*.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 b a) (*.f64 b a))) (-.f64 (pow.f64 a #s(literal 2 binary64)) (*.f64 b a)))
(/.f64 (*.f64 a (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 a (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 b #s(literal 3 binary64)) (pow.f64 a #s(literal 3 binary64))) a) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) a) (-.f64 a b))
(pow.f64 (*.f64 a (+.f64 b a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 a (+.f64 b a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (hypot.f64 a (sqrt.f64 (*.f64 b a))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 a) (+.f64 b a)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 a (+.f64 b a)))))
(cbrt.f64 (pow.f64 (*.f64 a (+.f64 b a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 a (+.f64 b a))))
(log1p.f64 (expm1.f64 (*.f64 a (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 a (+.f64 b a))))
(exp.f64 (*.f64 (log.f64 (*.f64 a (+.f64 b a))) #s(literal 1 binary64)))
(fma.f64 b a (pow.f64 a #s(literal 2 binary64)))
(fma.f64 a b (pow.f64 a #s(literal 2 binary64)))
(fma.f64 a a (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (pow.f64 a #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) a) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 b a) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) a) (*.f64 b a))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b a)) (cbrt.f64 (*.f64 b a))) (cbrt.f64 (*.f64 b a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 a)) (sqrt.f64 a) (*.f64 b a))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (*.f64 (sqrt.f64 b) (sqrt.f64 a)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (*.f64 (sqrt.f64 a) (sqrt.f64 b)) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (*.f64 b a))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 a #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 a #s(literal 2 binary64)))

eval468.0ms (7.9%)

Compiler

Compiled 9249 to 3588 computations (61.2% saved)

prune73.0ms (1.2%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New5882590
Fresh000
Picked123
Done011
Total5895594
Accuracy
100.0%
Counts
594 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(fma.f64 (+.f64 a b) b (*.f64 a b))
100.0%
(+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
99.6%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
Compiler

Compiled 56 to 30 computations (46.4% saved)

localize102.0ms (1.7%)

Localize:

Found 3 expressions with local error:

NewAccuracyProgram
100.0%
(fma.f64 (+.f64 a b) b (*.f64 a b))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
100.0%
(*.f64 b (+.f64 a b))
Compiler

Compiled 41 to 8 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 44.0ms
Operation ival-add, time spent: 27.0ms, 61.0% of total-time
Operation ival-mult, time spent: 10.0ms, 23.0% of total-time
Operation composed, time spent: 7.0ms, 16.0% of total-time
Operation const, time spent: 1.0ms, 2.0% of total-time

series28.0ms (0.5%)

Counts
3 → 69
Calls
Call 1
Inputs
#<alt (*.f64 b (+.f64 a b))>
#<alt (+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))>
#<alt (fma.f64 (+.f64 a b) b (*.f64 a b))>
Outputs
#<alt (*.f64 a b)>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 a b)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 a b)>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 b (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a b)>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -1 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
Calls

18 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(+ (* b (+ a b)) (* a b))
1.0ms
b
@inf
(+ (* b (+ a b)) (* a b))
1.0ms
a
@-inf
(+ (* b (+ a b)) (* a b))
1.0ms
a
@0
(+ (* b (+ a b)) (* a b))
0.0ms
b
@0
(+ (* b (+ a b)) (* a b))

rewrite238.0ms (4%)

Algorithm
batch-egg-rewrite
Rules
808×log1p-expm1-u
808×expm1-log1p-u
678×fma-define
383×log-prod
252×fma-neg
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01394
117184
2222984
Stop Event
node limit
Counts
3 → 190
Calls
Call 1
Inputs
(*.f64 b (+.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
(fma.f64 (+.f64 a b) b (*.f64 a b))
Outputs
(+.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64)))
(+.f64 (*.f64 b a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(+.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b a))
(+.f64 #s(literal 0 binary64) (*.f64 b (+.f64 b a)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b a)) b)) (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b a)) b)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 b a)) b))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b a)) b))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 b a)) b))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (+.f64 b a)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (*.f64 b a) #s(literal 3 binary64)) (pow.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (*.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 (*.f64 b a) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 b (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64)))) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 b (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) (pow.f64 b #s(literal 3 binary64))) b) (fma.f64 b (-.f64 b a) (pow.f64 a #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 a #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) b) (-.f64 a b))
(pow.f64 (*.f64 b (+.f64 b a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 b (+.f64 b a))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (+.f64 b a)) b))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a))) (exp.f64 (pow.f64 b #s(literal 2 binary64)))))
(log.f64 (*.f64 (exp.f64 (pow.f64 b #s(literal 2 binary64))) (pow.f64 (exp.f64 a) b)))
(log.f64 (*.f64 (exp.f64 (pow.f64 b #s(literal 2 binary64))) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a)))))
(cbrt.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 b (+.f64 b a))))
(log1p.f64 (expm1.f64 (*.f64 b (+.f64 b a))))
(exp.f64 (log.f64 (*.f64 b (+.f64 b a))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (+.f64 b a))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 b (+.f64 b a)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 b (+.f64 b a)))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b (+.f64 b a)))) #s(literal 2 binary64)))
(fma.f64 b b (*.f64 b a))
(fma.f64 b a (pow.f64 b #s(literal 2 binary64)))
(fma.f64 b a (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 a b (pow.f64 b #s(literal 2 binary64)))
(fma.f64 a b (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 b a) #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b a) #s(literal 1 binary64) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (cbrt.f64 (*.f64 b a)) (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (cbrt.f64 (*.f64 b a)) (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b a)) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) b) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 b a))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b a))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b a))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (*.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64)))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 b (-.f64 (+.f64 b a) a))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 b (-.f64 (+.f64 b a) a))))
(*.f64 b (+.f64 (+.f64 b a) a))
(*.f64 b (+.f64 a (+.f64 b a)))
(*.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 1 binary64))
(*.f64 (*.f64 b (+.f64 (+.f64 b a) a)) (log.f64 (exp.f64 #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 b (+.f64 (+.f64 b a) a)))
(*.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) (pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(*.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(*.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(*.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 b (-.f64 (+.f64 b a) a))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (-.f64 (+.f64 b a) a)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (*.f64 b (*.f64 b a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (*.f64 b (-.f64 (+.f64 b a) a)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) (neg.f64 (*.f64 b (-.f64 (+.f64 b a) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))))
(pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64))
(pow.f64 (/.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 b (-.f64 (+.f64 b a) a)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) #s(literal -1 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 2 binary64)))
(log.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 (+.f64 b a) a)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (+.f64 b a)) b) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a)))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))) (pow.f64 (exp.f64 a) b)))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a))))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a))) (pow.f64 (exp.f64 (+.f64 b a)) b)))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a))) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a))))))
(cbrt.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(log1p.f64 (expm1.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(exp.f64 (log.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 2 binary64)))
(fma.f64 b a (*.f64 b (+.f64 b a)))
(fma.f64 b (+.f64 b a) (*.f64 b a))
(fma.f64 a b (*.f64 b (+.f64 b a)))
(fma.f64 (+.f64 b a) b (*.f64 b a))
(fma.f64 (*.f64 b (+.f64 b a)) #s(literal 1 binary64) (*.f64 b a))
(fma.f64 (*.f64 b a) #s(literal 1 binary64) (*.f64 b (+.f64 b a)))
(fma.f64 #s(literal 1 binary64) (*.f64 b (+.f64 b a)) (*.f64 b a))
(fma.f64 #s(literal 1 binary64) (*.f64 b a) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 b a)) b) (*.f64 b a))
(fma.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) (pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 2 binary64)) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 b a))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b (+.f64 b a))) (*.f64 b a))
(fma.f64 (cbrt.f64 (*.f64 b a)) (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 b a)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 a) #s(literal 2 binary64)) (*.f64 (cbrt.f64 a) b) (*.f64 b (+.f64 b a)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) (+.f64 b a)) (*.f64 b a))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) a) (*.f64 b (+.f64 b a)))
(fma.f64 (sqrt.f64 (+.f64 b a)) (*.f64 (sqrt.f64 (+.f64 b a)) b) (*.f64 b a))
(fma.f64 (sqrt.f64 (*.f64 b (+.f64 b a))) (sqrt.f64 (*.f64 b (+.f64 b a))) (*.f64 b a))
(fma.f64 (sqrt.f64 (*.f64 b a)) (sqrt.f64 (*.f64 b a)) (*.f64 b (+.f64 b a)))
(fma.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 a) b) (*.f64 b (+.f64 b a)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (+.f64 b a)) (*.f64 b a))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) a) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (+.f64 b a)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 b a)) (*.f64 b a))
(fma.f64 (*.f64 b (sqrt.f64 (+.f64 b a))) (sqrt.f64 (+.f64 b a)) (*.f64 b a))
(fma.f64 (*.f64 (+.f64 b a) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b a))
(fma.f64 (*.f64 (+.f64 b a) (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b a))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 a) #s(literal 2 binary64))) (cbrt.f64 a) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 b (sqrt.f64 a)) (sqrt.f64 a) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 a (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b (+.f64 b a)))
(fma.f64 (*.f64 a (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b (+.f64 b a)))
(+.f64 (*.f64 b (+.f64 b a)) (*.f64 b a))
(+.f64 (*.f64 b a) (*.f64 b (+.f64 b a)))
(+.f64 #s(literal 0 binary64) (*.f64 b (+.f64 (+.f64 b a) a)))
(+.f64 (fma.f64 b a (*.f64 b a)) (pow.f64 b #s(literal 2 binary64)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) (cbrt.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a))))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 b (-.f64 (+.f64 b a) a))) (/.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (*.f64 b (-.f64 (+.f64 b a) a))))
(*.f64 b (+.f64 (+.f64 b a) a))
(*.f64 b (+.f64 a (+.f64 b a)))
(*.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 1 binary64))
(*.f64 (*.f64 b (+.f64 (+.f64 b a) a)) (log.f64 (exp.f64 #s(literal 1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 b (+.f64 (+.f64 b a) a)))
(*.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) (pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(*.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(*.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(*.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (*.f64 b (-.f64 (+.f64 b a) a))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (-.f64 (+.f64 b a) a)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (*.f64 (+.f64 b a) (*.f64 b (*.f64 b a))))))
(/.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64))) (*.f64 b (-.f64 (+.f64 b a) a)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) (neg.f64 (*.f64 b (-.f64 (+.f64 b a) a))))
(/.f64 (-.f64 (pow.f64 (*.f64 b a) #s(literal 2 binary64)) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))))
(pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 2 binary64))
(pow.f64 (/.f64 (fma.f64 (*.f64 b a) (-.f64 (*.f64 b a) (*.f64 b (+.f64 b a))) (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64))) (+.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 3 binary64)) (pow.f64 (*.f64 b a) #s(literal 3 binary64)))) #s(literal -1 binary64))
(pow.f64 (/.f64 (*.f64 b (-.f64 (+.f64 b a) a)) (-.f64 (pow.f64 (*.f64 b (+.f64 b a)) #s(literal 2 binary64)) (pow.f64 (*.f64 b a) #s(literal 2 binary64)))) #s(literal -1 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 2 binary64)))
(log.f64 (exp.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 (+.f64 b a) a)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 (+.f64 b a)) b) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a)))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))) (pow.f64 (exp.f64 a) b)))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a)))) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 a) b) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a))))))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a))) (pow.f64 (exp.f64 (+.f64 b a)) b)))
(log.f64 (*.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b a))) (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (+.f64 b a))))))
(cbrt.f64 (pow.f64 (*.f64 b (+.f64 (+.f64 b a) a)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(log1p.f64 (expm1.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(exp.f64 (log.f64 (*.f64 b (+.f64 (+.f64 b a) a))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (+.f64 (+.f64 b a) a))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b (+.f64 (+.f64 b a) a)))) #s(literal 2 binary64)))

eval150.0ms (2.5%)

Compiler

Compiled 3667 to 1300 computations (64.5% saved)

prune44.0ms (0.7%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2572259
Fresh000
Picked112
Done123
Total2595264
Accuracy
100.0%
Counts
264 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(fma.f64 (+.f64 a b) b (*.f64 a b))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
99.7%
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
5.3%
(*.f64 #s(literal 2 binary64) (*.f64 a b))
Compiler

Compiled 48 to 26 computations (45.8% saved)

localize120.0ms (2%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
Compiler

Compiled 32 to 17 computations (46.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 45.0ms
Operation ival-mult, time spent: 38.0ms, 84.0% of total-time
Operation ival-add, time spent: 5.0ms, 11.0% of total-time
Operation const, time spent: 2.0ms, 4.0% of total-time

series3.0ms (0.1%)

Counts
1 → 21
Calls
Call 1
Inputs
#<alt (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))>
Outputs
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (*.f64 (pow.f64 b #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 2 binary64) (/.f64 a b))))>
#<alt (pow.f64 b #s(literal 2 binary64))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a b)) (pow.f64 b #s(literal 2 binary64)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 a (+.f64 (*.f64 #s(literal 2 binary64) b) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))>
#<alt (*.f64 #s(literal 2 binary64) (*.f64 a b))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
#<alt (*.f64 #s(literal -1 binary64) (*.f64 a (+.f64 (*.f64 #s(literal -2 binary64) b) (*.f64 #s(literal -1 binary64) (/.f64 (pow.f64 b #s(literal 2 binary64)) a)))))>
Calls

6 calls:

TimeVariablePointExpression
0.0ms
a
@-inf
(* b (+ b (* 2 a)))
0.0ms
a
@inf
(* b (+ b (* 2 a)))
0.0ms
b
@inf
(* b (+ b (* 2 a)))
0.0ms
b
@-inf
(* b (+ b (* 2 a)))
0.0ms
b
@0
(* b (+ b (* 2 a)))

rewrite99.0ms (1.7%)

Algorithm
batch-egg-rewrite
Rules
893×prod-diff
606×log1p-expm1-u
606×expm1-log1p-u
569×unpow-prod-down
307×log-prod
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01128
112024
2166824
Stop Event
node limit
Counts
1 → 56
Calls
Call 1
Inputs
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
Outputs
(+.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(+.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) #s(literal 1 binary64)))
(+.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 b (fma.f64 #s(literal 2 binary64) a b)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b))) (cbrt.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 b #s(literal 6 binary64)) (pow.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) #s(literal 3 binary64))) (fma.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) (*.f64 b (*.f64 #s(literal 2 binary64) a))) (*.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 #s(literal 2 binary64) a))))))
(/.f64 (-.f64 (*.f64 (pow.f64 b #s(literal 2 binary64)) (pow.f64 b #s(literal 2 binary64))) (*.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) (*.f64 b (*.f64 #s(literal 2 binary64) a)))) (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 #s(literal 2 binary64) a))))
(/.f64 (*.f64 b (fma.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 b #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal 2 binary64) a) (-.f64 (*.f64 #s(literal 2 binary64) a) b) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 b (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 4 binary64)))) (+.f64 b (*.f64 #s(literal -2 binary64) a)))
(/.f64 (*.f64 (fma.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 8 binary64) (pow.f64 b #s(literal 3 binary64))) b) (fma.f64 (*.f64 #s(literal 2 binary64) a) (-.f64 (*.f64 #s(literal 2 binary64) a) b) (pow.f64 b #s(literal 2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 b #s(literal 2 binary64)) (*.f64 (pow.f64 a #s(literal 2 binary64)) #s(literal 4 binary64))) b) (+.f64 b (*.f64 #s(literal -2 binary64) a)))
(pow.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))) #s(literal 2 binary64))
(sqrt.f64 (pow.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 b) (fma.f64 #s(literal 2 binary64) a b)))
(log.f64 (+.f64 #s(literal 1 binary64) (expm1.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)))))
(log.f64 (*.f64 (exp.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a))) (exp.f64 (pow.f64 b #s(literal 2 binary64)))))
(cbrt.f64 (pow.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))))
(log1p.f64 (expm1.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))))
(exp.f64 (log.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))))
(exp.f64 (*.f64 (log.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 b (fma.f64 #s(literal 2 binary64) a b)))) #s(literal 2 binary64)))
(fma.f64 b b (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 b (*.f64 #s(literal 2 binary64) a) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 a b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 a (*.f64 #s(literal 2 binary64) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 #s(literal 2 binary64) a) b (pow.f64 b #s(literal 2 binary64)))
(fma.f64 #s(literal 1 binary64) (pow.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 #s(literal 1 binary64) (*.f64 b (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a)) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) b) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 (cbrt.f64 b) (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (pow.f64 b #s(literal 2 binary64)) #s(literal 1 binary64) (*.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) a)) b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64)) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a))) (cbrt.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a)))) (cbrt.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (sqrt.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a))) (sqrt.f64 (*.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 #s(literal 2 binary64) a))) (*.f64 (sqrt.f64 b) (sqrt.f64 (*.f64 #s(literal 2 binary64) a))) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) a)) (sqrt.f64 b)) (*.f64 (sqrt.f64 (*.f64 #s(literal 2 binary64) a)) (sqrt.f64 b)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (*.f64 b (*.f64 #s(literal 2 binary64) a)))
(fma.f64 (*.f64 b #s(literal 2 binary64)) a (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b a) #s(literal 2 binary64) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (pow.f64 (cbrt.f64 (*.f64 #s(literal 2 binary64) a)) #s(literal 2 binary64))) (cbrt.f64 (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 b (sqrt.f64 (*.f64 #s(literal 2 binary64) a))) (sqrt.f64 (*.f64 #s(literal 2 binary64) a)) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 #s(literal 2 binary64) a) (pow.f64 (cbrt.f64 b) #s(literal 2 binary64))) (cbrt.f64 b) (pow.f64 b #s(literal 2 binary64)))
(fma.f64 (*.f64 (*.f64 #s(literal 2 binary64) a) (sqrt.f64 b)) (sqrt.f64 b) (pow.f64 b #s(literal 2 binary64)))

eval50.0ms (0.8%)

Compiler

Compiled 938 to 608 computations (35.2% saved)

prune80.0ms (1.4%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New77077
Fresh000
Picked022
Done033
Total77582
Accuracy
100.0%
Counts
82 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.7%
(fma.f64 (+.f64 a b) b (*.f64 a b))
100.0%
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
100.0%
(*.f64 (+.f64 a b) (+.f64 a b))
99.7%
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
5.3%
(*.f64 #s(literal 2 binary64) (*.f64 a b))
Compiler

Compiled 118 to 50 computations (57.6% saved)

regimes27.0ms (0.5%)

Counts
8 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
(*.f64 (+.f64 a b) (+.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (+.f64 a b) b (*.f64 a b))
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
(+.f64 (*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a))) (pow.f64 a #s(literal 2 binary64)))
Outputs
(fma.f64 (+.f64 a b) b (*.f64 a (+.f64 a b)))
Calls

4 calls:

9.0ms
(*.f64 (+.f64 a b) (+.f64 a b))
6.0ms
b
6.0ms
(+.f64 a b)
5.0ms
a
Results
AccuracySegmentsBranch
100.0%1a
100.0%1b
100.0%1(*.f64 (+.f64 a b) (+.f64 a b))
100.0%1(+.f64 a b)
Compiler

Compiled 20 to 11 computations (45% saved)

regimes24.0ms (0.4%)

Counts
6 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
(*.f64 (+.f64 a b) (+.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
(fma.f64 (+.f64 a b) b (*.f64 a b))
Outputs
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a (+.f64 a b)))
Calls

4 calls:

7.0ms
a
6.0ms
(+.f64 a b)
5.0ms
(*.f64 (+.f64 a b) (+.f64 a b))
5.0ms
b
Results
AccuracySegmentsBranch
100.0%1a
100.0%1b
100.0%1(*.f64 (+.f64 a b) (+.f64 a b))
100.0%1(+.f64 a b)
Compiler

Compiled 20 to 11 computations (45% saved)

regimes16.0ms (0.3%)

Counts
4 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
(*.f64 (+.f64 a b) (+.f64 a b))
(+.f64 (*.f64 b (+.f64 a b)) (*.f64 a b))
Outputs
(*.f64 (+.f64 a b) (+.f64 a b))
Calls

4 calls:

4.0ms
(*.f64 (+.f64 a b) (+.f64 a b))
4.0ms
(+.f64 a b)
4.0ms
b
4.0ms
a
Results
AccuracySegmentsBranch
100.0%1a
100.0%1b
100.0%1(*.f64 (+.f64 a b) (+.f64 a b))
100.0%1(+.f64 a b)
Compiler

Compiled 20 to 11 computations (45% saved)

regimes7.0ms (0.1%)

Counts
2 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
Outputs
(*.f64 b (+.f64 b (*.f64 #s(literal 2 binary64) a)))
Calls

2 calls:

3.0ms
b
3.0ms
a
Results
AccuracySegmentsBranch
99.7%1a
99.7%1b
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes8.0ms (0.1%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Stop Event
done
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
Outputs
(*.f64 #s(literal 2 binary64) (*.f64 a b))
Calls

2 calls:

2.0ms
a
2.0ms
b
Results
AccuracySegmentsBranch
5.3%1a
5.3%1b
Compiler

Compiled 56 to 30 computations (46.4% saved)

soundness233.0ms (3.9%)

Rules
682×prod-diff
515×log1p-expm1-u
515×expm1-log1p-u
418×unpow-prod-down
405×pow1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
110219
2147319
Stop Event
node limit
Compiler

Compiled 75 to 21 computations (72% saved)

end0.0ms (0%)

preprocess126.0ms (2.1%)

Compiler

Compiled 232 to 94 computations (59.5% saved)

Profiling

Loading profile data...