Graphics.Rendering.Chart.Plot.Vectors:renderPlotVectors from Chart-1.5.3

Time bar (total: 3.5s)

analyze0.0ms (0%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 12 to 9 computations (25% saved)

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

sample1.6s (45.1%)

Results
707.0ms5322×0valid
523.0ms1777×1valid
138.0ms1035×0infinite
53.0ms121×2valid
0.0ms0valid
Precisions
Click to see histograms. Total time spent on operations: 525.0ms
Operation ival-sub, time spent: 185.0ms, 35.0% of total-time
Operation backward-pass, time spent: 118.0ms, 22.0% of total-time
Operation ival-add, time spent: 111.0ms, 21.0% of total-time
Operation ival-mult, time spent: 89.0ms, 17.0% of total-time
Operation const, time spent: 21.0ms, 4.0% of total-time
Bogosity

preprocess460.0ms (13.2%)

Algorithm
egg-herbie
Rules
725×fma-neg
569×unsub-neg
521×sub-neg
432×distribute-lft-out
415×distribute-lft-out--
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
704(-31834916046823.324 -5.354992283271425e-161)0-(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
00-0-x
00-0-(-.f64 #s(literal 1 binary64) x)
00-0-#s(literal 1 binary64)
00-0-(*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y))
00-0-y
00-0-(-.f64 #s(literal 1 binary64) y)
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
025270
157222
2167218
3709218
42707175
55011175
66069175
76595175
86843175
96993175
107082175
117202175
127543175
Stop Event
node limit
Calls
Call 1
Inputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) (neg.f64 x)) (-.f64 #s(literal 1 binary64) y)))
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) (neg.f64 y))))
(neg.f64 (+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) (neg.f64 x)) (-.f64 #s(literal 1 binary64) y))))
(neg.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) (neg.f64 y)))))
(+.f64 y (*.f64 (-.f64 #s(literal 1 binary64) y) (-.f64 #s(literal 1 binary64) x)))
Outputs
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y) x)
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y) x)
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) (neg.f64 x)) (-.f64 #s(literal 1 binary64) y)))
(+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) y) (-.f64 #s(literal 1 binary64) (neg.f64 x))))
(fma.f64 (-.f64 #s(literal 1 binary64) y) (+.f64 x #s(literal 1 binary64)) (neg.f64 x))
(-.f64 (*.f64 (-.f64 #s(literal 1 binary64) y) (+.f64 x #s(literal 1 binary64))) x)
(+.f64 #s(literal 1 binary64) (*.f64 y (-.f64 #s(literal -1 binary64) x)))
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) (neg.f64 y))))
(fma.f64 (-.f64 #s(literal 1 binary64) x) (+.f64 #s(literal 1 binary64) y) x)
(+.f64 #s(literal 1 binary64) (*.f64 (-.f64 #s(literal 1 binary64) x) y))
(neg.f64 (+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) (neg.f64 x)) (-.f64 #s(literal 1 binary64) y))))
(neg.f64 (+.f64 (neg.f64 x) (*.f64 (-.f64 #s(literal 1 binary64) y) (-.f64 #s(literal 1 binary64) (neg.f64 x)))))
(-.f64 x (*.f64 (-.f64 #s(literal 1 binary64) y) (+.f64 x #s(literal 1 binary64))))
(fma.f64 (+.f64 x #s(literal 1 binary64)) (+.f64 y #s(literal -1 binary64)) x)
(fma.f64 (-.f64 #s(literal 1 binary64) y) (-.f64 #s(literal -1 binary64) x) x)
(-.f64 #s(literal -1 binary64) (*.f64 y (-.f64 #s(literal -1 binary64) x)))
(neg.f64 (+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) (neg.f64 y)))))
(neg.f64 (fma.f64 (-.f64 #s(literal 1 binary64) x) (+.f64 #s(literal 1 binary64) y) x))
(fma.f64 (+.f64 #s(literal 1 binary64) y) (+.f64 x #s(literal -1 binary64)) (neg.f64 x))
(+.f64 #s(literal -1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 y (*.f64 (-.f64 #s(literal 1 binary64) y) (-.f64 #s(literal 1 binary64) x)))
(+.f64 y (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
(fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y) y)
(+.f64 #s(literal 1 binary64) (*.f64 x (+.f64 y #s(literal -1 binary64))))
Compiler

Compiled 67 to 46 computations (31.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 42.0ms
Operation ival-sub, time spent: 23.0ms, 55.0% of total-time
Operation ival-mult, time spent: 12.0ms, 28.0% of total-time
Operation ival-add, time spent: 4.0ms, 9.0% of total-time
Operation const, time spent: 3.0ms, 7.0% of total-time

eval1.0ms (0%)

Compiler

Compiled 17 to 12 computations (29.4% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
Compiler

Compiled 9 to 7 computations (22.2% saved)

localize58.0ms (1.7%)

Localize:

Found 1 expressions with local error:

NewAccuracyProgram
100.0%
(*.f64 y (+.f64 x #s(literal -1 binary64)))
Compiler

Compiled 22 to 15 computations (31.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
Operation ival-add, time spent: 6.0ms, 57.0% of total-time
Operation ival-mult, time spent: 4.0ms, 38.0% of total-time
Operation const, time spent: 1.0ms, 9.0% of total-time

series151.0ms (4.3%)

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

6 calls:

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

rewrite381.0ms (11%)

Algorithm
batch-egg-rewrite
Rules
515×log1p-expm1-u
515×expm1-log1p-u
428×unpow-prod-down
418×pow1
279×add-exp-log
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01019
110419
2141519
Stop Event
node limit
Counts
1 → 53
Calls
Call 1
Inputs
(*.f64 y (+.f64 x #s(literal -1 binary64)))
Outputs
(+.f64 (*.f64 y x) (neg.f64 y))
(+.f64 (neg.f64 y) (*.f64 y x))
(+.f64 #s(literal 0 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 (*.f64 (*.f64 y x) #s(literal 1 binary64)) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) (pow.f64 (neg.f64 y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 y) #s(literal 2 binary64)) (*.f64 (*.f64 y x) (neg.f64 y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (pow.f64 (neg.f64 y) #s(literal 2 binary64))) (-.f64 (*.f64 y x) (neg.f64 y)))
(/.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64)))) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(/.f64 (*.f64 y (fma.f64 x x #s(literal -1 binary64))) (+.f64 x #s(literal 1 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) y) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 x x #s(literal -1 binary64)) y) (+.f64 x #s(literal 1 binary64)))
(pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 2 binary64))
(pow.f64 (E.f64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))) (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(sqrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))
(cbrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(exp.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64)))
(fma.f64 y x (neg.f64 y))
(fma.f64 y #s(literal -1 binary64) (*.f64 y x))
(fma.f64 x y (neg.f64 y))
(fma.f64 #s(literal -1 binary64) y (*.f64 y x))
(fma.f64 #s(literal 1 binary64) (*.f64 y x) (neg.f64 y))
(fma.f64 #s(literal 1 binary64) (neg.f64 y) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) x) (neg.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64)) (*.f64 (cbrt.f64 x) y) (neg.f64 y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (neg.f64 y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (neg.f64 y))
(fma.f64 (*.f64 y x) #s(literal 1 binary64) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y x)) (neg.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) #s(literal 2 binary64)) (cbrt.f64 (neg.f64 y)) (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (neg.f64 y))
(fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 y x))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x) (neg.f64 y))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 y))
(fma.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (*.f64 y x))
(fma.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 y x))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (neg.f64 y))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 y))

simplify76.0ms (2.2%)

Algorithm
egg-herbie
Rules
486×distribute-lft-neg-out
443×associate-*r*
433×associate-*l*
394×fma-define
387×distribute-lft-neg-in
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01601781
13611759
29341743
345371743
Stop Event
node limit
Counts
77 → 72
Calls
Call 1
Inputs
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) y)
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(*.f64 x y)
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 x y)
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(+.f64 (*.f64 y x) (neg.f64 y))
(+.f64 (neg.f64 y) (*.f64 y x))
(+.f64 #s(literal 0 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 (*.f64 (*.f64 y x) #s(literal 1 binary64)) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 1 binary64))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) (pow.f64 (neg.f64 y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 y) #s(literal 2 binary64)) (*.f64 (*.f64 y x) (neg.f64 y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (pow.f64 (neg.f64 y) #s(literal 2 binary64))) (-.f64 (*.f64 y x) (neg.f64 y)))
(/.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64)))) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(/.f64 (*.f64 y (fma.f64 x x #s(literal -1 binary64))) (+.f64 x #s(literal 1 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) y) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(/.f64 (*.f64 (fma.f64 x x #s(literal -1 binary64)) y) (+.f64 x #s(literal 1 binary64)))
(pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 1 binary64))
(pow.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 3 binary64))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(pow.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 2 binary64))
(pow.f64 (E.f64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))) (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(sqrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)))
(log.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))
(cbrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)))
(expm1.f64 (log1p.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(log1p.f64 (expm1.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(exp.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 3 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 1/3 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64)))
(fma.f64 y x (neg.f64 y))
(fma.f64 y #s(literal -1 binary64) (*.f64 y x))
(fma.f64 x y (neg.f64 y))
(fma.f64 #s(literal -1 binary64) y (*.f64 y x))
(fma.f64 #s(literal 1 binary64) (*.f64 y x) (neg.f64 y))
(fma.f64 #s(literal 1 binary64) (neg.f64 y) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) x) (neg.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(fma.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64)) (*.f64 (cbrt.f64 x) y) (neg.f64 y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (neg.f64 y))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (neg.f64 y))
(fma.f64 (*.f64 y x) #s(literal 1 binary64) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y x)) (neg.f64 y))
(fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) #s(literal 2 binary64)) (cbrt.f64 (neg.f64 y)) (*.f64 y x))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (neg.f64 y))
(fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 y x))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x) (neg.f64 y))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 y))
(fma.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (*.f64 y x))
(fma.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 y x))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (neg.f64 y))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 y))
Outputs
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) y)
(neg.f64 y)
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 #s(literal -1 binary64) y) (*.f64 x y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 x y)
(*.f64 y x)
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 x (+.f64 y (*.f64 #s(literal -1 binary64) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 x y)
(*.f64 y x)
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (*.f64 x (+.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 y x))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 y x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (neg.f64 y) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 y x) #s(literal 1 binary64)) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(+.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 x #s(literal 1 binary64))) y)) #s(literal 2 binary64))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (-.f64 x #s(literal 1 binary64))) y))))
(+.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))))
(*.f64 #s(literal 2 binary64) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (-.f64 x #s(literal 1 binary64))) y))))
(-.f64 (+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 1 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) (pow.f64 (neg.f64 y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 y) #s(literal 2 binary64)) (*.f64 (*.f64 y x) (neg.f64 y)))))
(/.f64 (+.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) (pow.f64 (neg.f64 y) #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (-.f64 (pow.f64 (neg.f64 y) #s(literal 2 binary64)) (*.f64 y (*.f64 x (neg.f64 y))))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) #s(literal 3 binary64)) (pow.f64 y #s(literal 3 binary64))) (+.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (*.f64 (neg.f64 y) (-.f64 (neg.f64 y) (*.f64 y x)))))
(/.f64 (*.f64 (pow.f64 y #s(literal 3 binary64)) (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64)))) (fma.f64 y y (*.f64 x (*.f64 y (fma.f64 y x y)))))
(/.f64 (-.f64 (pow.f64 (*.f64 y x) #s(literal 2 binary64)) (pow.f64 (neg.f64 y) #s(literal 2 binary64))) (-.f64 (*.f64 y x) (neg.f64 y)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(/.f64 (*.f64 y (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64)))) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(*.f64 y (/.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64)))))
(*.f64 y (/.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) (+.f64 x (fma.f64 x x #s(literal 1 binary64)))))
(/.f64 (*.f64 y (fma.f64 x x #s(literal -1 binary64))) (+.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(/.f64 (*.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) y) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64))))
(*.f64 y (/.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) (-.f64 (fma.f64 x x #s(literal 1 binary64)) (*.f64 x #s(literal -1 binary64)))))
(*.f64 y (/.f64 (+.f64 #s(literal -1 binary64) (pow.f64 x #s(literal 3 binary64))) (+.f64 x (fma.f64 x x #s(literal 1 binary64)))))
(/.f64 (*.f64 (fma.f64 x x #s(literal -1 binary64)) y) (+.f64 x #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 1 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 3 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)) #s(literal 1/3 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))) #s(literal 2 binary64))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (E.f64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 y (-.f64 x #s(literal 1 binary64))))) #s(literal 2 binary64))) (cbrt.f64 (log.f64 (*.f64 y (-.f64 x #s(literal 1 binary64))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))) (sqrt.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))))
(pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 y (-.f64 x #s(literal 1 binary64)))))) (sqrt.f64 (log.f64 (*.f64 y (-.f64 x #s(literal 1 binary64))))))
(sqrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 2 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(log.f64 (pow.f64 (exp.f64 (+.f64 x #s(literal -1 binary64))) y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(cbrt.f64 (pow.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))) #s(literal 3 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(expm1.f64 (log1p.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(log1p.f64 (expm1.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(exp.f64 (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64)))))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 3 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal 3 binary64) (log.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 1/3 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 y (+.f64 x #s(literal -1 binary64))))) #s(literal 2 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 y x (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 y #s(literal -1 binary64) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 x y (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 #s(literal -1 binary64) y (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (*.f64 y x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 #s(literal 1 binary64) (neg.f64 y) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 y) #s(literal 2 binary64)) (*.f64 (cbrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 x) #s(literal 2 binary64)) (*.f64 (cbrt.f64 x) y) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 y) (*.f64 (sqrt.f64 y) #s(literal -1 binary64)) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) (*.f64 (sqrt.f64 x) y) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 y x) #s(literal 1 binary64) (*.f64 (neg.f64 y) #s(literal 1 binary64)))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (*.f64 y x)) #s(literal 2 binary64)) (cbrt.f64 (*.f64 y x)) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (pow.f64 (cbrt.f64 (neg.f64 y)) #s(literal 2 binary64)) (cbrt.f64 (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (*.f64 y x)) (sqrt.f64 (*.f64 y x)) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 (neg.f64 y)) (sqrt.f64 (neg.f64 y)) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 y (pow.f64 (cbrt.f64 x) #s(literal 2 binary64))) (cbrt.f64 x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 y (sqrt.f64 x)) (sqrt.f64 x) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 y)) (sqrt.f64 y) (*.f64 y x))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 x (pow.f64 (cbrt.f64 y) #s(literal 2 binary64))) (cbrt.f64 y) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))
(fma.f64 (*.f64 x (sqrt.f64 y)) (sqrt.f64 y) (neg.f64 y))
(*.f64 y (+.f64 x #s(literal -1 binary64)))
(*.f64 y (-.f64 x #s(literal 1 binary64)))

eval28.0ms (0.8%)

Compiler

Compiled 915 to 576 computations (37% saved)

prune11.0ms (0.3%)

Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New69372
Fresh000
Picked011
Done000
Total69473
Accuracy
100.0%
Counts
73 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
100.0%
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
73.7%
(+.f64 #s(literal 1 binary64) (*.f64 y x))
63.0%
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Compiler

Compiled 32 to 24 computations (25% saved)

localize58.0ms (1.7%)

Compiler

Compiled 44 to 15 computations (65.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
Operation ival-add, time spent: 5.0ms, 49.0% of total-time
Operation ival-mult, time spent: 2.0ms, 20.0% of total-time
Operation ival-neg, time spent: 2.0ms, 20.0% of total-time
Operation const, time spent: 1.0ms, 10.0% of total-time

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune3.0ms (0.1%)

Pruning

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New000
Fresh000
Picked033
Done011
Total044
Accuracy
100.0%
Counts
4 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
100.0%
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
73.7%
(+.f64 #s(literal 1 binary64) (*.f64 y x))
63.0%
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Compiler

Compiled 67 to 46 computations (31.3% saved)

regimes14.0ms (0.4%)

Counts
5 → 1
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (neg.f64 y))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Outputs
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
Calls

4 calls:

4.0ms
y
3.0ms
x
3.0ms
(-.f64 #s(literal 1 binary64) y)
2.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
100.0%1(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
100.0%1(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 22 to 16 computations (27.3% saved)

regimes6.0ms (0.2%)

Counts
3 → 1
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (neg.f64 y))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
Outputs
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
Calls

2 calls:

2.0ms
y
2.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes11.0ms (0.3%)

Counts
2 → 3
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (neg.f64 y))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
Outputs
(+.f64 #s(literal 1 binary64) (*.f64 y x))
(+.f64 #s(literal 1 binary64) (neg.f64 y))
(+.f64 #s(literal 1 binary64) (*.f64 y x))
Calls

2 calls:

5.0ms
y
5.0ms
x
Results
AccuracySegmentsBranch
99.1%3x
81.1%4y
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes3.0ms (0.1%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Outputs
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Calls

2 calls:

1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
63.0%1y
63.0%1x
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch39.0ms (1.1%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
21.0ms
5.570218896322533e-5
829742005.4953835
18.0ms
-76586965.91216564
-13346.905248478515
Results
33.0ms287×0valid
0.0ms0valid
Compiler

Compiled 286 to 228 computations (20.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
Operation ival-sub, time spent: 3.0ms, 35.0% of total-time
Operation ival-mult, time spent: 3.0ms, 35.0% of total-time
Operation ival-add, time spent: 2.0ms, 23.0% of total-time
Operation const, time spent: 1.0ms, 12.0% of total-time
Operation backward-pass, time spent: 0.0ms, 0.0% of total-time

simplify7.0ms (0.2%)

Algorithm
egg-herbie
Rules
+-commutative
1-exp
*-commutative
unsub-neg
if-if-or-not
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
027123
149123
251123
352123
Stop Event
done
saturated
Calls
Call 1
Inputs
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(if (<=.f64 x #s(literal -13500 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 y x)) (if (<=.f64 x #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (neg.f64 y)) (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Outputs
(+.f64 #s(literal 1 binary64) (+.f64 (*.f64 y x) (neg.f64 y)))
(+.f64 #s(literal 1 binary64) (-.f64 (*.f64 y x) y))
(+.f64 #s(literal 1 binary64) (*.f64 y (+.f64 x #s(literal -1 binary64))))
(if (<=.f64 x #s(literal -13500 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 y x)) (if (<=.f64 x #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (neg.f64 y)) (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(if (or (<=.f64 x #s(literal -13500 binary64)) (not (<=.f64 x #s(literal 1 binary64)))) (+.f64 #s(literal 1 binary64) (*.f64 y x)) (-.f64 #s(literal 1 binary64) y))
(+.f64 #s(literal 1 binary64) (neg.f64 y))
(-.f64 #s(literal 1 binary64) y)
Compiler

Compiled 42 to 31 computations (26.2% saved)

soundness545.0ms (15.7%)

Rules
725×fma-neg
569×unsub-neg
521×sub-neg
515×log1p-expm1-u
515×expm1-log1p-u
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
025270
157222
2167218
3709218
42707175
55011175
66069175
76595175
86843175
96993175
107082175
117202175
127543175
01019
110419
2141519
01601781
13611759
29341743
345371743
Stop Event
node limit
node limit
node limit
Compiler

Compiled 261 to 171 computations (34.5% saved)

end0.0ms (0%)

preprocess58.0ms (1.7%)

Compiler

Compiled 112 to 76 computations (32.1% saved)

Profiling

Loading profile data...