Logarithmic Transform

Time bar (total: 6.4s)

start0.0ms (0%)

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

analyze159.0ms (2.5%)

Memory
5.4MiB live, 234.3MiB allocated; 42ms 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
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
12.5%12.5%87.4%0.1%0%0%0%6
28.6%25%62.4%0.1%0%12.5%0%7
28.6%25%62.4%0.1%0%12.5%0%8
39.3%34.3%53%0.1%0%12.5%0%9
52.7%45.2%40.6%0.1%0%14%0%10
52.7%45.2%40.6%0.1%0%14%0%11
56%47.6%37.4%0.1%0%14.8%0%12
Compiler

Compiled 14 to 11 computations (21.4% saved)

sample2.2s (35.2%)

Memory
39.4MiB live, 3 054.8MiB allocated; 622ms collecting garbage
Samples
1.1s4 771×1valid
266.0ms3 485×0valid
173.0ms1 607×1exit
130.0ms681×1invalid
43.0ms639×0invalid
Precisions
Click to see histograms. Total time spent on operations: 1.2s
ival-exp: 610.0ms (48.9% of total)
ival-mult!: 225.0ms (18% of total)
adjust: 199.0ms (15.9% of total)
ival-log1p: 160.0ms (12.8% of total)
ival-sub!: 54.0ms (4.3% of total)
Bogosity

preprocess45.0ms (0.7%)

Memory
6.2MiB live, 52.1MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
044127
1156125
2487115
31890115
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
43.0%
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
Symmetry

(negabs c)

Compiler

Compiled 24 to 22 computations (8.3% saved)

series230.0ms (3.6%)

Memory
-16.4MiB live, 315.2MiB allocated; 132ms collecting garbage
Counts
11 → 56
Calls
Call 1
Inputs
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
c
(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
#s(literal 1 binary64)
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
(pow.f64 (E.f64) x)
(E.f64)
x
y
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx c #s(hole binary64 c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 1))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E))))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E))))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E)))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (* y (pow (log (E)) 2))) (* x (+ (* 1/24 (* x (* y (pow (log (E)) 4)))) (* 1/6 (* y (pow (log (E)) 3))))))) (* y (log (E)))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (log (E)))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* 1/2 (* x (pow (log (E)) 2)))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* x (+ (* 1/6 (* x (pow (log (E)) 3))) (* 1/2 (pow (log (E)) 2))))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* x (+ (* 1/2 (pow (log (E)) 2)) (* x (+ (* 1/24 (* x (pow (log (E)) 4))) (* 1/6 (pow (log (E)) 3))))))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (log (E))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (+ (log (E)) (* 1/2 (* x (pow (log (E)) 2))))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (+ (log (E)) (* x (+ (* 1/6 (* x (pow (log (E)) 3))) (* 1/2 (pow (log (E)) 2)))))))))
#s(approx x #s(hole binary64 x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* y (- (pow (E) x) 1)))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (- (pow (E) x) 1)))
#s(approx (pow (E) x) #s(hole binary64 (pow (E) x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx y #s(hole binary64 y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* y (- (+ (/ 1 y) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* -1 (* y (- (* -1 (- (pow (E) x) 1)) (/ 1 y))))))
Calls

9 calls:

TimeVariablePointExpression
87.0ms
x
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) c (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (pow (E) x) (E) x y)
64.0ms
c
@0
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) c (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (pow (E) x) (E) x y)
18.0ms
x
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) c (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (pow (E) x) (E) x y)
14.0ms
c
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) c (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (pow (E) x) (E) x y)
13.0ms
c
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) c (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* (- (pow (E) x) 1) y) (- (pow (E) x) 1) (pow (E) x) (E) x y)

rewrite113.0ms (1.8%)

Memory
11.8MiB live, 152.2MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03502143
03611875
115401552
080191152
Stop Event
iter-limit
node-limit
iter-limit
Counts
67 → 98
Calls
Call 1
Inputs
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
c
(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
#s(literal 1 binary64)
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
(pow.f64 (E.f64) x)
(E.f64)
x
y
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx c #s(hole binary64 c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 1))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E))))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E))))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E)))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (* y (pow (log (E)) 2))) (* x (+ (* 1/24 (* x (* y (pow (log (E)) 4)))) (* 1/6 (* y (pow (log (E)) 3))))))) (* y (log (E)))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (log (E)))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* 1/2 (* x (pow (log (E)) 2)))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* x (+ (* 1/6 (* x (pow (log (E)) 3))) (* 1/2 (pow (log (E)) 2))))))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (* x (+ (log (E)) (* x (+ (* 1/2 (pow (log (E)) 2)) (* x (+ (* 1/24 (* x (pow (log (E)) 4))) (* 1/6 (pow (log (E)) 3))))))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (log (E))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (+ (log (E)) (* 1/2 (* x (pow (log (E)) 2))))))))
#s(approx (pow (E) x) #s(hole binary64 (+ 1 (* x (+ (log (E)) (* x (+ (* 1/6 (* x (pow (log (E)) 3))) (* 1/2 (pow (log (E)) 2)))))))))
#s(approx x #s(hole binary64 x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* y (- (pow (E) x) 1)))))
#s(approx (* (- (pow (E) x) 1) y) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (- (pow (E) x) 1) #s(hole binary64 (- (pow (E) x) 1)))
#s(approx (pow (E) x) #s(hole binary64 (pow (E) x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx y #s(hole binary64 y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* y (- (+ (/ 1 y) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* -1 (* y (- (* -1 (- (pow (E) x) 1)) (/ 1 y))))))
Outputs
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(*.f64 c (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fabs.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c)))
(log.f64 (pow.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
(log.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c))
c
(log1p.f64 (*.f64 (expm1.f64 x) y))
(log.f64 (fabs.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))))
(log.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (neg.f64 y) (expm1.f64 x))))
(neg.f64 (-.f64 (*.f64 (neg.f64 y) (expm1.f64 x)) #s(literal 1 binary64)))
(fma.f64 (expm1.f64 x) y #s(literal 1 binary64))
(fma.f64 y (expm1.f64 x) #s(literal 1 binary64))
(-.f64 (*.f64 (expm1.f64 x) y) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) (expm1.f64 x)))
(+.f64 (*.f64 (expm1.f64 x) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (expm1.f64 x) y))
#s(literal 1 binary64)
(*.f64 (expm1.f64 x) y)
(*.f64 y (expm1.f64 x))
(neg.f64 (*.f64 (neg.f64 y) (expm1.f64 x)))
(fma.f64 (exp.f64 x) y (neg.f64 y))
(fma.f64 y (exp.f64 x) (neg.f64 y))
(+.f64 (*.f64 y (exp.f64 x)) (neg.f64 y))
(+.f64 (*.f64 (exp.f64 x) y) (neg.f64 y))
(neg.f64 (neg.f64 (expm1.f64 x)))
(fma.f64 (exp.f64 x) #s(literal 1 binary64) #s(literal -1 binary64))
(fma.f64 #s(literal 1 binary64) (exp.f64 x) #s(literal -1 binary64))
(expm1.f64 x)
(-.f64 (exp.f64 x) #s(literal 1 binary64))
(+.f64 #s(literal -1 binary64) (exp.f64 x))
(+.f64 (exp.f64 x) #s(literal -1 binary64))
(*.f64 (exp.f64 x) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (exp.f64 x))
(pow.f64 (E.f64) x)
(neg.f64 (*.f64 (exp.f64 x) #s(literal -1 binary64)))
(exp.f64 x)
(log.f64 (pow.f64 (E.f64) (exp.f64 x)))
(E.f64)
x
y
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
#s(approx c c)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (-.f64 y (*.f64 y y)) x) c) #s(literal 1/2 binary64) (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) y)) x) c) #s(literal 1/6 binary64))) x (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) y)) c) #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 (*.f64 y y) #s(literal -7 binary64) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) y))) x) c) #s(literal 1/24 binary64))) (*.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64))) (*.f64 y c)) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) y)) x) #s(literal 1/6 binary64) (*.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64))) x y) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 x (fma.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 (*.f64 y y) #s(literal -7 binary64) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) y))) x) #s(literal 1/24 binary64) (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) y)) #s(literal 1/6 binary64))) x)) y) x))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) y) x #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (fma.f64 (*.f64 y (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))) x y) x #s(literal 1 binary64)))
#s(approx (* (- (pow (E) x) 1) y) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) y) x))
#s(approx (* (- (pow (E) x) 1) y) (*.f64 (fma.f64 (*.f64 y (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))) x y) x))
#s(approx (* (- (pow (E) x) 1) y) (*.f64 (fma.f64 (fma.f64 (*.f64 y (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/6 binary64))) x (*.f64 #s(literal 1/2 binary64) y)) x y) x))
#s(approx (- (pow (E) x) 1) x)
#s(approx (- (pow (E) x) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x))
#s(approx (- (pow (E) x) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (- (pow (E) x) 1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/6 binary64)) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (pow (E) x) (-.f64 x #s(literal -1 binary64)))
#s(approx (pow (E) x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (pow (E) x) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx x x)
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
#s(approx (* (- (pow (E) x) 1) y) (*.f64 (expm1.f64 x) y))
#s(approx (- (pow (E) x) 1) (expm1.f64 x))
#s(approx (pow (E) x) (exp.f64 x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) c) #s(literal -1/2 binary64) (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) #s(literal 1/3 binary64)) c (*.f64 (*.f64 (*.f64 (expm1.f64 x) c) (expm1.f64 x)) #s(literal -1/2 binary64))) y (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (*.f64 (expm1.f64 x) c) (expm1.f64 x)) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) y)) (*.f64 (expm1.f64 x) c)) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (expm1.f64 x)) (expm1.f64 x) (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) #s(literal 1/3 binary64))) y (expm1.f64 x))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 y (fma.f64 (*.f64 #s(literal -1/2 binary64) (expm1.f64 x)) (expm1.f64 x) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y)) (expm1.f64 x)) y))
#s(approx y y)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) y)) #s(literal -1/2 binary64) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 c (*.f64 (expm1.f64 x) y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (*.f64 #s(literal 1/3 binary64) c) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (fma.f64 (/.f64 c (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) y)) #s(literal -1/2 binary64) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 c (*.f64 (expm1.f64 x) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 y) (-.f64 (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)) (log.f64 (expm1.f64 x)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 y) (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y) (log.f64 (expm1.f64 x)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (log.f64 y) (-.f64 (fma.f64 (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) #s(literal -1/3 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))) (log.f64 (expm1.f64 x)))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) y))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (expm1.f64 x)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) #s(literal -1/2 binary64) (/.f64 c (expm1.f64 x))) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (/.f64 c (*.f64 (expm1.f64 x) (expm1.f64 x))) #s(literal -1/2 binary64))) y) (/.f64 c (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 y) (-.f64 (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)) (log.f64 (expm1.f64 x)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 y) (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y) (log.f64 (expm1.f64 x)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 y) (-.f64 (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (expm1.f64 x) (expm1.f64 x))) (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y) (log.f64 (expm1.f64 x)))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (expm1.f64 x)) y))

eval17.0ms (0.3%)

Memory
-30.2MiB live, 16.1MiB allocated; 2ms collecting garbage
Compiler

Compiled 988 to 457 computations (53.7% saved)

prune6.0ms (0.1%)

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

10 alts after pruning (10 fresh and 0 done)

PrunedKeptTotal
New761086
Fresh000
Picked101
Done000
Total771087
Accuracy
99.9%
Counts
87 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.6%
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
92.9%
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
44.1%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
32.8%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
71.5%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
44.9%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x)))
51.9%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
7.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
76.4%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
58.0%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
Compiler

Compiled 278 to 274 computations (1.4% saved)

series228.0ms (3.6%)

Memory
5.1MiB live, 190.3MiB allocated; 19ms collecting garbage
Counts
21 → 96
Calls
Call 1
Inputs
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
c
(log1p.f64 (*.f64 (expm1.f64 x) y))
(*.f64 (expm1.f64 x) y)
(expm1.f64 x)
x
y
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 (*.f64 y c) x)
(*.f64 y c)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))
(fma.f64 y x #s(literal 1 binary64))
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
(fma.f64 (expm1.f64 x) y #s(literal 1 binary64))
Outputs
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (exp x) 1)))))))
#s(approx c #s(hole binary64 c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) x) #s(hole binary64 (* c (* x y))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ y (* -1 (pow y 2)))))) (* c y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))) (* 1/2 (* c (+ y (* -1 (pow y 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c (+ y (* -1 (pow y 2))))) (* x (+ (* 1/24 (* c (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3))))))))) (* 1/6 (* c (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* 1/2 (* x (+ y (* -1 (pow y 2)))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))) (* 1/2 (+ y (* -1 (pow y 2))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 (+ y (* -1 (pow y 2)))) (* x (+ (* 1/24 (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3)))))))) (* 1/6 (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))))))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* 1/2 (* x y))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y)))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 y) (* x (+ (* 1/24 (* x y)) (* 1/6 y)))))))))
#s(approx (- (exp x) 1) #s(hole binary64 x))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 1))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E))))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E))))))))
#s(approx (+ (* y x) 1) #s(hole binary64 (+ 1 (* x y))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* x (+ y (* 1/2 (* x y)))))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (exp x) 1))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (- (exp x) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* y (- (pow (E) x) 1)))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* x (+ y (/ 1 x)))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* y (- (exp x) 1)))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* -1 (* x (- (* -1 y) (/ 1 x))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (exp x) 1) 2)))) (* c (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* 1/3 (* c (* y (pow (- (exp x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (exp x) 1) 4)))) (* 1/3 (* c (pow (- (exp x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* 1/3 (* y (pow (- (exp x) 1) 3)))))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (exp x) 1) 4))) (* 1/3 (pow (- (exp x) 1) 3))))))) 1))))
#s(approx y #s(hole binary64 y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (exp x) 1) 3)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (exp x) 1) 2))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (exp x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (exp x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (exp x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* y (- (+ (/ 1 y) (pow (E) x)) 1))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* y (+ x (/ 1 y)))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (* y (- (+ (exp x) (/ 1 y)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* 1/2 (/ c (* y (pow (- (exp x) 1) 2))))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (exp x) 1) 2))) (* 1/3 (/ c (* y (pow (- (exp x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (exp x) 1) 2)))) (/ 1 (- (exp x) 1))) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (exp x) 1) 3)))) (* 1/2 (/ 1 (pow (- (exp x) 1) 2)))) y)) (/ 1 (- (exp x) 1))) y))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* -1 (* y (- (* -1 (- (pow (E) x) 1)) (/ 1 y))))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* -1 (* y (- (* -1 x) (/ 1 y))))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (* -1 (* y (- (* -1 (- (exp x) 1)) (/ 1 y))))))
Calls

9 calls:

TimeVariablePointExpression
55.0ms
c
@inf
((* c (log (+ 1 (* (- (exp x) 1) y)))) c (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1) x y (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) x) (* y c) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* (log (+ (* (- (exp x) 1) y) 1)) c) (log (+ (* (- (exp x) 1) y) 1)) (+ (* (- (exp x) 1) y) 1))
44.0ms
x
@inf
((* c (log (+ 1 (* (- (exp x) 1) y)))) c (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1) x y (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) x) (* y c) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* (log (+ (* (- (exp x) 1) y) 1)) c) (log (+ (* (- (exp x) 1) y) 1)) (+ (* (- (exp x) 1) y) 1))
42.0ms
c
@0
((* c (log (+ 1 (* (- (exp x) 1) y)))) c (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1) x y (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) x) (* y c) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* (log (+ (* (- (exp x) 1) y) 1)) c) (log (+ (* (- (exp x) 1) y) 1)) (+ (* (- (exp x) 1) y) 1))
27.0ms
y
@0
((* c (log (+ 1 (* (- (exp x) 1) y)))) c (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1) x y (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) x) (* y c) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* (log (+ (* (- (exp x) 1) y) 1)) c) (log (+ (* (- (exp x) 1) y) 1)) (+ (* (- (exp x) 1) y) 1))
24.0ms
x
@-inf
((* c (log (+ 1 (* (- (exp x) 1) y)))) c (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1) x y (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) x) (* y c) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) 1 (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (+ 1 (* (- (pow (E) x) 1) y)) (+ (* y x) 1) (* (log (+ (* (- (exp x) 1) y) 1)) c) (log (+ (* (- (exp x) 1) y) 1)) (+ (* (- (exp x) 1) y) 1))

rewrite164.0ms (2.6%)

Memory
18.4MiB live, 153.2MiB allocated; 24ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06163338
06363027
125932888
085522576
Stop Event
iter-limit
node-limit
iter-limit
Counts
117 → 207
Calls
Call 1
Inputs
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
c
(log1p.f64 (*.f64 (expm1.f64 x) y))
(*.f64 (expm1.f64 x) y)
(expm1.f64 x)
x
y
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 (*.f64 y c) x)
(*.f64 y c)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))
(fma.f64 y x #s(literal 1 binary64))
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
(fma.f64 (expm1.f64 x) y #s(literal 1 binary64))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (exp x) 1)))))))
#s(approx c #s(hole binary64 c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) x) #s(hole binary64 (* c (* x y))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ y (* -1 (pow y 2)))))) (* c y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))) (* 1/2 (* c (+ y (* -1 (pow y 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c (+ y (* -1 (pow y 2))))) (* x (+ (* 1/24 (* c (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3))))))))) (* 1/6 (* c (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* 1/2 (* x (+ y (* -1 (pow y 2)))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))) (* 1/2 (+ y (* -1 (pow y 2))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 (+ y (* -1 (pow y 2)))) (* x (+ (* 1/24 (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3)))))))) (* 1/6 (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))))))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* 1/2 (* x y))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y)))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 y) (* x (+ (* 1/24 (* x y)) (* 1/6 y)))))))))
#s(approx (- (exp x) 1) #s(hole binary64 x))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 1))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (* y (log (E)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* 1/2 (* x (* y (pow (log (E)) 2)))) (* y (log (E))))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* x (+ (* x (+ (* 1/6 (* x (* y (pow (log (E)) 3)))) (* 1/2 (* y (pow (log (E)) 2))))) (* y (log (E))))))))
#s(approx (+ (* y x) 1) #s(hole binary64 (+ 1 (* x y))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* x (+ y (* 1/2 (* x y)))))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (exp x) 1))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (- (exp x) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (+ 1 (* y (- (pow (E) x) 1)))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* x (+ y (/ 1 x)))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (+ 1 (* y (- (exp x) 1)))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* -1 (* x (- (* -1 y) (/ 1 x))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (exp x) 1) 2)))) (* c (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* 1/3 (* c (* y (pow (- (exp x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (exp x) 1) 4)))) (* 1/3 (* c (pow (- (exp x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* 1/3 (* y (pow (- (exp x) 1) 3)))))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (exp x) 1) 4))) (* 1/3 (pow (- (exp x) 1) 3))))))) 1))))
#s(approx y #s(hole binary64 y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (exp x) 1) 3)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (exp x) 1) 2))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (exp x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (exp x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (exp x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* y (- (+ (/ 1 y) (pow (E) x)) 1))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* y (+ x (/ 1 y)))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (* y (- (+ (exp x) (/ 1 y)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* 1/2 (/ c (* y (pow (- (exp x) 1) 2))))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (exp x) 1) 2))) (* 1/3 (/ c (* y (pow (- (exp x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (exp x) 1) 2)))) (/ 1 (- (exp x) 1))) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (exp x) 1) 3)))) (* 1/2 (/ 1 (pow (- (exp x) 1) 2)))) y)) (/ 1 (- (exp x) 1))) y))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(hole binary64 (* -1 (* y (- (* -1 (- (pow (E) x) 1)) (/ 1 y))))))
#s(approx (+ (* y x) 1) #s(hole binary64 (* -1 (* y (- (* -1 x) (/ 1 y))))))
#s(approx (+ (* (- (exp x) 1) y) 1) #s(hole binary64 (* -1 (* y (- (* -1 (- (exp x) 1)) (/ 1 y))))))
Outputs
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(*.f64 c (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fabs.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c)))
(log.f64 (pow.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
(log.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c))
c
(log1p.f64 (*.f64 (neg.f64 (neg.f64 y)) (expm1.f64 x)))
(log1p.f64 (*.f64 (expm1.f64 x) y))
(log.f64 (fabs.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))))
(log.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
(*.f64 (expm1.f64 x) y)
(*.f64 y (expm1.f64 x))
(neg.f64 (*.f64 (neg.f64 y) (expm1.f64 x)))
(neg.f64 (neg.f64 (expm1.f64 x)))
(expm1.f64 x)
(-.f64 (exp.f64 x) #s(literal 1 binary64))
(+.f64 (exp.f64 x) #s(literal -1 binary64))
x
y
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 (*.f64 y c) x)
(*.f64 y (*.f64 c x))
(*.f64 x (*.f64 y c))
(*.f64 y c)
(*.f64 c y)
(*.f64 (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))) c)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
(log.f64 (fabs.f64 (pow.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)) c)))
(log.f64 (pow.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))) c))
(log.f64 (pow.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)) c))
(log.f64 (fabs.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)))))
(log.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))) c)
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
(log.f64 (fabs.f64 (pow.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))) c)))
(log.f64 (pow.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))) c))
(log.f64 (pow.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))) c))
(log.f64 (fabs.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))))))
(log.f64 (fabs.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
(log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))
(*.f64 (neg.f64 x) (neg.f64 (-.f64 y (/.f64 #s(literal -1 binary64) x))))
(*.f64 (neg.f64 y) (neg.f64 (-.f64 x (/.f64 #s(literal -1 binary64) y))))
(*.f64 (neg.f64 (fma.f64 y x #s(literal 1 binary64))) #s(literal -1 binary64))
(*.f64 (neg.f64 (-.f64 x (/.f64 #s(literal -1 binary64) y))) (neg.f64 y))
(*.f64 (-.f64 x (/.f64 #s(literal -1 binary64) y)) y)
(*.f64 (neg.f64 (-.f64 y (/.f64 #s(literal -1 binary64) x))) (neg.f64 x))
(*.f64 (-.f64 y (/.f64 #s(literal -1 binary64) x)) x)
(*.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 y x #s(literal 1 binary64))))
(*.f64 y (-.f64 x (/.f64 #s(literal -1 binary64) y)))
(*.f64 x (-.f64 y (/.f64 #s(literal -1 binary64) x)))
(neg.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 y x #s(literal 1 binary64)))))
(neg.f64 (*.f64 (neg.f64 y) (-.f64 x (/.f64 #s(literal -1 binary64) y))))
(neg.f64 (*.f64 (neg.f64 (fma.f64 y x #s(literal 1 binary64))) #s(literal 1 binary64)))
(neg.f64 (*.f64 (neg.f64 x) (-.f64 y (/.f64 #s(literal -1 binary64) x))))
(neg.f64 (-.f64 (*.f64 (neg.f64 x) y) #s(literal 1 binary64)))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 y x)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (neg.f64 x) y)))
(neg.f64 (neg.f64 (fma.f64 y x #s(literal 1 binary64))))
(fma.f64 (neg.f64 (neg.f64 y)) x #s(literal 1 binary64))
(fma.f64 (*.f64 y x) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 y x (/.f64 x x))
(fma.f64 y x (/.f64 y y))
(fma.f64 y x #s(literal 1 binary64))
(fma.f64 x (neg.f64 (neg.f64 y)) #s(literal 1 binary64))
(fma.f64 x y (/.f64 x x))
(fma.f64 x y (/.f64 y y))
(fma.f64 x y #s(literal 1 binary64))
(-.f64 (neg.f64 (*.f64 (neg.f64 x) y)) #s(literal -1 binary64))
(-.f64 (*.f64 y x) (*.f64 (neg.f64 x) (/.f64 #s(literal 1 binary64) x)))
(-.f64 (*.f64 y x) (*.f64 (/.f64 #s(literal -1 binary64) x) x))
(-.f64 (*.f64 y x) (*.f64 (neg.f64 y) (/.f64 #s(literal 1 binary64) y)))
(-.f64 (*.f64 y x) (*.f64 (/.f64 #s(literal -1 binary64) y) y))
(-.f64 (*.f64 y x) (neg.f64 (/.f64 x x)))
(-.f64 (*.f64 y x) (neg.f64 (/.f64 y y)))
(-.f64 (*.f64 y x) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) x))
(-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (neg.f64 x) y) #s(literal 1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 x) y))
(+.f64 (neg.f64 (*.f64 (neg.f64 x) y)) #s(literal 1 binary64))
(+.f64 (*.f64 y x) (/.f64 x x))
(+.f64 (*.f64 y x) (/.f64 y y))
(+.f64 (*.f64 y x) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 y))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 x)) y))
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (neg.f64 x) y)))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(*.f64 c (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fabs.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c)))
(log.f64 (pow.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
(log.f64 (pow.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)) c))
(log1p.f64 (*.f64 (neg.f64 (neg.f64 y)) (expm1.f64 x)))
(log1p.f64 (*.f64 (expm1.f64 x) y))
(log.f64 (fabs.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))))
(log.f64 (fabs.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
(log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
(neg.f64 (+.f64 #s(literal -1 binary64) (*.f64 (neg.f64 y) (expm1.f64 x))))
(neg.f64 (-.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)))
(neg.f64 (-.f64 (*.f64 (neg.f64 y) (expm1.f64 x)) #s(literal 1 binary64)))
(fma.f64 (expm1.f64 x) y #s(literal 1 binary64))
(fma.f64 y (expm1.f64 x) #s(literal 1 binary64))
(-.f64 (*.f64 (expm1.f64 x) y) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) (expm1.f64 x)))
(+.f64 (*.f64 (expm1.f64 x) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 y)) (expm1.f64 x)))
(+.f64 #s(literal 1 binary64) (*.f64 (expm1.f64 x) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
#s(approx c c)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (fma.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y #s(literal 1 binary64))) c))
#s(approx (* (* y c) x) (*.f64 (*.f64 y x) c))
#s(approx (* y c) (*.f64 y c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (-.f64 y (*.f64 y y)) x) c) #s(literal 1/2 binary64) (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) x) c) #s(literal 1/6 binary64))) x (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) c) #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 (+.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) (*.f64 #s(literal -3 binary64) (*.f64 y y))))) y) x) c) #s(literal 1/24 binary64))) (*.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64))) (*.f64 y c)) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (fma.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64) (*.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) x) #s(literal 1/6 binary64))) x y) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 x (fma.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 (+.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) (*.f64 #s(literal -3 binary64) (*.f64 y y))))) y) x) #s(literal 1/24 binary64) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) #s(literal 1/6 binary64))) x)) y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) (*.f64 #s(literal 1/2 binary64) y)) x y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 y x) (*.f64 #s(literal 1/6 binary64) y)) x (*.f64 #s(literal 1/2 binary64) y)) x y) x))
#s(approx (- (exp x) 1) x)
#s(approx (- (exp x) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/6 binary64)) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (neg.f64 (*.f64 (neg.f64 x) y)) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (-.f64 y (*.f64 y y)) x) c) #s(literal 1/2 binary64) (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 2 binary64)) (neg.f64 y))) x) c) #s(literal 1/6 binary64) (*.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64))) x) (*.f64 (neg.f64 y) c)) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (-.f64 (*.f64 (fma.f64 x (fma.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 2 binary64)) (neg.f64 y))) c) #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 (fma.f64 (pow.f64 (neg.f64 (neg.f64 y)) #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 12 binary64)) (neg.f64 y))))) x) c) #s(literal 1/24 binary64))) (*.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64))) x) (*.f64 (neg.f64 y) c)) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (neg.f64 (*.f64 (neg.f64 x) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 2 binary64)) (neg.f64 y))) x) #s(literal 1/6 binary64) (*.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64))) x) (neg.f64 y)) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (-.f64 (*.f64 (fma.f64 x (fma.f64 (*.f64 #s(literal 1/24 binary64) x) (fma.f64 (pow.f64 (neg.f64 (neg.f64 y)) #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 12 binary64)) (neg.f64 y))))) (*.f64 (fma.f64 #s(literal -3 binary64) (*.f64 y y) (-.f64 (*.f64 (*.f64 (neg.f64 (neg.f64 y)) (*.f64 y y)) #s(literal 2 binary64)) (neg.f64 y))) #s(literal 1/6 binary64))) (*.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64))) x) (neg.f64 y)) x))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (-.f64 (*.f64 (neg.f64 (*.f64 (neg.f64 x) y)) #s(literal 1/2 binary64)) (neg.f64 y)) x #s(literal 1 binary64)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) (*.f64 #s(literal 1/2 binary64) y)) x y) x #s(literal 1 binary64)))
#s(approx (+ (* y x) 1) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ (* (- (exp x) 1) y) 1) (fma.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 y x) y) x #s(literal 1 binary64)))
#s(approx (+ (* (- (exp x) 1) y) 1) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) (*.f64 #s(literal 1/2 binary64) y)) x y) x #s(literal 1 binary64)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
#s(approx (* (- (exp x) 1) y) (*.f64 (expm1.f64 x) y))
#s(approx (- (exp x) 1) (expm1.f64 x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (log.f64 (fma.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y #s(literal 1 binary64))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y #s(literal 1 binary64)))
#s(approx (+ (* y x) 1) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ (* (- (exp x) 1) y) 1) (fma.f64 (expm1.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (* y x) 1) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) y) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) c) #s(literal -1/2 binary64) (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64))) y (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) y)) (*.f64 (expm1.f64 x) c)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (-.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (exp.f64 x)) #s(literal 1 binary64)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (-.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) #s(literal 1/3 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) y (exp.f64 x)) #s(literal 1 binary64)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (-.f64 (fma.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) (exp.f64 x)) #s(literal 1 binary64)) y))
#s(approx y y)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) y) c) #s(literal -1/2 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) c)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (expm1.f64 (neg.f64 (neg.f64 x))) c (*.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) y) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) c) #s(literal -1/2 binary64))) y)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (expm1.f64 (neg.f64 (neg.f64 x))) c (*.f64 (fma.f64 y (fma.f64 (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) (*.f64 (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) c) #s(literal -1/2 binary64))) y)) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) y) #s(literal -1/2 binary64) (expm1.f64 (neg.f64 (neg.f64 x)))) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) y) #s(literal 1/3 binary64) (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) #s(literal -1/2 binary64))) y (expm1.f64 (neg.f64 (neg.f64 x)))) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y)) (expm1.f64 (neg.f64 (neg.f64 x)))) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/3 binary64) c) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (fma.f64 (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) #s(literal -1/3 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/3 binary64) c) (pow.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y) #s(literal -3 binary64)) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) (*.f64 y y)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (fma.f64 (pow.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y) #s(literal -3 binary64)) #s(literal -1/3 binary64) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y)))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) (*.f64 y y)))))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (expm1.f64 (neg.f64 (neg.f64 x)))) y))
#s(approx (+ (* y x) 1) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ (* (- (exp x) 1) y) 1) (*.f64 (-.f64 (-.f64 (exp.f64 x) (/.f64 #s(literal -1 binary64) y)) #s(literal 1 binary64)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) #s(literal -1/2 binary64) (/.f64 c (expm1.f64 x))) y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (/.f64 c (*.f64 (expm1.f64 x) (expm1.f64 x))) #s(literal -1/2 binary64))) y) (/.f64 c (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (expm1.f64 x) (expm1.f64 x))) (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) y)) #s(literal -1/2 binary64) (/.f64 c (expm1.f64 (neg.f64 (neg.f64 x))))) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) c (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (/.f64 c (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x))))) #s(literal -1/2 binary64))) y) (/.f64 c (expm1.f64 (neg.f64 (neg.f64 x))))) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) y))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x)))) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 (neg.f64 (neg.f64 x))))) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 (neg.f64 (neg.f64 x)))) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (expm1.f64 (neg.f64 (neg.f64 x))) (expm1.f64 (neg.f64 (neg.f64 x))))) (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (expm1.f64 (neg.f64 (neg.f64 x))) #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (expm1.f64 (neg.f64 (neg.f64 x))))) y)))
#s(approx (+ 1 (* (- (pow (E) x) 1) y)) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (expm1.f64 (neg.f64 (neg.f64 x)))) y))
#s(approx (+ (* y x) 1) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (+ (* (- (exp x) 1) y) 1) (*.f64 y (+.f64 (/.f64 #s(literal 1 binary64) y) (expm1.f64 x))))

eval34.0ms (0.5%)

Memory
-12.6MiB live, 29.3MiB allocated; 8ms collecting garbage
Compiler

Compiled 2 182 to 852 computations (61% saved)

prune8.0ms (0.1%)

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

12 alts after pruning (7 fresh and 5 done)

PrunedKeptTotal
New1743177
Fresh145
Picked055
Done000
Total17512187
Accuracy
99.9%
Counts
187 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.6%
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
92.9%
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
64.0%
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
44.1%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
32.8%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
71.5%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
51.9%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
7.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
76.4%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
76.7%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
58.0%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
56.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
Compiler

Compiled 268 to 264 computations (1.5% saved)

series260.0ms (4.1%)

Memory
6.7MiB live, 285.8MiB allocated; 72ms collecting garbage
Counts
23 → 90
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x))))
(*.f64 y c)
y
c
(expm1.f64 (neg.f64 (neg.f64 x)))
(neg.f64 (neg.f64 x))
(neg.f64 x)
x
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
(*.f64 y (*.f64 c x))
(*.f64 c x)
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x))
(*.f64 y x)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 (*.f64 (expm1.f64 x) c) y)
(*.f64 (expm1.f64 x) c)
(expm1.f64 x)
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
(log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y))
(*.f64 #s(approx (- (exp x) 1) x) y)
#s(approx (- (exp x) 1) x)
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx c #s(hole binary64 c))
#s(approx (* y (* c x)) #s(hole binary64 (* c (* x y))))
#s(approx (* c x) #s(hole binary64 (* c x)))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* c (- (exp x) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* 1/2 (* c (* x y))) (* c y)))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x y))) (* 1/2 (* c y))))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c y)) (* x (+ (* 1/24 (* c (* x y))) (* 1/6 (* c y))))))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 x))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (neg x) #s(hole binary64 (* -1 x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (* y x) #s(hole binary64 (* x y)))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* 1/2 (* c x))))))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* x (+ (* 1/6 (* c x)) (* 1/2 c)))))))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* x (+ (* 1/2 c) (* x (+ (* 1/24 (* c x)) (* 1/6 c)))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ y (* -1 (pow y 2)))))) (* c y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))) (* 1/2 (* c (+ y (* -1 (pow y 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c (+ y (* -1 (pow y 2))))) (* x (+ (* 1/24 (* c (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3))))))))) (* 1/6 (* c (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* 1/2 (* x (+ y (* -1 (pow y 2)))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))) (* 1/2 (+ y (* -1 (pow y 2))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 (+ y (* -1 (pow y 2)))) (* x (+ (* 1/24 (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3)))))))) (* 1/6 (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))))))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* 1/2 (* x y))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y)))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 y) (* x (+ (* 1/24 (* x y)) (* 1/6 y)))))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (exp x) 1))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* c (* y (- (exp (neg (* -1 x))) 1)))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (- (exp (neg (* -1 x))) 1)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx y #s(hole binary64 y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (exp x) 1) 2)))) (* c (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* 1/3 (* c (* y (pow (- (exp x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (exp x) 1) 4)))) (* 1/3 (* c (pow (- (exp x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* 1/3 (* y (pow (- (exp x) 1) 3)))))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (exp x) 1) 4))) (* 1/3 (pow (- (exp x) 1) 3))))))) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (exp x) 1) 3)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (exp x) 1) 2))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (exp x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (exp x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (exp x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* 1/2 (/ c (* y (pow (- (exp x) 1) 2))))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (exp x) 1) 2))) (* 1/3 (/ c (* y (pow (- (exp x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (exp x) 1) 2)))) (/ 1 (- (exp x) 1))) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (exp x) 1) 3)))) (* 1/2 (/ 1 (pow (- (exp x) 1) 2)))) y)) (/ 1 (- (exp x) 1))) y))))))
Calls

9 calls:

TimeVariablePointExpression
79.0ms
x
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp (neg (neg x))) 1)) (* y c) y c (- (exp (neg (neg x))) 1) (neg (neg x)) (neg x) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* y (* c x)) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* c (log (+ 1 (* (- (exp x) 1) y)))) (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1))
57.0ms
c
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp (neg (neg x))) 1)) (* y c) y c (- (exp (neg (neg x))) 1) (neg (neg x)) (neg x) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* y (* c x)) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* c (log (+ 1 (* (- (exp x) 1) y)))) (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1))
52.0ms
c
@0
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp (neg (neg x))) 1)) (* y c) y c (- (exp (neg (neg x))) 1) (neg (neg x)) (neg x) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* y (* c x)) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* c (log (+ 1 (* (- (exp x) 1) y)))) (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1))
45.0ms
c
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp (neg (neg x))) 1)) (* y c) y c (- (exp (neg (neg x))) 1) (neg (neg x)) (neg x) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* y (* c x)) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* c (log (+ 1 (* (- (exp x) 1) y)))) (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1))
15.0ms
x
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp (neg (neg x))) 1)) (* y c) y c (- (exp (neg (neg x))) 1) (neg (neg x)) (neg x) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* y (* c x)) (* c x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* y x) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* (- (exp x) 1) c) y) (* (- (exp x) 1) c) (- (exp x) 1) (* c (log (+ 1 (* (- (exp x) 1) y)))) (log (+ 1 (* (- (exp x) 1) y))) (* (- (exp x) 1) y) (- (exp x) 1))

rewrite124.0ms (1.9%)

Memory
22.7MiB live, 260.0MiB allocated; 28ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06173302
06393242
126372600
088312334
Stop Event
iter-limit
node-limit
iter-limit
Counts
113 → 161
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x))))
(*.f64 y c)
y
c
(expm1.f64 (neg.f64 (neg.f64 x)))
(neg.f64 (neg.f64 x))
(neg.f64 x)
x
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
(*.f64 y (*.f64 c x))
(*.f64 c x)
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x))
(*.f64 y x)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 (*.f64 (expm1.f64 x) c) y)
(*.f64 (expm1.f64 x) c)
(expm1.f64 x)
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
(log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y))
(*.f64 #s(approx (- (exp x) 1) x) y)
#s(approx (- (exp x) 1) x)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx c #s(hole binary64 c))
#s(approx (* y (* c x)) #s(hole binary64 (* c (* x y))))
#s(approx (* c x) #s(hole binary64 (* c x)))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* c (- (exp x) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* 1/2 (* c (* x y))) (* c y)))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x y))) (* 1/2 (* c y))))))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c y)) (* x (+ (* 1/24 (* c (* x y))) (* 1/6 (* c y))))))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 x))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (neg x) #s(hole binary64 (* -1 x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (* y x) #s(hole binary64 (* x y)))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* 1/2 (* c x))))))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* x (+ (* 1/6 (* c x)) (* 1/2 c)))))))
#s(approx (* (- (exp x) 1) c) #s(hole binary64 (* x (+ c (* x (+ (* 1/2 c) (* x (+ (* 1/24 (* c x)) (* 1/6 c)))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ y (* -1 (pow y 2)))))) (* c y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))) (* 1/2 (* c (+ y (* -1 (pow y 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c (+ y (* -1 (pow y 2))))) (* x (+ (* 1/24 (* c (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3))))))))) (* 1/6 (* c (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3))))))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* 1/2 (* x (+ y (* -1 (pow y 2)))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))) (* 1/2 (+ y (* -1 (pow y 2))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 (+ y (* -1 (pow y 2)))) (* x (+ (* 1/24 (* x (+ y (+ (* -6 (pow y 4)) (+ (* -4 (pow y 2)) (+ (* -3 (pow y 2)) (* 12 (pow y 3)))))))) (* 1/6 (+ y (+ (* -3 (pow y 2)) (* 2 (pow y 3)))))))))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* 1/2 (* x y))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/6 (* x y)) (* 1/2 y)))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* x (+ y (* x (+ (* 1/2 y) (* x (+ (* 1/24 (* x y)) (* 1/6 y)))))))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (exp x) 1))))))
#s(approx (* (- (exp x) 1) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) #s(hole binary64 (* c (* y (- (exp (neg (* -1 x))) 1)))))
#s(approx (- (exp (neg (neg x))) 1) #s(hole binary64 (- (exp (neg (* -1 x))) 1)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx y #s(hole binary64 y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (exp x) 1) 2)))) (* c (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* 1/3 (* c (* y (pow (- (exp x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (exp x) 1)) (* y (+ (* -1/2 (* c (pow (- (exp x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (exp x) 1) 4)))) (* 1/3 (* c (pow (- (exp x) 1) 3)))))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* 1/3 (* y (pow (- (exp x) 1) 3)))))) 1))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (* y (- (+ (exp x) (* y (+ (* -1/2 (pow (- (exp x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (exp x) 1) 4))) (* 1/3 (pow (- (exp x) 1) 3))))))) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (exp x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (exp x) 1) 3)))) (+ (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (exp x) 1))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (exp x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (exp x) 1) 2))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (- (+ (log (- (exp x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (exp x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (exp x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (exp x) 1) 2)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* 1/2 (/ c (* y (pow (- (exp x) 1) 2))))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (exp x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (exp x) 1) 2))) (* 1/3 (/ c (* y (pow (- (exp x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (exp x) 1)))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (exp x) 1) 2)))) (/ 1 (- (exp x) 1))) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (exp x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (exp x) 1) 3)))) (* 1/2 (/ 1 (pow (- (exp x) 1) 2)))) y)) (/ 1 (- (exp x) 1))) y))))))
Outputs
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 (*.f64 (expm1.f64 x) c) y)
(*.f64 (*.f64 y c) (expm1.f64 x))
(*.f64 (*.f64 (expm1.f64 x) y) c)
(*.f64 (expm1.f64 x) (*.f64 y c))
(*.f64 y (*.f64 (expm1.f64 x) c))
(*.f64 c (*.f64 (expm1.f64 x) y))
(neg.f64 (*.f64 (*.f64 y c) (neg.f64 (expm1.f64 x))))
(*.f64 y c)
(*.f64 c y)
y
c
(neg.f64 (neg.f64 (expm1.f64 x)))
(fma.f64 #s(literal 1 binary64) (exp.f64 x) #s(literal -1 binary64))
(expm1.f64 (-.f64 #s(literal 0 binary64) (neg.f64 x)))
(expm1.f64 x)
(-.f64 (exp.f64 x) #s(literal 1 binary64))
(+.f64 (exp.f64 x) #s(literal -1 binary64))
x
(*.f64 #s(literal -1 binary64) x)
(*.f64 x #s(literal -1 binary64))
(neg.f64 x)
x
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 y x) c))
(*.f64 (*.f64 y x) c)
(*.f64 (*.f64 x c) y)
(*.f64 (*.f64 y c) x)
(*.f64 y (*.f64 x c))
(*.f64 c (*.f64 y x))
(neg.f64 (*.f64 (*.f64 y c) (neg.f64 x)))
(*.f64 x c)
(*.f64 c x)
(neg.f64 (*.f64 c (neg.f64 x)))
(*.f64 #s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y x)) c)
(*.f64 c #s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y x)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y x))
(*.f64 y x)
(*.f64 x y)
(neg.f64 (*.f64 y (neg.f64 x)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 (*.f64 (expm1.f64 x) c) y)
(*.f64 (*.f64 y c) (expm1.f64 x))
(*.f64 (*.f64 (expm1.f64 x) y) c)
(*.f64 (expm1.f64 x) (*.f64 y c))
(*.f64 y (*.f64 (expm1.f64 x) c))
(*.f64 c (*.f64 (expm1.f64 x) y))
(neg.f64 (*.f64 (*.f64 y c) (neg.f64 (expm1.f64 x))))
(*.f64 (expm1.f64 x) c)
(*.f64 c (expm1.f64 x))
(neg.f64 (*.f64 c (neg.f64 (expm1.f64 x))))
(neg.f64 (neg.f64 (expm1.f64 x)))
(fma.f64 #s(literal 1 binary64) (exp.f64 x) #s(literal -1 binary64))
(expm1.f64 (-.f64 #s(literal 0 binary64) (neg.f64 x)))
(expm1.f64 x)
(-.f64 (exp.f64 x) #s(literal 1 binary64))
(+.f64 (exp.f64 x) #s(literal -1 binary64))
(*.f64 (log.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64))) c)
(*.f64 c (log.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64))))
(log.f64 (fabs.f64 (pow.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64)) c)))
(log.f64 (pow.f64 (fabs.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64))) c))
(log.f64 (pow.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64)) c))
(log1p.f64 (*.f64 (neg.f64 (neg.f64 #s(approx (- (exp x) 1) x))) y))
(log1p.f64 (neg.f64 (*.f64 (neg.f64 #s(approx (- (exp x) 1) x)) y)))
(log1p.f64 (neg.f64 (neg.f64 (*.f64 #s(approx (- (exp x) 1) x) y))))
(log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y))
(log.f64 (fabs.f64 (fabs.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64)))))
(log.f64 (fabs.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64))))
(log.f64 (fma.f64 #s(approx (- (exp x) 1) x) y #s(literal 1 binary64)))
(*.f64 #s(approx (- (exp x) 1) x) y)
(*.f64 y #s(approx (- (exp x) 1) x))
#s(approx (- (exp x) 1) x)
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) (*.f64 (*.f64 (expm1.f64 x) c) y))
#s(approx (* y c) (*.f64 y c))
#s(approx c c)
#s(approx (* y (* c x)) (*.f64 (*.f64 y x) c))
#s(approx (* c x) (*.f64 x c))
#s(approx (* (- (exp x) 1) c) (*.f64 (expm1.f64 x) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 (*.f64 y x) #s(literal 1 binary64)) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 y #s(literal 1 binary64)) c (*.f64 (*.f64 #s(literal 1/2 binary64) c) (*.f64 (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))) x))) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) c) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))) (*.f64 (*.f64 (*.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) x) c) #s(literal 1/6 binary64))) x (*.f64 (*.f64 y c) #s(literal 1 binary64))) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (*.f64 #s(literal 1/24 binary64) c) (*.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64)) #s(literal 1 binary64) (-.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 #s(literal 12 binary64) (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -4 binary64)))) x) (*.f64 (*.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) c) #s(literal 1/6 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) c) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))))) (*.f64 (*.f64 y c) #s(literal 1 binary64))) x))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 y x) c) (*.f64 y c)) x))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y x) c) (*.f64 #s(literal 1/2 binary64) (*.f64 y c))) x (*.f64 y c)) x))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 y x) c) (*.f64 #s(literal 1/6 binary64) (*.f64 y c))) x (*.f64 #s(literal 1/2 binary64) (*.f64 y c))) x (*.f64 y c)) x))
#s(approx (- (exp x) 1) x)
#s(approx (- (exp x) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/6 binary64)) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (neg x) (neg.f64 x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (*.f64 y x) #s(literal 1 binary64)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))) (*.f64 y #s(literal 1 binary64))) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) x) #s(literal 1/6 binary64) (*.f64 (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))) #s(literal 1/2 binary64))) x (*.f64 y #s(literal 1 binary64))) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) #s(literal 1/6 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) x) (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64)) #s(literal 1 binary64) (-.f64 (-.f64 (fma.f64 y #s(literal 1 binary64) (*.f64 #s(literal 12 binary64) (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -3 binary64))) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -4 binary64)))))) (*.f64 (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 y y))) #s(literal 1/2 binary64))) (*.f64 y #s(literal 1 binary64))) x))
#s(approx (* y x) (*.f64 y x))
#s(approx (* (- (exp x) 1) c) (*.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 x c) c) x))
#s(approx (* (- (exp x) 1) c) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 x c) (*.f64 #s(literal 1/2 binary64) c)) x c) x))
#s(approx (* (- (exp x) 1) c) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 x c) (*.f64 #s(literal 1/6 binary64) c)) x (*.f64 #s(literal 1/2 binary64) c)) x c) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (-.f64 y (*.f64 y y)) x) c) #s(literal 1/2 binary64) (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) x) c) #s(literal 1/6 binary64))) x (*.f64 y c)) x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) c) #s(literal 1/6 binary64) (*.f64 (*.f64 (*.f64 (+.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) (*.f64 #s(literal -3 binary64) (*.f64 y y))))) y) x) c) #s(literal 1/24 binary64))) (*.f64 (*.f64 (-.f64 y (*.f64 y y)) c) #s(literal 1/2 binary64))) (*.f64 y c)) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (*.f64 (-.f64 y (*.f64 y y)) x) #s(literal 1/2 binary64) y) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) x) #s(literal 1/6 binary64) (*.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64))) x y) x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 x (fma.f64 (-.f64 y (*.f64 y y)) #s(literal 1/2 binary64) (*.f64 (fma.f64 (*.f64 (+.f64 (fma.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -6 binary64) (fma.f64 #s(literal -4 binary64) (*.f64 y y) (fma.f64 #s(literal 12 binary64) (*.f64 (*.f64 y y) y) (*.f64 #s(literal -3 binary64) (*.f64 y y))))) y) x) #s(literal 1/24 binary64) (*.f64 (+.f64 (fma.f64 (*.f64 (*.f64 y y) y) #s(literal 2 binary64) (*.f64 #s(literal -3 binary64) (*.f64 y y))) y) #s(literal 1/6 binary64))) x)) y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) y y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y (*.f64 #s(literal 1/2 binary64) y)) x y) x))
#s(approx (* (- (exp x) 1) y) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/24 binary64) x) y (*.f64 #s(literal 1/6 binary64) y)) x (*.f64 #s(literal 1/2 binary64) y)) x y) x))
#s(approx (- (exp x) 1) (expm1.f64 x))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))))
#s(approx (* (- (exp x) 1) y) (*.f64 (expm1.f64 x) y))
#s(approx (* (* y c) (- (exp (neg (neg x))) 1)) (*.f64 (*.f64 (expm1.f64 x) c) y))
#s(approx (- (exp x) 1) (expm1.f64 x))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) c) #s(literal -1/2 binary64) (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64))) y (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) y)) (*.f64 (expm1.f64 x) c)) y))
#s(approx y y)
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (expm1.f64 x) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) #s(literal 1/3 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) y (expm1.f64 x))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) (expm1.f64 x)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) c) #s(literal -1/2 binary64) (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64))) y (*.f64 (expm1.f64 x) c)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) c) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) y)) (*.f64 (expm1.f64 x) c)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y) #s(literal 1/3 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) y (expm1.f64 x))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (*.f64 (fma.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (expm1.f64 x) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64))) (expm1.f64 x)) y))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/3 binary64) c) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (fma.f64 #s(literal -1/3 binary64) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y))) #s(literal -1/2 binary64) (fma.f64 (*.f64 #s(literal 1/3 binary64) c) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (fma.f64 #s(literal -1/3 binary64) (pow.f64 (*.f64 (expm1.f64 x) y) #s(literal -3 binary64)) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y)))) (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (-.f64 (/.f64 c (expm1.f64 x)) (*.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) #s(literal 1/2 binary64))) y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (/.f64 c (*.f64 (expm1.f64 x) (expm1.f64 x))) #s(literal -1/2 binary64))) y) (/.f64 c (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (expm1.f64 x) (expm1.f64 x))) (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (*.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 c (*.f64 (expm1.f64 x) y))))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (-.f64 (/.f64 c (expm1.f64 x)) (*.f64 (/.f64 c (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) #s(literal 1/2 binary64))) y)))
#s(approx (* c (log (+ 1 (* (- (exp x) 1) y)))) (fma.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) c (/.f64 (+.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (/.f64 c (*.f64 (expm1.f64 x) (expm1.f64 x))) #s(literal -1/2 binary64))) y) (/.f64 c (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 #s(literal -1 binary64) (*.f64 (expm1.f64 x) y))))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))
#s(approx (log (+ 1 (* (- (exp x) 1) y))) (-.f64 (-.f64 (log.f64 (expm1.f64 x)) (neg.f64 (log.f64 y))) (/.f64 (-.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (expm1.f64 x) (expm1.f64 x))) (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (expm1.f64 x) #s(literal 3 binary64)) y))) y) (/.f64 #s(literal 1 binary64) (expm1.f64 x))) y)))

eval12.0ms (0.2%)

Memory
-13.2MiB live, 33.9MiB allocated; 1ms collecting garbage
Compiler

Compiled 1 265 to 528 computations (58.3% saved)

prune11.0ms (0.2%)

Memory
-25.5MiB live, 20.4MiB allocated; 4ms collecting garbage
Pruning

12 alts after pruning (3 fresh and 9 done)

PrunedKeptTotal
New1091110
Fresh022
Picked145
Done055
Total11012122
Accuracy
99.9%
Counts
122 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.6%
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
92.9%
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
64.0%
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
44.1%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
32.8%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
71.5%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
51.9%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
7.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
76.4%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
76.7%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
58.0%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
56.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
Compiler

Compiled 160 to 158 computations (1.3% saved)

series332.0ms (5.2%)

Memory
45.1MiB live, 563.0MiB allocated; 89ms collecting garbage
Counts
19 → 94
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 (*.f64 y c) (expm1.f64 x))
(*.f64 y c)
y
c
(expm1.f64 x)
x
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
(*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c)
(+.f64 (log.f64 y) (log.f64 (expm1.f64 x)))
(log.f64 y)
(log.f64 (expm1.f64 x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
(*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)
(fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x))
(*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)
(*.f64 (expm1.f64 x) (expm1.f64 x))
#s(literal -1/2 binary64)
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx c #s(hole binary64 c))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log y) (log (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* c (* x y))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* 1/2 (* c (* x y))) (* c y)))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x y))) (* 1/2 (* c y))))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c y)) (* x (+ (* 1/24 (* c (* x y))) (* 1/6 (* c y))))))))))
#s(approx (- (exp x) 1) #s(hole binary64 x))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log x) (log y)))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* 1/2 (* c x)) (* c (+ (log x) (log y))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* c (+ (log x) (log y))) (* x (+ (* 1/24 (* c x)) (* 1/2 c))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* c (+ (log x) (log y))) (* x (+ (* 1/2 c) (* x (+ (* -1/2880 (* c (pow x 2))) (* 1/24 c))))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (log y))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* 1/2 x)))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* x (+ 1/2 (* 1/24 x)))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* x (+ 1/2 (* x (+ 1/24 (* -1/2880 (pow x 2))))))))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (log x)))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* 1/2 x))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* x (+ 1/2 (* 1/24 x))))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* x (+ 1/2 (* x (+ 1/24 (* -1/2880 (pow x 2)))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x y)))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (* y (+ 1/2 (* -1/2 y))))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (+ (* x (* y (+ 1/6 (* -1/2 y)))) (* y (+ 1/2 (* -1/2 y)))))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (+ (* x (+ (* x (* y (+ 1/24 (* -7/24 y)))) (* y (+ 1/6 (* -1/2 y))))) (* y (+ 1/2 (* -1/2 y)))))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* -1/2 y)))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (+ (* -1/2 y) (* x (+ 1/6 (* -1/2 y))))))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (+ (* -1/2 y) (* x (+ 1/6 (+ (* -1/2 y) (* x (+ 1/24 (* -7/24 y)))))))))))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) y)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x y)))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x (+ y (* 7/12 (* x y))))))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x (+ y (* x (+ (* 1/4 (* x y)) (* 7/12 y)))))))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (pow x 2)))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 x))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 (* x (+ 1 (* 7/12 x)))))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 (* x (+ 1 (* x (+ 7/12 (* 1/4 x)))))))))
#s(approx (- (exp x) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log y) (log (- (exp x) 1)))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (log (- (exp x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* y (pow (- (exp x) 1) 2))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (pow (- (exp x) 1) 2)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx y #s(hole binary64 y))
#s(approx (log y) #s(hole binary64 (log y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log y) #s(hole binary64 (* -1 (log (/ 1 y)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* -1/2 (* (pow y 2) (pow (- (exp x) 1) 2)))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* (pow y 2) (- (+ (* -1/2 (pow (- (exp x) 1) 2)) (/ (exp x) y)) (/ 1 y)))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* -1/2 (* y (pow (- (exp x) 1) 2)))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* y (- (+ (* -1/2 (pow (- (exp x) 1) 2)) (/ (exp x) y)) (/ 1 y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log -1) (+ (log (- (exp x) 1)) (* -1 (log (/ -1 y))))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log -1) (+ (log (- (exp x) 1)) (* -1 (log (/ -1 y)))))))
#s(approx (log y) #s(hole binary64 (+ (log -1) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* -1 (* y (+ (* -1 (/ (- (exp x) 1) y)) (* 1/2 (pow (- (exp x) 1) 2)))))))
Calls

9 calls:

TimeVariablePointExpression
60.0ms
c
@0
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp x) 1)) (* y c) y c (- (exp x) 1) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (+ (log y) (log (- (exp x) 1))) c) (+ (log y) (log (- (exp x) 1))) (log y) (log (- (exp x) 1)) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (* (* (- (exp x) 1) (- (exp x) 1)) y) (* (- (exp x) 1) (- (exp x) 1)) -1/2)
54.0ms
x
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp x) 1)) (* y c) y c (- (exp x) 1) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (+ (log y) (log (- (exp x) 1))) c) (+ (log y) (log (- (exp x) 1))) (log y) (log (- (exp x) 1)) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (* (* (- (exp x) 1) (- (exp x) 1)) y) (* (- (exp x) 1) (- (exp x) 1)) -1/2)
42.0ms
y
@-inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp x) 1)) (* y c) y c (- (exp x) 1) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (+ (log y) (log (- (exp x) 1))) c) (+ (log y) (log (- (exp x) 1))) (log y) (log (- (exp x) 1)) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (* (* (- (exp x) 1) (- (exp x) 1)) y) (* (- (exp x) 1) (- (exp x) 1)) -1/2)
34.0ms
y
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp x) 1)) (* y c) y c (- (exp x) 1) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (+ (log y) (log (- (exp x) 1))) c) (+ (log y) (log (- (exp x) 1))) (log y) (log (- (exp x) 1)) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (* (* (- (exp x) 1) (- (exp x) 1)) y) (* (- (exp x) 1) (- (exp x) 1)) -1/2)
33.0ms
c
@inf
((* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (* y c) (- (exp x) 1)) (* y c) y c (- (exp x) 1) x (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (* (+ (log y) (log (- (exp x) 1))) c) (+ (log y) (log (- (exp x) 1))) (log y) (log (- (exp x) 1)) (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (log (+ 1 (* (- (pow (E) x) 1) y))) (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (* (* (- (exp x) 1) (- (exp x) 1)) y) (* (- (exp x) 1) (- (exp x) 1)) -1/2)

rewrite123.0ms (1.9%)

Memory
-1.3MiB live, 140.2MiB allocated; 10ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05322948
05572682
022252481
Stop Event
iter-limit
iter-limit
node-limit
iter-limit
Counts
113 → 152
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 (*.f64 y c) (expm1.f64 x))
(*.f64 y c)
y
c
(expm1.f64 x)
x
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
(*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c)
(+.f64 (log.f64 y) (log.f64 (expm1.f64 x)))
(log.f64 y)
(log.f64 (expm1.f64 x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
(*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)
(fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x))
(*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)
(*.f64 (expm1.f64 x) (expm1.f64 x))
#s(literal -1/2 binary64)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (log (+ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* c (* y (- (exp x) 1)))))
#s(approx (* y c) #s(hole binary64 (* c y)))
#s(approx c #s(hole binary64 c))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log y) (log (- (exp x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* x (* y (log (E)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* 1/2 (* c (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* c (* y (log (E))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/6 (* c (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))) (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* x (+ (* c (* y (log (E)))) (* x (+ (* 1/2 (* c (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* x (+ (* 1/24 (* c (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4))))))))) (* 1/6 (* c (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* c (* x y))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* 1/2 (* c (* x y))) (* c y)))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/6 (* c (* x y))) (* 1/2 (* c y))))))))
#s(approx (* (* y c) (- (exp x) 1)) #s(hole binary64 (* x (+ (* c y) (* x (+ (* 1/2 (* c y)) (* x (+ (* 1/24 (* c (* x y))) (* 1/6 (* c y))))))))))
#s(approx (- (exp x) 1) #s(hole binary64 x))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* 1/2 x)))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))))
#s(approx (- (exp x) 1) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* x (+ 1/6 (* 1/24 x)))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log x) (log y)))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* 1/2 (* c x)) (* c (+ (log x) (log y))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* c (+ (log x) (log y))) (* x (+ (* 1/24 (* c x)) (* 1/2 c))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (+ (* c (+ (log x) (log y))) (* x (+ (* 1/2 c) (* x (+ (* -1/2880 (* c (pow x 2))) (* 1/24 c))))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (log y))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* 1/2 x)))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* x (+ 1/2 (* 1/24 x)))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log x) (+ (log y) (* x (+ 1/2 (* x (+ 1/24 (* -1/2880 (pow x 2))))))))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (log x)))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* 1/2 x))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* x (+ 1/2 (* 1/24 x))))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (+ (log x) (* x (+ 1/2 (* x (+ 1/24 (* -1/2880 (pow x 2)))))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (* y (log (E))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* 1/2 (* x (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/6 (* x (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3)))))) (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))))) (* y (log (E)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* x (+ (* x (+ (* 1/2 (+ (* -1 (* (pow y 2) (pow (log (E)) 2))) (* y (pow (log (E)) 2)))) (* x (+ (* 1/24 (* x (+ (* -6 (* (pow y 4) (pow (log (E)) 4))) (+ (* -4 (* (pow y 2) (pow (log (E)) 4))) (+ (* -3 (* (pow y 2) (pow (log (E)) 4))) (+ (* 12 (* (pow y 3) (pow (log (E)) 4))) (* y (pow (log (E)) 4)))))))) (* 1/6 (+ (* -3 (* (pow y 2) (pow (log (E)) 3))) (+ (* 2 (* (pow y 3) (pow (log (E)) 3))) (* y (pow (log (E)) 3))))))))) (* y (log (E)))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x y)))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (* y (+ 1/2 (* -1/2 y))))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (+ (* x (* y (+ 1/6 (* -1/2 y)))) (* y (+ 1/2 (* -1/2 y)))))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* x (+ y (* x (+ (* x (+ (* x (* y (+ 1/24 (* -7/24 y)))) (* y (+ 1/6 (* -1/2 y))))) (* y (+ 1/2 (* -1/2 y)))))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (* -1/2 y)))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (+ (* -1/2 y) (* x (+ 1/6 (* -1/2 y))))))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* x (+ 1 (* x (+ 1/2 (+ (* -1/2 y) (* x (+ 1/6 (+ (* -1/2 y) (* x (+ 1/24 (* -7/24 y)))))))))))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) y)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x y)))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x (+ y (* 7/12 (* x y))))))))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* (pow x 2) (+ y (* x (+ y (* x (+ (* 1/4 (* x y)) (* 7/12 y)))))))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (pow x 2)))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 x))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 (* x (+ 1 (* 7/12 x)))))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (* (pow x 2) (+ 1 (* x (+ 1 (* x (+ 7/12 (* 1/4 x)))))))))
#s(approx (- (exp x) 1) #s(hole binary64 (- (exp x) 1)))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log y) (log (- (exp x) 1)))))
#s(approx (log (- (exp x) 1)) #s(hole binary64 (log (- (exp x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (log (+ 1 (* y (- (pow (E) x) 1))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* y (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (- (+ (exp x) (* -1/2 (* y (pow (- (exp x) 1) 2)))) 1)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) #s(hole binary64 (* y (pow (- (exp x) 1) 2))))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) #s(hole binary64 (pow (- (exp x) 1) 2)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (* y (- (pow (E) x) 1)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* -1/2 (* c (* y (pow (- (pow (E) x) 1) 2)))) (* c (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* 1/3 (* c (* y (pow (- (pow (E) x) 1) 3))))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* y (+ (* c (- (pow (E) x) 1)) (* y (+ (* -1/2 (* c (pow (- (pow (E) x) 1) 2))) (* y (+ (* -1/4 (* c (* y (pow (- (pow (E) x) 1) 4)))) (* 1/3 (* c (pow (- (pow (E) x) 1) 3)))))))))))
#s(approx y #s(hole binary64 y))
#s(approx (log y) #s(hole binary64 (log y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (pow (E) x) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* -1/2 (* y (pow (- (pow (E) x) 1) 2))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* 1/3 (* y (pow (- (pow (E) x) 1) 3))))) (pow (E) x)) 1))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (* y (- (+ (* y (+ (* -1/2 (pow (- (pow (E) x) 1) 2)) (* y (+ (* -1/4 (* y (pow (- (pow (E) x) 1) 4))) (* 1/3 (pow (- (pow (E) x) 1) 3)))))) (pow (E) x)) 1))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* y (- (exp x) 1))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1/2 (/ c (* (pow y 2) (pow (- (pow (E) x) 1) 2)))) (+ (* 1/3 (/ c (* (pow y 3) (pow (- (pow (E) x) 1) 3)))) (+ (* c (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))) (/ c (* y (- (pow (E) x) 1))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y)))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log (- (exp x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log y) #s(hole binary64 (* -1 (log (/ 1 y)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (* -1 (log (/ 1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (/ 1 (* y (- (pow (E) x) 1))))) (/ 1/2 (* (pow y 2) (pow (- (pow (E) x) 1) 2))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (- (+ (log (- (pow (E) x) 1)) (+ (* -1 (log (/ 1 y))) (+ (/ 1 (* y (- (pow (E) x) 1))) (* 1/3 (/ 1 (* (pow y 3) (pow (- (pow (E) x) 1) 3))))))) (* 1/2 (/ 1 (* (pow y 2) (pow (- (pow (E) x) 1) 2)))))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* -1/2 (* (pow y 2) (pow (- (exp x) 1) 2)))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) #s(hole binary64 (* (pow y 2) (- (+ (* -1/2 (pow (- (exp x) 1) 2)) (/ (exp x) y)) (/ 1 y)))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* -1/2 (* y (pow (- (exp x) 1) 2)))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* y (- (+ (* -1/2 (pow (- (exp x) 1) 2)) (/ (exp x) y)) (/ 1 y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y)))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))) (/ c (* y (- (pow (E) x) 1))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* 1/2 (/ c (* y (pow (- (pow (E) x) 1) 2))))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(hole binary64 (+ (* -1 (/ (+ (* -1 (/ c (- (pow (E) x) 1))) (* -1 (/ (+ (* -1/2 (/ c (pow (- (pow (E) x) 1) 2))) (* 1/3 (/ c (* y (pow (- (pow (E) x) 1) 3))))) y))) y)) (* c (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) #s(hole binary64 (* c (+ (log -1) (+ (log (- (exp x) 1)) (* -1 (log (/ -1 y))))))))
#s(approx (+ (log y) (log (- (exp x) 1))) #s(hole binary64 (+ (log -1) (+ (log (- (exp x) 1)) (* -1 (log (/ -1 y)))))))
#s(approx (log y) #s(hole binary64 (+ (log -1) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (* -1 (log (/ -1 y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (/ 1 (* y (- (pow (E) x) 1)))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* 1/2 (/ 1 (* y (pow (- (pow (E) x) 1) 2)))) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) #s(hole binary64 (+ (log (* -1 (- (pow (E) x) 1))) (+ (* -1 (log (/ -1 y))) (* -1 (/ (- (* -1 (/ (- (* 1/3 (/ 1 (* y (pow (- (pow (E) x) 1) 3)))) (* 1/2 (/ 1 (pow (- (pow (E) x) 1) 2)))) y)) (/ 1 (- (pow (E) x) 1))) y))))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) #s(hole binary64 (* -1 (* y (+ (* -1 (/ (- (exp x) 1) y)) (* 1/2 (pow (- (exp x) 1) 2)))))))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 (*.f64 y c) (expm1.f64 x))
(*.f64 (*.f64 (expm1.f64 x) y) c)
(*.f64 (expm1.f64 x) (*.f64 y c))
(*.f64 y (*.f64 c (expm1.f64 x)))
(*.f64 c (*.f64 (expm1.f64 x) y))
(*.f64 y c)
(*.f64 c y)
y
c
(neg.f64 (-.f64 #s(literal 1 binary64) (exp.f64 x)))
(expm1.f64 x)
(-.f64 (exp.f64 x) #s(literal 1 binary64))
(+.f64 (exp.f64 x) #s(literal -1 binary64))
x
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
(*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c)
(*.f64 c (log.f64 (*.f64 (expm1.f64 x) y)))
(fma.f64 (log.f64 y) c (*.f64 (log.f64 (expm1.f64 x)) c))
(fma.f64 c (log.f64 y) (*.f64 c (log.f64 (expm1.f64 x))))
(+.f64 (*.f64 c (log.f64 y)) (*.f64 c (log.f64 (expm1.f64 x))))
(+.f64 (*.f64 (log.f64 y) c) (*.f64 (log.f64 (expm1.f64 x)) c))
(-.f64 (log.f64 y) (neg.f64 (log.f64 (expm1.f64 x))))
(+.f64 (log.f64 (expm1.f64 x)) (log.f64 y))
(+.f64 (log.f64 y) (log.f64 (expm1.f64 x)))
(log.f64 (*.f64 (expm1.f64 x) y))
(log.f64 (fabs.f64 y))
(log.f64 y)
(log.f64 (fabs.f64 (expm1.f64 x)))
(log.f64 (expm1.f64 x))
(*.f64 #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)) c)
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
(*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)
(*.f64 y (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)))
(neg.f64 (-.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (exp.f64 x))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) (*.f64 (expm1.f64 x) (expm1.f64 x)) (expm1.f64 x))
(fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x))
(fma.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 #s(literal -1/2 binary64) y) (expm1.f64 x))
(fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) (expm1.f64 x))
(-.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (exp.f64 x)) #s(literal 1 binary64))
(-.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64)) (neg.f64 (expm1.f64 x)))
(+.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (exp.f64 x)) #s(literal -1 binary64))
(+.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64)) (expm1.f64 x))
(+.f64 (expm1.f64 x) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64)))
(+.f64 (exp.f64 x) (-.f64 (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64)) #s(literal 1 binary64)))
(*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y)
(*.f64 (expm1.f64 x) (*.f64 (expm1.f64 x) y))
(*.f64 y (*.f64 (expm1.f64 x) (expm1.f64 x)))
(*.f64 (fabs.f64 (expm1.f64 x)) (fabs.f64 (expm1.f64 x)))
(*.f64 (neg.f64 (expm1.f64 x)) (neg.f64 (expm1.f64 x)))
(*.f64 (expm1.f64 x) (expm1.f64 x))
(pow.f64 (fabs.f64 (expm1.f64 x)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (expm1.f64 x)) #s(literal 2 binary64))
(pow.f64 (expm1.f64 x) #s(literal 2 binary64))
(fabs.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)))
(+.f64 (-.f64 (pow.f64 (exp.f64 x) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 (exp.f64 x) #s(literal 1 binary64)))) #s(literal 1 binary64))
#s(literal -1/2 binary64)
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (fma.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y #s(literal 1 binary64))) c))
#s(approx (* (* y c) (- (exp x) 1)) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* y c) (*.f64 y c))
#s(approx c c)
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 x c) (*.f64 y #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 x c) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64))))) #s(literal 1/2 binary64) (*.f64 (*.f64 y c) #s(literal 1 binary64))) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) c) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)))) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal -3 binary64) (*.f64 y y)) #s(literal 1 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64)))) x) c) #s(literal 1/6 binary64))) x (*.f64 (*.f64 y c) #s(literal 1 binary64))) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) c) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)))) (*.f64 (fma.f64 #s(literal 1/24 binary64) (*.f64 (*.f64 x c) (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1 binary64)) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal -4 binary64) (fma.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal -3 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 #s(literal 12 binary64) (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)))))))) (*.f64 (*.f64 (fma.f64 (*.f64 #s(literal -3 binary64) (*.f64 y y)) #s(literal 1 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64)))) c) #s(literal 1/6 binary64))) x)) x (*.f64 (*.f64 y c) #s(literal 1 binary64))) x))
#s(approx (* (* y c) (- (exp x) 1)) (*.f64 (*.f64 y x) c))
#s(approx (* (* y c) (- (exp x) 1)) (*.f64 (fma.f64 (*.f64 (*.f64 y x) c) #s(literal 1/2 binary64) (*.f64 y c)) x))
#s(approx (* (* y c) (- (exp x) 1)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 y x) c) #s(literal 1/6 binary64) (*.f64 #s(literal 1/2 binary64) (*.f64 y c))) x (*.f64 y c)) x))
#s(approx (* (* y c) (- (exp x) 1)) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 y x) c) #s(literal 1/24 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 y c))) x (*.f64 #s(literal 1/2 binary64) (*.f64 y c))) x (*.f64 y c)) x))
#s(approx (- (exp x) 1) x)
#s(approx (- (exp x) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (- (exp x) 1) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/6 binary64)) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (*.f64 (log.f64 (*.f64 y x)) c))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (*.f64 x c) #s(literal 1/2 binary64))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (fma.f64 (*.f64 x c) #s(literal 1/24 binary64) (*.f64 #s(literal 1/2 binary64) c)) x)))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 x x) c) #s(literal -1/2880 binary64) (*.f64 #s(literal 1/24 binary64) c)) x (*.f64 #s(literal 1/2 binary64) c)) x)))
#s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x)))
#s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x)))
#s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/2 binary64)) x)))
#s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/2880 binary64) #s(literal 1/24 binary64)) x #s(literal 1/2 binary64)) x)))
#s(approx (log (- (exp x) 1)) (log.f64 x))
#s(approx (log (- (exp x) 1)) (fma.f64 #s(literal 1/2 binary64) x (log.f64 x)))
#s(approx (log (- (exp x) 1)) (fma.f64 (fma.f64 #s(literal 1/24 binary64) x #s(literal 1/2 binary64)) x (log.f64 x)))
#s(approx (log (- (exp x) 1)) (fma.f64 (fma.f64 (fma.f64 (*.f64 x x) #s(literal -1/2880 binary64) #s(literal 1/24 binary64)) x #s(literal 1/2 binary64)) x (log.f64 x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (*.f64 y #s(literal 1 binary64)) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)))) (*.f64 y #s(literal 1 binary64))) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal -3 binary64) (*.f64 y y)) #s(literal 1 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64)))) x) #s(literal 1/6 binary64) (*.f64 (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)))) #s(literal 1/2 binary64))) x (*.f64 y #s(literal 1 binary64))) x))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 x (fma.f64 x (fma.f64 (fma.f64 (*.f64 #s(literal -3 binary64) (*.f64 y y)) #s(literal 1 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64)) #s(literal 2 binary64)))) #s(literal 1/6 binary64) (*.f64 (*.f64 #s(literal 1/24 binary64) x) (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1 binary64)) #s(literal -6 binary64) (fma.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal -4 binary64) (fma.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal -3 binary64) (fma.f64 y #s(literal 1 binary64) (*.f64 #s(literal 12 binary64) (*.f64 (*.f64 (*.f64 y y) y) #s(literal 1 binary64))))))))) (*.f64 (fma.f64 y #s(literal 1 binary64) (neg.f64 (*.f64 (*.f64 y y) #s(literal 1 binary64)))) #s(literal 1/2 binary64))) (*.f64 y #s(literal 1 binary64))) x))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 y x))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/2 binary64)) y) x y) x))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/6 binary64)) y) x (*.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/2 binary64)) y)) x y) x))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 #s(literal -7/24 binary64) y #s(literal 1/24 binary64)) y) x (*.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/6 binary64)) y)) x (*.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/2 binary64)) y)) x y) x))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (*.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (*.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 #s(literal -1/2 binary64) y #s(literal 1/6 binary64)) x (*.f64 #s(literal -1/2 binary64) y)) #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (*.f64 (fma.f64 (+.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 #s(literal -7/24 binary64) y #s(literal 1/24 binary64)) x (*.f64 #s(literal -1/2 binary64) y)) #s(literal 1/6 binary64)) x (*.f64 #s(literal -1/2 binary64) y)) #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) (*.f64 (*.f64 x x) y))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) (*.f64 (fma.f64 y x y) (*.f64 x x)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) (*.f64 (fma.f64 (fma.f64 #s(literal 7/12 binary64) (*.f64 y x) y) x y) (*.f64 x x)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) (*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4 binary64) (*.f64 y x) (*.f64 #s(literal 7/12 binary64) y)) x y) x y) (*.f64 x x)))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) (*.f64 x x))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) (*.f64 (+.f64 x #s(literal 1 binary64)) (*.f64 x x)))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) (*.f64 (fma.f64 (fma.f64 #s(literal 7/12 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (*.f64 x x)))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) (*.f64 (*.f64 x x) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/4 binary64) x #s(literal 7/12 binary64)) x #s(literal 1 binary64)) x #s(literal 1 binary64))))
#s(approx (- (exp x) 1) (expm1.f64 x))
#s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 (expm1.f64 x) y)))
#s(approx (log (- (exp x) 1)) (log.f64 (expm1.f64 x)))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (log.f64 (fma.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y #s(literal 1 binary64))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)))
#s(approx (* (* (- (exp x) 1) (- (exp x) 1)) y) (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y))
#s(approx (* (- (exp x) 1) (- (exp x) 1)) (*.f64 (expm1.f64 x) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) y) c) #s(literal -1/2 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) c)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 y (fma.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) y) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) c) #s(literal -1/2 binary64))) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) c)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) c) #s(literal -1/2 binary64) (*.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) c) #s(literal 1/3 binary64) (*.f64 (*.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 4 binary64)) y) c) #s(literal -1/4 binary64))) y)) y (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) c)) y))
#s(approx y y)
#s(approx (log y) (log.f64 y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) y) #s(literal -1/2 binary64) (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) y) #s(literal 1/3 binary64) (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal -1/2 binary64))) y (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))) y))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 y (fma.f64 (fma.f64 (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 4 binary64)) y) #s(literal -1/4 binary64) (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) #s(literal 1/3 binary64))) y (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) #s(literal -1/2 binary64))) (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))) y))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (expm1.f64 x) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) c (/.f64 c (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (/.f64 c (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) c (/.f64 c (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (/.f64 c (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 2 binary64))) #s(literal -1/2 binary64) (fma.f64 (/.f64 c (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 3 binary64))) #s(literal 1/3 binary64) (fma.f64 (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) c (/.f64 c (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (*.f64 (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (expm1.f64 x))) c))
#s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (expm1.f64 x))))
#s(approx (log y) (neg.f64 (neg.f64 (log.f64 y))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (neg.f64 (neg.f64 (log.f64 y))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)) (neg.f64 (neg.f64 (log.f64 y)))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)) (neg.f64 (neg.f64 (log.f64 y)))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 2 binary64)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (-.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)) (neg.f64 (neg.f64 (log.f64 y)))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 3 binary64)))) (log.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y) #s(literal 2 binary64)))))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) (*.f64 y y)) #s(literal -1/2 binary64)))
#s(approx (* (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) y) (*.f64 (fma.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64) (/.f64 (expm1.f64 x) y)) (*.f64 y y)))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (*.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64)))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (*.f64 (fma.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal -1/2 binary64) (/.f64 (expm1.f64 x) y)) y))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) c (/.f64 c (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) c (neg.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) y)) #s(literal 1/2 binary64) (neg.f64 (/.f64 c (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) y))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (fma.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) c (neg.f64 (/.f64 (+.f64 (neg.f64 (/.f64 (fma.f64 (/.f64 c (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) y)) #s(literal 1/3 binary64) (*.f64 (*.f64 c (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal -2 binary64))) #s(literal -1/2 binary64))) y)) (neg.f64 (/.f64 c (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) y))))
#s(approx (* (+ (log y) (log (- (exp x) 1))) c) (*.f64 (+.f64 (+.f64 #s(literal 0 binary64) (log.f64 (expm1.f64 x))) (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y)))) c))
#s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (+.f64 #s(literal 0 binary64) (log.f64 (expm1.f64 x))) (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y)))))
#s(approx (log y) (+.f64 #s(literal 0 binary64) (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y)))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (/.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (+.f64 (neg.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/2 binary64) (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 2 binary64)) y)) (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) y)) (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y)))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))))
#s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (+.f64 (+.f64 (neg.f64 (log.f64 (/.f64 #s(literal -1 binary64) y))) (log.f64 (neg.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))))) (neg.f64 (/.f64 (-.f64 (neg.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal 3 binary64)) y)) (*.f64 (pow.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) #s(literal -2 binary64)) #s(literal 1/2 binary64))) y)) (/.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)))) y))))
#s(approx (+ (* (* (* (- (exp x) 1) (- (exp x) 1)) y) -1/2) (- (exp x) 1)) (neg.f64 (*.f64 (fma.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) #s(literal 1/2 binary64) (neg.f64 (/.f64 (expm1.f64 x) y))) y)))

eval33.0ms (0.5%)

Memory
-4.3MiB live, 42.1MiB allocated; 2ms collecting garbage
Compiler

Compiled 2 247 to 848 computations (62.3% saved)

prune32.0ms (0.5%)

Memory
-19.2MiB live, 28.0MiB allocated; 2ms collecting garbage
Pruning

16 alts after pruning (5 fresh and 11 done)

PrunedKeptTotal
New1505155
Fresh000
Picked123
Done099
Total15116167
Accuracy
99.9%
Counts
167 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
54.6%
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
92.9%
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
64.0%
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
44.1%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
32.8%
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
71.5%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
51.9%
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
7.0%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 #s(approx (- (exp x) 1) x))) c))
76.4%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
76.7%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
58.0%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
22.2%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
13.6%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x))) c))
14.5%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
56.1%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
13.6%
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (*.f64 x c) #s(literal 1/2 binary64)))))
Compiler

Compiled 433 to 348 computations (19.6% saved)

regimes154.0ms (2.4%)

Memory
17.2MiB live, 110.7MiB allocated; 5ms collecting garbage
Counts
20 → 3
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 #s(approx (- (exp x) 1) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (*.f64 x c) #s(literal 1/2 binary64)))))
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 (expm1.f64 x))) c))
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 (*.f64 (expm1.f64 x) (expm1.f64 x)) y) #s(literal -1/2 binary64) (expm1.f64 x)) y)))
Outputs
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 c (log1p.f64 (*.f64 (expm1.f64 x) y)))
Calls

9 calls:

62.0ms
(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
60.0ms
c
5.0ms
y
5.0ms
x
4.0ms
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
Results
AccuracySegmentsBranch
92.9%1(pow.f64 (E.f64) x)
92.9%1(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
92.9%1(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
92.9%1(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
92.9%1(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
92.9%1(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
92.9%1c
92.9%1x
99.8%3y
Compiler

Compiled 49 to 59 computations (-20.4% saved)

regimes143.0ms (2.2%)

Memory
-9.7MiB live, 78.3MiB allocated; 6ms collecting garbage
Counts
16 → 4
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 #s(approx (- (exp x) 1) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (*.f64 x c) #s(literal 1/2 binary64)))))
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
Outputs
(*.f64 (log.f64 (fma.f64 (expm1.f64 x) y #s(literal 1 binary64))) c)
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
Calls

9 calls:

58.0ms
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
57.0ms
c
4.0ms
y
4.0ms
x
4.0ms
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
Results
AccuracySegmentsBranch
82.4%2c
82.6%2x
82.6%2(pow.f64 (E.f64) x)
82.6%2(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
92.6%4(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
86.2%2(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
86.2%2(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
86.0%2(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
94.8%4y
Compiler

Compiled 49 to 59 computations (-20.4% saved)

regimes5.0ms (0.1%)

Memory
13.3MiB live, 13.3MiB allocated; 0ms collecting garbage
Counts
15 → 4
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 #s(approx (- (exp x) 1) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) (-.f64 y (*.f64 y y)) y) x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) #s(approx (* (+ (log y) (log (- (exp x) 1))) c) (fma.f64 (log.f64 (*.f64 y x)) c (*.f64 (*.f64 x c) #s(literal 1/2 binary64)))))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (log.f64 (*.f64 (expm1.f64 x) y)) c))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
Calls

1 calls:

4.0ms
y
Results
AccuracySegmentsBranch
94.8%4y
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes7.0ms (0.1%)

Memory
19.6MiB live, 19.6MiB allocated; 0ms collecting garbage
Counts
12 → 3
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (+.f64 (log.f64 y) (log.f64 #s(approx (- (exp x) 1) x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (+.f64 (log.f64 (*.f64 y x)) (*.f64 #s(literal 1/2 binary64) x))) c))
Outputs
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 c (log1p.f64 (*.f64 #s(approx (- (exp x) 1) x) y)))
Calls

2 calls:

4.0ms
y
3.0ms
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
Results
AccuracySegmentsBranch
83.1%3(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
91.0%3y
Compiler

Compiled 8 to 11 computations (-37.5% saved)

regimes77.0ms (1.2%)

Memory
-8.6MiB live, 32.2MiB allocated; 13ms collecting garbage
Counts
9 → 3
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 (neg.f64 (neg.f64 x)))))
Outputs
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) (fma.f64 y x #s(literal 1 binary64)))))
Calls

4 calls:

69.0ms
(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
3.0ms
y
2.0ms
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
2.0ms
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
Results
AccuracySegmentsBranch
76.7%1(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
76.7%1(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
76.7%1(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
85.2%3y
Compiler

Compiled 32 to 33 computations (-3.1% saved)

regimes146.0ms (2.3%)

Memory
9.9MiB live, 69.7MiB allocated; 44ms collecting garbage
Counts
7 → 3
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 (expm1.f64 x) c) y))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) (expm1.f64 x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
Calls

5 calls:

137.0ms
c
3.0ms
y
2.0ms
x
2.0ms
(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
2.0ms
(pow.f64 (E.f64) x)
Results
AccuracySegmentsBranch
78.9%2c
76.7%1x
76.7%1(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
76.7%1(pow.f64 (E.f64) x)
83.9%3y
Compiler

Compiled 11 to 21 computations (-90.9% saved)

regimes77.0ms (1.2%)

Memory
39.0MiB live, 53.2MiB allocated; 43ms collecting garbage
Counts
5 → 3
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 #s(approx (+ (log y) (log (- (exp x) 1))) (log.f64 (*.f64 y x))) c))
Calls

9 calls:

2.0ms
y
2.0ms
c
2.0ms
x
2.0ms
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
1.0ms
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
Results
AccuracySegmentsBranch
58.0%1(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
58.0%1(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
58.0%1(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
58.0%1x
58.0%1(pow.f64 (E.f64) x)
58.0%1(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
60.1%2c
58.0%1(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
65.2%3y
Compiler

Compiled 49 to 59 computations (-20.4% saved)

regimes36.0ms (0.6%)

Memory
-35.7MiB live, 8.6MiB allocated; 8ms collecting garbage
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
(*.f64 c #s(approx (log (+ 1 (* (- (pow (E) x) 1) y))) (*.f64 y x)))
(*.f64 c (log.f64 #s(approx (+ 1 (* (- (pow (E) x) 1) y)) #s(literal 1 binary64))))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 (*.f64 y c) x))
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
Calls

2 calls:

34.0ms
y
2.0ms
c
Results
AccuracySegmentsBranch
60.1%2c
58.0%1y
Compiler

Compiled 2 to 6 computations (-200% saved)

regimes8.0ms (0.1%)

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

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
Outputs
#s(approx (* c (log (+ 1 (* (- (pow (E) x) 1) y)))) (*.f64 y (*.f64 c x)))
Calls

9 calls:

1.0ms
x
1.0ms
c
1.0ms
y
1.0ms
(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
1.0ms
(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
Results
AccuracySegmentsBranch
56.1%1y
56.1%1(-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64))
56.1%1(*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)
56.1%1x
56.1%1(pow.f64 (E.f64) x)
56.1%1(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))
56.1%1(log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y)))
56.1%1(*.f64 c (log.f64 (+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (pow.f64 (E.f64) x) #s(literal 1 binary64)) y))))
56.1%1c
Compiler

Compiled 49 to 59 computations (-20.4% saved)

bsearch23.0ms (0.4%)

Memory
21.9MiB live, 21.9MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
predicate-same
Steps
TimeLeftRight
16.0ms
1.6006566997857143e-52
1.4369247654342827e-50
5.0ms
-6.254247594062059e-19
-4.970978289628735e-19
Samples
13.0ms83×1valid
3.0ms61×0valid
Compiler

Compiled 213 to 231 computations (-8.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-exp: 7.0ms (57.4% of total)
ival-mult!: 2.0ms (16.4% of total)
adjust: 1.0ms (8.2% of total)
ival-sub!: 1.0ms (8.2% of total)
ival-log1p: 1.0ms (8.2% of total)

bsearch274.0ms (4.3%)

Memory
-11.6MiB live, 84.4MiB allocated; 47ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
90.0ms
2.9214021260299197e-6
73097424.78534755
23.0ms
-174.4412623055683
-0.002063721373562937
154.0ms
-4.701203564159412e+200
-5.945185766803456e+198
Samples
180.0ms299×1valid
62.0ms117×0valid
5.0ms34×1invalid
3.0ms53×0invalid
Compiler

Compiled 616 to 668 computations (-8.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 235.0ms
ival-log1p: 189.0ms (80.4% of total)
ival-exp: 31.0ms (13.2% of total)
ival-mult!: 8.0ms (3.4% of total)
adjust: 5.0ms (2.1% of total)
ival-sub!: 3.0ms (1.3% of total)

bsearch2.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.9214021260299197e-6
73097424.78534755
1.0ms
-174.4412623055683
-0.002063721373562937
1.0ms
-4.701203564159412e+200
-5.945185766803456e+198
Compiler

Compiled 672 to 724 computations (-7.7% saved)

bsearch2.0ms (0%)

Memory
2.3MiB live, 2.3MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
2.9214021260299197e-6
73097424.78534755
1.0ms
-174.4412623055683
-0.002063721373562937
Compiler

Compiled 490 to 528 computations (-7.8% saved)

bsearch55.0ms (0.9%)

Memory
-0.3MiB live, 47.9MiB allocated; 3ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
47.0ms
5.182578304763154e+104
3.7907883705222756e+121
4.0ms
-3.335144912905952e+159
-3.1969828291953063e+159
Samples
29.0ms168×1valid
8.0ms30×1invalid
5.0ms84×0invalid
1.0ms0valid
Compiler

Compiled 334 to 356 computations (-6.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 33.0ms
ival-exp: 20.0ms (60.8% of total)
ival-mult!: 4.0ms (12.2% of total)
ival-log1p: 4.0ms (12.2% of total)
adjust: 3.0ms (9.1% of total)
ival-sub!: 1.0ms (3% of total)

bsearch109.0ms (1.7%)

Memory
-20.0MiB live, 72.0MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
50.0ms
5.182578304763154e+104
3.7907883705222756e+121
54.0ms
-3.7521041443045396e+183
-1.3838513553627105e+177
Samples
48.0ms211×1valid
32.0ms67×1invalid
5.0ms94×0invalid
4.0ms61×0valid
Compiler

Compiled 699 to 737 computations (-5.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 76.0ms
ival-exp: 35.0ms (46.1% of total)
ival-log1p: 28.0ms (36.9% of total)
ival-mult!: 6.0ms (7.9% of total)
adjust: 4.0ms (5.3% of total)
ival-sub!: 2.0ms (2.6% of total)

bsearch2.0ms (0%)

Memory
2.5MiB live, 2.5MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
5.182578304763154e+104
3.7907883705222756e+121
1.0ms
-3.7521041443045396e+183
-1.3838513553627105e+177
Compiler

Compiled 680 to 718 computations (-5.6% saved)

bsearch21.0ms (0.3%)

Memory
22.1MiB live, 22.1MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
20.0ms
2.279890136818837e+101
2.017020022595436e+105
Samples
12.0ms75×1valid
3.0ms53×0valid
Compiler

Compiled 239 to 255 computations (-6.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-exp: 6.0ms (52.4% of total)
ival-mult!: 2.0ms (17.5% of total)
ival-log1p: 2.0ms (17.5% of total)
adjust: 1.0ms (8.7% of total)
ival-sub!: 1.0ms (8.7% of total)

derivations956.0ms (15%)

Memory
-77.1MiB live, 149.3MiB allocated; 1.3s collecting garbage
Stop Event
fuel
Compiler

Compiled 125 to 83 computations (33.6% saved)

preprocess112.0ms (1.8%)

Memory
-14.8MiB live, 122.7MiB allocated; 16ms collecting garbage
Remove

(negabs c)

Compiler

Compiled 682 to 581 computations (14.8% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...