Optimisation.CirclePacking:place from circle-packing-0.1.0.4, E

Time bar (total: 3.6s)

start0.0ms (0%)

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

analyze162.0ms (4.6%)

Memory
6.6MiB live, 198.1MiB allocated; 56ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
50%49.9%49.9%0.2%0%0%0%6
50%49.9%49.9%0.2%0%0%0%7
50%49.9%49.9%0.2%0%0%0%8
50%49.9%49.9%0.2%0%0%0%9
50%49.9%49.9%0.2%0%0%0%10
75%74.8%24.9%0.2%0%0%0%11
75%74.8%24.9%0.2%0%0%0%12
Compiler

Compiled 11 to 11 computations (0% saved)

sample1.0s (28.1%)

Memory
-9.2MiB live, 857.9MiB allocated; 297ms collecting garbage
Samples
584.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 172.0ms
ival-div!: 69.0ms (40.1% of total)
ival-mult!: 45.0ms (26.1% of total)
ival-sub!: 37.0ms (21.5% of total)
ival-add!: 20.0ms (11.6% of total)
adjust: 2.0ms (1.2% of total)
Bogosity

preprocess101.0ms (2.8%)

Memory
-15.1MiB live, 28.8MiB allocated; 14ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
069200
1291190
21215190
34611190
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.3%
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
Compiler

Compiled 18 to 18 computations (0% saved)

series152.0ms (4.3%)

Memory
22.7MiB live, 113.7MiB allocated; 14ms collecting garbage
Counts
9 → 43
Calls
Call 1
Inputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
x
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (-.f64 z t))
y
(-.f64 z t)
z
t
a
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)))
#s(approx x x)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))) #s(literal 1 binary64)))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a)))))
#s(approx (* y (- z t)) (*.f64 y (-.f64 z t)))
#s(approx y y)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (-.f64 (+.f64 (/.f64 x y) (/.f64 z a)) (/.f64 t a))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 x y) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) a))))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a)))
#s(approx (/ (* y (- z t)) a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t y)))
#s(approx (* y (- z t)) (fma.f64 #s(literal -1 binary64) (*.f64 t y) (*.f64 y z)))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) t))
#s(approx (- z t) (-.f64 z t))
#s(approx z z)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (+.f64 (/.f64 x z) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
#s(approx (* y (- z t)) (*.f64 y z))
#s(approx (* y (- z t)) (*.f64 z (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t z)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))) z))))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 t y) (*.f64 a z))))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t z) #s(literal 1 binary64)))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (/.f64 (*.f64 y z) a)))
#s(approx (- z t) (+.f64 z (*.f64 #s(literal -1 binary64) t)))
#s(approx t t)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (+.f64 (/.f64 x t) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
#s(approx (* y (- z t)) (*.f64 t (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))))
#s(approx (- z t) (*.f64 t (-.f64 (/.f64 z t) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (/.f64 (*.f64 y z) a)) t) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a t)) (/.f64 y a)))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t))))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t))))))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (fma.f64 a x (*.f64 y (-.f64 z t))) a))
#s(approx a a)
Calls

15 calls:

TimeVariablePoint
2.0ms
y
inf
2.0ms
y
-inf
2.0ms
z
-inf
2.0ms
a
0
2.0ms
z
0

rewrite159.0ms (4.5%)

Memory
11.0MiB live, 110.1MiB allocated; 59ms collecting garbage
Counts
9 → 20
Calls
Call 1
Inputs
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
x
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (-.f64 z t))
y
(-.f64 z t)
z
t
a
Outputs
(+.f64 x (*.f64 y (/.f64 (-.f64 z t) a)))
(+.f64 (*.f64 y (/.f64 (-.f64 z t) a)) x)
(-.f64 x (neg.f64 (*.f64 y (/.f64 (-.f64 z t) a))))
(/.f64 (fma.f64 x a (*.f64 y (-.f64 z t))) a)
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
x
(*.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 a))
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
y
(+.f64 z (neg.f64 t))
(-.f64 z t)
(neg.f64 (-.f64 t z))
z
t
a

eval7.0ms (0.2%)

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

Compiled 960 to 241 computations (74.9% saved)

prune12.0ms (0.3%)

Memory
-36.0MiB live, 9.5MiB allocated; 8ms collecting garbage
Pruning

9 alts after pruning (8 fresh and 1 done)

PrunedKeptTotal
New47855
Fresh000
Picked011
Done000
Total47956
Accuracy
100.0%
Counts
56 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.3%
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
93.1%
(fma.f64 y (/.f64 (-.f64 z t) a) x)
93.3%
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
66.7%
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
79.6%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))))
83.6%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))))
58.5%
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
84.6%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
Compiler

Compiled 277 to 219 computations (20.9% saved)

series213.0ms (6%)

Memory
6.7MiB live, 157.0MiB allocated; 109ms collecting garbage
Counts
30 → 96
Calls
Call 1
Inputs
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
(*.f64 y (-.f64 z t))
y
(-.f64 z t)
z
t
(/.f64 #s(literal 1 binary64) a)
#s(literal 1 binary64)
a
x
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(/.f64 (*.f64 y z) a)
(*.f64 y z)
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
(/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a)
#s(approx (* y (- z t)) (*.f64 y z))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
(*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
(*.f64 a x)
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
(*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))
#s(literal -1 binary64)
(/.f64 (*.f64 t y) (*.f64 a z))
(*.f64 t y)
(*.f64 a z)
(/.f64 y a)
Outputs
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)))
#s(approx x x)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) x))
#s(approx (* a x) (*.f64 a x))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))) #s(literal 1 binary64)))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (+.f64 x (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a)))))
#s(approx (* y (- z t)) (*.f64 y (-.f64 z t)))
#s(approx y y)
#s(approx (/ (* y z) a) (/.f64 (*.f64 y z) a))
#s(approx (* y z) (*.f64 y z))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (+.f64 x (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (* z (+ (* -1 (/ (* t y) (* a z))) (/ y a))) (*.f64 y (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a))))
#s(approx (/ (* t y) (* a z)) (/.f64 (*.f64 t y) (*.f64 a z)))
#s(approx (* t y) (*.f64 t y))
#s(approx (/ y a) (/.f64 y a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (-.f64 (+.f64 (/.f64 x y) (/.f64 z a)) (/.f64 t a))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 y (fma.f64 x (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))) (/.f64 x y))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (/.f64 z (*.f64 a x))) (/.f64 t (*.f64 a x)))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 x y) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) a))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) (*.f64 a x))) (/.f64 #s(literal 1 binary64) y)))))
#s(approx (* z (+ (* -1 (/ (* t y) (* a z))) (/ y a))) (*.f64 #s(literal -1 binary64) (*.f64 y (*.f64 z (-.f64 (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a))))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t y)))
#s(approx (* y (- z t)) (fma.f64 #s(literal -1 binary64) (*.f64 t y) (*.f64 y z)))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) t))
#s(approx (- z t) (-.f64 z t))
#s(approx z z)
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a)))
#s(approx (/ (* y (- z t)) a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) (/.f64 (*.f64 y z) a)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))
#s(approx (/ (* y (- z t)) (* a x)) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)) z))
#s(approx (* a z) (*.f64 a z))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (+.f64 (/.f64 x z) (/.f64 y a)))))
#s(approx (* y (- z t)) (*.f64 z (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t z)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 z (+.f64 (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z))) (+.f64 (/.f64 #s(literal 1 binary64) z) (/.f64 y (*.f64 a x))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z))) (/.f64 y (*.f64 a x)))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))) z))))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t z) #s(literal 1 binary64)))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 t y) (*.f64 a z))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) z))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z)))))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (+.f64 x (/.f64 (*.f64 y z) a)))
#s(approx (- z t) (+.f64 z (*.f64 #s(literal -1 binary64) t)))
#s(approx t t)
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (+.f64 (/.f64 x t) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (* y (- z t)) (*.f64 t (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))))
#s(approx (- z t) (*.f64 t (-.f64 (/.f64 z t) #s(literal 1 binary64))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (+.f64 (/.f64 #s(literal 1 binary64) t) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x)))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x))))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a z)) (/.f64 y (*.f64 a t)))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (/.f64 (*.f64 y z) a)) t) (/.f64 y a)))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t))))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t))))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a t)) (/.f64 y a)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t) (/.f64 y a)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))) t) (/.f64 y (*.f64 a x))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x))) (/.f64 y (*.f64 a x))))))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a t)) (/.f64 y (*.f64 a z))))))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (fma.f64 a x (*.f64 y (-.f64 z t))) a))
#s(approx (/ 1 a) (/.f64 #s(literal 1 binary64) a))
#s(approx a a)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 a (/.f64 (*.f64 y (-.f64 z t)) x)) a))
#s(approx (* z (+ (* -1 (/ (* t y) (* a z))) (/ y a))) (/.f64 (*.f64 z (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z)))) a))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z))) a))
#s(approx (* z (+ (* -1 (/ (* t y) (* a z))) (/ y a))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 z (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 t y) z))) a)))
#s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 t y) z)) a)))
Calls

15 calls:

TimeVariablePoint
10.0ms
z
-inf
10.0ms
a
-inf
7.0ms
y
inf
4.0ms
y
-inf
3.0ms
y
0

rewrite171.0ms (4.8%)

Memory
-11.1MiB live, 171.8MiB allocated; 26ms collecting garbage
Counts
30 → 88
Calls
Call 1
Inputs
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
(*.f64 y (-.f64 z t))
y
(-.f64 z t)
z
t
(/.f64 #s(literal 1 binary64) a)
#s(literal 1 binary64)
a
x
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(/.f64 (*.f64 y z) a)
(*.f64 y z)
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
(/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a)
#s(approx (* y (- z t)) (*.f64 y z))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
(*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
(+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
(*.f64 a x)
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
(*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))
#s(literal -1 binary64)
(/.f64 (*.f64 t y) (*.f64 a z))
(*.f64 t y)
(*.f64 a z)
(/.f64 y a)
Outputs
(+.f64 (*.f64 y (/.f64 (-.f64 z t) a)) x)
(+.f64 x (*.f64 y (/.f64 (-.f64 z t) a)))
(-.f64 (*.f64 y (/.f64 (-.f64 z t) a)) (neg.f64 x))
(-.f64 x (neg.f64 (*.f64 y (/.f64 (-.f64 z t) a))))
(/.f64 (fma.f64 a x (*.f64 y (-.f64 z t))) a)
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 y (*.f64 (-.f64 z t) (/.f64 #s(literal 1 binary64) a)) x)
(fma.f64 (/.f64 #s(literal 1 binary64) a) (*.f64 y (-.f64 z t)) x)
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
y
(+.f64 z (neg.f64 t))
(-.f64 z t)
(neg.f64 (-.f64 t z))
z
t
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) a))
(/.f64 #s(literal 1 binary64) a)
(/.f64 #s(literal -1 binary64) (neg.f64 a))
(pow.f64 a #s(literal -1 binary64))
#s(literal 1 binary64)
(cosh.f64 #s(literal 0 binary64))
(exp.f64 #s(literal 0 binary64))
a
x
#s(approx (+ (* y (/ (- z t) a)) x) (/.f64 (*.f64 y z) a))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a))
(*.f64 y (/.f64 z a))
(/.f64 (*.f64 y z) a)
(/.f64 (neg.f64 (*.f64 y z)) (neg.f64 a))
(*.f64 y z)
(*.f64 z y)
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
(/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a)
#s(approx (* y (- z t)) (*.f64 y z))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
(*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)))
(*.f64 (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)) x)
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))) x))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))))
(fma.f64 #s(literal 1 binary64) x (*.f64 (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))) x))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))))
(+.f64 #s(literal 1 binary64) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))))
(+.f64 (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))))
(/.f64 (fma.f64 #s(literal 1 binary64) (*.f64 a x) (*.f64 y (-.f64 z t))) (*.f64 a x))
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) (*.f64 a x)) #s(literal 1 binary64))
(fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))
(fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))
(*.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) (*.f64 a x)))
(*.f64 (/.f64 y a) (/.f64 (-.f64 z t) x))
(*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
(/.f64 (*.f64 y (/.f64 (-.f64 z t) a)) x)
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 (*.f64 a x)))
(*.f64 a x)
(*.f64 x a)
(+.f64 x #s(approx (* y (/ (- z t) a)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (/.f64 y a)) z)))
#s(approx (* y (/ (- z t) a)) (*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (/.f64 y a)) z))
(*.f64 (+.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (/.f64 y a)) z)
(*.f64 z (+.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (/.f64 y a)))
(+.f64 (*.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) z) (*.f64 (/.f64 y a) z))
(+.f64 (*.f64 z (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z)))) (*.f64 z (/.f64 y a)))
(fma.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) z (*.f64 (/.f64 y a) z))
(fma.f64 z (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (*.f64 z (/.f64 y a)))
(+.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (/.f64 y a))
(+.f64 (/.f64 y a) (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))))
(-.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) (neg.f64 (/.f64 y a)))
(/.f64 (fma.f64 (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))) a y) a)
(fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))
(fma.f64 (/.f64 (*.f64 t y) (*.f64 a z)) #s(literal -1 binary64) (/.f64 y a))
(fma.f64 y (/.f64 #s(literal 1 binary64) a) (neg.f64 (/.f64 (*.f64 t y) (*.f64 a z))))
#s(literal -1 binary64)
(neg.f64 #s(literal 1 binary64))
(*.f64 (/.f64 t a) (/.f64 y z))
(*.f64 (*.f64 t y) (/.f64 #s(literal 1 binary64) (*.f64 a z)))
(*.f64 t (/.f64 y (*.f64 a z)))
(/.f64 (*.f64 t y) (*.f64 a z))
(/.f64 (/.f64 (*.f64 t y) a) z)
(/.f64 (neg.f64 (*.f64 t y)) (neg.f64 (*.f64 a z)))
(*.f64 t y)
(*.f64 y t)
(*.f64 a z)
(*.f64 z a)
(*.f64 y (/.f64 #s(literal 1 binary64) a))
(/.f64 y a)
(/.f64 (neg.f64 y) (neg.f64 a))

eval39.0ms (1.1%)

Memory
20.4MiB live, 57.6MiB allocated; 24ms collecting garbage
Compiler

Compiled 5 149 to 855 computations (83.4% saved)

prune24.0ms (0.7%)

Memory
-3.3MiB live, 39.1MiB allocated; 15ms collecting garbage
Pruning

17 alts after pruning (13 fresh and 4 done)

PrunedKeptTotal
New18511196
Fresh123
Picked235
Done011
Total18817205
Accuracy
100.0%
Counts
205 → 17
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.3%
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
93.1%
(fma.f64 y (/.f64 (-.f64 z t) a) x)
93.3%
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
66.7%
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
85.5%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z #s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z))) a)))))
83.5%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z #s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))))
83.6%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))))
58.5%
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
85.3%
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
29.5%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
81.7%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))))
49.8%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
28.6%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
38.0%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
69.6%
#s(approx (+ x (/ (* y (- z t)) a)) #s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 y (fma.f64 x (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))) (/.f64 x y)))))
Compiler

Compiled 713 to 498 computations (30.2% saved)

series292.0ms (8.2%)

Memory
29.2MiB live, 137.7MiB allocated; 66ms collecting garbage
Counts
29 → 99
Calls
Call 1
Inputs
(fma.f64 y (/.f64 (-.f64 z t) a) x)
y
(/.f64 (-.f64 z t) a)
(-.f64 z t)
z
t
a
x
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a))
(*.f64 y z)
(/.f64 #s(literal 1 binary64) a)
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
(*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)))
(fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))
(/.f64 (-.f64 z t) (*.f64 a x))
(*.f64 a x)
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
(*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))
(fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))
#s(literal -1 binary64)
(/.f64 y a)
(/.f64 (*.f64 y z) (*.f64 a t))
(*.f64 a t)
Outputs
#s(approx (+ (* y (/ (- z t) a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* y (/ (- z t) a)) x) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)))
#s(approx x x)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) x))
#s(approx (/ (- z t) (* a x)) (/.f64 (-.f64 z t) (*.f64 a x)))
#s(approx (* a x) (*.f64 a x))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))) #s(literal 1 binary64)))))
#s(approx (+ (* y (/ (- z t) a)) x) (+.f64 x (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a)))))
#s(approx y y)
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (+.f64 x (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (* (* y z) (/ 1 a)) (/.f64 (*.f64 y z) a))
#s(approx (* y z) (*.f64 y z))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 t (*.f64 y (-.f64 (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 y (-.f64 (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a))))
#s(approx (/ y a) (/.f64 y a))
#s(approx (/ (* y z) (* a t)) (/.f64 (*.f64 y z) (*.f64 a t)))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 y (-.f64 (+.f64 (/.f64 x y) (/.f64 z a)) (/.f64 t a))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 y (fma.f64 x (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))) (/.f64 x y))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (/.f64 z (*.f64 a x))) (/.f64 t (*.f64 a x)))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 x y) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) a))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) (*.f64 a x))) (/.f64 #s(literal 1 binary64) y)))))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 #s(literal -1 binary64) (*.f64 t (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a))))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (+ (* y (/ (- z t) a)) x) (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))))
#s(approx (+ (* y (/ (- z t) a)) x) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a))))
#s(approx (/ (- z t) a) (*.f64 #s(literal -1 binary64) (/.f64 t a)))
#s(approx (/ (- z t) a) (fma.f64 #s(literal -1 binary64) (/.f64 t a) (/.f64 z a)))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) t))
#s(approx (- z t) (-.f64 z t))
#s(approx z z)
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) (/.f64 (*.f64 y z) a)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (/ (- z t) (* a x)) (*.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a x))))
#s(approx (/ (- z t) (* a x)) (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a x)) (/.f64 z (*.f64 a x))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a)))
#s(approx (/ (* y (- z t)) a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 y a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (+.f64 (/.f64 x z) (/.f64 y a)))))
#s(approx (/ (- z t) a) (/.f64 z a))
#s(approx (/ (- z t) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a))))
#s(approx (- z t) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t z)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 z (+.f64 (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z))) (+.f64 (/.f64 #s(literal 1 binary64) z) (/.f64 y (*.f64 a x))))))
#s(approx (/ (- z t) (* a x)) (/.f64 z (*.f64 a x)))
#s(approx (/ (- z t) (* a x)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a (*.f64 x z))) (/.f64 #s(literal 1 binary64) (*.f64 a x)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a z)) (/.f64 y (*.f64 a t)))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))) z))))))
#s(approx (/ (- z t) a) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t z) #s(literal 1 binary64)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) z))))))
#s(approx (/ (- z t) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t (*.f64 a (*.f64 x z))) (/.f64 #s(literal 1 binary64) (*.f64 a x))))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 t y) (*.f64 a z))))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a t)) (/.f64 y (*.f64 a z))))))
#s(approx (+ (* y (/ (- z t) a)) x) (+.f64 x (/.f64 (*.f64 y z) a)))
#s(approx (- z t) (+.f64 z (*.f64 #s(literal -1 binary64) t)))
#s(approx t t)
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)) t))
#s(approx (* a t) (*.f64 a t))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (+.f64 (/.f64 x t) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (/ (- z t) a) (*.f64 t (-.f64 (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a))))
#s(approx (- z t) (*.f64 t (-.f64 (/.f64 z t) #s(literal 1 binary64))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (+.f64 (/.f64 #s(literal 1 binary64) t) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x)))))))
#s(approx (/ (- z t) (* a x)) (*.f64 t (-.f64 (/.f64 z (*.f64 a (*.f64 t x))) (/.f64 #s(literal 1 binary64) (*.f64 a x)))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (/.f64 (*.f64 y z) a)) t) (/.f64 y a)))))
#s(approx (/ (- z t) a) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t) (/.f64 y a)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))) t) (/.f64 y (*.f64 a x))))))
#s(approx (/ (- z t) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a (*.f64 t x))) (/.f64 #s(literal 1 binary64) (*.f64 a x))))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a t)) (/.f64 y a)))))
#s(approx (+ (* y (/ (- z t) a)) x) (/.f64 (fma.f64 a x (*.f64 y (-.f64 z t))) a))
#s(approx (/ (- z t) a) (/.f64 (-.f64 z t) a))
#s(approx a a)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 a (/.f64 (*.f64 y (-.f64 z t)) x)) a))
#s(approx (/ 1 a) (/.f64 #s(literal 1 binary64) a))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (/.f64 (*.f64 t (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))) a))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t)))) a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t))) a)))
Calls

15 calls:

TimeVariablePoint
40.0ms
t
0
27.0ms
y
-inf
10.0ms
z
0
9.0ms
a
-inf
9.0ms
z
-inf

rewrite191.0ms (5.4%)

Memory
-34.8MiB live, 151.7MiB allocated; 62ms collecting garbage
Counts
29 → 95
Calls
Call 1
Inputs
(fma.f64 y (/.f64 (-.f64 z t) a) x)
y
(/.f64 (-.f64 z t) a)
(-.f64 z t)
z
t
a
x
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))
#s(literal 1 binary64)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a))
(*.f64 y z)
(/.f64 #s(literal 1 binary64) a)
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
(*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)))
(fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))
(/.f64 (-.f64 z t) (*.f64 a x))
(*.f64 a x)
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
(*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))
(fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))
#s(literal -1 binary64)
(/.f64 y a)
(/.f64 (*.f64 y z) (*.f64 a t))
(*.f64 a t)
Outputs
(+.f64 (*.f64 (/.f64 (-.f64 z t) a) y) x)
(+.f64 x (*.f64 (/.f64 (-.f64 z t) a) y))
(-.f64 (*.f64 (/.f64 (-.f64 z t) a) y) (neg.f64 x))
(-.f64 x (neg.f64 (*.f64 (/.f64 (-.f64 z t) a) y)))
(/.f64 (fma.f64 a x (*.f64 (-.f64 z t) y)) a)
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(fma.f64 (*.f64 (-.f64 z t) y) (/.f64 #s(literal 1 binary64) a) x)
(fma.f64 (/.f64 (-.f64 z t) a) y x)
y
(*.f64 (-.f64 z t) (/.f64 #s(literal 1 binary64) a))
(-.f64 (/.f64 z a) (/.f64 t a))
(/.f64 (-.f64 z t) a)
(/.f64 (neg.f64 (-.f64 z t)) (neg.f64 a))
(+.f64 z (neg.f64 t))
(-.f64 z t)
(neg.f64 (-.f64 t z))
z
t
a
x
#s(approx (+ x (* y (/ (- z t) a))) (*.f64 x #s(approx (+ 1 (* y (/ (- z t) (* a x)))) #s(literal 1 binary64))))
(*.f64 x #s(approx (+ 1 (* y (/ (- z t) (* a x)))) #s(literal 1 binary64)))
#s(approx (+ 1 (* y (/ (- z t) (* a x)))) #s(literal 1 binary64))
#s(literal 1 binary64)
(cosh.f64 #s(literal 0 binary64))
(exp.f64 #s(literal 0 binary64))
#s(approx (+ x (* y (/ (- z t) a))) (/.f64 (*.f64 y z) a))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a))
(*.f64 (/.f64 #s(literal 1 binary64) a) (*.f64 y z))
(*.f64 y (*.f64 z (/.f64 #s(literal 1 binary64) a)))
(/.f64 (*.f64 y z) a)
(/.f64 (*.f64 (*.f64 y z) #s(literal 1 binary64)) a)
(*.f64 y z)
(*.f64 z y)
(*.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) a))
(/.f64 #s(literal 1 binary64) a)
(/.f64 #s(literal -1 binary64) (neg.f64 a))
(pow.f64 a #s(literal -1 binary64))
#s(approx (+ x (* y (/ (- z t) a))) (*.f64 (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)) x))
(*.f64 (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)) x)
(*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) x) (*.f64 #s(literal 1 binary64) x))
(+.f64 (*.f64 x (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y)) (*.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) x))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y)))
(fma.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) x (*.f64 #s(literal 1 binary64) x))
(fma.f64 x (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) (*.f64 x #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) x (*.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) x))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y)))
(+.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y))
(-.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y) #s(literal -1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y)))
(/.f64 (fma.f64 #s(literal 1 binary64) (*.f64 a x) (*.f64 (-.f64 z t) y)) (*.f64 a x))
(fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))
(fma.f64 (*.f64 (-.f64 z t) y) (/.f64 #s(literal 1 binary64) (*.f64 a x)) #s(literal 1 binary64))
(fma.f64 (/.f64 (-.f64 z t) (*.f64 a x)) y #s(literal 1 binary64))
(fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))
(*.f64 (-.f64 z t) (/.f64 #s(literal 1 binary64) (*.f64 a x)))
(-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))
(/.f64 (-.f64 z t) (*.f64 a x))
(/.f64 (/.f64 (-.f64 z t) a) x)
(/.f64 (neg.f64 (-.f64 z t)) (neg.f64 (*.f64 a x)))
(*.f64 a x)
(*.f64 x a)
(+.f64 x #s(approx (* y (/ (- z t) a)) (*.f64 (fma.f64 y (/.f64 z (*.f64 a t)) (neg.f64 (/.f64 y a))) t)))
#s(approx (* y (/ (- z t) a)) (*.f64 (fma.f64 y (/.f64 z (*.f64 a t)) (neg.f64 (/.f64 y a))) t))
(*.f64 (fma.f64 y (/.f64 z (*.f64 a t)) (neg.f64 (/.f64 y a))) t)
(*.f64 t (fma.f64 y (/.f64 z (*.f64 a t)) (neg.f64 (/.f64 y a))))
(+.f64 (*.f64 (neg.f64 (/.f64 y a)) t) (*.f64 (/.f64 (*.f64 y z) (*.f64 a t)) t))
(+.f64 (*.f64 t (neg.f64 (/.f64 y a))) (*.f64 t (/.f64 (*.f64 y z) (*.f64 a t))))
(fma.f64 (neg.f64 (/.f64 y a)) t (*.f64 (/.f64 (*.f64 y z) (*.f64 a t)) t))
(fma.f64 t (neg.f64 (/.f64 y a)) (*.f64 t (/.f64 (*.f64 y z) (*.f64 a t))))
(+.f64 (neg.f64 (/.f64 y a)) (/.f64 (*.f64 y z) (*.f64 a t)))
(+.f64 (/.f64 (*.f64 y z) (*.f64 a t)) (neg.f64 (/.f64 y a)))
(-.f64 (neg.f64 (/.f64 y a)) (neg.f64 (/.f64 (*.f64 y z) (*.f64 a t))))
(/.f64 (fma.f64 (neg.f64 (/.f64 y a)) (*.f64 a t) (*.f64 y z)) (*.f64 a t))
(fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))
(fma.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) (*.f64 a t)) (neg.f64 (/.f64 y a)))
(fma.f64 y (/.f64 z (*.f64 a t)) (neg.f64 (/.f64 y a)))
(fma.f64 (/.f64 y a) #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a t)))
(fma.f64 (/.f64 y a) (/.f64 z t) (neg.f64 (/.f64 y a)))
#s(literal -1 binary64)
(neg.f64 #s(literal 1 binary64))
(*.f64 y (/.f64 #s(literal 1 binary64) a))
(/.f64 y a)
(/.f64 (neg.f64 y) (neg.f64 a))
(*.f64 (/.f64 y a) (/.f64 z t))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) (*.f64 a t)))
(*.f64 y (/.f64 z (*.f64 a t)))
(/.f64 (*.f64 y z) (*.f64 a t))
(/.f64 (/.f64 (*.f64 y z) a) t)
(/.f64 (neg.f64 (*.f64 y z)) (neg.f64 (*.f64 a t)))
(*.f64 a t)
(*.f64 t a)

eval20.0ms (0.6%)

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

Compiled 5 034 to 852 computations (83.1% saved)

prune13.0ms (0.4%)

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

19 alts after pruning (11 fresh and 8 done)

PrunedKeptTotal
New1906196
Fresh358
Picked145
Done044
Total19419213
Accuracy
100.0%
Counts
213 → 19
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.3%
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
93.1%
(fma.f64 y (/.f64 (-.f64 z t) a) x)
64.7%
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
93.3%
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
66.7%
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
83.5%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z #s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))))
83.6%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (+.f64 (/.f64 (*.f64 y z) (*.f64 a t)) (neg.f64 (/.f64 y a))))))
86.0%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))))
70.3%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 y a))))))
58.5%
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
81.7%
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))))
85.3%
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
63.5%
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y #s(approx (/ (- z t) (* a x)) (/.f64 z (*.f64 a x))) #s(literal 1 binary64))))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
29.5%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
49.8%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
28.6%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
38.0%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
Compiler

Compiled 697 to 495 computations (29% saved)

series258.0ms (7.2%)

Memory
-19.2MiB live, 217.8MiB allocated; 102ms collecting garbage
Counts
30 → 103
Calls
Call 1
Inputs
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))))
x
#s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))))
(*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))
t
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))
(/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)
(fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))
#s(literal -1 binary64)
y
(/.f64 (*.f64 y z) t)
(*.f64 y z)
z
a
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
(*.f64 y (/.f64 z a))
(/.f64 z a)
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (-.f64 z t))
(-.f64 z t)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))
(/.f64 (*.f64 y z) (*.f64 a x))
(*.f64 a x)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)))
#s(approx x x)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a)) x))
#s(approx (/ (* y z) (* a x)) (/.f64 (*.f64 y z) (*.f64 a x)))
#s(approx (* a x) (*.f64 a x))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 x (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))) #s(literal 1 binary64)))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a)))))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 t (*.f64 y (-.f64 (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 y (-.f64 (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a))))
#s(approx (/ (+ (* -1 y) (/ (* y z) t)) a) (/.f64 (*.f64 y (-.f64 (/.f64 z t) #s(literal 1 binary64))) a))
#s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 y (-.f64 (/.f64 z t) #s(literal 1 binary64))))
#s(approx y y)
#s(approx (/ (* y z) t) (/.f64 (*.f64 y z) t))
#s(approx (* y z) (*.f64 y z))
#s(approx (* y (/ z a)) (/.f64 (*.f64 y z) a))
#s(approx (* y (- z t)) (*.f64 y (-.f64 z t)))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (+.f64 x (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (-.f64 (/.f64 z a) (/.f64 t a))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (-.f64 (+.f64 (/.f64 x y) (/.f64 z a)) (/.f64 t a))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 y (fma.f64 x (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))) (/.f64 x y))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) y) (/.f64 z (*.f64 a x))) (/.f64 t (*.f64 a x)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 x y) (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) a))))))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 #s(literal -1 binary64) (*.f64 t (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a))))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 z (*.f64 a t)) (/.f64 #s(literal 1 binary64) a)))))
#s(approx (/ (+ (* -1 y) (/ (* y z) t)) a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t)))) a)))
#s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 #s(literal -1 binary64) (*.f64 y (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 y (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (-.f64 z t) (*.f64 a x))) (/.f64 #s(literal 1 binary64) y)))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a)))
#s(approx (/ (* y (- z t)) a) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 y a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))
#s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 #s(literal -1 binary64) y))
#s(approx (+ (* -1 y) (/ (* y z) t)) (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)))
#s(approx z z)
#s(approx (/ z a) (/.f64 z a))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t y)))
#s(approx (* y (- z t)) (fma.f64 #s(literal -1 binary64) (*.f64 t y) (*.f64 y z)))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) t))
#s(approx (- z t) (-.f64 z t))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) (/.f64 (*.f64 y z) a)))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))
#s(approx (/ (* y (- z t)) (* a x)) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (+.f64 (/.f64 x z) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (*.f64 y z) (*.f64 a t)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a z)) (/.f64 y (*.f64 a t)))))
#s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y z) (/.f64 y t))))
#s(approx (* y (- z t)) (*.f64 z (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 z (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 t z)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 z (+.f64 (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z))) (+.f64 (/.f64 #s(literal 1 binary64) z) (/.f64 y (*.f64 a x))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z))) (/.f64 y (*.f64 a x)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a))) z))))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 t y) (*.f64 a z))))))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a t)) (/.f64 y (*.f64 a z))))))
#s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y t) (/.f64 y z)))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 t y) z)))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 z (-.f64 (/.f64 t z) #s(literal 1 binary64)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y a) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x))))) z))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a x)))) z))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (/.f64 (*.f64 t y) (*.f64 a (*.f64 x z)))))))
#s(approx (+ x (/ (* y (- z t)) a)) (+.f64 x (/.f64 (*.f64 y z) a)))
#s(approx t t)
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (/.f64 (*.f64 y z) a)) t))
#s(approx (+ (* -1 y) (/ (* y z) t)) (/.f64 (fma.f64 #s(literal -1 binary64) (*.f64 t y) (*.f64 y z)) t))
#s(approx (- z t) (+.f64 z (*.f64 #s(literal -1 binary64) t)))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) a) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (+.f64 (/.f64 x t) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t)))))
#s(approx (* y (- z t)) (*.f64 t (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))))
#s(approx (- z t) (*.f64 t (-.f64 (/.f64 z t) #s(literal 1 binary64))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (+.f64 (/.f64 #s(literal 1 binary64) t) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x)))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y (*.f64 a x)) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x))))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 x (/.f64 (*.f64 y z) a)) t) (/.f64 y a)))))
#s(approx (/ (* y (- z t)) a) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a t)) (/.f64 y a)))))
#s(approx (* y (- z t)) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t))))))
#s(approx (- z t) (*.f64 #s(literal -1 binary64) (*.f64 t (+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1 binary64) (/.f64 z t))))))
#s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x)))) t) (/.f64 y a)))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y z) (*.f64 a x))) t) (/.f64 y (*.f64 a x))))))
#s(approx (/ (* y (- z t)) (* a x)) (*.f64 #s(literal -1 binary64) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) (*.f64 a (*.f64 t x))) (/.f64 y (*.f64 a x))))))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (fma.f64 a x (*.f64 y (-.f64 z t))) a))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (/.f64 (*.f64 t (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))) a))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))
#s(approx a a)
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (+.f64 a (/.f64 (*.f64 y (-.f64 z t)) x)) a))
#s(approx (* t (+ (* -1 (/ y a)) (/ (* y z) (* a t)))) (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t)))) a)))
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 y z) t))) a)))
Calls

15 calls:

TimeVariablePoint
39.0ms
a
inf
28.0ms
y
0
12.0ms
y
inf
8.0ms
y
-inf
5.0ms
z
-inf

rewrite158.0ms (4.5%)

Memory
42.6MiB live, 225.5MiB allocated; 54ms collecting garbage
Counts
30 → 71
Calls
Call 1
Inputs
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))))
x
#s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))))
(*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))
t
#s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a))
(/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)
(fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))
#s(literal -1 binary64)
y
(/.f64 (*.f64 y z) t)
(*.f64 y z)
z
a
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
(*.f64 y (/.f64 z a))
(/.f64 z a)
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(*.f64 y (-.f64 z t))
(-.f64 z t)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))
(/.f64 (*.f64 y z) (*.f64 a x))
(*.f64 a x)
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
(*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))))
#s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
Outputs
(+.f64 x #s(approx (* y (/ (- z t) a)) (*.f64 t #s(approx (+ (neg (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) a)))))
x
#s(approx (* y (/ (- z t) a)) (*.f64 t #s(approx (+ (neg (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) a))))
(*.f64 t #s(approx (+ (neg (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) a)))
t
#s(approx (+ (neg (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) a))
(*.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) (/.f64 #s(literal 1 binary64) a))
(+.f64 (neg.f64 (/.f64 y a)) (/.f64 (/.f64 (*.f64 y z) t) a))
(/.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) a)
(/.f64 (neg.f64 (fma.f64 y (/.f64 z t) (neg.f64 y))) (neg.f64 a))
(fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (/.f64 (*.f64 y z) t) a))
(fma.f64 (/.f64 y a) #s(literal -1 binary64) (/.f64 (/.f64 (*.f64 y z) t) a))
(+.f64 (/.f64 (*.f64 y z) t) (neg.f64 y))
(+.f64 (neg.f64 y) (/.f64 (*.f64 y z) t))
(-.f64 (neg.f64 y) (neg.f64 (/.f64 (*.f64 y z) t)))
(/.f64 (fma.f64 (neg.f64 y) t (*.f64 y z)) t)
(fma.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) t) (neg.f64 y))
(fma.f64 y (/.f64 z t) (neg.f64 y))
(fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t))
(fma.f64 y #s(literal -1 binary64) (/.f64 (*.f64 y z) t))
#s(literal -1 binary64)
(neg.f64 #s(literal 1 binary64))
y
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) t))
(*.f64 y (/.f64 z t))
(/.f64 (*.f64 y z) t)
(/.f64 (neg.f64 (*.f64 y z)) (neg.f64 t))
(*.f64 y z)
(*.f64 z y)
z
a
#s(approx (+ (* y (/ (- z t) a)) x) (/.f64 (*.f64 y z) a))
(*.f64 y (/.f64 z a))
(*.f64 (/.f64 z a) y)
(/.f64 (*.f64 y z) a)
(*.f64 z (/.f64 #s(literal 1 binary64) a))
(/.f64 z a)
(/.f64 (neg.f64 z) (neg.f64 a))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
(*.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a))
(*.f64 y (*.f64 (-.f64 z t) (/.f64 #s(literal 1 binary64) a)))
(*.f64 (/.f64 #s(literal 1 binary64) a) (*.f64 y (-.f64 z t)))
(*.f64 y (/.f64 (-.f64 z t) a))
(/.f64 (*.f64 y (-.f64 z t)) a)
(/.f64 (*.f64 (*.f64 y (-.f64 z t)) #s(literal 1 binary64)) a)
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 a))
(*.f64 y (-.f64 z t))
(*.f64 (-.f64 z t) y)
(+.f64 z (neg.f64 t))
(-.f64 z t)
(neg.f64 (-.f64 t z))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
(*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (/.f64 (*.f64 y z) (*.f64 a x))))
#s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (/.f64 (*.f64 y z) (*.f64 a x)))
(*.f64 (/.f64 y a) (/.f64 z x))
(*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) (*.f64 a x)))
(*.f64 y (/.f64 z (*.f64 a x)))
(/.f64 (*.f64 y z) (*.f64 a x))
(/.f64 (/.f64 (*.f64 y z) a) x)
(/.f64 (neg.f64 (*.f64 y z)) (neg.f64 (*.f64 a x)))
(*.f64 a x)
(*.f64 x a)
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))))))
(*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))))
#s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))))
(*.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) (*.f64 a x)))
(*.f64 (/.f64 y a) (/.f64 (-.f64 z t) x))
(*.f64 y (/.f64 (-.f64 z t) (*.f64 a x)))
(/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x))
(/.f64 (*.f64 y (/.f64 (-.f64 z t) a)) x)
(/.f64 (neg.f64 (*.f64 y (-.f64 z t))) (neg.f64 (*.f64 a x)))

eval88.0ms (2.5%)

Memory
-15.1MiB live, 39.1MiB allocated; 13ms collecting garbage
Compiler

Compiled 6 397 to 945 computations (85.2% saved)

prune20.0ms (0.6%)

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

18 alts after pruning (10 fresh and 8 done)

PrunedKeptTotal
New1809189
Fresh516
Picked325
Done268
Total19018208
Accuracy
100.0%
Counts
208 → 18
Alt Table
Click to see full alt table
StatusAccuracyProgram
93.1%
(fma.f64 y (/.f64 (-.f64 z t) a) x)
64.7%
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
93.3%
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
66.7%
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
59.3%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (*.f64 y z) (*.f64 a t))))))
84.5%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 #s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 y (-.f64 (/.f64 z t) #s(literal 1 binary64)))) a)))))
70.3%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 #s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 #s(literal -1 binary64) y)) a)))))
84.5%
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) (/.f64 #s(literal 1 binary64) a))))))
58.5%
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
58.4%
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 (/.f64 #s(literal 1 binary64) a) (*.f64 y (-.f64 z t))))
57.4%
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
49.1%
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))))))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
31.7%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
29.5%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
24.8%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 (/.f64 y a) (/.f64 z x)))))
27.8%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (/.f64 z (*.f64 a x))))))
38.0%
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
Compiler

Compiled 424 to 300 computations (29.2% saved)

regimes367.0ms (10.3%)

Memory
-9.6MiB live, 460.9MiB allocated; 109ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
2 → 3
3 → 3
4 → 1
5 → 3
7 → 5
9 → 5
10 → 2
35 → 3
Calls
Call 1
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
Call 2
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
Call 3
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
Call 4
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
Outputs
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
Call 5
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
Outputs
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
Call 6
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
Outputs
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
Call 7
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
Outputs
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
Call 8
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
(fma.f64 y (/.f64 (-.f64 z t) a) x)
Outputs
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
Call 9
Inputs
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 y (/.f64 z a)))
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y z) a))
(fma.f64 y #s(approx (/ (- z t) a) (/.f64 z a)) x)
#s(approx (+ x (/ (* y (- z t)) a)) (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 y (/.f64 (-.f64 z t) a)))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (/.f64 (*.f64 y (-.f64 z t)) a))
(+.f64 x (/.f64 #s(approx (* y (- z t)) (*.f64 y z)) a))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 (*.f64 y z) (/.f64 #s(literal 1 binary64) a)))
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
#s(approx (+ (* (* y (- z t)) (/ 1 a)) x) (*.f64 (/.f64 #s(literal 1 binary64) a) (*.f64 y (-.f64 z t))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 #s(literal -1 binary64) (/.f64 y a))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 #s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 #s(literal -1 binary64) y)) a)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 y (/.f64 z (*.f64 a x))))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y z) (*.f64 a x)))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (*.f64 (/.f64 y a) (/.f64 z x)))))
(fma.f64 (*.f64 y (-.f64 z t)) (/.f64 #s(literal 1 binary64) a) x)
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y #s(approx (/ (- z t) (* a x)) (/.f64 z (*.f64 a x))) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x #s(approx (+ 1 (/ (* y (- z t)) (* a x))) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x #s(approx (+ 1 (* (/ y a) (/ (- z t) x))) (*.f64 y (/.f64 (-.f64 z t) (*.f64 a x))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (*.f64 y z) (*.f64 a t))))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 y (/.f64 (-.f64 z t) (*.f64 a x)) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))))
#s(approx (+ (* y (/ (- z t) a)) x) (*.f64 x (fma.f64 (/.f64 y a) (/.f64 (-.f64 z t) x) #s(literal 1 binary64))))
#s(approx (+ x (/ (* y (- z t)) a)) (*.f64 x (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 y (-.f64 z t)) (*.f64 a x)))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 #s(approx (+ (* -1 y) (/ (* y z) t)) (*.f64 y (-.f64 (/.f64 z t) #s(literal 1 binary64)))) a)))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (/.f64 (fma.f64 #s(literal -1 binary64) y (/.f64 (*.f64 y z) t)) a)))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z #s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (/.f64 (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) z))) a)))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t #s(approx (+ (* -1 (/ y a)) (/ (* y z) (* a t))) (*.f64 (fma.f64 y (/.f64 z t) (neg.f64 y)) (/.f64 #s(literal 1 binary64) a))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (+.f64 (/.f64 (*.f64 y z) (*.f64 a t)) (neg.f64 (/.f64 y a))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 t (fma.f64 #s(literal -1 binary64) (/.f64 y a) (/.f64 (*.f64 y z) (*.f64 a t))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z #s(approx (+ (* -1 (/ (* t y) (* a z))) (/ y a)) (*.f64 y (fma.f64 #s(literal -1 binary64) (/.f64 t (*.f64 a z)) (/.f64 #s(literal 1 binary64) a)))))))
(+.f64 x #s(approx (/ (* y (- z t)) a) (*.f64 z (fma.f64 #s(literal -1 binary64) (/.f64 (*.f64 t y) (*.f64 a z)) (/.f64 y a)))))
#s(approx (+ x (/ (* y (- z t)) a)) #s(approx (* x (+ 1 (/ (* y (- z t)) (* a x)))) (*.f64 y (fma.f64 x (-.f64 (/.f64 z (*.f64 a x)) (/.f64 t (*.f64 a x))) (/.f64 x y)))))
Outputs
(fma.f64 y (/.f64 (-.f64 z t) a) x)
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
(fma.f64 y (/.f64 (-.f64 z t) a) x)
Calls

57 calls:

40.0ms
y
28.0ms
(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
22.0ms
(/.f64 (*.f64 y (-.f64 z t)) a)
18.0ms
z
18.0ms
x
Results
AccuracySegmentsBranch
38.0%1t
38.0%1y
38.0%1(-.f64 z t)
38.0%1(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
38.0%1a
38.0%1x
38.0%1z
38.0%1(*.f64 y (-.f64 z t))
38.0%1(/.f64 (*.f64 y (-.f64 z t)) a)
52.8%3z
54.6%3(/.f64 (*.f64 y (-.f64 z t)) a)
42.2%3t
52.3%3x
53.6%3(*.f64 y (-.f64 z t))
47.8%3y
56.3%3(/.f64 (*.f64 y (-.f64 z t)) a)
51.0%3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
54.7%3z
49.0%3(-.f64 z t)
51.4%3a
64.7%1(-.f64 z t)
64.7%1z
64.7%1t
64.7%1x
64.7%1y
64.7%1(*.f64 y (-.f64 z t))
64.7%1a
64.7%1(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
64.7%1(/.f64 (*.f64 y (-.f64 z t)) a)
84.9%3(/.f64 (*.f64 y (-.f64 z t)) a)
89.1%5(/.f64 (*.f64 y (-.f64 z t)) a)
83.0%3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
81.2%3y
76.0%3t
82.4%3(*.f64 y (-.f64 z t))
89.7%5(/.f64 (*.f64 y (-.f64 z t)) a)
76.5%3x
74.7%4(-.f64 z t)
82.6%3a
73.2%3z
93.1%1x
93.1%1t
94.9%2z
93.1%1y
96.4%3a
93.1%1(/.f64 (*.f64 y (-.f64 z t)) a)
93.1%1(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
93.1%1(*.f64 y (-.f64 z t))
93.3%1(-.f64 z t)
99.2%3(*.f64 y (-.f64 z t))
99.2%3(/.f64 (*.f64 y (-.f64 z t)) a)
99.2%3(+.f64 x (/.f64 (*.f64 y (-.f64 z t)) a))
95.5%2x
98.7%3y
95.7%2z
95.5%2t
99.0%3a
Compiler

Compiled 1 081 to 543 computations (49.8% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
4.58796223826975e+281
3.315467218909574e+283
0.0ms
-8.955167705671813e+304
-3.7741385588022006e+304
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch21.0ms (0.6%)

Memory
-18.3MiB live, 24.2MiB allocated; 14ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
20.0ms
4.8410962540826716e+169
4.2189893200367134e+170
Samples
16.0ms96×0valid
Compiler

Compiled 138 to 143 computations (-3.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 14.0ms
ival-mult!: 12.0ms (88.4% of total)
ival-div!: 1.0ms (7.4% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-add!: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6751205529772027e+302
+inf
0.0ms
2.3303077643083293e+113
1.965939631432531e+136
0.0ms
-2.1507610527325924e+96
-1.9284180391559694e+65
0.0ms
-inf
-7.600064449384264e+300
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6751205529772027e+302
+inf
0.0ms
2.3303077643083293e+113
1.965939631432531e+136
0.0ms
-2.1507610527325924e+96
-1.9284180391559694e+65
0.0ms
-inf
-7.600064449384264e+300
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch0.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3303077643083293e+113
1.965939631432531e+136
0.0ms
-2.1507610527325924e+96
-1.9284180391559694e+65
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch0.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3303077643083293e+113
1.965939631432531e+136
0.0ms
-7710077232331222.0
-1787029558511546.8
Compiler

Compiled 12 to 17 computations (-41.7% saved)

bsearch0.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.3303077643083293e+113
1.965939631432531e+136
0.0ms
-7710077232331222.0
-1787029558511546.8
Compiler

Compiled 12 to 17 computations (-41.7% saved)

derivations3.0ms (0.1%)

Memory
10.4MiB live, 10.4MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 568 to 73 computations (87.1% saved)

preprocess83.0ms (2.3%)

Memory
0.6MiB live, 105.8MiB allocated; 40ms collecting garbage
Compiler

Compiled 577 to 82 computations (85.8% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...