symmetry log of sum of exp

Time bar (total: 10.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze132.0ms (1.2%)

Memory
23.0MiB live, 162.5MiB allocated; 17ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
25%25%74.9%0.1%0%0%0%4
50%50%50%0.1%0%0%0%5
50%50%50%0.1%0%0%0%6
50%50%50%0.1%0%0%0%7
50%50%50%0.1%0%0%0%8
50%50%50%0.1%0%0%0%9
50%50%50%0.1%0%0%0%10
50%50%50%0.1%0%0%0%11
50%50%50%0.1%0%0%0%12
Compiler

Compiled 8 to 8 computations (0% saved)

sample5.4s (50.5%)

Memory
151.5MiB live, 5 290.8MiB allocated; 1.3s collecting garbage
Samples
2.8s7 734×5exit
805.0ms1 602×2valid
540.0ms2 307×1valid
246.0ms4 347×0valid
Precisions
Click to see histograms. Total time spent on operations: 3.5s
ival-exp: 1.2s (33.8% of total)
ival-log: 1.1s (32.2% of total)
adjust: 878.0ms (25.1% of total)
ival-add: 293.0ms (8.4% of total)
ival-true: 14.0ms (0.4% of total)
ival-assert: 8.0ms (0.2% of total)
Bogosity

explain446.0ms (4.2%)

Memory
-58.6MiB live, 181.6MiB allocated; 639ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1430-0-(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
00-0-(+.f64 (exp.f64 a) (exp.f64 b))
00-0-a
00-0-(exp.f64 b)
00-0-b
00-0-(exp.f64 a)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
log.f64(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))sensitivity1410
log.f64(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))oflow-rescue10
(+.f64 (exp.f64 a) (exp.f64 b))overflow1
(exp.f64 a)overflow1
log.f64(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))uflow-rescue10
(+.f64 (exp.f64 a) (exp.f64 b))underflow1
(exp.f64 a)underflow76
(exp.f64 b)underflow68
Confusion
Predicted +Predicted -
+1430
-0113
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+14300
-00113
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0113
1143
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
78.0ms146×2valid
26.0ms130×1valid
14.0ms236×0valid
Compiler

Compiled 44 to 22 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 97.0ms
ival-log: 52.0ms (53.6% of total)
ival-exp: 31.0ms (32% of total)
adjust: 8.0ms (8.2% of total)
ival-add: 5.0ms (5.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

preprocess167.0ms (1.6%)

Memory
29.0MiB live, 164.9MiB allocated; 52ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01636
13636
29336
335036
4172836
5657636
066
0106
1176
2406
31126
45146
550546
080666
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Outputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
Symmetry

(sort a b)

Compiler

Compiled 6 to 6 computations (0% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.1%
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 6 to 6 computations (0% saved)

simplify114.0ms (1.1%)

Memory
-9.0MiB live, 135.9MiB allocated; 16ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 b)
cost-diff0
(exp.f64 a)
cost-diff0
(+.f64 (exp.f64 a) (exp.f64 b))
cost-diff0
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0617
01017
11717
24017
311217
451417
5505417
0806617
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(+.f64 (exp.f64 a) (exp.f64 b))
(exp.f64 a)
a
(exp.f64 b)
b
Outputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
(+.f64 (exp.f64 a) (exp.f64 b))
(+.f64 (exp.f64 b) (exp.f64 a))
(exp.f64 a)
a
(exp.f64 b)
b

localize65.0ms (0.6%)

Memory
17.5MiB live, 63.5MiB allocated; 3ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 b)
accuracy0.0
(exp.f64 a)
accuracy0.0078125
(+.f64 (exp.f64 a) (exp.f64 b))
accuracy32.56586843150587
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Samples
36.0ms73×2valid
15.0ms65×1valid
7.0ms118×0valid
Compiler

Compiled 19 to 8 computations (57.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 48.0ms
ival-log: 24.0ms (49.8% of total)
ival-exp: 17.0ms (35.3% of total)
adjust: 4.0ms (8.3% of total)
ival-add: 2.0ms (4.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series94.0ms (0.9%)

Memory
-5.6MiB live, 84.0MiB allocated; 11ms collecting garbage
Counts
4 → 27
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(+.f64 (exp.f64 a) (exp.f64 b))
(exp.f64 a)
(exp.f64 b)
Outputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(log (+ (exp a) (exp b)))
(+ (exp a) (exp b))
(exp a)
(log (+ 1 (exp a)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(exp b)
Calls

6 calls:

TimeVariablePointExpression
30.0ms
b
@inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
29.0ms
a
@inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
21.0ms
a
@-inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
13.0ms
b
@-inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
1.0ms
a
@0
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))

simplify139.0ms (1.3%)

Memory
19.5MiB live, 156.4MiB allocated; 22ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
099370
1317370
21186366
35037366
08217320
Stop Event
iter limit
node limit
Counts
27 → 27
Calls
Call 1
Inputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(log (+ (exp a) (exp b)))
(+ (exp a) (exp b))
(exp a)
(log (+ 1 (exp a)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(exp b)
Outputs
(log (+ 1 (exp b)))
(log1p.f64 (exp.f64 b))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+.f64 (/.f64 a (+.f64 (exp.f64 b) #s(literal 1 binary64))) (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) a) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 b) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 b) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 b) #s(literal 1 binary64)))) a (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) a) (/.f64 (+.f64 (/.f64 #s(literal -3 binary64) (+.f64 (exp.f64 b) #s(literal 1 binary64))) (+.f64 (/.f64 #s(literal 2 binary64) (pow.f64 (+.f64 (exp.f64 b) #s(literal 1 binary64)) #s(literal 2 binary64))) #s(literal 1 binary64))) (+.f64 (exp.f64 b) #s(literal 1 binary64))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 b) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 b) #s(literal 1 binary64)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) a (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 b) #s(literal 1 binary64)))) a (log1p.f64 (exp.f64 b)))
(+ 1 (exp b))
(+.f64 (exp.f64 b) #s(literal 1 binary64))
(+ 1 (+ a (exp b)))
(+.f64 (+.f64 (exp.f64 b) a) #s(literal 1 binary64))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a (+.f64 (exp.f64 b) #s(literal 1 binary64)))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a (+.f64 (exp.f64 b) #s(literal 1 binary64)))
1
#s(literal 1 binary64)
(+ 1 a)
(+.f64 #s(literal 1 binary64) a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(log (+ (exp a) (exp b)))
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(+ (exp a) (exp b))
(+.f64 (exp.f64 a) (exp.f64 b))
(exp a)
(exp.f64 a)
(log (+ 1 (exp a)))
(log1p.f64 (exp.f64 a))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) b) (/.f64 (+.f64 (/.f64 #s(literal -3 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (/.f64 #s(literal 2 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))) #s(literal 1 binary64))) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) b (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(+ 1 (exp a))
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(+ 1 (+ b (exp a)))
(+.f64 (+.f64 (exp.f64 a) b) #s(literal 1 binary64))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(+ 1 b)
(+.f64 #s(literal 1 binary64) b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(exp b)
(exp.f64 b)

rewrite206.0ms (1.9%)

Memory
-37.5MiB live, 152.4MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0615
01015
13015
222515
3292015
0867815
Stop Event
iter limit
node limit
iter limit
Counts
4 → 263
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(+.f64 (exp.f64 a) (exp.f64 b))
(exp.f64 a)
(exp.f64 b)
Outputs
(/.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)))) (neg.f64 (log.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 2 binary64)) (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (neg.f64 (log.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (*.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64))) (log.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b)))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 2 binary64)) (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64))) (log.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64))) (+.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (*.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) (exp.f64 b)))))))
(/.f64 (-.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 3 binary64)) (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)))) (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
(-.f64 (log.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a))))
(-.f64 (log.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 b) #s(literal 2 binary64)))) (log.f64 (-.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b))))
(-.f64 (log.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
(-.f64 (log.f64 (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64)))) (log.f64 (-.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a)))))
(-.f64 (log.f64 (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64)))) (log.f64 (-.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b)))))
(-.f64 (log.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 b) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (cosh.f64 b) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 3 binary64)))) (log.f64 (fma.f64 (cosh.f64 b) (cosh.f64 b) (-.f64 (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (*.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a)))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 3 binary64)))) (log.f64 (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b)))))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 (exp.f64 b) (exp.f64 a)))))
(-.f64 (log.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (*.f64 (-.f64 (exp.f64 a) (exp.f64 b)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))))) (log.f64 (pow.f64 (-.f64 (exp.f64 a) (exp.f64 b)) #s(literal 2 binary64))))
(-.f64 (log.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 b) #s(literal 3 binary64))))) (log.f64 (pow.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)) (*.f64 (exp.f64 (neg.f64 b)) #s(literal 1 binary64)))) (log.f64 (exp.f64 (+.f64 (neg.f64 b) (neg.f64 a)))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (exp.f64 (neg.f64 b)) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))))) (log.f64 (*.f64 (exp.f64 (neg.f64 b)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(-.f64 (log.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (exp.f64 (neg.f64 a)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) #s(literal 1 binary64)))) (log.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (exp.f64 (neg.f64 a)))))
(-.f64 (log.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))))) (log.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64)))) (log.f64 (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b)))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (exp.f64 (neg.f64 a)) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))))) (log.f64 (*.f64 (exp.f64 (neg.f64 a)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(-.f64 (log.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (exp.f64 (neg.f64 b)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) #s(literal 1 binary64)))) (log.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (exp.f64 (neg.f64 b)))))
(-.f64 (log.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))))) (log.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64)))) (log.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 2 binary64)))) (-.f64 (exp.f64 a) (exp.f64 b)))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64)))) (log.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (+.f64 (pow.f64 (exp.f64 b) #s(literal 9 binary64)) (pow.f64 (exp.f64 a) #s(literal 9 binary64)))) (log.f64 (*.f64 (-.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 3 binary64)))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 b) (exp.f64 a))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64)))) (log.f64 (*.f64 (fma.f64 (exp.f64 b) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b)))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) (exp.f64 b))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (neg.f64 (neg.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (neg.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (log.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))))) (log.f64 (fma.f64 (exp.f64 b) (+.f64 (exp.f64 b) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (log.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))))) (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))))
(+.f64 (log.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 2 binary64))))) (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)))))
(+.f64 (log.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 6 binary64))))) (log.f64 (fma.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (-.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 a) #s(literal 4 binary64)))))
(+.f64 (log.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (/.f64 (+.f64 (exp.f64 b) (exp.f64 a)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(+.f64 (log.f64 (+.f64 (exp.f64 b) (exp.f64 a))) (log.f64 (/.f64 (-.f64 (exp.f64 a) (exp.f64 b)) (-.f64 (exp.f64 a) (exp.f64 b)))))
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (fma.f64 (exp.f64 b) (+.f64 (exp.f64 b) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (+.f64 (exp.f64 b) (exp.f64 a)))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b))))
(*.f64 (/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (-.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 a) #s(literal 4 binary64))))
(*.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (/.f64 (+.f64 (exp.f64 b) (exp.f64 a)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(*.f64 (+.f64 (exp.f64 b) (exp.f64 a)) (/.f64 (-.f64 (exp.f64 a) (exp.f64 b)) (-.f64 (exp.f64 a) (exp.f64 b))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)))) (+.f64 (exp.f64 b) (exp.f64 a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 b) #s(literal 2 binary64)))) (neg.f64 (-.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (+.f64 (exp.f64 b) (exp.f64 a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 b) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)))) (neg.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (cosh.f64 b) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cosh.f64 b) (cosh.f64 b) (-.f64 (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (*.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a)))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))) (neg.f64 (neg.f64 (-.f64 (exp.f64 b) (exp.f64 a)))))
(/.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (*.f64 (-.f64 (exp.f64 a) (exp.f64 b)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))))) (neg.f64 (pow.f64 (-.f64 (exp.f64 a) (exp.f64 b)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 b) #s(literal 3 binary64))))) (neg.f64 (pow.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)) (*.f64 (exp.f64 (neg.f64 b)) #s(literal 1 binary64)))) (neg.f64 (exp.f64 (+.f64 (neg.f64 b) (neg.f64 a)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (exp.f64 (neg.f64 b)) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (exp.f64 (neg.f64 b)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (neg.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (exp.f64 (neg.f64 a)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) #s(literal 1 binary64)))) (neg.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (exp.f64 (neg.f64 a)))))
(/.f64 (neg.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64)))) (neg.f64 (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (exp.f64 (neg.f64 a)) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (exp.f64 (neg.f64 a)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (neg.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (exp.f64 (neg.f64 b)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) #s(literal 1 binary64)))) (neg.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (exp.f64 (neg.f64 b)))))
(/.f64 (neg.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))))) (neg.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (-.f64 (neg.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (neg.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (-.f64 (exp.f64 a) (exp.f64 b)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64))) (+.f64 (exp.f64 b) (exp.f64 a)))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 a) #s(literal 2 binary64))) (-.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a)))
(/.f64 (-.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (sinh.f64 b) #s(literal 2 binary64))) (-.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b)))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64))) (+.f64 (exp.f64 b) (exp.f64 a)))
(/.f64 (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64))) (-.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a))))
(/.f64 (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64))) (-.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b))))
(/.f64 (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b)))))))
(/.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a)))))
(/.f64 (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (sinh.f64 b) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (*.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b)))))
(/.f64 (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) #s(literal 2 binary64)) (*.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 b) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 b) (cosh.f64 b) (-.f64 (pow.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) #s(literal 2 binary64)) (*.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 3 binary64))) (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (exp.f64 b) (exp.f64 a))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64)))) (neg.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 2 binary64)))) (-.f64 (exp.f64 a) (exp.f64 b)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64)))) (neg.f64 (*.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 b) #s(literal 9 binary64)) (pow.f64 (exp.f64 a) #s(literal 9 binary64)))) (neg.f64 (*.f64 (-.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 3 binary64)))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64)))) (neg.f64 (*.f64 (fma.f64 (exp.f64 b) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (*.f64 (-.f64 (exp.f64 a) (exp.f64 b)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (pow.f64 (-.f64 (exp.f64 a) (exp.f64 b)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 b) #s(literal 3 binary64)))) (pow.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)) (*.f64 (exp.f64 (neg.f64 b)) #s(literal 1 binary64))) (exp.f64 (+.f64 (neg.f64 b) (neg.f64 a))))
(/.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (exp.f64 (neg.f64 b)) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 b)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (exp.f64 (neg.f64 a)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) #s(literal 1 binary64))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (exp.f64 (neg.f64 a))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64))) (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b))))
(/.f64 (fma.f64 #s(literal 1 binary64) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (exp.f64 (neg.f64 a)) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (*.f64 (exp.f64 (neg.f64 a)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (exp.f64 (neg.f64 b)) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) #s(literal 1 binary64))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (exp.f64 (neg.f64 b))))
(/.f64 (fma.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64))) (*.f64 (fma.f64 (exp.f64 b) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (exp.f64 b) #s(literal 4 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 2 binary64)))) (-.f64 (exp.f64 a) (exp.f64 b))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64))) (*.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 (exp.f64 b) (exp.f64 a)))
(/.f64 (+.f64 (pow.f64 (exp.f64 b) #s(literal 9 binary64)) (pow.f64 (exp.f64 a) #s(literal 9 binary64))) (*.f64 (-.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 6 binary64)) (pow.f64 (exp.f64 b) #s(literal 6 binary64))) (exp.f64 (*.f64 (+.f64 b a) #s(literal 3 binary64)))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 (exp.f64 a) (exp.f64 b)))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (neg.f64 (neg.f64 (neg.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (neg.f64 (neg.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (neg.f64 (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))
(neg.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 b)))) (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 b)))) (exp.f64 a))
(fma.f64 (sqrt.f64 (neg.f64 (exp.f64 b))) (sqrt.f64 (neg.f64 (exp.f64 b))) (exp.f64 a))
(fma.f64 (sqrt.f64 (exp.f64 b)) (sqrt.f64 (exp.f64 b)) (exp.f64 a))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 a)))) (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 a)))) (exp.f64 b))
(fma.f64 (sqrt.f64 (neg.f64 (exp.f64 a))) (sqrt.f64 (neg.f64 (exp.f64 a))) (exp.f64 b))
(fma.f64 (sqrt.f64 (exp.f64 a)) (sqrt.f64 (exp.f64 a)) (exp.f64 b))
(fma.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (-.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 a) #s(literal 4 binary64))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (fma.f64 (exp.f64 b) (+.f64 (exp.f64 b) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (+.f64 (exp.f64 b) (exp.f64 a)) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 4 binary64)) (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 2 binary64)))) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (+.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 6 binary64)))) (fma.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (-.f64 (*.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 (exp.f64 a) #s(literal 4 binary64))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (exp.f64 b) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3/2 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (exp.f64 a) #s(literal 3/2 binary64)) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3/2 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (neg.f64 (exp.f64 a)) (/.f64 (exp.f64 a) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(fma.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (/.f64 (exp.f64 b) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (/.f64 (exp.f64 a) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (exp.f64 b) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(fma.f64 (exp.f64 a) (/.f64 (exp.f64 a) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(fma.f64 (exp.f64 a) (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 b) (exp.f64 a))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 b) (exp.f64 a))))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(+.f64 (+.f64 (sinh.f64 b) (exp.f64 a)) (cosh.f64 b))
(+.f64 (+.f64 (sinh.f64 a) (exp.f64 b)) (cosh.f64 a))
(+.f64 (+.f64 (cosh.f64 a) (exp.f64 b)) (sinh.f64 a))
(+.f64 (+.f64 (cosh.f64 b) (exp.f64 a)) (sinh.f64 b))
(+.f64 (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (-.f64 (exp.f64 b) (exp.f64 a)) (exp.f64 b) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 (exp.f64 a) (exp.f64 b))))
(+.f64 (sinh.f64 b) (+.f64 (cosh.f64 b) (exp.f64 a)))
(+.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) (exp.f64 a)))
(+.f64 (sinh.f64 a) (+.f64 (cosh.f64 a) (exp.f64 b)))
(+.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) (exp.f64 b)))
(+.f64 (exp.f64 b) (exp.f64 a))
(+.f64 (exp.f64 a) (exp.f64 b))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 a)))) (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 a)))))
(*.f64 (sqrt.f64 (neg.f64 (exp.f64 a))) (sqrt.f64 (neg.f64 (exp.f64 a))))
(*.f64 (sqrt.f64 (exp.f64 a)) (sqrt.f64 (exp.f64 a)))
(pow.f64 (neg.f64 (exp.f64 a)) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 a)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 a) #s(literal 1 binary64))
(/.f64 (neg.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (neg.f64 (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (pow.f64 (cosh.f64 a) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sinh.f64 a) (cosh.f64 a))))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 a) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 a) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (fabs.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (fabs.f64 (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (pow.f64 (cosh.f64 a) #s(literal 2 binary64)))) (exp.f64 (neg.f64 a)))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 a) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 a) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a))))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a))))) #s(literal 4 binary64))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (exp.f64 a))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 1 binary64) (exp.f64 a))) (sqrt.f64 (exp.f64 (neg.f64 a))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 a) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 a) #s(literal 1 binary64))) (sqrt.f64 (exp.f64 (neg.f64 a))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 a) (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 a) (exp.f64 a)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (*.f64 (cosh.f64 a) (exp.f64 a)) (*.f64 (sinh.f64 a) (exp.f64 a)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 a) (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 a) (exp.f64 a)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 a) (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sinh.f64 a) (exp.f64 a)) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 a) (exp.f64 a)) (*.f64 (sinh.f64 a) (exp.f64 a)))))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (exp.f64 (neg.f64 a)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))) (exp.f64 (neg.f64 a)))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))))) (exp.f64 (log.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (pow.f64 (cosh.f64 a) #s(literal 2 binary64))) (-.f64 (sinh.f64 a) (cosh.f64 a)))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 a) (*.f64 #s(literal 2 binary64) (cosh.f64 a))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 a) (*.f64 #s(literal 2 binary64) (sinh.f64 a))) #s(literal 2 binary64))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 a) (sinh.f64 a) (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (neg.f64 a))))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (sinh.f64 a) (sinh.f64 a) (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (*.f64 (sinh.f64 a) (cosh.f64 a))))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 (neg.f64 a)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)))
(/.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (fma.f64 (sinh.f64 a) (sinh.f64 a) (-.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (pow.f64 (cosh.f64 a) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a))))
(sqrt.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (exp.f64 (neg.f64 a))) (/.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (exp.f64 (neg.f64 a))))
(-.f64 (cosh.f64 a) (sinh.f64 (neg.f64 a)))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (exp.f64 (neg.f64 a))) (/.f64 (pow.f64 (cosh.f64 a) #s(literal 2 binary64)) (exp.f64 (neg.f64 a)))))
(fabs.f64 (neg.f64 (neg.f64 (exp.f64 a))))
(fabs.f64 (neg.f64 (exp.f64 a)))
(fabs.f64 (exp.f64 a))
(exp.f64 (/.f64 (*.f64 #s(literal 2 binary64) a) #s(literal 2 binary64)))
(exp.f64 (*.f64 a #s(literal 1 binary64)))
(exp.f64 a)
(+.f64 (/.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))) (/.f64 (pow.f64 (sinh.f64 a) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) a)) (*.f64 (sinh.f64 a) (cosh.f64 a)))))
(+.f64 (sinh.f64 a) (cosh.f64 a))
(+.f64 (cosh.f64 a) (sinh.f64 a))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 b)))) (sqrt.f64 (neg.f64 (neg.f64 (exp.f64 b)))))
(*.f64 (sqrt.f64 (neg.f64 (exp.f64 b))) (sqrt.f64 (neg.f64 (exp.f64 b))))
(*.f64 (sqrt.f64 (exp.f64 b)) (sqrt.f64 (exp.f64 b)))
(pow.f64 (neg.f64 (exp.f64 b)) #s(literal 1 binary64))
(pow.f64 (exp.f64 (neg.f64 b)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (exp.f64 b) #s(literal 1 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (pow.f64 (cosh.f64 b) #s(literal 2 binary64)))) (neg.f64 (-.f64 (sinh.f64 b) (cosh.f64 b))))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 b) (*.f64 #s(literal 2 binary64) (cosh.f64 b)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 b) (*.f64 #s(literal 2 binary64) (sinh.f64 b)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 b))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 b))))) #s(literal -4 binary64))
(/.f64 (neg.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (neg.f64 (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (neg.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (neg.f64 (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (fabs.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (fabs.f64 (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (fabs.f64 (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (pow.f64 (cosh.f64 b) #s(literal 2 binary64)))) (exp.f64 (neg.f64 b)))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 b) (*.f64 #s(literal 2 binary64) (cosh.f64 b)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 b) (*.f64 #s(literal 2 binary64) (sinh.f64 b)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 b))))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 b))))) #s(literal 4 binary64))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (exp.f64 b))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 1 binary64) (exp.f64 b))) (sqrt.f64 (exp.f64 (neg.f64 b))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 b) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (sqrt.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (sqrt.f64 (*.f64 (exp.f64 b) #s(literal 1 binary64))) (sqrt.f64 (exp.f64 (neg.f64 b))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (*.f64 (cosh.f64 b) (exp.f64 b)) #s(literal 2 binary64)) (pow.f64 (*.f64 (sinh.f64 b) (exp.f64 b)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (*.f64 (cosh.f64 b) (exp.f64 b)) (*.f64 (sinh.f64 b) (exp.f64 b)))))
(/.f64 (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 b) (exp.f64 b)) #s(literal 3 binary64)) (pow.f64 (*.f64 (sinh.f64 b) (exp.f64 b)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (*.f64 (cosh.f64 b) (exp.f64 b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (sinh.f64 b) (exp.f64 b)) #s(literal 2 binary64)) (*.f64 (*.f64 (cosh.f64 b) (exp.f64 b)) (*.f64 (sinh.f64 b) (exp.f64 b)))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))) (exp.f64 (neg.f64 b)))))
(/.f64 (sqrt.f64 (*.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (sqrt.f64 (*.f64 (exp.f64 (neg.f64 b)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (exp.f64 (log.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))))) (exp.f64 (log.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (pow.f64 (cosh.f64 b) #s(literal 2 binary64))) (-.f64 (sinh.f64 b) (cosh.f64 b)))
(/.f64 (fma.f64 #s(literal 2 binary64) (sinh.f64 b) (*.f64 #s(literal 2 binary64) (cosh.f64 b))) #s(literal 2 binary64))
(/.f64 (fma.f64 #s(literal 2 binary64) (cosh.f64 b) (*.f64 #s(literal 2 binary64) (sinh.f64 b))) #s(literal 2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (exp.f64 (neg.f64 b))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (sinh.f64 b) (sinh.f64 b) (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))) (neg.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 b)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 b)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))) (fabs.f64 (fma.f64 (sinh.f64 b) (sinh.f64 b) (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (*.f64 (sinh.f64 b) (cosh.f64 b))))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64)))) (fabs.f64 (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (exp.f64 (neg.f64 b)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)))
(/.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (fma.f64 (sinh.f64 b) (sinh.f64 b) (-.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(/.f64 (+.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (pow.f64 (cosh.f64 b) #s(literal 3 binary64))) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b))))
(sqrt.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (exp.f64 (neg.f64 b))) (/.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (exp.f64 (neg.f64 b))))
(-.f64 (cosh.f64 b) (sinh.f64 (neg.f64 b)))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (exp.f64 (neg.f64 b))) (/.f64 (pow.f64 (cosh.f64 b) #s(literal 2 binary64)) (exp.f64 (neg.f64 b)))))
(fabs.f64 (neg.f64 (neg.f64 (exp.f64 b))))
(fabs.f64 (neg.f64 (exp.f64 b)))
(fabs.f64 (exp.f64 b))
(exp.f64 (/.f64 (*.f64 #s(literal 2 binary64) b) #s(literal 2 binary64)))
(exp.f64 (*.f64 b #s(literal 1 binary64)))
(exp.f64 b)
(+.f64 (/.f64 (pow.f64 (cosh.f64 b) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))) (/.f64 (pow.f64 (sinh.f64 b) #s(literal 3 binary64)) (-.f64 (cosh.f64 (*.f64 #s(literal 2 binary64) b)) (*.f64 (sinh.f64 b) (cosh.f64 b)))))
(+.f64 (sinh.f64 b) (cosh.f64 b))
(+.f64 (cosh.f64 b) (sinh.f64 b))

eval34.0ms (0.3%)

Memory
21.4MiB live, 66.7MiB allocated; 4ms collecting garbage
Compiler

Compiled 7 882 to 1 233 computations (84.4% saved)

prune10.0ms (0.1%)

Memory
26.2MiB live, 26.2MiB allocated; 0ms collecting garbage
Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New2819290
Fresh000
Picked011
Done000
Total28110291
Accuracy
100.0%
Counts
291 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
44.1%
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64)))) (log.f64 (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b)))))
49.1%
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
48.8%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
48.4%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
47.6%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
45.4%
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
99.8%
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
99.1%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
Compiler

Compiled 290 to 218 computations (24.8% saved)

simplify123.0ms (1.1%)

Memory
-8.1MiB live, 136.9MiB allocated; 32ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 (exp.f64 a) #s(literal 1 binary64))
cost-diff0
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
cost-diff0
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
cost-diff0
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
cost-diff0
(exp.f64 a)
cost-diff0
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
cost-diff0
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
cost-diff0
(exp.f64 b)
cost-diff0
#s(approx (exp a) #s(literal 1 binary64))
cost-diff0
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
cost-diff0
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
cost-diff0
(exp.f64 a)
cost-diff0
(log1p.f64 (exp.f64 a))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
cost-diff0
(*.f64 #s(literal 1/2 binary64) b)
cost-diff0
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
cost-diff0
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
033282
057282
182282
2176282
3514282
42387282
08228282
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 #s(literal 1/2 binary64) b)
#s(literal 1/2 binary64)
b
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
#s(literal 1 binary64)
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(exp.f64 a)
a
(/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))
#s(literal 2 binary64)
(log1p.f64 (exp.f64 a))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
(log1p.f64 (exp.f64 a))
(exp.f64 a)
a
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
(exp.f64 b)
b
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(exp.f64 a)
a
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64))
#s(literal 1/2 binary64)
b
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
b
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(exp.f64 a)
a
#s(literal 1 binary64)
(log1p.f64 (exp.f64 a))
Outputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 #s(literal 1/2 binary64) b)
#s(literal 1/2 binary64)
b
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
#s(literal 1 binary64)
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(exp.f64 a)
a
(/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))
#s(literal 2 binary64)
(log1p.f64 (exp.f64 a))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
(log1p.f64 (exp.f64 a))
(exp.f64 a)
a
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
(+.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
(exp.f64 b)
b
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(log.f64 (+.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(+.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))
(exp.f64 a)
a
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64))
#s(literal 1/2 binary64)
b
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (-.f64 #s(literal -1 binary64) (exp.f64 a)))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (-.f64 #s(literal -1 binary64) (exp.f64 a))))
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
b
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(exp.f64 a)
a
#s(literal 1 binary64)
(log1p.f64 (exp.f64 a))

localize216.0ms (2%)

Memory
-2.3MiB live, 188.0MiB allocated; 13ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(+.f64 (exp.f64 a) #s(literal 1 binary64))
accuracy0.01171875
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
accuracy0.015625
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
accuracy0.564691564932345
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
accuracy0.0
(exp.f64 a)
accuracy0.0078125
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
accuracy0.9369987374160655
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
accuracy32.56586843150587
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
accuracy0.0
(exp.f64 b)
accuracy0.0078125
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
accuracy32.56586843150587
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
accuracy35.132814999671105
#s(approx (exp a) #s(literal 1 binary64))
accuracy0.0
(log1p.f64 (exp.f64 a))
accuracy0.0
(exp.f64 a)
accuracy34.951223580589364
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
accuracy0.0078125
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
accuracy0.01171875
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
accuracy0.021816259768442016
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
accuracy0.101562650818705
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
Samples
126.0ms143×2valid
66.0ms113×0valid
Compiler

Compiled 224 to 27 computations (87.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 162.0ms
ival-add: 32.0ms (19.8% of total)
ival-log: 29.0ms (18% of total)
adjust: 27.0ms (16.7% of total)
ival-sub: 19.0ms (11.8% of total)
ival-exp: 16.0ms (9.9% of total)
exact: 11.0ms (6.8% of total)
ival-div: 10.0ms (6.2% of total)
ival-mult: 10.0ms (6.2% of total)
ival-pow2: 5.0ms (3.1% of total)
ival-log1p: 2.0ms (1.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series104.0ms (1%)

Memory
1.8MiB live, 139.0MiB allocated; 18ms collecting garbage
Counts
20 → 72
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 #s(literal 1/2 binary64) b)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
(log1p.f64 (exp.f64 a))
(exp.f64 a)
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
#s(approx (exp a) #s(literal 1 binary64))
(exp.f64 b)
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
Outputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ 1/2 (* 1/8 b))
(+ 1/2 (+ (* -1/4 a) (* 1/8 b)))
(+ 1/2 (+ (* 1/8 b) (* a (- (* -1/32 (* a b)) 1/4))))
(+ 1/2 (+ (* 1/8 b) (* a (- (* a (+ (* -1/32 b) (* 1/48 a))) 1/4))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(+ (log 2) (* 1/2 b))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(* 1/2 b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
2
(+ 2 a)
(+ 2 (* a (+ 1 (* 1/2 a))))
(+ 2 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
1/4
(+ 1/4 (* -1/16 (pow a 2)))
(+ 1/4 (* (pow a 2) (- (* 1/96 (pow a 2)) 1/16)))
(+ 1/4 (* (pow a 2) (- (* (pow a 2) (+ 1/96 (* -17/11520 (pow a 2)))) 1/16)))
1/2
(+ 1/2 (* -1/4 a))
(+ 1/2 (* a (- (* 1/48 (pow a 2)) 1/4)))
(+ 1/2 (* a (- (* (pow a 2) (+ 1/48 (* -1/480 (pow a 2)))) 1/4)))
(log (+ (exp a) (exp b)))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))
(log (+ 1 (exp a)))
(exp a)
(+ (exp a) (exp b))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(/ b (+ 1 (exp a)))
(+ 1 (exp a))
(- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))
(/ 1 (+ 1 (exp a)))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* b (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(exp b)
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* -1 (* b (- (* -1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a)))))))
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
Calls

6 calls:

TimeVariablePointExpression
28.0ms
a
@-inf
((log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp b) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (+ (exp a) 1) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2))) (/ 1 (+ (exp a) 1)))
24.0ms
a
@inf
((log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp b) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (+ (exp a) 1) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2))) (/ 1 (+ (exp a) 1)))
22.0ms
a
@0
((log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp b) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (+ (exp a) 1) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2))) (/ 1 (+ (exp a) 1)))
14.0ms
b
@inf
((log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp b) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (+ (exp a) 1) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2))) (/ 1 (+ (exp a) 1)))
10.0ms
b
@-inf
((log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp b) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (+ (exp a) 1) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2))) (/ 1 (+ (exp a) 1)))

simplify250.0ms (2.3%)

Memory
-14.7MiB live, 170.5MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02651060
18721037
231601019
08549895
Stop Event
iter limit
node limit
Counts
72 → 72
Calls
Call 1
Inputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ 1/2 (* 1/8 b))
(+ 1/2 (+ (* -1/4 a) (* 1/8 b)))
(+ 1/2 (+ (* 1/8 b) (* a (- (* -1/32 (* a b)) 1/4))))
(+ 1/2 (+ (* 1/8 b) (* a (- (* a (+ (* -1/32 b) (* 1/48 a))) 1/4))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(+ (log 2) (* 1/2 b))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(* 1/2 b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
2
(+ 2 a)
(+ 2 (* a (+ 1 (* 1/2 a))))
(+ 2 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
1/4
(+ 1/4 (* -1/16 (pow a 2)))
(+ 1/4 (* (pow a 2) (- (* 1/96 (pow a 2)) 1/16)))
(+ 1/4 (* (pow a 2) (- (* (pow a 2) (+ 1/96 (* -17/11520 (pow a 2)))) 1/16)))
1/2
(+ 1/2 (* -1/4 a))
(+ 1/2 (* a (- (* 1/48 (pow a 2)) 1/4)))
(+ 1/2 (* a (- (* (pow a 2) (+ 1/48 (* -1/480 (pow a 2)))) 1/4)))
(log (+ (exp a) (exp b)))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))
(log (+ 1 (exp a)))
(exp a)
(+ (exp a) (exp b))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(/ b (+ 1 (exp a)))
(+ 1 (exp a))
(- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))
(/ 1 (+ 1 (exp a)))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* b (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(exp b)
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* -1 (* b (- (* -1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a)))))))
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
Outputs
(log (+ 1 (exp b)))
(log1p.f64 (exp.f64 b))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+.f64 (/.f64 a (+.f64 #s(literal 1 binary64) (exp.f64 b))) (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) a) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) a) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) a (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64)) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 b b) #s(literal -1/32 binary64) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 b (fma.f64 #s(literal 1/48 binary64) a (*.f64 #s(literal -1/32 binary64) b)) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ 1/2 (* 1/8 b))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(+ 1/2 (+ (* -1/4 a) (* 1/8 b)))
(fma.f64 #s(literal -1/4 binary64) a (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)))
(+ 1/2 (+ (* 1/8 b) (* a (- (* -1/32 (* a b)) 1/4))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/32 binary64) b) a) #s(literal 1/4 binary64)) a (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)))
(+ 1/2 (+ (* 1/8 b) (* a (- (* a (+ (* -1/32 b) (* 1/48 a))) 1/4))))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/48 binary64) a (*.f64 #s(literal -1/32 binary64) b)) a) #s(literal 1/4 binary64)) a (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)))
(log 2)
(log.f64 #s(literal 2 binary64))
(+ (log 2) (* 1/2 a))
(fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
1
#s(literal 1 binary64)
(+ 1 a)
(+.f64 #s(literal 1 binary64) a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ 1 (exp b))
(+.f64 #s(literal 1 binary64) (exp.f64 b))
(+ 1 (+ a (exp b)))
(+.f64 (+.f64 (exp.f64 b) a) #s(literal 1 binary64))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
(+ (log 2) (* 1/2 b))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64)) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64))) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) a) b #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(* 1/2 b)
(*.f64 #s(literal 1/2 binary64) b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(*.f64 b (fma.f64 #s(literal -1/4 binary64) a #s(literal 1/2 binary64)))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(*.f64 b (fma.f64 #s(literal -1/4 binary64) a #s(literal 1/2 binary64)))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(fma.f64 (fma.f64 (*.f64 (*.f64 b a) #s(literal 1/48 binary64)) a (*.f64 #s(literal -1/4 binary64) b)) a (*.f64 #s(literal 1/2 binary64) b))
2
#s(literal 2 binary64)
(+ 2 a)
(+.f64 #s(literal 2 binary64) a)
(+ 2 (* a (+ 1 (* 1/2 a))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a #s(literal 2 binary64))
(+ 2 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a #s(literal 2 binary64))
1/4
#s(literal 1/4 binary64)
(+ 1/4 (* -1/16 (pow a 2)))
(fma.f64 #s(literal -1/16 binary64) (*.f64 a a) #s(literal 1/4 binary64))
(+ 1/4 (* (pow a 2) (- (* 1/96 (pow a 2)) 1/16)))
(fma.f64 (-.f64 (*.f64 #s(literal 1/96 binary64) (*.f64 a a)) #s(literal 1/16 binary64)) (*.f64 a a) #s(literal 1/4 binary64))
(+ 1/4 (* (pow a 2) (- (* (pow a 2) (+ 1/96 (* -17/11520 (pow a 2)))) 1/16)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -17/11520 binary64) (*.f64 a a) #s(literal 1/96 binary64)) a) a) #s(literal 1/16 binary64)) (*.f64 a a) #s(literal 1/4 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* -1/4 a))
(fma.f64 #s(literal -1/4 binary64) a #s(literal 1/2 binary64))
(+ 1/2 (* a (- (* 1/48 (pow a 2)) 1/4)))
(fma.f64 (-.f64 (*.f64 (*.f64 a a) #s(literal 1/48 binary64)) #s(literal 1/4 binary64)) a #s(literal 1/2 binary64))
(+ 1/2 (* a (- (* (pow a 2) (+ 1/48 (* -1/480 (pow a 2)))) 1/4)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/480 binary64) (*.f64 a a) #s(literal 1/48 binary64)) a) a) #s(literal 1/4 binary64)) a #s(literal 1/2 binary64))
(log (+ (exp a) (exp b)))
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
(+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))
(fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))))
(log (+ 1 (exp a)))
(log1p.f64 (exp.f64 a))
(exp a)
(exp.f64 a)
(+ (exp a) (exp b))
(+.f64 (exp.f64 b) (exp.f64 a))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+.f64 (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))) (log1p.f64 (exp.f64 a)))
(/ b (+ 1 (exp a)))
(/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 (exp a))
(+.f64 #s(literal 1 binary64) (exp.f64 a))
(- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64))))
(/ 1 (+ 1 (exp a)))
(/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) b) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) b (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
(+ 1 (+ b (exp a)))
(+.f64 (+.f64 b (exp.f64 a)) #s(literal 1 binary64))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 b)
(+.f64 #s(literal 1 binary64) b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(*.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(*.f64 b (fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (log1p.f64 (exp.f64 a)) (*.f64 b b))) b (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))))
(* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b))
(* b (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))))
(exp b)
(exp.f64 b)
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(fma.f64 (/.f64 (log1p.f64 (exp.f64 a)) b) b (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (-.f64 (/.f64 (log1p.f64 (exp.f64 a)) (neg.f64 b)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) (neg.f64 b))) (*.f64 b b))
(* -1 (* b (- (* -1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a)))))))
(*.f64 (neg.f64 b) (-.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal -1/2 binary64)) (/.f64 #s(literal 1 binary64) (fma.f64 b (exp.f64 a) b))))
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
(*.f64 (neg.f64 b) (-.f64 (/.f64 (log1p.f64 (exp.f64 a)) (neg.f64 b)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))))

rewrite191.0ms (1.8%)

Memory
27.8MiB live, 216.7MiB allocated; 41ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
033226
057218
1222218
21833210
08255210
Stop Event
iter limit
node limit
iter limit
Counts
20 → 339
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 #s(literal 1/2 binary64) b)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
(log1p.f64 (exp.f64 a))
(exp.f64 a)
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
#s(approx (exp a) #s(literal 1 binary64))
(exp.f64 b)
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
Outputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b (log1p.f64 (exp.f64 a))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a))) (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64))) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64))) (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a))))
(/.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 3 binary64))) (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 b (log1p.f64 (exp.f64 a)))))))
(/.f64 (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 3 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64))))
(fma.f64 (log1p.f64 (exp.f64 a)) #s(literal 1 binary64) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b))
(fma.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b (log1p.f64 (exp.f64 a)))
(fma.f64 #s(literal 1 binary64) (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b))
(fma.f64 b (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (log1p.f64 (exp.f64 a)))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))))
(-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (neg.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) b))
(-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (neg.f64 b) (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b)) (pow.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b) (log1p.f64 (exp.f64 a)))
(+.f64 (log1p.f64 (exp.f64 a)) (*.f64 (fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) b))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (*.f64 (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (*.f64 (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b))))) (*.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b))))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)))) (*.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b))))) (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal -1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal -1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal -1 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal -1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) #s(literal 1 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal -1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal 1 binary64))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal -1 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (exp.f64 a) #s(literal 1 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (fma.f64 #s(literal -1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (fma.f64 #s(literal -1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal -1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (fma.f64 #s(literal -1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (fma.f64 #s(literal 1 binary64) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (neg.f64 (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)))) (neg.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (-.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b))))))
(fma.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (fabs.f64 (pow.f64 (expm1.f64 (+.f64 a a)) #s(literal -1 binary64))) (fabs.f64 (expm1.f64 a)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (fabs.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal -1 binary64))) (fabs.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (fabs.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (fabs.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1 binary64)) (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1/2 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (expm1.f64 (+.f64 a a)) #s(literal -1 binary64)) (expm1.f64 a) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal -1 binary64)) (-.f64 #s(literal 1 binary64) (exp.f64 a)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal 1/2 binary64)) b (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(fma.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 1/2 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(fma.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(fma.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal 1 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(fma.f64 b (*.f64 #s(literal 1/2 binary64) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(-.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (-.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (neg.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (*.f64 #s(literal 1/2 binary64) b)))
(-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (neg.f64 (*.f64 #s(literal 1/2 binary64) b)) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 #s(literal -1/2 binary64) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b)))
(+.f64 (/.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))))) (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (fma.f64 (pow.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) b) #s(literal 2 binary64)) #s(literal 1/4 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))))))
(+.f64 (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(+.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (*.f64 #s(literal 1/2 binary64) b)))
(*.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 1 binary64))
(*.f64 #s(literal 1/2 binary64) (*.f64 b #s(literal 1 binary64)))
(*.f64 #s(literal 1/2 binary64) b)
(*.f64 b #s(literal 1/2 binary64))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
(*.f64 (log1p.f64 (exp.f64 a)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (log1p.f64 (exp.f64 a)))
(log1p.f64 (exp.f64 a))
(fma.f64 (log1p.f64 (exp.f64 a)) #s(literal 1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal 1 binary64) (log1p.f64 (exp.f64 a)) #s(literal 0 binary64))
(-.f64 (log.f64 (*.f64 (expm1.f64 (+.f64 a a)) #s(literal 1 binary64))) (log.f64 (expm1.f64 a)))
(-.f64 (log.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 1 binary64))) (log.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(-.f64 (log.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (log.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(-.f64 (log.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (log1p.f64 (*.f64 (exp.f64 a) (expm1.f64 a))))
(-.f64 (log.f64 (neg.f64 (expm1.f64 (+.f64 a a)))) (log.f64 (neg.f64 (expm1.f64 a))))
(-.f64 (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)))) (log.f64 (neg.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)))) (log.f64 (neg.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))))
(-.f64 (log.f64 (expm1.f64 (+.f64 a a))) (log.f64 (expm1.f64 a)))
(-.f64 (log.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(-.f64 (log1p.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (log.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(-.f64 (log1p.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (log1p.f64 (*.f64 (exp.f64 a) (expm1.f64 a))))
(+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(+.f64 #s(literal 0 binary64) (log1p.f64 (exp.f64 a)))
(+.f64 (log1p.f64 (exp.f64 a)) #s(literal 0 binary64))
(log.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(*.f64 (exp.f64 a) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 a))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal 4 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64))) (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (sinh.f64 a)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)))
(fma.f64 (cosh.f64 a) #s(literal 1 binary64) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 a) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(exp.f64 a)
(+.f64 (*.f64 (cosh.f64 a) #s(literal 1 binary64)) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 a)) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(+.f64 (sinh.f64 a) (cosh.f64 a))
(+.f64 (cosh.f64 a) (sinh.f64 a))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64)))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64)))) (log.f64 (fma.f64 (exp.f64 b) (exp.f64 b) (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64)))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64)))) (log.f64 (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(log.f64 (+.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))) (*.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (*.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))))
(/.f64 (fma.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 (exp.f64 b) #s(literal 3 binary64)))) (*.f64 (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (exp.f64 b) #s(literal 2 binary64))) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(/.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64))) (fma.f64 (exp.f64 b) (exp.f64 b) (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (exp.f64 b) #s(literal 3 binary64))) (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 2 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))))
(+.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (cosh.f64 b)) (sinh.f64 b))
(+.f64 (/.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (exp.f64 b) #s(literal 3 binary64)) (fma.f64 (exp.f64 b) (-.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 b) (+.f64 (sinh.f64 b) #s(approx (exp a) #s(literal 1 binary64))))
(+.f64 (exp.f64 b) #s(approx (exp a) #s(literal 1 binary64)))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b))
#s(approx (exp a) #s(literal 1 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 b)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 b)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 b)))) #s(literal 4 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 b) #s(literal 3 binary64)) (pow.f64 (sinh.f64 b) #s(literal 3 binary64))) (fma.f64 (cosh.f64 b) (cosh.f64 b) (-.f64 (pow.f64 (sinh.f64 b) #s(literal 2 binary64)) (*.f64 (cosh.f64 b) (sinh.f64 b)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)))
(exp.f64 b)
(+.f64 (sinh.f64 b) (cosh.f64 b))
(+.f64 (cosh.f64 b) (sinh.f64 b))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))) (*.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)))) (*.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(/.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64))) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))
(fma.f64 (exp.f64 a) #s(literal 1 binary64) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(fma.f64 #s(literal 1 binary64) (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))) (/.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(+.f64 (+.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (cosh.f64 a)) (sinh.f64 a))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
#s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
(/.f64 (-.f64 (*.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))) (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))))
(/.f64 (fma.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64))) (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
(/.f64 (+.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)) (*.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))))
(/.f64 (+.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))))
(fma.f64 (/.f64 b (expm1.f64 (+.f64 a a))) (expm1.f64 a) (log1p.f64 (exp.f64 a)))
(fma.f64 (/.f64 b (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (exp.f64 a)) (log1p.f64 (exp.f64 a)))
(fma.f64 (/.f64 b (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) (log1p.f64 (exp.f64 a)))
(fma.f64 (/.f64 b (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) (log1p.f64 (exp.f64 a)))
(fma.f64 (log1p.f64 (exp.f64 a)) #s(literal 1 binary64) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(fma.f64 #s(literal 1 binary64) (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(-.f64 (/.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))))
(+.f64 (/.f64 (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64)))))
(+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a)))
(+.f64 (log1p.f64 (exp.f64 a)) (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 (/.f64 b (expm1.f64 (+.f64 a a))) (expm1.f64 a))
(*.f64 (/.f64 b (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (exp.f64 a)))
(*.f64 (/.f64 b (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(*.f64 (/.f64 b (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))
(/.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (neg.f64 b) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(neg.f64 (/.f64 (neg.f64 b) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(neg.f64 (/.f64 b (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(*.f64 (fabs.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (fabs.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 1 binary64))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (expm1.f64 a)) (*.f64 (expm1.f64 a) #s(literal 1 binary64))) (pow.f64 (expm1.f64 a) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (exp.f64 a))) (*.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (pow.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) (*.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal 1 binary64))) (pow.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal 2 binary64)))
(/.f64 (fma.f64 #s(literal 1 binary64) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) (*.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (pow.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (fabs.f64 (*.f64 (expm1.f64 (+.f64 a a)) #s(literal 1 binary64))) (fabs.f64 (expm1.f64 a)))
(/.f64 (fabs.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 1 binary64))) (fabs.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(/.f64 (fabs.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(/.f64 (fabs.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))))
(/.f64 (fabs.f64 (neg.f64 (expm1.f64 (+.f64 a a)))) (fabs.f64 (neg.f64 (expm1.f64 a))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))) (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(/.f64 (fabs.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)))) (fabs.f64 (neg.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))))
(/.f64 (fabs.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)))) (fabs.f64 (neg.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))))
(/.f64 (fabs.f64 (expm1.f64 (+.f64 a a))) (fabs.f64 (expm1.f64 a)))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (fabs.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(/.f64 (fabs.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))))
(/.f64 (exp.f64 (log.f64 (expm1.f64 (+.f64 a a)))) (exp.f64 (log.f64 (expm1.f64 a))))
(/.f64 (exp.f64 (log.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))) (exp.f64 (log.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(/.f64 (exp.f64 (log1p.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (exp.f64 (log.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))))
(/.f64 (exp.f64 (log1p.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (exp.f64 (log1p.f64 (*.f64 (exp.f64 a) (expm1.f64 a)))))
(/.f64 (*.f64 (expm1.f64 (+.f64 a a)) #s(literal 1 binary64)) (expm1.f64 a))
(/.f64 (*.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (exp.f64 a)))
(/.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(/.f64 (*.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))
(/.f64 (neg.f64 (expm1.f64 (+.f64 a a))) (neg.f64 (expm1.f64 a)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))))
(/.f64 (expm1.f64 (+.f64 a a)) (expm1.f64 a))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (exp.f64 a)))
(/.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(/.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))
(fma.f64 (exp.f64 a) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (exp.f64 a) #s(literal 1 binary64))
(sqrt.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (expm1.f64 a)) (pow.f64 (expm1.f64 a) #s(literal -1 binary64)))
(-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal -1 binary64)) (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(fabs.f64 (-.f64 (pow.f64 (expm1.f64 a) #s(literal -1 binary64)) (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (expm1.f64 a))))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (exp.f64 a))) (pow.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal -1 binary64))))
(fabs.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(fabs.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(exp.f64 (log1p.f64 (exp.f64 a)))
(+.f64 (cosh.f64 (log1p.f64 (exp.f64 a))) (sinh.f64 (log1p.f64 (exp.f64 a))))
(+.f64 (+.f64 #s(literal 1 binary64) (cosh.f64 a)) (sinh.f64 a))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))) (pow.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal -1 binary64)))
(+.f64 (pow.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))))
(+.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) #s(literal 1 binary64)))
(+.f64 (exp.f64 a) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (exp.f64 a))
(/.f64 (-.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))) (*.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))) (*.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (-.f64 (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))) (*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 6 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal -1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 1 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal -1 binary64)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) #s(literal -1 binary64))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) #s(literal 1 binary64))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))))
(/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) #s(literal 1 binary64))) (*.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal -1 binary64)))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (-.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (neg.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))))))
(/.f64 (-.f64 #s(literal -1 binary64) (*.f64 #s(literal -1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal -1 binary64) (*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal -1 binary64))) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(/.f64 (/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)))) (neg.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)))) (neg.f64 (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal 1 binary64))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64))))
(/.f64 (-.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1 binary64))) (*.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64))) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))
(/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64))) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64))))
(/.f64 (-.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)))
(-.f64 (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))) (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))))
(-.f64 (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64)) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))) (/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -6 binary64)) (+.f64 (+.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -4 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -3 binary64))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))))
(-.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))
(*.f64 (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (neg.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))))
(*.f64 (fabs.f64 (pow.f64 (expm1.f64 (+.f64 a a)) #s(literal -1 binary64))) (fabs.f64 (expm1.f64 a)))
(*.f64 (fabs.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal -1 binary64))) (fabs.f64 (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a)))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64))) (fabs.f64 (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))) (fabs.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1 binary64)) (pow.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(*.f64 (pow.f64 (expm1.f64 (+.f64 a a)) #s(literal -1 binary64)) (expm1.f64 a))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) #s(literal -1 binary64)) (-.f64 #s(literal 1 binary64) (exp.f64 a)))
(*.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (fma.f64 (exp.f64 a) (exp.f64 a) (-.f64 #s(literal 1 binary64) (exp.f64 a))))
(*.f64 (pow.f64 (+.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (fma.f64 (exp.f64 a) (expm1.f64 a) #s(literal 1 binary64)))
(*.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(pow.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(/.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 3 binary64)))
(/.f64 #s(literal 1 binary64) (fabs.f64 (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))))
(/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))
(neg.f64 (/.f64 #s(literal -1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(sqrt.f64 (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal -2 binary64)))
(fabs.f64 (/.f64 #s(literal -1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))))
(fabs.f64 (neg.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))))
(fabs.f64 (exp.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))
(exp.f64 (*.f64 (*.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) #s(literal -1/2 binary64)))
(exp.f64 (neg.f64 (log1p.f64 (exp.f64 a))))
(+.f64 (cosh.f64 (neg.f64 (log1p.f64 (exp.f64 a)))) (sinh.f64 (neg.f64 (log1p.f64 (exp.f64 a)))))

eval248.0ms (2.3%)

Memory
-23.0MiB live, 163.7MiB allocated; 25ms collecting garbage
Compiler

Compiled 32 824 to 3 410 computations (89.6% saved)

prune26.0ms (0.2%)

Memory
11.4MiB live, 58.1MiB allocated; 2ms collecting garbage
Pruning

18 alts after pruning (14 fresh and 4 done)

PrunedKeptTotal
New80211813
Fresh134
Picked235
Done011
Total80518823
Accuracy
100.0%
Counts
823 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.1%
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
48.8%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
48.4%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
47.6%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
44.5%
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
99.1%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
44.9%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
44.8%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
53.7%
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
41.7%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
43.5%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
44.7%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
45.3%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.1%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
Compiler

Compiled 597 to 447 computations (25.1% saved)

simplify111.0ms (1%)

Memory
6.6MiB live, 99.8MiB allocated; 12ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
cost-diff0
(exp.f64 a)
cost-diff0
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
cost-diff0
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
cost-diff0
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
cost-diff0
(log.f64 #s(literal 2 binary64))
cost-diff0
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
cost-diff0
#s(approx (exp a) #s(literal 1 binary64))
cost-diff0
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
cost-diff0
(*.f64 #s(literal 1/2 binary64) b)
cost-diff0
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
cost-diff0
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045267
063267
192267
2186267
3513267
42326267
08242263
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 #s(literal 1/2 binary64) b)
#s(literal 1/2 binary64)
b
(log1p.f64 (exp.f64 a))
(exp.f64 a)
a
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
#s(literal 1/2 binary64)
b
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
#s(literal 1/8 binary64)
b
#s(literal 1/2 binary64)
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(exp.f64 a)
a
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
(+.f64 #s(literal 1 binary64) b)
#s(literal 1 binary64)
b
Outputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))))
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
(+.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)))
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 #s(literal 1/2 binary64) b)
#s(literal 1/2 binary64)
b
(log1p.f64 (exp.f64 a))
(exp.f64 a)
a
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
#s(literal 1/2 binary64)
b
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
#s(literal 1/8 binary64)
b
#s(literal 1/2 binary64)
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(log.f64 (+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)))
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a))
(exp.f64 a)
a
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
(+.f64 #s(literal 1 binary64) b)
#s(literal 1 binary64)
b

localize174.0ms (1.6%)

Memory
29.3MiB live, 261.4MiB allocated; 22ms collecting garbage
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 a)
accuracy0.0078125
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
accuracy1.4530874231467081
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
accuracy32.56586843150587
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
accuracy0.0
(log.f64 #s(literal 2 binary64))
accuracy0.01953125
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
accuracy0.101562650818705
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
accuracy34.89389144400431
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
accuracy0.0
(log.f64 #s(literal 2 binary64))
accuracy0.0234375
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
accuracy0.564691564932345
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
accuracy34.83362605099694
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
accuracy0.0
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
accuracy34.951223580589364
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
accuracy35.132814999671105
#s(approx (exp a) #s(literal 1 binary64))
accuracy0.0
(exp.f64 a)
accuracy0.015625
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
accuracy0.564691564932345
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
accuracy29.50550555892645
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
Samples
85.0ms73×2valid
43.0ms67×1valid
25.0ms116×0valid
Compiler

Compiled 164 to 32 computations (80.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 127.0ms
ival-log: 37.0ms (29% of total)
adjust: 27.0ms (21.2% of total)
ival-add: 17.0ms (13.3% of total)
ival-exp: 16.0ms (12.6% of total)
ival-mult: 10.0ms (7.8% of total)
ival-div: 9.0ms (7.1% of total)
ival-pow2: 7.0ms (5.5% of total)
ival-sub: 2.0ms (1.6% of total)
ival-log1p: 2.0ms (1.6% of total)
exact: 1.0ms (0.8% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series80.0ms (0.7%)

Memory
-6.8MiB live, 143.1MiB allocated; 28ms collecting garbage
Counts
19 → 60
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 #s(literal 1/2 binary64) b)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(log.f64 #s(literal 2 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(exp.f64 a)
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
Outputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ (log 2) (* 1/2 b))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(* 1/2 b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(log (+ (exp a) (exp b)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(/ b (+ 1 (exp a)))
(log (+ 1 (exp a)))
(exp a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (exp a) (exp b))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
1/2
(+ 1/2 (* 1/8 b))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(* b (+ 1/2 (/ (log 2) b)))
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* 1/8 (pow b 2))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(* 1/8 b)
(* b (+ 1/8 (* 1/2 (/ 1 b))))
(exp b)
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
(* -1 (* b (- (* -1 (/ (log 2) b)) 1/2)))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
Calls

6 calls:

TimeVariablePointExpression
29.0ms
b
@inf
((log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (+ (* 1/2 b) (log 2)) (log 2) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (+ (* 1/8 b) 1/2) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
18.0ms
a
@inf
((log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (+ (* 1/2 b) (log 2)) (log 2) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (+ (* 1/8 b) 1/2) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
16.0ms
a
@-inf
((log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (+ (* 1/2 b) (log 2)) (log 2) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (+ (* 1/8 b) 1/2) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
10.0ms
b
@-inf
((log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (+ (* 1/2 b) (log 2)) (log 2) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (+ (* 1/8 b) 1/2) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))
5.0ms
b
@0
((log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (/ b (+ (exp a) 1)) (* 1/2 b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (log (+ (exp a) (exp b))) (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (+ (* 1/2 b) (log 2)) (log 2) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (+ (* 1/8 b) 1/2) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b))

simplify158.0ms (1.5%)

Memory
-16.9MiB live, 170.0MiB allocated; 15ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0235869
1805846
23020824
08362719
Stop Event
iter limit
node limit
Counts
60 → 60
Calls
Call 1
Inputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ (log 2) (* 1/2 b))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(* 1/2 b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(log (+ (exp a) (exp b)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(/ b (+ 1 (exp a)))
(log (+ 1 (exp a)))
(exp a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(+ (exp a) (exp b))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
1/2
(+ 1/2 (* 1/8 b))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(* b (+ 1/2 (/ (log 2) b)))
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* 1/8 (pow b 2))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(* 1/8 b)
(* b (+ 1/8 (* 1/2 (/ 1 b))))
(exp b)
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
(* -1 (* b (- (* -1 (/ (log 2) b)) 1/2)))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
Outputs
(log (+ 1 (exp b)))
(log1p.f64 (exp.f64 b))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+.f64 (/.f64 a (+.f64 #s(literal 1 binary64) (exp.f64 b))) (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) a) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) a) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) a (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ (log 2) (* 1/2 b))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* 1/2 b) (* a (- 1/2 (* 1/4 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64)) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- 1/8 (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64))) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* 1/2 b) (* a (- (+ 1/2 (* a (- (+ 1/8 (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b)))))) (+ (* -1/8 b) (* 1/8 b))))) (* 1/4 b)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) b) a #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(* 1/2 b)
(*.f64 #s(literal 1/2 binary64) b)
(+ (* -1/4 (* a b)) (* 1/2 b))
(*.f64 b (fma.f64 #s(literal -1/4 binary64) a #s(literal 1/2 binary64)))
(+ (* 1/2 b) (* a (- (* -1 (* a (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(*.f64 b (fma.f64 #s(literal -1/4 binary64) a #s(literal 1/2 binary64)))
(+ (* 1/2 b) (* a (- (* a (- (* -1 (* a (+ (* -1/2 (+ (* -1/8 b) (* 1/8 b))) (+ (* -1/16 b) (* 1/24 b))))) (+ (* -1/8 b) (* 1/8 b)))) (* 1/4 b))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/48 binary64) (*.f64 b a)) a (*.f64 #s(literal -1/4 binary64) b)) a (*.f64 #s(literal 1/2 binary64) b))
(log 2)
(log.f64 #s(literal 2 binary64))
(+ (log 2) (* 1/2 a))
(fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
1
#s(literal 1 binary64)
(+ 1 a)
(+.f64 #s(literal 1 binary64) a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64)) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 b b) #s(literal -1/32 binary64) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 b (fma.f64 #s(literal 1/48 binary64) a (*.f64 #s(literal -1/32 binary64) b)) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ 1 (exp b))
(+.f64 #s(literal 1 binary64) (exp.f64 b))
(+ 1 (+ a (exp b)))
(+.f64 (+.f64 (exp.f64 b) a) #s(literal 1 binary64))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
(log (+ (exp a) (exp b)))
(log.f64 (+.f64 (exp.f64 b) (exp.f64 a)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+.f64 (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))) (log1p.f64 (exp.f64 a)))
(/ b (+ 1 (exp a)))
(/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(log (+ 1 (exp a)))
(log1p.f64 (exp.f64 a))
(exp a)
(exp.f64 a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
(+ (exp a) (exp b))
(+.f64 (exp.f64 b) (exp.f64 a))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) b) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) b (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/8 b))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(+ 1 (exp a))
(+.f64 #s(literal 1 binary64) (exp.f64 a))
(+ 1 (+ b (exp a)))
(+.f64 (+.f64 b (exp.f64 a)) #s(literal 1 binary64))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 b)
(+.f64 #s(literal 1 binary64) b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(* b (+ (/ 1 (+ 1 (exp a))) (/ (log (+ 1 (exp a))) b)))
(fma.f64 (/.f64 (log1p.f64 (exp.f64 a)) b) b (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))))
(* b (+ 1/2 (/ (log 2) b)))
(*.f64 (+.f64 (/.f64 (log.f64 #s(literal 2 binary64)) b) #s(literal 1/2 binary64)) b)
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(*.f64 (*.f64 (*.f64 b b) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 b (exp.f64 a) b))) (*.f64 b b))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 (log1p.f64 (exp.f64 a)) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b)) (*.f64 b b))
(* 1/8 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(*.f64 b (fma.f64 (+.f64 #s(literal 1/8 binary64) (/.f64 (/.f64 (log.f64 #s(literal 2 binary64)) b) b)) b #s(literal 1/2 binary64)))
(* 1/8 b)
(*.f64 #s(literal 1/8 binary64) b)
(* b (+ 1/8 (* 1/2 (/ 1 b))))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(exp b)
(exp.f64 b)
(* -1 (* b (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a))))))
(*.f64 (neg.f64 b) (-.f64 (/.f64 (log1p.f64 (exp.f64 a)) (neg.f64 b)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))))
(* -1 (* b (- (* -1 (/ (log 2) b)) 1/2)))
(*.f64 (neg.f64 b) (-.f64 (/.f64 (log.f64 #s(literal 2 binary64)) (neg.f64 b)) #s(literal 1/2 binary64)))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (-.f64 (/.f64 (log1p.f64 (exp.f64 a)) (neg.f64 b)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) (neg.f64 b))) (*.f64 b b))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
(*.f64 b (fma.f64 (+.f64 #s(literal 1/8 binary64) (/.f64 (/.f64 (log.f64 #s(literal 2 binary64)) b) b)) b #s(literal 1/2 binary64)))

rewrite194.0ms (1.8%)

Memory
42.8MiB live, 155.8MiB allocated; 25ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045243
063239
1267239
22162235
08982231
Stop Event
iter limit
node limit
iter limit
Counts
19 → 120
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 #s(literal 1/2 binary64) b)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(log.f64 #s(literal 2 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(exp.f64 a)
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
Outputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))))
(/.f64 (-.f64 (*.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))) (*.f64 (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))) (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))))
(/.f64 (fma.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64))) (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(/.f64 (+.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64))) (+.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (*.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))))))
(/.f64 (+.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64))) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64))))
(fma.f64 (log1p.f64 (exp.f64 a)) #s(literal 1 binary64) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)))
(fma.f64 #s(literal 1 binary64) (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)))
(-.f64 (/.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)) (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 2 binary64)) (-.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))))
(+.f64 (/.f64 (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log1p.f64 (exp.f64 a)) #s(literal 3 binary64)) (fma.f64 (log1p.f64 (exp.f64 a)) (-.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))) (pow.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) #s(literal 2 binary64)))))
(+.f64 (log1p.f64 (exp.f64 a)) #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)))
(+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a)))
#s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b))
(*.f64 #s(literal 1/2 binary64) b)
(*.f64 b #s(literal 1/2 binary64))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
(log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (log.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 1 binary64))))
(-.f64 (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) #s(approx (exp a) #s(literal 1 binary64))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal 1 binary64)))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp a) #s(literal 1 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(-.f64 (log1p.f64 (*.f64 (neg.f64 #s(approx (exp a) #s(literal 1 binary64))) #s(approx (exp a) #s(literal 1 binary64)))) (log.f64 (-.f64 #s(literal 1 binary64) #s(approx (exp a) #s(literal 1 binary64)))))
(-.f64 (log1p.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64))) (log.f64 (fma.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp a) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) #s(approx (exp a) #s(literal 1 binary64))))))
(-.f64 (log1p.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64))) (log1p.f64 (*.f64 #s(approx (exp a) #s(literal 1 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 1 binary64)))
(*.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64))) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 3 binary64)) (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))) (*.f64 (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))) (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b))))))
(/.f64 (-.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64))) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 1/2 binary64)) (-.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))))
(/.f64 (fma.f64 (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b)))))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(fma.f64 b #s(literal 1/2 binary64) (log.f64 #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal -1/2 binary64) b))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (neg.f64 b) #s(literal 1/2 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/2 binary64) b) #s(literal 3 binary64)) (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b))))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 b b) #s(literal 1/4 binary64) (*.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b))))))
(+.f64 (log.f64 #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) b))
(+.f64 (*.f64 #s(literal 1/2 binary64) b) (log.f64 #s(literal 2 binary64)))
(log.f64 #s(literal 2 binary64))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64))) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64))) (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))) (*.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 1/2 binary64)) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(fma.f64 b (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (neg.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))) b))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (neg.f64 b) (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)) (pow.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b) (log.f64 #s(literal 2 binary64)))
(+.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))
(/.f64 (-.f64 (*.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))) (*.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64)) #s(literal 1/4 binary64))) (*.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 3 binary64)) (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64)))) (*.f64 (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64)))) #s(literal 1/8 binary64))) (*.f64 (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64)))) (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64))))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/8 binary64) b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64))))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64)))
(/.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64)) (*.f64 b #s(literal 1/16 binary64)))))
(/.f64 (fma.f64 #s(literal 1/512 binary64) (pow.f64 b #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64)))))
(fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64))
(fma.f64 b #s(literal 1/8 binary64) #s(literal 1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/8 binary64) b))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 b) #s(literal 1/8 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 3 binary64)) (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64))))) (/.f64 #s(literal 1/8 binary64) (fma.f64 #s(literal 1/64 binary64) (*.f64 b b) (-.f64 #s(literal 1/4 binary64) (*.f64 b #s(literal 1/16 binary64))))))
(+.f64 (*.f64 #s(literal 1/8 binary64) b) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/8 binary64) b))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)))
(/.f64 (-.f64 (*.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))) (*.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)))) (*.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))) (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(/.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64))) (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))
(fma.f64 #s(literal 1 binary64) (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(fma.f64 (exp.f64 a) #s(literal 1 binary64) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))) (/.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(+.f64 (+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (cosh.f64 a)) (sinh.f64 a))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (exp.f64 a))
(+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(*.f64 #s(literal 1 binary64) (exp.f64 a))
(*.f64 (exp.f64 a) #s(literal 1 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal 4 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64))) (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (sinh.f64 a)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)))
(fma.f64 (cosh.f64 a) #s(literal 1 binary64) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 a) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(exp.f64 a)
(+.f64 (*.f64 (cosh.f64 a) #s(literal 1 binary64)) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 a)) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(+.f64 (sinh.f64 a) (cosh.f64 a))
(+.f64 (cosh.f64 a) (sinh.f64 a))
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))

eval56.0ms (0.5%)

Memory
-29.8MiB live, 43.5MiB allocated; 16ms collecting garbage
Compiler

Compiled 7 163 to 829 computations (88.4% saved)

prune12.0ms (0.1%)

Memory
21.2MiB live, 21.2MiB allocated; 0ms collecting garbage
Pruning

19 alts after pruning (11 fresh and 8 done)

PrunedKeptTotal
New1842186
Fresh099
Picked055
Done134
Total18519204
Accuracy
100.0%
Counts
204 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.1%
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
48.8%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
48.4%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
47.6%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
44.5%
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
99.1%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
44.9%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
44.8%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
53.7%
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
41.7%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
43.5%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
44.7%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
45.3%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
12.8%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
5.6%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.1%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
Compiler

Compiled 703 to 490 computations (30.3% saved)

simplify111.0ms (1%)

Memory
4.3MiB live, 138.8MiB allocated; 21ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
cost-diff0
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
cost-diff0
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
cost-diff0
#s(approx (exp a) #s(literal 1 binary64))
cost-diff0
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
cost-diff0
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
cost-diff0
(+.f64 #s(literal 1 binary64) a)
cost-diff0
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
cost-diff0
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
cost-diff0
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
cost-diff0
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
cost-diff0
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
cost-diff0
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
cost-diff0
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
cost-diff0
(exp.f64 a)
cost-diff0
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
cost-diff0
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057362
083362
1136362
2332362
31022362
43791362
08531344
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(exp.f64 a)
a
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
b
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
(*.f64 b b)
b
#s(literal 1/8 binary64)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
(+.f64 #s(literal 1 binary64) a)
#s(literal 1 binary64)
a
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
(+.f64 #s(literal 1 binary64) b)
b
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
(*.f64 a a)
a
#s(literal -1/192 binary64)
#s(literal 1/8 binary64)
#s(literal 1/2 binary64)
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)
Outputs
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(exp.f64 a)
a
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
b
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
(*.f64 b b)
b
#s(literal 1/8 binary64)
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
(+.f64 #s(literal 1 binary64) a)
#s(literal 1 binary64)
a
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(log.f64 (+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
(+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64)))
#s(approx (exp a) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
(+.f64 #s(literal 1 binary64) b)
b
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
(fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64))
(*.f64 a a)
a
#s(literal -1/192 binary64)
#s(literal 1/8 binary64)
#s(literal 1/2 binary64)
(log.f64 #s(literal 2 binary64))
#s(literal 2 binary64)

localize317.0ms (2.9%)

Memory
13.5MiB live, 389.5MiB allocated; 146ms collecting garbage
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.05078125
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
accuracy0.5335198499391653
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
accuracy34.951223580589364
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
accuracy35.132735858841315
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
accuracy0.0078125
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
accuracy1.4530874231467081
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
accuracy32.56586843150587
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
accuracy35.132814999671105
#s(approx (exp a) #s(literal 1 binary64))
accuracy0.0
(+.f64 #s(literal 1 binary64) a)
accuracy0.0
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
accuracy34.951223580589364
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
accuracy35.207718992739004
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
accuracy0.0
(*.f64 b b)
accuracy0.101562650818705
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
accuracy34.89389144400431
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
accuracy60.992435666804944
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
accuracy0.00390625
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
accuracy0.0078125
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
accuracy0.6857043710384199
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
accuracy32.56586843150587
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
Samples
127.0ms73×2valid
104.0ms67×1valid
56.0ms116×0valid
Compiler

Compiled 202 to 47 computations (76.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 245.0ms
adjust: 85.0ms (34.7% of total)
ival-log: 37.0ms (15.1% of total)
ival-exp: 35.0ms (14.3% of total)
ival-mult: 31.0ms (12.7% of total)
ival-add: 26.0ms (10.6% of total)
const: 14.0ms (5.7% of total)
ival-div: 6.0ms (2.5% of total)
ival-pow2: 5.0ms (2% of total)
ival-sub: 2.0ms (0.8% of total)
ival-log1p: 2.0ms (0.8% of total)
exact: 1.0ms (0.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series85.0ms (0.8%)

Memory
-7.0MiB live, 91.2MiB allocated; 50ms collecting garbage
Counts
23 → 69
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(exp.f64 a)
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
(+.f64 #s(literal 1 binary64) a)
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(*.f64 b b)
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
Outputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1/2
(+ 1/2 (* 1/8 a))
(+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))
1/8
(+ 1/8 (* -1/192 (pow a 2)))
(log (+ (exp a) (exp b)))
(+ (exp a) (exp b))
(exp a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(log (+ 1 (exp a)))
a
(* a (+ 1 (/ 1 a)))
(* -1/192 (pow a 4))
(* (pow a 4) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (+ (* 1/8 (/ 1 (pow a 2))) (/ (log 2) (pow a 4)))) 1/192))
(* -1/192 (pow a 3))
(* (pow a 3) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 3) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* -1/192 (pow a 2))
(* (pow a 2) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 4) (- (+ (* -1 (/ (- (* -1 (/ (log 2) a)) 1/2) (pow a 3))) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* -1 (* (pow a 3) (- 1/192 (* 1/8 (/ 1 (pow a 2))))))
(* -1 (* (pow a 3) (+ 1/192 (* -1 (/ (+ 1/8 (* 1/2 (/ 1 a))) (pow a 2))))))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(+ (log 2) (* 1/2 b))
(* 1/8 (pow b 2))
(+ 1 (* 1/2 b))
(+ 1 (* b (+ 1/2 (* 1/6 b))))
(pow b 2)
(exp b)
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(* 1/6 (pow b 2))
(* (pow b 2) (+ 1/6 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/6 (+ (* 1/2 (/ 1 b)) (/ 1 (pow b 2)))))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
Calls

6 calls:

TimeVariablePointExpression
43.0ms
a
@inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (* (* b b) 1/8) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (+ 1 a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (+ (* (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) a) (log 2)) (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) (+ (* (+ (* 1/6 b) 1/2) b) 1) (* b b) (+ (* (* a a) -1/192) 1/8))
21.0ms
a
@-inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (* (* b b) 1/8) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (+ 1 a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (+ (* (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) a) (log 2)) (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) (+ (* (+ (* 1/6 b) 1/2) b) 1) (* b b) (+ (* (* a a) -1/192) 1/8))
8.0ms
b
@-inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (* (* b b) 1/8) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (+ 1 a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (+ (* (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) a) (log 2)) (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) (+ (* (+ (* 1/6 b) 1/2) b) 1) (* b b) (+ (* (* a a) -1/192) 1/8))
8.0ms
b
@inf
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (* (* b b) 1/8) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (+ 1 a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (+ (* (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) a) (log 2)) (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) (+ (* (+ (* 1/6 b) 1/2) b) 1) (* b b) (+ (* (* a a) -1/192) 1/8))
2.0ms
b
@0
((log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (* (* b b) 1/8) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (exp a) (+ 1 a) (log (+ (exp a) (exp b))) (+ (exp a) (exp b)) (exp a) (exp b) (log (+ (exp a) (exp b))) (log (+ 1 (exp a))) (+ (* (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) a) (log 2)) (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) (+ (* (+ (* 1/6 b) 1/2) b) 1) (* b b) (+ (* (* a a) -1/192) 1/8))

simplify165.0ms (1.5%)

Memory
1.8MiB live, 187.0MiB allocated; 28ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0230911
1758904
22719884
08867797
Stop Event
iter limit
node limit
Counts
69 → 68
Calls
Call 1
Inputs
(log (+ 1 (exp b)))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(+ 1 (exp b))
(+ 1 (+ a (exp b)))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
1
(+ 1 a)
(+ 1 (* a (+ 1 (* 1/2 a))))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(log 2)
(+ (log 2) (* 1/2 a))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
1/2
(+ 1/2 (* 1/8 a))
(+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))
1/8
(+ 1/8 (* -1/192 (pow a 2)))
(log (+ (exp a) (exp b)))
(+ (exp a) (exp b))
(exp a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(log (+ 1 (exp a)))
a
(* a (+ 1 (/ 1 a)))
(* -1/192 (pow a 4))
(* (pow a 4) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (+ (* 1/8 (/ 1 (pow a 2))) (/ (log 2) (pow a 4)))) 1/192))
(* -1/192 (pow a 3))
(* (pow a 3) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 3) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* -1/192 (pow a 2))
(* (pow a 2) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(* (pow a 4) (- (+ (* -1 (/ (- (* -1 (/ (log 2) a)) 1/2) (pow a 3))) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(* -1 (* (pow a 3) (- 1/192 (* 1/8 (/ 1 (pow a 2))))))
(* -1 (* (pow a 3) (+ 1/192 (* -1 (/ (+ 1/8 (* 1/2 (/ 1 a))) (pow a 2))))))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(+ 1 (exp a))
(+ 1 (+ b (exp a)))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(+ 1 b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(+ (log 2) (* 1/2 b))
(* 1/8 (pow b 2))
(+ 1 (* 1/2 b))
(+ 1 (* b (+ 1/2 (* 1/6 b))))
(pow b 2)
(exp b)
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(* 1/6 (pow b 2))
(* (pow b 2) (+ 1/6 (* 1/2 (/ 1 b))))
(* (pow b 2) (+ 1/6 (+ (* 1/2 (/ 1 b)) (/ 1 (pow b 2)))))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
Outputs
(log (+ 1 (exp b)))
(log1p.f64 (exp.f64 b))
(+ (log (+ 1 (exp b))) (/ a (+ 1 (exp b))))
(+.f64 (/.f64 a (+.f64 #s(literal 1 binary64) (exp.f64 b))) (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* 1/2 (* a (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) a) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ (log (+ 1 (exp b))) (* a (+ (* a (+ (* 1/6 (* a (- (+ (* 2 (/ 1 (pow (+ 1 (exp b)) 3))) (/ 1 (+ 1 (exp b)))) (* 3 (/ 1 (pow (+ 1 (exp b)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp b))) (/ 1 (pow (+ 1 (exp b)) 2)))))) (/ 1 (+ 1 (exp b))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) a) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 b)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) a (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 b)))) a (log1p.f64 (exp.f64 b)))
(+ 1 (exp b))
(+.f64 #s(literal 1 binary64) (exp.f64 b))
(+ 1 (+ a (exp b)))
(-.f64 (+.f64 (exp.f64 b) a) #s(literal -1 binary64))
(+ 1 (+ (exp b) (* a (+ 1 (* 1/2 a)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
(+ 1 (+ (exp b) (* a (+ 1 (* a (+ 1/2 (* 1/6 a)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a (+.f64 #s(literal 1 binary64) (exp.f64 b)))
1
#s(literal 1 binary64)
(+ 1 a)
(-.f64 a #s(literal -1 binary64))
(+ 1 (* a (+ 1 (* 1/2 a))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ 1 (* a (+ 1 (* a (+ 1/2 (* 1/6 a))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) a #s(literal 1/2 binary64)) a #s(literal 1 binary64)) a #s(literal 1 binary64))
(+ (log 2) (* b (+ 1/2 (* 1/8 b))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))
(+ (log 2) (+ (* a (+ 1/2 (* -1/4 b))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64)) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (* -1/32 (pow b 2))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 b b) #s(literal -1/32 binary64) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(+ (log 2) (+ (* a (+ 1/2 (+ (* -1/4 b) (* a (+ 1/8 (+ (* -1/32 (pow b 2)) (* 1/48 (* a b)))))))) (* b (+ 1/2 (* 1/8 b)))))
(fma.f64 (fma.f64 (fma.f64 b (fma.f64 #s(literal 1/48 binary64) a (*.f64 #s(literal -1/32 binary64) b)) #s(literal 1/8 binary64)) a (fma.f64 #s(literal -1/4 binary64) b #s(literal 1/2 binary64))) a (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))
(log 2)
(log.f64 #s(literal 2 binary64))
(+ (log 2) (* 1/2 a))
(fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* 1/8 a))))
(fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(+ (log 2) (* a (+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/8 a))
(fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64))
(+ 1/2 (* a (+ 1/8 (* -1/192 (pow a 2)))))
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
1/8
#s(literal 1/8 binary64)
(+ 1/8 (* -1/192 (pow a 2)))
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
(log (+ (exp a) (exp b)))
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
(+ (exp a) (exp b))
(+.f64 (exp.f64 a) (exp.f64 b))
(exp a)
(exp.f64 a)
(+ (log (+ 1 (exp a))) (* b (+ (* 1/2 (* b (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
(log (+ 1 (exp a)))
(log1p.f64 (exp.f64 a))
a
(* a (+ 1 (/ 1 a)))
(-.f64 a #s(literal -1 binary64))
(* -1/192 (pow a 4))
(*.f64 (pow.f64 a #s(literal 4 binary64)) #s(literal -1/192 binary64))
(* (pow a 4) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 a a)) #s(literal 1/192 binary64)) (pow.f64 a #s(literal 4 binary64)))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(*.f64 (-.f64 (/.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) a) #s(literal 1/8 binary64)) a) a) #s(literal 1/192 binary64)) (pow.f64 a #s(literal 4 binary64)))
(* (pow a 4) (- (+ (/ 1/2 (pow a 3)) (+ (* 1/8 (/ 1 (pow a 2))) (/ (log 2) (pow a 4)))) 1/192))
(*.f64 (-.f64 (+.f64 (/.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) a) #s(literal 1/8 binary64)) a) a) (/.f64 (log.f64 #s(literal 2 binary64)) (pow.f64 a #s(literal 4 binary64)))) #s(literal 1/192 binary64)) (pow.f64 a #s(literal 4 binary64)))
(* -1/192 (pow a 3))
(*.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal -1/192 binary64))
(* (pow a 3) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(*.f64 (pow.f64 a #s(literal 3 binary64)) (-.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 a a)) #s(literal 1/192 binary64)))
(* (pow a 3) (- (+ (/ 1/2 (pow a 3)) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(*.f64 (-.f64 (/.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) a) #s(literal 1/8 binary64)) a) a) #s(literal 1/192 binary64)) (pow.f64 a #s(literal 3 binary64)))
(* -1/192 (pow a 2))
(*.f64 (*.f64 a a) #s(literal -1/192 binary64))
(* (pow a 2) (- (* 1/8 (/ 1 (pow a 2))) 1/192))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/8 binary64) (*.f64 a a)) #s(literal 1/192 binary64)) a) a)
(* (pow a 4) (- (+ (* -1 (/ (- (* -1 (/ (log 2) a)) 1/2) (pow a 3))) (* 1/8 (/ 1 (pow a 2)))) 1/192))
(*.f64 (-.f64 (/.f64 (fma.f64 (/.f64 (-.f64 (/.f64 (log.f64 #s(literal 2 binary64)) (neg.f64 a)) #s(literal 1/2 binary64)) a) #s(literal -1 binary64) #s(literal 1/8 binary64)) (*.f64 a a)) #s(literal 1/192 binary64)) (pow.f64 a #s(literal 4 binary64)))
(* -1 (* (pow a 3) (- 1/192 (* 1/8 (/ 1 (pow a 2))))))
(*.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) (*.f64 a a)) #s(literal -1 binary64) #s(literal -1/192 binary64)) (pow.f64 a #s(literal 3 binary64)))
(* -1 (* (pow a 3) (+ 1/192 (* -1 (/ (+ 1/8 (* 1/2 (/ 1 a))) (pow a 2))))))
(*.f64 (+.f64 (/.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) a) #s(literal 1/8 binary64)) a) a) #s(literal -1/192 binary64)) (pow.f64 a #s(literal 3 binary64)))
(+ (log (+ 1 (exp a))) (/ b (+ 1 (exp a))))
(+.f64 (/.f64 b (+.f64 #s(literal 1 binary64) (exp.f64 a))) (log1p.f64 (exp.f64 a)))
(+ (log (+ 1 (exp a))) (* b (+ (* b (+ (* 1/6 (* b (- (+ (* 2 (/ 1 (pow (+ 1 (exp a)) 3))) (/ 1 (+ 1 (exp a)))) (* 3 (/ 1 (pow (+ 1 (exp a)) 2)))))) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))) (/ 1 (+ 1 (exp a))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) b) (+.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 (+.f64 (/.f64 #s(literal 2 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) #s(literal -3 binary64)) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) b (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b (log1p.f64 (exp.f64 a)))
(+ 1 (exp a))
(+.f64 #s(literal 1 binary64) (exp.f64 a))
(+ 1 (+ b (exp a)))
(+.f64 (+.f64 (exp.f64 a) b) #s(literal 1 binary64))
(+ 1 (+ (exp a) (* b (+ 1 (* 1/2 b)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 (+ (exp a) (* b (+ 1 (* b (+ 1/2 (* 1/6 b)))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b (+.f64 #s(literal 1 binary64) (exp.f64 a)))
(+ 1 b)
(+.f64 #s(literal 1 binary64) b)
(+ 1 (* b (+ 1 (* 1/2 b))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(+ 1 (* b (+ 1 (* b (+ 1/2 (* 1/6 b))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))
(+ (log 2) (* 1/2 b))
(fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))
(* 1/8 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
(+ 1 (* 1/2 b))
(fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64))
(+ 1 (* b (+ 1/2 (* 1/6 b))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(pow b 2)
(*.f64 b b)
(exp b)
(exp.f64 b)
(* 1/2 (* (pow b 2) (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))))
(*.f64 (*.f64 (*.f64 b b) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (/ 1 (* b (+ 1 (exp a))))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (exp.f64 a) b b))) (*.f64 b b))
(* (pow b 2) (+ (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2)))) (+ (/ 1 (* b (+ 1 (exp a)))) (/ (log (+ 1 (exp a))) (pow b 2)))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 (log1p.f64 (exp.f64 a)) b) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) b)) (*.f64 b b))
(* (pow b 2) (+ 1/8 (* 1/2 (/ 1 b))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b)
(* (pow b 2) (+ 1/8 (+ (* 1/2 (/ 1 b)) (/ (log 2) (pow b 2)))))
(*.f64 (+.f64 (/.f64 (+.f64 (/.f64 (log.f64 #s(literal 2 binary64)) b) #s(literal 1/2 binary64)) b) #s(literal 1/8 binary64)) (*.f64 b b))
(* 1/6 (pow b 2))
(*.f64 (*.f64 #s(literal 1/6 binary64) b) b)
(* (pow b 2) (+ 1/6 (* 1/2 (/ 1 b))))
(*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/6 binary64)) b) b)
(* (pow b 2) (+ 1/6 (+ (* 1/2 (/ 1 b)) (/ 1 (pow b 2)))))
(fma.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/6 binary64)) (*.f64 b b) #s(literal 1 binary64))
(* (pow b 2) (+ (* -1 (/ (- (* -1 (/ (log (+ 1 (exp a))) b)) (/ 1 (+ 1 (exp a)))) b)) (* 1/2 (- (/ 1 (+ 1 (exp a))) (/ 1 (pow (+ 1 (exp a)) 2))))))
(*.f64 (fma.f64 (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 #s(literal 1 binary64) (exp.f64 a)) #s(literal 2 binary64)))) #s(literal 1/2 binary64) (/.f64 (-.f64 (/.f64 (log1p.f64 (exp.f64 a)) (neg.f64 b)) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1 binary64) (exp.f64 a)))) (neg.f64 b))) (*.f64 b b))
(* (pow b 2) (+ 1/8 (* -1 (/ (- (* -1 (/ (log 2) b)) 1/2) b))))
(*.f64 (+.f64 (/.f64 (+.f64 (/.f64 (log.f64 #s(literal 2 binary64)) b) #s(literal 1/2 binary64)) b) #s(literal 1/8 binary64)) (*.f64 b b))

rewrite180.0ms (1.7%)

Memory
13.1MiB live, 203.0MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
057324
083320
1365320
22926320
09532298
Stop Event
iter limit
node limit
iter limit
Counts
23 → 187
Calls
Call 1
Inputs
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(exp.f64 a)
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
(+.f64 #s(literal 1 binary64) a)
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(*.f64 b b)
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
Outputs
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)))) (log.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (log.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(/.f64 (fma.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)))) (neg.f64 (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64))) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (*.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (pow.f64 (exp.f64 a) #s(literal 3 binary64))) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64))))
(fma.f64 (exp.f64 a) #s(literal 1 binary64) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(fma.f64 #s(literal 1 binary64) (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(-.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))) (/.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 2 binary64)) (-.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))))
(+.f64 (+.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (cosh.f64 a)) (sinh.f64 a))
(+.f64 (/.f64 (pow.f64 (exp.f64 a) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (-.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a)) (pow.f64 (exp.f64 a) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 a) (+.f64 (sinh.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))))
(+.f64 #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64))) (exp.f64 a))
(*.f64 (exp.f64 a) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 a))
(pow.f64 (exp.f64 #s(literal 1 binary64)) a)
(pow.f64 (exp.f64 a) #s(literal 1 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (sinh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cosh.f64 a)))) #s(literal 4 binary64))
(/.f64 (fma.f64 (*.f64 #s(literal 2 binary64) (cosh.f64 a)) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (sinh.f64 a)))) #s(literal 4 binary64))
(/.f64 (+.f64 (pow.f64 (cosh.f64 a) #s(literal 3 binary64)) (pow.f64 (sinh.f64 a) #s(literal 3 binary64))) (fma.f64 (cosh.f64 a) (cosh.f64 a) (-.f64 (pow.f64 (sinh.f64 a) #s(literal 2 binary64)) (*.f64 (cosh.f64 a) (sinh.f64 a)))))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 a)))
(fma.f64 (cosh.f64 a) #s(literal 1 binary64) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (cosh.f64 a) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(exp.f64 a)
(+.f64 (*.f64 (cosh.f64 a) #s(literal 1 binary64)) (*.f64 (sinh.f64 a) #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) (cosh.f64 a)) (*.f64 #s(literal 1 binary64) (sinh.f64 a)))
(+.f64 (sinh.f64 a) (cosh.f64 a))
(+.f64 (cosh.f64 a) (sinh.f64 a))
#s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64))))
#s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 #s(literal 1/8 binary64) (neg.f64 b)) (neg.f64 b))
(*.f64 (neg.f64 b) (*.f64 (neg.f64 b) #s(literal 1/8 binary64)))
(*.f64 (*.f64 b b) #s(literal 1/8 binary64))
(*.f64 (*.f64 #s(literal 1/8 binary64) b) b)
(*.f64 #s(literal 1/8 binary64) (*.f64 b b))
(*.f64 b (*.f64 #s(literal 1/8 binary64) b))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
(log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 2 binary64)) #s(literal 1 binary64))) (log.f64 (-.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 1 binary64))))
(-.f64 (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 #s(literal 1 binary64) #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 3 binary64)) #s(literal 1 binary64)))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) (-.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(-.f64 (log.f64 (-.f64 #s(literal 1 binary64) (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(literal 1 binary64) #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))))
(-.f64 (log1p.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 3 binary64))) (log.f64 (+.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))))
(-.f64 (log1p.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 3 binary64))) (log1p.f64 (-.f64 (pow.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 2 binary64)) #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))))
(log.f64 (+.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 1 binary64)))
(*.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))
#s(approx (exp a) (+.f64 #s(literal 1 binary64) a))
(/.f64 (fma.f64 #s(literal 1 binary64) (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 a #s(literal 3 binary64)))) (*.f64 (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 (*.f64 a a) #s(literal 1 binary64)) (-.f64 a #s(literal 1 binary64)))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 a a))) (neg.f64 (-.f64 #s(literal 1 binary64) a)))
(/.f64 (neg.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 a a)) (-.f64 #s(literal 1 binary64) a))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 a a (-.f64 #s(literal 1 binary64) a)))
(/.f64 (+.f64 (pow.f64 a #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (neg.f64 (neg.f64 a))) (sqrt.f64 (neg.f64 (neg.f64 a))) #s(literal 1 binary64))
(fma.f64 (sqrt.f64 (neg.f64 a)) (sqrt.f64 (neg.f64 a)) #s(literal 1 binary64))
(fma.f64 (sqrt.f64 a) (sqrt.f64 a) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) a #s(literal 1 binary64))
(fma.f64 a #s(literal 1 binary64) #s(literal 1 binary64))
(-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) a) #s(literal -1 binary64)) (/.f64 (*.f64 a a) (-.f64 #s(literal 1 binary64) a)))
(+.f64 (pow.f64 (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 a #s(literal 3 binary64)) (fma.f64 a (-.f64 a #s(literal 1 binary64)) #s(literal 1 binary64))))
(+.f64 #s(literal 1 binary64) a)
(+.f64 a #s(literal 1 binary64))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64)))))
(-.f64 (log.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64))))) (log.f64 (neg.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))))
(-.f64 (log.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64))))) (log.f64 (neg.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))))))
(-.f64 (log.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)))) (log.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)))) (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64)))))))
(-.f64 (log.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)))) (log.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)))) (*.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)))) (neg.f64 (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64))) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64))) (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (*.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))))))
(/.f64 (+.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64))) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))) (/.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 2 binary64)) (-.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))))
(+.f64 (/.f64 (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(literal 3 binary64)) (fma.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) (-.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64))) (pow.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(literal 2 binary64)))))
(+.f64 #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)) #s(approx (exp a) #s(literal 1 binary64)))
(+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b)))
#s(approx (exp a) #s(literal 1 binary64))
#s(approx (exp b) (+.f64 #s(literal 1 binary64) b))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64))) (*.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64))) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (*.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64))) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64))) (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 1/2 binary64)) (log.f64 #s(literal 1/2 binary64)) (-.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64))))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 3 binary64)) (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64))))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))
(fma.f64 a (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) (log.f64 #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64)))))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))) a))
(-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (neg.f64 a) (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)))) (/.f64 (pow.f64 (log.f64 #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (log.f64 #s(literal 2 binary64)) (-.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a)) (pow.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) #s(literal 2 binary64)))))
(+.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a) (log.f64 #s(literal 2 binary64)))
(+.f64 (log.f64 #s(literal 2 binary64)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))) #s(literal 1/8 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))))
(fma.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64))
(fma.f64 a (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) #s(literal 1/2 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))) (/.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64))) a))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 a) (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))) (/.f64 #s(literal 1/8 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64)))))
(+.f64 (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 (fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64)) a))
(/.f64 (fma.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)) #s(literal 1 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b))))
(/.f64 (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b))))
(/.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64))
(fma.f64 b (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 b (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64))) b))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 b) (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b))) (pow.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b)) #s(literal -1 binary64)))
(+.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b))
(*.f64 (neg.f64 (neg.f64 (neg.f64 b))) (neg.f64 (neg.f64 (neg.f64 b))))
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (neg.f64 (neg.f64 b)) (neg.f64 (neg.f64 b)))
(*.f64 (neg.f64 b) (neg.f64 b))
(*.f64 (*.f64 b b) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 b b))
(*.f64 b b)
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 b)) #s(literal 2 binary64))
(pow.f64 (neg.f64 b) #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 b #s(literal 2 binary64))
(neg.f64 (*.f64 b (neg.f64 b)))
(neg.f64 (*.f64 (neg.f64 b) b))
(sqrt.f64 (pow.f64 b #s(literal 4 binary64)))
(fabs.f64 (neg.f64 (*.f64 b b)))
(fabs.f64 (*.f64 b (neg.f64 b)))
(fabs.f64 (*.f64 (neg.f64 b) b))
(fabs.f64 (*.f64 b b))
(exp.f64 (*.f64 (log.f64 (neg.f64 b)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 b) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.f64 b) #s(literal 2 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/7077888 binary64) (pow.f64 a #s(literal 6 binary64))) (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64)))) (*.f64 (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64)))) #s(literal 1/512 binary64))) (*.f64 (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64)))) (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64))))))
(/.f64 (-.f64 #s(literal 1/64 binary64) (*.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)))) (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal -1/192 binary64) (*.f64 a a))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64))) #s(literal 1/64 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/192 binary64) (*.f64 a a)) #s(literal 1/8 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/7077888 binary64) (pow.f64 a #s(literal 6 binary64)) #s(literal 1/512 binary64))) (neg.f64 (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64))) #s(literal 1/64 binary64)) (-.f64 (*.f64 #s(literal -1/192 binary64) (*.f64 a a)) #s(literal 1/8 binary64)))
(/.f64 (fma.f64 #s(literal -1/7077888 binary64) (pow.f64 a #s(literal 6 binary64)) #s(literal 1/512 binary64)) (+.f64 #s(literal 1/64 binary64) (-.f64 (*.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64))) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64)))))
(/.f64 (fma.f64 #s(literal -1/7077888 binary64) (pow.f64 a #s(literal 6 binary64)) #s(literal 1/512 binary64)) (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64)))))
(fma.f64 (*.f64 #s(literal -1/192 binary64) (neg.f64 a)) (neg.f64 a) #s(literal 1/8 binary64))
(fma.f64 (*.f64 #s(literal -1/192 binary64) a) a #s(literal 1/8 binary64))
(fma.f64 (neg.f64 a) (*.f64 (neg.f64 a) #s(literal -1/192 binary64)) #s(literal 1/8 binary64))
(fma.f64 #s(literal -1/192 binary64) (*.f64 a a) #s(literal 1/8 binary64))
(fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64))
(fma.f64 a (*.f64 #s(literal -1/192 binary64) a) #s(literal 1/8 binary64))
(-.f64 (/.f64 (*.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/192 binary64) (*.f64 a a)) #s(literal 1/8 binary64))) (/.f64 #s(literal 1/64 binary64) (-.f64 (*.f64 #s(literal -1/192 binary64) (*.f64 a a)) #s(literal 1/8 binary64))))
(-.f64 #s(literal 1/8 binary64) (*.f64 (neg.f64 (*.f64 a a)) #s(literal -1/192 binary64)))
(-.f64 #s(literal 1/8 binary64) (*.f64 (neg.f64 a) (*.f64 #s(literal -1/192 binary64) a)))
(-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/192 binary64) (*.f64 a a)))
(+.f64 (/.f64 (*.f64 #s(literal -1/7077888 binary64) (pow.f64 a #s(literal 6 binary64))) (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64))))) (/.f64 #s(literal 1/512 binary64) (fma.f64 #s(literal 1/36864 binary64) (pow.f64 a #s(literal 4 binary64)) (-.f64 #s(literal 1/64 binary64) (*.f64 (*.f64 a a) #s(literal -1/1536 binary64))))))
(+.f64 (*.f64 #s(literal -1/192 binary64) (*.f64 a a)) #s(literal 1/8 binary64))
(+.f64 #s(literal 1/8 binary64) (*.f64 #s(literal -1/192 binary64) (*.f64 a a)))

eval30.0ms (0.3%)

Memory
2.7MiB live, 49.3MiB allocated; 2ms collecting garbage
Compiler

Compiled 9 678 to 1 278 computations (86.8% saved)

prune25.0ms (0.2%)

Memory
-0.7MiB live, 45.7MiB allocated; 2ms collecting garbage
Pruning

20 alts after pruning (7 fresh and 13 done)

PrunedKeptTotal
New2483251
Fresh246
Picked055
Done088
Total25020270
Accuracy
100.0%
Counts
270 → 20
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.1%
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
48.8%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
48.4%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
47.6%
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
44.5%
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
99.1%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
44.9%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
44.8%
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
53.7%
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
45.4%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
41.7%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
43.5%
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
44.7%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
45.3%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
12.8%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
12.8%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
5.6%
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.1%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
43.2%
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
Compiler

Compiled 1 135 to 505 computations (55.5% saved)

regimes92.0ms (0.9%)

Memory
-16.5MiB live, 86.1MiB allocated; 35ms collecting garbage
Counts
26 → 1
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64)))) (log.f64 (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b)))))
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
Outputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
Calls

6 calls:

60.0ms
b
7.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
7.0ms
a
5.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
5.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
99.8%1(exp.f64 b)
99.8%1(exp.f64 a)
99.8%1(+.f64 (exp.f64 a) (exp.f64 b))
99.8%1(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
99.8%1a
99.8%1b
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes35.0ms (0.3%)

Memory
7.5MiB live, 54.3MiB allocated; 1ms collecting garbage
Counts
25 → 1
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)))) (log.f64 (sqrt.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64))))))
(-.f64 (log.f64 (fma.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 b)) (*.f64 (exp.f64 (neg.f64 a)) #s(literal 1 binary64)))) (log.f64 (exp.f64 (+.f64 (neg.f64 a) (neg.f64 b)))))
Outputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
Calls

6 calls:

8.0ms
a
7.0ms
b
5.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
5.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
5.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
99.1%1(exp.f64 b)
99.1%1(exp.f64 a)
99.1%1(+.f64 (exp.f64 a) (exp.f64 b))
99.1%1(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
99.1%1a
99.1%1b
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes32.0ms (0.3%)

Memory
3.0MiB live, 49.7MiB allocated; 1ms collecting garbage
Counts
22 → 1
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 #s(literal 1/2 binary64) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) b #s(literal 1/2 binary64)) b #s(literal 1 binary64)) b #s(literal 1 binary64)))))
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Outputs
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
Calls

6 calls:

6.0ms
a
6.0ms
b
5.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
4.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
4.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
53.7%1a
53.7%1(exp.f64 b)
53.7%1(exp.f64 a)
53.7%1(+.f64 (exp.f64 a) (exp.f64 b))
53.7%1(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
53.7%1b
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes27.0ms (0.3%)

Memory
-7.4MiB live, 41.4MiB allocated; 3ms collecting garbage
Counts
17 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) (exp.f64 b)))
(log.f64 (+.f64 (exp.f64 a) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b)))
Calls

6 calls:

7.0ms
a
5.0ms
b
4.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
4.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
4.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
47.6%1(exp.f64 b)
53.8%2(exp.f64 a)
53.7%2(+.f64 (exp.f64 a) (exp.f64 b))
53.7%2(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
53.8%2a
47.6%1b
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes15.0ms (0.1%)

Memory
-22.8MiB live, 24.2MiB allocated; 1ms collecting garbage
Counts
14 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 (fma.f64 (*.f64 a a) #s(literal -1/192 binary64) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 a)))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64)))))
Calls

4 calls:

4.0ms
a
4.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
3.0ms
(exp.f64 a)
Results
AccuracySegmentsBranch
53.6%2(+.f64 (exp.f64 a) (exp.f64 b))
53.6%2(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
53.6%2(exp.f64 a)
53.6%2a
Compiler

Compiled 14 to 16 computations (-14.3% saved)

regimes12.0ms (0.1%)

Memory
20.0MiB live, 20.0MiB allocated; 0ms collecting garbage
Counts
11 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
(log.f64 (+.f64 #s(approx (exp a) #s(literal 1 binary64)) #s(approx (exp b) (+.f64 #s(literal 1 binary64) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 (fma.f64 #s(approx (+ (* (* a a) -1/192) 1/8) #s(literal 1/8 binary64)) a #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64)))))
Calls

4 calls:

3.0ms
a
3.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
3.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
2.0ms
(exp.f64 a)
Results
AccuracySegmentsBranch
52.9%2(+.f64 (exp.f64 a) (exp.f64 b))
52.9%2(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
52.9%2(exp.f64 a)
52.9%2a
Compiler

Compiled 14 to 16 computations (-14.3% saved)

regimes9.0ms (0.1%)

Memory
16.0MiB live, 16.0MiB allocated; 0ms collecting garbage
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(approx (+ (* (+ (* (* a a) -1/192) 1/8) a) 1/2) #s(literal 1/2 binary64)) a (log.f64 #s(literal 2 binary64)))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64)))))
Calls

4 calls:

2.0ms
a
2.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
2.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
2.0ms
(exp.f64 a)
Results
AccuracySegmentsBranch
52.1%2(exp.f64 a)
52.1%2a
52.1%2(+.f64 (exp.f64 a) (exp.f64 b))
52.1%2(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
Compiler

Compiled 14 to 16 computations (-14.3% saved)

regimes5.0ms (0%)

Memory
-39.5MiB live, 7.6MiB allocated; 1ms collecting garbage
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a))))
Calls

2 calls:

2.0ms
(exp.f64 a)
2.0ms
a
Results
AccuracySegmentsBranch
52.1%2(exp.f64 a)
52.1%2a
Compiler

Compiled 3 to 5 computations (-66.7% saved)

regimes6.0ms (0.1%)

Memory
12.2MiB live, 12.2MiB allocated; 0ms collecting garbage
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64))))
Calls

4 calls:

2.0ms
a
1.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
1.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
1.0ms
(exp.f64 a)
Results
AccuracySegmentsBranch
51.8%2(+.f64 (exp.f64 a) (exp.f64 b))
51.8%2(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
51.8%2(exp.f64 a)
51.8%2a
Compiler

Compiled 14 to 16 computations (-14.3% saved)

regimes8.0ms (0.1%)

Memory
16.4MiB live, 16.4MiB allocated; 0ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) b) #s(literal 1/8 binary64)) b) b))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
Calls

6 calls:

1.0ms
a
1.0ms
b
1.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
1.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
1.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
12.8%1(exp.f64 b)
12.8%1b
12.8%1(+.f64 (exp.f64 a) (exp.f64 b))
12.8%1(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
12.8%1(exp.f64 a)
12.8%1a
Compiler

Compiled 17 to 21 computations (-23.5% saved)

regimes6.0ms (0.1%)

Memory
12.5MiB live, 12.5MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
Outputs
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
Calls

6 calls:

1.0ms
b
1.0ms
a
1.0ms
(+.f64 (exp.f64 a) (exp.f64 b))
1.0ms
(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
1.0ms
(exp.f64 b)
Results
AccuracySegmentsBranch
5.6%1(+.f64 (exp.f64 a) (exp.f64 b))
5.6%1(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))
5.6%1(exp.f64 b)
5.6%1(exp.f64 a)
5.6%1a
5.6%1b
Compiler

Compiled 17 to 21 computations (-23.5% saved)

bsearch29.0ms (0.3%)

Memory
-12.6MiB live, 34.5MiB allocated; 1ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
26.0ms
-809.8178949443693
-0.002415732271842271
Samples
19.0ms119×1valid
1.0ms25×0valid
Compiler

Compiled 630 to 416 computations (34% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-exp: 7.0ms (43.4% of total)
ival-log: 5.0ms (31% of total)
adjust: 3.0ms (18.6% of total)
ival-add: 1.0ms (6.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch5.0ms (0%)

Memory
6.8MiB live, 6.8MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
5.0ms
-809.8178949443693
-0.002415732271842271
Samples
3.0ms16×1valid
Compiler

Compiled 990 to 596 computations (39.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-exp: 1.0ms (48.6% of total)
ival-log: 1.0ms (48.6% of total)
adjust: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.002590683199895191
0.691940043894148
Compiler

Compiled 9 to 11 computations (-22.2% saved)

bsearch15.0ms (0.1%)

Memory
-29.6MiB live, 18.1MiB allocated; 4ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
-809.8178949443693
-0.002415732271842271
Samples
9.0ms128×0valid
Compiler

Compiled 702 to 470 computations (33% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-exp: 2.0ms (47.3% of total)
ival-add: 1.0ms (23.6% of total)
ival-log: 1.0ms (23.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch6.0ms (0.1%)

Memory
8.0MiB live, 8.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
5.0ms
-809.8178949443693
-0.002415732271842271
Samples
3.0ms48×0valid
Compiler

Compiled 666 to 434 computations (34.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-exp: 1.0ms (64.2% of total)
ival-true: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-log: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
2.5MiB live, 2.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
-809.8178949443693
-0.002415732271842271
Compiler

Compiled 648 to 425 computations (34.4% saved)

simplify42.0ms (0.4%)

Memory
4.5MiB live, 51.3MiB allocated; 2ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
094704
1120704
2211704
3540704
42474704
Stop Event
node limit
Calls
Call 1
Inputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(if (<=.f64 a #s(literal -126 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b))))
(if (<=.f64 a #s(literal -122 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b))) #s(literal 5764607523034235/1152921504606846976 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 a #s(literal -3152519739159347/2251799813685248 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 a #s(literal -1 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))))
(if (<=.f64 a #s(literal -122 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))
Outputs
#s(approx (log (+ (exp a) (exp b))) (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) b) (-.f64 (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (+.f64 (exp.f64 a) #s(literal 1 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (exp.f64 a) #s(literal 1 binary64)))) b (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 (/.f64 b (+.f64 (exp.f64 a) #s(literal 1 binary64))) (log1p.f64 (exp.f64 a))))
#s(approx (log (+ (exp a) (exp b))) (+.f64 #s(approx (/ b (+ (exp a) 1)) (*.f64 #s(literal 1/2 binary64) b)) (log1p.f64 (exp.f64 a))))
(if (<=.f64 a #s(literal -126 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 (exp.f64 b))))
(if (<=.f64 a #s(literal -122 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) (fma.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 (log.f64 (+.f64 (exp.f64 a) (exp.f64 b))) #s(literal 5764607523034235/1152921504606846976 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (/ b (+ (exp a) 1)) (log (+ 1 (exp a)))) (fma.f64 #s(literal 1/2 binary64) b (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 a #s(literal -3152519739159347/2251799813685248 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) #s(approx (log (+ 1 (exp a))) (fma.f64 #s(literal 1/2 binary64) a (log.f64 #s(literal 2 binary64))))))
(if (<=.f64 a #s(literal -1 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) (+.f64 #s(literal 1 binary64) a)))))
(if (<=.f64 a #s(literal -122 binary64)) #s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b)))) #s(approx (log (+ (exp a) (exp b))) (log1p.f64 #s(approx (exp a) #s(literal 1 binary64)))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (fma.f64 #s(literal 1/8 binary64) b #s(literal 1/2 binary64)) b))))
#s(approx (log (+ (exp a) (exp b))) #s(approx (+ (* (+ (* (* 1/2 b) (- (/ 1 (+ (exp a) 1)) (/ 1 (pow (+ (exp a) 1) 2)))) (/ 1 (+ (exp a) 1))) b) (log (+ 1 (exp a)))) #s(approx (+ (* (+ (* 1/8 b) 1/2) b) (log 2)) (*.f64 (*.f64 b b) #s(literal 1/8 binary64)))))

derivations631.0ms (5.9%)

Memory
0.5MiB live, 419.1MiB allocated; 37ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02651060
18721037
231601019
08549895
099370
1317370
21186366
35037366
08217320
0235869
1805846
23020824
08362719
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 704 to 98 computations (86.1% saved)

preprocess77.0ms (0.7%)

Memory
25.7MiB live, 125.1MiB allocated; 8ms collecting garbage
Compiler

Compiled 1 494 to 248 computations (83.4% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...