Diagrams.Solve.Polynomial:quartForm from diagrams-solve-0.1, B

Time bar (total: 4.8s)

start0.0ms (0%)

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

analyze0.0ms (0%)

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

Compiled 15 to 15 computations (0% saved)

sample1.5s (30.5%)

Memory
-27.9MiB live, 1 798.3MiB allocated; 448ms collecting garbage
Samples
1.0s8 255×0valid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 703.0ms
ival-div: 456.0ms (64.9% of total)
ival-mult: 148.0ms (21.1% of total)
ival-sub: 40.0ms (5.7% of total)
ival-add: 37.0ms (5.3% of total)
exact: 11.0ms (1.6% of total)
ival-true: 6.0ms (0.9% of total)
adjust: 3.0ms (0.4% of total)
ival-assert: 3.0ms (0.4% of total)
Bogosity

explain195.0ms (4%)

Memory
34.1MiB live, 276.0MiB allocated; 36ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(/.f64 (*.f64 y z) #s(literal 2 binary64))
00-0-#s(literal 8 binary64)
00-0-t
00-0-#s(literal 1 binary64)
00-0-z
00-0-#s(literal 2 binary64)
00-0-y
00-0-(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
00-0-(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
00-0-(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
00-0-(*.f64 y z)
00-0-(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
79.0ms512×0valid
Compiler

Compiled 111 to 43 computations (61.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 39.0ms
ival-div: 26.0ms (67.4% of total)
ival-mult: 7.0ms (18.1% of total)
ival-add: 3.0ms (7.8% of total)
ival-sub: 2.0ms (5.2% of total)
exact: 1.0ms (2.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess516.0ms (10.7%)

Memory
-31.1MiB live, 316.8MiB allocated; 34ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
059177
1139170
2231168
3664165
42894165
01311
02011
13011
24211
38811
422711
594911
6457911
082329
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
Outputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(fma.f64 (/.f64 y #s(literal -2 binary64)) z (fma.f64 x #s(literal 1/8 binary64) t))
Symmetry

(sort y z)

Compiler

Compiled 13 to 13 computations (0% saved)

eval0.0ms (0%)

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

Compiled 0 to 4 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
Compiler

Compiled 13 to 13 computations (0% saved)

simplify243.0ms (5%)

Memory
20.0MiB live, 205.3MiB allocated; 29ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
cost-diff1
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
cost-diff1
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
cost-diff2
(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01339
02039
13039
24239
38839
422739
594939
6457939
0823236
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
#s(literal 1 binary64)
#s(literal 8 binary64)
x
(/.f64 (*.f64 y z) #s(literal 2 binary64))
(*.f64 y z)
y
z
#s(literal 2 binary64)
t
Outputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(fma.f64 (/.f64 y #s(literal -2 binary64)) z (fma.f64 x #s(literal 1/8 binary64) t))
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
(fma.f64 (/.f64 y #s(literal -2 binary64)) z (*.f64 x #s(literal 1/8 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
(*.f64 x #s(literal 1/8 binary64))
(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
#s(literal 1/8 binary64)
#s(literal 1 binary64)
#s(literal 8 binary64)
x
(/.f64 (*.f64 y z) #s(literal 2 binary64))
(/.f64 (*.f64 z y) #s(literal 2 binary64))
(*.f64 y z)
(*.f64 z y)
y
z
#s(literal 2 binary64)
t

localize40.0ms (0.8%)

Memory
-6.1MiB live, 81.7MiB allocated; 17ms collecting garbage
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
accuracy0.0
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
accuracy0.0
(*.f64 y z)
accuracy0.00390625
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
Samples
30.0ms256×0valid
Compiler

Compiled 49 to 15 computations (69.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-div: 3.0ms (31.2% of total)
ival-mult: 3.0ms (31.2% of total)
ival-sub: 1.0ms (10.4% of total)
ival-add: 1.0ms (10.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series9.0ms (0.2%)

Memory
21.6MiB live, 21.6MiB allocated; 0ms collecting garbage
Counts
5 → 28
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
(*.f64 y z)
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (* (/ 1 8) x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* 1/8 x)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (* y z) #s(hole binary64 (* y z)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* y (- (* 1/8 (/ x y)) (* 1/2 z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* y (- (* -1/8 (/ x y)) (* -1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* z (- (* 1/8 (/ x z)) (* 1/2 y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* z (- (* -1/8 (/ x z)) (* -1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
Calls

12 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((/ 1 8) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (- (* (/ 1 8) x) (/ (* y z) 2)) (* (/ 1 8) x) (* y z))
1.0ms
x
@-inf
((/ 1 8) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (- (* (/ 1 8) x) (/ (* y z) 2)) (* (/ 1 8) x) (* y z))
1.0ms
x
@inf
((/ 1 8) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (- (* (/ 1 8) x) (/ (* y z) 2)) (* (/ 1 8) x) (* y z))
1.0ms
z
@-inf
((/ 1 8) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (- (* (/ 1 8) x) (/ (* y z) 2)) (* (/ 1 8) x) (* y z))
1.0ms
x
@0
((/ 1 8) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (- (* (/ 1 8) x) (/ (* y z) 2)) (* (/ 1 8) x) (* y z))

simplify230.0ms (4.8%)

Memory
-19.9MiB live, 217.4MiB allocated; 64ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0121556
1276556
2745555
32516554
08877484
Stop Event
iter limit
node limit
Counts
28 → 28
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (* (/ 1 8) x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* 1/8 x)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (* y z) #s(hole binary64 (* y z)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* y (- (* 1/8 (/ x y)) (* 1/2 z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* y (- (* -1/8 (/ x y)) (* -1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* z (- (* 1/8 (/ x z)) (* 1/2 y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* z (- (* -1/8 (/ x z)) (* -1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (* (/ 1 8) x) #s(hole binary64 (* 1/8 x)))
#s(approx (* (/ 1 8) x) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* 1/8 x)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 (/.f64 #s(literal -1 binary64) x) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t) #s(literal -1/8 binary64)) (neg.f64 x)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (* y z) #s(hole binary64 (* y z)))
#s(approx (* y z) (*.f64 z y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* y (- (* 1/8 (/ x y)) (* 1/2 z)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (*.f64 (/.f64 x y) #s(literal 1/8 binary64))) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* y (- (* -1/8 (/ x y)) (* -1/2 z))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (*.f64 (/.f64 x y) #s(literal 1/8 binary64))) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z)) z))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* z (- (* 1/8 (/ x z)) (* 1/2 y)))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (*.f64 (/.f64 x z) #s(literal 1/8 binary64))) z))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z)) z))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) #s(hole binary64 (* -1 (* z (- (* -1/8 (/ x z)) (* -1/2 y))))))
#s(approx (- (* (/ 1 8) x) (/ (* y z) 2)) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (*.f64 (/.f64 x z) #s(literal 1/8 binary64))) z))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (/.f64 t t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) z (*.f64 #s(literal -1/8 binary64) x)) t) #s(literal 1 binary64))))

rewrite42.0ms (0.9%)

Memory
18.2MiB live, 61.3MiB allocated; 8ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01327
02027
16027
041427
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
5 → 29
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) #s(literal 8 binary64))
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
(*.f64 y z)
Outputs
#s(literal 1/8 binary64)
(/.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (*.f64 (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t) (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t))) (fma.f64 x #s(literal 1/8 binary64) (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t)))
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64))) (-.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (pow.f64 (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t) #s(literal 3 binary64))) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (fma.f64 (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t) (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t) (*.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (fma.f64 (/.f64 z #s(literal 2 binary64)) y t))))
(/.f64 (neg.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 t (-.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (fma.f64 (/.f64 z #s(literal 2 binary64)) y t)))
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (pow.f64 t #s(literal 3 binary64)) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 3 binary64))) (fma.f64 t (-.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64))))
(-.f64 (+.f64 t (*.f64 x #s(literal 1/8 binary64))) (/.f64 (*.f64 z y) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (fma.f64 (/.f64 z #s(literal 2 binary64)) y t))) (/.f64 (*.f64 t t) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (fma.f64 (/.f64 z #s(literal 2 binary64)) y t))))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) t))
(+.f64 (/.f64 (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 3 binary64)) (fma.f64 t (-.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t (-.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))) (pow.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) #s(literal 2 binary64)))))
(+.f64 t (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))))
(+.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64))) t)
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 2 binary64)))) (neg.f64 (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 2 binary64))) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 3 binary64))) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64))))))
(fma.f64 x #s(literal 1/8 binary64) (*.f64 (neg.f64 y) (/.f64 z #s(literal 2 binary64))))
(fma.f64 #s(literal 1/8 binary64) x (*.f64 (neg.f64 y) (/.f64 z #s(literal 2 binary64))))
(-.f64 (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))) (/.f64 (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))) (/.f64 (pow.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (/.f64 (*.f64 z y) #s(literal 2 binary64)) (fma.f64 x #s(literal 1/8 binary64) (/.f64 (*.f64 z y) #s(literal 2 binary64)))))))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (/.f64 (*.f64 z y) #s(literal 2 binary64)))
(+.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (neg.f64 y) (/.f64 z #s(literal 2 binary64))))
(*.f64 x #s(literal 1/8 binary64))
(*.f64 #s(literal 1/8 binary64) x)
(*.f64 z y)
(*.f64 y z)

eval5.0ms (0.1%)

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

Compiled 1 152 to 186 computations (83.9% saved)

prune7.0ms (0.1%)

Memory
-32.8MiB live, 13.6MiB allocated; 4ms collecting garbage
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New41748
Fresh000
Picked101
Done000
Total42749
Accuracy
100.0%
Counts
49 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
60.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
70.8%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
69.6%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
81.3%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
32.0%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
41.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
29.9%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Compiler

Compiled 272 to 238 computations (12.5% saved)

simplify221.0ms (4.6%)

Memory
-33.4MiB live, 182.3MiB allocated; 117ms collecting garbage
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z y)
cost-diff0
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
cost-diff0
(fma.f64 #s(literal 1/8 binary64) x t)
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
cost-diff0
(*.f64 #s(literal 1/8 binary64) x)
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
cost-diff0
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
cost-diff0
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
cost-diff2
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027144
035144
154139
2102139
3229139
4554139
51906137
67421137
08099130
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
#s(literal -1/2 binary64)
z
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
(fma.f64 #s(literal 1/8 binary64) x t)
#s(literal 1/8 binary64)
x
t
y
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
t
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal 1/8 binary64) x)
#s(literal 1/8 binary64)
x
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
(fma.f64 #s(literal 1/8 binary64) x t)
#s(literal 1/8 binary64)
x
t
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
#s(literal -1/2 binary64)
(*.f64 z y)
z
y
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (fma.f64 x #s(literal 1/8 binary64) t)))
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (fma.f64 x #s(literal 1/8 binary64) t))
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))
#s(literal -1/2 binary64)
z
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
(/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)
(fma.f64 #s(literal 1/8 binary64) x t)
(fma.f64 x #s(literal 1/8 binary64) t)
#s(literal 1/8 binary64)
x
t
y
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
t
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 x #s(literal 1/8 binary64)))
(*.f64 #s(literal 1/8 binary64) x)
(*.f64 x #s(literal 1/8 binary64))
#s(literal 1/8 binary64)
x
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 x #s(literal 1/8 binary64) t))
(fma.f64 #s(literal 1/8 binary64) x t)
(fma.f64 x #s(literal 1/8 binary64) t)
#s(literal 1/8 binary64)
x
t
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (*.f64 z y) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
(*.f64 (*.f64 z y) #s(literal -1/2 binary64))
#s(literal -1/2 binary64)
(*.f64 z y)
z
y

localize59.0ms (1.2%)

Memory
23.6MiB live, 175.6MiB allocated; 12ms collecting garbage
Localize:

Found 12 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 z y)
accuracy0.0
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
accuracy37.6248306543467
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
accuracy0.0
(fma.f64 #s(literal 1/8 binary64) x t)
accuracy25.472480305909794
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
accuracy0.0
(*.f64 #s(literal 1/8 binary64) x)
accuracy43.50652982508999
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
accuracy44.87764459795854
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
accuracy0.0
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
accuracy0.0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
accuracy0.00390625
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
accuracy11.958825763274113
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
Samples
39.0ms256×0valid
Compiler

Compiled 134 to 25 computations (81.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-mult: 10.0ms (49.3% of total)
ival-div: 5.0ms (24.6% of total)
ival-add: 3.0ms (14.8% of total)
ival-sub: 1.0ms (4.9% of total)
exact: 1.0ms (4.9% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series25.0ms (0.5%)

Memory
-14.9MiB live, 78.7MiB allocated; 6ms collecting garbage
Counts
12 → 68
Calls
Call 1
Inputs
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
(fma.f64 #s(literal 1/8 binary64) x t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
(*.f64 z y)
Outputs
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* 1/8 x) (* y (+ (* -1/2 z) (/ t y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (/ t y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ t y)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 t))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* 1/8 x)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* x (+ 1/8 (/ (* y (+ (* -1/2 z) (/ t y))) x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* x (+ (* -1/2 (/ z x)) (+ (* 1/8 (/ 1 y)) (/ t (* x y)))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* x (+ (* 1/8 (/ 1 y)) (/ t (* x y))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* x (+ 1/8 (/ t x)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y (+ (* -1/2 z) (/ t y))) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* -1/2 z) (/ t y)) x)) (* 1/8 (/ 1 y)))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ t (* x y))) (* 1/8 (/ 1 y)))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ t x)) 1/8)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (+ (* -1/2 (* y z)) (* 1/8 x))) y)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (* -1/2 (* z y)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1/2 z)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* y (+ (* -1 (/ (+ t (* 1/8 x)) y)) (* 1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* -1/2 (* y z)) (* y (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* z (+ (* -1/2 y) (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* z (- (+ (* 1/8 (/ x (* y z))) (/ t (* y z))) 1/2))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)) (* 1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* z (+ 1/2 (* -1 (/ (+ (* 1/8 (/ x y)) (/ t y)) z)))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* y (+ (* -1/2 z) (* 1/8 (/ x y)))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (* 1/8 (/ x y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* t (+ 1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ t y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* t (+ (* -1/2 (/ z t)) (+ (* 1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* t (+ (* 1/8 (/ x (* t y))) (/ 1 y)))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* t (+ 1 (* 1/8 (/ x t))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)) 1)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* t (- (* -1 (/ (+ (* -1/2 z) (* 1/8 (/ x y))) t)) (/ 1 y))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x t)) 1)))))
Calls

12 calls:

TimeVariablePointExpression
5.0ms
x
@-inf
((* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/ (+ (* 1/8 x) t) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* 1/8 x) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* -1/2 (* z y)) (* z y))
3.0ms
t
@0
((* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/ (+ (* 1/8 x) t) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* 1/8 x) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* -1/2 (* z y)) (* z y))
2.0ms
y
@0
((* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/ (+ (* 1/8 x) t) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* 1/8 x) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* -1/2 (* z y)) (* z y))
2.0ms
y
@-inf
((* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/ (+ (* 1/8 x) t) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* 1/8 x) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* -1/2 (* z y)) (* z y))
2.0ms
x
@inf
((* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/ (+ (* 1/8 x) t) y) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* 1/8 x) t) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (* -1/2 (* z y)) (* z y))

simplify185.0ms (3.8%)

Memory
32.6MiB live, 360.7MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02421433
16331414
219641405
379121405
083541238
Stop Event
iter limit
node limit
Counts
68 → 68
Calls
Call 1
Inputs
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* 1/8 x) (* y (+ (* -1/2 z) (/ t y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (/ t y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ t y)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 t))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* 1/8 x)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* x (+ 1/8 (/ (* y (+ (* -1/2 z) (/ t y))) x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* x (+ (* -1/2 (/ z x)) (+ (* 1/8 (/ 1 y)) (/ t (* x y)))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* x (+ (* 1/8 (/ 1 y)) (/ t (* x y))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* x (+ 1/8 (/ t x)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y (+ (* -1/2 z) (/ t y))) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* -1/2 z) (/ t y)) x)) (* 1/8 (/ 1 y)))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ t (* x y))) (* 1/8 (/ 1 y)))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ t x)) 1/8)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (+ (* -1/2 (* y z)) (* 1/8 x))) y)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (* -1/2 (* z y)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1/2 z)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* y (+ (* -1 (/ (+ t (* 1/8 x)) y)) (* 1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* -1/2 (* y z)) (* y (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* z (+ (* -1/2 y) (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* z (- (+ (* 1/8 (/ x (* y z))) (/ t (* y z))) 1/2))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)) (* 1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* z (+ 1/2 (* -1 (/ (+ (* 1/8 (/ x y)) (/ t y)) z)))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* y (+ (* -1/2 z) (* 1/8 (/ x y)))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (* 1/8 (/ x y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* t (+ 1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ t y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* t (+ (* -1/2 (/ z t)) (+ (* 1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* t (+ (* 1/8 (/ x (* t y))) (/ 1 y)))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* t (+ 1 (* 1/8 (/ x t))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)) 1)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* t (- (* -1 (/ (+ (* -1/2 z) (* 1/8 (/ x y))) t)) (/ 1 y))))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x t)) 1)))))
Outputs
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 t y)) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* 1/8 x) (* y (+ (* -1/2 z) (/ t y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (fma.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 t y)) y (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (/ t y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (fma.f64 #s(literal -1/2 binary64) z (/.f64 t y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ t y)))
#s(approx (/ (+ (* 1/8 x) t) y) (/.f64 t y))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (/ (+ (* 1/8 x) t) y) (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (* 1/8 x) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 t))
#s(approx (+ (* 1/8 x) t) t)
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (* 1/8 x) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* 1/8 x)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* x (+ 1/8 (/ (* y (+ (* -1/2 z) (/ t y))) x)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 t y)) x) y #s(literal 1/8 binary64)) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t) x) #s(literal -1/8 binary64)) x))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (/.f64 x y) #s(literal 1/8 binary64)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* x (+ (* -1/2 (/ z x)) (+ (* 1/8 (/ 1 y)) (/ t (* x y)))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (fma.f64 (/.f64 z x) #s(literal -1/2 binary64) (/.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) y)) x))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* 1/8 (/ x y))))
#s(approx (/ (+ (* 1/8 x) t) y) (*.f64 (/.f64 x y) #s(literal 1/8 binary64)))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* x (+ (* 1/8 (/ 1 y)) (/ t (* x y))))))
#s(approx (/ (+ (* 1/8 x) t) y) (*.f64 (/.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) y) x))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* 1/8 x) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* x (+ 1/8 (/ t x)))))
#s(approx (+ (* 1/8 x) t) (*.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) x))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ (* y (+ (* -1/2 z) (/ t y))) x)) 1/8)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 t y)) x) y #s(literal 1/8 binary64)) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t) x) #s(literal -1/8 binary64)) x))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* x (- (* -1 (/ (+ (* -1/2 z) (/ t y)) x)) (* 1/8 (/ 1 y)))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (fma.f64 (/.f64 z x) #s(literal -1/2 binary64) (/.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) y)) x))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* x (- (* -1 (/ t (* x y))) (* 1/8 (/ 1 y)))))))
#s(approx (/ (+ (* 1/8 x) t) y) (*.f64 (/.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) y) x))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ t x)) 1/8)))))
#s(approx (+ (* 1/8 x) t) (*.f64 (-.f64 (/.f64 t x) #s(literal -1/8 binary64)) x))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ (+ t (+ (* -1/2 (* y z)) (* 1/8 x))) y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 #s(literal 1/8 binary64) x t)) y))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (/ (+ t (* 1/8 x)) y)))
#s(approx (/ (+ (* 1/8 x) t) y) (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
#s(approx (* -1/2 (* z y)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* -1/2 (* z y)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* z y) (*.f64 y z))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1/2 z)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 #s(literal -1/2 binary64) z))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* y (+ (* -1 (/ (+ t (* 1/8 x)) y)) (* 1/2 z))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* 1/8 (/ x y)) (/ t y)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ (* -1/2 (* y z)) (* y (+ (* 1/8 (/ x y)) (/ t y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* 1/8 (/ x y)) (/ t y))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* z (+ (* -1/2 y) (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (*.f64 y z) (+.f64 (/.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z) y) #s(literal -1/2 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) y (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z)) z))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* z (- (+ (* 1/8 (/ x (* y z))) (/ t (* y z))) 1/2))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (-.f64 (/.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z) y) #s(literal 1/2 binary64)) z))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* z (+ (* -1 (/ (* y (+ (* 1/8 (/ x y)) (/ t y))) z)) (* 1/2 y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (*.f64 y z) (+.f64 (/.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z) y) #s(literal -1/2 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (neg.f64 z) (fma.f64 #s(literal 1/2 binary64) y (/.f64 (-.f64 (*.f64 #s(literal -1/8 binary64) x) t) z))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* z (+ 1/2 (* -1 (/ (+ (* 1/8 (/ x y)) (/ t y)) z)))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (+.f64 (/.f64 (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) z) y) #s(literal -1/2 binary64)) z))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) y) x (*.f64 #s(literal -1/2 binary64) z)) y))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (+ t (* y (+ (* -1/2 z) (* 1/8 (/ x y)))))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (fma.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) y) x (*.f64 #s(literal -1/2 binary64) z)) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (+ (* -1/2 z) (* 1/8 (/ x y)))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (fma.f64 (/.f64 #s(literal 1/8 binary64) y) x (*.f64 #s(literal -1/2 binary64) z)))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) t)
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* t (+ 1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (fma.f64 (/.f64 (*.f64 (fma.f64 (/.f64 #s(literal 1/8 binary64) y) x (*.f64 #s(literal -1/2 binary64) z)) y) t) t t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)) t) t t))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (/ t y)))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (/.f64 t y))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* t (+ (* -1/2 (/ z t)) (+ (* 1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (fma.f64 (/.f64 z t) #s(literal -1/2 binary64) (/.f64 (fma.f64 (/.f64 x t) #s(literal 1/8 binary64) #s(literal 1 binary64)) y)) t))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* t (+ (* 1/8 (/ x (* t y))) (/ 1 y)))))
#s(approx (/ (+ (* 1/8 x) t) y) (*.f64 (/.f64 (fma.f64 (/.f64 x t) #s(literal 1/8 binary64) #s(literal 1 binary64)) y) t))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* t (+ 1 (* 1/8 (/ x t))))))
#s(approx (+ (* 1/8 x) t) (*.f64 (fma.f64 (/.f64 x t) #s(literal 1/8 binary64) #s(literal 1 binary64)) t))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) #s(hole binary64 (* -1 (* t (- (* -1 (/ (* y (+ (* -1/2 z) (* 1/8 (/ x y)))) t)) 1)))))
#s(approx (* (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) y) (*.f64 (neg.f64 t) (fma.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) y) x (*.f64 #s(literal 1/2 binary64) z)) (/.f64 y t) #s(literal -1 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (fma.f64 #s(literal -1/8 binary64) x (*.f64 #s(literal 1/2 binary64) (*.f64 y z))) t) #s(literal 1 binary64))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) #s(hole binary64 (* -1 (* t (- (* -1 (/ (+ (* -1/2 z) (* 1/8 (/ x y))) t)) (/ 1 y))))))
#s(approx (+ (* -1/2 z) (/ (+ (* 1/8 x) t) y)) (*.f64 (neg.f64 t) (fma.f64 (/.f64 z t) #s(literal 1/2 binary64) (/.f64 (fma.f64 (/.f64 #s(literal -1/8 binary64) t) x #s(literal -1 binary64)) y))))
#s(approx (/ (+ (* 1/8 x) t) y) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x (* t y))) (/ 1 y))))))
#s(approx (/ (+ (* 1/8 x) t) y) (*.f64 (/.f64 (fma.f64 (/.f64 x t) #s(literal 1/8 binary64) #s(literal 1 binary64)) y) t))
#s(approx (+ (* 1/8 x) t) #s(hole binary64 (* -1 (* t (- (* -1/8 (/ x t)) 1)))))
#s(approx (+ (* 1/8 x) t) (*.f64 (neg.f64 t) (fma.f64 #s(literal -1/8 binary64) (/.f64 x t) #s(literal -1 binary64))))

rewrite44.0ms (0.9%)

Memory
8.3MiB live, 55.3MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
027125
035125
1108120
0776120
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
12 → 88
Calls
Call 1
Inputs
(*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y))
(/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
(fma.f64 #s(literal 1/8 binary64) x t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
(*.f64 #s(literal -1/2 binary64) (*.f64 z y))
(*.f64 z y)
Outputs
(*.f64 (fma.f64 z #s(literal -1/2 binary64) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)) y)
(*.f64 y (fma.f64 z #s(literal -1/2 binary64) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64))) y) (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(/.f64 (*.f64 (fma.f64 (pow.f64 z #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64))) y) (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64))))))
(/.f64 (*.f64 y (-.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64)))) (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(/.f64 (*.f64 y (fma.f64 (pow.f64 z #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64)))) (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 (*.f64 z #s(literal -1/2 binary64)) y (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 (*.f64 z #s(literal -1/2 binary64)) y (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 (*.f64 y z) #s(literal -1/2 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 (*.f64 y z) #s(literal -1/2 binary64) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y (*.f64 (*.f64 y z) #s(literal -1/2 binary64)))
(fma.f64 y (*.f64 z #s(literal -1/2 binary64)) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 y (*.f64 z #s(literal -1/2 binary64)) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 (*.f64 y z) #s(literal -1/2 binary64)))
(fma.f64 z (*.f64 y #s(literal -1/2 binary64)) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 z (*.f64 y #s(literal -1/2 binary64)) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 y z) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(fma.f64 #s(literal -1/2 binary64) (*.f64 y z) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(+.f64 (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y) (*.f64 (*.f64 y z) #s(literal -1/2 binary64)))
(+.f64 (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)) (*.f64 (*.f64 y z) #s(literal -1/2 binary64)))
(+.f64 (*.f64 (*.f64 y z) #s(literal -1/2 binary64)) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) y))
(+.f64 (*.f64 (*.f64 y z) #s(literal -1/2 binary64)) (*.f64 y (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 z #s(literal -1/2 binary64) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)) y))
(/.f64 (-.f64 (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64)) (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64))) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64)))) (neg.f64 (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 z #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64)))))))
(/.f64 (-.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64))) (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))
(/.f64 (fma.f64 (pow.f64 z #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64))) (+.f64 (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)))))
(/.f64 (fma.f64 (pow.f64 z #s(literal 3 binary64)) #s(literal -1/8 binary64) (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64))) (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64))))))
(fma.f64 x (/.f64 #s(literal 1/8 binary64) y) (+.f64 (/.f64 t y) (*.f64 z #s(literal -1/2 binary64))))
(fma.f64 #s(literal 1/8 binary64) (/.f64 x y) (+.f64 (/.f64 t y) (*.f64 z #s(literal -1/2 binary64))))
(fma.f64 z #s(literal -1/2 binary64) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))
(fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))
(-.f64 (/.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))) (/.f64 (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 2 binary64)) (-.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))))
(-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 (neg.f64 z) #s(literal -1/2 binary64)))
(-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 #s(literal 1/2 binary64) z))
(+.f64 (fma.f64 z #s(literal -1/2 binary64) (/.f64 (*.f64 x #s(literal 1/8 binary64)) y)) (/.f64 t y))
(+.f64 (/.f64 (pow.f64 (*.f64 z #s(literal -1/2 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64)))))) (/.f64 (pow.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) #s(literal 3 binary64)) (fma.f64 (*.f64 z z) #s(literal 1/4 binary64) (*.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (-.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64)))))))
(+.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (+.f64 (/.f64 t y) (*.f64 z #s(literal -1/2 binary64))))
(+.f64 (*.f64 z #s(literal -1/2 binary64)) (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y))
(+.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y) (*.f64 z #s(literal -1/2 binary64)))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (/.f64 (*.f64 x #s(literal 1/8 binary64)) y)) (*.f64 (/.f64 t y) (/.f64 t y))) (-.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (/.f64 t y)))
(/.f64 (+.f64 (pow.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) #s(literal 3 binary64)) (pow.f64 (/.f64 t y) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (-.f64 (*.f64 (/.f64 t y) (/.f64 t y)) (*.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (/.f64 t y)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 x #s(literal 1/8 binary64) t))) (neg.f64 (neg.f64 y)))
(/.f64 (fma.f64 (*.f64 x #s(literal 1/8 binary64)) y (*.f64 y t)) (*.f64 y y))
(/.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (neg.f64 t) t)) (*.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) t) y))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 t #s(literal 3 binary64))) (*.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 t (-.f64 t (*.f64 x #s(literal 1/8 binary64))))) y))
(/.f64 (neg.f64 (fma.f64 x #s(literal 1/8 binary64) t)) (neg.f64 y))
(/.f64 (fma.f64 x #s(literal 1/8 binary64) t) y)
(neg.f64 (/.f64 (neg.f64 (fma.f64 x #s(literal 1/8 binary64) t)) y))
(neg.f64 (/.f64 (fma.f64 x #s(literal 1/8 binary64) t) (neg.f64 y)))
(fma.f64 x (/.f64 #s(literal 1/8 binary64) y) (/.f64 t y))
(fma.f64 #s(literal 1/8 binary64) (/.f64 x y) (/.f64 t y))
(+.f64 (/.f64 t y) (/.f64 (*.f64 x #s(literal 1/8 binary64)) y))
(+.f64 (/.f64 (*.f64 x #s(literal 1/8 binary64)) y) (/.f64 t y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 x #s(literal 1/8 binary64)))
(*.f64 x #s(literal 1/8 binary64))
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 x #s(literal 1/8 binary64) t))
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64))) (-.f64 t (*.f64 x #s(literal 1/8 binary64))))
(/.f64 (neg.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (neg.f64 t) t))) (neg.f64 (-.f64 (*.f64 x #s(literal 1/8 binary64)) t)))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 t (-.f64 t (*.f64 x #s(literal 1/8 binary64)))))))
(/.f64 (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (neg.f64 t) t)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) t))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 t #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (*.f64 (*.f64 x #s(literal 1/8 binary64)) t))))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 t #s(literal 3 binary64))) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 t (-.f64 t (*.f64 x #s(literal 1/8 binary64))))))
(fma.f64 x #s(literal 1/8 binary64) t)
(fma.f64 #s(literal 1/8 binary64) x t)
(-.f64 (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 x #s(literal 1/8 binary64)) t)))
(-.f64 t (*.f64 (neg.f64 x) #s(literal 1/8 binary64)))
(-.f64 t (*.f64 #s(literal -1/8 binary64) x))
(+.f64 (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 t (-.f64 t (*.f64 x #s(literal 1/8 binary64)))))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 t (-.f64 t (*.f64 x #s(literal 1/8 binary64)))))))
(+.f64 (*.f64 x #s(literal 1/8 binary64)) t)
(+.f64 t (*.f64 x #s(literal 1/8 binary64)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (*.f64 y z) #s(literal -1/2 binary64)))
(*.f64 (*.f64 #s(literal -1/2 binary64) y) z)
(*.f64 (*.f64 z #s(literal -1/2 binary64)) y)
(*.f64 (*.f64 y z) #s(literal -1/2 binary64))
(*.f64 y (*.f64 z #s(literal -1/2 binary64)))
(*.f64 z (*.f64 y #s(literal -1/2 binary64)))
(*.f64 z (*.f64 #s(literal -1/2 binary64) y))
(*.f64 #s(literal -1/2 binary64) (*.f64 y z))
(*.f64 y z)
(*.f64 z y)

eval34.0ms (0.7%)

Memory
-36.0MiB live, 68.8MiB allocated; 15ms collecting garbage
Compiler

Compiled 5 016 to 597 computations (88.1% saved)

prune12.0ms (0.2%)

Memory
1.4MiB live, 42.2MiB allocated; 3ms collecting garbage
Pruning

6 alts after pruning (2 fresh and 4 done)

PrunedKeptTotal
New1602162
Fresh202
Picked145
Done000
Total1636169
Accuracy
100.0%
Counts
169 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
70.8%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
60.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
32.0%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
41.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
29.9%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Compiler

Compiled 111 to 99 computations (10.8% saved)

simplify159.0ms (3.3%)

Memory
47.7MiB live, 173.2MiB allocated; 62ms collecting garbage
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal -1/2 binary64) z)
cost-diff0
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
cost-diff0
(*.f64 #s(literal 1/8 binary64) x)
cost-diff0
(*.f64 #s(literal -1/2 binary64) y)
cost-diff0
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
cost-diff0
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02270
02970
15370
29270
317770
437268
5114868
6488968
0830766
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal -1/2 binary64) y)
#s(literal -1/2 binary64)
y
z
(*.f64 #s(literal 1/8 binary64) x)
#s(literal 1/8 binary64)
x
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
(*.f64 #s(literal -1/2 binary64) z)
#s(literal -1/2 binary64)
z
y
t
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64)))
(*.f64 #s(literal -1/2 binary64) y)
#s(literal -1/2 binary64)
y
z
(*.f64 #s(literal 1/8 binary64) x)
(*.f64 x #s(literal 1/8 binary64))
#s(literal 1/8 binary64)
x
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
(*.f64 #s(literal -1/2 binary64) z)
#s(literal -1/2 binary64)
z
y
t

localize166.0ms (3.4%)

Memory
-35.1MiB live, 156.9MiB allocated; 92ms collecting garbage
Localize:

Found 7 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
accuracy0.0
(*.f64 #s(literal -1/2 binary64) z)
accuracy19.483663288046397
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
accuracy0.0
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
accuracy0.0
(*.f64 #s(literal 1/8 binary64) x)
accuracy0.0
(*.f64 #s(literal -1/2 binary64) y)
accuracy18.668885418490447
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
Samples
87.0ms256×0valid
Compiler

Compiled 62 to 24 computations (61.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 61.0ms
ival-add: 40.0ms (65.3% of total)
ival-mult: 10.0ms (16.3% of total)
ival-div: 9.0ms (14.7% of total)
ival-sub: 1.0ms (1.6% of total)
exact: 1.0ms (1.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.2%)

Memory
27.4MiB live, 27.4MiB allocated; 0ms collecting garbage
Counts
7 → 37
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal -1/2 binary64) y)
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
(*.f64 #s(literal -1/2 binary64) z)
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (* -1/2 y) #s(hole binary64 (* -1/2 y)))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 t))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (+ t (* -1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* y (+ (* -1/8 (/ x y)) (* 1/2 z))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* y (+ (* -1 (/ t y)) (* 1/2 z))))))
#s(approx (* -1/2 z) #s(hole binary64 (* -1/2 z)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* z (+ (* -1/2 y) (* 1/8 (/ x z))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* z (+ (* -1/2 y) (/ t z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* z (+ (* -1/8 (/ x z)) (* 1/2 y))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* z (+ (* -1 (/ t z)) (* 1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* t (+ 1 (* -1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* t (- (* 1/2 (/ (* y z) t)) 1)))))
Calls

12 calls:

TimeVariablePointExpression
3.0ms
y
@-inf
((+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 y) z) (* 1/8 x)) (* -1/2 y) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 z) y) t) (* -1/2 z))
1.0ms
y
@inf
((+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 y) z) (* 1/8 x)) (* -1/2 y) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 z) y) t) (* -1/2 z))
1.0ms
z
@inf
((+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 y) z) (* 1/8 x)) (* -1/2 y) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 z) y) t) (* -1/2 z))
1.0ms
z
@-inf
((+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 y) z) (* 1/8 x)) (* -1/2 y) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 z) y) t) (* -1/2 z))
1.0ms
x
@-inf
((+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 y) z) (* 1/8 x)) (* -1/2 y) (* 1/8 x) (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (+ (* (* -1/2 z) y) t) (* -1/2 z))

simplify146.0ms (3%)

Memory
-8.8MiB live, 132.4MiB allocated; 42ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0153665
1410665
21196663
33713663
47427663
08334582
Stop Event
iter limit
node limit
Counts
37 → 37
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (* -1/2 y) #s(hole binary64 (* -1/2 y)))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 t))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (+ t (* -1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* y (+ (* -1/8 (/ x y)) (* 1/2 z))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* y (+ (* -1 (/ t y)) (* 1/2 z))))))
#s(approx (* -1/2 z) #s(hole binary64 (* -1/2 z)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* z (+ (* -1/2 y) (* 1/8 (/ x z))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* z (+ (* -1/2 y) (/ t z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* z (+ (* -1/8 (/ x z)) (* 1/2 y))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* z (+ (* -1 (/ t z)) (* 1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* t (+ 1 (* -1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* t (- (* 1/2 (/ (* y z) t)) 1)))))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- t (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (+ t (* 1/8 x)) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (*.f64 (*.f64 #s(literal -1/2 binary64) y) z))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (+ (* -1/2 (* y z)) (* 1/8 x))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (* 1/8 x) #s(hole binary64 (* 1/8 x)))
#s(approx (* 1/8 x) (*.f64 x #s(literal 1/8 binary64)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 x #s(literal 1/8 binary64)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* x (- (+ 1/8 (/ t x)) (* 1/2 (/ (* y z) x))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (+.f64 (/.f64 t x) #s(literal 1/8 binary64)) x (*.f64 (*.f64 #s(literal -1/2 binary64) y) z)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* 1/8 x)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (*.f64 x #s(literal 1/8 binary64)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* x (+ 1/8 (* -1/2 (/ (* y z) x))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* x (- (* -1 (/ (- t (* 1/2 (* y z))) x)) 1/8)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (neg.f64 x) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) z (neg.f64 t)) x) #s(literal 1/8 binary64))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* x (- (* 1/2 (/ (* y z) x)) 1/8)))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (*.f64 (neg.f64 x) (-.f64 (*.f64 (/.f64 (*.f64 z y) x) #s(literal 1/2 binary64)) #s(literal 1/8 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (* 1/8 x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 x #s(literal 1/8 binary64) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (+ t (+ (* -1/2 (* y z)) (* 1/8 x)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (* -1/2 y) #s(hole binary64 (* -1/2 y)))
#s(approx (* -1/2 y) (*.f64 #s(literal -1/2 binary64) y))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 t))
#s(approx (+ (* (* -1/2 z) y) t) t)
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (+ t (* -1/2 (* y z)))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (*.f64 #s(literal -1/2 binary64) y) z))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* y (- (+ (* 1/8 (/ x y)) (/ t y)) (* 1/2 z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* y (+ (* -1/2 z) (* 1/8 (/ x y))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1/2 (* y z))))
#s(approx (+ (* (* -1/2 z) y) t) (*.f64 (*.f64 #s(literal -1/2 binary64) y) z))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* y (+ (* -1/2 z) (/ t y)))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* y (- (* -1 (/ (+ t (* 1/8 x)) y)) (* -1/2 z))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* y (+ (* -1/8 (/ x y)) (* 1/2 z))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* y (+ (* -1 (/ t y)) (* 1/2 z))))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (* -1/2 z) #s(hole binary64 (* -1/2 z)))
#s(approx (* -1/2 z) (*.f64 #s(literal -1/2 binary64) z))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* z (- (+ (* 1/8 (/ x z)) (/ t z)) (* 1/2 y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* z (+ (* -1/2 y) (* 1/8 (/ x z))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* z (+ (* -1/2 y) (/ t z)))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* z (- (* -1 (/ (+ t (* 1/8 x)) z)) (* -1/2 y))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) #s(hole binary64 (* -1 (* z (+ (* -1/8 (/ x z)) (* 1/2 y))))))
#s(approx (+ (* (* -1/2 y) z) (* 1/8 x)) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* z (+ (* -1 (/ t z)) (* 1/2 y))))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (- (* 1/8 x) (* 1/2 (* y z)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* t (- (+ 1 (* 1/8 (/ x t))) (* 1/2 (/ (* y z) t))))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (/.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (fma.f64 x #s(literal 1/8 binary64) t)) t) t))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* t (+ 1 (* -1/2 (/ (* y z) t))))))
#s(approx (+ (* (* -1/2 z) y) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) #s(hole binary64 (* -1 (* t (- (* -1 (/ (- (* 1/8 x) (* 1/2 (* y z))) t)) 1)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (neg.f64 t) (-.f64 (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) y) z (*.f64 #s(literal -1/8 binary64) x)) t) #s(literal 1 binary64))))
#s(approx (+ (* (* -1/2 z) y) t) #s(hole binary64 (* -1 (* t (- (* 1/2 (/ (* y z) t)) 1)))))
#s(approx (+ (* (* -1/2 z) y) t) (*.f64 (neg.f64 t) (-.f64 (*.f64 (/.f64 (*.f64 z y) t) #s(literal 1/2 binary64)) #s(literal 1 binary64))))

rewrite62.0ms (1.3%)

Memory
-5.7MiB live, 39.6MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02261
02961
110861
072061
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
7 → 55
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x))
(*.f64 #s(literal -1/2 binary64) y)
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
(*.f64 #s(literal -1/2 binary64) z)
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64))))
(/.f64 (-.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64))) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64)) (pow.f64 (*.f64 #s(literal -1/8 binary64) x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) (*.f64 #s(literal -1/8 binary64) x)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)))) (neg.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (*.f64 #s(literal -1/8 binary64) x))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (*.f64 #s(literal -1/8 binary64) x)))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64))) (fma.f64 (*.f64 x x) #s(literal 1/64 binary64) (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) x) #s(literal 1/8 binary64)))))
(/.f64 (fma.f64 (pow.f64 x #s(literal 3 binary64)) #s(literal 1/512 binary64) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64))) (fma.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 y (*.f64 #s(literal -1/2 binary64) z) (*.f64 x #s(literal 1/8 binary64)))
(fma.f64 x #s(literal 1/8 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
(fma.f64 #s(literal 1/8 binary64) x (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (*.f64 #s(literal -1/8 binary64) x))) (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 2 binary64)) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y (*.f64 #s(literal -1/8 binary64) x))))
(-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) (*.f64 (neg.f64 x) #s(literal 1/8 binary64)))
(-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) (*.f64 #s(literal -1/8 binary64) x))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) z)) y))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) y)) z))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 z y)))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (neg.f64 z) (*.f64 #s(literal -1/2 binary64) y)))
(-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (neg.f64 y) (*.f64 #s(literal -1/2 binary64) z)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64)) (fma.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 x #s(literal 1/8 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 x #s(literal 1/8 binary64)) (-.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) (*.f64 x #s(literal 1/8 binary64)))
(+.f64 (*.f64 x #s(literal 1/8 binary64)) (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
(*.f64 #s(literal -1/2 binary64) y)
(*.f64 y #s(literal -1/2 binary64))
(*.f64 x #s(literal 1/8 binary64))
(*.f64 #s(literal 1/8 binary64) x)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
(/.f64 (-.f64 (*.f64 t t) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64))) (-.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (*.f64 t t))) (neg.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t)))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64)))) (neg.f64 (fma.f64 t (-.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (*.f64 t t)) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (fma.f64 t t (-.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t))))
(/.f64 (fma.f64 #s(literal -1/8 binary64) (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 t #s(literal 3 binary64))) (fma.f64 t (-.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t)
(fma.f64 (*.f64 #s(literal -1/2 binary64) y) z t)
(fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)
(fma.f64 (*.f64 z y) #s(literal -1/2 binary64) t)
(fma.f64 z (*.f64 #s(literal -1/2 binary64) y) t)
(fma.f64 y (*.f64 #s(literal -1/2 binary64) z) t)
(-.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t)) (/.f64 (*.f64 t t) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t)))
(-.f64 t (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) z)) y))
(-.f64 t (*.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) y)) z))
(-.f64 t (*.f64 #s(literal 1/2 binary64) (*.f64 z y)))
(-.f64 t (*.f64 (neg.f64 z) (*.f64 #s(literal -1/2 binary64) y)))
(-.f64 t (*.f64 (neg.f64 y) (*.f64 #s(literal -1/2 binary64) z)))
(+.f64 (/.f64 (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 3 binary64)) (fma.f64 t (-.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))) (/.f64 (pow.f64 t #s(literal 3 binary64)) (fma.f64 t (-.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y)) (pow.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) z) y) t)
(+.f64 t (*.f64 (*.f64 #s(literal -1/2 binary64) z) y))
(*.f64 #s(literal -1/2 binary64) z)
(*.f64 z #s(literal -1/2 binary64))

eval8.0ms (0.2%)

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

Compiled 2 091 to 260 computations (87.6% saved)

prune11.0ms (0.2%)

Memory
-27.8MiB live, 16.0MiB allocated; 7ms collecting garbage
Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New75075
Fresh000
Picked022
Done044
Total75681
Accuracy
100.0%
Counts
81 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
70.8%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
60.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
32.0%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
41.2%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
29.9%
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Compiler

Compiled 302 to 145 computations (52% saved)

regimes55.0ms (1.1%)

Memory
21.3MiB live, 65.7MiB allocated; 7ms collecting garbage
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
Outputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
Calls

9 calls:

27.0ms
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
4.0ms
t
3.0ms
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
3.0ms
y
3.0ms
x
Results
AccuracySegmentsBranch
100.0%1(*.f64 y z)
100.0%1(/.f64 (*.f64 y z) #s(literal 2 binary64))
100.0%1(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
100.0%1(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
100.0%1(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
100.0%1x
100.0%1y
100.0%1z
100.0%1t
Compiler

Compiled 41 to 61 computations (-48.8% saved)

regimes90.0ms (1.9%)

Memory
-18.4MiB live, 85.3MiB allocated; 66ms collecting garbage
Counts
9 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))
Calls

9 calls:

48.0ms
x
12.0ms
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
10.0ms
(/.f64 (*.f64 y z) #s(literal 2 binary64))
3.0ms
t
3.0ms
y
Results
AccuracySegmentsBranch
96.0%3(*.f64 y z)
96.0%3(/.f64 (*.f64 y z) #s(literal 2 binary64))
89.0%3(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
89.4%4(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
88.2%5(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
89.0%3x
96.5%3y
90.7%3z
92.5%5t
Compiler

Compiled 41 to 61 computations (-48.8% saved)

regimes9.0ms (0.2%)

Memory
20.8MiB live, 20.8MiB allocated; 0ms collecting garbage
Counts
8 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) (*.f64 #s(literal 1/8 binary64) x)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) y) z (*.f64 #s(literal 1/8 binary64) x)))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))
Calls

3 calls:

3.0ms
y
3.0ms
(/.f64 (*.f64 y z) #s(literal 2 binary64))
3.0ms
(*.f64 y z)
Results
AccuracySegmentsBranch
90.9%3(*.f64 y z)
90.9%3(/.f64 (*.f64 y z) #s(literal 2 binary64))
86.4%4y
Compiler

Compiled 9 to 16 computations (-77.8% saved)

regimes4.0ms (0.1%)

Memory
11.1MiB live, 11.1MiB allocated; 0ms collecting garbage
Counts
5 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))
Calls

2 calls:

2.0ms
(/.f64 (*.f64 y z) #s(literal 2 binary64))
2.0ms
(*.f64 y z)
Results
AccuracySegmentsBranch
90.9%3(*.f64 y z)
90.9%3(/.f64 (*.f64 y z) #s(literal 2 binary64))
Compiler

Compiled 8 to 12 computations (-50% saved)

regimes20.0ms (0.4%)

Memory
1.9MiB live, 47.0MiB allocated; 5ms collecting garbage
Counts
4 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))
Calls

9 calls:

5.0ms
(*.f64 y z)
2.0ms
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
2.0ms
z
2.0ms
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
2.0ms
t
Results
AccuracySegmentsBranch
77.4%3y
73.9%3(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
74.3%3(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
68.1%3(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
68.1%3x
66.1%3t
79.3%3z
83.6%3(*.f64 y z)
83.6%3(/.f64 (*.f64 y z) #s(literal 2 binary64))
Compiler

Compiled 41 to 61 computations (-48.8% saved)

regimes49.0ms (1%)

Memory
-10.2MiB live, 35.4MiB allocated; 7ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
Calls

9 calls:

35.0ms
z
2.0ms
y
2.0ms
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
2.0ms
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
2.0ms
t
Results
AccuracySegmentsBranch
60.2%1t
60.2%1(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
60.2%1x
60.2%1(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
60.2%1(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
60.2%1y
60.2%1z
60.2%1(*.f64 y z)
60.2%1(/.f64 (*.f64 y z) #s(literal 2 binary64))
Compiler

Compiled 41 to 61 computations (-48.8% saved)

regimes18.0ms (0.4%)

Memory
-13.7MiB live, 41.4MiB allocated; 8ms collecting garbage
Counts
2 → 3
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))
Calls

9 calls:

7.0ms
(*.f64 y z)
1.0ms
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
1.0ms
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
1.0ms
t
1.0ms
y
Results
AccuracySegmentsBranch
32.0%1y
49.1%3(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
49.1%3x
40.0%5(*.f64 y z)
40.0%5(/.f64 (*.f64 y z) #s(literal 2 binary64))
46.4%3(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
38.4%3(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
47.6%3t
36.9%3z
Compiler

Compiled 41 to 61 computations (-48.8% saved)

regimes24.0ms (0.5%)

Memory
-18.0MiB live, 27.6MiB allocated; 5ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Outputs
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Calls

9 calls:

1.0ms
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
1.0ms
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
1.0ms
(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
1.0ms
x
1.0ms
t
Results
AccuracySegmentsBranch
29.9%1y
29.9%1z
29.9%1(*.f64 y z)
29.9%1(/.f64 (*.f64 y z) #s(literal 2 binary64))
29.9%1(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
29.9%1(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64)))
29.9%1t
29.9%1(*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x)
29.9%1x
Compiler

Compiled 41 to 61 computations (-48.8% saved)

bsearch52.0ms (1.1%)

Memory
3.3MiB live, 48.2MiB allocated; 8ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
1.7840778284420474e-121
1.0528767735466107e-116
14.0ms
-8.267926482118285e-137
-1.5968793018616558e-139
Samples
17.0ms256×0valid
Compiler

Compiled 704 to 628 computations (10.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-div: 3.0ms (31.3% of total)
ival-mult: 3.0ms (31.3% of total)
ival-sub: 1.0ms (10.4% of total)
ival-add: 1.0ms (10.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.47065782886267e-114
5.519643317546143e-114
0.0ms
-3.618611979297617e+84
-1.217317911700514e+81
Compiler

Compiled 16 to 20 computations (-25% saved)

bsearch1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.47065782886267e-114
5.519643317546143e-114
0.0ms
-3.618611979297617e+84
-1.217317911700514e+81
Compiler

Compiled 16 to 20 computations (-25% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.062281959539836e+36
3.467851066822697e+36
0.0ms
-6.91934227993756e+189
-2.956347104752061e+186
Compiler

Compiled 16 to 20 computations (-25% saved)

bsearch26.0ms (0.5%)

Memory
36.1MiB live, 36.1MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
11.0ms
2.7760813524383543e+77
1.4602548498503002e+79
11.0ms
-2.9168165637859007e+34
-3.8095977739742384e+32
Samples
14.0ms224×0valid
Compiler

Compiled 464 to 468 computations (-0.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
ival-div: 3.0ms (37.2% of total)
ival-mult: 3.0ms (37.2% of total)
ival-sub: 1.0ms (12.4% of total)
ival-add: 1.0ms (12.4% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify54.0ms (1.1%)

Memory
-23.9MiB live, 74.3MiB allocated; 21ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
064296
190296
2114296
3200296
4697296
55016296
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(if (<=.f64 y #s(literal -2147344238779869/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)) (if (<=.f64 y #s(literal 9937248183729/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -2000000000000000115533219796231793404874534254192128274196083726469424668033849229312 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 6931674235302037/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -2000000000000000115533219796231793404874534254192128274196083726469424668033849229312 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 6931674235302037/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -5000000000000000362795857986593891805151712143905686412284171991986050862460344537226034090871620975870312988434337860580667376581818706885745182890019660896106312259126346160401605497716736 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y))) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 3199999999999999899627715453375217664 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
(if (<=.f64 x #s(literal -13500000000000000129956746780213248 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x)) (if (<=.f64 x #s(literal 320000000000000015059243038689750268529907245051732184456918705116743985004544 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)
Outputs
(+.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) #s(literal 8 binary64)) x) (/.f64 (*.f64 y z) #s(literal 2 binary64))) t)
(if (<=.f64 y #s(literal -2147344238779869/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)) (if (<=.f64 y #s(literal 9937248183729/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y))))
(if (or (<=.f64 y #s(literal -2147344238779869/26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008 binary64)) (not (<=.f64 y #s(literal 9937248183729/1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888 binary64)))) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 (fma.f64 #s(literal -1/2 binary64) z (/.f64 (fma.f64 #s(literal 1/8 binary64) x t) y)) y)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -2000000000000000115533219796231793404874534254192128274196083726469424668033849229312 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 6931674235302037/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 (*.f64 #s(literal -1/2 binary64) z) y t))))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -2000000000000000115533219796231793404874534254192128274196083726469424668033849229312 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 6931674235302037/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t))))
(if (or (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -2000000000000000115533219796231793404874534254192128274196083726469424668033849229312 binary64)) (not (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 6931674235302037/1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912 binary64)))) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal -1/2 binary64) (*.f64 z y) t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)))
(if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -5000000000000000362795857986593891805151712143905686412284171991986050862460344537226034090871620975870312988434337860580667376581818706885745182890019660896106312259126346160401605497716736 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y))) (if (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 3199999999999999899627715453375217664 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y)))))
(if (or (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal -5000000000000000362795857986593891805151712143905686412284171991986050862460344537226034090871620975870312988434337860580667376581818706885745182890019660896106312259126346160401605497716736 binary64)) (not (<=.f64 (/.f64 (*.f64 y z) #s(literal 2 binary64)) #s(literal 3199999999999999899627715453375217664 binary64)))) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal -1/2 binary64) (*.f64 z y))) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t)))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (fma.f64 #s(literal 1/8 binary64) x t))
(if (<=.f64 x #s(literal -13500000000000000129956746780213248 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x)) (if (<=.f64 x #s(literal 320000000000000015059243038689750268529907245051732184456918705116743985004544 binary64)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x))))
(if (or (<=.f64 x #s(literal -13500000000000000129956746780213248 binary64)) (not (<=.f64 x #s(literal 320000000000000015059243038689750268529907245051732184456918705116743985004544 binary64)))) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) (*.f64 #s(literal 1/8 binary64) x)) #s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t))
#s(approx (+ (- (* (/ 1 8) x) (/ (* y z) 2)) t) t)

derivations369.0ms (7.6%)

Memory
-2.0MiB live, 326.3MiB allocated; 37ms collecting garbage
Stop Event
done
Compiler

Compiled 322 to 71 computations (78% saved)

preprocess155.0ms (3.2%)

Memory
17.4MiB live, 170.9MiB allocated; 20ms collecting garbage
Remove

(sort y z)

Compiler

Compiled 744 to 242 computations (67.5% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...