Details

Time bar (total: 3.6s)

analyze329.0ms (9.2%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
12.5%12.5%87.4%0.1%0%0%0%7
18.8%18.7%81.1%0.1%0%0%0%8
25.8%25%71.8%0.1%3.1%0%0%9
36.4%34.3%60.1%0.1%5.5%0%0%10
44.5%41.3%51.5%0.1%7%0%0%11
51.5%46.8%44.1%0.1%9%0%0%12
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample1.2s (32.6%)

Results
982.0ms8256×body256valid
177.0ms1281×body256infinite
Bogosity

preprocess119.0ms (3.3%)

Algorithm
egg-herbie
Rules
1510×fma-neg
908×fma-def
308×cancel-sign-sub-inv
260×sub-neg
244×unsub-neg
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02184
14884
29284
315684
434268
568560
6115160
7188060
8250460
9279760
10287260
11287360
12287360
033
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x 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))
(-.f64 (fma.f64 x z y) (*.f64 x y))
(fma.f64 x (fma.f64 y -1 z) y)
(fma.f64 x (-.f64 z y) 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 (fma.f64 y z x) (*.f64 x y))
(fma.f64 y (fma.f64 x -1 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 (fma.f64 x z y) (*.f64 y z))
(fma.f64 z (fma.f64 y -1 x) y)
(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 z (*.f64 x z)))
(fma.f64 x (fma.f64 z -1 y) z)
(fma.f64 x (-.f64 y z) z)
Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify46.0ms (1.3%)

Algorithm
egg-herbie
Rules
1074×fma-def
142×fma-neg
90×cancel-sign-sub-inv
84×sub-neg
76×associate--r+
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01021
12021
23321
36021
412917
522115
635115
756415
897615
9116415
10122315
11123315
Stop Event
saturated
Counts
1 → 5
Calls
Call 1
Inputs
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Outputs
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(fma.f64 (-.f64 1 x) y (*.f64 x z))
(-.f64 (fma.f64 x z y) (*.f64 x y))
(fma.f64 x (fma.f64 y -1 z) y)
(fma.f64 x (-.f64 z y) y)

eval1.0ms (0%)

Compiler

Compiled 41 to 19 computations (53.7% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New325
Fresh011
Picked000
Done000
Total336
Accurracy
100.0%
Counts
6 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(fma.f64 x (-.f64 z y) y)
100.0%
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
Compiler

Compiled 21 to 13 computations (38.1% saved)

localize11.0ms (0.3%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 27 to 14 computations (48.1% saved)

series3.0ms (0.1%)

Counts
1 → 36
Calls

9 calls:

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

rewrite71.0ms (2%)

Algorithm
batch-egg-rewrite
Rules
1052×log-prod
872×prod-exp
838×fma-def
774×pow-prod-down
498×pow-prod-up
Iterations

Useful iterations: 0 (0.0ms)

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

simplify83.0ms (2.3%)

Algorithm
egg-herbie
Rules
1104×div-sub
956×fma-def
862×fma-neg
494×distribute-lft-in
472×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01953016
14732660
212722608
350702314
Stop Event
node limit
Counts
108 → 103
Calls
Call 1
Inputs
y
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(*.f64 (+.f64 z (*.f64 -1 y)) x)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x))
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(*.f64 y (-.f64 1 x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))) (/.f64 (pow.f64 (*.f64 x z) 2) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(*.f64 1 (fma.f64 (-.f64 1 x) y (*.f64 x z)))
(*.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 1)
(*.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2) (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(*.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2))))
(*.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2)) (/.f64 1 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(/.f64 1 (/.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))))
(/.f64 1 (/.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (+.f64 (pow.f64 (*.f64 x z) 2) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (*.f64 (-.f64 1 x) (*.f64 y (*.f64 x z))))))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2)) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)))
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))) (neg.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))) (neg.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)))
(pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 1)
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 3)
(pow.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 2) 1/2)
(pow.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2)
(pow.f64 (/.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))) -1)
(pow.f64 (/.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))) -1)
(sqrt.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 2))
(log.f64 (exp.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 y) (-.f64 1 x)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y))) (pow.f64 (exp.f64 x) z)))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y))) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y)))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (pow.f64 (exp.f64 y) (-.f64 1 x))))
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y)))))
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 3))
(expm1.f64 (log1p.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(exp.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 2))
(log1p.f64 (expm1.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 1 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(fma.f64 1 (*.f64 x z) (*.f64 (-.f64 1 x) y))
(fma.f64 x z (*.f64 (-.f64 1 x) y))
(fma.f64 (-.f64 1 x) y (*.f64 x z))
(fma.f64 y (-.f64 1 x) (*.f64 x z))
(fma.f64 (*.f64 (-.f64 1 x) y) 1 (*.f64 x z))
(fma.f64 z x (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 x z) 1 (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) x) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (*.f64 (cbrt.f64 (-.f64 1 x)) y) (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 (-.f64 1 x) y))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) (-.f64 1 x)) (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) 2) (*.f64 x z))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) 2) (cbrt.f64 (*.f64 (-.f64 1 x) y)) (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) z) (*.f64 (-.f64 1 x) y))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) (*.f64 (-.f64 1 x) y))
(fma.f64 (sqrt.f64 (-.f64 1 x)) (*.f64 (sqrt.f64 (-.f64 1 x)) y) (*.f64 x z))
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) (*.f64 (-.f64 1 x) y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 1 x)) (*.f64 x z))
(fma.f64 (sqrt.f64 (*.f64 (-.f64 1 x) y)) (sqrt.f64 (*.f64 (-.f64 1 x) y)) (*.f64 x z))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 x (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 z (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 1 x) y))
(fma.f64 (*.f64 (-.f64 1 x) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (*.f64 (-.f64 1 x) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 1 x) 2))) (cbrt.f64 (-.f64 1 x)) (*.f64 x z))
(fma.f64 (*.f64 y (sqrt.f64 (-.f64 1 x))) (sqrt.f64 (-.f64 1 x)) (*.f64 x z))
Outputs
y
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (+.f64 z (*.f64 -1 y)) x)
(*.f64 (+.f64 z (neg.f64 y)) x)
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (+.f64 z (*.f64 -1 y)) x) y)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x))
(*.f64 (+.f64 z (neg.f64 y)) x)
(*.f64 (-.f64 z y) x)
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 y (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 z) y) x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 y (-.f64 1 x))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 y (-.f64 1 x))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 y (-.f64 1 x))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (-.f64 1 x)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(-.f64 (exp.f64 (log1p.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 1)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(-.f64 (/.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))) (/.f64 (pow.f64 (*.f64 x z) 2) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(*.f64 1 (fma.f64 (-.f64 1 x) y (*.f64 x z)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 1)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2) (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (/.f64 1 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(*.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2)) (/.f64 1 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(/.f64 1 (/.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))))
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(/.f64 1 (/.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)))
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3)) (+.f64 (pow.f64 (*.f64 x z) 2) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (*.f64 (-.f64 1 x) (*.f64 y (*.f64 x z))))))
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(/.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2)) (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(/.f64 (neg.f64 (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))) (neg.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2))))
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))) (neg.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(/.f64 (-.f64 (pow.f64 (*.f64 x z) 2) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 1)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 3)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 2) 1/2)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 3) 1/3)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 2)
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (/.f64 (fma.f64 (*.f64 x z) (-.f64 (*.f64 x z) (*.f64 (-.f64 1 x) y)) (pow.f64 (*.f64 (-.f64 1 x) y) 2)) (+.f64 (pow.f64 (*.f64 x z) 3) (pow.f64 (*.f64 (-.f64 1 x) y) 3))) -1)
(*.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (/.f64 1 (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) (*.f64 y (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2))))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 (*.f64 z x) (fma.f64 z x (*.f64 (neg.f64 y) (-.f64 1 x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (*.f64 y (-.f64 1 x)) 3)) (fma.f64 x (*.f64 z (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (*.f64 y (-.f64 1 x)) 2)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 (-.f64 y (*.f64 y x)) 3)) (fma.f64 z (*.f64 x (fma.f64 y (+.f64 -1 x) (*.f64 z x))) (pow.f64 (-.f64 y (*.f64 y x)) 2)))
(pow.f64 (/.f64 (-.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z)) (-.f64 (pow.f64 (*.f64 (-.f64 1 x) y) 2) (pow.f64 (*.f64 x z) 2))) -1)
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 (-.f64 1 x) y (neg.f64 (*.f64 z x))))
(/.f64 (-.f64 (pow.f64 (*.f64 y (-.f64 1 x)) 2) (pow.f64 (*.f64 z x) 2)) (fma.f64 y (-.f64 1 x) (*.f64 z (neg.f64 x))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (pow.f64 (*.f64 y (-.f64 1 x)) 2)) (fma.f64 y (+.f64 -1 x) (*.f64 z x)))
(/.f64 (fma.f64 (-.f64 z y) x y) 1)
(sqrt.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 2))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (exp.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (+.f64 1 (expm1.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (pow.f64 (exp.f64 y) (-.f64 1 x)) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y))) (pow.f64 (exp.f64 x) z)))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y))) (+.f64 1 (expm1.f64 (*.f64 x z)))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (pow.f64 (exp.f64 x) z) (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y)))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (pow.f64 (exp.f64 y) (-.f64 1 x))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 x z))) (+.f64 1 (expm1.f64 (*.f64 (-.f64 1 x) y)))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(cbrt.f64 (pow.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)) 3))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(expm1.f64 (log1p.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (*.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 1))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))) 1) 1))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 3))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (*.f64 (*.f64 3 (log.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 1/3))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z)))) 2))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(log1p.f64 (expm1.f64 (fma.f64 (-.f64 1 x) y (*.f64 x z))))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 1 (*.f64 (-.f64 1 x) y) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 1 (*.f64 x z) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 x z (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (-.f64 1 x) y (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 y (-.f64 1 x) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 (-.f64 1 x) y) 1 (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 z x (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 x z) 1 (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 (cbrt.f64 z) x) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 x (cbrt.f64 z)) (*.f64 y (-.f64 1 x)))
(fma.f64 y (-.f64 1 x) (*.f64 x (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z))))
(fma.f64 y (-.f64 1 x) (*.f64 (cbrt.f64 (*.f64 z z)) (*.f64 x (cbrt.f64 z))))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (*.f64 (cbrt.f64 (-.f64 1 x)) y) (*.f64 x z))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (*.f64 y (cbrt.f64 (-.f64 1 x))) (*.f64 z x))
(fma.f64 y (*.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (cbrt.f64 (-.f64 1 x))) (*.f64 z x))
(fma.f64 (cbrt.f64 (*.f64 x z)) (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 x z)) 2) (cbrt.f64 (*.f64 x z)) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (cbrt.f64 y) (-.f64 1 x)) (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (-.f64 1 x) (cbrt.f64 y)) (*.f64 z x))
(fma.f64 (-.f64 1 x) (*.f64 (cbrt.f64 (*.f64 y y)) (cbrt.f64 y)) (*.f64 z x))
(fma.f64 z x (*.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (-.f64 1 x) (cbrt.f64 y))))
(fma.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) (pow.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) 2) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 (-.f64 1 x) y)) 2) (cbrt.f64 (*.f64 (-.f64 1 x) y)) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 (cbrt.f64 x) z) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 z (cbrt.f64 x)) (*.f64 y (-.f64 1 x)))
(fma.f64 y (-.f64 1 x) (*.f64 z (*.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x))))
(fma.f64 (sqrt.f64 z) (*.f64 (sqrt.f64 z) x) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (sqrt.f64 (-.f64 1 x)) (*.f64 (sqrt.f64 (-.f64 1 x)) y) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (sqrt.f64 (*.f64 x z)) (sqrt.f64 (*.f64 x z)) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) (-.f64 1 x)) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (sqrt.f64 (*.f64 (-.f64 1 x) y)) (sqrt.f64 (*.f64 (-.f64 1 x) y)) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) z) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 x (cbrt.f64 (*.f64 z z))) (cbrt.f64 z) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 z z)) (*.f64 x (cbrt.f64 z)) (*.f64 y (-.f64 1 x)))
(fma.f64 y (-.f64 1 x) (*.f64 x (*.f64 (cbrt.f64 (*.f64 z z)) (cbrt.f64 z))))
(fma.f64 y (-.f64 1 x) (*.f64 (cbrt.f64 (*.f64 z z)) (*.f64 x (cbrt.f64 z))))
(fma.f64 (*.f64 x (sqrt.f64 z)) (sqrt.f64 z) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 z (cbrt.f64 (*.f64 x x))) (cbrt.f64 x) (*.f64 (-.f64 1 x) y))
(fma.f64 (cbrt.f64 (*.f64 x x)) (*.f64 z (cbrt.f64 x)) (*.f64 y (-.f64 1 x)))
(fma.f64 y (-.f64 1 x) (*.f64 z (*.f64 (cbrt.f64 (*.f64 x x)) (cbrt.f64 x))))
(fma.f64 (*.f64 z (sqrt.f64 x)) (sqrt.f64 x) (*.f64 (-.f64 1 x) y))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 (-.f64 1 x) (cbrt.f64 (*.f64 y y))) (cbrt.f64 y) (*.f64 x z))
(fma.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (-.f64 1 x) (cbrt.f64 y)) (*.f64 z x))
(fma.f64 (-.f64 1 x) (*.f64 (cbrt.f64 (*.f64 y y)) (cbrt.f64 y)) (*.f64 z x))
(fma.f64 z x (*.f64 (cbrt.f64 (*.f64 y y)) (*.f64 (-.f64 1 x) (cbrt.f64 y))))
(fma.f64 (*.f64 (-.f64 1 x) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)
(fma.f64 (*.f64 y (cbrt.f64 (pow.f64 (-.f64 1 x) 2))) (cbrt.f64 (-.f64 1 x)) (*.f64 x z))
(fma.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (*.f64 y (cbrt.f64 (-.f64 1 x))) (*.f64 z x))
(fma.f64 y (*.f64 (cbrt.f64 (pow.f64 (-.f64 1 x) 2)) (cbrt.f64 (-.f64 1 x))) (*.f64 z x))
(fma.f64 (*.f64 y (sqrt.f64 (-.f64 1 x))) (sqrt.f64 (-.f64 1 x)) (*.f64 x z))
(fma.f64 (+.f64 z (neg.f64 y)) x y)
(fma.f64 (-.f64 z y) x y)

localize6.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 15 to 5 computations (66.7% saved)

series11.0ms (0.3%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
8.0ms
z
@inf
(fma.f64 x (-.f64 z y) y)
1.0ms
x
@-inf
(fma.f64 x (-.f64 z y) y)
0.0ms
y
@-inf
(fma.f64 x (-.f64 z y) y)
0.0ms
x
@0
(fma.f64 x (-.f64 z y) y)
0.0ms
z
@-inf
(fma.f64 x (-.f64 z y) y)

rewrite59.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1848×pow1
1702×add-exp-log
1702×log1p-expm1-u
1702×expm1-log1p-u
1666×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
116915
2225215
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(fma.f64 x (-.f64 z y) y)
Outputs
(+.f64 y (*.f64 x (-.f64 z y)))
(+.f64 (*.f64 x (-.f64 z y)) y)
(+.f64 (*.f64 (*.f64 x (-.f64 z y)) 1) y)
(-.f64 (+.f64 1 (fma.f64 x (-.f64 z y) y)) 1)
(*.f64 (fma.f64 x (-.f64 z y) y) 1)
(*.f64 1 (fma.f64 x (-.f64 z y) y))
(*.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2) (cbrt.f64 (fma.f64 x (-.f64 z y) y)))
(*.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) (sqrt.f64 (fma.f64 x (-.f64 z y) y)))
(/.f64 (+.f64 (pow.f64 (*.f64 x (-.f64 z y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (-.f64 (*.f64 y y) (*.f64 (*.f64 x (-.f64 z y)) y))))
(/.f64 (-.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y y)) (-.f64 (*.f64 x (-.f64 z y)) y))
(pow.f64 (fma.f64 x (-.f64 z y) y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 3)
(pow.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) 2)
(sqrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 2))
(log.f64 (exp.f64 (fma.f64 x (-.f64 z y) y)))
(cbrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x (-.f64 z y) y)))
(exp.f64 (log.f64 (fma.f64 x (-.f64 z y) y)))
(log1p.f64 (expm1.f64 (fma.f64 x (-.f64 z y) y)))

simplify58.0ms (1.6%)

Algorithm
egg-herbie
Rules
1002×times-frac
764×associate-*r*
690×associate-*l*
644×associate-+r+
608×associate-+l+
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
072897
1186885
2658873
33859873
Stop Event
node limit
Counts
57 → 38
Calls
Call 1
Inputs
y
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(*.f64 -1 (*.f64 y (-.f64 x 1)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(+.f64 y (*.f64 x (-.f64 z y)))
(+.f64 (*.f64 x (-.f64 z y)) y)
(+.f64 (*.f64 (*.f64 x (-.f64 z y)) 1) y)
(-.f64 (+.f64 1 (fma.f64 x (-.f64 z y) y)) 1)
(*.f64 (fma.f64 x (-.f64 z y) y) 1)
(*.f64 1 (fma.f64 x (-.f64 z y) y))
(*.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2) (cbrt.f64 (fma.f64 x (-.f64 z y) y)))
(*.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) (sqrt.f64 (fma.f64 x (-.f64 z y) y)))
(/.f64 (+.f64 (pow.f64 (*.f64 x (-.f64 z y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (-.f64 (*.f64 y y) (*.f64 (*.f64 x (-.f64 z y)) y))))
(/.f64 (-.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y y)) (-.f64 (*.f64 x (-.f64 z y)) y))
(pow.f64 (fma.f64 x (-.f64 z y) y) 1)
(pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 3)
(pow.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) 2)
(sqrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 2))
(log.f64 (exp.f64 (fma.f64 x (-.f64 z y) y)))
(cbrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3))
(expm1.f64 (log1p.f64 (fma.f64 x (-.f64 z y) y)))
(exp.f64 (log.f64 (fma.f64 x (-.f64 z y) y)))
(log1p.f64 (expm1.f64 (fma.f64 x (-.f64 z y) y)))
Outputs
y
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(*.f64 (-.f64 z y) x)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (-.f64 z y) x) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 y (*.f64 -1 (*.f64 y x)))
(+.f64 y (neg.f64 (*.f64 y x)))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (+.f64 y (*.f64 -1 (*.f64 y x))))
(fma.f64 (-.f64 z y) x y)
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(*.f64 y (+.f64 1 (*.f64 -1 x)))
(+.f64 y (neg.f64 (*.f64 y x)))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 y (+.f64 1 (*.f64 -1 x))))
(fma.f64 (-.f64 z y) x y)
(*.f64 -1 (*.f64 y (-.f64 x 1)))
(+.f64 y (neg.f64 (*.f64 y x)))
(-.f64 y (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y (-.f64 x 1))))
(fma.f64 (-.f64 z y) x y)
(+.f64 y (*.f64 x (-.f64 z y)))
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 x (-.f64 z y)) y)
(fma.f64 (-.f64 z y) x y)
(+.f64 (*.f64 (*.f64 x (-.f64 z y)) 1) y)
(fma.f64 (-.f64 z y) x y)
(-.f64 (+.f64 1 (fma.f64 x (-.f64 z y) y)) 1)
(fma.f64 (-.f64 z y) x y)
(*.f64 (fma.f64 x (-.f64 z y) y) 1)
(fma.f64 (-.f64 z y) x y)
(*.f64 1 (fma.f64 x (-.f64 z y) y))
(fma.f64 (-.f64 z y) x y)
(*.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2))
(fma.f64 (-.f64 z y) x y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 2) (cbrt.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)
(*.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) (sqrt.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)
(/.f64 (+.f64 (pow.f64 (*.f64 x (-.f64 z y)) 3) (pow.f64 y 3)) (+.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (-.f64 (*.f64 y y) (*.f64 (*.f64 x (-.f64 z y)) y))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 y 3)) (fma.f64 (*.f64 (-.f64 z y) x) (*.f64 (-.f64 z y) x) (*.f64 y (-.f64 y (*.f64 (-.f64 z y) x)))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 y 3)) (fma.f64 y (-.f64 y (*.f64 (-.f64 z y) x)) (*.f64 (*.f64 (*.f64 x x) (-.f64 z y)) (-.f64 z y))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 (*.f64 (-.f64 z y) x) (-.f64 (*.f64 (-.f64 z y) x) y))))
(/.f64 (+.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 (*.f64 (-.f64 z y) x) (fma.f64 (-.f64 z y) x (neg.f64 y)))))
(/.f64 (-.f64 (*.f64 (*.f64 x (-.f64 z y)) (*.f64 x (-.f64 z y))) (*.f64 y y)) (-.f64 (*.f64 x (-.f64 z y)) y))
(fma.f64 (-.f64 z y) x y)
(pow.f64 (fma.f64 x (-.f64 z y) y) 1)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (cbrt.f64 (fma.f64 x (-.f64 z y) y)) 3)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3) 1/3)
(fma.f64 (-.f64 z y) x y)
(pow.f64 (sqrt.f64 (fma.f64 x (-.f64 z y) y)) 2)
(fma.f64 (-.f64 z y) x y)
(sqrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 2))
(fma.f64 (-.f64 z y) x y)
(log.f64 (exp.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)
(cbrt.f64 (pow.f64 (fma.f64 x (-.f64 z y) y) 3))
(fma.f64 (-.f64 z y) x y)
(expm1.f64 (log1p.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)
(exp.f64 (log.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)
(log1p.f64 (expm1.f64 (fma.f64 x (-.f64 z y) y)))
(fma.f64 (-.f64 z y) x y)

eval33.0ms (0.9%)

Compiler

Compiled 2048 to 971 computations (52.6% saved)

prune22.0ms (0.6%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New1365141
Fresh000
Picked101
Done011
Total1376143
Accurracy
100.0%
Counts
143 → 6
Alt Table
Click to see full alt table
StatusAccuracyProgram
58.4%
(-.f64 y (*.f64 y x))
100.0%
(+.f64 (*.f64 (-.f64 z y) x) y)
100.0%
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
60.6%
(*.f64 (-.f64 z y) x)
44.4%
(*.f64 z x)
41.3%
y
Compiler

Compiled 48 to 31 computations (35.4% saved)

localize3.0ms (0.1%)

Compiler

Compiled 8 to 4 computations (50% saved)

localize5.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 14 to 5 computations (64.3% saved)

series2.0ms (0.1%)

Counts
1 → 24
Calls

9 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(*.f64 (-.f64 z y) x)
0.0ms
z
@-inf
(*.f64 (-.f64 z y) x)
0.0ms
x
@0
(*.f64 (-.f64 z y) x)
0.0ms
z
@0
(*.f64 (-.f64 z y) x)
0.0ms
x
@-inf
(*.f64 (-.f64 z y) x)

rewrite57.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1646×pow1
1520×add-exp-log
1520×log1p-expm1-u
1520×expm1-log1p-u
1488×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify64.0ms (1.8%)

Algorithm
egg-herbie
Rules
1400×fma-def
1296×log-prod
792×unsub-neg
756×associate-*r*
636×associate-*l*
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068611
1162611
2514611
33087611
46410611
Stop Event
node limit
Counts
43 → 31
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 z x)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 -1 (*.f64 y x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(+.f64 (*.f64 x z) (*.f64 x (neg.f64 y)))
(+.f64 (*.f64 z x) (*.f64 (neg.f64 y) x))
(-.f64 (+.f64 1 (*.f64 (-.f64 z y) x)) 1)
(/.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 z y))))
(/.f64 (*.f64 x (-.f64 (*.f64 z z) (*.f64 y y))) (+.f64 z y))
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) x) (fma.f64 z z (*.f64 y (+.f64 z y))))
(/.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) x) (+.f64 z y))
(pow.f64 (*.f64 (-.f64 z y) x) 1)
(pow.f64 (cbrt.f64 (*.f64 (-.f64 z y) x)) 3)
(pow.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) 1/3)
(pow.f64 (sqrt.f64 (*.f64 (-.f64 z y) x)) 2)
(sqrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2))
(log.f64 (pow.f64 (exp.f64 x) (-.f64 z y)))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 z y) 3) (pow.f64 x 3)))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 z y) 3)))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 z y) x)))
(exp.f64 (log.f64 (*.f64 (-.f64 z y) x)))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 z y) x)))
Outputs
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 z x)
(*.f64 x z)
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(*.f64 -1 (*.f64 y x))
(*.f64 x (neg.f64 y))
(*.f64 y (neg.f64 x))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 -1 (*.f64 y x)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 x z) (*.f64 x (neg.f64 y)))
(*.f64 x (-.f64 z y))
(+.f64 (*.f64 z x) (*.f64 (neg.f64 y) x))
(*.f64 x (-.f64 z y))
(-.f64 (+.f64 1 (*.f64 (-.f64 z y) x)) 1)
(*.f64 x (-.f64 z y))
(/.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 z y))))
(/.f64 x (/.f64 (fma.f64 z z (*.f64 y (+.f64 y z))) (-.f64 (pow.f64 z 3) (pow.f64 y 3))))
(/.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 y z))))
(*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (/.f64 x (fma.f64 y (+.f64 y z) (*.f64 z z))))
(*.f64 x (/.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (+.f64 y z)))))
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (/.f64 (fma.f64 y y (*.f64 z (+.f64 y z))) x))
(/.f64 (*.f64 x (-.f64 (*.f64 z z) (*.f64 y y))) (+.f64 z y))
(*.f64 x (-.f64 z y))
(/.f64 (*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) x) (fma.f64 z z (*.f64 y (+.f64 z y))))
(/.f64 x (/.f64 (fma.f64 z z (*.f64 y (+.f64 y z))) (-.f64 (pow.f64 z 3) (pow.f64 y 3))))
(/.f64 (*.f64 x (-.f64 (pow.f64 z 3) (pow.f64 y 3))) (fma.f64 z z (*.f64 y (+.f64 y z))))
(*.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (/.f64 x (fma.f64 y (+.f64 y z) (*.f64 z z))))
(*.f64 x (/.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (+.f64 y z)))))
(/.f64 (-.f64 (pow.f64 z 3) (pow.f64 y 3)) (/.f64 (fma.f64 y y (*.f64 z (+.f64 y z))) x))
(/.f64 (*.f64 (-.f64 (*.f64 z z) (*.f64 y y)) x) (+.f64 z y))
(*.f64 x (-.f64 z y))
(pow.f64 (*.f64 (-.f64 z y) x) 1)
(*.f64 x (-.f64 z y))
(pow.f64 (cbrt.f64 (*.f64 (-.f64 z y) x)) 3)
(*.f64 x (-.f64 z y))
(pow.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3) 1/3)
(*.f64 x (-.f64 z y))
(pow.f64 (sqrt.f64 (*.f64 (-.f64 z y) x)) 2)
(*.f64 x (-.f64 z y))
(sqrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 2))
(*.f64 x (-.f64 z y))
(log.f64 (pow.f64 (exp.f64 x) (-.f64 z y)))
(*.f64 x (-.f64 z y))
(cbrt.f64 (pow.f64 (*.f64 (-.f64 z y) x) 3))
(*.f64 x (-.f64 z y))
(cbrt.f64 (*.f64 (pow.f64 (-.f64 z y) 3) (pow.f64 x 3)))
(*.f64 x (-.f64 z y))
(cbrt.f64 (*.f64 (pow.f64 x 3) (pow.f64 (-.f64 z y) 3)))
(*.f64 x (-.f64 z y))
(expm1.f64 (log1p.f64 (*.f64 (-.f64 z y) x)))
(*.f64 x (-.f64 z y))
(exp.f64 (log.f64 (*.f64 (-.f64 z y) x)))
(*.f64 x (-.f64 z y))
(log1p.f64 (expm1.f64 (*.f64 (-.f64 z y) x)))
(*.f64 x (-.f64 z y))

localize7.0ms (0.2%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 21 to 6 computations (71.4% saved)

localize5.0ms (0.2%)

Compiler

Compiled 13 to 5 computations (61.5% saved)

eval19.0ms (0.5%)

Compiler

Compiled 677 to 244 computations (64% saved)

prune10.0ms (0.3%)

Pruning

8 alts after pruning (3 fresh and 5 done)

PrunedKeptTotal
New60262
Fresh011
Picked011
Done044
Total60868
Accurracy
100.0%
Counts
68 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
58.4%
(-.f64 y (*.f64 y x))
100.0%
(+.f64 (*.f64 (-.f64 z y) x) y)
100.0%
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
82.5%
(+.f64 (*.f64 z x) y)
60.6%
(*.f64 (-.f64 z y) x)
44.4%
(*.f64 z x)
19.2%
(*.f64 y (neg.f64 x))
41.3%
y
Compiler

Compiled 63 to 41 computations (34.9% saved)

localize5.0ms (0.1%)

Compiler

Compiled 11 to 5 computations (54.5% saved)

localize5.0ms (0.1%)

Local Accuracy

Found 1 expressions with local accuracy:

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

Compiled 14 to 5 computations (64.3% saved)

series1.0ms (0%)

Counts
1 → 9
Calls

9 calls:

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

rewrite57.0ms (1.6%)

Algorithm
batch-egg-rewrite
Rules
1628×pow1
1502×add-exp-log
1502×log1p-expm1-u
1502×expm1-log1p-u
1472×add-log-exp
Iterations

Useful iterations: 0 (0.0ms)

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

simplify58.0ms (1.6%)

Algorithm
egg-herbie
Rules
1364×fma-neg
946×associate-*r*
916×associate-*l*
694×div-sub
640×distribute-lft-neg-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0891034
1217804
2706624
34431624
Stop Event
node limit
Counts
44 → 43
Calls
Call 1
Inputs
y
(*.f64 z x)
(*.f64 z x)
y
(*.f64 z x)
(*.f64 z x)
(*.f64 z x)
y
y
(-.f64 (+.f64 1 (fma.f64 z x y)) 1)
(-.f64 (/.f64 (pow.f64 (*.f64 z x) 2) (fma.f64 z x (neg.f64 y))) (/.f64 (*.f64 y y) (fma.f64 z x (neg.f64 y))))
(*.f64 (fma.f64 z x y) 1)
(*.f64 1 (fma.f64 z x y))
(*.f64 (cbrt.f64 (fma.f64 z x y)) (pow.f64 (cbrt.f64 (fma.f64 z x y)) 2))
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z x y)) 2) (cbrt.f64 (fma.f64 z x y)))
(*.f64 (sqrt.f64 (fma.f64 z x y)) (sqrt.f64 (fma.f64 z x y)))
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x))))))
(*.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y)) (/.f64 1 (fma.f64 z x (neg.f64 y))))
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3))))
(/.f64 1 (/.f64 (fma.f64 z x (neg.f64 y)) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x (*.f64 z y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y)) (fma.f64 z x (neg.f64 y)))
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y))) (neg.f64 (fma.f64 z x (neg.f64 y))))
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z x) 2)) (-.f64 y (*.f64 z x)))
(pow.f64 (fma.f64 z x y) 1)
(pow.f64 (cbrt.f64 (fma.f64 z x y)) 3)
(pow.f64 (pow.f64 (fma.f64 z x y) 3) 1/3)
(pow.f64 (sqrt.f64 (fma.f64 z x y)) 2)
(sqrt.f64 (pow.f64 (fma.f64 z x y) 2))
(log.f64 (exp.f64 (fma.f64 z x y)))
(cbrt.f64 (pow.f64 (fma.f64 z x y) 3))
(expm1.f64 (log1p.f64 (fma.f64 z x y)))
(exp.f64 (log.f64 (fma.f64 z x y)))
(log1p.f64 (expm1.f64 (fma.f64 z x y)))
(fma.f64 z x y)
(fma.f64 x z y)
(fma.f64 1 (*.f64 z x) y)
(fma.f64 1 y (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 z x))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (cbrt.f64 (*.f64 z x)) y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 z x))
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) y)
Outputs
y
(*.f64 z x)
(*.f64 z x)
y
(*.f64 z x)
(*.f64 z x)
(*.f64 z x)
y
y
(-.f64 (+.f64 1 (fma.f64 z x y)) 1)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(-.f64 (/.f64 (pow.f64 (*.f64 z x) 2) (fma.f64 z x (neg.f64 y))) (/.f64 (*.f64 y y) (fma.f64 z x (neg.f64 y))))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 (fma.f64 z x y) 1)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 1 (fma.f64 z x y))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 (cbrt.f64 (fma.f64 z x y)) (pow.f64 (cbrt.f64 (fma.f64 z x y)) 2))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 (pow.f64 (cbrt.f64 (fma.f64 z x y)) 2) (cbrt.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 (sqrt.f64 (fma.f64 z x y)) (sqrt.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (/.f64 1 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x))))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) 1) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 y (-.f64 y (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (*.f64 x (-.f64 (*.f64 z x) y)))))
(*.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y)) (/.f64 1 (fma.f64 z x (neg.f64 y))))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(/.f64 1 (/.f64 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))) (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) 1) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 y (-.f64 y (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (*.f64 x (-.f64 (*.f64 z x) y)))))
(/.f64 1 (/.f64 (fma.f64 z x (neg.f64 y)) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y))))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) 1) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 y (-.f64 y (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (*.f64 x (-.f64 (*.f64 z x) y)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (+.f64 (*.f64 y y) (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 x (*.f64 z y)))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) 1) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 y (-.f64 y (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (*.f64 x (-.f64 (*.f64 z x) y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y)) (fma.f64 z x (neg.f64 y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(/.f64 (neg.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3))) (neg.f64 (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x))))))
(/.f64 (*.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) 1) (+.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y (-.f64 y (*.f64 z x)))))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 y (-.f64 y (*.f64 z x)) (pow.f64 (*.f64 z x) 2)))
(/.f64 (+.f64 (pow.f64 y 3) (pow.f64 (*.f64 z x) 3)) (fma.f64 (*.f64 z x) (-.f64 (*.f64 z x) y) (*.f64 y y)))
(/.f64 (+.f64 (pow.f64 (*.f64 z x) 3) (pow.f64 y 3)) (fma.f64 y y (*.f64 z (*.f64 x (-.f64 (*.f64 z x) y)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 z x) 2) (*.f64 y y))) (neg.f64 (fma.f64 z x (neg.f64 y))))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(/.f64 (-.f64 (*.f64 y y) (pow.f64 (*.f64 z x) 2)) (-.f64 y (*.f64 z x)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(pow.f64 (fma.f64 z x y) 1)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(pow.f64 (cbrt.f64 (fma.f64 z x y)) 3)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(pow.f64 (pow.f64 (fma.f64 z x y) 3) 1/3)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(pow.f64 (sqrt.f64 (fma.f64 z x y)) 2)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(sqrt.f64 (pow.f64 (fma.f64 z x y) 2))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(log.f64 (exp.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(cbrt.f64 (pow.f64 (fma.f64 z x y) 3))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(expm1.f64 (log1p.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(exp.f64 (log.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(log1p.f64 (expm1.f64 (fma.f64 z x y)))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 z x y)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 x z y)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 1 (*.f64 z x) y)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 1 y (*.f64 z x))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y) (*.f64 z x))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 z x)) 2) (cbrt.f64 (*.f64 z x)) y)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 (sqrt.f64 y) (sqrt.f64 y) (*.f64 z x))
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)
(fma.f64 (sqrt.f64 (*.f64 z x)) (sqrt.f64 (*.f64 z x)) y)
(+.f64 1 (-.f64 (fma.f64 z x y) 1))
(+.f64 (fma.f64 z x y) 0)
(fma.f64 z x y)

eval38.0ms (1.1%)

Compiler

Compiled 520 to 196 computations (62.3% saved)

prune8.0ms (0.2%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New43043
Fresh011
Picked011
Done066
Total43851
Accurracy
100.0%
Counts
51 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
58.4%
(-.f64 y (*.f64 y x))
100.0%
(+.f64 (*.f64 (-.f64 z y) x) y)
100.0%
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
82.5%
(+.f64 (*.f64 z x) y)
60.6%
(*.f64 (-.f64 z y) x)
44.4%
(*.f64 z x)
19.2%
(*.f64 y (neg.f64 x))
41.3%
y
Compiler

Compiled 63 to 41 computations (34.9% saved)

eval0.0ms (0%)

Compiler

Compiled 3 to 3 computations (0% saved)

prune3.0ms (0.1%)

Pruning

8 alts after pruning (1 fresh and 7 done)

PrunedKeptTotal
New000
Fresh011
Picked000
Done077
Total088
Accurracy
100.0%
Counts
8 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
58.4%
(-.f64 y (*.f64 y x))
100.0%
(+.f64 (*.f64 (-.f64 z y) x) y)
100.0%
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
82.5%
(+.f64 (*.f64 z x) y)
60.6%
(*.f64 (-.f64 z y) x)
44.4%
(*.f64 z x)
19.2%
(*.f64 y (neg.f64 x))
41.3%
y
Compiler

Compiled 63 to 41 computations (34.9% saved)

regimes25.0ms (0.7%)

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

4 calls:

6.0ms
y
6.0ms
(+.f64 (*.f64 (-.f64 1 x) y) (*.f64 x z))
5.0ms
x
5.0ms
z
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 72 to 35 computations (51.4% saved)

regimes91.0ms (2.5%)

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

3 calls:

54.0ms
y
21.0ms
z
14.0ms
x
Results
AccuracySegmentsBranch
98.4%3x
89.8%5y
92.0%3z
Compiler

Compiled 38 to 20 computations (47.4% saved)

bsearch30.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
7.669436060136559e-5
0.3199783944679285
17.0ms
-14.004833679864698
-3.3837262066331167e-10
Results
27.0ms288×body256valid
Compiler

Compiled 342 to 229 computations (33% saved)

regimes122.0ms (3.4%)

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

3 calls:

70.0ms
z
14.0ms
y
11.0ms
x
Results
AccuracySegmentsBranch
81.6%3x
73.9%3y
70.9%9z
Compiler

Compiled 28 to 17 computations (39.3% saved)

bsearch52.0ms (1.4%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
5.988878480828942e-80
1.5571460713001026e-78
39.0ms
-1.4343774774948991e-86
-3.4616375710257223e-90
Results
49.0ms240×body256valid
Compiler

Compiled 228 to 163 computations (28.5% saved)

regimes89.0ms (2.5%)

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

3 calls:

56.0ms
z
22.0ms
x
10.0ms
y
Results
AccuracySegmentsBranch
72.4%7x
67.1%3y
64.1%5z
Compiler

Compiled 23 to 15 computations (34.8% saved)

bsearch184.0ms (5.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
67.0ms
1.3368001259592942e+153
8.922286586579738e+162
13.0ms
3.269170643560789e+23
3.709185019130288e+25
12.0ms
5.988878480828942e-80
1.5571460713001026e-78
14.0ms
-1.4343774774948991e-86
-3.4616375710257223e-90
17.0ms
-14.004833679864698
-3.3837262066331167e-10
61.0ms
-5.292447164546499e+219
-1.6198339977476032e+213
Results
152.0ms816×body256valid
22.0ms232×body256infinite
Compiler

Compiled 738 to 544 computations (26.3% saved)

regimes92.0ms (2.6%)

Accuracy

Total -40.9b remaining (-194.3%)

Threshold costs -40.9b (-194.3%)

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

3 calls:

70.0ms
y
12.0ms
z
8.0ms
x
Results
AccuracySegmentsBranch
65.4%3x
67.1%3y
62.0%3z
Compiler

Compiled 19 to 13 computations (31.6% saved)

bsearch140.0ms (3.9%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
127.0ms
4.97156937952546e-77
8.622177602755607e-76
12.0ms
-3.269731657067275e-33
-8.739576838426469e-35
Results
137.0ms224×body256valid
Compiler

Compiled 186 to 139 computations (25.3% saved)

simplify11.0ms (0.3%)

Algorithm
egg-herbie
Rules
14×*-commutative
12×+-commutative
sub-neg
if-if-or-not
neg-mul-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
052242
178242
288242
394242
496242
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (-.f64 z y) x) y)
(if (<=.f64 x -1) (*.f64 (-.f64 z y) x) (if (<=.f64 x 5584463537939415/18014398509481984) (+.f64 (*.f64 z x) y) (*.f64 (-.f64 z y) x)))
(if (<=.f64 x -2687693690613365/4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552) (*.f64 (-.f64 z y) x) (if (<=.f64 x 3754664711579725/4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048) y (*.f64 (-.f64 z y) x)))
(if (<=.f64 x -9999999999999999544446266951486038123467425400819078260993214423089680518452271383223760211130420606034208307593944715707740128306913340586165347614418822310868858990958736965765439335377993421392542578277827477504) (*.f64 z x) (if (<=.f64 x -14) (*.f64 y (neg.f64 x)) (if (<=.f64 x -6988003595594749/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (*.f64 z x) (if (<=.f64 x 4380442163509679/4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048) y (if (<=.f64 x 31999999999999999463129088) (*.f64 z x) (if (<=.f64 x 779999999999999960345063098244882757094418733214598526862131419436882582430454444173221967970030288827021411145366163702202650778142634762913852782435893248) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))
(if (<=.f64 y -2572242881702389/23384026197294446691258957323460528314494920687616) y (if (<=.f64 y 4562960586989249/8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504) (*.f64 z x) y))
y
Outputs
(+.f64 (*.f64 (-.f64 z y) x) y)
(+.f64 y (*.f64 (-.f64 z y) x))
(if (<=.f64 x -1) (*.f64 (-.f64 z y) x) (if (<=.f64 x 5584463537939415/18014398509481984) (+.f64 (*.f64 z x) y) (*.f64 (-.f64 z y) x)))
(if (or (<=.f64 x -1) (not (<=.f64 x 5584463537939415/18014398509481984))) (*.f64 (-.f64 z y) x) (+.f64 y (*.f64 z x)))
(if (<=.f64 x -2687693690613365/4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552) (*.f64 (-.f64 z y) x) (if (<=.f64 x 3754664711579725/4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048) y (*.f64 (-.f64 z y) x)))
(if (or (<=.f64 x -2687693690613365/4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552) (not (<=.f64 x 3754664711579725/4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048))) (*.f64 (-.f64 z y) x) y)
(if (<=.f64 x -9999999999999999544446266951486038123467425400819078260993214423089680518452271383223760211130420606034208307593944715707740128306913340586165347614418822310868858990958736965765439335377993421392542578277827477504) (*.f64 z x) (if (<=.f64 x -14) (*.f64 y (neg.f64 x)) (if (<=.f64 x -6988003595594749/35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416) (*.f64 z x) (if (<=.f64 x 4380442163509679/4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048) y (if (<=.f64 x 31999999999999999463129088) (*.f64 z x) (if (<=.f64 x 779999999999999960345063098244882757094418733214598526862131419436882582430454444173221967970030288827021411145366163702202650778142634762913852782435893248) (*.f64 y (neg.f64 x)) (*.f64 z x)))))))
(if (<=.f64 y -2572242881702389/23384026197294446691258957323460528314494920687616) y (if (<=.f64 y 4562960586989249/8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504) (*.f64 z x) y))
y
Compiler

Compiled 118 to 69 computations (41.5% saved)

soundness298.0ms (8.3%)

Rules
1400×fma-def
1296×log-prod
1104×div-sub
1074×fma-def
956×fma-def
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
01021
12021
23321
36021
412917
522115
635115
756415
897615
9116415
10122315
11123315
01953016
14732660
212722608
350702314
068611
1162611
2514611
33087611
46410611
Stop Event
node limit
node limit
saturated
Compiler

Compiled 188 to 85 computations (54.8% saved)

end85.0ms (2.4%)

Compiler

Compiled 103 to 48 computations (53.4% saved)

Profiling

Loading profile data...