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

Time bar (total: 3.9s)

analyze1.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
Results
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.9s (48.7%)

Results
940.0ms5985×256valid
232.0ms980×256infinite
168.0ms704×512valid
364.0ms585×1024valid
1.0ms2048valid
Precisions
Click to see histograms. Total time spent on operations: 536.0ms
Operation ival-sub, time spent: 252.0ms, 47.0% of total-time
Operation ival-mult, time spent: 140.0ms, 26.0% of total-time
Operation ival-add, time spent: 111.0ms, 21.0% of total-time
Operation const, time spent: 33.0ms, 6.0% of total-time
Bogosity

preprocess430.0ms (11%)

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
601(-108604077356451.25 3.39994451375377e-121)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))))
Results
Compiler

Compiled 67 to 46 computations (31.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 53.0ms
Operation ival-sub, time spent: 31.0ms, 59.0% of total-time
Operation ival-mult, time spent: 13.0ms, 25.0% of total-time
Operation ival-add, time spent: 5.0ms, 9.0% of total-time
Operation const, time spent: 4.0ms, 8.0% of total-time

eval1.0ms (0%)

Results
Compiler

Compiled 17 to 12 computations (29.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

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))))
Results
Compiler

Compiled 9 to 7 computations (22.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

localize60.0ms (1.5%)

Localize:

Found 1 expressions with local error:

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

Compiled 22 to 15 computations (31.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
Operation ival-add, time spent: 9.0ms, 55.0% of total-time
Operation ival-mult, time spent: 6.0ms, 37.0% of total-time
Operation const, time spent: 2.0ms, 12.0% of total-time

series7.0ms (0.2%)

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
1.0ms
x
@-inf
(* y (+ x -1))
1.0ms
y
@0
(* y (+ x -1))
1.0ms
x
@inf
(* y (+ x -1))
1.0ms
y
@inf
(* y (+ x -1))
1.0ms
y
@-inf
(* y (+ x -1))
Results
Precisions
Click to see histograms. Total time spent on operations: 0ms

rewrite242.0ms (6.2%)

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))
Results
Precisions
Click to see histograms. Total time spent on operations: 0ms

simplify114.0ms (2.9%)

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)))
Results
Precisions
Click to see histograms. Total time spent on operations: 0ms

eval39.0ms (1%)

Results
Compiler

Compiled 915 to 576 computations (37% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

prune21.0ms (0.5%)

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))))
68.7%
(+.f64 #s(literal 1 binary64) (*.f64 y x))
66.9%
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Results
Compiler

Compiled 32 to 24 computations (25% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

localize95.0ms (2.4%)

Results
Compiler

Compiled 44 to 15 computations (65.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 19.0ms
Operation ival-add, time spent: 10.0ms, 52.0% of total-time
Operation ival-mult, time spent: 4.0ms, 21.0% of total-time
Operation ival-neg, time spent: 3.0ms, 16.0% of total-time
Operation const, time spent: 2.0ms, 10.0% of total-time

eval0.0ms (0%)

Results
Compiler

Compiled 2 to 2 computations (0% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

prune7.0ms (0.2%)

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))))
68.7%
(+.f64 #s(literal 1 binary64) (*.f64 y x))
66.9%
(+.f64 #s(literal 1 binary64) (neg.f64 y))
Results
Compiler

Compiled 67 to 46 computations (31.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

regimes17.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
4.0ms
(+.f64 x (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) y)))
4.0ms
x
3.0ms
(-.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)
Results
Compiler

Compiled 22 to 16 computations (27.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

regimes8.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:

4.0ms
y
3.0ms
x
Results
AccuracySegmentsBranch
100.0%1x
100.0%1y
Results
Compiler

Compiled 6 to 4 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

regimes15.0ms (0.4%)

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:

7.0ms
x
7.0ms
y
Results
AccuracySegmentsBranch
98.7%3x
79.2%3y
Results
Compiler

Compiled 6 to 4 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

regimes5.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:

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

Compiled 6 to 4 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

bsearch73.0ms (1.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
33.0ms
1.5059600086926837e-20
1.7689714148566612e-6
34.0ms
-24079951.762069322
-0.06700785645766384
Results
61.0ms304×256valid
Compiler

Compiled 301 to 240 computations (20.3% saved)

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

simplify86.0ms (2.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 -1 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 y x)) (if (<=.f64 x #s(literal 8264141345021879/4722366482869645213696 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 -1 binary64)) (+.f64 #s(literal 1 binary64) (*.f64 y x)) (if (<=.f64 x #s(literal 8264141345021879/4722366482869645213696 binary64)) (+.f64 #s(literal 1 binary64) (neg.f64 y)) (+.f64 #s(literal 1 binary64) (*.f64 y x))))
(if (or (<=.f64 x #s(literal -1 binary64)) (not (<=.f64 x #s(literal 8264141345021879/4722366482869645213696 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)
Results
Compiler

Compiled 42 to 31 computations (26.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

soundness725.0ms (18.5%)

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
01601781
13611759
29341743
345371743
01019
110419
2141519
025270
157222
2167218
3709218
42707175
55011175
66069175
76595175
86843175
96993175
107082175
117202175
127543175
Stop Event
node limit
node limit
node limit
Results
Compiler

Compiled 261 to 171 computations (34.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 0ms

end0.0ms (0%)

preprocess67.0ms (1.7%)

Compiler

Compiled 112 to 76 computations (32.1% saved)

Profiling

Loading profile data...