Text.Parsec.Token:makeTokenParser from parsec-3.1.9, B

Time bar (total: 1.9s)

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.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 7 to 7 computations (0% saved)

sample897.0ms (46.1%)

Memory
27.2MiB live, 704.0MiB allocated; 956ms collecting garbage
Samples
662.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 417.0ms
ival-mult: 352.0ms (84.4% of total)
ival-add: 54.0ms (12.9% of total)
ival-true: 5.0ms (1.2% of total)
ival-assert: 3.0ms (0.7% of total)
adjust: 2.0ms (0.5% of total)
Bogosity

explain58.0ms (3%)

Memory
-32.1MiB live, 71.5MiB allocated; 29ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-y
00-0-(*.f64 (+.f64 x y) z)
00-0-(+.f64 x y)
00-0-z
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
28.0ms512×0valid
Compiler

Compiled 31 to 19 computations (38.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-add: 11.0ms (71.4% of total)
ival-mult: 3.0ms (19.5% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess26.0ms (1.3%)

Memory
33.1MiB live, 33.1MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02255
14355
29755
322951
431751
542151
649751
757551
861551
962551
055
075
195
2175
3325
4535
5825
61025
71345
81525
91725
101825
01825
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) z)
Outputs
(*.f64 (+.f64 x y) z)
(*.f64 z (+.f64 y x))
Symmetry

(negabs z)

(sort x y)

Compiler

Compiled 5 to 5 computations (0% saved)

eval0.0ms (0%)

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

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

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

Compiled 5 to 5 computations (0% saved)

simplify7.0ms (0.3%)

Memory
6.1MiB live, 6.1MiB allocated; 0ms collecting garbage
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(+.f64 x y)
cost-diff0
(*.f64 (+.f64 x y) z)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0511
0711
1911
21711
33211
45311
58211
610211
713411
815211
917211
1018211
018211
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) z)
(+.f64 x y)
x
y
z
Outputs
(*.f64 (+.f64 x y) z)
(*.f64 z (+.f64 y x))
(+.f64 x y)
(+.f64 y x)
x
y
z

localize40.0ms (2.1%)

Memory
-32.2MiB live, 14.7MiB allocated; 4ms collecting garbage
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(+.f64 x y)
accuracy0.00390625
(*.f64 (+.f64 x y) z)
Samples
35.0ms256×0valid
Compiler

Compiled 13 to 7 computations (46.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-mult: 27.0ms (93.8% of total)
ival-add: 1.0ms (3.5% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series4.0ms (0.2%)

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

9 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((* (+ x y) z) (+ x y))
0.0ms
x
@-inf
((* (+ x y) z) (+ x y))
0.0ms
x
@inf
((* (+ x y) z) (+ x y))
0.0ms
z
@-inf
((* (+ x y) z) (+ x y))
0.0ms
y
@inf
((* (+ x y) z) (+ x y))

simplify112.0ms (5.7%)

Memory
27.4MiB live, 73.1MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
055129
1155129
2438129
31330129
44254129
57719129
08260129
Stop Event
iter limit
node limit
Counts
15 → 15
Calls
Call 1
Inputs
#s(approx (* (+ x y) z) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (+ x y) #s(hole binary64 y))
#s(approx (+ x y) #s(hole binary64 (+ x y)))
#s(approx (* (+ x y) z) #s(hole binary64 (* x z)))
#s(approx (* (+ x y) z) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (+ x y) #s(hole binary64 x))
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* z (+ x y))))
Outputs
#s(approx (* (+ x y) z) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) (*.f64 z y))
#s(approx (* (+ x y) z) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 y))
#s(approx (+ x y) y)
#s(approx (+ x y) #s(hole binary64 (+ x y)))
#s(approx (+ x y) (+.f64 y x))
#s(approx (* (+ x y) z) #s(hole binary64 (* x z)))
#s(approx (* (+ x y) z) (*.f64 z x))
#s(approx (* (+ x y) z) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 x))
#s(approx (+ x y) x)
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (* (+ x y) z) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (* (+ x y) z) #s(hole binary64 (* z (+ x y))))
#s(approx (* (+ x y) z) (*.f64 (+.f64 y x) z))

rewrite204.0ms (10.5%)

Memory
-32.4MiB live, 160.0MiB allocated; 36ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058
078
1868
211378
084948
Stop Event
iter limit
node limit
iter limit
Counts
2 → 114
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) z)
(+.f64 x y)
Outputs
(*.f64 (cbrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (*.f64 z (+.f64 y x)) (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64))) (cbrt.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)) z)) (cbrt.f64 (+.f64 y x)))
(*.f64 (cbrt.f64 (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)) (+.f64 y x))) (cbrt.f64 z))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)))) (cbrt.f64 (sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)))))
(*.f64 (pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 z (+.f64 y x)) (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)) z) #s(literal 1/3 binary64)) (cbrt.f64 (+.f64 y x)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)) (+.f64 y x)) #s(literal 1/3 binary64)) (cbrt.f64 z))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 3 binary64)))
(*.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (sqrt.f64 (+.f64 y x)))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 y x)))
(*.f64 (*.f64 (+.f64 y x) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))) (neg.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (+.f64 y x)))
(*.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (sqrt.f64 (+.f64 y x)) (*.f64 (sqrt.f64 (+.f64 y x)) z))
(*.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) (+.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 (+.f64 y x)) z))
(*.f64 #s(literal 1 binary64) (*.f64 z (+.f64 y x)))
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 z (+.f64 y x))))) (sqrt.f64 (log.f64 (*.f64 z (+.f64 y x)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 z (+.f64 y x)))))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (pow.f64 (cbrt.f64 #s(literal 3 binary64)) #s(literal 2 binary64))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (neg.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64))
(pow.f64 (E.f64) (log.f64 (*.f64 z (+.f64 y x))))
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 3 binary64))
(pow.f64 (*.f64 z (+.f64 y x)) #s(literal 1 binary64))
(/.f64 (*.f64 (*.f64 (+.f64 y x) (-.f64 x y)) z) (-.f64 x y))
(/.f64 (*.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) z) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(/.f64 (*.f64 z (*.f64 (+.f64 y x) (-.f64 x y))) (-.f64 x y))
(/.f64 (*.f64 z (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(fma.f64 z y (*.f64 z x))
(fma.f64 z x (*.f64 z y))
(fma.f64 y z (*.f64 x z))
(fma.f64 x z (*.f64 y z))
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 3 binary64)))
(exp.f64 (log.f64 (*.f64 z (+.f64 y x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))))
(+.f64 (*.f64 y z) (*.f64 x z))
(+.f64 (*.f64 x z) (*.f64 y z))
(+.f64 (*.f64 z y) (*.f64 z x))
(+.f64 (*.f64 z x) (*.f64 z y))
(+.f64 (cosh.f64 (log.f64 (*.f64 z (+.f64 y x)))) (sinh.f64 (log.f64 (*.f64 z (+.f64 y x)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (+.f64 y x))) (*.f64 z (sqrt.f64 (+.f64 y x)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (+.f64 y x))) (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 z)) (*.f64 (+.f64 y x) (sqrt.f64 z))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (*.f64 (+.f64 y x) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(*.f64 (cbrt.f64 (pow.f64 (+.f64 y x) #s(literal 5/2 binary64))) (cbrt.f64 (sqrt.f64 (+.f64 y x))))
(*.f64 (cbrt.f64 (pow.f64 (*.f64 (+.f64 y x) (cbrt.f64 (+.f64 y x))) #s(literal 2 binary64))) (cbrt.f64 (cbrt.f64 (+.f64 y x))))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64)))) (cbrt.f64 (sqrt.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64)))))
(*.f64 (pow.f64 (pow.f64 (+.f64 y x) #s(literal 5/2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (sqrt.f64 (+.f64 y x))))
(*.f64 (pow.f64 (pow.f64 (*.f64 (+.f64 y x) (cbrt.f64 (+.f64 y x))) #s(literal 2 binary64)) #s(literal 1/3 binary64)) (cbrt.f64 (cbrt.f64 (+.f64 y x))))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sqrt.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) #s(literal 3 binary64)) (pow.f64 (sqrt.f64 (cbrt.f64 (+.f64 y x))) #s(literal 3 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 y x))) (neg.f64 (sqrt.f64 (+.f64 y x))))
(*.f64 (sqrt.f64 (+.f64 y x)) (sqrt.f64 (+.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64)) (cbrt.f64 (+.f64 y x)))
(*.f64 (cbrt.f64 (+.f64 y x)) (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (+.f64 y x))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (+.f64 y x)))) (sqrt.f64 (log.f64 (+.f64 y x))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (+.f64 y x))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (+.f64 y x))))
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (+.f64 y x)) (pow.f64 (cbrt.f64 #s(literal 3 binary64)) #s(literal 2 binary64))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (neg.f64 (sqrt.f64 (+.f64 y x))) #s(literal 2 binary64))
(pow.f64 (E.f64) (log.f64 (+.f64 y x)))
(pow.f64 (sqrt.f64 (+.f64 y x)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (pow.f64 (+.f64 y x) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 3 binary64))
(pow.f64 (+.f64 y x) #s(literal 1 binary64))
(/.f64 (-.f64 (*.f64 y y) (*.f64 x x)) (-.f64 y x))
(/.f64 (neg.f64 (*.f64 (+.f64 y x) (-.f64 x y))) (neg.f64 (-.f64 x y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (neg.f64 (fma.f64 y (-.f64 y x) (*.f64 x x))))
(/.f64 (*.f64 (+.f64 y x) (-.f64 x y)) (-.f64 x y))
(/.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 y y (-.f64 (*.f64 x x) (*.f64 y x))))
(/.f64 (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(cbrt.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (+.f64 y x) #s(literal 2 binary64)))
(-.f64 (/.f64 (*.f64 x x) (-.f64 x y)) (/.f64 (*.f64 y y) (-.f64 x y)))
(-.f64 y (*.f64 (neg.f64 (sqrt.f64 x)) (sqrt.f64 x)))
(-.f64 y (*.f64 (neg.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x)))
(-.f64 x (*.f64 (neg.f64 (sqrt.f64 y)) (sqrt.f64 y)))
(-.f64 x (*.f64 (neg.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (+.f64 y x) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (+.f64 y x))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (+.f64 y x) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (+.f64 y x))) #s(literal 3 binary64)))
(exp.f64 (log.f64 (+.f64 y x)))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (+.f64 y x)))) (log.f64 (sqrt.f64 (exp.f64 (+.f64 y x)))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (+.f64 y x))) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (exp.f64 (+.f64 y x)))))
(+.f64 (/.f64 (pow.f64 x #s(literal 3 binary64)) (fma.f64 y (-.f64 y x) (*.f64 x x))) (/.f64 (pow.f64 y #s(literal 3 binary64)) (fma.f64 y (-.f64 y x) (*.f64 x x))))
(+.f64 (cosh.f64 (log.f64 (+.f64 y x))) (sinh.f64 (log.f64 (+.f64 y x))))
(+.f64 y x)
(+.f64 x y)
(log.f64 (exp.f64 (+.f64 y x)))

eval12.0ms (0.6%)

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

Compiled 1 451 to 347 computations (76.1% saved)

prune4.0ms (0.2%)

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

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New1173120
Fresh000
Picked011
Done000
Total1174121
Accuracy
100.0%
Counts
121 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(fma.f64 z x (*.f64 z y))
100.0%
(*.f64 (+.f64 x y) z)
53.9%
(*.f64 #s(approx (+ x y) y) z)
54.2%
(*.f64 #s(approx (+ x y) x) z)
Compiler

Compiled 25 to 22 computations (12% saved)

simplify8.0ms (0.4%)

Memory
-36.0MiB live, 10.1MiB allocated; 3ms collecting garbage
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z y)
cost-diff1
(fma.f64 z x (*.f64 z y))
cost-diff0
#s(approx (+ x y) y)
cost-diff0
(*.f64 #s(approx (+ x y) y) z)
cost-diff0
#s(approx (+ x y) x)
cost-diff0
(*.f64 #s(approx (+ x y) x) z)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01040
01539
12539
23939
36239
410539
513639
618339
721239
822239
922739
022739
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
#s(approx (+ x y) x)
x
z
(*.f64 #s(approx (+ x y) y) z)
#s(approx (+ x y) y)
y
z
(fma.f64 z x (*.f64 z y))
z
x
(*.f64 z y)
y
Outputs
(*.f64 #s(approx (+ x y) x) z)
(*.f64 z #s(approx (+ x y) x))
#s(approx (+ x y) x)
x
z
(*.f64 #s(approx (+ x y) y) z)
#s(approx (+ x y) y)
y
z
(fma.f64 z x (*.f64 z y))
(*.f64 z (+.f64 y x))
z
x
(*.f64 z y)
y

localize22.0ms (1.1%)

Memory
20.2MiB live, 20.2MiB allocated; 0ms collecting garbage
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(*.f64 z y)
accuracy0.24999724760556022
(fma.f64 z x (*.f64 z y))
accuracy0.00390625
(*.f64 #s(approx (+ x y) y) z)
accuracy31.769034401799885
#s(approx (+ x y) y)
accuracy0.00390625
(*.f64 #s(approx (+ x y) x) z)
accuracy31.760270898228388
#s(approx (+ x y) x)
Samples
16.0ms256×0valid
Compiler

Compiled 35 to 10 computations (71.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
ival-mult: 5.0ms (68.8% of total)
ival-add: 2.0ms (27.5% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.3%)

Memory
5.0MiB live, 5.0MiB allocated; 0ms collecting garbage
Counts
6 → 25
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
#s(approx (+ x y) x)
(*.f64 #s(approx (+ x y) y) z)
#s(approx (+ x y) y)
(fma.f64 z x (*.f64 z y))
(*.f64 z y)
Outputs
#s(approx (* (+ x y) z) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (+ x y) #s(hole binary64 y))
#s(approx (+ x y) #s(hole binary64 (+ x y)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y z)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (* (+ x y) z) #s(hole binary64 (* x z)))
#s(approx (* (+ x y) z) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (+ x y) #s(hole binary64 x))
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x z)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (* (+ x y) z) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* z (+ (* -1 x) (* -1 y))))))
Calls

9 calls:

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

simplify99.0ms (5.1%)

Memory
-32.9MiB live, 73.9MiB allocated; 15ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
073231
1191231
2487231
31458231
44597231
08030231
Stop Event
iter limit
node limit
Counts
25 → 25
Calls
Call 1
Inputs
#s(approx (* (+ x y) z) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (+ x y) #s(hole binary64 y))
#s(approx (+ x y) #s(hole binary64 (+ x y)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y z)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (* (+ x y) z) #s(hole binary64 (* x z)))
#s(approx (* (+ x y) z) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (+ x y) #s(hole binary64 x))
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x z)))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* (+ x y) z) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1)))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (* (+ x y) z) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* z (+ (* -1 x) (* -1 y))))))
Outputs
#s(approx (* (+ x y) z) #s(hole binary64 (* y z)))
#s(approx (+ (* z x) (* z y)) (*.f64 z y))
#s(approx (* (+ x y) z) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 y))
#s(approx (+ x y) y)
#s(approx (+ x y) #s(hole binary64 (+ x y)))
#s(approx (+ x y) (+.f64 y x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y z)))
#s(approx (+ (* z x) (* z y)) (*.f64 z y))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (+ (* x z) (* y z))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (* (+ x y) z) #s(hole binary64 (* x z)))
#s(approx (+ (* z x) (* z y)) (*.f64 z x))
#s(approx (* (+ x y) z) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 x))
#s(approx (+ x y) x)
#s(approx (+ x y) #s(hole binary64 (* x (+ 1 (/ y x)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x z)))
#s(approx (+ (* z x) (* z y)) (*.f64 z x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* x (+ z (/ (* y z) x)))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* -1 (* x (- (* -1 (/ y x)) 1)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* x (+ (* -1 z) (* -1 (/ (* y z) x)))))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (* z y) #s(hole binary64 (* y z)))
#s(approx (* z y) (*.f64 z y))
#s(approx (* (+ x y) z) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* y (+ 1 (/ x y)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* y (+ z (/ (* x z) y)))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (* (+ x y) z) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ x y) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) 1)))))
#s(approx (+ x y) (+.f64 y x))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* y (+ (* -1 z) (* -1 (/ (* x z) y)))))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (* (+ x y) z) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* z (+ x y))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))
#s(approx (+ (* z x) (* z y)) #s(hole binary64 (* -1 (* z (+ (* -1 x) (* -1 y))))))
#s(approx (+ (* z x) (* z y)) (*.f64 (+.f64 y x) z))

rewrite235.0ms (12%)

Memory
31.9MiB live, 176.7MiB allocated; 18ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01033
01532
119032
2257232
0832932
Stop Event
iter limit
node limit
iter limit
Counts
6 → 268
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
#s(approx (+ x y) x)
(*.f64 #s(approx (+ x y) y) z)
#s(approx (+ x y) y)
(fma.f64 z x (*.f64 z y))
(*.f64 z y)
Outputs
(*.f64 (*.f64 z (sqrt.f64 #s(approx (+ x y) x))) (sqrt.f64 #s(approx (+ x y) x)))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64))) (cbrt.f64 #s(approx (+ x y) x)))
(*.f64 (*.f64 #s(approx (+ x y) x) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 #s(approx (+ x y) x) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 z #s(approx (+ x y) x)))) (neg.f64 (sqrt.f64 (*.f64 z #s(approx (+ x y) x)))))
(*.f64 (sqrt.f64 #s(approx (+ x y) x)) (*.f64 (sqrt.f64 #s(approx (+ x y) x)) z))
(*.f64 (sqrt.f64 (*.f64 z #s(approx (+ x y) x))) (sqrt.f64 (*.f64 z #s(approx (+ x y) x))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) #s(approx (+ x y) x)))
(*.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 #s(approx (+ x y) x)) z))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z #s(approx (+ x y) x))))
(*.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) (pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) #s(approx (+ x y) x)))
(*.f64 #s(literal 1 binary64) (*.f64 z #s(approx (+ x y) x)))
(*.f64 z #s(approx (+ x y) x))
(*.f64 #s(approx (+ x y) x) z)
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 z #s(approx (+ x y) x)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 3 binary64))
(pow.f64 (*.f64 z #s(approx (+ x y) x)) #s(literal 1 binary64))
(cbrt.f64 (*.f64 (pow.f64 z #s(literal 3 binary64)) (pow.f64 #s(approx (+ x y) x) #s(literal 3 binary64))))
(cbrt.f64 (*.f64 (pow.f64 #s(approx (+ x y) x) #s(literal 3 binary64)) (pow.f64 z #s(literal 3 binary64))))
(cbrt.f64 (pow.f64 (*.f64 z #s(approx (+ x y) x)) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (*.f64 z #s(approx (+ x y) x)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z #s(approx (+ x y) x)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z #s(approx (+ x y) x)) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 z #s(approx (+ x y) x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x))) (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x)))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 1 binary64))))
(+.f64 (cosh.f64 (log.f64 (*.f64 z #s(approx (+ x y) x)))) (sinh.f64 (log.f64 (*.f64 z #s(approx (+ x y) x)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 #s(approx (+ x y) x))) (*.f64 z (sqrt.f64 #s(approx (+ x y) x)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 #s(approx (+ x y) x))) (*.f64 z (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 z)) (*.f64 #s(approx (+ x y) x) (sqrt.f64 z))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (*.f64 #s(approx (+ x y) x) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x)))) (pow.f64 (cbrt.f64 (*.f64 z #s(approx (+ x y) x))) #s(literal 2 binary64))))
(log.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) x)))
(*.f64 (neg.f64 (sqrt.f64 #s(approx (+ x y) x))) (neg.f64 (sqrt.f64 #s(approx (+ x y) x))))
(*.f64 (sqrt.f64 #s(approx (+ x y) x)) (sqrt.f64 #s(approx (+ x y) x)))
(*.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64)) (cbrt.f64 #s(approx (+ x y) x)))
(*.f64 (cbrt.f64 #s(approx (+ x y) x)) (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) #s(approx (+ x y) x))
(pow.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (+ x y) x) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 3 binary64))
(pow.f64 #s(approx (+ x y) x) #s(literal 1 binary64))
#s(approx (+ x y) x)
(cbrt.f64 (pow.f64 #s(approx (+ x y) x) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 #s(approx (+ x y) x) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 #s(approx (+ x y) x))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ x y) x) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 #s(approx (+ x y) x))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ x y) x)) #s(literal 1 binary64)))
(exp.f64 (log.f64 #s(approx (+ x y) x)))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 #s(approx (+ x y) x)))) (log.f64 (sqrt.f64 (exp.f64 #s(approx (+ x y) x)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 #s(approx (+ x y) x))) (cbrt.f64 (exp.f64 #s(approx (+ x y) x))))) (log.f64 (cbrt.f64 (exp.f64 #s(approx (+ x y) x)))))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (+ x y) x)) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (+ x y) x)) #s(literal 1 binary64))))
(+.f64 (cosh.f64 (log.f64 #s(approx (+ x y) x))) (sinh.f64 (log.f64 #s(approx (+ x y) x))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 #s(approx (+ x y) x))) (pow.f64 (cbrt.f64 #s(approx (+ x y) x)) #s(literal 2 binary64))))
(log.f64 (exp.f64 #s(approx (+ x y) x)))
(*.f64 (*.f64 #s(approx (+ x y) y) (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 #s(approx (+ x y) y) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z))
(*.f64 (*.f64 z (sqrt.f64 #s(approx (+ x y) y))) (sqrt.f64 #s(approx (+ x y) y)))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64))) (cbrt.f64 #s(approx (+ x y) y)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 #s(approx (+ x y) y) z))) (neg.f64 (sqrt.f64 (*.f64 #s(approx (+ x y) y) z))))
(*.f64 (sqrt.f64 #s(approx (+ x y) y)) (*.f64 (sqrt.f64 #s(approx (+ x y) y)) z))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) #s(approx (+ x y) y)))
(*.f64 (sqrt.f64 (*.f64 #s(approx (+ x y) y) z)) (sqrt.f64 (*.f64 #s(approx (+ x y) y) z)))
(*.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64)) (*.f64 (cbrt.f64 #s(approx (+ x y) y)) z))
(*.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) #s(approx (+ x y) y)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)))
(*.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) (pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (+ x y) y) z))
(*.f64 #s(approx (+ x y) y) z)
(*.f64 z #s(approx (+ x y) y))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 #s(approx (+ x y) y) z) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 3 binary64))
(pow.f64 (*.f64 #s(approx (+ x y) y) z) #s(literal 1 binary64))
(cbrt.f64 (*.f64 (pow.f64 #s(approx (+ x y) y) #s(literal 3 binary64)) (pow.f64 z #s(literal 3 binary64))))
(cbrt.f64 (*.f64 (pow.f64 z #s(literal 3 binary64)) (pow.f64 #s(approx (+ x y) y) #s(literal 3 binary64))))
(cbrt.f64 (pow.f64 (*.f64 #s(approx (+ x y) y) z) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (*.f64 #s(approx (+ x y) y) z) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 #s(approx (+ x y) y) z))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 #s(approx (+ x y) y) z) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z)))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y))) (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y)))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 1 binary64))))
(+.f64 (cosh.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z))) (sinh.f64 (log.f64 (*.f64 #s(approx (+ x y) y) z))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 z)) (*.f64 #s(approx (+ x y) y) (sqrt.f64 z))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (*.f64 #s(approx (+ x y) y) (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 #s(approx (+ x y) y))) (*.f64 z (sqrt.f64 #s(approx (+ x y) y)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 #s(approx (+ x y) y))) (*.f64 z (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z))) (pow.f64 (cbrt.f64 (*.f64 #s(approx (+ x y) y) z)) #s(literal 2 binary64))))
(log.f64 (pow.f64 (exp.f64 z) #s(approx (+ x y) y)))
(*.f64 (neg.f64 (sqrt.f64 #s(approx (+ x y) y))) (neg.f64 (sqrt.f64 #s(approx (+ x y) y))))
(*.f64 (sqrt.f64 #s(approx (+ x y) y)) (sqrt.f64 #s(approx (+ x y) y)))
(*.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64)) (cbrt.f64 #s(approx (+ x y) y)))
(*.f64 (cbrt.f64 #s(approx (+ x y) y)) (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) #s(approx (+ x y) y))
(pow.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (+ x y) y) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 3 binary64))
(pow.f64 #s(approx (+ x y) y) #s(literal 1 binary64))
#s(approx (+ x y) y)
(cbrt.f64 (pow.f64 #s(approx (+ x y) y) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 #s(approx (+ x y) y) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 #s(approx (+ x y) y))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (+ x y) y) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 #s(approx (+ x y) y))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (+ x y) y)) #s(literal 1 binary64)))
(exp.f64 (log.f64 #s(approx (+ x y) y)))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 #s(approx (+ x y) y)))) (log.f64 (sqrt.f64 (exp.f64 #s(approx (+ x y) y)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 #s(approx (+ x y) y))) (cbrt.f64 (exp.f64 #s(approx (+ x y) y))))) (log.f64 (cbrt.f64 (exp.f64 #s(approx (+ x y) y)))))
(+.f64 (cosh.f64 (*.f64 (log.f64 #s(approx (+ x y) y)) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 #s(approx (+ x y) y)) #s(literal 1 binary64))))
(+.f64 (cosh.f64 (log.f64 #s(approx (+ x y) y))) (sinh.f64 (log.f64 #s(approx (+ x y) y))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 #s(approx (+ x y) y))) (pow.f64 (cbrt.f64 #s(approx (+ x y) y)) #s(literal 2 binary64))))
(log.f64 (exp.f64 #s(approx (+ x y) y)))
(*.f64 (*.f64 z (sqrt.f64 (+.f64 y x))) (sqrt.f64 (+.f64 y x)))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64))) (cbrt.f64 (+.f64 y x)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))) (neg.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))))
(*.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) (+.f64 y x)))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z (+.f64 y x))))
(*.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) (+.f64 y x)))
(*.f64 #s(literal 1 binary64) (*.f64 z (+.f64 y x)))
(*.f64 z (+.f64 y x))
(*.f64 (+.f64 y x) z)
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 3 binary64))
(pow.f64 (*.f64 z (+.f64 y x)) #s(literal 1 binary64))
(/.f64 (*.f64 z (*.f64 (+.f64 y x) (-.f64 x y))) (-.f64 x y))
(/.f64 (*.f64 z (+.f64 (pow.f64 y #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 y (-.f64 y x) (*.f64 x x)))
(/.f64 (-.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (pow.f64 (*.f64 z x) #s(literal 2 binary64))) (-.f64 (*.f64 z y) (*.f64 z x)))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) #s(literal 3 binary64)) (pow.f64 (*.f64 (neg.f64 z) y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z x) #s(literal 2 binary64)) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 (*.f64 z x) (*.f64 (neg.f64 z) y)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z x) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64)))) (neg.f64 (*.f64 z (-.f64 x y))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z x) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (*.f64 z y) (-.f64 (*.f64 z y) (*.f64 z x)) (pow.f64 (*.f64 z x) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) #s(literal 2 binary64)) (pow.f64 (*.f64 z y) #s(literal 2 binary64))) (*.f64 z (-.f64 x y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z x) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (-.f64 (pow.f64 (*.f64 z x) #s(literal 2 binary64)) (*.f64 (*.f64 (*.f64 z x) y) z))))
(/.f64 (+.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (pow.f64 (*.f64 z x) #s(literal 3 binary64))) (fma.f64 (*.f64 z y) (-.f64 (*.f64 z y) (*.f64 z x)) (pow.f64 (*.f64 z x) #s(literal 2 binary64))))
(fma.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y) (*.f64 z x))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (*.f64 z x))
(fma.f64 (*.f64 y (sqrt.f64 z)) (sqrt.f64 z) (*.f64 z x))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z) (*.f64 z x))
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) (*.f64 z y))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x) (*.f64 z y))
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) (*.f64 z y))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z) (*.f64 z y))
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (neg.f64 (sqrt.f64 (*.f64 z y))) (*.f64 z x))
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 z x))) (neg.f64 (sqrt.f64 (*.f64 z x))) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 z x))) (neg.f64 (sqrt.f64 (*.f64 z x))) (*.f64 z y))
(fma.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)) (*.f64 z x))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) z) (*.f64 z x))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y) (*.f64 z x))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) (*.f64 z y))
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) (*.f64 z y))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) (*.f64 z y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z y)) (*.f64 z x))
(fma.f64 (cbrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64)) (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) z) (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) y) (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) x) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) x) (*.f64 z y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z x)) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z x)) (*.f64 z y))
(fma.f64 (cbrt.f64 (*.f64 z x)) (pow.f64 (cbrt.f64 (*.f64 z x)) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (cbrt.f64 (*.f64 z x)) (pow.f64 (cbrt.f64 (*.f64 z x)) #s(literal 2 binary64)) (*.f64 z y))
(fma.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64)) (*.f64 (cbrt.f64 x) z) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64)) (*.f64 (cbrt.f64 x) z) (*.f64 z y))
(fma.f64 #s(literal 1 binary64) (*.f64 z x) (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 #s(literal 1 binary64) (*.f64 z x) (*.f64 z y))
(fma.f64 #s(literal 1 binary64) (*.f64 z y) (*.f64 z x))
(fma.f64 z y (*.f64 z x))
(fma.f64 z x (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 z x (*.f64 z y))
(fma.f64 y z (*.f64 z x))
(fma.f64 x z (*.f64 (neg.f64 (neg.f64 z)) y))
(fma.f64 x z (*.f64 z y))
(cbrt.f64 (*.f64 (pow.f64 z #s(literal 3 binary64)) (pow.f64 (+.f64 y x) #s(literal 3 binary64))))
(cbrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 2 binary64)))
(-.f64 (/.f64 (pow.f64 (*.f64 z x) #s(literal 2 binary64)) (*.f64 z (-.f64 x y))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)) (*.f64 z (-.f64 x y))))
(-.f64 (*.f64 z x) (*.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (sqrt.f64 (*.f64 z y))))
(-.f64 (*.f64 z x) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64))) (cbrt.f64 (*.f64 z y))))
(-.f64 (*.f64 z x) (*.f64 (neg.f64 y) z))
(-.f64 (*.f64 z x) (*.f64 (neg.f64 z) y))
(-.f64 (*.f64 z y) (*.f64 (neg.f64 (sqrt.f64 (*.f64 z x))) (sqrt.f64 (*.f64 z x))))
(-.f64 (*.f64 z y) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) #s(literal 2 binary64))) (cbrt.f64 (*.f64 z x))))
(-.f64 (*.f64 z y) (*.f64 (neg.f64 z) x))
(-.f64 (*.f64 z y) (*.f64 (neg.f64 x) z))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 z (+.f64 y x)) #s(literal 3 binary64))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 z (+.f64 y x))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 z (+.f64 y x))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x))) (cbrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 z (+.f64 y x))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 z (+.f64 y x))) #s(literal 1 binary64))))
(+.f64 (/.f64 (pow.f64 (*.f64 z x) #s(literal 3 binary64)) (fma.f64 (*.f64 z y) (-.f64 (*.f64 z y) (*.f64 z x)) (pow.f64 (*.f64 z x) #s(literal 2 binary64)))) (/.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) (fma.f64 (*.f64 z y) (-.f64 (*.f64 z y) (*.f64 z x)) (pow.f64 (*.f64 z x) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (*.f64 z (+.f64 y x)))) (sinh.f64 (log.f64 (*.f64 z (+.f64 y x)))))
(+.f64 (*.f64 z x) (*.f64 (neg.f64 (neg.f64 z)) y))
(+.f64 (*.f64 z x) (*.f64 z y))
(+.f64 (*.f64 z y) (*.f64 z x))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 (+.f64 y x))) (*.f64 z (sqrt.f64 (+.f64 y x)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (+.f64 y x))) (*.f64 z (pow.f64 (cbrt.f64 (+.f64 y x)) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (*.f64 z (+.f64 y x)))) (pow.f64 (cbrt.f64 (*.f64 z (+.f64 y x))) #s(literal 2 binary64))))
(log.f64 (pow.f64 (exp.f64 z) (+.f64 y x)))
(*.f64 (*.f64 z (sqrt.f64 y)) (sqrt.f64 y))
(*.f64 (*.f64 z (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y))
(*.f64 (*.f64 y (sqrt.f64 z)) (sqrt.f64 z))
(*.f64 (*.f64 y (pow.f64 (cbrt.f64 z) #s(literal 2 binary64))) (cbrt.f64 z))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 z y))) (neg.f64 (sqrt.f64 (*.f64 z y))))
(*.f64 (sqrt.f64 (*.f64 z y)) (sqrt.f64 (*.f64 z y)))
(*.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) z))
(*.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) y))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 z y)))
(*.f64 (cbrt.f64 (*.f64 z y)) (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) z))
(*.f64 (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)) (*.f64 (cbrt.f64 z) y))
(*.f64 #s(literal 1 binary64) (*.f64 z y))
(*.f64 z y)
(*.f64 y z)
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) (sqrt.f64 #s(literal 3 binary64))) (sqrt.f64 #s(literal 3 binary64)))
(pow.f64 (pow.f64 (cbrt.f64 (*.f64 z y)) (*.f64 (cbrt.f64 #s(literal 3 binary64)) (cbrt.f64 #s(literal 3 binary64)))) (cbrt.f64 #s(literal 3 binary64)))
(pow.f64 (sqrt.f64 (*.f64 z y)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 3 binary64))
(pow.f64 (*.f64 z y) #s(literal 1 binary64))
(cbrt.f64 (pow.f64 (*.f64 z y) #s(literal 3 binary64)))
(sqrt.f64 (pow.f64 (*.f64 z y) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 z y))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 z y))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 z y))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 z y)) #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 z y)))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) z))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z)) (cbrt.f64 (pow.f64 (exp.f64 y) z)))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) z))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (*.f64 z y)) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (*.f64 z y)) #s(literal 1 binary64))))
(+.f64 (cosh.f64 (log.f64 (*.f64 z y))) (sinh.f64 (log.f64 (*.f64 z y))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 y)) (*.f64 z (sqrt.f64 y))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 y)) (*.f64 z (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (sqrt.f64 z)) (*.f64 y (sqrt.f64 z))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 z)) (*.f64 y (pow.f64 (cbrt.f64 z) #s(literal 2 binary64)))))
(log.f64 (pow.f64 (exp.f64 (cbrt.f64 (*.f64 z y))) (pow.f64 (cbrt.f64 (*.f64 z y)) #s(literal 2 binary64))))
(log.f64 (pow.f64 (exp.f64 y) z))

eval34.0ms (1.7%)

Memory
-23.9MiB live, 62.6MiB allocated; 16ms collecting garbage
Compiler

Compiled 3 605 to 683 computations (81.1% saved)

prune5.0ms (0.3%)

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

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New2730273
Fresh000
Picked033
Done011
Total2734277
Accuracy
100.0%
Counts
277 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.6%
(fma.f64 z x (*.f64 z y))
100.0%
(*.f64 (+.f64 x y) z)
53.9%
(*.f64 #s(approx (+ x y) y) z)
54.2%
(*.f64 #s(approx (+ x y) x) z)
Compiler

Compiled 50 to 34 computations (32% saved)

regimes12.0ms (0.6%)

Memory
-15.8MiB live, 30.2MiB allocated; 3ms collecting garbage
Counts
4 → 1
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
(*.f64 #s(approx (+ x y) y) z)
(*.f64 (+.f64 x y) z)
(fma.f64 z x (*.f64 z y))
Outputs
(*.f64 (+.f64 x y) z)
Calls

5 calls:

4.0ms
(*.f64 (+.f64 x y) z)
2.0ms
z
2.0ms
y
2.0ms
x
2.0ms
(+.f64 x y)
Results
AccuracySegmentsBranch
100.0%1(+.f64 x y)
100.0%1(*.f64 (+.f64 x y) z)
100.0%1x
100.0%1y
100.0%1z
Compiler

Compiled 11 to 18 computations (-63.6% saved)

regimes7.0ms (0.3%)

Memory
12.1MiB live, 12.1MiB allocated; 0ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
(*.f64 #s(approx (+ x y) y) z)
Outputs
(*.f64 #s(approx (+ x y) x) z)
(*.f64 #s(approx (+ x y) y) z)
Calls

5 calls:

1.0ms
y
1.0ms
z
1.0ms
(+.f64 x y)
1.0ms
x
1.0ms
(*.f64 (+.f64 x y) z)
Results
AccuracySegmentsBranch
98.1%2(+.f64 x y)
98.1%2(*.f64 (+.f64 x y) z)
84.3%2x
86.7%2y
62.5%4z
Compiler

Compiled 11 to 18 computations (-63.6% saved)

regimes5.0ms (0.3%)

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

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 #s(approx (+ x y) x) z)
Outputs
(*.f64 #s(approx (+ x y) x) z)
Calls

5 calls:

1.0ms
(+.f64 x y)
1.0ms
x
1.0ms
z
1.0ms
y
1.0ms
(*.f64 (+.f64 x y) z)
Results
AccuracySegmentsBranch
54.2%1z
54.2%1x
54.2%1y
54.2%1(+.f64 x y)
54.2%1(*.f64 (+.f64 x y) z)
Compiler

Compiled 11 to 18 computations (-63.6% saved)

bsearch0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-8.0223157e-316
0.0
Compiler

Compiled 8 to 11 computations (-37.5% saved)

simplify65.0ms (3.3%)

Memory
-24.0MiB live, 35.2MiB allocated; 6ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01334
14134
24534
35034
46234
59534
628834
7243634
8564734
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (+.f64 x y) z)
(if (<=.f64 (*.f64 (+.f64 x y) z) #s(literal -101201127/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 #s(approx (+ x y) x) z) (*.f64 #s(approx (+ x y) y) z))
(*.f64 #s(approx (+ x y) x) z)
Outputs
(*.f64 (+.f64 x y) z)
(if (<=.f64 (*.f64 (+.f64 x y) z) #s(literal -101201127/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784 binary64)) (*.f64 #s(approx (+ x y) x) z) (*.f64 #s(approx (+ x y) y) z))
(*.f64 #s(approx (+ x y) x) z)

derivations63.0ms (3.2%)

Memory
33.2MiB live, 79.5MiB allocated; 2ms collecting garbage
Stop Event
done
Compiler

Compiled 34 to 13 computations (61.8% saved)

preprocess22.0ms (1.1%)

Memory
-3.3MiB live, 43.5MiB allocated; 2ms collecting garbage
Remove

(sort x y)

(negabs z)

Compiler

Compiled 118 to 76 computations (35.6% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...