Data.Random.Distribution.Normal:normalF from random-fu-0.2.6.2

Time bar (total: 29.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample583.0ms (2%)

Memory
4.6MiB live, 1 157.9MiB allocated
Samples
351.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 193.0ms
ival-mult: 122.0ms (63.3% of total)
ival-exp: 61.0ms (31.7% of total)
ival-true: 6.0ms (3.1% of total)
ival-assert: 3.0ms (1.6% of total)
Bogosity

explain91.0ms (0.3%)

Memory
-10.7MiB live, 106.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
10-0-(exp.f64 (*.f64 (*.f64 x y) y))
00-0-y
00-0-(*.f64 (*.f64 x y) y)
00-0-(*.f64 x y)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
exp.f64(exp.f64 (*.f64 (*.f64 x y) y))sensitivity10
Confusion
Predicted +Predicted -
+10
-0255
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+100
-00255
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0255
11
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
25.0ms512×0valid
Compiler

Compiled 42 to 19 computations (54.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 7.0ms (62.7% of total)
ival-exp: 4.0ms (35.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess29.0ms (0.1%)

Memory
8.6MiB live, 51.4MiB allocated
Algorithm
egg-herbie
Rules
254×exp-prod
104×exp-sum
96×associate-*r*
64×unsub-neg
60×distribute-lft-neg-in
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01538
14934
212434
330034
450234
564834
671834
772934
056
086
1146
2216
3236
4246
0246
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(exp.f64 (*.f64 (*.f64 x y) y))
Outputs
(exp.f64 (*.f64 (*.f64 x y) y))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
Symmetry

(abs y)

Compiler

Compiled 6 to 5 computations (16.7% saved)

eval0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(exp.f64 (*.f64 (*.f64 x y) y))
Compiler

Compiled 6 to 5 computations (16.7% saved)

simplify4.0ms (0%)

Memory
7.7MiB live, 7.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff-12288
(exp.f64 (*.f64 (*.f64 x y) y))
cost-diff0
(*.f64 x y)
cost-diff0
(*.f64 (*.f64 x y) y)
Rules
14×exp-prod
14×lower-pow.f64
14×lower-*.f32
14×lower-pow.f32
10×lower-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0516
0816
11416
22116
32316
42416
02416
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(exp.f64 (*.f64 (*.f64 x y) y))
(*.f64 (*.f64 x y) y)
(*.f64 x y)
x
y
Outputs
(exp.f64 (*.f64 (*.f64 x y) y))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(*.f64 (*.f64 x y) y)
(*.f64 (*.f64 y x) y)
(*.f64 x y)
(*.f64 y x)
x
y

localize18.0ms (0.1%)

Memory
-8.4MiB live, 29.8MiB allocated
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x y)
accuracy0.02455235241743066
(exp.f64 (*.f64 (*.f64 x y) y))
accuracy0.171875
(*.f64 (*.f64 x y) y)
Samples
14.0ms256×0valid
Compiler

Compiled 18 to 7 computations (61.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (66% of total)
ival-exp: 2.0ms (33% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0%)

Memory
13.9MiB live, 13.9MiB allocated
Counts
3 → 72
Calls
Call 1
Inputs
#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())
#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())
#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())
Outputs
#s(alt (* x (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2)))))) (taylor 0 y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2)))) (taylor 0 x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2)))) (taylor 0 x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x y) y) (patch (*.f64 (*.f64 x y) y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt (exp.f64 (*.f64 (*.f64 x y) y)) (patch (exp.f64 (*.f64 (*.f64 x y) y)) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
((* (* x y) y) (* x y) (exp (* (* x y) y)))
1.0ms
x
@0
((* (* x y) y) (* x y) (exp (* (* x y) y)))
1.0ms
y
@0
((* (* x y) y) (* x y) (exp (* (* x y) y)))
1.0ms
y
@-inf
((* (* x y) y) (* x y) (exp (* (* x y) y)))
1.0ms
x
@inf
((* (* x y) y) (* x y) (exp (* (* x y) y)))

simplify141.0ms (0.5%)

Memory
7.0MiB live, 80.8MiB allocated
Algorithm
egg-herbie
Rules
4 254×lower-fma.f64
4 254×lower-fma.f32
3 346×associate-*r*
2 634×lower-*.f64
2 634×lower-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
044392
1120392
2328388
3803384
41106380
51234380
61314380
71337380
81351380
92752380
103337380
114128380
125124380
135145380
145145380
155378380
165378380
175378380
185378380
196827380
206827380
06827368
Stop Event
iter limit
saturated
Counts
72 → 72
Calls
Call 1
Inputs
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 (* x (pow y 2)))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 (* x (pow y 2)))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x (pow y 2))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
Outputs
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) x) #s(literal 1/2 binary64) y) (*.f64 y x) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 5 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/2 binary64))) x y) (*.f64 y x) #s(literal 1 binary64))
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) x) #s(literal 1/2 binary64) y) (*.f64 y x) #s(literal 1 binary64))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 5 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/2 binary64))) x y) (*.f64 y x) #s(literal 1 binary64))
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) x) y)

rewrite50.0ms (0.2%)

Memory
-20.9MiB live, 63.8MiB allocated
Rules
1 196×frac-add
738×frac-times
536×frac-sub
406×associate-*r/
270×pow-pow
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0514
0816
11416
22916
39216
44823
539143
090723
Stop Event
iter limit
node limit
iter limit
Counts
3 → 7
Calls
Call 1
Inputs
(*.f64 (*.f64 x y) y)
(*.f64 x y)
(exp.f64 (*.f64 (*.f64 x y) y))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval7.0ms (0%)

Memory
16.8MiB live, 16.8MiB allocated
Compiler

Compiled 555 to 42 computations (92.4% saved)

prune6.0ms (0%)

Memory
10.7MiB live, 10.7MiB allocated
Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New74579
Fresh000
Picked011
Done000
Total74680
Accuracy
100.0%
Counts
80 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(exp.f64 (*.f64 (*.f64 x y) y))
87.7%
(exp.f64 (*.f64 x y))
65.0%
(exp.f64 y)
66.4%
(exp.f64 x)
61.9%
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
46.3%
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
Compiler

Compiled 40 to 45 computations (-12.5% saved)

simplify7.0ms (0%)

Memory
-32.3MiB live, 6.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 y)
cost-diff0
(exp.f64 x)
cost-diff0
(*.f64 y x)
cost-diff0
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
cost-diff0
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
cost-diff0
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
cost-diff-6144
(exp.f64 (*.f64 x y))
cost-diff0
(*.f64 x y)
Rules
14×exp-prod
14×lower-pow.f64
14×lower-*.f32
14×lower-pow.f32
10×lower-*.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01449
02149
13149
23549
33749
43849
03849
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(exp.f64 (*.f64 x y))
(*.f64 x y)
x
y
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
(*.f64 y x)
y
x
#s(literal 1 binary64)
(exp.f64 x)
x
(exp.f64 y)
y
Outputs
(exp.f64 (*.f64 x y))
(pow.f64 (exp.f64 y) x)
(*.f64 x y)
(*.f64 y x)
x
y
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
(*.f64 y x)
y
x
#s(literal 1 binary64)
(exp.f64 x)
x
(exp.f64 y)
y

localize51.0ms (0.2%)

Memory
-0.1MiB live, 38.6MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy0
(exp.f64 y)
accuracy0
(exp.f64 x)
accuracy0
(*.f64 y x)
accuracy0.08984375
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
accuracy24.400597717707715
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
accuracy34.38719785468427
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
accuracy0
(*.f64 x y)
accuracy0
(exp.f64 (*.f64 x y))
Samples
23.0ms256×0valid
Compiler

Compiled 43 to 14 computations (67.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-exp: 7.0ms (49% of total)
ival-mult: 6.0ms (42% of total)
ival-add: 1.0ms (7% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0%)

Memory
11.9MiB live, 11.9MiB allocated
Counts
8 → 168
Calls
Call 1
Inputs
#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())
#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())
#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())
#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())
#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())
Outputs
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2)))))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2)))))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y)))))) (taylor 0 y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf y) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ x (/ 1 (pow y 2)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt (exp.f64 y) (patch (exp.f64 y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2))))))) (taylor 0 x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2)))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2)))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2)))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2)))) (taylor 0 x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (pow y 2))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor 0 x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (/ 1 x) (pow y 2))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (/ 1 x) (pow y 2))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ (/ 1 x) (pow y 2))) (taylor inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 x y) (patch (*.f64 x y) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt (exp.f64 (*.f64 x y)) (patch (exp.f64 (*.f64 x y)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (patch #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x (pow y 2))) (taylor -inf x) (#s(alt #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x (pow y 2)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (pow y 2)) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (pow y 2)) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 (pow y 2)) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) (patch (fma.f64 (*.f64 y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (*.f64 y x) (patch (*.f64 y x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt (exp.f64 x) (patch (exp.f64 x) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
1.0ms
y
@0
((* x y) (exp (* x y)) (exp (* (* x y) y)) (exp (* (* x y) y)) (+ (* (* y x) y) 1) (* y x) (exp x) (exp y))
1.0ms
x
@-inf
((* x y) (exp (* x y)) (exp (* (* x y) y)) (exp (* (* x y) y)) (+ (* (* y x) y) 1) (* y x) (exp x) (exp y))
1.0ms
y
@-inf
((* x y) (exp (* x y)) (exp (* (* x y) y)) (exp (* (* x y) y)) (+ (* (* y x) y) 1) (* y x) (exp x) (exp y))
1.0ms
x
@0
((* x y) (exp (* x y)) (exp (* (* x y) y)) (exp (* (* x y) y)) (+ (* (* y x) y) 1) (* y x) (exp x) (exp y))
1.0ms
y
@inf
((* x y) (exp (* x y)) (exp (* (* x y) y)) (exp (* (* x y) y)) (+ (* (* y x) y) 1) (* y x) (exp x) (exp y))

simplify224.0ms (0.8%)

Memory
-22.7MiB live, 235.4MiB allocated
Algorithm
egg-herbie
Rules
19 796×lower-fma.f64
19 796×lower-fma.f32
5 202×lower-*.f64
5 202×lower-*.f32
2 168×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0106920
1318920
2797908
31922900
43022892
55032892
08248828
Stop Event
iter limit
node limit
Counts
168 → 168
Calls
Call 1
Inputs
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* x (pow y 2)))
(+ 1 (* x (pow y 2)))
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* x y)
(* x y)
(* x y)
(* x y)
(exp y)
(exp y)
(exp y)
(exp y)
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(* x y)
(* x y)
(* x y)
(* x y)
(exp y)
(exp y)
(exp y)
(exp y)
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
1
(+ 1 (* x (pow y 2)))
(+ 1 (* x (pow y 2)))
(+ 1 (* x (pow y 2)))
(* x y)
(* x y)
(* x y)
(* x y)
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* x (+ (/ 1 x) (pow y 2)))
(* x (+ (/ 1 x) (pow y 2)))
(* x (+ (/ 1 x) (pow y 2)))
(* x y)
(* x y)
(* x y)
(* x y)
(exp x)
(exp x)
(exp x)
(exp x)
(* x y)
(* x y)
(* x y)
(* x y)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(exp (* x (pow y 2)))
(* x (pow y 2))
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(* x y)
(* x y)
(* x y)
(* x y)
(exp x)
(exp x)
(exp x)
(exp x)
Outputs
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) x (*.f64 y y)) x #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64))) x (*.f64 y y)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* 1/2 (* (pow x 2) (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) x (*.f64 y y)) x #s(literal 1 binary64))
(+ 1 (* (pow y 2) (+ x (* (pow y 2) (+ (* 1/6 (* (pow x 3) (pow y 2))) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64))) x (*.f64 y y)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 #s(literal 1 binary64) y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* (pow y 2) (+ x (/ 1 (pow y 2))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) x (*.f64 y y)) x #s(literal 1 binary64))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64))) x (*.f64 y y)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (+ (* 1/2 (* x (pow y 4))) (pow y 2))))
(fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64)) x (*.f64 y y)) x #s(literal 1 binary64))
(+ 1 (* x (+ (* x (+ (* 1/6 (* x (pow y 6))) (* 1/2 (pow y 4)))) (pow y 2))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 (pow.f64 y #s(literal 6 binary64)) x) #s(literal 1/6 binary64) (*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/2 binary64))) x (*.f64 y y)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(+ 1 (* x (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 #s(literal 1 binary64) x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 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))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (+ (/ 1 x) (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x (+ (/ 1 x) (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x (+ (/ 1 x) (pow y 2)))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x y))
(pow.f64 (exp.f64 x) y)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(exp (* x (pow y 2)))
(pow.f64 (pow.f64 (exp.f64 y) y) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* -1 (* x (- (* -1 (pow y 2)) (/ 1 x))))
(fma.f64 (*.f64 y y) x #s(literal 1 binary64))
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(* x y)
(*.f64 y x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)

rewrite224.0ms (0.8%)

Memory
10.6MiB live, 315.0MiB allocated
Rules
24 464×lower-fma.f32
24 462×lower-fma.f64
4 206×lower-*.f32
4 202×lower-*.f64
3 536×lower-/.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01441
02141
14441
218941
3153441
0852741
Stop Event
iter limit
node limit
iter limit
Counts
8 → 264
Calls
Call 1
Inputs
(*.f64 x y)
(exp.f64 (*.f64 x y))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
(fma.f64 (*.f64 y x) y #s(literal 1 binary64))
(*.f64 y x)
(exp.f64 x)
(exp.f64 y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval56.0ms (0.2%)

Memory
2.9MiB live, 126.7MiB allocated
Compiler

Compiled 8 108 to 872 computations (89.2% saved)

prune18.0ms (0.1%)

Memory
18.8MiB live, 57.6MiB allocated
Pruning

16 alts after pruning (10 fresh and 6 done)

PrunedKeptTotal
New42210432
Fresh000
Picked055
Done011
Total42216438
Accuracy
100.0%
Counts
438 → 16
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(exp.f64 (*.f64 (*.f64 x y) y))
87.7%
(exp.f64 (*.f64 x y))
65.0%
(exp.f64 y)
66.4%
(exp.f64 x)
61.9%
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
22.2%
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
46.3%
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
60.6%
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
58.2%
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
48.7%
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
58.9%
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
53.5%
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
40.1%
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
45.1%
#s(approx (exp 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)))
42.3%
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
31.6%
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
Compiler

Compiled 197 to 173 computations (12.2% saved)

simplify64.0ms (0.2%)

Memory
-5.1MiB live, 33.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
cost-diff0
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
cost-diff0
(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))
cost-diff0
#s(approx (exp 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)))
cost-diff0
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
cost-diff0
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
cost-diff0
(fma.f64 y x #s(literal 1 binary64))
cost-diff0
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
cost-diff0
(+.f64 #s(literal 1 binary64) x)
cost-diff0
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
cost-diff0
(*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)))
cost-diff0
(fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x)
cost-diff0
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
cost-diff0
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
Rules
2 356×lower-fma.f32
2 338×lower-fma.f64
1 102×lower-*.f32
1 096×lower-*.f64
802×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026166
047166
182166
2169166
3411166
4896166
51143166
61513166
72203166
82846166
92954166
102954166
112954166
123259166
133311166
03311166
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x)
(*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)))
(*.f64 x x)
x
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))
(*.f64 #s(literal 1/6 binary64) x)
#s(literal 1/6 binary64)
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
(+.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
(fma.f64 y x #s(literal 1 binary64))
y
x
#s(literal 1 binary64)
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
#s(literal 1/2 binary64)
x
#s(literal 1 binary64)
#s(approx (exp 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)))
(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))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
x
#s(literal 1/2 binary64)
#s(literal 1 binary64)
Outputs
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) (fma.f64 (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)) x) y #s(literal 1 binary64)) y) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)) x) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x)
(*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)) x) y #s(literal 1 binary64)) x)
(*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)) x) x)
(*.f64 x x)
x
(fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))
(*.f64 #s(literal 1/6 binary64) x)
#s(literal 1/6 binary64)
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
(+.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
(fma.f64 y x #s(literal 1 binary64))
y
x
#s(literal 1 binary64)
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
#s(literal 1/2 binary64)
x
#s(literal 1 binary64)
#s(approx (exp 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)))
(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))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
x
#s(literal 1/2 binary64)
#s(literal 1 binary64)

localize138.0ms (0.5%)

Memory
-10.2MiB live, 153.3MiB allocated
Localize:

Found 15 expressions of interest:

NewMetricScoreProgram
accuracy0.05078125
(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))
accuracy0.07421875
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
accuracy0.15625
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
accuracy20.108763567409113
#s(approx (exp 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)))
accuracy0
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
accuracy0
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
accuracy22.713322760718828
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
accuracy0
(fma.f64 y x #s(literal 1 binary64))
accuracy28.75537102620978
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
accuracy0
(+.f64 #s(literal 1 binary64) x)
accuracy31.98738073971277
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
accuracy0.44970713875912716
(*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)))
accuracy3.0623234346971326
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
accuracy3.8687390423934955
(fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x)
accuracy19.59511157857136
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
Samples
119.0ms256×0valid
Compiler

Compiled 140 to 31 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 62.0ms
ival-mult: 38.0ms (60.9% of total)
ival-add: 17.0ms (27.3% of total)
ival-exp: 4.0ms (6.4% of total)
const: 3.0ms (4.8% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series21.0ms (0.1%)

Memory
-5.0MiB live, 32.5MiB allocated
Counts
15 → 252
Calls
Call 1
Inputs
#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())
#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())
#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())
#s(alt (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)) (patch (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)) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())
Outputs
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 1/2 (* (pow x 2) y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 3))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (+ (/ 1 (pow y 3)) (/ x (pow y 2)))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 2))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) y)) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ x (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 3))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow y 3) (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* 1/2 (pow x 2)) (/ x y)) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 2))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3)))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) y)) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3))))) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (- (* -1 x) (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2))))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2))))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 1/2 (* x y)))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y))))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y))))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (* 1/6 (* x y)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (* 1/6 (* x y)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (* 1/6 (* x y)))) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2))))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 x)) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1/2 (* 1/6 x)))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1/2 (* 1/6 x)))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 x)) (taylor 0 x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 3))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 3)) (* 1/2 (/ (pow y 2) x)))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (/ y (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (+ (/ 1 (pow x 3)) (/ y (pow x 2)))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 2))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 2)) (* 1/2 (/ y x)))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) y)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt x (taylor inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ y (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 3)) (taylor inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (+ (/ 1 (pow x 2)) (/ 1 (pow x 3)))))) (taylor inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 3))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1/2 (/ (pow y 2) x)) (* -1/6 (pow y 3))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 (pow y 2)) (/ y x)) x)) (* -1/6 (pow y 3))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))) x)) (* -1/6 (pow y 3))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) (pow y 2))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1/2 (/ y x)) (* -1/6 (pow y 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2))))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) (patch (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (* (pow x 3) y)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x))))) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) (patch (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) (patch #s(approx (exp x) (+.f64 #s(literal 1 binary64) x)) #<representation binary64>) () ())) ())
#s(alt x (taylor -inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor -inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor -inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (/ 1 x))) (taylor -inf x) (#s(alt (+.f64 #s(literal 1 binary64) x) (patch (+.f64 #s(literal 1 binary64) x) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* x y) (taylor -inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* x (- (* -1 y) (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 y x #s(literal 1 binary64)) (patch (fma.f64 y x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) (patch #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 x) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/2 (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp 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))) (patch #s(approx (exp 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))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 3)) (taylor -inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (/ 1 x)) x)) 1/6))) (taylor -inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))) x)) 1/6))) (taylor -inf x) (#s(alt (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)) (patch (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)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow x 2)) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 x) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1/6 (* 1/2 (/ 1 x)))) (taylor -inf x) (#s(alt (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
((exp (* x y)) (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) (* (* x x) (+ (* (* 1/6 x) y) 1/2)) (exp x) (+ 1 x) (exp (* x y)) (+ (* y x) 1) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (+ (* 1/2 x) 1) (exp x) (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (+ (* (+ (* 1/6 x) 1/2) x) 1) (+ (* 1/6 x) 1/2))
2.0ms
y
@-inf
((exp (* x y)) (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) (* (* x x) (+ (* (* 1/6 x) y) 1/2)) (exp x) (+ 1 x) (exp (* x y)) (+ (* y x) 1) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (+ (* 1/2 x) 1) (exp x) (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (+ (* (+ (* 1/6 x) 1/2) x) 1) (+ (* 1/6 x) 1/2))
2.0ms
x
@inf
((exp (* x y)) (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) (* (* x x) (+ (* (* 1/6 x) y) 1/2)) (exp x) (+ 1 x) (exp (* x y)) (+ (* y x) 1) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (+ (* 1/2 x) 1) (exp x) (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (+ (* (+ (* 1/6 x) 1/2) x) 1) (+ (* 1/6 x) 1/2))
1.0ms
x
@0
((exp (* x y)) (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) (* (* x x) (+ (* (* 1/6 x) y) 1/2)) (exp x) (+ 1 x) (exp (* x y)) (+ (* y x) 1) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (+ (* 1/2 x) 1) (exp x) (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (+ (* (+ (* 1/6 x) 1/2) x) 1) (+ (* 1/6 x) 1/2))
1.0ms
y
@0
((exp (* x y)) (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) (* (* x x) (+ (* (* 1/6 x) y) 1/2)) (exp x) (+ 1 x) (exp (* x y)) (+ (* y x) 1) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (+ (* 1/2 x) 1) (exp x) (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (+ (* (+ (* 1/6 x) 1/2) x) 1) (+ (* 1/6 x) 1/2))

simplify269.0ms (0.9%)

Memory
12.5MiB live, 164.9MiB allocated
Algorithm
egg-herbie
Rules
14 930×lower-fma.f64
14 930×lower-fma.f32
4 788×lower-*.f64
4 788×lower-*.f32
2 794×lower-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02231965
17521900
225911851
371931849
080401660
Stop Event
iter limit
node limit
Counts
252 → 248
Calls
Call 1
Inputs
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
x
(+ x (* 1/2 (* (pow x 2) y)))
(+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))
(+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))
(* 1/2 (pow x 2))
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x y))
(+ 1 (* x y))
(+ 1 (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/6 (* (pow x 3) (pow y 3)))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (+ (/ 1 (pow y 3)) (/ x (pow y 2))))))
(* 1/6 (* (pow x 3) (pow y 2)))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(* 1/6 (* (pow x 3) y))
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* x y)
(* y (+ x (/ 1 y)))
(* y (+ x (/ 1 y)))
(* y (+ x (/ 1 y)))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/6 (* (pow x 3) (pow y 3)))
(* -1 (* (pow y 3) (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(* -1 (* (pow y 3) (+ (* -1 (/ (+ (* 1/2 (pow x 2)) (/ x y)) y)) (* -1/6 (pow x 3)))))
(* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))) y)) (* -1/6 (pow x 3)))))
(* 1/6 (* (pow x 3) (pow y 2)))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3))))
(* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3))))
(* 1/6 (* (pow x 3) y))
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* x y)
(* -1 (* y (- (* -1 x) (/ 1 y))))
(* -1 (* y (- (* -1 x) (/ 1 y))))
(* -1 (* y (- (* -1 x) (/ 1 y))))
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
x
(* x (+ 1 (* 1/2 (* x y))))
(* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y)))))
(* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y)))))
(* 1/2 (pow x 2))
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
1
(+ 1 x)
(+ 1 x)
(+ 1 x)
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
1
(+ 1 (* x y))
(+ 1 (* x y))
(+ 1 (* x y))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* 1/2 x))))
1
(+ 1 (* 1/2 x))
(+ 1 (* 1/2 x))
(+ 1 (* 1/2 x))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
1
(+ 1 (* 1/2 x))
(+ 1 (* x (+ 1/2 (* 1/6 x))))
(+ 1 (* x (+ 1/2 (* 1/6 x))))
1/2
(+ 1/2 (* 1/6 x))
(+ 1/2 (* 1/6 x))
(+ 1/2 (* 1/6 x))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/6 (* (pow x 3) (pow y 3)))
(* (pow x 3) (+ (* 1/6 (pow y 3)) (* 1/2 (/ (pow y 2) x))))
(* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (/ y (pow x 2)))))
(* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (+ (/ 1 (pow x 3)) (/ y (pow x 2))))))
(* 1/6 (* (pow x 3) (pow y 2)))
(* (pow x 3) (+ (* 1/6 (pow y 2)) (* 1/2 (/ y x))))
(* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2)))))
(* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2)))))
(* 1/6 (* (pow x 3) y))
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(exp x)
(exp x)
(exp x)
(exp x)
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* x y)
(* x (+ y (/ 1 x)))
(* x (+ y (/ 1 x)))
(* x (+ y (/ 1 x)))
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/2 (pow x 2))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* 1/2 x)
(* x (+ 1/2 (/ 1 x)))
(* x (+ 1/2 (/ 1 x)))
(* x (+ 1/2 (/ 1 x)))
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/6 (pow x 3))
(* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x))))
(* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (+ (/ 1 (pow x 2)) (/ 1 (pow x 3))))))
(* 1/6 (pow x 2))
(* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x))))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(* 1/6 x)
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/6 (* (pow x 3) (pow y 3)))
(* -1 (* (pow x 3) (+ (* -1/2 (/ (pow y 2) x)) (* -1/6 (pow y 3)))))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 (pow y 2)) (/ y x)) x)) (* -1/6 (pow y 3)))))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))) x)) (* -1/6 (pow y 3)))))
(* 1/6 (* (pow x 3) (pow y 2)))
(* -1 (* (pow x 3) (+ (* -1/2 (/ y x)) (* -1/6 (pow y 2)))))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2)))))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2)))))
(* 1/6 (* (pow x 3) y))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(exp x)
(exp x)
(exp x)
(exp x)
x
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(* x (+ 1 (/ 1 x)))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* x y)
(* -1 (* x (- (* -1 y) (/ 1 x))))
(* -1 (* x (- (* -1 y) (/ 1 x))))
(* -1 (* x (- (* -1 y) (/ 1 x))))
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/2 (pow x 2))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* 1/2 x)
(* x (+ 1/2 (/ 1 x)))
(* x (+ 1/2 (/ 1 x)))
(* x (+ 1/2 (/ 1 x)))
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/6 (pow x 3))
(* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x))))
(* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (/ 1 x)) x)) 1/6)))
(* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))) x)) 1/6)))
(* 1/6 (pow x 2))
(* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x))))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(* 1/6 x)
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
x
(+ x (* 1/2 (* (pow x 2) y)))
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
(+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/6 (* (pow x 3) (pow y 3)))
(*.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) (pow.f64 y #s(literal 3 binary64)))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(*.f64 (fma.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y)) (/.f64 x (*.f64 y y))) (pow.f64 y #s(literal 3 binary64)))
(* (pow y 3) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (+ (/ 1 (pow y 3)) (/ x (pow y 2))))))
(*.f64 (fma.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y)) (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 y #s(literal 3 binary64))) (/.f64 x (*.f64 y y)))) (pow.f64 y #s(literal 3 binary64)))
(* 1/6 (* (pow x 3) (pow y 2)))
(*.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y) #s(literal 1/6 binary64))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(*.f64 (fma.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y)) (/.f64 x (*.f64 y y))) (*.f64 y y))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (+ (* 1/2 (/ (pow x 2) y)) (/ x (pow y 2)))))
(*.f64 (fma.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y)) (/.f64 x (*.f64 y y))) (*.f64 y y))
(* 1/6 (* (pow x 3) y))
(*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal 1/6 binary64))
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(* y (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* x y)
(*.f64 y x)
(* y (+ x (/ 1 y)))
(fma.f64 y x #s(literal 1 binary64))
(* y (+ x (/ 1 y)))
(fma.f64 y x #s(literal 1 binary64))
(* y (+ x (/ 1 y)))
(fma.f64 y x #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/6 (* (pow x 3) (pow y 3)))
(*.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow y 3) (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) (pow.f64 y #s(literal 3 binary64)))
(* -1 (* (pow y 3) (+ (* -1 (/ (+ (* 1/2 (pow x 2)) (/ x y)) y)) (* -1/6 (pow x 3)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 x x) #s(literal 1/2 binary64) (/.f64 x y)) (neg.f64 y)))) (pow.f64 y #s(literal 3 binary64)))
(* -1 (* (pow y 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))) y)) (* -1/6 (pow x 3)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) (pow.f64 x #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) x) x (/.f64 (-.f64 x (/.f64 #s(literal -1 binary64) y)) y)) (neg.f64 y)))) (pow.f64 y #s(literal 3 binary64)))
(* 1/6 (* (pow x 3) (pow y 2)))
(*.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y) #s(literal 1/6 binary64))
(* (pow y 2) (+ (* 1/6 (pow x 3)) (* 1/2 (/ (pow x 2) y))))
(*.f64 (*.f64 y y) (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))))
(* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3))))
(*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64) (/.f64 (*.f64 x (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y))) (neg.f64 y))) y) y)
(* (pow y 2) (+ (* -1 (/ (+ (* -1 (/ x y)) (* -1/2 (pow x 2))) y)) (* 1/6 (pow x 3))))
(*.f64 (*.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64) (/.f64 (*.f64 x (fma.f64 #s(literal -1/2 binary64) x (/.f64 #s(literal -1 binary64) y))) (neg.f64 y))) y) y)
(* 1/6 (* (pow x 3) y))
(*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal 1/6 binary64))
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(* -1 (* y (+ (* -1/2 (/ (pow x 2) y)) (* -1/6 (pow x 3)))))
(*.f64 (*.f64 (*.f64 x x) (fma.f64 #s(literal 1/6 binary64) x (/.f64 #s(literal 1/2 binary64) y))) y)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* x y)
(*.f64 y x)
(* -1 (* y (- (* -1 x) (/ 1 y))))
(fma.f64 y x #s(literal 1 binary64))
(* -1 (* y (- (* -1 x) (/ 1 y))))
(fma.f64 y x #s(literal 1 binary64))
(* -1 (* y (- (* -1 x) (/ 1 y))))
(fma.f64 y x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
x
(* x (+ 1 (* 1/2 (* x y))))
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
(* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(* x (+ 1 (* x (+ (* 1/6 (* x (pow y 2))) (* 1/2 y)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(* (pow x 2) (+ 1/2 (* 1/6 (* x y))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 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))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
(+ 1 (* x y))
(fma.f64 y x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 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))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(+ 1 (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(+ 1 (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 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))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 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))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 x))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(+ 1 (* x (+ 1/2 (* 1/6 x))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1/2 (* 1/6 x))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/6 x))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/6 x))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(+ 1/2 (* 1/6 x))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/6 (* (pow x 3) (pow y 3)))
(*.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 3) (+ (* 1/6 (pow y 3)) (* 1/2 (/ (pow y 2) x))))
(*.f64 (*.f64 (*.f64 y y) (fma.f64 #s(literal 1/6 binary64) y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (/ y (pow x 2)))))
(*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)
(* (pow x 3) (+ (* 1/6 (pow y 3)) (+ (* 1/2 (/ (pow y 2) x)) (+ (/ 1 (pow x 3)) (/ y (pow x 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y #s(literal 1 binary64))
(* 1/6 (* (pow x 3) (pow y 2)))
(*.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y) #s(literal 1/6 binary64))
(* (pow x 3) (+ (* 1/6 (pow y 2)) (* 1/2 (/ y x))))
(*.f64 (*.f64 y (fma.f64 #s(literal 1/6 binary64) y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(* (pow x 3) (+ (* 1/6 (pow y 2)) (+ (* 1/2 (/ y x)) (/ 1 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x)
(* 1/6 (* (pow x 3) y))
(*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal 1/6 binary64))
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(* (pow x 3) (+ (* 1/6 y) (* 1/2 (/ 1 x))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
x
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* x y)
(*.f64 y x)
(* x (+ y (/ 1 x)))
(fma.f64 y x #s(literal 1 binary64))
(* x (+ y (/ 1 x)))
(fma.f64 y x #s(literal 1 binary64))
(* x (+ y (/ 1 x)))
(fma.f64 y x #s(literal 1 binary64))
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) x x)
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/6 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)
(* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x x)
(* (pow x 3) (+ 1/6 (+ (* 1/2 (/ 1 x)) (+ (/ 1 (pow x 2)) (/ 1 (pow x 3))))))
(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))
(* 1/6 (pow x 2))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x)
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(* 1/6 x)
(*.f64 #s(literal 1/6 binary64) x)
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/6 (* (pow x 3) (pow y 3)))
(*.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64)) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ (* -1/2 (/ (pow y 2) x)) (* -1/6 (pow y 3)))))
(*.f64 (*.f64 (*.f64 y y) (fma.f64 #s(literal 1/6 binary64) y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 (pow y 2)) (/ y x)) x)) (* -1/6 (pow y 3)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) (pow.f64 y #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) y (/.f64 y x)) (neg.f64 x)))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))) x)) (* -1/6 (pow y 3)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) (pow.f64 y #s(literal 3 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) y (/.f64 (-.f64 y (/.f64 #s(literal -1 binary64) x)) x)) (neg.f64 x)))) (pow.f64 x #s(literal 3 binary64)))
(* 1/6 (* (pow x 3) (pow y 2)))
(*.f64 (*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) y) #s(literal 1/6 binary64))
(* -1 (* (pow x 3) (+ (* -1/2 (/ y x)) (* -1/6 (pow y 2)))))
(*.f64 (*.f64 y (fma.f64 #s(literal 1/6 binary64) y (/.f64 #s(literal 1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2)))))
(*.f64 (neg.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y (/.f64 (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal 1 binary64) x)) (neg.f64 x)))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (+ (* -1 (/ (+ (* 1/2 y) (/ 1 x)) x)) (* -1/6 (pow y 2)))))
(*.f64 (neg.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y (/.f64 (fma.f64 #s(literal 1/2 binary64) y (/.f64 #s(literal 1 binary64) x)) (neg.f64 x)))) (pow.f64 x #s(literal 3 binary64)))
(* 1/6 (* (pow x 3) y))
(*.f64 (*.f64 (pow.f64 x #s(literal 3 binary64)) y) #s(literal 1/6 binary64))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) y (/.f64 #s(literal -1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) y (/.f64 #s(literal -1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (- (* -1/6 y) (* 1/2 (/ 1 x)))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/6 binary64) y (/.f64 #s(literal -1/2 binary64) x))) (pow.f64 x #s(literal 3 binary64)))
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
x
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(* x (+ 1 (/ 1 x)))
(+.f64 x #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* x y)
(*.f64 y x)
(* -1 (* x (- (* -1 y) (/ 1 x))))
(fma.f64 y x #s(literal 1 binary64))
(* -1 (* x (- (* -1 y) (/ 1 x))))
(fma.f64 y x #s(literal 1 binary64))
(* -1 (* x (- (* -1 y) (/ 1 x))))
(fma.f64 y x #s(literal 1 binary64))
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(fma.f64 (*.f64 #s(literal 1/2 binary64) x) x x)
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(* 1/2 x)
(*.f64 #s(literal 1/2 binary64) x)
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(* x (+ 1/2 (/ 1 x)))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/6 (pow x 3))
(*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow x 3) (+ 1/6 (* 1/2 (/ 1 x))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)
(* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (/ 1 x)) x)) 1/6)))
(*.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 (-.f64 #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) x)) x)) (pow.f64 x #s(literal 3 binary64)))
(* -1 (* (pow x 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))) x)) 1/6)))
(*.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 (-.f64 (/.f64 (/.f64 #s(literal -1 binary64) x) x) (-.f64 (/.f64 #s(literal 1 binary64) x) #s(literal -1/2 binary64))) x)) (pow.f64 x #s(literal 3 binary64)))
(* 1/6 (pow x 2))
(*.f64 (*.f64 #s(literal 1/6 binary64) x) x)
(* (pow x 2) (+ 1/6 (* 1/2 (/ 1 x))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x)
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/6 (+ (* 1/2 (/ 1 x)) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(* 1/6 x)
(*.f64 #s(literal 1/6 binary64) x)
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
(* x (+ 1/6 (* 1/2 (/ 1 x))))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))

rewrite350.0ms (1.2%)

Memory
16.2MiB live, 257.6MiB allocated
Rules
4 976×lower-*.f32
4 970×lower-*.f64
4 614×lower-/.f64
4 614×lower-/.f32
4 602×lower-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026137
047137
1190137
21462137
08187137
Stop Event
iter limit
node limit
iter limit
Counts
15 → 409
Calls
Call 1
Inputs
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x)
(*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
(+.f64 #s(literal 1 binary64) x)
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
(fma.f64 y x #s(literal 1 binary64))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64))
#s(approx (exp 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)))
(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))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64))
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval308.0ms (1.1%)

Memory
-31.7MiB live, 136.1MiB allocated
Compiler

Compiled 14 214 to 2 033 computations (85.7% saved)

prune81.0ms (0.3%)

Memory
-0.4MiB live, 75.6MiB allocated
Pruning

17 alts after pruning (10 fresh and 7 done)

PrunedKeptTotal
New6525657
Fresh055
Picked415
Done066
Total65617673
Accuracy
100.0%
Counts
673 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(exp.f64 (*.f64 (*.f64 x y) y))
87.7%
(exp.f64 (*.f64 x y))
65.0%
(exp.f64 y)
66.4%
(exp.f64 x)
61.9%
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
22.2%
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
46.3%
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
58.2%
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
24.9%
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
11.2%
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
58.9%
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
53.5%
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
40.1%
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
31.6%
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
21.3%
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))))
21.1%
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
18.3%
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
Compiler

Compiled 203 to 184 computations (9.4% saved)

simplify17.0ms (0.1%)

Memory
32.7MiB live, 32.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 x x) y)
cost-diff0
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
cost-diff0
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
cost-diff0
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
cost-diff0
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
cost-diff0
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
cost-diff0
(*.f64 x x)
cost-diff0
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
cost-diff0
#s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))
cost-diff0
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
cost-diff0
(+.f64 #s(literal 1 binary64) y)
cost-diff0
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
cost-diff0
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
cost-diff0
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
cost-diff0
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
cost-diff0
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
Rules
748×lower-fma.f32
734×lower-fma.f64
414×lower-*.f32
408×lower-*.f64
210×associate-*r*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030163
048163
178163
2123163
3240163
4456163
5553163
6576163
0576159
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
(+.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(*.f64 x x)
x
#s(literal 1/2 binary64)
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
#s(literal 1/2 binary64)
y
#s(literal 1 binary64)
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
(*.f64 (*.f64 x x) y)
(*.f64 x x)
x
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)
Outputs
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
#s(literal 1/6 binary64)
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
(+.f64 #s(literal 1 binary64) y)
#s(literal 1 binary64)
y
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(*.f64 x x)
x
#s(literal 1/2 binary64)
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
#s(literal 1/2 binary64)
y
#s(literal 1 binary64)
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x y) x) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(fma.f64 (fma.f64 (*.f64 (*.f64 x y) x) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
(fma.f64 (*.f64 (*.f64 x y) x) #s(literal 1/2 binary64) x)
(*.f64 (*.f64 x x) y)
(*.f64 (*.f64 x y) x)
(*.f64 x x)
x
y
#s(literal 1/2 binary64)
#s(literal 1 binary64)

localize192.0ms (0.7%)

Memory
-25.9MiB live, 175.7MiB allocated
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0
(*.f64 x x)
accuracy1.668081230802166
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
accuracy7.8626656441697635
(*.f64 (*.f64 x x) y)
accuracy21.774599419659136
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
accuracy0
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
accuracy0
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
accuracy16.49187019862478
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
accuracy0
(*.f64 x x)
accuracy0.0078125
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
accuracy22.713322760718828
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
accuracy30.28525283422094
#s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))
accuracy0
(+.f64 #s(literal 1 binary64) y)
accuracy33.07272044049918
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
accuracy0.03515625
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
accuracy0.0703125
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
accuracy0.16796875
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
accuracy10.579547705289103
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
Samples
66.0ms255×0valid
1.0ms5exit
Compiler

Compiled 120 to 33 computations (72.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 50.0ms
ival-mult: 26.0ms (51.8% of total)
ival-add: 11.0ms (21.9% of total)
const: 6.0ms (11.9% of total)
ival-exp: 6.0ms (11.9% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series66.0ms (0.2%)

Memory
-0.7MiB live, 38.0MiB allocated
Counts
17 → 252
Calls
Call 1
Inputs
#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())
#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())
#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())
#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())
#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())
#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())
#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())
#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())
#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())
Outputs
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y)))))) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y)))))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 y)) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1/2 (* 1/6 y)))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1/2 (* 1/6 y)))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1/2 (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1/2 (* 1/6 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y)))))) (taylor 0 y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y)))))) (taylor 0 y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 y) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ 1 (* 1/2 y)))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* 1/2 y)) (taylor 0 y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2))))))) (taylor 0 y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* y (+ x (* 1/2 (* (pow x 2) y))))) (taylor 0 y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 1/2 (* (pow x 2) y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 1/2 (* (pow x 2) y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (+ x (* 1/2 (* (pow x 2) y))) (taylor 0 y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow y 3)) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (+ (/ 1 (pow y 2)) (/ 1 (pow y 3)))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow y 2)) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 y) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow y 2)) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2))))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 y) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) (pow y 2))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y)))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y)))) (taylor inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) y)) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/2 (pow x 2)) (/ x y))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/2 (pow x 2)) (/ x y))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* y (+ (* 1/2 (pow x 2)) (/ x y))) (taylor inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow y 3)) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (/ 1 y)) y)) 1/6))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))) y)) 1/6))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 (pow y 2)) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/6 y) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/6 (* 1/2 (/ 1 y)))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) (patch (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) (patch #s(approx (exp y) (+.f64 #s(literal 1 binary64) y)) #<representation binary64>) () ())) ())
#s(alt y (taylor -inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1 (/ 1 y))) (taylor -inf y) (#s(alt (+.f64 #s(literal 1 binary64) y) (patch (+.f64 #s(literal 1 binary64) y) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp y) (taylor -inf y) (#s(alt #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) (patch #s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow y 2)) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (/ 1 y))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2))))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 y) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* y (+ 1/2 (/ 1 y))) (taylor -inf y) (#s(alt (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) (patch (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf y) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) (pow y 2))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2)))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2)))) (taylor -inf y) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) y)) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2))))) (taylor -inf y) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf y) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x)))))) (taylor 0 x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 x) (taylor 0 x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ 1 (* 1/2 x)))) (taylor 0 x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor 0 x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2))))))) (taylor 0 x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt 1 (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x y)) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (+ 1 (* x (+ y (* 1/2 (* x (pow y 2)))))) (taylor 0 x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt x (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 1/2 (* x y)))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 1/2 (* x y)))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* x (+ 1 (* 1/2 (* x y)))) (taylor 0 x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor 0 x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (/ 1 x))) (taylor inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) (pow y 2))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x)))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x)))) (taylor inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) y)) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (exp x) (taylor -inf x) (#s(alt #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (patch #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (/ 1 x))) (taylor -inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2))))) (taylor -inf x) (#s(alt #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) (patch #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (pow x 2)) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) (patch (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (pow x 2) (taylor -inf x) (#s(alt (*.f64 x x) (patch (*.f64 x x) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (exp (* x y)) (taylor -inf x) (#s(alt #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) (patch #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) (pow y 2))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2)))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2)))) (taylor -inf x) (#s(alt (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) (patch (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)) #<representation binary64>) () ())) ())
#s(alt (* 1/2 (* (pow x 2) y)) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) (+ (* 1/2 y) (/ 1 x))) (taylor -inf x) (#s(alt (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) (patch (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
#s(alt (* (pow x 2) y) (taylor -inf x) (#s(alt (*.f64 (*.f64 x x) y) (patch (*.f64 (*.f64 x x) y) #<representation binary64>) () ())) ())
Calls

6 calls:

TimeVariablePointExpression
3.0ms
y
@-inf
((exp y) (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (+ (* (+ (* 1/6 y) 1/2) y) 1) (+ (* 1/6 y) 1/2) (exp y) (+ 1 y) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (* (* x x) 1/2) (* x x) (exp y) (+ (* (+ (* 1/2 y) 1) y) 1) (+ (* 1/2 y) 1) (exp (* x y)) (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (+ (* (* (* x x) y) 1/2) x) (* (* x x) y))
2.0ms
y
@inf
((exp y) (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (+ (* (+ (* 1/6 y) 1/2) y) 1) (+ (* 1/6 y) 1/2) (exp y) (+ 1 y) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (* (* x x) 1/2) (* x x) (exp y) (+ (* (+ (* 1/2 y) 1) y) 1) (+ (* 1/2 y) 1) (exp (* x y)) (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (+ (* (* (* x x) y) 1/2) x) (* (* x x) y))
1.0ms
x
@inf
((exp y) (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (+ (* (+ (* 1/6 y) 1/2) y) 1) (+ (* 1/6 y) 1/2) (exp y) (+ 1 y) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (* (* x x) 1/2) (* x x) (exp y) (+ (* (+ (* 1/2 y) 1) y) 1) (+ (* 1/2 y) 1) (exp (* x y)) (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (+ (* (* (* x x) y) 1/2) x) (* (* x x) y))
1.0ms
y
@0
((exp y) (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (+ (* (+ (* 1/6 y) 1/2) y) 1) (+ (* 1/6 y) 1/2) (exp y) (+ 1 y) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (* (* x x) 1/2) (* x x) (exp y) (+ (* (+ (* 1/2 y) 1) y) 1) (+ (* 1/2 y) 1) (exp (* x y)) (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (+ (* (* (* x x) y) 1/2) x) (* (* x x) y))
1.0ms
x
@-inf
((exp y) (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (+ (* (+ (* 1/6 y) 1/2) y) 1) (+ (* 1/6 y) 1/2) (exp y) (+ 1 y) (exp x) (+ (* (+ (* 1/2 x) 1) x) 1) (* (* x x) 1/2) (* x x) (exp y) (+ (* (+ (* 1/2 y) 1) y) 1) (+ (* 1/2 y) 1) (exp (* x y)) (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (+ (* (* (* x x) y) 1/2) x) (* (* x x) y))

simplify132.0ms (0.5%)

Memory
10.0MiB live, 196.9MiB allocated
Algorithm
egg-herbie
Rules
9 644×lower-fma.f64
9 644×lower-fma.f32
5 222×lower-*.f64
5 222×lower-*.f32
1 632×lower-neg.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01461488
14901479
213311458
347891455
081311301
Stop Event
iter limit
node limit
Counts
252 → 248
Calls
Call 1
Inputs
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
1
(+ 1 (* 1/2 y))
(+ 1 (* y (+ 1/2 (* 1/6 y))))
(+ 1 (* y (+ 1/2 (* 1/6 y))))
1/2
(+ 1/2 (* 1/6 y))
(+ 1/2 (* 1/6 y))
(+ 1/2 (* 1/6 y))
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
1
(+ 1 y)
(+ 1 y)
(+ 1 y)
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
1
(+ 1 y)
(+ 1 (* y (+ 1 (* 1/2 y))))
(+ 1 (* y (+ 1 (* 1/2 y))))
1
(+ 1 (* 1/2 y))
(+ 1 (* 1/2 y))
(+ 1 (* 1/2 y))
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
1
(+ 1 (* x y))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
x
(+ x (* 1/2 (* (pow x 2) y)))
(+ x (* 1/2 (* (pow x 2) y)))
(+ x (* 1/2 (* (pow x 2) y)))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(exp y)
(exp y)
(exp y)
(exp y)
(* 1/6 (pow y 3))
(* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y))))
(* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (+ (/ 1 (pow y 2)) (/ 1 (pow y 3))))))
(* 1/6 (pow y 2))
(* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y))))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(* 1/6 y)
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(exp y)
(exp y)
(exp y)
(exp y)
y
(* y (+ 1 (/ 1 y)))
(* y (+ 1 (/ 1 y)))
(* y (+ 1 (/ 1 y)))
(exp y)
(exp y)
(exp y)
(exp y)
(* 1/2 (pow y 2))
(* (pow y 2) (+ 1/2 (/ 1 y)))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(* 1/2 y)
(* y (+ 1/2 (/ 1 y)))
(* y (+ 1/2 (/ 1 y)))
(* y (+ 1/2 (/ 1 y)))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/2 (* (pow x 2) (pow y 2)))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y)))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y))))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y))))
(* 1/2 (* (pow x 2) y))
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(exp y)
(exp y)
(exp y)
(exp y)
(* 1/6 (pow y 3))
(* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y))))
(* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (/ 1 y)) y)) 1/6)))
(* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))) y)) 1/6)))
(* 1/6 (pow y 2))
(* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y))))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(* 1/6 y)
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(exp y)
(exp y)
(exp y)
(exp y)
y
(* y (+ 1 (/ 1 y)))
(* y (+ 1 (/ 1 y)))
(* y (+ 1 (/ 1 y)))
(exp y)
(exp y)
(exp y)
(exp y)
(* 1/2 (pow y 2))
(* (pow y 2) (+ 1/2 (/ 1 y)))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(* 1/2 y)
(* y (+ 1/2 (/ 1 y)))
(* y (+ 1/2 (/ 1 y)))
(* y (+ 1/2 (/ 1 y)))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/2 (* (pow x 2) (pow y 2)))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y)))
(* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))))
(* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))))
(* 1/2 (* (pow x 2) y))
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
1
(+ 1 x)
(+ 1 (* x (+ 1 (* 1/2 x))))
(+ 1 (* x (+ 1 (* 1/2 x))))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
1
(+ 1 (* x y))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
x
(* x (+ 1 (* 1/2 (* x y))))
(* x (+ 1 (* 1/2 (* x y))))
(* x (+ 1 (* 1/2 (* x y))))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/2 (pow x 2))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/2 (* (pow x 2) (pow y 2)))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x)))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x))))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x))))
(* 1/2 (* (pow x 2) y))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(exp x)
(exp x)
(exp x)
(exp x)
(* 1/2 (pow x 2))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(* 1/2 (pow x 2))
(pow x 2)
(pow x 2)
(pow x 2)
(pow x 2)
(exp (* x y))
(exp (* x y))
(exp (* x y))
(exp (* x y))
(* 1/2 (* (pow x 2) (pow y 2)))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x)))
(* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))))
(* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))))
(* 1/2 (* (pow x 2) y))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
(* (pow x 2) y)
Outputs
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 y))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(+ 1 (* y (+ 1/2 (* 1/6 y))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1/2 (* 1/6 y))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
1/2
#s(literal 1/2 binary64)
(+ 1/2 (* 1/6 y))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(+ 1/2 (* 1/6 y))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(+ 1/2 (* 1/6 y))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* y (+ 1/2 (* 1/6 y))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 y)
(+.f64 y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(+ 1 (* y (+ 1 (* 1/2 y))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 y))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(+ 1 (* 1/2 y))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(+ 1 (* 1/2 y))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 x y #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(+ 1 (* y (+ x (* y (+ (* 1/6 (* (pow x 3) y)) (* 1/2 (pow x 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 (*.f64 x #s(literal 1/6 binary64)) y #s(literal 1/2 binary64))) x y) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 x y #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(+ 1 (* y (+ x (* 1/2 (* (pow x 2) y)))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
x
(+ x (* 1/2 (* (pow x 2) y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(+ x (* 1/2 (* (pow x 2) y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(+ x (* 1/2 (* (pow x 2) y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* 1/6 (pow y 3))
(*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)
(* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)
(* (pow y 3) (+ 1/6 (+ (* 1/2 (/ 1 y)) (+ (/ 1 (pow y 2)) (/ 1 (pow y 3))))))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* 1/6 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 1/6 binary64))
(* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y)
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(* 1/6 y)
(*.f64 #s(literal 1/6 binary64) y)
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
y
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* 1/2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 1/2 binary64))
(* (pow y 2) (+ 1/2 (/ 1 y)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/2 (* (pow x 2) (pow y 2)))
(*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y)))
(*.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x)
(* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (+ (/ 1 (pow y 2)) (/ x y))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* 1/2 (* (pow x 2) y))
(*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64))
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* y (+ (* 1/2 (pow x 2)) (/ x y)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* 1/6 (pow y 3))
(*.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal 1/6 binary64))
(* (pow y 3) (+ 1/6 (* 1/2 (/ 1 y))))
(*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)
(* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (/ 1 y)) y)) 1/6)))
(neg.f64 (fma.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))) y (*.f64 #s(literal -1/6 binary64) (pow.f64 y #s(literal 3 binary64)))))
(* -1 (* (pow y 3) (- (* -1 (/ (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))) y)) 1/6)))
(neg.f64 (fma.f64 (neg.f64 (fma.f64 #s(literal 1/2 binary64) y (/.f64 (+.f64 y #s(literal 1 binary64)) y))) y (*.f64 #s(literal -1/6 binary64) (pow.f64 y #s(literal 3 binary64)))))
(* 1/6 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 1/6 binary64))
(* (pow y 2) (+ 1/6 (* 1/2 (/ 1 y))))
(*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y)
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(* (pow y 2) (+ 1/6 (+ (* 1/2 (/ 1 y)) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(* 1/6 y)
(*.f64 #s(literal 1/6 binary64) y)
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(* y (+ 1/6 (* 1/2 (/ 1 y))))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
y
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(* y (+ 1 (/ 1 y)))
(+.f64 y #s(literal 1 binary64))
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(exp y)
(exp.f64 y)
(* 1/2 (pow y 2))
(*.f64 (*.f64 y y) #s(literal 1/2 binary64))
(* (pow y 2) (+ 1/2 (/ 1 y)))
(*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* (pow y 2) (+ 1/2 (+ (/ 1 y) (/ 1 (pow y 2)))))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(* 1/2 y)
(*.f64 #s(literal 1/2 binary64) y)
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(* y (+ 1/2 (/ 1 y)))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/2 (* (pow x 2) (pow y 2)))
(*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))
(* (pow y 2) (+ (* 1/2 (pow x 2)) (/ x y)))
(*.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x)
(* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* (pow y 2) (+ (* -1 (/ (- (* -1 x) (/ 1 y)) y)) (* 1/2 (pow x 2))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* 1/2 (* (pow x 2) y))
(*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64))
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* -1 (* y (+ (* -1 (/ x y)) (* -1/2 (pow x 2)))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* x (+ 1/2 (* 1/6 x))))))
(fma.f64 (fma.f64 (fma.f64 x #s(literal 1/6 binary64) #s(literal 1/2 binary64)) x #s(literal 1 binary64)) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 x)
(+.f64 x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(+ 1 (* x (+ 1 (* 1/2 x))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 x y #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(+ 1 (* x (+ y (* x (+ (* 1/6 (* x (pow y 3))) (* 1/2 (pow y 2)))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 y y) (fma.f64 (*.f64 x #s(literal 1/6 binary64)) y #s(literal 1/2 binary64))) x y) x #s(literal 1 binary64))
1
#s(literal 1 binary64)
(+ 1 (* x y))
(fma.f64 x y #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(+ 1 (* x (+ y (* 1/2 (* x (pow y 2))))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
x
(* x (+ 1 (* 1/2 (* x y))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* x (+ 1 (* 1/2 (* x y))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* x (+ 1 (* 1/2 (* x y))))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(*.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/2 (* (pow x 2) (pow y 2)))
(*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x)))
(*.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x)
(* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (+ (/ 1 (pow x 2)) (/ y x))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* 1/2 (* (pow x 2) y))
(*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(exp x)
(exp.f64 x)
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* (pow x 2) (+ 1/2 (/ 1 x)))
(*.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x)
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(* (pow x 2) (+ 1/2 (+ (/ 1 x) (/ 1 (pow x 2)))))
(fma.f64 (fma.f64 x #s(literal 1/2 binary64) #s(literal 1 binary64)) x #s(literal 1 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(* 1/2 (pow x 2))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(pow x 2)
(*.f64 x x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(exp (* x y))
(pow.f64 (exp.f64 y) x)
(* 1/2 (* (pow x 2) (pow y 2)))
(*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))
(* (pow x 2) (+ (* 1/2 (pow y 2)) (/ y x)))
(*.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x)
(* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* (pow x 2) (+ (* -1 (/ (- (* -1 y) (/ 1 x)) x)) (* 1/2 (pow y 2))))
(fma.f64 (*.f64 (fma.f64 (*.f64 x #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y) x #s(literal 1 binary64))
(* 1/2 (* (pow x 2) y))
(*.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64))
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) (+ (* 1/2 y) (/ 1 x)))
(fma.f64 (*.f64 (*.f64 x x) #s(literal 1/2 binary64)) y x)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)
(* (pow x 2) y)
(*.f64 (*.f64 x x) y)

rewrite310.0ms (1.1%)

Memory
-99.8MiB live, 152.4MiB allocated
Rules
5 014×lower-*.f32
5 008×lower-*.f64
4 712×lower-/.f64
4 712×lower-/.f32
4 298×lower-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
030145
048145
1188145
21392145
08226141
Stop Event
iter limit
node limit
iter limit
Counts
17 → 337
Calls
Call 1
Inputs
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
(+.f64 #s(literal 1 binary64) y)
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))
(*.f64 (*.f64 x x) #s(literal 1/2 binary64))
(*.f64 x x)
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64))
(fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
(fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x)
(*.f64 (*.f64 x x) y)
Outputs
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>
#<batchref>

eval82.0ms (0.3%)

Memory
-9.1MiB live, 154.3MiB allocated
Compiler

Compiled 11 071 to 1 617 computations (85.4% saved)

prune68.0ms (0.2%)

Memory
-30.7MiB live, 90.7MiB allocated
Pruning

23 alts after pruning (12 fresh and 11 done)

PrunedKeptTotal
New5967603
Fresh055
Picked145
Done077
Total59723620
Accuracy
100.0%
Counts
620 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(exp.f64 (*.f64 (*.f64 x y) y))
87.7%
(exp.f64 (*.f64 x y))
65.0%
(exp.f64 y)
66.4%
(exp.f64 x)
61.9%
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
22.2%
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
46.3%
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
24.9%
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
25.5%
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
11.2%
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
58.9%
#s(approx (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
58.9%
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
53.5%
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
59.2%
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
40.1%
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
23.5%
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
23.1%
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
18.1%
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
17.7%
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
31.6%
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
21.3%
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))))
21.1%
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
18.3%
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
Compiler

Compiled 409 to 264 computations (35.5% saved)

regimes35.0ms (0.1%)

Memory
25.1MiB live, 62.6MiB allocated
Counts
28 → 1
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(exp.f64 x)
(exp.f64 y)
(exp.f64 (*.f64 x y))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))))
(exp.f64 (*.f64 (*.f64 x y) y))
Outputs
(exp.f64 (*.f64 (*.f64 x y) y))
Calls

4 calls:

11.0ms
y
8.0ms
x
8.0ms
(*.f64 (*.f64 x y) y)
6.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(exp.f64 (*.f64 (*.f64 x y) y))
100.0%1(*.f64 (*.f64 x y) y)
Compiler

Compiled 13 to 13 computations (0% saved)

regimes59.0ms (0.2%)

Memory
-13.0MiB live, 61.2MiB allocated
Counts
27 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(exp.f64 x)
(exp.f64 y)
(exp.f64 (*.f64 x y))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/6 binary64))))
Outputs
(exp.f64 (*.f64 x y))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
(exp.f64 y)
Calls

4 calls:

33.0ms
x
9.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
8.0ms
y
7.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
87.7%1x
92.0%2y
93.6%3(exp.f64 (*.f64 (*.f64 x y) y))
93.6%3(*.f64 (*.f64 x y) y)
Compiler

Compiled 13 to 13 computations (0% saved)

regimes55.0ms (0.2%)

Memory
17.6MiB live, 63.4MiB allocated
Counts
25 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(exp.f64 x)
(exp.f64 y)
Outputs
(exp.f64 x)
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
(exp.f64 y)
Calls

4 calls:

33.0ms
x
7.0ms
y
7.0ms
(*.f64 (*.f64 x y) y)
6.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
77.4%2x
82.6%3y
87.1%3(exp.f64 (*.f64 (*.f64 x y) y))
87.1%3(*.f64 (*.f64 x y) y)
Compiler

Compiled 13 to 13 computations (0% saved)

regimes15.0ms (0.1%)

Memory
-12.4MiB live, 25.6MiB allocated
Counts
24 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
(exp.f64 x)
Outputs
(exp.f64 x)
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
(exp.f64 x)
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

2 calls:

8.0ms
(*.f64 (*.f64 x y) y)
6.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
83.0%3(exp.f64 (*.f64 (*.f64 x y) y))
85.2%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 11 to 9 computations (18.2% saved)

regimes111.0ms (0.4%)

Memory
0.8MiB live, 37.4MiB allocated
Counts
23 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/36 binary64) (*.f64 y y) #s(literal -1/4 binary64)) (fma.f64 #s(literal 1/6 binary64) y #s(literal -1/2 binary64))) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
Calls

4 calls:

91.0ms
y
7.0ms
x
6.0ms
(*.f64 (*.f64 x y) y)
5.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
68.4%3x
73.4%3y
71.9%3(exp.f64 (*.f64 (*.f64 x y) y))
73.8%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 13 to 13 computations (0% saved)

regimes14.0ms (0%)

Memory
22.9MiB live, 22.9MiB allocated
Counts
21 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y)))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

2 calls:

7.0ms
y
6.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
73.7%4(*.f64 (*.f64 x y) y)
72.1%3y
Compiler

Compiled 6 to 6 computations (0% saved)

regimes57.0ms (0.2%)

Memory
-7.7MiB live, 29.2MiB allocated
Counts
20 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
Calls

2 calls:

49.0ms
(*.f64 (*.f64 x y) y)
6.0ms
y
Results
AccuracySegmentsBranch
72.1%3y
73.8%5(*.f64 (*.f64 x y) y)
Compiler

Compiled 6 to 6 computations (0% saved)

regimes46.0ms (0.2%)

Memory
-31.6MiB live, 23.8MiB allocated
Counts
19 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
#s(approx (exp 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 (exp y) (fma.f64 (fma.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) y) 1/2) x) y) 1) (*.f64 (*.f64 (*.f64 (*.f64 x x) y) y) #s(literal 1/2 binary64))))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp 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 (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
Calls

2 calls:

39.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
6.0ms
y
Results
AccuracySegmentsBranch
69.7%3(exp.f64 (*.f64 (*.f64 x y) y))
71.4%3y
Compiler

Compiled 7 to 7 computations (0% saved)

regimes11.0ms (0%)

Memory
11.6MiB live, 11.6MiB allocated
Counts
16 → 5
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y y)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64)))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

2 calls:

5.0ms
y
5.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
73.8%5(*.f64 (*.f64 x y) y)
69.9%3y
Compiler

Compiled 6 to 6 computations (0% saved)

regimes5.0ms (0%)

Memory
8.8MiB live, 8.8MiB allocated
Counts
14 → 5
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

1 calls:

4.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
73.8%5(*.f64 (*.f64 x y) y)
Compiler

Compiled 5 to 4 computations (20% saved)

regimes5.0ms (0%)

Memory
8.0MiB live, 8.0MiB allocated
Counts
13 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x)))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

1 calls:

4.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
71.7%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 5 to 4 computations (20% saved)

regimes38.0ms (0.1%)

Memory
-19.2MiB live, 18.2MiB allocated
Counts
12 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp y) (fma.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y #s(literal 1 binary64)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64)))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

2 calls:

33.0ms
(*.f64 (*.f64 x y) y)
4.0ms
y
Results
AccuracySegmentsBranch
67.4%3y
71.3%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 6 to 6 computations (0% saved)

regimes7.0ms (0%)

Memory
14.4MiB live, 14.4MiB allocated
Counts
10 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

2 calls:

3.0ms
(*.f64 (*.f64 x y) y)
3.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
69.1%3(exp.f64 (*.f64 (*.f64 x y) y))
71.3%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 11 to 9 computations (18.2% saved)

regimes4.0ms (0%)

Memory
6.5MiB live, 6.5MiB allocated
Counts
9 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (fma.f64 #s(literal 1/2 binary64) y #s(literal 1 binary64)) y)))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))
Calls

1 calls:

3.0ms
(*.f64 (*.f64 x y) y)
Results
AccuracySegmentsBranch
71.3%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 5 to 4 computations (20% saved)

regimes14.0ms (0%)

Memory
-15.5MiB live, 20.9MiB allocated
Counts
7 → 4
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64))))
Calls

4 calls:

5.0ms
(*.f64 (*.f64 x y) y)
3.0ms
y
3.0ms
x
2.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
62.0%3y
58.9%4x
64.2%3(exp.f64 (*.f64 (*.f64 x y) y))
66.4%4(*.f64 (*.f64 x y) y)
Compiler

Compiled 13 to 13 computations (0% saved)

regimes8.0ms (0%)

Memory
16.1MiB live, 16.1MiB allocated
Counts
6 → 3
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
Outputs
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))
Calls

3 calls:

3.0ms
y
2.0ms
(*.f64 (*.f64 x y) y)
2.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
54.2%2y
60.9%3(exp.f64 (*.f64 (*.f64 x y) y))
60.9%3(*.f64 (*.f64 x y) y)
Compiler

Compiled 12 to 11 computations (8.3% saved)

regimes9.0ms (0%)

Memory
-17.4MiB live, 17.8MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64)))
Calls

3 calls:

4.0ms
(*.f64 (*.f64 x y) y)
2.0ms
x
2.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
50.7%2x
54.3%2(*.f64 (*.f64 x y) y)
54.3%2(exp.f64 (*.f64 (*.f64 x y) y))
Compiler

Compiled 12 to 11 computations (8.3% saved)

regimes4.0ms (0%)

Memory
11.7MiB live, 11.7MiB allocated
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x)))
Calls

2 calls:

2.0ms
(*.f64 (*.f64 x y) y)
2.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
54.3%2(exp.f64 (*.f64 (*.f64 x y) y))
54.3%2(*.f64 (*.f64 x y) y)
Compiler

Compiled 11 to 9 computations (18.2% saved)

regimes7.0ms (0%)

Memory
18.3MiB live, 18.3MiB allocated
Accuracy

Total -14.1b remaining (-41%)

Threshold costs -14.1b (-41%)

Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
#s(approx (exp x) (+.f64 #s(literal 1 binary64) x))
#s(approx (exp y) (+.f64 #s(literal 1 binary64) y))
Outputs
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
Calls

4 calls:

2.0ms
y
2.0ms
x
2.0ms
(*.f64 (*.f64 x y) y)
1.0ms
(exp.f64 (*.f64 (*.f64 x y) y))
Results
AccuracySegmentsBranch
46.3%1x
46.3%1y
46.3%1(*.f64 (*.f64 x y) y)
46.3%1(exp.f64 (*.f64 (*.f64 x y) y))
Compiler

Compiled 13 to 13 computations (0% saved)

bsearch4.0ms (0%)

Memory
-48.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.402453025445184e-26
410.1592766770298
0.0ms
-4.201356571549537e+51
-6.90265033653143e+47
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.402453025445184e-26
410.1592766770298
0.0ms
-4.201356571549537e+51
-6.90265033653143e+47
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.182150909741339e+297
8.709308110266115e+302
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch21.0ms (0.1%)

Memory
28.2MiB live, 28.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
9.0ms
2.549263691605167e+119
5.397359949270888e+120
10.0ms
2.6432418673145104e-107
1.1038219871558935e-103
Samples
10.0ms240×0valid
Compiler

Compiled 350 to 315 computations (10% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-mult: 3.0ms (59% of total)
ival-exp: 2.0ms (39.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.182150909741339e+297
8.709308110266115e+302
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch35.0ms (0.1%)

Memory
-19.9MiB live, 18.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
33.0ms
9.972692308455875e+108
1.9061958078903584e+113
1.0ms
2.6432418673145104e-107
1.1038219871558935e-103
Samples
28.0ms128×0valid
Compiler

Compiled 297 to 290 computations (2.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-mult: 2.0ms (76.8% of total)
ival-exp: 1.0ms (38.4% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch18.0ms (0.1%)

Memory
24.8MiB live, 24.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
8.0ms
9.972692308455875e+108
1.9061958078903584e+113
9.0ms
2.6432418673145104e-107
1.1038219871558935e-103
Samples
8.0ms208×0valid
Compiler

Compiled 281 to 290 computations (-3.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 3.0ms (71.6% of total)
ival-exp: 1.0ms (23.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.182150909741339e+297
8.709308110266115e+302
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.182150909741339e+297
8.709308110266115e+302
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch15.0ms (0%)

Memory
-33.1MiB live, 3.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
2.4MiB live, 2.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.3897405615416273e+151
1.178480832159481e+160
0.0ms
410.1592766770298
6051430200.571382
0.0ms
-6.701052694168793e+20
-1.7169650185439442e-22
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.34868510847727e+178
+inf
0.0ms
0.0
1.0
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
1.34868510847727e+178
Compiler

Compiled 9 to 10 computations (-11.1% saved)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.34868510847727e+178
+inf
Compiler

Compiled 9 to 10 computations (-11.1% saved)

simplify35.0ms (0.1%)

Memory
-12.1MiB live, 70.6MiB allocated
Algorithm
egg-herbie
Rules
32×*-commutative-binary64-*.f64
1-exp-binary32-exp.f32
1-exp-binary64-exp.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01741254
11931254
Stop Event
saturated
Calls
Call 1
Inputs
(exp.f64 (*.f64 (*.f64 x y) y))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 (*.f64 x y)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) (exp.f64 x) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 y #s(literal 1611323923926231/20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 269999999999999983133443373846076760996472925571757595928110098352902933261461558940878766988673918383696774748262367232 binary64)) #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 y #s(literal 1611323923926231/20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 25000000000000000388985403236671075606705034923026535834244264510770844529118892581624634747876186191905157021696 binary64)) #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 y #s(literal 8553702721162885/80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 2699999999999999896763305106938590562662667752157322077114473046910862852746011066904519199687070707164335046656 binary64)) #s(approx (exp 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 (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64)))))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 0 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 2 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x))))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))
Outputs
(exp.f64 (*.f64 (*.f64 x y) y))
(exp.f64 (*.f64 (*.f64 y x) y))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 (*.f64 x y)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 (*.f64 y x)) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -3999999999999999972883794697446511905846833767776256 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 1742245718635205/87112285931760246646623899502532662132736 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (exp.f64 y)))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) (exp.f64 x) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) (exp.f64 x) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) (exp.f64 x) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 y #s(literal 1611323923926231/20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 269999999999999983133443373846076760996472925571757595928110098352902933261461558940878766988673918383696774748262367232 binary64)) #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64))) y x) y #s(literal 1 binary64))) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 y #s(literal 1611323923926231/20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 269999999999999983133443373846076760996472925571757595928110098352902933261461558940878766988673918383696774748262367232 binary64)) #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) x) y #s(literal 1/2 binary64)) (*.f64 x x)) y x) y #s(literal 1 binary64))) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* (+ (* (* (* x x) (+ (* (* 1/6 x) y) 1/2)) y) x) y) 1) (*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 y x) #s(literal 1/2 binary64)) x) x) y x) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 y #s(literal 1611323923926231/20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 25000000000000000388985403236671075606705034923026535834244264510770844529118892581624634747876186191905157021696 binary64)) #s(approx (exp (* x y)) (fma.f64 (fma.f64 (*.f64 (*.f64 x x) y) #s(literal 1/2 binary64) x) y #s(literal 1 binary64))) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 y #s(literal 8553702721162885/80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 y #s(literal 2699999999999999896763305106938590562662667752157322077114473046910862852746011066904519199687070707164335046656 binary64)) #s(approx (exp 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 (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y)))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 (*.f64 y y) #s(literal 1/6 binary64))) y #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) (fma.f64 #s(approx (+ (* (+ (* 1/6 y) 1/2) y) 1) (*.f64 #s(literal 1/6 binary64) (*.f64 y y))) y #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 9999999999999999595662034753429788238255624467393741467120915117996487670031669885400803025551745174706847878231119663145222863482996149222332143382301002459214758820269116923021527058285459686414683385913622455551313826420028155008403585629126369847605750170289266545852965785882018353801250996224 binary64)) #s(approx (exp y) #s(approx (+ (* (+ (* (+ (* 1/6 y) 1/2) y) 1) y) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) y #s(literal 1/2 binary64)) y) y))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x)))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* (+ (* 1/6 x) 1/2) x) 1) x) 1) (*.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) x #s(literal 1/2 binary64)) x) x))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) (fma.f64 (fma.f64 #s(literal 1/2 binary64) x #s(literal 1 binary64)) x #s(literal 1 binary64))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) (fma.f64 (*.f64 y x) y #s(literal 1 binary64))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) #s(approx (exp (* (* x y) y)) #s(approx (+ (* (* y x) y) 1) (*.f64 (*.f64 y y) x))))))
(if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 x y) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) #s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 (*.f64 y y) #s(literal 1/2 binary64)))))))
(if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal -500000000000000000000 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 500 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) (if (<=.f64 (*.f64 (*.f64 y x) y) #s(literal 20000000000000000343550647744354382360786208168610910215464656890400062525563770840165253485722346365445091919087085669573862252890346012499269098930176 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) #s(approx (exp y) #s(approx (+ (* (+ (* 1/2 y) 1) y) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 y y)))))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 0 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64)))) (if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 (*.f64 x x) #s(literal 1/2 binary64))))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 y x) y)) #s(literal 0 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x)))) (if (<=.f64 (exp.f64 (*.f64 (*.f64 y x) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp x) #s(approx (+ (* (+ (* 1/2 x) 1) x) 1) (*.f64 #s(literal 1/2 binary64) (*.f64 x x))))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 2 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 y x) y)) #s(literal 2 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) (fma.f64 y x #s(literal 1 binary64))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 x y) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x))))
(if (<=.f64 (exp.f64 (*.f64 (*.f64 y x) y)) #s(literal 20000000000000001048762368950125674390947600308859449221132274486636123669507437727641913661775715231977449272833864355658690803360374488303464595921184714543633814120241555308544 binary64)) #s(approx (exp (* (* x y) y)) #s(literal 1 binary64)) #s(approx (exp (* x y)) #s(approx (+ (* y x) 1) (*.f64 y x))))
#s(approx (exp (* (* x y) y)) #s(literal 1 binary64))

soundness24.7s (84.8%)

Memory
6.4MiB live, 1 162.7MiB allocated
Rules
19 796×lower-fma.f64
19 796×lower-fma.f32
14 930×lower-fma.f64
14 930×lower-fma.f32
9 644×lower-fma.f64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01461488
14901479
213311458
347891455
081311301
0106920
1318920
2797908
31922900
43022892
55032892
08248828
0514
0816
11416
22916
39216
44823
539143
090723
02231965
17521900
225911851
371931849
080401660
044392
1120392
2328388
3803384
41106380
51234380
61314380
71337380
81351380
92752380
103337380
114128380
125124380
135145380
145145380
155378380
165378380
175378380
185378380
196827380
206827380
06827368
Stop Event
fuel
iter limit
saturated
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1 011 to 455 computations (55% saved)

preprocess161.0ms (0.6%)

Memory
23.5MiB live, 139.0MiB allocated
Remove

(abs y)

Compiler

Compiled 1 484 to 300 computations (79.8% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...