FastMath dist3

Time bar (total: 9.8s)

start0.0ms (0%)

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

analyze0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 15 to 13 computations (13.3% saved)

sample936.0ms (9.5%)

Memory
28.9MiB live, 625.8MiB allocated; 236ms collecting garbage
Samples
601.0ms8 223×0valid
3.0ms27×1valid
1.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 330.0ms
ival-mult!: 258.0ms (78.1% of total)
ival-add!: 69.0ms (20.9% of total)
adjust: 3.0ms (0.9% of total)
Bogosity

preprocess126.0ms (1.3%)

Memory
0.5MiB live, 44.7MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045138
1167112
266477
3213670
4461470
5641770
6673170
7673170
Stop Event
saturated
Alt Table
Click to see full alt table
StatusAccuracyProgram
98.8%
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Symmetry

(negabs d1)

(sort d2 d3)

Compiler

Compiled 22 to 22 computations (0% saved)

series111.0ms (1.1%)

Memory
-6.7MiB live, 52.0MiB allocated; 31ms collecting garbage
Counts
11 → 33
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(*.f64 d1 d2)
d1
d2
(*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)
(+.f64 d3 #s(literal 5 binary64))
d3
#s(literal 5 binary64)
(*.f64 d1 #s(literal 32 binary64))
#s(literal 32 binary64)
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 d1 (+.f64 #s(literal 5 binary64) (+.f64 d2 d3))))
#s(approx (* d1 d2) (*.f64 d1 d2))
#s(approx d1 d1)
#s(approx (* (+ d3 5) d1) (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)))
#s(approx (* d1 32) (*.f64 #s(literal 32 binary64) d1))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (-.f64 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 5 binary64) d3))) #s(literal 32 binary64)))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 5 binary64) d3))))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))))
#s(approx d2 d2)
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d2 (+.f64 d1 (fma.f64 #s(literal 32 binary64) (/.f64 d1 d2) (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2)))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 d2 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))) d2))))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2))))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3)))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (fma.f64 #s(literal 5 binary64) d1 (*.f64 d1 d2)))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3))))
#s(approx (* (+ d3 5) d1) (*.f64 #s(literal 5 binary64) d1))
#s(approx (* (+ d3 5) d1) (fma.f64 #s(literal 5 binary64) d1 (*.f64 d1 d3)))
#s(approx (+ d3 5) #s(literal 5 binary64))
#s(approx (+ d3 5) (+.f64 #s(literal 5 binary64) d3))
#s(approx d3 d3)
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 5 binary64) (/.f64 d1 d3) (fma.f64 #s(literal 32 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3))))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 5 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3)))))
#s(approx (* (+ d3 5) d1) (*.f64 d3 (+.f64 d1 (*.f64 #s(literal 5 binary64) (/.f64 d1 d3)))))
#s(approx (+ d3 5) (*.f64 d3 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (/.f64 #s(literal 1 binary64) d3)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))) d3))))))
#s(approx (+ (* d1 d2) (* (+ d3 5) d1)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 5 binary64) d1 (*.f64 d1 d2)) d3))))))
#s(approx (* (+ d3 5) d1) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -5 binary64) (/.f64 d1 d3) (*.f64 #s(literal -1 binary64) d1)))))
Calls

9 calls:

TimeVariablePointExpression
2.0ms
d1
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 d2) d1 d2 (* (+ d3 5) d1) (+ d3 5) d3 5 (* d1 32) 32)
2.0ms
d1
@inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 d2) d1 d2 (* (+ d3 5) d1) (+ d3 5) d3 5 (* d1 32) 32)
1.0ms
d1
@0
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 d2) d1 d2 (* (+ d3 5) d1) (+ d3 5) d3 5 (* d1 32) 32)
1.0ms
d2
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 d2) d1 d2 (* (+ d3 5) d1) (+ d3 5) d3 5 (* d1 32) 32)
1.0ms
d3
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 d2) d1 d2 (* (+ d3 5) d1) (+ d3 5) d3 5 (* d1 32) 32)

rewrite3.9s (39.6%)

Memory
-41.4MiB live, 2 444.8MiB allocated; 1.9s collecting garbage
Counts
11 → 172
Calls
Call 1
Inputs
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(*.f64 d1 d2)
d1
d2
(*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)
(+.f64 d3 #s(literal 5 binary64))
d3
#s(literal 5 binary64)
(*.f64 d1 #s(literal 32 binary64))
#s(literal 32 binary64)
Outputs
(*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) (+.f64 d2 #s(literal 32 binary64))) d1)
(*.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) (+.f64 d2 #s(literal 32 binary64))))
(*.f64 (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) #s(literal 32 binary64)) (neg.f64 d1))
(*.f64 (neg.f64 d1) (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) #s(literal 32 binary64)))
(+.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1) (*.f64 d1 #s(literal 32 binary64)))
(+.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(+.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(+.f64 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1) (*.f64 (+.f64 d3 d2) d1))
(+.f64 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 d3 d2) d1) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (*.f64 d3 d1))
(+.f64 (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1) (*.f64 d1 #s(literal 5 binary64)))
(+.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1))
(+.f64 (*.f64 d1 #s(literal 32 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(+.f64 (*.f64 d3 d1) (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d2) d1))
(-.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d1))
(-.f64 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 d2) d3) d1))
(-.f64 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) d1))
(-.f64 (*.f64 (+.f64 d3 d2) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(-.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1) (neg.f64 (*.f64 d1 #s(literal 32 binary64))))
(-.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (neg.f64 (*.f64 d1 d2)))
(-.f64 (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (neg.f64 (*.f64 d3 d1)))
(-.f64 (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1) (neg.f64 (*.f64 d1 #s(literal 5 binary64))))
(-.f64 (*.f64 d1 #s(literal 32 binary64)) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) d1))
(-.f64 (*.f64 d1 d2) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) #s(literal 32 binary64)) d1))
(-.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) d1))
(-.f64 (*.f64 d3 d1) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1 (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) (neg.f64 d1) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) #s(literal 32 binary64)) (neg.f64 d1) (*.f64 d1 d2))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (-.f64 (neg.f64 d2) d3) (neg.f64 d1) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) (neg.f64 d1) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d3 d1))
(fma.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1 (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) (neg.f64 d1) (*.f64 d3 d1))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) (neg.f64 d1) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) (*.f64 d1 d2))
(fma.f64 d1 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) (*.f64 d3 d1))
(fma.f64 d1 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) #s(literal 32 binary64)) (*.f64 d1 d2))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 32 binary64)) d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 d2) d3) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) (*.f64 d3 d1))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 #s(literal 5 binary64) (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1))
(fma.f64 d1 #s(literal 32 binary64) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 5 binary64)) d1 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 d2 d1 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 #s(literal 32 binary64) d1 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (+.f64 d2 #s(literal 32 binary64)) d1 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 #s(literal 5 binary64) d1 (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1))
(fma.f64 d3 d1 (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1 (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (+.f64 d3 #s(literal 32 binary64)) d1 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (+.f64 d2 #s(literal 5 binary64)) d1 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (+.f64 d3 d2) d1 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 d1 d2 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 d1 d3 (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 d1 (+.f64 d3 #s(literal 5 binary64)) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 d1 (+.f64 d2 #s(literal 5 binary64)) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 d1 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 d1 (+.f64 d2 #s(literal 32 binary64)) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 d1 (+.f64 d3 #s(literal 32 binary64)) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 d1 (+.f64 d3 d2) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 5 binary64)) (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 32 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (neg.f64 #s(literal 5 binary64)) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d2 #s(literal 32 binary64)) d3) d1))
(fma.f64 (neg.f64 #s(literal 32 binary64)) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d2) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d2) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 (+.f64 (+.f64 d2 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(neg.f64 (*.f64 (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) #s(literal 32 binary64)) d1))
(*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1)
(*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) (neg.f64 d1))
(*.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2))
(*.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (*.f64 d3 d1))
(+.f64 (*.f64 (+.f64 d3 d2) d1) (*.f64 d1 #s(literal 5 binary64)))
(+.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (+.f64 d3 d2) d1))
(+.f64 (*.f64 d3 d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (neg.f64 (*.f64 d1 d2)))
(-.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (neg.f64 (*.f64 d3 d1)))
(-.f64 (*.f64 (+.f64 d3 d2) d1) (neg.f64 (*.f64 d1 #s(literal 5 binary64))))
(-.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (-.f64 (neg.f64 d2) d3) d1))
(-.f64 (*.f64 d1 d2) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d1))
(-.f64 (*.f64 d3 d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 5 binary64)) d1 (*.f64 d1 d2))
(fma.f64 (+.f64 d2 #s(literal 5 binary64)) d1 (*.f64 d3 d1))
(fma.f64 (+.f64 d3 d2) d1 (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 (+.f64 d3 #s(literal 5 binary64)) (*.f64 d1 d2))
(fma.f64 d1 (+.f64 d3 d2) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 (+.f64 d2 #s(literal 5 binary64)) (*.f64 d3 d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (neg.f64 d1) (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1) (*.f64 d3 d1))
(fma.f64 (-.f64 (neg.f64 d2) d3) (neg.f64 d1) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (*.f64 d1 d2))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (*.f64 d3 d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 d2) d3) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 #s(literal 5 binary64) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 d2 d1 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 #s(literal 5 binary64) d1 (*.f64 (+.f64 d3 d2) d1))
(fma.f64 d3 d1 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 d1 d2 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 d1 d3 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 5 binary64)) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (neg.f64 #s(literal 5 binary64)) (neg.f64 d1) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(neg.f64 (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) d1))
(*.f64 d1 d2)
(*.f64 d2 d1)
(*.f64 (neg.f64 d1) (neg.f64 d2))
(*.f64 (neg.f64 d2) (neg.f64 d1))
(neg.f64 (neg.f64 (*.f64 d1 d2)))
d1
(neg.f64 (neg.f64 d1))
d2
(neg.f64 (neg.f64 d2))
(*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)
(*.f64 d1 (+.f64 d3 #s(literal 5 binary64)))
(*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (neg.f64 d1))
(*.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d3))
(+.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 d3 d1))
(+.f64 (*.f64 d3 d1) (*.f64 d1 #s(literal 5 binary64)))
(-.f64 (*.f64 d1 #s(literal 5 binary64)) (neg.f64 (*.f64 d3 d1)))
(-.f64 (*.f64 d3 d1) (neg.f64 (*.f64 d1 #s(literal 5 binary64))))
(fma.f64 (neg.f64 #s(literal 5 binary64)) (neg.f64 d1) (*.f64 d3 d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 5 binary64)) (*.f64 d3 d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 #s(literal 5 binary64) (*.f64 d3 d1))
(fma.f64 #s(literal 5 binary64) d1 (*.f64 d3 d1))
(fma.f64 d3 d1 (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 d1 d3 (*.f64 d1 #s(literal 5 binary64)))
(neg.f64 (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d1))
(+.f64 d3 #s(literal 5 binary64))
(+.f64 #s(literal 5 binary64) d3)
(-.f64 #s(literal 5 binary64) (neg.f64 d3))
(-.f64 d3 (neg.f64 #s(literal 5 binary64)))
(neg.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3))
d3
(neg.f64 (neg.f64 d3))
#s(literal 5 binary64)
(neg.f64 (neg.f64 #s(literal 5 binary64)))
(*.f64 d1 #s(literal 32 binary64))
(*.f64 #s(literal 32 binary64) d1)
(*.f64 (neg.f64 #s(literal 32 binary64)) (neg.f64 d1))
(*.f64 (neg.f64 d1) (neg.f64 #s(literal 32 binary64)))
(neg.f64 (neg.f64 (*.f64 d1 #s(literal 32 binary64))))
#s(literal 32 binary64)
(neg.f64 (neg.f64 #s(literal 32 binary64)))

eval18.0ms (0.2%)

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

Compiled 1 163 to 496 computations (57.4% saved)

prune7.0ms (0.1%)

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

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New1923195
Fresh000
Picked101
Done000
Total1933196
Accuracy
100.0%
Counts
196 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.2%
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
100.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
37.4%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Compiler

Compiled 38 to 38 computations (0% saved)

series148.0ms (1.5%)

Memory
-34.4MiB live, 66.8MiB allocated; 11ms collecting garbage
Counts
16 → 45
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
(*.f64 d1 d3)
d1
d3
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
(+.f64 #s(literal 37 binary64) (+.f64 d2 d3))
#s(literal 37 binary64)
(+.f64 d2 d3)
d2
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
(+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64))
(+.f64 d3 #s(literal 5 binary64))
#s(literal 5 binary64)
#s(literal 32 binary64)
(*.f64 d1 d2)
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
#s(approx (* d1 d3) (*.f64 d1 d3))
#s(approx d1 d1)
#s(approx (* d1 d2) (*.f64 d1 d2))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (-.f64 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 5 binary64) d3))) #s(literal 32 binary64)))))
#s(approx (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 37 binary64) d3))))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3))))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d3))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
#s(approx (+ d2 d3) d3)
#s(approx (+ d2 d3) (+.f64 d2 d3))
#s(approx d2 d2)
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d2 (+.f64 d1 (fma.f64 #s(literal 32 binary64) (/.f64 d1 d2) (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d2 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 d2 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d2) (/.f64 d3 d2)))))
#s(approx (+ d2 d3) (*.f64 d2 (+.f64 #s(literal 1 binary64) (/.f64 d3 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))) d2))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d3) d2)) #s(literal 1 binary64)))))
#s(approx (+ d2 d3) (*.f64 #s(literal -1 binary64) (*.f64 d2 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 d3 d2)) #s(literal 1 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d3 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))
#s(approx (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (fma.f64 #s(literal 37 binary64) d1 (*.f64 d1 d2)))
#s(approx (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (fma.f64 #s(literal 37 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3))))
#s(approx (+ (+ d3 5) 32) #s(literal 37 binary64))
#s(approx (+ d3 5) #s(literal 5 binary64))
#s(approx (+ d3 5) (+.f64 #s(literal 5 binary64) d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 5 binary64) (/.f64 d1 d3) (fma.f64 #s(literal 32 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d3 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 d3 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d3) (/.f64 d2 d3)))))
#s(approx (+ d2 d3) (*.f64 d3 (+.f64 #s(literal 1 binary64) (/.f64 d2 d3))))
#s(approx (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 37 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3)))))
#s(approx (+ (+ d3 5) 32) (*.f64 d3 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d3)))))
#s(approx (+ d3 5) (*.f64 d3 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 5 binary64) (/.f64 #s(literal 1 binary64) d3)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d2) d3)) #s(literal 1 binary64)))))
#s(approx (+ d2 d3) (*.f64 #s(literal -1 binary64) (*.f64 d3 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 d2 d3)) #s(literal 1 binary64)))))
#s(approx (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 37 binary64) d1 (*.f64 d1 d2)) d3))))))
Calls

9 calls:

TimeVariablePointExpression
6.0ms
d3
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 d3) d1 d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) 37 (+ d2 d3) d2 (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32) (+ d3 5) 5 32 (* d1 d2))
3.0ms
d1
@0
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 d3) d1 d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) 37 (+ d2 d3) d2 (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32) (+ d3 5) 5 32 (* d1 d2))
3.0ms
d1
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 d3) d1 d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) 37 (+ d2 d3) d2 (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32) (+ d3 5) 5 32 (* d1 d2))
2.0ms
d1
@inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 d3) d1 d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) 37 (+ d2 d3) d2 (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32) (+ d3 5) 5 32 (* d1 d2))
1.0ms
d2
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 d3) d1 d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) 37 (+ d2 d3) d2 (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32) (+ d3 5) 5 32 (* d1 d2))

rewrite1.3s (13.1%)

Memory
34.9MiB live, 709.1MiB allocated; 123ms collecting garbage
Counts
16 → 201
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
(*.f64 d1 d3)
d1
d3
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
(+.f64 #s(literal 37 binary64) (+.f64 d2 d3))
#s(literal 37 binary64)
(+.f64 d2 d3)
d2
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
(+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64))
(+.f64 d3 #s(literal 5 binary64))
#s(literal 5 binary64)
#s(literal 32 binary64)
(*.f64 d1 d2)
Outputs
#s(approx (* d1 (+ 32 (+ 5 (+ d3 d2)))) (*.f64 d1 d3))
(*.f64 d1 d3)
(*.f64 d3 d1)
(*.f64 (neg.f64 d1) (neg.f64 d3))
(*.f64 (neg.f64 d3) (neg.f64 d1))
(neg.f64 (neg.f64 (*.f64 d1 d3)))
d1
(neg.f64 (neg.f64 d1))
d3
(neg.f64 (neg.f64 d3))
#s(approx (* d1 (+ 32 (+ 5 (+ d3 d2)))) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
(*.f64 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)) d1)
(*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d3) (neg.f64 d1))
(*.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d3))
(+.f64 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 d1 #s(literal 37 binary64)))
(+.f64 (*.f64 d1 #s(literal 37 binary64)) (*.f64 (+.f64 d2 d3) d1))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(+.f64 (*.f64 d1 d3) (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1) (neg.f64 (*.f64 d1 d2)))
(-.f64 (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1) (neg.f64 (*.f64 d1 d3)))
(-.f64 (*.f64 (+.f64 d2 d3) d1) (neg.f64 (*.f64 d1 #s(literal 37 binary64))))
(-.f64 (*.f64 d1 #s(literal 37 binary64)) (*.f64 (-.f64 (neg.f64 d2) d3) d1))
(-.f64 (*.f64 d1 d2) (*.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) d1))
(-.f64 (*.f64 d1 d3) (*.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2))
(fma.f64 (+.f64 d2 #s(literal 37 binary64)) d1 (*.f64 d1 d3))
(fma.f64 (+.f64 d2 d3) d1 (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 d1 (+.f64 d3 #s(literal 37 binary64)) (*.f64 d1 d2))
(fma.f64 d1 (+.f64 d2 #s(literal 37 binary64)) (*.f64 d1 d3))
(fma.f64 d1 (+.f64 d2 d3) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (-.f64 (neg.f64 d2) d3) (neg.f64 d1) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) (neg.f64 d1) (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) (neg.f64 d1) (*.f64 d1 d3))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 d2) d3) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 37 binary64)) d2) (*.f64 d1 d3))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 37 binary64)) d3) (*.f64 d1 d2))
(fma.f64 d1 #s(literal 37 binary64) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 d2 d1 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 d3 d1 (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1))
(fma.f64 #s(literal 37 binary64) d1 (*.f64 (+.f64 d2 d3) d1))
(fma.f64 d1 d2 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 d1 d3 (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 37 binary64)) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 #s(literal 37 binary64)) (neg.f64 d1) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d2) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 (+.f64 d2 #s(literal 37 binary64)) d1))
(neg.f64 (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d3) d1))
(+.f64 #s(literal 37 binary64) (+.f64 d2 d3))
(+.f64 (+.f64 d3 #s(literal 37 binary64)) d2)
(+.f64 (+.f64 d2 #s(literal 37 binary64)) d3)
(+.f64 (+.f64 d2 d3) #s(literal 37 binary64))
(+.f64 d2 (+.f64 d3 #s(literal 37 binary64)))
(+.f64 d3 (+.f64 d2 #s(literal 37 binary64)))
(-.f64 (+.f64 d3 #s(literal 37 binary64)) (neg.f64 d2))
(-.f64 (+.f64 d2 #s(literal 37 binary64)) (neg.f64 d3))
(-.f64 (+.f64 d2 d3) (neg.f64 #s(literal 37 binary64)))
(-.f64 #s(literal 37 binary64) (-.f64 (neg.f64 d2) d3))
(-.f64 d2 (-.f64 (neg.f64 #s(literal 37 binary64)) d3))
(-.f64 d3 (-.f64 (neg.f64 #s(literal 37 binary64)) d2))
(neg.f64 (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d3))
#s(literal 37 binary64)
(neg.f64 (neg.f64 #s(literal 37 binary64)))
(+.f64 d2 d3)
(+.f64 d3 d2)
(-.f64 d2 (neg.f64 d3))
(-.f64 d3 (neg.f64 d2))
(neg.f64 (-.f64 (neg.f64 d2) d3))
d2
(neg.f64 (neg.f64 d2))
(*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) (+.f64 d2 #s(literal 32 binary64))) d1)
(*.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) (+.f64 d2 #s(literal 32 binary64))))
(*.f64 (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) d2) (neg.f64 d1))
(*.f64 (neg.f64 d1) (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) d2))
(+.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(+.f64 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1) (*.f64 (+.f64 d2 d3) d1))
(+.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(+.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(+.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1) (*.f64 d1 #s(literal 32 binary64)))
(+.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1) (*.f64 d1 #s(literal 5 binary64)))
(+.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1))
(+.f64 (*.f64 d1 #s(literal 32 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(+.f64 (*.f64 d1 d3) (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1))
(+.f64 (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(+.f64 (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) (neg.f64 d1)) (*.f64 d1 #s(literal 5 binary64)))
(+.f64 (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) (neg.f64 d1)) (*.f64 d1 d3))
(+.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)))
(-.f64 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d2) d1))
(-.f64 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 d2) d3) d1))
(-.f64 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 d1 (-.f64 (neg.f64 #s(literal 5 binary64)) d2)))
(-.f64 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d1))
(-.f64 (*.f64 (+.f64 d2 d3) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(-.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1) (neg.f64 (*.f64 d1 #s(literal 32 binary64))))
(-.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1) (neg.f64 (*.f64 d1 d2)))
(-.f64 (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1) (neg.f64 (*.f64 d1 d3)))
(-.f64 (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1) (neg.f64 (*.f64 d1 #s(literal 5 binary64))))
(-.f64 (*.f64 d1 d2) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) d1))
(-.f64 (*.f64 d1 #s(literal 32 binary64)) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) d1))
(-.f64 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) d1))
(-.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) d1))
(-.f64 (*.f64 d1 d3) (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) d1))
(-.f64 (*.f64 d1 d3) (*.f64 d1 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2)))
(-.f64 (*.f64 d1 #s(literal 5 binary64)) (*.f64 d1 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2)))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) (neg.f64 d1) (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (neg.f64 d1) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (-.f64 (neg.f64 d2) d3) (neg.f64 d1) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1 (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) (neg.f64 d1) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1 (*.f64 d1 d3))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1 (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) (neg.f64 d1) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) (neg.f64 d1) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) (neg.f64 d1) (*.f64 d1 d3))
(fma.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 d1 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) (*.f64 d1 d2))
(fma.f64 d1 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) (*.f64 d1 d3))
(fma.f64 d1 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 d2) d3) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d3) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 32 binary64)) d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3) d2) (*.f64 d1 #s(literal 32 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) (*.f64 d1 d2))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) d2) (*.f64 d1 #s(literal 5 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d2) (*.f64 d1 d3))
(fma.f64 d1 #s(literal 5 binary64) (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1))
(fma.f64 d1 #s(literal 32 binary64) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 #s(literal 32 binary64) d1 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 5 binary64)) d1 (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 d2 d1 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (+.f64 d2 d3) d1 (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (+.f64 d2 #s(literal 32 binary64)) d1 (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 d3 d1 (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1))
(fma.f64 #s(literal 5 binary64) d1 (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 32 binary64)) d1 (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 (+.f64 d2 #s(literal 5 binary64)) d1 (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1 (*.f64 (+.f64 d2 d3) d1))
(fma.f64 d1 d2 (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 d1 d3 (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1))
(fma.f64 d1 (+.f64 d3 #s(literal 5 binary64)) (*.f64 (+.f64 d2 #s(literal 32 binary64)) d1))
(fma.f64 d1 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) (*.f64 (+.f64 d2 d3) d1))
(fma.f64 d1 (+.f64 d2 #s(literal 5 binary64)) (*.f64 (+.f64 d3 #s(literal 32 binary64)) d1))
(fma.f64 d1 (+.f64 d3 #s(literal 32 binary64)) (*.f64 (+.f64 d2 #s(literal 5 binary64)) d1))
(fma.f64 d1 (+.f64 d2 #s(literal 32 binary64)) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1))
(fma.f64 d1 (+.f64 d2 d3) (*.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 5 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 32 binary64)) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (neg.f64 #s(literal 32 binary64)) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) d2) d1))
(fma.f64 (neg.f64 #s(literal 5 binary64)) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d3 #s(literal 32 binary64)) d2) d1))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1))
(fma.f64 (neg.f64 d2) (neg.f64 d1) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d2) (*.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 (+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d2) d1))
(fma.f64 (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (neg.f64 d1) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 32 binary64)) d3) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)))
(fma.f64 (+.f64 d3 #s(literal 32 binary64)) d1 (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)))
(fma.f64 d1 (+.f64 d3 #s(literal 32 binary64)) (*.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d2) (neg.f64 d1)))
(neg.f64 (*.f64 (-.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3) d2) d1))
(+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64))
(+.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) d3)
(+.f64 (+.f64 d3 #s(literal 32 binary64)) #s(literal 5 binary64))
(+.f64 #s(literal 5 binary64) (+.f64 d3 #s(literal 32 binary64)))
(+.f64 #s(literal 32 binary64) (+.f64 d3 #s(literal 5 binary64)))
(+.f64 d3 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)))
(-.f64 (+.f64 d3 #s(literal 5 binary64)) (neg.f64 #s(literal 32 binary64)))
(-.f64 (+.f64 #s(literal 32 binary64) #s(literal 5 binary64)) (neg.f64 d3))
(-.f64 (+.f64 d3 #s(literal 32 binary64)) (neg.f64 #s(literal 5 binary64)))
(-.f64 #s(literal 5 binary64) (-.f64 (neg.f64 #s(literal 32 binary64)) d3))
(-.f64 #s(literal 32 binary64) (-.f64 (neg.f64 #s(literal 5 binary64)) d3))
(-.f64 d3 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)))
(neg.f64 (-.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) #s(literal 32 binary64)) d3))
(+.f64 d3 #s(literal 5 binary64))
(+.f64 #s(literal 5 binary64) d3)
(-.f64 #s(literal 5 binary64) (neg.f64 d3))
(-.f64 d3 (neg.f64 #s(literal 5 binary64)))
(neg.f64 (-.f64 (neg.f64 #s(literal 5 binary64)) d3))
#s(literal 5 binary64)
(neg.f64 (neg.f64 #s(literal 5 binary64)))
#s(literal 32 binary64)
(neg.f64 (neg.f64 #s(literal 32 binary64)))
(*.f64 d1 d2)
(*.f64 d2 d1)
(*.f64 (neg.f64 d1) (neg.f64 d2))
(*.f64 (neg.f64 d2) (neg.f64 d1))
(neg.f64 (neg.f64 (*.f64 d1 d2)))

eval29.0ms (0.3%)

Memory
-7.7MiB live, 42.8MiB allocated; 7ms collecting garbage
Compiler

Compiled 1 401 to 638 computations (54.5% saved)

prune10.0ms (0.1%)

Memory
-33.8MiB live, 13.7MiB allocated; 1ms collecting garbage
Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2354239
Fresh000
Picked123
Done000
Total2366242
Accuracy
100.0%
Counts
242 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
68.5%
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
99.2%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
100.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
62.1%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
68.5%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
37.4%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Compiler

Compiled 92 to 92 computations (0% saved)

series141.0ms (1.4%)

Memory
42.0MiB live, 132.1MiB allocated; 8ms collecting garbage
Counts
18 → 43
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
(*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2)))
d1
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))
(+.f64 #s(literal 37 binary64) d2)
#s(literal 37 binary64)
d2
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3)))
(+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))
#s(approx (+ d2 d3) d3)
d3
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
(fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2))
(+.f64 d3 #s(literal 37 binary64))
(*.f64 d1 d2)
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
#s(approx (+ (+ d3 5) 32) #s(literal 37 binary64))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
#s(approx d1 d1)
#s(approx (* d1 d2) (*.f64 d1 d2))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (-.f64 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 5 binary64) d3))) #s(literal 32 binary64)))))
#s(approx (+ (* (+ d3 37) d1) (* d1 d2)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 37 binary64) d3))))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3))))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d3))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
#s(approx (+ 37 d2) #s(literal 37 binary64))
#s(approx (+ 37 d2) (+.f64 #s(literal 37 binary64) d2))
#s(approx d2 d2)
#s(approx (+ d2 d3) d3)
#s(approx (+ d2 d3) (+.f64 d2 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d2 (+.f64 d1 (fma.f64 #s(literal 32 binary64) (/.f64 d1 d2) (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d2 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 d2 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d2) (/.f64 d3 d2)))))
#s(approx (+ 37 d2) (*.f64 d2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d2)))))
#s(approx (+ d2 d3) (*.f64 d2 (+.f64 #s(literal 1 binary64) (/.f64 d3 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))) d2))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d3) d2)) #s(literal 1 binary64)))))
#s(approx (+ d2 d3) (*.f64 #s(literal -1 binary64) (*.f64 d2 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 d3 d2)) #s(literal 1 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d3 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (* (+ d3 37) d1) (* d1 d2)) (fma.f64 #s(literal 37 binary64) d1 (*.f64 d1 d2)))
#s(approx (+ (* (+ d3 37) d1) (* d1 d2)) (fma.f64 #s(literal 37 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 5 binary64) (/.f64 d1 d3) (fma.f64 #s(literal 32 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d3 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 d3 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d3) (/.f64 d2 d3)))))
#s(approx (+ d2 d3) (*.f64 d3 (+.f64 #s(literal 1 binary64) (/.f64 d2 d3))))
#s(approx (+ (* (+ d3 37) d1) (* d1 d2)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 37 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3)))))
#s(approx (+ d3 37) (*.f64 d3 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d3)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d2) d3)) #s(literal 1 binary64)))))
#s(approx (+ d2 d3) (*.f64 #s(literal -1 binary64) (*.f64 d3 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 d2 d3)) #s(literal 1 binary64)))))
#s(approx (+ (* (+ d3 37) d1) (* d1 d2)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 37 binary64) d1 (*.f64 d1 d2)) d3))))))
Calls

9 calls:

TimeVariablePointExpression
2.0ms
d1
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37 d2 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) (+ d2 d3) d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* (+ d3 37) d1) (* d1 d2)) (+ d3 37) (* d1 d2) (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32))
1.0ms
d1
@inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37 d2 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) (+ d2 d3) d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* (+ d3 37) d1) (* d1 d2)) (+ d3 37) (* d1 d2) (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32))
1.0ms
d2
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37 d2 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) (+ d2 d3) d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* (+ d3 37) d1) (* d1 d2)) (+ d3 37) (* d1 d2) (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32))
1.0ms
d1
@0
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37 d2 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) (+ d2 d3) d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* (+ d3 37) d1) (* d1 d2)) (+ d3 37) (* d1 d2) (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32))
1.0ms
d3
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37 d2 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) (+ 37 (+ d2 d3)) (+ d2 d3) d3 (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (+ (* (+ d3 37) d1) (* d1 d2)) (+ d3 37) (* d1 d2) (+ (* (+ (+ d3 5) 32) d1) (* d1 d2)) (+ (+ d3 5) 32))

rewrite1.4s (13.9%)

Memory
2.8MiB live, 708.1MiB allocated; 182ms collecting garbage
Counts
18 → 74
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
(*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2)))
d1
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))
(+.f64 #s(literal 37 binary64) d2)
#s(literal 37 binary64)
d2
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3)))
(+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))
#s(approx (+ d2 d3) d3)
d3
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
(fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2))
(+.f64 d3 #s(literal 37 binary64))
(*.f64 d1 d2)
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
#s(approx (+ (+ d3 5) 32) #s(literal 37 binary64))
Outputs
#s(approx (* d1 (+ d2 (+ 5 (+ 32 d3)))) (*.f64 d1 #s(approx (+ (+ 37 d2) d3) (+.f64 #s(literal 37 binary64) d2))))
(*.f64 d1 #s(approx (+ (+ 37 d2) d3) (+.f64 #s(literal 37 binary64) d2)))
d1
(neg.f64 (neg.f64 d1))
#s(approx (+ (+ 37 d2) d3) (+.f64 #s(literal 37 binary64) d2))
(+.f64 #s(literal 37 binary64) d2)
(+.f64 d2 #s(literal 37 binary64))
(-.f64 #s(literal 37 binary64) (neg.f64 d2))
(-.f64 d2 (neg.f64 #s(literal 37 binary64)))
(neg.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2))
#s(literal 37 binary64)
(neg.f64 (neg.f64 #s(literal 37 binary64)))
d2
(neg.f64 (neg.f64 d2))
#s(approx (* d1 (+ d2 (+ 5 (+ 32 d3)))) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
(*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3)))
(+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))
#s(approx (+ d2 d3) d3)
d3
(neg.f64 (neg.f64 d3))
#s(approx (* d1 (+ d2 (+ 5 (+ 32 d3)))) (*.f64 (+.f64 (+.f64 #s(literal 37 binary64) d2) d3) d1))
(*.f64 (+.f64 (+.f64 #s(literal 37 binary64) d2) d3) d1)
(*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) d2) (neg.f64 d1))
(*.f64 d1 (+.f64 (+.f64 #s(literal 37 binary64) d2) d3))
(*.f64 (neg.f64 d1) (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) d2))
(+.f64 (*.f64 (+.f64 #s(literal 37 binary64) d2) d1) (*.f64 d3 d1))
(+.f64 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1) (*.f64 d1 d2))
(+.f64 (*.f64 (+.f64 d3 d2) d1) (*.f64 d1 #s(literal 37 binary64)))
(+.f64 (*.f64 d1 #s(literal 37 binary64)) (*.f64 (+.f64 d3 d2) d1))
(+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(+.f64 (*.f64 d3 d1) (*.f64 (+.f64 #s(literal 37 binary64) d2) d1))
(-.f64 (*.f64 (+.f64 #s(literal 37 binary64) d2) d1) (neg.f64 (*.f64 d3 d1)))
(-.f64 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1) (neg.f64 (*.f64 d1 d2)))
(-.f64 (*.f64 (+.f64 d3 d2) d1) (neg.f64 (*.f64 d1 #s(literal 37 binary64))))
(-.f64 (*.f64 d1 #s(literal 37 binary64)) (*.f64 (-.f64 (neg.f64 d2) d3) d1))
(-.f64 (*.f64 d1 d2) (*.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) d1))
(-.f64 (*.f64 d3 d1) (*.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) d1))
(fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2))
(fma.f64 (+.f64 #s(literal 37 binary64) d2) d1 (*.f64 d3 d1))
(fma.f64 (+.f64 d3 d2) d1 (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 d1 (+.f64 #s(literal 37 binary64) d2) (*.f64 d3 d1))
(fma.f64 d1 (+.f64 d3 #s(literal 37 binary64)) (*.f64 d1 d2))
(fma.f64 d1 (+.f64 d3 d2) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) (neg.f64 d1) (*.f64 d1 d2))
(fma.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d2) (neg.f64 d1) (*.f64 d3 d1))
(fma.f64 (-.f64 (neg.f64 d2) d3) (neg.f64 d1) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 37 binary64)) d3) (*.f64 d1 d2))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 d2) d3) (*.f64 d1 #s(literal 37 binary64)))
(fma.f64 (neg.f64 d1) (-.f64 (neg.f64 #s(literal 37 binary64)) d2) (*.f64 d3 d1))
(fma.f64 d1 #s(literal 37 binary64) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 d2 d1 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 #s(literal 37 binary64) d1 (*.f64 (+.f64 d3 d2) d1))
(fma.f64 d3 d1 (*.f64 (+.f64 #s(literal 37 binary64) d2) d1))
(fma.f64 d1 d2 (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 d1 d3 (*.f64 (+.f64 #s(literal 37 binary64) d2) d1))
(fma.f64 (neg.f64 d1) (neg.f64 #s(literal 37 binary64)) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (neg.f64 d2) (neg.f64 d1) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 #s(literal 37 binary64)) (neg.f64 d1) (*.f64 (+.f64 d3 d2) d1))
(fma.f64 (neg.f64 d3) (neg.f64 d1) (*.f64 (+.f64 #s(literal 37 binary64) d2) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d2) (*.f64 (+.f64 d3 #s(literal 37 binary64)) d1))
(fma.f64 (neg.f64 d1) (neg.f64 d3) (*.f64 (+.f64 #s(literal 37 binary64) d2) d1))
(neg.f64 (*.f64 (-.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3) d2) d1))
(+.f64 d3 #s(literal 37 binary64))
(+.f64 #s(literal 37 binary64) d3)
(-.f64 #s(literal 37 binary64) (neg.f64 d3))
(-.f64 d3 (neg.f64 #s(literal 37 binary64)))
(neg.f64 (-.f64 (neg.f64 #s(literal 37 binary64)) d3))
(*.f64 d1 d2)
(*.f64 d2 d1)
(*.f64 (neg.f64 d1) (neg.f64 d2))
(*.f64 (neg.f64 d2) (neg.f64 d1))
(neg.f64 (neg.f64 (*.f64 d1 d2)))
(fma.f64 #s(approx (+ 5 (+ 32 d3)) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
#s(approx (+ 5 (+ 32 d3)) #s(literal 37 binary64))

eval14.0ms (0.1%)

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

Compiled 823 to 450 computations (45.3% saved)

prune6.0ms (0.1%)

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

7 alts after pruning (1 fresh and 6 done)

PrunedKeptTotal
New1211122
Fresh000
Picked044
Done022
Total1217128
Accuracy
100.0%
Counts
128 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
68.5%
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
99.2%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
100.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
62.1%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
68.5%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
28.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
37.4%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Compiler

Compiled 112 to 112 computations (0% saved)

series144.0ms (1.5%)

Memory
-18.1MiB live, 78.7MiB allocated; 13ms collecting garbage
Counts
6 → 32
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
(*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64))))
d1
#s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))
#s(approx (+ 37 d2) #s(literal 37 binary64))
#s(literal 37 binary64)
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
#s(approx d1 d1)
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d1 (-.f64 (fma.f64 #s(literal -1 binary64) d2 (*.f64 #s(literal -1 binary64) (+.f64 #s(literal 5 binary64) d3))) #s(literal 32 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d2 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3))))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d3))
#s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) (+.f64 d2 d3)))
#s(approx (+ 37 d2) #s(literal 37 binary64))
#s(approx (+ 37 d2) (+.f64 #s(literal 37 binary64) d2))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d2))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d2 (+.f64 d1 (fma.f64 #s(literal 32 binary64) (/.f64 d1 d2) (/.f64 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3)) d2)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d2 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))
#s(approx (+ 37 (+ d2 d3)) d2)
#s(approx (+ 37 (+ d2 d3)) (*.f64 d2 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d2) (/.f64 d3 d2)))))
#s(approx (+ 37 d2) (*.f64 d2 (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d2)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 (+.f64 #s(literal 5 binary64) d3))) d2))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d2 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d3)) d2))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d2 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d3) d2)) #s(literal 1 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (fma.f64 d1 d2 (*.f64 d1 d3)))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)))
#s(approx (* d1 (+ 37 (+ d2 d3))) (fma.f64 d1 d3 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d3 (+.f64 d1 (fma.f64 #s(literal 5 binary64) (/.f64 d1 d3) (fma.f64 #s(literal 32 binary64) (/.f64 d1 d3) (/.f64 (*.f64 d1 d2) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 d3 (+.f64 d1 (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))
#s(approx (+ 37 (+ d2 d3)) d3)
#s(approx (+ 37 (+ d2 d3)) (*.f64 d3 (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal 37 binary64) (/.f64 #s(literal 1 binary64) d3) (/.f64 d2 d3)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (fma.f64 #s(literal 5 binary64) d1 (fma.f64 #s(literal 32 binary64) d1 (*.f64 d1 d2))) d3))))))
#s(approx (* d1 (+ 37 (+ d2 d3))) (*.f64 #s(literal -1 binary64) (*.f64 d3 (fma.f64 #s(literal -1 binary64) d1 (*.f64 #s(literal -1 binary64) (/.f64 (*.f64 d1 (+.f64 #s(literal 37 binary64) d2)) d3))))))
#s(approx (+ 37 (+ d2 d3)) (*.f64 #s(literal -1 binary64) (*.f64 d3 (-.f64 (*.f64 #s(literal -1 binary64) (/.f64 (+.f64 #s(literal 37 binary64) d2) d3)) #s(literal 1 binary64)))))
Calls

9 calls:

TimeVariablePointExpression
4.0ms
d1
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37)
1.0ms
d1
@inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37)
1.0ms
d1
@0
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37)
1.0ms
d2
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37)
1.0ms
d3
@-inf
((+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (* d1 (+ 37 (+ d2 d3))) d1 (+ 37 (+ d2 d3)) (+ 37 d2) 37)

rewrite1.2s (12.4%)

Memory
51.3MiB live, 839.9MiB allocated; 235ms collecting garbage
Counts
6 → 8
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
(*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64))))
d1
#s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))
#s(approx (+ 37 d2) #s(literal 37 binary64))
#s(literal 37 binary64)
Outputs
#s(approx (* d1 (+ 5 (+ (+ 32 d2) d3))) (*.f64 d1 #s(approx (+ (+ d2 d3) 37) #s(approx (+ d2 37) #s(literal 37 binary64)))))
(*.f64 d1 #s(approx (+ (+ d2 d3) 37) #s(approx (+ d2 37) #s(literal 37 binary64))))
d1
(neg.f64 (neg.f64 d1))
#s(approx (+ (+ d2 d3) 37) #s(approx (+ d2 37) #s(literal 37 binary64)))
#s(approx (+ d2 37) #s(literal 37 binary64))
#s(literal 37 binary64)
(neg.f64 (neg.f64 #s(literal 37 binary64)))

eval16.0ms (0.2%)

Memory
-40.9MiB live, 3.6MiB allocated; 15ms collecting garbage
Compiler

Compiled 341 to 191 computations (44% saved)

prune4.0ms (0%)

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

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New34135
Fresh000
Picked011
Done066
Total34842
Accuracy
100.0%
Counts
42 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
68.5%
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
99.2%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
100.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
62.1%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
68.5%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
28.0%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
42.7%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
37.4%
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Compiler

Compiled 195 to 182 computations (6.7% saved)

regimes38.0ms (0.4%)

Memory
28.0MiB live, 28.0MiB allocated; 0ms collecting garbage
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (fma.f64 (+.f64 d3 #s(literal 37 binary64)) d1 (*.f64 d1 d2)))
(fma.f64 (+.f64 (+.f64 d3 #s(literal 5 binary64)) #s(literal 32 binary64)) d1 (*.f64 d1 d2))
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) (+.f64 d2 d3))))
Calls

5 calls:

22.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
4.0ms
(+.f64 d3 #s(literal 5 binary64))
3.0ms
d1
3.0ms
d3
3.0ms
d2
Results
AccuracySegmentsBranch
100.0%1(+.f64 d3 #s(literal 5 binary64))
100.0%1(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
100.0%1d1
100.0%1d2
100.0%1d3
Compiler

Compiled 17 to 25 computations (-47.1% saved)

regimes21.0ms (0.2%)

Memory
-28.2MiB live, 18.0MiB allocated; 6ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
(fma.f64 #s(approx (+ (+ d3 5) 32) #s(literal 37 binary64)) d1 (*.f64 d1 d2))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 (+.f64 #s(literal 37 binary64) #s(approx (+ d2 d3) d3))))
Calls

5 calls:

4.0ms
d2
4.0ms
d3
3.0ms
d1
2.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
2.0ms
(+.f64 d3 #s(literal 5 binary64))
Results
AccuracySegmentsBranch
94.8%2(+.f64 d3 #s(literal 5 binary64))
98.7%2(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
72.9%2d1
96.3%2d2
94.8%2d3
Compiler

Compiled 17 to 25 computations (-47.1% saved)

regimes8.0ms (0.1%)

Memory
12.9MiB live, 12.9MiB allocated; 0ms collecting garbage
Counts
4 → 2
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) (+.f64 #s(literal 37 binary64) d2))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Calls

4 calls:

2.0ms
d2
2.0ms
d3
2.0ms
(+.f64 d3 #s(literal 5 binary64))
2.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Results
AccuracySegmentsBranch
94.5%2(+.f64 d3 #s(literal 5 binary64))
94.5%2d3
79.0%2d2
81.6%2(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Compiler

Compiled 16 to 22 computations (-37.5% saved)

regimes6.0ms (0.1%)

Memory
9.8MiB live, 9.8MiB allocated; 0ms collecting garbage
Counts
3 → 3
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) #s(approx (+ 37 d2) #s(literal 37 binary64)))))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Calls

3 calls:

2.0ms
d3
2.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
2.0ms
(+.f64 d3 #s(literal 5 binary64))
Results
AccuracySegmentsBranch
81.3%3(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
69.3%2(+.f64 d3 #s(literal 5 binary64))
76.0%5d3
Compiler

Compiled 15 to 19 computations (-26.7% saved)

regimes4.0ms (0%)

Memory
5.1MiB live, 5.1MiB allocated; 0ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 #s(approx (+ 37 (+ d2 d3)) d2)))
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Calls

2 calls:

2.0ms
d2
2.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Results
AccuracySegmentsBranch
71.1%2d2
73.4%2(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Compiler

Compiled 12 to 14 computations (-16.7% saved)

regimes6.0ms (0.1%)

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

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Outputs
#s(approx (+ (+ (* d1 d2) (* (+ d3 5) d1)) (* d1 32)) (*.f64 d1 d3))
Calls

5 calls:

1.0ms
(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
1.0ms
d1
1.0ms
d3
1.0ms
d2
1.0ms
(+.f64 d3 #s(literal 5 binary64))
Results
AccuracySegmentsBranch
37.4%1(+.f64 d3 #s(literal 5 binary64))
37.4%1d2
37.4%1d3
37.4%1d1
37.4%1(+.f64 (+.f64 (*.f64 d1 d2) (*.f64 (+.f64 d3 #s(literal 5 binary64)) d1)) (*.f64 d1 #s(literal 32 binary64)))
Compiler

Compiled 17 to 25 computations (-47.1% saved)

bsearch0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-3.6566312927709554e-177
9.638971213741343e-301
Compiler

Compiled 14 to 17 computations (-21.4% saved)

bsearch96.0ms (1%)

Memory
-68.2MiB live, 7.4MiB allocated; 117ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
95.0ms
7.180276952502071e+22
1.9018130378590053e+27
Samples
90.0ms128×0valid
Compiler

Compiled 272 to 289 computations (-6.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 87.0ms
ival-mult!: 86.0ms (99.2% of total)
ival-add!: 1.0ms (1.2% of total)
adjust: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.135162456347187e-164
1.005187781868367e-141
0.0ms
-3.6566312927709554e-177
9.638971213741343e-301
Compiler

Compiled 14 to 17 computations (-21.4% saved)

bsearch0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
9.638971213741343e-301
4.975289962868891e-299
Compiler

Compiled 14 to 17 computations (-21.4% saved)

derivations2.0ms (0%)

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

Compiled 69 to 58 computations (15.9% saved)

preprocess168.0ms (1.7%)

Memory
7.3MiB live, 104.3MiB allocated; 18ms collecting garbage
Remove

(sort d2 d3)

(negabs d1)

Compiler

Compiled 855 to 748 computations (12.5% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...