Diagrams.Color.HSV:lerp from diagrams-contrib-1.3.0.5

Time bar (total: 4.5s)

analyze0.0ms (0%)

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 13 to 9 computations (30.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
Operation ival-sub, time spent: 0.0ms, 0.0% of total-time
Operation ival-add, time spent: 0.0ms, 0.0% of total-time
Operation ival-mult, time spent: 0.0ms, 0.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

sample1.5s (33.3%)

Results
1.1s6536×256valid
277.0ms1719×256infinite
0.0ms256valid
Precisions
Click to see histograms. Total time spent on operations: 346.0ms
Operation ival-mult, time spent: 219.0ms, 63.0% of total-time
Operation ival-sub, time spent: 64.0ms, 18.0% of total-time
Operation ival-add, time spent: 49.0ms, 14.0% of total-time
Operation const, time spent: 14.0ms, 4.0% of total-time
Bogosity

preprocess325.0ms (7.3%)

Algorithm
egg-herbie
Rules
2364×fma-neg
602×fma-define
392×distribute-rgt-in
390×unsub-neg
274×sub-neg
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
60-0-(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
00-0-1
00-0-(-.f64 1 x)
00-0-y
00-0-z
00-0-(*.f64 (-.f64 1 x) y)
00-0-(*.f64 x z)
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
+.f64(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))nan-rescue60
(*.f64 (-.f64 1 x) y)overflow39
(*.f64 x z)overflow33
Confusion
Predicted +Predicted -
+60
-0250
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+600
-00250
Precision?
1.0
Recall?
1.0
Iterations

Useful iterations: 9 (0.0ms)

IterNodesCost
040399
1102387
2236379
3682351
41707339
52872337
63242337
73282337
83286337
93286317
103929317
113929317
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(+.f64 (*.f64 (-.f64 1 (neg.f64 x)) y) (*.f64 (neg.f64 x) z))
(+.f64 (*.f64 (-.f64 1 x) (neg.f64 y)) (*.f64 x z))
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x (neg.f64 z)))
(neg.f64 (+.f64 (*.f64 (-.f64 1 (neg.f64 x)) y) (*.f64 (neg.f64 x) z)))
(neg.f64 (+.f64 (*.f64 (-.f64 1 x) (neg.f64 y)) (*.f64 x z)))
(neg.f64 (+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x (neg.f64 z))))
(+.f64 (*.f64 (-.f64 1 y) x) (*.f64 y z))
(+.f64 (*.f64 (-.f64 1 z) y) (*.f64 z x))
(+.f64 (*.f64 (-.f64 1 x) z) (*.f64 x y))
Outputs
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(fma.f64 (-.f64 1 x) y (*.f64 x z))
(fma.f64 x z (*.f64 (-.f64 1 x) y))
(-.f64 y (*.f64 x (-.f64 y z)))
(+.f64 y (*.f64 x (-.f64 z y)))
(fma.f64 x (-.f64 z y) y)
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(fma.f64 (-.f64 1 x) y (*.f64 x z))
(fma.f64 x z (*.f64 (-.f64 1 x) y))
(-.f64 y (*.f64 x (-.f64 y z)))
(+.f64 y (*.f64 x (-.f64 z y)))
(fma.f64 x (-.f64 z y) y)
(+.f64 (*.f64 (-.f64 1 (neg.f64 x)) y) (*.f64 (neg.f64 x) z))
(fma.f64 (-.f64 1 (neg.f64 x)) y (*.f64 x (neg.f64 z)))
(-.f64 (*.f64 y (+.f64 1 x)) (*.f64 x z))
(+.f64 y (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 y z) y)
(+.f64 (*.f64 (-.f64 1 x) (neg.f64 y)) (*.f64 x z))
(fma.f64 (-.f64 1 x) (neg.f64 y) (*.f64 x z))
(-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y))
(fma.f64 x z (*.f64 y (+.f64 x -1)))
(-.f64 (*.f64 x (+.f64 y z)) y)
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x (neg.f64 z)))
(fma.f64 (-.f64 1 x) y (*.f64 x (neg.f64 z)))
(-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(-.f64 y (*.f64 x (+.f64 y z)))
(neg.f64 (+.f64 (*.f64 (-.f64 1 (neg.f64 x)) y) (*.f64 (neg.f64 x) z)))
(neg.f64 (fma.f64 (-.f64 1 (neg.f64 x)) y (*.f64 x (neg.f64 z))))
(-.f64 (*.f64 x z) (*.f64 y (+.f64 1 x)))
(fma.f64 y (-.f64 -1 x) (*.f64 x z))
(-.f64 (*.f64 x (-.f64 z y)) y)
(neg.f64 (+.f64 (*.f64 (-.f64 1 x) (neg.f64 y)) (*.f64 x z)))
(fma.f64 (-.f64 1 x) y (*.f64 x (neg.f64 z)))
(-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(-.f64 y (*.f64 x (+.f64 y z)))
(neg.f64 (+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x (neg.f64 z))))
(fma.f64 (-.f64 1 x) (neg.f64 y) (*.f64 x z))
(-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y))
(fma.f64 x z (*.f64 y (+.f64 x -1)))
(-.f64 (*.f64 x (+.f64 y z)) y)
(+.f64 (*.f64 (-.f64 1 y) x) (*.f64 y z))
(fma.f64 (-.f64 1 y) x (*.f64 y z))
(fma.f64 x (-.f64 1 y) (*.f64 y z))
(+.f64 x (*.f64 y (-.f64 z x)))
(fma.f64 y (-.f64 z x) x)
(+.f64 (*.f64 (-.f64 1 z) y) (*.f64 z x))
(fma.f64 (-.f64 1 z) y (*.f64 x z))
(fma.f64 x z (*.f64 y (-.f64 1 z)))
(-.f64 y (*.f64 z (-.f64 y x)))
(fma.f64 z (-.f64 x y) y)
(+.f64 (*.f64 (-.f64 1 x) z) (*.f64 x y))
(fma.f64 (-.f64 1 x) z (*.f64 x y))
(fma.f64 x y (*.f64 (-.f64 1 x) z))
(+.f64 z (*.f64 x (-.f64 y z)))
(fma.f64 x (-.f64 y z) z)
Compiler

Compiled 80 to 46 computations (42.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
Operation ival-mult, time spent: 15.0ms, 55.0% of total-time
Operation ival-sub, time spent: 8.0ms, 29.0% of total-time
Operation ival-add, time spent: 3.0ms, 11.0% of total-time
Operation const, time spent: 2.0ms, 7.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 39 to 18 computations (53.8% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 y (*.f64 x (-.f64 y z)))
Compiler

Compiled 10 to 6 computations (40% saved)

localize32.0ms (0.7%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 x (-.f64 y z))
Compiler

Compiled 22 to 7 computations (68.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 7.0ms
Operation ival-sub, time spent: 4.0ms, 59.0% of total-time
Operation ival-mult, time spent: 2.0ms, 30.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

series7.0ms (0.1%)

Counts
1 → 24
Calls
Call 1
Inputs
#<alt (*.f64 x (-.f64 y z))>
Outputs
#<alt (*.f64 -1 (*.f64 x z))>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (*.f64 x y)>
#<alt (*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 x y)>
#<alt (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))>
#<alt (*.f64 x y)>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))>
#<alt (*.f64 -1 (*.f64 x z))>
#<alt (*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))>
#<alt (*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))>
#<alt (*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))>
#<alt (*.f64 -1 (*.f64 x z))>
#<alt (*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))>
Calls

9 calls:

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

rewrite200.0ms (4.5%)

Algorithm
batch-egg-rewrite
Rules
996×unpow-prod-down
718×prod-diff
577×log1p-expm1-u
577×expm1-log1p-u
572×log-prod
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01122
111722
2153022
Stop Event
node limit
Counts
1 → 29
Calls
Call 1
Inputs
(*.f64 x (-.f64 y z))
Outputs
(+.f64 0 (*.f64 x (-.f64 y z)))
(+.f64 (*.f64 x y) (*.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 (neg.f64 z) x))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 y z)))) 1)
(/.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) x) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))
(pow.f64 (*.f64 x (-.f64 y z)) 1)
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 3)
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) 2)
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))
(log.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 y z))))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 y z))))
(exp.f64 (log.f64 (*.f64 x (-.f64 y z))))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1) 1))
(fma.f64 x y (*.f64 x (neg.f64 z)))
(fma.f64 y x (*.f64 (neg.f64 z) x))

simplify76.0ms (1.7%)

Algorithm
egg-herbie
Rules
824×distribute-lft-neg-out
788×unsub-neg
640×*-commutative
616×distribute-lft-neg-in
588×distribute-rgt-neg-out
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01091359
12331359
26381359
323861359
448161311
Stop Event
node limit
Counts
53 → 45
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 x z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x y)
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 x y)
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 -1 (*.f64 x z))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 -1 (*.f64 x z))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(+.f64 0 (*.f64 x (-.f64 y z)))
(+.f64 (*.f64 x y) (*.f64 x (neg.f64 z)))
(+.f64 (*.f64 y x) (*.f64 (neg.f64 z) x))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 y z)))) 1)
(/.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) x) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))
(pow.f64 (*.f64 x (-.f64 y z)) 1)
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 3)
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) 1/2)
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) 2)
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))
(log.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 y z))))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 y z))))
(exp.f64 (log.f64 (*.f64 x (-.f64 y z))))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) 3))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3)) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) 2))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1) 1))
(fma.f64 x y (*.f64 x (neg.f64 z)))
(fma.f64 y x (*.f64 (neg.f64 z) x))
Outputs
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(*.f64 x y)
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 y (+.f64 x (*.f64 -1 (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 x y)
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 y (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x z) y))))
(*.f64 x (-.f64 y z))
(*.f64 x y)
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 -1 (*.f64 x z)) (*.f64 x y))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 x (-.f64 y z))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 x (-.f64 y z))
(*.f64 z (+.f64 (*.f64 -1 x) (/.f64 (*.f64 x y) z)))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 x z))
(*.f64 x (neg.f64 z))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(*.f64 x (-.f64 y z))
(*.f64 -1 (*.f64 z (+.f64 x (*.f64 -1 (/.f64 (*.f64 x y) z)))))
(*.f64 x (-.f64 y z))
(+.f64 0 (*.f64 x (-.f64 y z)))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 x y) (*.f64 x (neg.f64 z)))
(*.f64 x (-.f64 y z))
(+.f64 (*.f64 y x) (*.f64 (neg.f64 z) x))
(*.f64 x (-.f64 y z))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))))
(-.f64 (exp.f64 (log1p.f64 (*.f64 x (-.f64 y z)))) 1)
(*.f64 x (-.f64 y z))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 z y) (pow.f64 y 2)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (/.f64 x (fma.f64 z (+.f64 z y) (pow.f64 y 2))))
(*.f64 x (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (fma.f64 z (+.f64 z y) (pow.f64 y 2))))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 2) (pow.f64 z 2))) (+.f64 y z))
(*.f64 x (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 z y)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (/.f64 x (+.f64 z y)))
(*.f64 x (*.f64 (-.f64 y z) 1))
(/.f64 (*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) x) (fma.f64 z (+.f64 y z) (pow.f64 y 2)))
(/.f64 (*.f64 x (-.f64 (pow.f64 y 3) (pow.f64 z 3))) (fma.f64 z (+.f64 z y) (pow.f64 y 2)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (/.f64 x (fma.f64 z (+.f64 z y) (pow.f64 y 2))))
(*.f64 x (/.f64 (-.f64 (pow.f64 y 3) (pow.f64 z 3)) (fma.f64 z (+.f64 z y) (pow.f64 y 2))))
(/.f64 (*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) x) (+.f64 y z))
(*.f64 x (/.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (+.f64 z y)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 z 2)) (/.f64 x (+.f64 z y)))
(*.f64 x (*.f64 (-.f64 y z) 1))
(pow.f64 (*.f64 x (-.f64 y z)) 1)
(*.f64 x (-.f64 y z))
(pow.f64 (cbrt.f64 (*.f64 x (-.f64 y z))) 3)
(*.f64 x (-.f64 y z))
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2) 1/2)
(*.f64 x (-.f64 y z))
(pow.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3) 1/3)
(*.f64 x (-.f64 y z))
(pow.f64 (sqrt.f64 (*.f64 x (-.f64 y z))) 2)
(*.f64 x (-.f64 y z))
(sqrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 2))
(*.f64 x (-.f64 y z))
(log.f64 (pow.f64 (exp.f64 x) (-.f64 y z)))
(*.f64 x (-.f64 y z))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 x (-.f64 y z)))))
(*.f64 x (-.f64 y z))
(cbrt.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3))
(*.f64 x (-.f64 y z))
(expm1.f64 (log1p.f64 (*.f64 x (-.f64 y z))))
(*.f64 x (-.f64 y z))
(log1p.f64 (expm1.f64 (*.f64 x (-.f64 y z))))
(*.f64 x (-.f64 y z))
(exp.f64 (log.f64 (*.f64 x (-.f64 y z))))
(*.f64 x (-.f64 y z))
(exp.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1))
(*.f64 x (-.f64 y z))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 x (-.f64 y z)))) 3))
(*.f64 x (-.f64 y z))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 x (-.f64 y z)) 3)) 1/3))
(*.f64 x (-.f64 y z))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 x (-.f64 y z)))) 2))
(*.f64 x (-.f64 y z))
(exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 x (-.f64 y z))) 1) 1))
(*.f64 x (-.f64 y z))
(fma.f64 x y (*.f64 x (neg.f64 z)))
(*.f64 x (-.f64 y z))
(fma.f64 y x (*.f64 (neg.f64 z) x))
(*.f64 x (-.f64 y z))

eval10.0ms (0.2%)

Compiler

Compiled 553 to 242 computations (56.2% saved)

prune12.0ms (0.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New43245
Fresh000
Picked011
Done000
Total43346
Accuracy
100.0%
Counts
46 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 y (*.f64 x (-.f64 y z)))
74.3%
(-.f64 y (*.f64 x (neg.f64 z)))
65.1%
(-.f64 y (*.f64 x y))
Compiler

Compiled 27 to 17 computations (37% saved)

localize40.0ms (0.9%)

Localize:

Found 2 expressions with local error:

NewAccuracyProgram
100.0%
(-.f64 y (*.f64 x (neg.f64 z)))
100.0%
(-.f64 y (*.f64 x y))
Compiler

Compiled 29 to 9 computations (69% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
Operation ival-mult, time spent: 4.0ms, 48.0% of total-time
Operation ival-sub, time spent: 3.0ms, 36.0% of total-time
Operation ival-neg, time spent: 1.0ms, 12.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

series7.0ms (0.2%)

Counts
2 → 60
Calls
Call 1
Inputs
#<alt (-.f64 y (*.f64 x y))>
#<alt (-.f64 y (*.f64 x (neg.f64 z)))>
Outputs
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (-.f64 1 x))>
#<alt (*.f64 y (+.f64 1 (*.f64 -1 x)))>
#<alt (*.f64 y (+.f64 1 (*.f64 -1 x)))>
#<alt (*.f64 y (+.f64 1 (*.f64 -1 x)))>
#<alt (*.f64 y (+.f64 1 (*.f64 -1 x)))>
#<alt y>
#<alt (+.f64 y (*.f64 -1 (*.f64 x y)))>
#<alt (+.f64 y (*.f64 -1 (*.f64 x y)))>
#<alt (+.f64 y (*.f64 -1 (*.f64 x y)))>
#<alt (*.f64 -1 (*.f64 x y))>
#<alt (*.f64 x (-.f64 (/.f64 y x) y))>
#<alt (*.f64 x (-.f64 (/.f64 y x) y))>
#<alt (*.f64 x (-.f64 (/.f64 y x) y))>
#<alt (*.f64 -1 (*.f64 x y))>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))>
#<alt (*.f64 x z)>
#<alt (-.f64 y (*.f64 -1 (*.f64 x z)))>
#<alt (-.f64 y (*.f64 -1 (*.f64 x z)))>
#<alt (-.f64 y (*.f64 -1 (*.f64 x z)))>
#<alt y>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt y>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
#<alt y>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (*.f64 x z)>
#<alt (*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))>
#<alt (*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))>
#<alt (*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))>
#<alt (*.f64 x z)>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))>
#<alt (*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))>
#<alt y>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (*.f64 x z)>
#<alt (*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))>
#<alt (*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))>
#<alt (*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))>
#<alt (*.f64 x z)>
#<alt (*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))>
#<alt (*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))>
#<alt (*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))>
Calls

15 calls:

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

rewrite120.0ms (2.7%)

Algorithm
batch-egg-rewrite
Rules
950×log-prod
902×log1p-expm1-u
902×expm1-log1p-u
772×fma-define
304×expm1-undefine
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01548
119741
2299137
Stop Event
node limit
Counts
2 → 200
Calls
Call 1
Inputs
(-.f64 y (*.f64 x y))
(-.f64 y (*.f64 x (neg.f64 z)))
Outputs
(+.f64 y (*.f64 y (neg.f64 x)))
(+.f64 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(+.f64 (*.f64 y (neg.f64 x)) y)
(+.f64 0 (*.f64 y (-.f64 1 x)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))) (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(*.f64 y (+.f64 1 (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(*.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 1 (*.f64 y (-.f64 1 x)))
(*.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))))
(*.f64 (fma.f64 -1 x 1) y)
(/.f64 1 (/.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))))
(/.f64 1 (/.f64 (fma.f64 y x y) (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (fma.f64 y x y)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y (neg.f64 x)) 3)) (fma.f64 y y (-.f64 (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x))) (*.f64 y (*.f64 y (neg.f64 x))))))
(/.f64 (-.f64 (pow.f64 y 2) (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x)))) (-.f64 y (*.f64 y (neg.f64 x))))
(pow.f64 (*.f64 y (-.f64 1 x)) 1)
(pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 3)
(pow.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) 2)
(sqrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2))
(log.f64 (exp.f64 (*.f64 y (-.f64 1 x))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 1 x)))))
(log.f64 (*.f64 (exp.f64 y) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (exp.f64 (*.f64 y (neg.f64 x)))))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (exp.f64 y)))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (exp.f64 y)))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (+.f64 1 (expm1.f64 y))))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) y)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3))
(expm1.f64 (log1p.f64 (*.f64 y (-.f64 1 x))))
(log1p.f64 (expm1.f64 (*.f64 y (-.f64 1 x))))
(exp.f64 (log.f64 (*.f64 y (-.f64 1 x))))
(exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 1 x))) 1))
(fma.f64 y 1 (*.f64 y (neg.f64 x)))
(fma.f64 y 1 (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 y (neg.f64 x) y)
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 x (neg.f64 y) y)
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 1 y (*.f64 y (neg.f64 x)))
(fma.f64 1 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 1 (*.f64 y (neg.f64 x)) y)
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (cbrt.f64 (*.f64 y x))) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 y (neg.f64 x)))
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y (neg.f64 x)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y x)) (neg.f64 (sqrt.f64 (*.f64 y x))) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y (neg.f64 x)))
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 -1 (*.f64 y x) y)
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (neg.f64 x) y y)
(fma.f64 (neg.f64 y) x y)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)) y)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y (neg.f64 x))) (cbrt.f64 (*.f64 y (neg.f64 x)))) (cbrt.f64 (*.f64 y (neg.f64 x))) y)
(fma.f64 (sqrt.f64 (*.f64 y (neg.f64 x))) (sqrt.f64 (*.f64 y (neg.f64 x))) y)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)) y)
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (*.f64 (neg.f64 x) 1) y y)
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) y)
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 y)) (sqrt.f64 y) y)
(+.f64 y (*.f64 x z))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(+.f64 (*.f64 x z) y)
(+.f64 0 (fma.f64 x z y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y))) (cbrt.f64 (exp.f64 (fma.f64 x z y))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))))
(*.f64 (fma.f64 x z y) 1)
(*.f64 1 (fma.f64 x z y))
(*.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)))
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(*.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)))
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))))
(/.f64 1 (/.f64 (fma.f64 x z y) (pow.f64 (fma.f64 x z y) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(/.f64 (pow.f64 (fma.f64 x z y) 2) (fma.f64 x z y))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))) (neg.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (neg.f64 (pow.f64 (fma.f64 x z y) 2)) (neg.f64 (fma.f64 x z y)))
(pow.f64 (fma.f64 x z y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(log.f64 (exp.f64 (fma.f64 x z y)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (exp.f64 y)))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(hypot.f64 y (*.f64 x z))
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(exp.f64 (log.f64 (fma.f64 x z y)))
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(fma.f64 y 1 (*.f64 x z))
(fma.f64 x z y)
(fma.f64 z x y)
(fma.f64 z (neg.f64 x) y)
(fma.f64 (fma.f64 x z y) 1 (fma.f64 z x (*.f64 x z)))
(fma.f64 (fma.f64 x z y) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 1 y (*.f64 x z))
(fma.f64 1 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(fma.f64 1 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 1 (*.f64 x z) y)
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (neg.f64 (cbrt.f64 (*.f64 x z))) y)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (neg.f64 (sqrt.f64 (*.f64 x z))) y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 z x (*.f64 x z)))
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (*.f64 x z) 1 y)
(fma.f64 -1 (*.f64 x z) y)
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (neg.f64 x) z y)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 x z))) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 z x (*.f64 x z)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2)) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (*.f64 (neg.f64 x) 1) z y)
(fma.f64 (*.f64 x -1) z y)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) -1) z y)

simplify119.0ms (2.7%)

Algorithm
egg-herbie
Rules
810×distribute-lft-in
764×distribute-rgt-in
760×associate-/l*
576×*-commutative
522×associate-/r*
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
04118409
19107505
224977245
Stop Event
node limit
Counts
260 → 243
Calls
Call 1
Inputs
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
y
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(*.f64 -1 (*.f64 x y))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 -1 (*.f64 x y))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 x z)
(-.f64 y (*.f64 -1 (*.f64 x z)))
(-.f64 y (*.f64 -1 (*.f64 x z)))
(-.f64 y (*.f64 -1 (*.f64 x z)))
y
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
y
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
y
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(*.f64 x z)
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x z)
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
y
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(*.f64 x z)
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 x z)
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(+.f64 y (*.f64 y (neg.f64 x)))
(+.f64 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(+.f64 (*.f64 y (neg.f64 x)) y)
(+.f64 0 (*.f64 y (-.f64 1 x)))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))) (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(*.f64 y (+.f64 1 (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(*.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 1 (*.f64 y (-.f64 1 x)))
(*.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))))
(*.f64 (fma.f64 -1 x 1) y)
(/.f64 1 (/.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))))
(/.f64 1 (/.f64 (fma.f64 y x y) (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (fma.f64 y x y)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y (neg.f64 x)) 3)) (fma.f64 y y (-.f64 (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x))) (*.f64 y (*.f64 y (neg.f64 x))))))
(/.f64 (-.f64 (pow.f64 y 2) (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x)))) (-.f64 y (*.f64 y (neg.f64 x))))
(pow.f64 (*.f64 y (-.f64 1 x)) 1)
(pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 3)
(pow.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) 2)
(sqrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2))
(log.f64 (exp.f64 (*.f64 y (-.f64 1 x))))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 1 x)))))
(log.f64 (*.f64 (exp.f64 y) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (exp.f64 (*.f64 y (neg.f64 x)))))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (exp.f64 y)))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (exp.f64 y)))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (+.f64 1 (expm1.f64 y))))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) y)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(cbrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3))
(expm1.f64 (log1p.f64 (*.f64 y (-.f64 1 x))))
(log1p.f64 (expm1.f64 (*.f64 y (-.f64 1 x))))
(exp.f64 (log.f64 (*.f64 y (-.f64 1 x))))
(exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 1 x))) 1))
(fma.f64 y 1 (*.f64 y (neg.f64 x)))
(fma.f64 y 1 (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 y (neg.f64 x) y)
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 x (neg.f64 y) y)
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 1 y (*.f64 y (neg.f64 x)))
(fma.f64 1 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 1 (*.f64 y (neg.f64 x)) y)
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (cbrt.f64 (*.f64 y x))) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 y (neg.f64 x)))
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y (neg.f64 x)))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (sqrt.f64 (*.f64 y x)) (neg.f64 (sqrt.f64 (*.f64 y x))) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y (neg.f64 x)))
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 -1 (*.f64 y x) y)
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (neg.f64 x) y y)
(fma.f64 (neg.f64 y) x y)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)) y)
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y (neg.f64 x))) (cbrt.f64 (*.f64 y (neg.f64 x)))) (cbrt.f64 (*.f64 y (neg.f64 x))) y)
(fma.f64 (sqrt.f64 (*.f64 y (neg.f64 x))) (sqrt.f64 (*.f64 y (neg.f64 x))) y)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)) y)
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (*.f64 (neg.f64 x) 1) y y)
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) y)
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 y)) (sqrt.f64 y) y)
(+.f64 y (*.f64 x z))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(+.f64 (*.f64 x z) y)
(+.f64 0 (fma.f64 x z y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y))) (cbrt.f64 (exp.f64 (fma.f64 x z y))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))))
(*.f64 (fma.f64 x z y) 1)
(*.f64 1 (fma.f64 x z y))
(*.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)))
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(*.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)))
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))))
(/.f64 1 (/.f64 (fma.f64 x z y) (pow.f64 (fma.f64 x z y) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(/.f64 (pow.f64 (fma.f64 x z y) 2) (fma.f64 x z y))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))) (neg.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (neg.f64 (pow.f64 (fma.f64 x z y) 2)) (neg.f64 (fma.f64 x z y)))
(pow.f64 (fma.f64 x z y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(log.f64 (exp.f64 (fma.f64 x z y)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (exp.f64 y)))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(hypot.f64 y (*.f64 x z))
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(exp.f64 (log.f64 (fma.f64 x z y)))
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(fma.f64 y 1 (*.f64 x z))
(fma.f64 x z y)
(fma.f64 z x y)
(fma.f64 z (neg.f64 x) y)
(fma.f64 (fma.f64 x z y) 1 (fma.f64 z x (*.f64 x z)))
(fma.f64 (fma.f64 x z y) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 1 y (*.f64 x z))
(fma.f64 1 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(fma.f64 1 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 1 (*.f64 x z) y)
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (neg.f64 (cbrt.f64 (*.f64 x z))) y)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (neg.f64 (sqrt.f64 (*.f64 x z))) y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 z x (*.f64 x z)))
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (*.f64 x z) 1 y)
(fma.f64 -1 (*.f64 x z) y)
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (neg.f64 x) z y)
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 x z))) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 z x (*.f64 x z)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2)) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (*.f64 (neg.f64 x) 1) z y)
(fma.f64 (*.f64 x -1) z y)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 (neg.f64 x) -1) z y)
Outputs
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (-.f64 1 x))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (-.f64 1 x))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (-.f64 1 x))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(*.f64 y (-.f64 1 x))
y
(+.f64 y (*.f64 -1 (*.f64 x y)))
(*.f64 y (-.f64 1 x))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(*.f64 y (-.f64 1 x))
(+.f64 y (*.f64 -1 (*.f64 x y)))
(*.f64 y (-.f64 1 x))
(*.f64 -1 (*.f64 x y))
(*.f64 y (neg.f64 x))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 -1 (*.f64 x y))
(*.f64 y (neg.f64 x))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) (*.f64 -1 y))))
(*.f64 x (-.f64 (/.f64 y x) y))
(*.f64 x z)
(-.f64 y (*.f64 -1 (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(-.f64 y (*.f64 -1 (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(-.f64 y (*.f64 -1 (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
y
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
y
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 y (+.f64 1 (*.f64 x (/.f64 z y))))
(*.f64 y (fma.f64 x (/.f64 z y) 1))
y
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
(*.f64 x (-.f64 (/.f64 y x) (*.f64 -1 z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
(*.f64 x z)
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
(*.f64 -1 (*.f64 x (-.f64 (*.f64 -1 (/.f64 y x)) z)))
(*.f64 x (-.f64 (/.f64 y x) (neg.f64 z)))
(*.f64 x (+.f64 (/.f64 y x) z))
y
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 z (-.f64 (/.f64 y z) (*.f64 -1 x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 x z)
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 -1 (*.f64 z (-.f64 (*.f64 -1 (/.f64 y z)) x)))
(*.f64 z (-.f64 (/.f64 y z) (neg.f64 x)))
(*.f64 z (+.f64 x (/.f64 y z)))
(+.f64 y (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(+.f64 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 y (neg.f64 x)) y)
(*.f64 y (-.f64 1 x))
(+.f64 0 (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))) (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x)))))) (log.f64 (cbrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 1 x))) (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 1 x))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 y) (-.f64 1 x)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 y (-.f64 1 x))))))
(*.f64 2 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 y) (-.f64 1 x)))))
(*.f64 y (+.f64 1 (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(*.f64 y (-.f64 1 x))
(*.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 y (-.f64 1 x))
(*.f64 1 (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(*.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2))
(*.f64 y (-.f64 1 x))
(*.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(*.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))))
(*.f64 (fma.f64 -1 x 1) y)
(*.f64 y (-.f64 1 x))
(/.f64 1 (/.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)) (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(/.f64 1 (/.f64 (fma.f64 y x y) (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3))) (neg.f64 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2))) (neg.f64 (fma.f64 y x y)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 y (neg.f64 x)) 3)) (fma.f64 y y (-.f64 (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x))) (*.f64 y (*.f64 y (neg.f64 x))))))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(/.f64 (-.f64 (pow.f64 y 2) (*.f64 (*.f64 y (neg.f64 x)) (*.f64 y (neg.f64 x)))) (-.f64 y (*.f64 y (neg.f64 x))))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(pow.f64 (*.f64 y (-.f64 1 x)) 1)
(*.f64 y (-.f64 1 x))
(pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 3)
(*.f64 y (-.f64 1 x))
(pow.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3) 1/3)
(*.f64 y (-.f64 1 x))
(pow.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) 2)
(*.f64 y (-.f64 1 x))
(sqrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2))
(*.f64 y (-.f64 1 x))
(log.f64 (exp.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(log.f64 (+.f64 1 (expm1.f64 (*.f64 y (-.f64 1 x)))))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (exp.f64 y) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (/.f64 1 (pow.f64 (exp.f64 x) y))))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (exp.f64 (*.f64 y (neg.f64 x)))))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (exp.f64 y)))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 x) y)) (+.f64 1 (expm1.f64 y))))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (exp.f64 y)))
(*.f64 y (-.f64 1 x))
(log.f64 (*.f64 (exp.f64 (*.f64 y (neg.f64 x))) (+.f64 1 (expm1.f64 y))))
(*.f64 y (-.f64 1 x))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(*.f64 y (-.f64 1 x))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) y)))
(*.f64 y (-.f64 1 x))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 y x)))))
(*.f64 y (-.f64 1 x))
(cbrt.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 3))
(*.f64 y (-.f64 1 x))
(expm1.f64 (log1p.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(log1p.f64 (expm1.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(exp.f64 (log.f64 (*.f64 y (-.f64 1 x))))
(*.f64 y (-.f64 1 x))
(exp.f64 (*.f64 (log.f64 (*.f64 y (-.f64 1 x))) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 y 1 (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y 1 (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 y (neg.f64 x) y)
(*.f64 y (-.f64 1 x))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y (+.f64 1 (neg.f64 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y (-.f64 1 x) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 y (-.f64 1 x) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 x (neg.f64 y) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 y (-.f64 1 x)) 1 (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 1 y (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(fma.f64 1 y (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 1 (*.f64 y (-.f64 1 x)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 1 (*.f64 y (neg.f64 x)) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y (-.f64 1 x))) 2) (cbrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (neg.f64 (cbrt.f64 (*.f64 y x))) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 (*.f64 y (-.f64 1 x))) (sqrt.f64 (*.f64 y (-.f64 1 x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (neg.f64 (sqrt.f64 (*.f64 y x))) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 y (neg.f64 x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 (*.f64 y (neg.f64 x)) 1))
(*.f64 y (-.f64 1 x))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(fma.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (/.f64 1 (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2))))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (fma.f64 (*.f64 y x) (fma.f64 y x y) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 y 3) (pow.f64 (*.f64 y x) 3)) (*.f64 y (+.f64 y (*.f64 x (fma.f64 y x y)))))
(fma.f64 -1 (*.f64 y x) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(fma.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (/.f64 1 (fma.f64 y x y)))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 y x) 2)) (fma.f64 y x y))
(fma.f64 (neg.f64 x) y y)
(*.f64 y (-.f64 1 x))
(fma.f64 (neg.f64 y) x y)
(*.f64 y (-.f64 1 x))
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 y x))) (sqrt.f64 (*.f64 y x)) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 (cbrt.f64 (*.f64 y (neg.f64 x))) (cbrt.f64 (*.f64 y (neg.f64 x)))) (cbrt.f64 (*.f64 y (neg.f64 x))) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (sqrt.f64 (*.f64 y (neg.f64 x))) (sqrt.f64 (*.f64 y (neg.f64 x))) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (*.f64 0 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) 0)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (*.f64 0 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) 0)
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (fma.f64 (neg.f64 x) y (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (*.f64 0 (*.f64 y x)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 y x))) 0)
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) 2)) (cbrt.f64 (*.f64 y x)) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (*.f64 y (neg.f64 x)) 1 (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 (cbrt.f64 (*.f64 y x))) (pow.f64 (cbrt.f64 (*.f64 y x)) 2) (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (fma.f64 -1 x 1) y (fma.f64 (neg.f64 x) y (*.f64 y x)))
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 (neg.f64 x) 1) y y)
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 y) y)
(*.f64 y (-.f64 1 x))
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 y)) (sqrt.f64 y) y)
(*.f64 y (-.f64 1 x))
(+.f64 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (*.f64 2 (*.f64 x z)))
(+.f64 y (*.f64 (*.f64 x z) 3))
(+.f64 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 (*.f64 x z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 0 (fma.f64 x z y))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y))) (cbrt.f64 (exp.f64 (fma.f64 x z y))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 x z y)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))) (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))))
(*.f64 2 (log.f64 (sqrt.f64 (exp.f64 (fma.f64 x z y)))))
(*.f64 (fma.f64 x z y) 1)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 1 (fma.f64 x z y))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)))
(*.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)))
(*.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)))
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(*.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(*.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(/.f64 1 (/.f64 (fma.f64 x z y) (pow.f64 (fma.f64 x z y) 2)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (pow.f64 (fma.f64 x z y) 2) (fma.f64 x z y))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3))) (neg.f64 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(/.f64 (neg.f64 (pow.f64 (fma.f64 x z y) 2)) (neg.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(pow.f64 (fma.f64 x z y) 1)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (exp.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (exp.f64 y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (exp.f64 y) (-.f64 (pow.f64 (exp.f64 z) x) 0)))
(log.f64 (/.f64 (exp.f64 y) (pow.f64 (exp.f64 z) x)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (exp.f64 y) (-.f64 (pow.f64 (exp.f64 z) x) 0)))
(log.f64 (/.f64 (exp.f64 y) (pow.f64 (exp.f64 z) x)))
(log.f64 (/.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (/.f64 (exp.f64 y) (-.f64 (pow.f64 (exp.f64 z) x) 0)))
(log.f64 (/.f64 (exp.f64 y) (pow.f64 (exp.f64 z) x)))
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(hypot.f64 y (*.f64 x z))
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(exp.f64 (log.f64 (fma.f64 x z y)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 y 1 (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 x z y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 z x y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (fma.f64 x z y) 1 (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (*.f64 2 (*.f64 x z)))
(+.f64 y (*.f64 (*.f64 x z) 3))
(fma.f64 (fma.f64 x z y) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 1 y (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 1 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (*.f64 2 (*.f64 x z)))
(+.f64 y (*.f64 (*.f64 x z) 3))
(fma.f64 1 (fma.f64 x z y) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 1 (*.f64 x z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (*.f64 2 (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (*.f64 x (*.f64 z 2)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (+.f64 (*.f64 x z) (*.f64 x (neg.f64 z))))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) 0)
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 z x (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (*.f64 2 (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (*.f64 x (*.f64 z 2)))
(fma.f64 (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (cbrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) (+.f64 (*.f64 x z) (*.f64 x (neg.f64 z))))
(fma.f64 (cbrt.f64 (fma.f64 x z y)) (cbrt.f64 (pow.f64 (fma.f64 x z y) 2)) 0)
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (neg.f64 (cbrt.f64 (*.f64 x z))) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (*.f64 2 (*.f64 x z)))
(+.f64 y (*.f64 (*.f64 x z) 3))
(fma.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (neg.f64 (sqrt.f64 (*.f64 x z))) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 z x (*.f64 x z)))
(+.f64 (*.f64 2 (*.f64 x z)) (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(+.f64 (*.f64 x (*.f64 z 2)) (/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(fma.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 x z) 3)) (fma.f64 (*.f64 x z) (fma.f64 x z y) (pow.f64 y 2)))
(fma.f64 (*.f64 x z) 1 y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 -1 (*.f64 x z) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (fma.f64 z x (*.f64 x z)))
(+.f64 (fma.f64 x z y) (*.f64 2 (*.f64 x z)))
(+.f64 y (*.f64 (*.f64 x z) 3))
(fma.f64 (pow.f64 (fma.f64 x z y) 2) (/.f64 1 (fma.f64 x z y)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (neg.f64 x) z y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (neg.f64 (sqrt.f64 (*.f64 x z))) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 z x (*.f64 x z)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (*.f64 2 (*.f64 x z)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (*.f64 x (*.f64 z 2)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 x z))) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 x z)))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (+.f64 (*.f64 x z) (*.f64 x (neg.f64 z))))
(fma.f64 (+.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) (-.f64 (sqrt.f64 y) (sqrt.f64 (*.f64 x z))) 0)
(fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2)) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (*.f64 (neg.f64 x) 1) z y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (*.f64 x -1) z y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)
(fma.f64 (*.f64 (neg.f64 x) (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (*.f64 (neg.f64 x) (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 z (neg.f64 x) y)
(-.f64 y (*.f64 x z))
(fma.f64 (*.f64 (neg.f64 x) -1) z y)
(-.f64 y (*.f64 (neg.f64 x) z))
(fma.f64 x z y)

eval52.0ms (1.2%)

Compiler

Compiled 3206 to 1197 computations (62.7% saved)

prune42.0ms (0.9%)

Pruning

6 alts after pruning (4 fresh and 2 done)

PrunedKeptTotal
New2394243
Fresh000
Picked112
Done011
Total2406246
Accuracy
100.0%
Counts
246 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 y (*.f64 x (-.f64 y z)))
65.1%
(-.f64 y (*.f64 x y))
74.3%
(+.f64 (*.f64 x z) y)
29.6%
(*.f64 y (neg.f64 x))
38.7%
(*.f64 x z)
38.4%
y
Compiler

Compiled 43 to 28 computations (34.9% saved)

localize40.0ms (0.9%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(+.f64 (*.f64 x z) y)
Compiler

Compiled 29 to 8 computations (72.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 8.0ms
Operation ival-mult, time spent: 4.0ms, 53.0% of total-time
Operation ival-add, time spent: 1.0ms, 13.0% of total-time
Operation ival-neg, time spent: 1.0ms, 13.0% of total-time
Operation const, time spent: 0.0ms, 0.0% of total-time

series3.0ms (0.1%)

Counts
1 → 36
Calls
Call 1
Inputs
#<alt (+.f64 (*.f64 x z) y)>
Outputs
#<alt y>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (*.f64 x z)>
#<alt (*.f64 x (+.f64 z (/.f64 y x)))>
#<alt (*.f64 x (+.f64 z (/.f64 y x)))>
#<alt (*.f64 x (+.f64 z (/.f64 y x)))>
#<alt (*.f64 x z)>
#<alt (*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))>
#<alt (*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))>
#<alt (*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))>
#<alt y>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (*.f64 x z)>
#<alt (*.f64 z (+.f64 x (/.f64 y z)))>
#<alt (*.f64 z (+.f64 x (/.f64 y z)))>
#<alt (*.f64 z (+.f64 x (/.f64 y z)))>
#<alt (*.f64 x z)>
#<alt (*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))>
#<alt (*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))>
#<alt (*.f64 x z)>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt (+.f64 y (*.f64 x z))>
#<alt y>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt (*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))>
#<alt y>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
#<alt (*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))>
Calls

9 calls:

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

rewrite80.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1622×prod-diff
1004×unpow-prod-down
564×log-prod
560×log1p-expm1-u
560×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01118
111818
2152618
Stop Event
node limit
Counts
1 → 72
Calls
Call 1
Inputs
(+.f64 (*.f64 x z) y)
Outputs
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x z y))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x z) 2) (fma.f64 x z (neg.f64 y))) (/.f64 (pow.f64 y 2) (fma.f64 x z (neg.f64 y))))
(*.f64 (fma.f64 x z y) 1)
(*.f64 (fma.f64 x z y) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x z y))
(*.f64 (cbrt.f64 (fma.f64 x z y)) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2) (cbrt.f64 (fma.f64 x z y)))
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (pow.f64 (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (/.f64 1 (fma.f64 x z (neg.f64 y))))
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (fma.f64 x z (neg.f64 y))) 1))
(*.f64 (pow.f64 1 1/3) (fma.f64 x z y))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 2) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 x z y))))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (sqrt.f64 (fma.f64 x z y))) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 x z y))))
(/.f64 1 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))))
(/.f64 1 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 x z) 2) (*.f64 x (*.f64 z y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (fma.f64 x z (neg.f64 y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) (neg.f64 (fma.f64 x z (neg.f64 y))))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 x z) 2)) (-.f64 y (*.f64 x z)))
(pow.f64 (fma.f64 x z y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(pow.f64 (pow.f64 (fma.f64 x z y) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(pow.f64 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) -1)
(pow.f64 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(log.f64 (exp.f64 (fma.f64 x z y)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(exp.f64 (log.f64 (fma.f64 x z y)))
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x z y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x z y))) 2))
(fma.f64 x z y)
(fma.f64 z x y)
(fma.f64 (*.f64 x z) 1 y)
(fma.f64 y 1 (*.f64 x z))
(fma.f64 1 (*.f64 x z) y)
(fma.f64 1 y (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)

simplify85.0ms (1.9%)

Algorithm
egg-herbie
Rules
1254×fma-neg
1086×distribute-lft-in
928×distribute-lft-neg-in
784×distribute-rgt-neg-in
582×fma-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02112602
14842560
212352535
341012508
Stop Event
node limit
Counts
108 → 89
Calls
Call 1
Inputs
y
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(*.f64 x z)
(*.f64 x (+.f64 z (/.f64 y x)))
(*.f64 x (+.f64 z (/.f64 y x)))
(*.f64 x (+.f64 z (/.f64 y x)))
(*.f64 x z)
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
y
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(*.f64 x z)
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 z (+.f64 x (/.f64 y z)))
(*.f64 x z)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(*.f64 x z)
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
(+.f64 y (*.f64 x z))
y
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
y
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x z y))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 x z) 2) (fma.f64 x z (neg.f64 y))) (/.f64 (pow.f64 y 2) (fma.f64 x z (neg.f64 y))))
(*.f64 (fma.f64 x z y) 1)
(*.f64 (fma.f64 x z y) (log.f64 (exp.f64 1)))
(*.f64 1 (fma.f64 x z y))
(*.f64 (cbrt.f64 (fma.f64 x z y)) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2) (cbrt.f64 (fma.f64 x z y)))
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (pow.f64 (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))) 1))
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (/.f64 1 (fma.f64 x z (neg.f64 y))))
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (fma.f64 x z (neg.f64 y))) 1))
(*.f64 (pow.f64 1 1/3) (fma.f64 x z y))
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 2) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 x z y))))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (sqrt.f64 (fma.f64 x z y))) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 x z y))))
(/.f64 1 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))))
(/.f64 1 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 x z) 2) (*.f64 x (*.f64 z y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (fma.f64 x z (neg.f64 y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) (neg.f64 (fma.f64 x z (neg.f64 y))))
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 x z) 2)) (-.f64 y (*.f64 x z)))
(pow.f64 (fma.f64 x z y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(pow.f64 (pow.f64 (fma.f64 x z y) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(pow.f64 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) -1)
(pow.f64 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(log.f64 (exp.f64 (fma.f64 x z y)))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(exp.f64 (log.f64 (fma.f64 x z y)))
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x z y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x z y))) 2))
(fma.f64 x z y)
(fma.f64 z x y)
(fma.f64 (*.f64 x z) 1 y)
(fma.f64 y 1 (*.f64 x z))
(fma.f64 1 (*.f64 x z) y)
(fma.f64 1 y (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)
Outputs
y
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 x (+.f64 z (/.f64 y x)))
(fma.f64 x z y)
(*.f64 x (+.f64 z (/.f64 y x)))
(fma.f64 x z y)
(*.f64 x (+.f64 z (/.f64 y x)))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
(fma.f64 x z y)
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
(fma.f64 x z y)
(*.f64 -1 (*.f64 x (+.f64 (*.f64 -1 z) (*.f64 -1 (/.f64 y x)))))
(fma.f64 x z y)
y
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 z (+.f64 x (/.f64 y z)))
(fma.f64 x z y)
(*.f64 z (+.f64 x (/.f64 y z)))
(fma.f64 x z y)
(*.f64 z (+.f64 x (/.f64 y z)))
(fma.f64 x z y)
(*.f64 x z)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(fma.f64 x z y)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(fma.f64 x z y)
(*.f64 -1 (*.f64 z (+.f64 (*.f64 -1 x) (*.f64 -1 (/.f64 y z)))))
(fma.f64 x z y)
(*.f64 x z)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
(+.f64 y (*.f64 x z))
(fma.f64 x z y)
y
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(fma.f64 x z y)
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(fma.f64 x z y)
(*.f64 y (+.f64 1 (/.f64 (*.f64 x z) y)))
(fma.f64 x z y)
y
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(fma.f64 x z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(fma.f64 x z y)
(*.f64 -1 (*.f64 y (-.f64 (*.f64 -1 (/.f64 (*.f64 x z) y)) 1)))
(fma.f64 x z y)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 x z y))) 1)
(fma.f64 x z y)
(-.f64 (/.f64 (pow.f64 (*.f64 x z) 2) (fma.f64 x z (neg.f64 y))) (/.f64 (pow.f64 y 2) (fma.f64 x z (neg.f64 y))))
(fma.f64 x z y)
(*.f64 (fma.f64 x z y) 1)
(fma.f64 x z y)
(*.f64 (fma.f64 x z y) (log.f64 (exp.f64 1)))
(fma.f64 x z y)
(*.f64 1 (fma.f64 x z y))
(fma.f64 x z y)
(*.f64 (cbrt.f64 (fma.f64 x z y)) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2))
(fma.f64 x z y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2) (cbrt.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(*.f64 (sqrt.f64 (fma.f64 x z y)) (sqrt.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (pow.f64 (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))) 1))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (/.f64 1 (fma.f64 x z (neg.f64 y))))
(fma.f64 x z y)
(*.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (pow.f64 (/.f64 1 (fma.f64 x z (neg.f64 y))) 1))
(fma.f64 x z y)
(*.f64 (pow.f64 1 1/3) (fma.f64 x z y))
(fma.f64 x z y)
(*.f64 (pow.f64 (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(fma.f64 x z y)
(*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3) (pow.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) 3))
(fma.f64 x z y)
(*.f64 (pow.f64 (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 2) 3) (pow.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(fma.f64 x z y)
(*.f64 (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3) (pow.f64 (sqrt.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(fma.f64 x z y)
(*.f64 (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3) (pow.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3)) 1/3))
(*.f64 (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3))) (cbrt.f64 (sqrt.f64 (pow.f64 (fma.f64 x z y) 3))))
(*.f64 (cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 x z y)) 3)) (cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 x z y)) 3)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2)) 1/3) (cbrt.f64 (cbrt.f64 (fma.f64 x z y))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 2) (pow.f64 (fma.f64 x z y) 2))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) (cbrt.f64 (*.f64 (cbrt.f64 (fma.f64 x z y)) (pow.f64 (cbrt.f64 (fma.f64 x z y)) 7))))
(*.f64 (cbrt.f64 (cbrt.f64 (fma.f64 x z y))) (cbrt.f64 (pow.f64 (cbrt.f64 (fma.f64 x z y)) 8)))
(*.f64 (pow.f64 (*.f64 (pow.f64 (fma.f64 x z y) 2) (sqrt.f64 (fma.f64 x z y))) 1/3) (cbrt.f64 (sqrt.f64 (fma.f64 x z y))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) (cbrt.f64 (*.f64 (sqrt.f64 (fma.f64 x z y)) (pow.f64 (fma.f64 x z y) 2))))
(*.f64 (cbrt.f64 (sqrt.f64 (fma.f64 x z y))) (cbrt.f64 (pow.f64 (sqrt.f64 (fma.f64 x z y)) 5)))
(/.f64 1 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(/.f64 1 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))))
(fma.f64 x z y)
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y y (-.f64 (pow.f64 (*.f64 x z) 2) (*.f64 x (*.f64 z y)))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2)) (fma.f64 x z (neg.f64 y)))
(fma.f64 x z y)
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) (neg.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) (neg.f64 (fma.f64 x z (neg.f64 y))))
(fma.f64 x z y)
(/.f64 (-.f64 (pow.f64 y 2) (pow.f64 (*.f64 x z) 2)) (-.f64 y (*.f64 x z)))
(fma.f64 x z y)
(pow.f64 (fma.f64 x z y) 1)
(fma.f64 x z y)
(pow.f64 (cbrt.f64 (fma.f64 x z y)) 3)
(fma.f64 x z y)
(pow.f64 (pow.f64 (fma.f64 x z y) 2) 1/2)
(fma.f64 x z y)
(pow.f64 (pow.f64 (fma.f64 x z y) 3) 1/3)
(fma.f64 x z y)
(pow.f64 (sqrt.f64 (fma.f64 x z y)) 2)
(fma.f64 x z y)
(pow.f64 (/.f64 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (/.f64 1 (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 x z)) (pow.f64 (*.f64 x z) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 y 3)) (fma.f64 (*.f64 x z) (fma.f64 x z (neg.f64 y)) (pow.f64 y 2)))
(pow.f64 (/.f64 (fma.f64 x z (neg.f64 y)) (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 y 2))) -1)
(fma.f64 x z y)
(sqrt.f64 (pow.f64 (fma.f64 x z y) 2))
(fma.f64 x z y)
(log.f64 (exp.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 x z y))))
(fma.f64 x z y)
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 y))))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (exp.f64 y)))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 y))))
(fma.f64 x z y)
(log.f64 (*.f64 (exp.f64 y) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (pow.f64 (exp.f64 x) z)))
(fma.f64 x z y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 y)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(fma.f64 x z y)
(cbrt.f64 (pow.f64 (fma.f64 x z y) 3))
(fma.f64 x z y)
(expm1.f64 (log1p.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(log1p.f64 (expm1.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(exp.f64 (log.f64 (fma.f64 x z y)))
(fma.f64 x z y)
(exp.f64 (*.f64 (log.f64 (fma.f64 x z y)) 1))
(fma.f64 x z y)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 x z y))) 3))
(fma.f64 x z y)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 x z y))) 1/3))
(fma.f64 x z y)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 x z y))) 2))
(fma.f64 x z y)
(fma.f64 x z y)
(fma.f64 z x y)
(fma.f64 x z y)
(fma.f64 (*.f64 x z) 1 y)
(fma.f64 x z y)
(fma.f64 y 1 (*.f64 x z))
(fma.f64 x z y)
(fma.f64 1 (*.f64 x z) y)
(fma.f64 x z y)
(fma.f64 1 y (*.f64 x z))
(fma.f64 x z y)
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) y)
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) y)
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 x) 2) (*.f64 (cbrt.f64 x) z) y)
(fma.f64 x z y)
(fma.f64 (cbrt.f64 y) (pow.f64 (cbrt.f64 y) 2) (*.f64 x z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 x z))
(fma.f64 x z y)
(fma.f64 (pow.f64 (cbrt.f64 z) 2) (*.f64 (cbrt.f64 z) x) y)
(fma.f64 x z y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) y)
(fma.f64 x z y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) y)
(fma.f64 x z y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 x z))
(fma.f64 x z y)
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) y)
(fma.f64 x z y)
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 z) 2)) (cbrt.f64 z) y)
(fma.f64 x z y)
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) y)
(fma.f64 x z y)
(fma.f64 (*.f64 z (pow.f64 (cbrt.f64 x) 2)) (cbrt.f64 x) y)
(fma.f64 x z y)
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) y)
(fma.f64 x z y)

eval18.0ms (0.4%)

Compiler

Compiled 1085 to 443 computations (59.2% saved)

prune19.0ms (0.4%)

Pruning

6 alts after pruning (0 fresh and 6 done)

PrunedKeptTotal
New89089
Fresh000
Picked044
Done022
Total89695
Accuracy
100.0%
Counts
95 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(-.f64 y (*.f64 x (-.f64 y z)))
65.1%
(-.f64 y (*.f64 x y))
74.3%
(+.f64 (*.f64 x z) y)
29.6%
(*.f64 y (neg.f64 x))
38.7%
(*.f64 x z)
38.4%
y
Compiler

Compiled 86 to 47 computations (45.3% saved)

regimes21.0ms (0.5%)

Counts
8 → 1
Calls
Call 1
Inputs
y
(*.f64 x z)
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 x z) y)
(-.f64 y (*.f64 x y))
(-.f64 y (*.f64 x (neg.f64 z)))
(-.f64 y (*.f64 x (-.f64 y z)))
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Outputs
(-.f64 y (*.f64 x (-.f64 y z)))
Calls

4 calls:

6.0ms
y
5.0ms
z
5.0ms
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
5.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1z
100.0%1(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Compiler

Compiled 24 to 17 computations (29.2% saved)

regimes71.0ms (1.6%)

Counts
6 → 5
Calls
Call 1
Inputs
y
(*.f64 x z)
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 x z) y)
(-.f64 y (*.f64 x y))
(-.f64 y (*.f64 x (neg.f64 z)))
Outputs
(+.f64 (*.f64 x z) y)
(-.f64 y (*.f64 x y))
(+.f64 (*.f64 x z) y)
(-.f64 y (*.f64 x y))
(+.f64 (*.f64 x z) y)
Calls

3 calls:

29.0ms
x
24.0ms
z
18.0ms
y
Results
AccuracySegmentsBranch
87.1%7x
86.2%3y
92.5%5z
Compiler

Compiled 12 to 9 computations (25% saved)

regimes61.0ms (1.4%)

Counts
4 → 7
Calls
Call 1
Inputs
y
(*.f64 x z)
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 x z) y)
Outputs
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 x z) y)
(*.f64 y (neg.f64 x))
(*.f64 x z)
(*.f64 y (neg.f64 x))
(*.f64 x z)
(*.f64 y (neg.f64 x))
Calls

3 calls:

25.0ms
z
25.0ms
x
11.0ms
y
Results
AccuracySegmentsBranch
87.1%7x
76.6%3y
80.7%7z
Compiler

Compiled 12 to 9 computations (25% saved)

regimes86.0ms (1.9%)

Counts
3 → 9
Calls
Call 1
Inputs
y
(*.f64 x z)
(*.f64 y (neg.f64 x))
Outputs
(*.f64 y (neg.f64 x))
(*.f64 x z)
y
(*.f64 x z)
(*.f64 y (neg.f64 x))
(*.f64 x z)
(*.f64 y (neg.f64 x))
(*.f64 x z)
(*.f64 y (neg.f64 x))
Calls

3 calls:

32.0ms
x
31.0ms
z
22.0ms
y
Results
AccuracySegmentsBranch
69.7%10z
59.3%7y
76.7%9x
Compiler

Compiled 12 to 9 computations (25% saved)

regimes12.0ms (0.3%)

Counts
2 → 3
Calls
Call 1
Inputs
y
(*.f64 x z)
Outputs
(*.f64 x z)
y
(*.f64 x z)
Calls

1 calls:

11.0ms
x
Results
AccuracySegmentsBranch
64.0%3x
Compiler

Compiled 4 to 3 computations (25% saved)

regimes9.0ms (0.2%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
y
Outputs
y
Calls

3 calls:

3.0ms
z
3.0ms
y
3.0ms
x
Results
AccuracySegmentsBranch
38.4%1y
38.4%1z
38.4%1x
Compiler

Compiled 12 to 9 computations (25% saved)

bsearch58.0ms (1.3%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
15.0ms
3.829344727646891e+47
4.763500468020486e+49
11.0ms
-4.0226536464377555e-122
-1.720059124400316e-122
17.0ms
-1.4097901532427777e-56
-6.264329062508192e-61
15.0ms
-1.8833854077880228e+36
-3.656314873803535e+34
Results
42.0ms356×256valid
8.0ms75×256infinite
0.0ms256valid
Compiler

Compiled 504 to 337 computations (33.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
Operation ival-mult, time spent: 6.0ms, 45.0% of total-time
Operation ival-sub, time spent: 3.0ms, 23.0% of total-time
Operation ival-add, time spent: 3.0ms, 23.0% of total-time
Operation const, time spent: 1.0ms, 8.0% of total-time

bsearch98.0ms (2.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
19.0ms
6.273553614573045e+301
1.0170343581145554e+308
15.0ms
1.201907306402114e+281
2.782892691489517e+283
17.0ms
1.7310893444971768e+148
2.21290428893181e+152
10.0ms
1.5105512375839137e+68
3.4854697351443665e+68
18.0ms
9.743190349686125e+23
4.969341359382113e+26
19.0ms
-2.2648883476621026e+61
-1.2858896242151348e+55
Results
54.0ms461×256valid
31.0ms274×256infinite
0.0ms256infinite
Compiler

Compiled 742 to 536 computations (27.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
Operation ival-mult, time spent: 11.0ms, 47.0% of total-time
Operation ival-sub, time spent: 7.0ms, 30.0% of total-time
Operation ival-add, time spent: 4.0ms, 17.0% of total-time
Operation const, time spent: 1.0ms, 4.0% of total-time

bsearch144.0ms (3.2%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
6.273553614573045e+301
1.0170343581145554e+308
15.0ms
1.201907306402114e+281
2.782892691489517e+283
19.0ms
1.7310893444971768e+148
2.21290428893181e+152
12.0ms
1.5105512375839137e+68
3.4854697351443665e+68
18.0ms
9.743190349686125e+23
4.969341359382113e+26
20.0ms
5.419068786168746e-104
9.887022135462306e-95
21.0ms
-1.0404171407606466e-39
-2.1040361069951656e-57
18.0ms
-2.2648883476621026e+61
-1.2858896242151348e+55
Results
90.0ms738×256valid
35.0ms301×256infinite
0.0ms256infinite
Compiler

Compiled 936 to 690 computations (26.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 32.0ms
Operation ival-mult, time spent: 15.0ms, 47.0% of total-time
Operation ival-sub, time spent: 8.0ms, 25.0% of total-time
Operation ival-add, time spent: 8.0ms, 25.0% of total-time
Operation const, time spent: 2.0ms, 6.0% of total-time

bsearch291.0ms (6.5%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
20.0ms
5.419068786168746e-104
9.887022135462306e-95
271.0ms
-1.0404171407606466e-39
-2.1040361069951656e-57
Results
286.0ms303×256valid
0.0ms256valid
Compiler

Compiled 246 to 184 computations (25.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
Operation ival-mult, time spent: 5.0ms, 53.0% of total-time
Operation ival-sub, time spent: 2.0ms, 21.0% of total-time
Operation ival-add, time spent: 2.0ms, 21.0% of total-time
Operation const, time spent: 1.0ms, 11.0% of total-time

simplify48.0ms (1.1%)

Algorithm
egg-herbie
Rules
206×unsub-neg
116×neg-mul-1
92×distribute-lft-neg-in
64×distribute-neg-out
56×neg-sub0
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
080614
1114587
2143552
3175534
4210534
5251530
6280530
7344530
8465530
9535530
10551530
11572530
12587530
13608530
14620530
15623530
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 y (*.f64 x (-.f64 y z)))
(if (<=.f64 z -799999999999999974906928863343804416) (+.f64 (*.f64 x z) y) (if (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (-.f64 y (*.f64 x y)) (if (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984) (+.f64 (*.f64 x z) y) (if (<=.f64 z 400000000000000017538337218030478941853619060736) (-.f64 y (*.f64 x y)) (+.f64 (*.f64 x z) y)))))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 (*.f64 x z) y) (if (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (*.f64 y (neg.f64 x)) (if (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (*.f64 x z) (if (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152) (*.f64 y (neg.f64 x)) (if (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552) (*.f64 x z) (*.f64 y (neg.f64 x))))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (<=.f64 x 1149999999999999953862656) (*.f64 x z) (if (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (*.f64 y (neg.f64 x)) (if (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (*.f64 x z) (if (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (*.f64 y (neg.f64 x)) (if (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504) (*.f64 x z) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 x -5021681388309345/3138550867693340381917894711603833208051177722232017256448) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (*.f64 x z)))
y
Outputs
(-.f64 y (*.f64 x (-.f64 y z)))
(+.f64 y (*.f64 x (-.f64 z y)))
(if (<=.f64 z -799999999999999974906928863343804416) (+.f64 (*.f64 x z) y) (if (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (-.f64 y (*.f64 x y)) (if (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984) (+.f64 (*.f64 x z) y) (if (<=.f64 z 400000000000000017538337218030478941853619060736) (-.f64 y (*.f64 x y)) (+.f64 (*.f64 x z) y)))))
(if (<=.f64 z -799999999999999974906928863343804416) (+.f64 y (*.f64 x z)) (if (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (-.f64 y (*.f64 y x)) (if (or (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984) (not (<=.f64 z 400000000000000017538337218030478941853619060736))) (+.f64 y (*.f64 x z)) (-.f64 y (*.f64 y x)))))
(if (<=.f64 z -799999999999999974906928863343804416) (+.f64 y (*.f64 x z)) (if (or (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (not (or (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984) (not (<=.f64 z 400000000000000017538337218030478941853619060736))))) (-.f64 y (*.f64 y x)) (+.f64 y (*.f64 x z))))
(if (or (<=.f64 z -799999999999999974906928863343804416) (not (or (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (not (or (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984) (not (<=.f64 z 400000000000000017538337218030478941853619060736))))))) (+.f64 y (*.f64 x z)) (-.f64 y (*.f64 y x)))
(if (or (<=.f64 z -799999999999999974906928863343804416) (not (or (<=.f64 z -7463162001623895/226156424291633194186662080095093570025917938800079226639565593765455331328) (and (not (<=.f64 z -1488565707357403/46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984)) (<=.f64 z 400000000000000017538337218030478941853619060736))))) (+.f64 y (*.f64 x z)) (-.f64 y (*.f64 y x)))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 (*.f64 x z) y) (if (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (*.f64 y (neg.f64 x)) (if (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (*.f64 x z) (if (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152) (*.f64 y (neg.f64 x)) (if (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552) (*.f64 x z) (*.f64 y (neg.f64 x))))))))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 y (*.f64 x z)) (if (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (*.f64 y (neg.f64 x)) (if (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (*.f64 x z) (if (or (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152) (not (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552))) (*.f64 y (neg.f64 x)) (*.f64 x z))))))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 y (*.f64 x z)) (if (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (*.f64 y (neg.f64 x)) (if (or (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (not (or (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152) (not (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552))))) (*.f64 x z) (*.f64 y (neg.f64 x))))))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 y (*.f64 x z)) (if (or (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (not (or (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (not (or (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152) (not (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552))))))) (*.f64 y (neg.f64 x)) (*.f64 x z))))
(if (<=.f64 x -600000000000000011585558082980146105192257007027776126976) (*.f64 y (neg.f64 x)) (if (<=.f64 x 10499999999999999555403776) (+.f64 y (*.f64 x z)) (if (or (<=.f64 x 340000000000000015082591239308134578154178379590385067259071939215360) (not (or (<=.f64 x 2700000000000000075452886417312117240679090418282654253233383107696730852210717030647880745108433692382729437627299187822972268390843829028785393500160) (and (not (<=.f64 x 460000000000000015079833152116565194342524430189887039561133445622833597470792194526849814189309424804756048887639109376602751951378920020157235906594799559717398249952985230275025705283368814385551132499754738289382596640524624399980236339819962126156241411332993348622581762097152)) (<=.f64 x 349999999999999969602511491250262627270114064071117331915214326000992603266800882962376426416893300133775839867581058016531742814046634646565281210802440228457692460165757805626797015151491966200664891067274010636932770002511533949003970874378582981549895332651034772198261025419348394783407349067415552))))) (*.f64 y (neg.f64 x)) (*.f64 x z))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (<=.f64 x 1149999999999999953862656) (*.f64 x z) (if (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (*.f64 y (neg.f64 x)) (if (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (*.f64 x z) (if (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (*.f64 y (neg.f64 x)) (if (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504) (*.f64 x z) (*.f64 y (neg.f64 x))))))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (<=.f64 x 1149999999999999953862656) (*.f64 x z) (if (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (*.f64 y (neg.f64 x)) (if (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (*.f64 x z) (if (or (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (not (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))) (*.f64 y (neg.f64 x)) (*.f64 x z))))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (<=.f64 x 1149999999999999953862656) (*.f64 x z) (if (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (*.f64 y (neg.f64 x)) (if (or (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (not (or (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (not (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))))) (*.f64 x z) (*.f64 y (neg.f64 x))))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (<=.f64 x 1149999999999999953862656) (*.f64 x z) (if (or (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (not (or (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (not (or (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (not (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))))))) (*.f64 y (neg.f64 x)) (*.f64 x z))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (or (<=.f64 x 1149999999999999953862656) (not (or (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (not (or (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (and (not (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920)) (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))))))) (*.f64 x z) (*.f64 y (neg.f64 x))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (or (<=.f64 x 1149999999999999953862656) (not (or (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968) (and (not (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872)) (or (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920) (not (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))))))) (*.f64 x z) (*.f64 y (neg.f64 x))))))
(if (<=.f64 x -14499999999999999263674317801483986664867383473623531520) (*.f64 y (neg.f64 x)) (if (<=.f64 x -4607412760499377/3291009114642412084309938365114701009965471731267159726697218048) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (if (or (<=.f64 x 1149999999999999953862656) (and (not (<=.f64 x 156000000000000002694616658147935851415004380184368267205433221971968)) (or (<=.f64 x 80000000000000003918138126012041646365778160282459511099603389967213461087470780492898522339782117103449045174520822140964274633493006817368182095872) (and (not (<=.f64 x 1600000000000000052451593572579357197713128452834389702821333723905508165115798937484695005875858868886107996130918641309922615483057113113590385762068868033799646086792992105304437235768239354384525678260016481006548162227911737043409517703721607395326057082897368169122023520337920)) (<=.f64 x 195000000000000016781302647067107424808846365175653499786136439826137099153233279168481309646466577087262950330500298839618176707744365384250909556430992975935090061031218635173948593558807122909397149151729348218343279654945013678312651595104800174334190801354006649606431019545311511863332117889941504))))) (*.f64 x z) (*.f64 y (neg.f64 x))))))
(if (<=.f64 x -5021681388309345/3138550867693340381917894711603833208051177722232017256448) (*.f64 x z) (if (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936) y (*.f64 x z)))
(if (or (<=.f64 x -5021681388309345/3138550867693340381917894711603833208051177722232017256448) (not (<=.f64 x 14091255496643/146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936))) (*.f64 x z) y)
y
Compiler

Compiled 158 to 100 computations (36.7% saved)

soundness627.0ms (14%)

Rules
2364×fma-neg
950×log-prod
902×log1p-expm1-u
902×expm1-log1p-u
824×distribute-lft-neg-out
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
040399
1102387
2236379
3682351
41707339
52872337
63242337
73282337
83286337
93286317
103929317
113929317
01548
119741
2299137
04118409
19107505
224977245
01091359
12331359
26381359
323861359
448161311
Stop Event
node limit
node limit
node limit
saturated
Compiler

Compiled 202 to 95 computations (53% saved)

end0.0ms (0%)

preprocess171.0ms (3.8%)

Compiler

Compiled 330 to 186 computations (43.6% saved)

Profiling

Loading profile data...