Numeric.LinearAlgebra.Util:formatSparse from hmatrix-0.16.1.5

Time bar (total: 1.4s)

analyze12.0ms (0.8%)

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
50%50%50%0.1%0%0%0%3
50%50%50%0.1%0%0%0%4
75%74.9%25%0.1%0%0%0%5
75%74.9%25%0.1%0%0%0%6
87.5%87.4%12.5%0.1%0%0%0%7
87.5%87.4%12.5%0.1%0%0%0%8
93.8%93.7%6.2%0.1%0%0%0%9
93.8%93.7%6.2%0.1%0%0%0%10
96.9%96.8%3.1%0.1%0%0%0%11
96.9%96.8%3.1%0.1%0%0%0%12
Compiler

Compiled 10 to 7 computations (30% saved)

sample693.0ms (50.6%)

Results
604.0ms7300×body256valid
78.0ms956×body256infinite
Bogosity

preprocess53.0ms (3.8%)

Algorithm
egg-herbie
Rules
130×fma-def
48×times-frac
36×associate-/r*
34×sub-neg
32×associate-/l*
Problems
256×No Errors
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025158
142150
283150
3174150
4253150
5316150
6363150
7371150
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 (neg.f64 x) y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 x (neg.f64 y))) (fabs.f64 (neg.f64 y)))
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 x))
Outputs
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 (neg.f64 x) y)) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 x (neg.f64 y))) (fabs.f64 (neg.f64 y)))
(/.f64 (fabs.f64 (-.f64 (neg.f64 x) y)) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 x))
Compiler

Compiled 30 to 13 computations (56.7% saved)

eval0.0ms (0%)

Compiler

Compiled 9 to 6 computations (33.3% saved)

prune1.0ms (0.1%)

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

Compiled 18 to 12 computations (33.3% saved)

localize31.0ms (2.3%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
Compiler

Compiled 21 to 7 computations (66.7% saved)

series3.0ms (0.2%)

Counts
1 → 8
Calls

6 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
1.0ms
y
@-inf
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
1.0ms
y
@inf
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
0.0ms
y
@0
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
0.0ms
x
@inf
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))

rewrite97.0ms (7.1%)

Algorithm
batch-egg-rewrite
Rules
1242×prod-diff
645×log1p-expm1-u
645×expm1-log1p-u
570×log-prod
472×fma-def
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01226
114922
2231522
Stop Event
node limit
Counts
1 → 51
Calls
Call 1
Inputs
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
Outputs
(+.f64 0 (/.f64 (-.f64 y x) y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))) (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 y x) y))) 1)
(-.f64 (/.f64 y y) (/.f64 x y))
(*.f64 (-.f64 y x) (/.f64 1 y))
(*.f64 (/.f64 (-.f64 y x) y) 1)
(*.f64 (/.f64 (-.f64 y x) y) (log.f64 (exp.f64 1)))
(*.f64 1 (/.f64 (-.f64 y x) y))
(*.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 (cbrt.f64 (-.f64 y x)) (/.f64 1 y)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) (sqrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (/.f64 1 y)))
(*.f64 (neg.f64 (-.f64 y x)) (/.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 y) (-.f64 y x))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (-.f64 y x)) (sqrt.f64 y)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 y x) (cbrt.f64 y)))
(*.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (-.f64 y x) (sqrt.f64 y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) 1) (/.f64 (cbrt.f64 (-.f64 y x)) y))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) 1) (/.f64 (sqrt.f64 (-.f64 y x)) y))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 y)))
(pow.f64 (/.f64 (-.f64 y x) y) 1)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) 3)
(pow.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2) 1/2)
(pow.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) 2)
(pow.f64 (/.f64 y (-.f64 y x)) -1)
(pow.f64 (/.f64 (/.f64 y (-.f64 y x)) 1) -1)
(neg.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(sqrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2))
(fabs.f64 (/.f64 (-.f64 y x) y))
(fabs.f64 (neg.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(fabs.f64 (/.f64 (neg.f64 (-.f64 y x)) y))
(fabs.f64 (/.f64 (-.f64 x y) y))
(fabs.f64 (/.f64 (-.f64 x y) (neg.f64 y)))
(log.f64 (exp.f64 (/.f64 (-.f64 y x) y)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 y x) y))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 y 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 y x) y)))
(exp.f64 (log.f64 (/.f64 (-.f64 y x) y)))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (-.f64 y x) y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (-.f64 y x) y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 y x) y))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 y (-.f64 y x))) -1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 y x) y)))

simplify54.0ms (4%)

Algorithm
egg-herbie
Rules
876×log-prod
860×fma-def
670×log-div
664×distribute-lft-in
646×distribute-rgt-in
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01471754
13321496
210821460
361911434
Stop Event
node limit
Counts
59 → 73
Calls
Call 1
Inputs
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(+.f64 0 (/.f64 (-.f64 y x) y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))) (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 y x) y))) 1)
(-.f64 (/.f64 y y) (/.f64 x y))
(*.f64 (-.f64 y x) (/.f64 1 y))
(*.f64 (/.f64 (-.f64 y x) y) 1)
(*.f64 (/.f64 (-.f64 y x) y) (log.f64 (exp.f64 1)))
(*.f64 1 (/.f64 (-.f64 y x) y))
(*.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 (cbrt.f64 (-.f64 y x)) (/.f64 1 y)))
(*.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) (sqrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (/.f64 1 y)))
(*.f64 (neg.f64 (-.f64 y x)) (/.f64 1 (neg.f64 y)))
(*.f64 (/.f64 1 y) (-.f64 y x))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (-.f64 y x)) (sqrt.f64 y)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 y x) (cbrt.f64 y)))
(*.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (-.f64 y x) (sqrt.f64 y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) 1) (/.f64 (cbrt.f64 (-.f64 y x)) y))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) 1) (/.f64 (sqrt.f64 (-.f64 y x)) y))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 y)))
(pow.f64 (/.f64 (-.f64 y x) y) 1)
(pow.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) 3)
(pow.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2) 1/2)
(pow.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3) 1/3)
(pow.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) 2)
(pow.f64 (/.f64 y (-.f64 y x)) -1)
(pow.f64 (/.f64 (/.f64 y (-.f64 y x)) 1) -1)
(neg.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(sqrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2))
(fabs.f64 (/.f64 (-.f64 y x) y))
(fabs.f64 (neg.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(fabs.f64 (/.f64 (neg.f64 (-.f64 y x)) y))
(fabs.f64 (/.f64 (-.f64 x y) y))
(fabs.f64 (/.f64 (-.f64 x y) (neg.f64 y)))
(log.f64 (exp.f64 (/.f64 (-.f64 y x) y)))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 y x) y))))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 y 3)))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 y x) y)))
(exp.f64 (log.f64 (/.f64 (-.f64 y x) y)))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1) 1))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (-.f64 y x) y))) 3))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (-.f64 y x) y))) 1/3))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 y x) y))) 2))
(exp.f64 (*.f64 (log.f64 (/.f64 y (-.f64 y x))) -1))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 y x) y)))
Outputs
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (neg.f64 (+.f64 x (*.f64 -1 y)))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(/.f64 (fabs.f64 (+.f64 y (*.f64 -1 x))) (fabs.f64 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(+.f64 0 (/.f64 (-.f64 y x) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))) (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y))))) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 1 (/.f64 x y)))) (cbrt.f64 (exp.f64 (-.f64 1 (/.f64 x y)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 1 (/.f64 x y))))))
(+.f64 (*.f64 2 (log.f64 (cbrt.f64 (exp.f64 (-.f64 1 (/.f64 x y)))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 1 (/.f64 x y))))))
(*.f64 3 (log.f64 (cbrt.f64 (exp.f64 (+.f64 -1 (/.f64 x y))))))
(+.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (-.f64 y x) y)))))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(-.f64 (exp.f64 (log1p.f64 (/.f64 (-.f64 y x) y))) 1)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(-.f64 (/.f64 y y) (/.f64 x y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (-.f64 y x) (/.f64 1 y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (/.f64 (-.f64 y x) y) 1)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (/.f64 (-.f64 y x) y) (log.f64 (exp.f64 1)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 1 (/.f64 (-.f64 y x) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)))
(*.f64 (cbrt.f64 (-.f64 1 (/.f64 x y))) (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)))
(*.f64 (cbrt.f64 (-.f64 1 (/.f64 x y))) (cbrt.f64 (pow.f64 (-.f64 1 (/.f64 x y)) 2)))
(*.f64 (cbrt.f64 (+.f64 -1 (/.f64 x y))) (cbrt.f64 (pow.f64 (+.f64 -1 (/.f64 x y)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (cbrt.f64 (-.f64 1 (/.f64 x y))) (cbrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2)))
(*.f64 (cbrt.f64 (-.f64 1 (/.f64 x y))) (cbrt.f64 (pow.f64 (-.f64 1 (/.f64 x y)) 2)))
(*.f64 (cbrt.f64 (+.f64 -1 (/.f64 x y))) (cbrt.f64 (pow.f64 (+.f64 -1 (/.f64 x y)) 2)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 (cbrt.f64 (-.f64 y x)) (/.f64 1 y)))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 (/.f64 1 y) (cbrt.f64 (-.f64 y x))))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (/.f64 (cbrt.f64 (-.f64 y x)) y))
(/.f64 (cbrt.f64 (-.f64 x y)) (/.f64 y (cbrt.f64 (pow.f64 (-.f64 x y) 2))))
(*.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) (sqrt.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (sqrt.f64 (-.f64 y x)) (*.f64 (sqrt.f64 (-.f64 y x)) (/.f64 1 y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (neg.f64 (-.f64 y x)) (/.f64 1 (neg.f64 y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (/.f64 1 y) (-.f64 y x))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (pow.f64 (cbrt.f64 y) 2)) (cbrt.f64 (/.f64 (-.f64 y x) y)))
(*.f64 (cbrt.f64 (-.f64 1 (/.f64 x y))) (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (pow.f64 (cbrt.f64 y) 2)))
(/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (/.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 (+.f64 -1 (/.f64 x y)))))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (-.f64 y x)) (sqrt.f64 y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (sqrt.f64 y)) (/.f64 (cbrt.f64 (-.f64 x y)) (sqrt.f64 y)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 y x) (cbrt.f64 y)))
(/.f64 (/.f64 (-.f64 y x) (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2))
(/.f64 (-.f64 x y) (*.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y)))
(/.f64 (-.f64 x y) (pow.f64 (cbrt.f64 y) 3))
(*.f64 (/.f64 1 (sqrt.f64 y)) (/.f64 (-.f64 y x) (sqrt.f64 y)))
(/.f64 (/.f64 (-.f64 y x) (sqrt.f64 y)) (sqrt.f64 y))
(/.f64 (-.f64 x y) (*.f64 (sqrt.f64 y) (sqrt.f64 y)))
(*.f64 (/.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) 1) (/.f64 (cbrt.f64 (-.f64 y x)) y))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (*.f64 (/.f64 1 y) (cbrt.f64 (-.f64 y x))))
(*.f64 (cbrt.f64 (pow.f64 (-.f64 x y) 2)) (/.f64 (cbrt.f64 (-.f64 y x)) y))
(/.f64 (cbrt.f64 (-.f64 x y)) (/.f64 y (cbrt.f64 (pow.f64 (-.f64 x y) 2))))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) 1) (/.f64 (sqrt.f64 (-.f64 y x)) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(*.f64 (/.f64 (sqrt.f64 (-.f64 y x)) (pow.f64 (cbrt.f64 y) 2)) (/.f64 (sqrt.f64 (-.f64 y x)) (cbrt.f64 y)))
(*.f64 (/.f64 1 (pow.f64 (cbrt.f64 y) 2)) (/.f64 (-.f64 y x) (cbrt.f64 y)))
(/.f64 (/.f64 (-.f64 y x) (cbrt.f64 y)) (pow.f64 (cbrt.f64 y) 2))
(/.f64 (-.f64 x y) (*.f64 (pow.f64 (cbrt.f64 y) 2) (cbrt.f64 y)))
(/.f64 (-.f64 x y) (pow.f64 (cbrt.f64 y) 3))
(pow.f64 (/.f64 (-.f64 y x) y) 1)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (cbrt.f64 (/.f64 (-.f64 y x) y)) 3)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2) 1/2)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3) 1/3)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (sqrt.f64 (/.f64 (-.f64 y x) y)) 2)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (/.f64 y (-.f64 y x)) -1)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(pow.f64 (/.f64 (/.f64 y (-.f64 y x)) 1) -1)
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(neg.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(sqrt.f64 (pow.f64 (/.f64 y (-.f64 y x)) -2))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (/.f64 (-.f64 y x) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (neg.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (/.f64 (-.f64 y x) (neg.f64 y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (/.f64 (neg.f64 (-.f64 y x)) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (/.f64 (-.f64 x y) y))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(fabs.f64 (/.f64 (-.f64 x y) (neg.f64 y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(log.f64 (exp.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(log.f64 (+.f64 1 (expm1.f64 (/.f64 (-.f64 y x) y))))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(cbrt.f64 (pow.f64 (/.f64 (-.f64 y x) y) 3))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(cbrt.f64 (/.f64 (pow.f64 (-.f64 y x) 3) (pow.f64 y 3)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(expm1.f64 (log1p.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (log.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (-.f64 y x) y)) 1) 1))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (-.f64 y x) y))) 3))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (-.f64 y x) y))) 1/3))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (-.f64 y x) y))) 2))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(exp.f64 (*.f64 (log.f64 (/.f64 y (-.f64 y x))) -1))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
(log1p.f64 (expm1.f64 (/.f64 (-.f64 y x) y)))
(fabs.f64 (-.f64 (/.f64 x y) 1))
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))

eval15.0ms (1.1%)

Compiler

Compiled 791 to 322 computations (59.3% saved)

prune11.0ms (0.8%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New71273
Fresh000
Picked101
Done000
Total72274
Accuracy
100.0%
Counts
74 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.3%
(-.f64 1 (/.f64 x y))
31.7%
(+.f64 -1 (/.f64 x y))
69.3%
(-.f64 1 (/.f64 x y))
31.7%
(+.f64 -1 (/.f64 x y))
Compiler

Compiled 28 to 20 computations (28.6% saved)

localize33.0ms (2.4%)

Compiler

Compiled 25 to 10 computations (60% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune2.0ms (0.1%)

Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New000
Fresh000
Picked022
Done000
Total022
Accuracy
100.0%
Counts
2 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.3%
(-.f64 1 (/.f64 x y))
31.7%
(+.f64 -1 (/.f64 x y))
Compiler

Compiled 40 to 24 computations (40% saved)

regimes15.0ms (1.1%)

Counts
4 → 1
Calls
Call 1
Inputs
(+.f64 -1 (/.f64 x y))
(-.f64 1 (/.f64 x y))
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(/.f64 (fabs.f64 (-.f64 y x)) (fabs.f64 y))
Outputs
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Calls

3 calls:

5.0ms
x
4.0ms
y
3.0ms
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
Compiler

Compiled 41 to 24 computations (41.5% saved)

regimes36.0ms (2.6%)

Counts
2 → 2
Calls
Call 1
Inputs
(+.f64 -1 (/.f64 x y))
(-.f64 1 (/.f64 x y))
Outputs
(-.f64 1 (/.f64 x y))
(+.f64 -1 (/.f64 x y))
Calls

2 calls:

28.0ms
y
7.0ms
x
Results
AccuracySegmentsBranch
73.6%2x
76.0%7y
Compiler

Compiled 18 to 11 computations (38.9% saved)

regimes6.0ms (0.4%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(+.f64 -1 (/.f64 x y))
Outputs
(+.f64 -1 (/.f64 x y))
Calls

2 calls:

3.0ms
y
3.0ms
x
Results
AccuracySegmentsBranch
31.7%1y
31.7%1x
Compiler

Compiled 13 to 9 computations (30.8% saved)

bsearch10.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
10.0ms
6.452355233478311e+171
6.599128999815458e+172
Results
7.0ms73×body256valid
2.0ms23×body256infinite
Compiler

Compiled 110 to 82 computations (25.5% saved)

simplify4.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

IterNodesCost
02399
13299
24199
34899
45299
55399
Stop Event
done
saturated
Calls
Call 1
Inputs
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(if (<=.f64 x 53999999999999999659748432192286527365425336254846818727558575167382638953156904908732522607900502556481091806607446232976804386869158146591776516970924702435206200490459136) (-.f64 1 (/.f64 x y)) (+.f64 -1 (/.f64 x y)))
(+.f64 -1 (/.f64 x y))
Outputs
(/.f64 (fabs.f64 (-.f64 x y)) (fabs.f64 y))
(if (<=.f64 x 53999999999999999659748432192286527365425336254846818727558575167382638953156904908732522607900502556481091806607446232976804386869158146591776516970924702435206200490459136) (-.f64 1 (/.f64 x y)) (+.f64 -1 (/.f64 x y)))
(if (<=.f64 x 53999999999999999659748432192286527365425336254846818727558575167382638953156904908732522607900502556481091806607446232976804386869158146591776516970924702435206200490459136) (-.f64 1 (/.f64 x y)) (+.f64 (/.f64 x y) -1))
(+.f64 -1 (/.f64 x y))
(+.f64 (/.f64 x y) -1)
Compiler

Compiled 32 to 21 computations (34.4% saved)

soundness261.0ms (19.1%)

Rules
876×log-prod
876×log-prod
860×fma-def
860×fma-def
670×log-div
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
025158
142150
283150
3174150
4253150
5316150
6363150
7371150
01471754
13321496
210821460
361911434
01471754
13321496
210821460
361911434
Stop Event
node limit
node limit
saturated
Compiler

Compiled 308 to 120 computations (61% saved)

end0.0ms (0%)

preprocess31.0ms (2.3%)

Compiler

Compiled 74 to 44 computations (40.5% saved)

Profiling

Loading profile data...