Linear.Quaternion:$cexp from linear-1.19.1.3

Time bar (total: 2.9s)

start0.0ms (0%)

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

analyze12.0ms (0.4%)

Memory
17.4MiB live, 17.4MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
75%74.9%25%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
87.5%87.4%12.5%0.1%0%0%0%7
87.5%87.4%12.5%0.1%0%0%0%8
93.8%93.7%6.2%0.1%0%0%0%9
93.8%93.7%6.2%0.1%0%0%0%10
96.9%96.8%3.1%0.1%0%0%0%11
96.9%96.8%3.1%0.1%0%0%0%12
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample949.0ms (32.2%)

Memory
-11.9MiB live, 744.3MiB allocated; 172ms collecting garbage
Samples
701.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 390.0ms
ival-sin: 249.0ms (63.9% of total)
ival-div: 78.0ms (20% of total)
ival-mult: 51.0ms (13.1% of total)
ival-true: 6.0ms (1.5% of total)
adjust: 3.0ms (0.8% of total)
ival-assert: 3.0ms (0.8% of total)
Bogosity

explain91.0ms (3.1%)

Memory
1.4MiB live, 94.5MiB allocated; 9ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(sin.f64 y)
00-0-y
00-0-(*.f64 x (/.f64 (sin.f64 y) y))
00-0-(/.f64 (sin.f64 y) y)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
33.0ms512×0valid
Compiler

Compiled 38 to 19 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 21.0ms
ival-sin: 13.0ms (63.4% of total)
ival-div: 4.0ms (19.5% of total)
ival-mult: 3.0ms (14.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess83.0ms (2.8%)

Memory
12.4MiB live, 58.4MiB allocated; 7ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01536
13632
28132
313432
425832
553032
6124032
7320232
8662332
056
086
1116
2136
3156
4166
0166
Stop Event
iter limit
saturated
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 x (/.f64 (sin.f64 y) y))
Outputs
(*.f64 x (/.f64 (sin.f64 y) y))
(*.f64 (/.f64 (sin.f64 y) y) x)
Symmetry

(abs y)

(negabs x)

Compiler

Compiled 6 to 5 computations (16.7% saved)

eval0.0ms (0%)

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

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.5MiB live, 0.6MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.8%
(*.f64 x (/.f64 (sin.f64 y) y))
Compiler

Compiled 6 to 5 computations (16.7% saved)

series7.0ms (0.2%)

Memory
8.9MiB live, 8.9MiB allocated; 0ms collecting garbage
Counts
5 → 15
Calls
Call 1
Inputs
(*.f64 x (/.f64 (sin.f64 y) y))
x
(/.f64 (sin.f64 y) y)
(sin.f64 y)
y
Outputs
(/ (* x (sin y)) y)
x
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
(/ (sin y) y)
(sin y)
Calls

6 calls:

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

simplify259.0ms (8.8%)

Memory
-5.6MiB live, 246.5MiB allocated; 136ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043150
1142150
2488140
32111138
47219138
08012120
Stop Event
iter limit
node limit
Counts
15 → 13
Calls
Call 1
Inputs
(/ (* x (sin y)) y)
x
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
(/ (sin y) y)
(sin y)
Outputs
(/ (* x (sin y)) y)
(*.f64 (sin.f64 y) (/.f64 x y))
x
(+ x (* -1/6 (* x (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(fma.f64 (*.f64 (*.f64 y y) x) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) x)
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(fma.f64 (*.f64 (*.f64 y y) x) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) x)
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow y 2)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/6 binary64) y)
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y)
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y)
(/ (sin y) y)
(/.f64 (sin.f64 y) y)
(sin y)
(sin.f64 y)

rewrite51.0ms (1.7%)

Memory
8.6MiB live, 102.6MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0514
0814
11414
23714
314514
085214
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
5 → 41
Calls
Call 1
Inputs
(*.f64 x (/.f64 (sin.f64 y) y))
x
(/.f64 (sin.f64 y) y)
(sin.f64 y)
y
Outputs
(*.f64 (/.f64 (neg.f64 x) y) (neg.f64 (sin.f64 y)))
(*.f64 (/.f64 x y) (sin.f64 y))
(*.f64 (neg.f64 x) (/.f64 (sin.f64 y) (neg.f64 y)))
(*.f64 (/.f64 (sin.f64 y) (neg.f64 y)) (neg.f64 x))
(*.f64 (neg.f64 (sin.f64 y)) (/.f64 (neg.f64 x) y))
(*.f64 (/.f64 (sin.f64 y) y) x)
(*.f64 (sin.f64 y) (/.f64 x y))
(*.f64 x (/.f64 (sin.f64 y) y))
(/.f64 (*.f64 (sin.f64 y) x) y)
(/.f64 (*.f64 (neg.f64 x) (sin.f64 y)) (neg.f64 y))
(neg.f64 (*.f64 (neg.f64 x) (/.f64 (sin.f64 y) y)))
x
(/.f64 (neg.f64 (sin.f64 y)) (neg.f64 y))
(/.f64 (sin.f64 y) y)
(neg.f64 (/.f64 (sin.f64 y) (neg.f64 y)))
(-.f64 (/.f64 (*.f64 #s(literal 0 binary64) (cos.f64 y)) (neg.f64 y)) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 y)) (neg.f64 y)))
(+.f64 (/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 y)) (neg.f64 y)) (/.f64 (*.f64 #s(literal 0 binary64) (cos.f64 y)) (neg.f64 y)))
(neg.f64 (neg.f64 (sin.f64 y)))
(fma.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64) (*.f64 (cos.f64 (+.f64 (PI.f64) y)) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64) (*.f64 #s(literal 0 binary64) (cos.f64 y)))
(sin.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (/.f64 (PI.f64) #s(literal 2 binary64))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (PI.f64)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 y)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (neg.f64 (+.f64 (PI.f64) y)))
(sin.f64 (+.f64 (+.f64 (PI.f64) y) (PI.f64)))
(sin.f64 (+.f64 (PI.f64) (neg.f64 y)))
(sin.f64 y)
(-.f64 (*.f64 (cos.f64 (+.f64 (PI.f64) y)) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 y)) #s(literal 1 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64)) (*.f64 #s(literal 0 binary64) (cos.f64 y)))
(-.f64 (*.f64 #s(literal 0 binary64) (cos.f64 y)) (*.f64 (neg.f64 (sin.f64 y)) #s(literal 1 binary64)))
(cos.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 y))))
(cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) y) (PI.f64)))
(cos.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) (neg.f64 y)))
(+.f64 (neg.f64 (*.f64 #s(literal -1 binary64) (sin.f64 y))) (neg.f64 (*.f64 #s(literal 0 binary64) (cos.f64 y))))
(+.f64 (*.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64)) (*.f64 (cos.f64 (+.f64 (PI.f64) y)) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 y)) #s(literal -1 binary64)) (*.f64 #s(literal 0 binary64) (cos.f64 y)))
y

eval6.0ms (0.2%)

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

Compiled 661 to 182 computations (72.5% saved)

prune32.0ms (1.1%)

Memory
-34.7MiB live, 12.2MiB allocated; 4ms collecting garbage
Pruning

7 alts after pruning (6 fresh and 1 done)

PrunedKeptTotal
New49655
Fresh000
Picked011
Done000
Total49756
Accuracy
99.9%
Counts
56 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.1%
(/.f64 (*.f64 (sin.f64 y) x) y)
87.9%
(*.f64 (/.f64 x y) (sin.f64 y))
99.8%
(*.f64 x (/.f64 (sin.f64 y) y))
42.5%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.4%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.6%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
43.3%
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
Compiler

Compiled 154 to 111 computations (27.9% saved)

series11.0ms (0.4%)

Memory
23.0MiB live, 23.0MiB allocated; 0ms collecting garbage
Counts
24 → 42
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 y) x) y)
(*.f64 (sin.f64 y) x)
(sin.f64 y)
y
x
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (sin y) y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 y y)
#s(literal -1/6 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))
#s(literal 1/120 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
Outputs
(/ (* x (sin y)) y)
(* x (sin y))
x
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(* x y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(pow y 2)
-1/6
(- (* 1/120 (pow y 2)) 1/6)
(- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)
1/120
(+ 1/120 (* -1/5040 (pow y 2)))
(sin y)
(/ (sin y) y)
(* -1/6 (pow y 2))
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* 1/120 (pow y 4))
(* (pow y 4) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(* (pow y 4) (- (+ 1/120 (/ 1 (pow y 4))) (* 1/6 (/ 1 (pow y 2)))))
(* 1/120 (pow y 2))
(* (pow y 2) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(* -1/5040 (pow y 6))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* (pow y 6) (- (+ (* 1/120 (/ 1 (pow y 2))) (/ 1 (pow y 6))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* -1/5040 (pow y 4))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* -1/5040 (pow y 2))
(* (pow y 2) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
Calls

6 calls:

TimeVariablePointExpression
3.0ms
y
@inf
((/ (* (sin y) x) y) (* (sin y) x) (sin y) y x (* x (/ (sin y) y)) (/ (sin y) y) 1 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* y y) -1/6 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* 1/120 (* y y)) -1/6) (* y y)) 1) (+ (* 1/120 (* y y)) -1/6) 1/120 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (* y y)) 1) (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (+ (* -1/5040 (* y y)) 1/120) -1/5040)
2.0ms
y
@-inf
((/ (* (sin y) x) y) (* (sin y) x) (sin y) y x (* x (/ (sin y) y)) (/ (sin y) y) 1 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* y y) -1/6 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* 1/120 (* y y)) -1/6) (* y y)) 1) (+ (* 1/120 (* y y)) -1/6) 1/120 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (* y y)) 1) (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (+ (* -1/5040 (* y y)) 1/120) -1/5040)
1.0ms
x
@-inf
((/ (* (sin y) x) y) (* (sin y) x) (sin y) y x (* x (/ (sin y) y)) (/ (sin y) y) 1 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* y y) -1/6 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* 1/120 (* y y)) -1/6) (* y y)) 1) (+ (* 1/120 (* y y)) -1/6) 1/120 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (* y y)) 1) (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (+ (* -1/5040 (* y y)) 1/120) -1/5040)
1.0ms
x
@inf
((/ (* (sin y) x) y) (* (sin y) x) (sin y) y x (* x (/ (sin y) y)) (/ (sin y) y) 1 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* y y) -1/6 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* 1/120 (* y y)) -1/6) (* y y)) 1) (+ (* 1/120 (* y y)) -1/6) 1/120 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (* y y)) 1) (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (+ (* -1/5040 (* y y)) 1/120) -1/5040)
1.0ms
y
@0
((/ (* (sin y) x) y) (* (sin y) x) (sin y) y x (* x (/ (sin y) y)) (/ (sin y) y) 1 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* y y) -1/6 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* 1/120 (* y y)) -1/6) (* y y)) 1) (+ (* 1/120 (* y y)) -1/6) 1/120 (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (* y y)) 1) (+ (* (+ (* -1/5040 (* y y)) 1/120) (* y y)) -1/6) (+ (* -1/5040 (* y y)) 1/120) -1/5040)

simplify152.0ms (5.2%)

Memory
14.5MiB live, 203.7MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
080408
1231408
2752394
33281380
08133349
Stop Event
iter limit
node limit
Counts
42 → 40
Calls
Call 1
Inputs
(/ (* x (sin y)) y)
(* x (sin y))
x
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(* x y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(pow y 2)
-1/6
(- (* 1/120 (pow y 2)) 1/6)
(- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)
1/120
(+ 1/120 (* -1/5040 (pow y 2)))
(sin y)
(/ (sin y) y)
(* -1/6 (pow y 2))
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* 1/120 (pow y 4))
(* (pow y 4) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(* (pow y 4) (- (+ 1/120 (/ 1 (pow y 4))) (* 1/6 (/ 1 (pow y 2)))))
(* 1/120 (pow y 2))
(* (pow y 2) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(* -1/5040 (pow y 6))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* (pow y 6) (- (+ (* 1/120 (/ 1 (pow y 2))) (/ 1 (pow y 6))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* -1/5040 (pow y 4))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(* -1/5040 (pow y 2))
(* (pow y 2) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
Outputs
(/ (* x (sin y)) y)
(*.f64 (/.f64 (sin.f64 y) y) x)
(* x (sin y))
(*.f64 (sin.f64 y) x)
x
(+ x (* -1/6 (* x (pow y 2))))
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(*.f64 x (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(fma.f64 (*.f64 x (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y) x)
(* x y)
(*.f64 x y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(*.f64 x (fma.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/6 binary64) y))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(*.f64 (*.f64 x (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))) y)
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
(*.f64 (fma.f64 (*.f64 x (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y) x) y)
y
(* y (+ 1 (* -1/6 (pow y 2))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/6 binary64) y)
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y)
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y)
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow y 2)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(pow y 2)
(*.f64 y y)
-1/6
#s(literal -1/6 binary64)
(- (* 1/120 (pow y 2)) 1/6)
(fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))
(- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))
1/120
#s(literal 1/120 binary64)
(+ 1/120 (* -1/5040 (pow y 2)))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))
(sin y)
(sin.f64 y)
(/ (sin y) y)
(/.f64 (sin.f64 y) y)
(* -1/6 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* 1/120 (pow y 4))
(*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal 1/120 binary64))
(* (pow y 4) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(*.f64 (-.f64 #s(literal 1/120 binary64) (/.f64 #s(literal 1/6 binary64) (*.f64 y y))) (pow.f64 y #s(literal 4 binary64)))
(* (pow y 4) (- (+ 1/120 (/ 1 (pow y 4))) (* 1/6 (/ 1 (pow y 2)))))
(fma.f64 (-.f64 #s(literal 1/120 binary64) (/.f64 #s(literal 1/6 binary64) (*.f64 y y))) (pow.f64 y #s(literal 4 binary64)) #s(literal 1 binary64))
(* 1/120 (pow y 2))
(*.f64 #s(literal 1/120 binary64) (*.f64 y y))
(* (pow y 2) (- 1/120 (* 1/6 (/ 1 (pow y 2)))))
(fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))
(* -1/5040 (pow y 6))
(*.f64 (pow.f64 y #s(literal 6 binary64)) #s(literal -1/5040 binary64))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) (pow.f64 y #s(literal 6 binary64)))
(* (pow y 6) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal 4 binary64)))) (pow.f64 y #s(literal 6 binary64)))
(* (pow y 6) (- (+ (* 1/120 (/ 1 (pow y 2))) (/ 1 (pow y 6))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal 4 binary64)))) (pow.f64 y #s(literal 6 binary64))))
(* -1/5040 (pow y 4))
(*.f64 (pow.f64 y #s(literal 4 binary64)) #s(literal -1/5040 binary64))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) (pow.f64 y #s(literal 4 binary64)))
(* (pow y 4) (- (* 1/120 (/ 1 (pow y 2))) (+ 1/5040 (/ 1/6 (pow y 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) (/.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal 4 binary64)))) (pow.f64 y #s(literal 4 binary64)))
(* -1/5040 (pow y 2))
(*.f64 #s(literal -1/5040 binary64) (*.f64 y y))
(* (pow y 2) (- (* 1/120 (/ 1 (pow y 2))) 1/5040))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 1/5040 binary64)) y) y)

rewrite102.0ms (3.5%)

Memory
-12.4MiB live, 133.7MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026193
046193
1161193
01148193
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
24 → 186
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 y) x) y)
(*.f64 (sin.f64 y) x)
(sin.f64 y)
y
x
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (sin y) y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 y y)
#s(literal -1/6 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))
#s(literal 1/120 binary64)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))
#s(literal -1/5040 binary64)
Outputs
(*.f64 (/.f64 x y) (sin.f64 y))
(*.f64 x (/.f64 (sin.f64 y) y))
(*.f64 (sin.f64 y) (/.f64 x y))
(/.f64 (neg.f64 (*.f64 (neg.f64 x) (sin.f64 y))) (neg.f64 (neg.f64 y)))
(/.f64 (*.f64 (neg.f64 x) (sin.f64 y)) (neg.f64 y))
(/.f64 (*.f64 x (sin.f64 y)) y)
(neg.f64 (/.f64 (*.f64 (neg.f64 x) (sin.f64 y)) y))
(neg.f64 (/.f64 (*.f64 x (sin.f64 y)) (neg.f64 y)))
(*.f64 x (sin.f64 y))
(*.f64 (sin.f64 y) x)
(sin.f64 y)
y
x
(*.f64 #s(approx (/ (sin y) y) #s(literal 1 binary64)) x)
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (sin y) y) #s(literal 1 binary64))
#s(literal 1 binary64)
(*.f64 #s(approx (/ (sin y) y) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64))) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 y y))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 y y))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 y)) (neg.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 y)) (fabs.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 1 binary64))
(fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 y (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal -1 binary64))))
(-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 y y)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) y)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 y y)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 y y)))
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 y) y))
(neg.f64 (*.f64 y (neg.f64 y)))
(fabs.f64 (*.f64 y y))
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
#s(literal -1/6 binary64)
(*.f64 #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (neg.f64 y)) (neg.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (fabs.f64 y)) (fabs.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) (*.f64 y #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y #s(literal 1 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64))
(fma.f64 y (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y)) y))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 y y)) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y) y))
(/.f64 (-.f64 #s(literal 1/36 binary64) (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) (*.f64 y y))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64) #s(literal -1/216 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 y y) #s(literal -1/720 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal -1/6 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64) #s(literal -1/216 binary64)) (+.f64 #s(literal 1/36 binary64) (-.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) (*.f64 (*.f64 y y) #s(literal -1/720 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64) #s(literal -1/216 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 y y) #s(literal -1/720 binary64))))
(fma.f64 (*.f64 #s(literal 1/120 binary64) (neg.f64 y)) (neg.f64 y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 #s(literal 1/120 binary64) (fabs.f64 y)) (fabs.f64 y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 #s(literal 1/120 binary64) y) y #s(literal -1/6 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal 1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal 1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 y y) #s(literal 1/120 binary64) #s(literal -1/6 binary64))
(fma.f64 y (*.f64 #s(literal 1/120 binary64) y) #s(literal -1/6 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal -1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal -1/6 binary64))))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 #s(literal 1/120 binary64) y)) y))
(-.f64 #s(literal -1/6 binary64) (*.f64 #s(literal -1/120 binary64) (*.f64 y y)))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 y y)) #s(literal 1/120 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 y y) #s(literal -1/720 binary64)))) (/.f64 #s(literal -1/216 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 (*.f64 y y) #s(literal -1/720 binary64)))))
(+.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 y y)) #s(literal -1/6 binary64))
(+.f64 #s(literal -1/6 binary64) (*.f64 #s(literal 1/120 binary64) (*.f64 y y)))
#s(literal 1/120 binary64)
(*.f64 #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64))) (neg.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (neg.f64 y)) (neg.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (fabs.f64 y)) (fabs.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) (*.f64 y #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y #s(literal 1 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64))
(fma.f64 y (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y)) y))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 y y)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 3 binary64)) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y) y))
(/.f64 (-.f64 #s(literal 1/36 binary64) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64))) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1/216 binary64))) (neg.f64 (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal -1/6 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1/216 binary64)) (+.f64 #s(literal 1/36 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) (*.f64 #s(literal -1/6 binary64) y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 3 binary64)) #s(literal -1/216 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (neg.f64 y)) (neg.f64 y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (fabs.f64 y)) (fabs.f64 y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y #s(literal -1/6 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))) #s(literal -1/6 binary64))
(fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))
(fma.f64 (*.f64 y y) (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) #s(literal -1/6 binary64))
(fma.f64 y (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) #s(literal -1/6 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal -1/6 binary64))) (/.f64 #s(literal 1/36 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal -1/6 binary64))))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y)) y))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))) (*.f64 y y)))
(-.f64 #s(literal -1/6 binary64) (*.f64 (neg.f64 (*.f64 y y)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 3 binary64)) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)))) (/.f64 #s(literal -1/216 binary64) (fma.f64 #s(literal -1/6 binary64) (-.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y)) (pow.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y) #s(literal -1/6 binary64))
(+.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) y) y))
(/.f64 (-.f64 #s(literal 1/14400 binary64) (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64))) (-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 y y))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 1/120 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 y y) #s(literal -1/604800 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 1/120 binary64)))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (+.f64 #s(literal 1/14400 binary64) (-.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) (*.f64 (*.f64 y y) #s(literal -1/604800 binary64)))))
(/.f64 (fma.f64 #s(literal -1/128024064000 binary64) (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal 1/1728000 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 y y) #s(literal -1/604800 binary64))))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (neg.f64 y)) (neg.f64 y) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) (fabs.f64 y)) (fabs.f64 y) #s(literal 1/120 binary64))
(fma.f64 (*.f64 #s(literal -1/5040 binary64) y) y #s(literal 1/120 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal -1/5040 binary64)) #s(literal 1/120 binary64))
(fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64))
(fma.f64 (*.f64 y y) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))
(fma.f64 y (*.f64 #s(literal -1/5040 binary64) y) #s(literal 1/120 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 1/120 binary64))) (/.f64 #s(literal 1/14400 binary64) (-.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 1/120 binary64))))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/5040 binary64) y)) y))
(-.f64 #s(literal 1/120 binary64) (*.f64 #s(literal 1/5040 binary64) (*.f64 y y)))
(-.f64 #s(literal 1/120 binary64) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -1/5040 binary64)))
(+.f64 (/.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 y y) #s(literal -1/604800 binary64)))) (/.f64 #s(literal 1/1728000 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 2 binary64)) #s(literal 1/14400 binary64)) (*.f64 (*.f64 y y) #s(literal -1/604800 binary64)))))
(+.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)) #s(literal 1/120 binary64))
(+.f64 #s(literal 1/120 binary64) (*.f64 #s(literal -1/5040 binary64) (*.f64 y y)))
#s(literal -1/5040 binary64)

eval62.0ms (2.1%)

Memory
1.7MiB live, 137.1MiB allocated; 42ms collecting garbage
Compiler

Compiled 7 692 to 1 224 computations (84.1% saved)

prune13.0ms (0.4%)

Memory
-13.9MiB live, 34.5MiB allocated; 2ms collecting garbage
Pruning

10 alts after pruning (5 fresh and 5 done)

PrunedKeptTotal
New3164320
Fresh011
Picked145
Done011
Total31710327
Accuracy
99.9%
Counts
327 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.1%
(/.f64 (*.f64 (sin.f64 y) x) y)
34.6%
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
87.9%
(*.f64 (/.f64 x y) (sin.f64 y))
99.8%
(*.f64 x (/.f64 (sin.f64 y) y))
42.5%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.4%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.6%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
2.8%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
43.3%
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
42.6%
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
Compiler

Compiled 189 to 137 computations (27.5% saved)

series14.0ms (0.5%)

Memory
29.7MiB live, 29.7MiB allocated; 0ms collecting garbage
Counts
22 → 30
Calls
Call 1
Inputs
(*.f64 (/.f64 x y) (sin.f64 y))
(/.f64 x y)
x
y
(sin.f64 y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(*.f64 y y)
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(*.f64 (*.f64 y y) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))
(*.f64 #s(literal -1/6 binary64) y)
#s(literal 1 binary64)
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
#s(approx (* (sin y) x) (*.f64 x y))
(*.f64 x y)
Outputs
(/ (* x (sin y)) y)
(/ x y)
x
(* x (+ 1 (* -1/6 (pow y 2))))
(* x (pow y 2))
(* x (sin y))
(* x y)
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(* -1/6 (pow y 2))
(pow y 2)
(* -1/6 y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
(sin y)
(/ (sin y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* -1/6 (* x (pow y 2)))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
Calls

6 calls:

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

simplify149.0ms (5%)

Memory
-32.4MiB live, 204.4MiB allocated; 32ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
061279
1201279
2653263
32814259
47614259
08060233
Stop Event
iter limit
node limit
Counts
30 → 28
Calls
Call 1
Inputs
(/ (* x (sin y)) y)
(/ x y)
x
(* x (+ 1 (* -1/6 (pow y 2))))
(* x (pow y 2))
(* x (sin y))
(* x y)
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
y
(* y (+ 1 (* -1/6 (pow y 2))))
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(* -1/6 (pow y 2))
(pow y 2)
(* -1/6 y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
(sin y)
(/ (sin y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* -1/6 (* x (pow y 2)))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
Outputs
(/ (* x (sin y)) y)
(*.f64 (/.f64 (sin.f64 y) y) x)
(/ x y)
(/.f64 x y)
x
(* x (+ 1 (* -1/6 (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(* x (pow y 2))
(*.f64 (*.f64 y y) x)
(* x (sin y))
(*.f64 (sin.f64 y) x)
(* x y)
(*.f64 y x)
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(*.f64 (neg.f64 x) (-.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 y y)) #s(literal 1 binary64)))
(+ x (* -1/6 (* x (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(*.f64 x (fma.f64 #s(literal 1/120 binary64) (pow.f64 y #s(literal 4 binary64)) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(fma.f64 (*.f64 x (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y y) x)
y
(* y (+ 1 (* -1/6 (pow y 2))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/6 binary64) y)
(* y (+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) y)
(* y (+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) y)
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow y 2)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(* -1/6 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(pow y 2)
(*.f64 y y)
(* -1/6 y)
(*.f64 #s(literal -1/6 binary64) y)
(* y (+ x (* -1/6 (* x (pow y 2)))))
(*.f64 (fma.f64 (pow.f64 y #s(literal 3 binary64)) #s(literal -1/6 binary64) y) x)
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2)))))))
(*.f64 (*.f64 x (fma.f64 #s(literal 1/120 binary64) (pow.f64 y #s(literal 4 binary64)) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)))) y)
(* y (+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x)))))))
(fma.f64 (pow.f64 y #s(literal 3 binary64)) (*.f64 x (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64))) (*.f64 y x))
(sin y)
(sin.f64 y)
(/ (sin y) y)
(/.f64 (sin.f64 y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y)
(* -1/6 (* x (pow y 2)))
(*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)

rewrite60.0ms (2%)

Memory
23.7MiB live, 76.7MiB allocated; 4ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
029156
045153
1120153
0521153
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
22 → 123
Calls
Call 1
Inputs
(*.f64 (/.f64 x y) (sin.f64 y))
(/.f64 x y)
x
y
(sin.f64 y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(*.f64 y y)
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(*.f64 (*.f64 y y) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))
(*.f64 #s(literal -1/6 binary64) y)
#s(literal 1 binary64)
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
#s(approx (* (sin y) x) (*.f64 x y))
(*.f64 x y)
Outputs
(*.f64 (sin.f64 y) (/.f64 x y))
(*.f64 (/.f64 x y) (sin.f64 y))
(*.f64 x (/.f64 (sin.f64 y) y))
(/.f64 (neg.f64 (*.f64 (neg.f64 x) (sin.f64 y))) (neg.f64 (neg.f64 y)))
(/.f64 (*.f64 (neg.f64 x) (sin.f64 y)) (neg.f64 y))
(/.f64 (*.f64 (sin.f64 y) x) y)
(neg.f64 (/.f64 (*.f64 (neg.f64 x) (sin.f64 y)) y))
(neg.f64 (/.f64 (*.f64 (sin.f64 y) x) (neg.f64 y)))
(/.f64 (neg.f64 (neg.f64 x)) (neg.f64 (neg.f64 y)))
(/.f64 (neg.f64 x) (neg.f64 y))
(/.f64 x y)
(neg.f64 (/.f64 (neg.f64 x) y))
(neg.f64 (/.f64 x (neg.f64 y)))
x
y
(sin.f64 y)
(*.f64 #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))) x)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 y)) (fabs.f64 y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal -1/6 binary64)))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 y #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) y)
(*.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) #s(literal 1 binary64)))
(*.f64 #s(literal -1/6 binary64) (*.f64 y y))
(*.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64)))
(*.f64 y (*.f64 #s(literal -1/6 binary64) y))
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 y) y))
(neg.f64 (*.f64 y (neg.f64 y)))
(fabs.f64 (*.f64 y y))
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 y y) x)
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 y x) x)
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x x)
(fma.f64 (*.f64 y y) (*.f64 #s(literal -1/6 binary64) x) x)
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) x) x)
(fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x)
(fma.f64 y (*.f64 y (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 x (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 (*.f64 y y) x)) #s(literal -1/6 binary64)))
(-.f64 x (*.f64 (neg.f64 (*.f64 y y)) (*.f64 #s(literal -1/6 binary64) x)))
(-.f64 x (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) x)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)
(+.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
(*.f64 (*.f64 x (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 x (fabs.f64 y)) (fabs.f64 y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) x))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) x))
(*.f64 (*.f64 y x) y)
(*.f64 (*.f64 y y) x)
(*.f64 y (*.f64 y x))
(*.f64 x (*.f64 y y))
(*.f64 #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))) x)
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
#s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal -1 binary64))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (neg.f64 (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal -1 binary64)))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
(/.f64 (fma.f64 (pow.f64 (*.f64 y y) #s(literal 3 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 y)) (neg.f64 y) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 y)) (fabs.f64 y) #s(literal 1 binary64))
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 y #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 y y) #s(literal 1 binary64))
(fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 y (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal -1 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal -1 binary64))))
(-.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 #s(literal -1/6 binary64) y)) y))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 y y)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 y y)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) y)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 (+.f64 (pow.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
(+.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 #s(literal -1/6 binary64) y)
(*.f64 y #s(literal -1/6 binary64))
#s(literal 1 binary64)
(/.f64 (neg.f64 (neg.f64 #s(approx (* (sin y) x) (*.f64 y x)))) (neg.f64 (neg.f64 y)))
(/.f64 (neg.f64 #s(approx (* (sin y) x) (*.f64 y x))) (neg.f64 y))
(/.f64 #s(approx (* (sin y) x) (*.f64 y x)) y)
(neg.f64 (/.f64 (neg.f64 #s(approx (* (sin y) x) (*.f64 y x))) y))
(neg.f64 (/.f64 #s(approx (* (sin y) x) (*.f64 y x)) (neg.f64 y)))
#s(approx (* (sin y) x) (*.f64 y x))
(*.f64 y x)
(*.f64 x y)

eval20.0ms (0.7%)

Memory
-0.9MiB live, 45.9MiB allocated; 4ms collecting garbage
Compiler

Compiled 3 195 to 553 computations (82.7% saved)

prune13.0ms (0.4%)

Memory
-17.1MiB live, 29.9MiB allocated; 3ms collecting garbage
Pruning

13 alts after pruning (5 fresh and 8 done)

PrunedKeptTotal
New1765181
Fresh000
Picked235
Done055
Total17813191
Accuracy
99.9%
Counts
191 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.1%
(/.f64 (*.f64 (sin.f64 y) x) y)
34.6%
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
87.9%
(*.f64 (/.f64 x y) (sin.f64 y))
99.8%
(*.f64 x (/.f64 (sin.f64 y) y))
42.5%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.4%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.6%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
23.4%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
2.8%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
43.3%
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
42.6%
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
42.6%
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
2.8%
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
Compiler

Compiled 290 to 205 computations (29.3% saved)

series18.0ms (0.6%)

Memory
-9.4MiB live, 37.6MiB allocated; 4ms collecting garbage
Counts
29 → 30
Calls
Call 1
Inputs
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
(fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x)
y
(*.f64 (*.f64 y x) #s(literal -1/6 binary64))
(*.f64 y x)
x
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
#s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
(*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))
(*.f64 (*.f64 y y) x)
(*.f64 y y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y)))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) y)
(*.f64 #s(literal -1/6 binary64) y)
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
(fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x)
(*.f64 (*.f64 y x) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y)))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y)
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y)
(-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 y y))
#s(literal 1 binary64)
#s(literal 1/6 binary64)
Outputs
(/ (* x (sin y)) y)
(* x (+ 1 (* -1/6 (pow y 2))))
(* -1/6 (* x y))
(* x y)
x
(* -1/6 (* x (pow y 2)))
(* x (pow y 2))
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
y
(pow y 2)
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(* -1/6 (pow y 2))
(* -1/6 y)
(/ 1 y)
(/ (+ 1 (* -1/6 (pow y 2))) y)
(/ 1 (pow y 2))
(/ (+ 1 (* -1/6 (pow y 2))) (pow y 2))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
(/ (sin y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* y (- (/ 1 (pow y 2)) 1/6))
-1/6
(- (/ 1 (pow y 2)) 1/6)
(* -1 (* y (- 1/6 (/ 1 (pow y 2)))))
Calls

6 calls:

TimeVariablePointExpression
6.0ms
y
@inf
((/ (* (sin y) x) y) (+ (* y (* (* y x) -1/6)) x) y (* (* y x) -1/6) (* y x) x -1/6 (/ (* (sin y) x) y) (+ (* (* (* y y) x) -1/6) x) (* (* (* y y) x) -1/6) (* (* y y) x) (* y y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* -1/6 y) y) (* -1/6 y) (/ (* (sin y) x) y) (+ (* (* (* y x) y) -1/6) x) (* (* y x) y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* (- (/ 1 (* y y)) 1/6) y) y) (* (- (/ 1 (* y y)) 1/6) y) (- (/ 1 (* y y)) 1/6) (/ 1 (* y y)) 1 1/6)
3.0ms
y
@-inf
((/ (* (sin y) x) y) (+ (* y (* (* y x) -1/6)) x) y (* (* y x) -1/6) (* y x) x -1/6 (/ (* (sin y) x) y) (+ (* (* (* y y) x) -1/6) x) (* (* (* y y) x) -1/6) (* (* y y) x) (* y y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* -1/6 y) y) (* -1/6 y) (/ (* (sin y) x) y) (+ (* (* (* y x) y) -1/6) x) (* (* y x) y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* (- (/ 1 (* y y)) 1/6) y) y) (* (- (/ 1 (* y y)) 1/6) y) (- (/ 1 (* y y)) 1/6) (/ 1 (* y y)) 1 1/6)
2.0ms
x
@-inf
((/ (* (sin y) x) y) (+ (* y (* (* y x) -1/6)) x) y (* (* y x) -1/6) (* y x) x -1/6 (/ (* (sin y) x) y) (+ (* (* (* y y) x) -1/6) x) (* (* (* y y) x) -1/6) (* (* y y) x) (* y y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* -1/6 y) y) (* -1/6 y) (/ (* (sin y) x) y) (+ (* (* (* y x) y) -1/6) x) (* (* y x) y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* (- (/ 1 (* y y)) 1/6) y) y) (* (- (/ 1 (* y y)) 1/6) y) (- (/ 1 (* y y)) 1/6) (/ 1 (* y y)) 1 1/6)
2.0ms
y
@0
((/ (* (sin y) x) y) (+ (* y (* (* y x) -1/6)) x) y (* (* y x) -1/6) (* y x) x -1/6 (/ (* (sin y) x) y) (+ (* (* (* y y) x) -1/6) x) (* (* (* y y) x) -1/6) (* (* y y) x) (* y y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* -1/6 y) y) (* -1/6 y) (/ (* (sin y) x) y) (+ (* (* (* y x) y) -1/6) x) (* (* y x) y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* (- (/ 1 (* y y)) 1/6) y) y) (* (- (/ 1 (* y y)) 1/6) y) (- (/ 1 (* y y)) 1/6) (/ 1 (* y y)) 1 1/6)
2.0ms
x
@0
((/ (* (sin y) x) y) (+ (* y (* (* y x) -1/6)) x) y (* (* y x) -1/6) (* y x) x -1/6 (/ (* (sin y) x) y) (+ (* (* (* y y) x) -1/6) x) (* (* (* y y) x) -1/6) (* (* y y) x) (* y y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* -1/6 y) y) (* -1/6 y) (/ (* (sin y) x) y) (+ (* (* (* y x) y) -1/6) x) (* (* y x) y) (* x (/ (sin y) y)) (/ (sin y) y) (+ (* (* y y) -1/6) 1) (* (* (- (/ 1 (* y y)) 1/6) y) y) (* (- (/ 1 (* y y)) 1/6) y) (- (/ 1 (* y y)) 1/6) (/ 1 (* y y)) 1 1/6)

simplify130.0ms (4.4%)

Memory
34.0MiB live, 221.2MiB allocated; 16ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062232
1177232
2543220
32187216
08747200
Stop Event
iter limit
node limit
Counts
30 → 28
Calls
Call 1
Inputs
(/ (* x (sin y)) y)
(* x (+ 1 (* -1/6 (pow y 2))))
(* -1/6 (* x y))
(* x y)
x
(* -1/6 (* x (pow y 2)))
(* x (pow y 2))
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(+ x (* -1/6 (* x (pow y 2))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
y
(pow y 2)
1
(+ 1 (* -1/6 (pow y 2)))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(* -1/6 (pow y 2))
(* -1/6 y)
(/ 1 y)
(/ (+ 1 (* -1/6 (pow y 2))) y)
(/ 1 (pow y 2))
(/ (+ 1 (* -1/6 (pow y 2))) (pow y 2))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
(/ (sin y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(* y (- (/ 1 (pow y 2)) 1/6))
-1/6
(- (/ 1 (pow y 2)) 1/6)
(* -1 (* y (- 1/6 (/ 1 (pow y 2)))))
Outputs
(/ (* x (sin y)) y)
(*.f64 (/.f64 (sin.f64 y) y) x)
(* x (+ 1 (* -1/6 (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(* -1/6 (* x y))
(*.f64 (*.f64 x y) #s(literal -1/6 binary64))
(* x y)
(*.f64 x y)
x
(* -1/6 (* x (pow y 2)))
(*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))
(* x (pow y 2))
(*.f64 (*.f64 x y) y)
(* -1 (* x (- (* 1/6 (pow y 2)) 1)))
(*.f64 (neg.f64 x) (fma.f64 #s(literal 1/6 binary64) (*.f64 y y) #s(literal -1 binary64)))
(+ x (* -1/6 (* x (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(+ x (* (pow y 2) (+ (* -1/6 x) (* 1/120 (* x (pow y 2))))))
(*.f64 x (fma.f64 #s(literal 1/120 binary64) (pow.f64 y #s(literal 4 binary64)) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(+ x (* (pow y 2) (+ (* -1/6 x) (* (pow y 2) (+ (* -1/5040 (* x (pow y 2))) (* 1/120 x))))))
(fma.f64 (*.f64 (*.f64 x y) y) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) x)
y
(pow y 2)
(*.f64 y y)
1
#s(literal 1 binary64)
(+ 1 (* -1/6 (pow y 2)))
(fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* 1/120 (pow y 2)) 1/6)))
(fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(+ 1 (* (pow y 2) (- (* (pow y 2) (+ 1/120 (* -1/5040 (pow y 2)))) 1/6)))
(fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))
(* -1/6 (pow y 2))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(* -1/6 y)
(*.f64 #s(literal -1/6 binary64) y)
(/ 1 y)
(/.f64 #s(literal 1 binary64) y)
(/ (+ 1 (* -1/6 (pow y 2))) y)
(fma.f64 #s(literal -1/6 binary64) y (/.f64 #s(literal 1 binary64) y))
(/ 1 (pow y 2))
(/.f64 (/.f64 #s(literal 1 binary64) y) y)
(/ (+ 1 (* -1/6 (pow y 2))) (pow y 2))
(-.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) y) #s(literal 1/6 binary64))
(* (pow y 2) (+ (* -1/6 x) (/ x (pow y 2))))
(*.f64 (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64)) x)
(/ (sin y) y)
(/.f64 (sin.f64 y) y)
(* (pow y 2) (- (/ 1 (pow y 2)) 1/6))
(*.f64 (*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) y) #s(literal 1/6 binary64)) y) y)
(* y (- (/ 1 (pow y 2)) 1/6))
(*.f64 (-.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) y) #s(literal 1/6 binary64)) y)
-1/6
#s(literal -1/6 binary64)
(- (/ 1 (pow y 2)) 1/6)
(-.f64 (/.f64 (/.f64 #s(literal 1 binary64) y) y) #s(literal 1/6 binary64))
(* -1 (* y (- 1/6 (/ 1 (pow y 2)))))
(*.f64 (neg.f64 y) (-.f64 #s(literal 1/6 binary64) (/.f64 (/.f64 #s(literal 1 binary64) y) y)))

rewrite65.0ms (2.2%)

Memory
3.4MiB live, 55.5MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
039280
058278
1176264
0802258
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
29 → 177
Calls
Call 1
Inputs
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
(fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x)
y
(*.f64 (*.f64 y x) #s(literal -1/6 binary64))
(*.f64 y x)
x
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
#s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
(*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))
(*.f64 (*.f64 y y) x)
(*.f64 y y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y)))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) y)
(*.f64 #s(literal -1/6 binary64) y)
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
(fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x)
(*.f64 (*.f64 y x) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y)))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y)
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y)
(-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64))
(/.f64 #s(literal 1 binary64) (*.f64 y y))
#s(literal 1 binary64)
#s(literal 1/6 binary64)
Outputs
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y x))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 y y) x)
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 x y) x)
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x x)
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(fma.f64 (*.f64 y y) (*.f64 #s(literal -1/6 binary64) x) x)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y x)
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) x) x)
(fma.f64 (*.f64 x y) (*.f64 #s(literal -1/6 binary64) y) x)
(fma.f64 x (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x)
(fma.f64 y (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 (*.f64 y y) x)) #s(literal -1/6 binary64)))
(-.f64 x (*.f64 (*.f64 (neg.f64 y) y) (*.f64 #s(literal -1/6 binary64) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y))) y))
(-.f64 x (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 x y)) (*.f64 #s(literal -1/6 binary64) y)))
(-.f64 x (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) (*.f64 x y))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)
(+.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
y
(*.f64 (*.f64 #s(literal -1/6 binary64) x) y)
(*.f64 (*.f64 #s(literal -1/6 binary64) y) x)
(*.f64 #s(literal -1/6 binary64) (*.f64 x y))
(*.f64 (*.f64 x y) #s(literal -1/6 binary64))
(*.f64 x (*.f64 #s(literal -1/6 binary64) y))
(*.f64 y (*.f64 #s(literal -1/6 binary64) x))
(*.f64 x y)
(*.f64 y x)
x
#s(literal -1/6 binary64)
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
#s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 y y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) x)))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (*.f64 #s(literal -1/6 binary64) x)))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 x y))
(*.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x)
(*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))
(*.f64 (*.f64 y y) (*.f64 #s(literal -1/6 binary64) x))
(*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)
(*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) x))
(*.f64 (*.f64 x y) (*.f64 #s(literal -1/6 binary64) y))
(*.f64 x (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 y (*.f64 #s(literal -1/6 binary64) (*.f64 x y)))
(*.f64 (*.f64 x (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 x (fabs.f64 y)) (fabs.f64 y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) x))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) x))
(*.f64 (*.f64 y y) x)
(*.f64 (*.f64 x y) y)
(*.f64 x (*.f64 y y))
(*.f64 y (*.f64 x y))
(*.f64 (pow.f64 y #s(literal 1 binary64)) (pow.f64 y #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 y)) (neg.f64 (neg.f64 y)))
(*.f64 (neg.f64 (fabs.f64 y)) (neg.f64 (fabs.f64 y)))
(*.f64 (fabs.f64 (fabs.f64 y)) (fabs.f64 (fabs.f64 y)))
(*.f64 (neg.f64 y) (neg.f64 y))
(*.f64 (fabs.f64 y) (fabs.f64 y))
(*.f64 y y)
(pow.f64 (neg.f64 y) #s(literal 2 binary64))
(pow.f64 (fabs.f64 y) #s(literal 2 binary64))
(pow.f64 y #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 y) y))
(fabs.f64 (*.f64 y y))
(exp.f64 (*.f64 (log.f64 y) #s(literal 2 binary64)))
(*.f64 #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))) x)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64))))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 #s(literal -1/6 binary64) (fabs.f64 y)) (fabs.f64 y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) #s(literal -1/6 binary64)))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 y #s(literal 1 binary64)))
(*.f64 (*.f64 #s(literal -1/6 binary64) y) y)
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))
(*.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 y y) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) #s(literal 1 binary64)))
(*.f64 #s(literal -1/6 binary64) (*.f64 y y))
(*.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) #s(literal 1 binary64)))
(*.f64 y (*.f64 #s(literal -1/6 binary64) y))
(*.f64 #s(literal -1/6 binary64) y)
(*.f64 y #s(literal -1/6 binary64))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y x))
(/.f64 (-.f64 (*.f64 x x) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))) (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x))) (neg.f64 (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 x x)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x x (-.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x))))
(/.f64 (fma.f64 (pow.f64 (*.f64 (*.f64 y y) x) #s(literal 3 binary64)) #s(literal -1/216 binary64) (pow.f64 x #s(literal 3 binary64))) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) x) (*.f64 y y) x)
(fma.f64 (neg.f64 y) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) (*.f64 #s(literal -1/6 binary64) x)) x)
(fma.f64 (*.f64 #s(literal -1/6 binary64) y) (*.f64 x y) x)
(fma.f64 (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x x)
(fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x)
(fma.f64 (*.f64 y y) (*.f64 #s(literal -1/6 binary64) x) x)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y x)
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 y y) x) x)
(fma.f64 (*.f64 x y) (*.f64 #s(literal -1/6 binary64) y) x)
(fma.f64 x (*.f64 (*.f64 y y) #s(literal -1/6 binary64)) x)
(fma.f64 y (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) x)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)) (/.f64 (*.f64 x x) (-.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 (*.f64 y y) x)) #s(literal -1/6 binary64)))
(-.f64 x (*.f64 (*.f64 (neg.f64 y) y) (*.f64 #s(literal -1/6 binary64) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y))) y))
(-.f64 x (*.f64 #s(literal 1/6 binary64) (*.f64 (*.f64 y y) x)))
(-.f64 x (*.f64 (neg.f64 (*.f64 x y)) (*.f64 #s(literal -1/6 binary64) y)))
(-.f64 x (*.f64 (neg.f64 y) (*.f64 #s(literal -1/6 binary64) (*.f64 x y))))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))) (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 x (-.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))) (pow.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)) x)
(+.f64 x (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64)))
(*.f64 (*.f64 x (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 x (fabs.f64 y)) (fabs.f64 y))
(*.f64 (neg.f64 y) (*.f64 (neg.f64 y) x))
(*.f64 (fabs.f64 y) (*.f64 (fabs.f64 y) x))
(*.f64 (*.f64 y y) x)
(*.f64 (*.f64 x y) y)
(*.f64 x (*.f64 y y))
(*.f64 y (*.f64 x y))
(*.f64 #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y) y))) x)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y) y))))
#s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y) y)))
#s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y) y))
(*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) (neg.f64 y)) (neg.f64 y))
(*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) (fabs.f64 y)) (fabs.f64 y))
(*.f64 (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y) y)
(*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) (*.f64 y y))
(*.f64 (*.f64 y y) (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)))
(*.f64 y (*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (*.f64 y y)) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) #s(literal 1/216 binary64)) (*.f64 y y)) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64))))
(*.f64 (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)) y)
(*.f64 y (-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64)))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) y) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))))
(/.f64 (*.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) #s(literal 1/216 binary64)) y) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64))))
(/.f64 (*.f64 y (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))))
(/.f64 (*.f64 y (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) #s(literal 1/216 binary64))) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 1/36 binary64))) (neg.f64 (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) #s(literal 1/216 binary64))) (neg.f64 (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) #s(literal 1/36 binary64)) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))))
(/.f64 (-.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) #s(literal 1/216 binary64)) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64)))) (/.f64 #s(literal 1/36 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64)))))
(-.f64 (/.f64 (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 3 binary64)) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)))) (/.f64 #s(literal 1/216 binary64) (fma.f64 #s(literal 1/6 binary64) (+.f64 #s(literal 1/6 binary64) (pow.f64 y #s(literal -2 binary64))) (pow.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 2 binary64)))))
(-.f64 (pow.f64 y #s(literal -2 binary64)) #s(literal 1/6 binary64))
(*.f64 (pow.f64 (*.f64 y y) #s(literal -1/2 binary64)) (pow.f64 (*.f64 y y) #s(literal -1/2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (neg.f64 y)) (/.f64 #s(literal 1 binary64) (neg.f64 y)))
(*.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 y)) (/.f64 #s(literal 1 binary64) (fabs.f64 y)))
(*.f64 (pow.f64 (neg.f64 y) #s(literal -1 binary64)) (pow.f64 (neg.f64 y) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fabs.f64 y) #s(literal -1 binary64)) (pow.f64 (fabs.f64 y) #s(literal -1 binary64)))
(*.f64 (pow.f64 y #s(literal -1 binary64)) (pow.f64 y #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 y #s(literal -2 binary64)))
(pow.f64 (*.f64 y y) #s(literal -1 binary64))
(pow.f64 y #s(literal -2 binary64))
(/.f64 (/.f64 #s(literal 1 binary64) (neg.f64 y)) (neg.f64 y))
(/.f64 (/.f64 #s(literal 1 binary64) (fabs.f64 y)) (fabs.f64 y))
(/.f64 (neg.f64 (pow.f64 y #s(literal -1 binary64))) (neg.f64 y))
(/.f64 (pow.f64 y #s(literal -1 binary64)) y)
(/.f64 #s(literal -1 binary64) (*.f64 (neg.f64 y) y))
(/.f64 #s(literal 1 binary64) (pow.f64 (*.f64 y y) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (*.f64 y y))
(neg.f64 (/.f64 #s(literal -1 binary64) (*.f64 y y)))
(neg.f64 (/.f64 #s(literal 1 binary64) (*.f64 (neg.f64 y) y)))
(exp.f64 (*.f64 (log.f64 (*.f64 y y)) #s(literal -1 binary64)))
#s(literal 1 binary64)
#s(literal 1/6 binary64)

eval26.0ms (0.9%)

Memory
-41.1MiB live, 53.2MiB allocated; 8ms collecting garbage
Compiler

Compiled 4 927 to 822 computations (83.3% saved)

prune15.0ms (0.5%)

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

14 alts after pruning (5 fresh and 9 done)

PrunedKeptTotal
New1985203
Fresh000
Picked415
Done088
Total20214216
Accuracy
99.9%
Counts
216 → 14
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.1%
(/.f64 (*.f64 (sin.f64 y) x) y)
34.6%
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
87.9%
(*.f64 (/.f64 x y) (sin.f64 y))
99.8%
(*.f64 x (/.f64 (sin.f64 y) y))
42.5%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.4%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
42.6%
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
23.4%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
33.1%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
43.2%
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 #s(approx (* (- (/ 1 (* y y)) 1/6) y) (/.f64 #s(literal 1 binary64) y)) y))))
43.3%
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
42.6%
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) x) x))
2.9%
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))))
2.9%
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)))
Compiler

Compiled 604 to 271 computations (55.1% saved)

regimes30.0ms (1%)

Memory
-23.1MiB live, 70.2MiB allocated; 9ms collecting garbage
Counts
21 → 1
Calls
Call 1
Inputs
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) x) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 #s(approx (* (- (/ 1 (* y y)) 1/6) y) (/.f64 #s(literal 1 binary64) y)) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x (/.f64 (sin.f64 y) y))
(*.f64 (/.f64 x y) (sin.f64 y))
(/.f64 (*.f64 (sin.f64 y) x) y)
Outputs
(*.f64 x (/.f64 (sin.f64 y) y))
Calls

4 calls:

11.0ms
(/.f64 (sin.f64 y) y)
7.0ms
y
6.0ms
x
6.0ms
(*.f64 x (/.f64 (sin.f64 y) y))
Results
AccuracySegmentsBranch
99.8%1(/.f64 (sin.f64 y) y)
99.8%1(*.f64 x (/.f64 (sin.f64 y) y))
99.8%1x
99.8%1y
Compiler

Compiled 12 to 13 computations (-8.3% saved)

regimes35.0ms (1.2%)

Memory
23.2MiB live, 59.7MiB allocated; 15ms collecting garbage
Counts
18 → 2
Calls
Call 1
Inputs
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) x) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 #s(approx (* (- (/ 1 (* y y)) 1/6) y) (/.f64 #s(literal 1 binary64) y)) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
Outputs
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
Calls

4 calls:

19.0ms
(*.f64 x (/.f64 (sin.f64 y) y))
5.0ms
y
5.0ms
x
5.0ms
(/.f64 (sin.f64 y) y)
Results
AccuracySegmentsBranch
52.8%2(/.f64 (sin.f64 y) y)
52.2%2(*.f64 x (/.f64 (sin.f64 y) y))
45.0%2x
52.9%2y
Compiler

Compiled 12 to 13 computations (-8.3% saved)

regimes25.0ms (0.8%)

Memory
2.7MiB live, 42.5MiB allocated; 17ms collecting garbage
Counts
17 → 2
Calls
Call 1
Inputs
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) x) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 #s(approx (* (- (/ 1 (* y y)) 1/6) y) (/.f64 #s(literal 1 binary64) y)) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
Outputs
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y))))
Calls

2 calls:

19.0ms
(/.f64 (sin.f64 y) y)
5.0ms
y
Results
AccuracySegmentsBranch
52.8%2(/.f64 (sin.f64 y) y)
52.8%2y
Compiler

Compiled 5 to 6 computations (-20% saved)

regimes52.0ms (1.8%)

Memory
-25.7MiB live, 78.4MiB allocated; 40ms collecting garbage
Accuracy

Total -26.5b remaining (-73%)

Threshold costs -26.5b (-73%)

Counts
16 → 1
Calls
Call 1
Inputs
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 x y)) y)))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 x y) y) #s(literal -1/6 binary64))))
#s(approx (/ (* (sin y) x) y) #s(approx (+ (* (* (* y y) x) -1/6) x) (*.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) y) y))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 y y) #s(literal -1/6 binary64)))))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 #s(literal -1/6 binary64) y) x) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 y (*.f64 (*.f64 y x) #s(literal -1/6 binary64)) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y x) y) #s(literal -1/6 binary64) x))
#s(approx (/ (* (sin y) x) y) (fma.f64 (*.f64 (*.f64 y y) x) #s(literal -1/6 binary64) x))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 #s(literal -1/6 binary64) y) y #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (*.f64 y y) #s(literal -1/6 binary64) #s(literal 1 binary64))))
(/.f64 #s(approx (* (sin y) x) (*.f64 x y)) y)
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 #s(approx (* (- (/ 1 (* y y)) 1/6) y) (/.f64 #s(literal 1 binary64) y)) y))))
(*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64))))
(*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 y y)) #s(literal 1/6 binary64)) y) y))))
Outputs
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
Calls

4 calls:

14.0ms
(/.f64 (sin.f64 y) y)
4.0ms
y
4.0ms
x
4.0ms
(*.f64 x (/.f64 (sin.f64 y) y))
Results
AccuracySegmentsBranch
43.3%1x
43.3%1(*.f64 x (/.f64 (sin.f64 y) y))
43.3%1(/.f64 (sin.f64 y) y)
43.3%1y
Compiler

Compiled 12 to 13 computations (-8.3% saved)

bsearch16.0ms (0.5%)

Memory
32.2MiB live, 32.2MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
54.46877114789661
298470.3720900832
Samples
9.0ms128×0valid
Compiler

Compiled 449 to 306 computations (31.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sin: 4.0ms (65.3% of total)
ival-div: 1.0ms (16.3% of total)
ival-mult: 1.0ms (16.3% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch22.0ms (0.7%)

Memory
-25.9MiB live, 21.2MiB allocated; 10ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
21.0ms
0.29275040033792754
17.465274577891087
Samples
16.0ms112×0valid
Compiler

Compiled 359 to 255 computations (29% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sin: 4.0ms (72.6% of total)
ival-div: 1.0ms (18.2% of total)
ival-mult: 1.0ms (18.2% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify39.0ms (1.3%)

Memory
1.1MiB live, 48.4MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
043127
155127
294127
3202127
4376127
5824127
65579127
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 x (/.f64 (sin.f64 y) y))
(if (<=.f64 y #s(literal 260000 binary64)) (*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))) (*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y)))))
(if (<=.f64 y #s(literal 9/2 binary64)) (*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))) (*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y)))))
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))
Outputs
(*.f64 x (/.f64 (sin.f64 y) y))
(if (<=.f64 y #s(literal 260000 binary64)) (*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 y y) #s(literal 1/120 binary64)) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))) (*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y)))))
(if (<=.f64 y #s(literal 9/2 binary64)) (*.f64 x #s(approx (/ (sin y) y) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (*.f64 y y) #s(literal -1/6 binary64)) (*.f64 y y) #s(literal 1 binary64)))) (*.f64 x #s(approx (/ (sin y) y) #s(approx (+ (* (* y y) -1/6) 1) (*.f64 (*.f64 #s(approx (- (/ 1 (* y y)) 1/6) (/.f64 (/.f64 #s(literal 1 binary64) y) y)) y) y)))))
(*.f64 x #s(approx (/ (sin y) y) #s(literal 1 binary64)))

derivations348.0ms (11.8%)

Memory
1.7MiB live, 331.4MiB allocated; 91ms collecting garbage
Stop Event
fuel
Compiler

Compiled 127 to 45 computations (64.6% saved)

preprocess37.0ms (1.3%)

Memory
31.1MiB live, 78.1MiB allocated; 3ms collecting garbage
Remove

(negabs x)

(abs y)

Compiler

Compiled 314 to 140 computations (55.4% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...