Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2, E

Time bar (total: 1.9s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

analyze9.0ms (0.5%)

Memory
10.7MiB live, 10.7MiB allocated; 0ms collecting garbage
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
50%50%50%0.1%0%0%0%2
50%50%50%0.1%0%0%0%3
66.7%50%25%0.1%0%25%0%4
66.7%50%25%0.1%0%25%0%5
80%50%12.5%0.1%0%37.5%0%6
80%50%12.5%0.1%0%37.5%0%7
88.9%50%6.2%0.1%0%43.7%0%8
88.9%50%6.2%0.1%0%43.7%0%9
94.1%50%3.1%0.1%0%46.8%0%10
94.1%50%3.1%0.1%0%46.8%0%11
97%50%1.6%0.1%0%48.4%0%12
Compiler

Compiled 10 to 9 computations (10% saved)

sample864.0ms (46%)

Memory
30.7MiB live, 999.3MiB allocated; 285ms collecting garbage
Samples
566.0ms8 253×0valid
12.0ms266×0invalid
0.0ms2valid
Precisions
Click to see histograms. Total time spent on operations: 346.0ms
ival-sqrt: 121.0ms (35% of total)
ival-mult: 95.0ms (27.5% of total)
ival-sub: 76.0ms (22% of total)
ival-add: 42.0ms (12.2% of total)
exact: 6.0ms (1.7% of total)
ival-assert: 3.0ms (0.9% of total)
adjust: 2.0ms (0.6% of total)
Bogosity

explain79.0ms (4.2%)

Memory
9.7MiB live, 113.5MiB allocated; 16ms collecting garbage
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
00-0-(sqrt.f64 x)
00-0-y
00-0-(-.f64 #s(literal 1 binary64) x)
00-0-#s(literal 1 binary64)
00-0-(*.f64 y (sqrt.f64 x))
00-0-x
Confusion
Predicted +Predicted -
+00
-0256
Precision
0/0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-00256
Precision?
0/0
Recall?
0/0
Freqs
test
numberfreq
0256
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-001
Precision?
0/0
Recall?
0/0
Samples
26.0ms512×0valid
Compiler

Compiled 52 to 25 computations (51.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 13.0ms
ival-sqrt: 4.0ms (31.2% of total)
ival-sub: 3.0ms (23.4% of total)
ival-mult: 3.0ms (23.4% of total)
ival-add: 2.0ms (15.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess208.0ms (11.1%)

Memory
-13.2MiB live, 172.5MiB allocated; 20ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02154
15554
211254
319651
441550
5118950
6306750
7696950
078
0118
1208
2358
3648
41338
54598
636078
771978
080537
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Outputs
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
Compiler

Compiled 8 to 7 computations (12.5% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated; 0ms collecting garbage
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Compiler

Compiled 8 to 7 computations (12.5% saved)

series6.0ms (0.3%)

Memory
9.4MiB live, 9.4MiB allocated; 0ms collecting garbage
Counts
7 → 22
Calls
Call 1
Inputs
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(*.f64 y (sqrt.f64 x))
y
(sqrt.f64 x)
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx x #s(hole binary64 x))
#s(approx (* y (sqrt x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (* y (sqrt x)) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
((+ (- 1 x) (* y (sqrt x))) (- 1 x) 1 x (* y (sqrt x)) y (sqrt x))
1.0ms
y
@-inf
((+ (- 1 x) (* y (sqrt x))) (- 1 x) 1 x (* y (sqrt x)) y (sqrt x))
1.0ms
x
@inf
((+ (- 1 x) (* y (sqrt x))) (- 1 x) 1 x (* y (sqrt x)) y (sqrt x))
1.0ms
x
@0
((+ (- 1 x) (* y (sqrt x))) (- 1 x) 1 x (* y (sqrt x)) y (sqrt x))
1.0ms
y
@inf
((+ (- 1 x) (* y (sqrt x))) (- 1 x) 1 x (* y (sqrt x)) y (sqrt x))

rewrite61.0ms (3.3%)

Memory
-4.2MiB live, 41.2MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
080333
084307
0392289
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
29 → 40
Calls
Call 1
Inputs
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(*.f64 y (sqrt.f64 x))
y
(sqrt.f64 x)
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx x #s(hole binary64 x))
#s(approx (* y (sqrt x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (* y (sqrt x)) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
Outputs
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y))) (-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x) (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x))
(-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 y) (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
(+.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x))
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) (+.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 1 binary64) x))))
(-.f64 #s(literal 1 binary64) x)
#s(literal 1 binary64)
x
(*.f64 (sqrt.f64 x) y)
(*.f64 y (sqrt.f64 x))
y
(pow.f64 x #s(literal 1/2 binary64))
(sqrt.f64 x)
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 (sqrt.f64 x) y (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (- 1 x) (fma.f64 #s(literal -1 binary64) x #s(literal 1 binary64)))
#s(approx x x)
#s(approx (* y (sqrt x)) (*.f64 (sqrt.f64 x) y))
#s(approx (sqrt x) (sqrt.f64 x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- 1 x) (neg.f64 x))
#s(approx (- 1 x) (*.f64 (-.f64 (pow.f64 x #s(literal -1 binary64)) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- 1 x) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (* y (sqrt x)) (neg.f64 (*.f64 (*.f64 (sqrt.f64 x) y) #s(literal -1 binary64))))
#s(approx (sqrt x) (neg.f64 (neg.f64 (sqrt.f64 x))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x))
#s(approx y y)
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))

eval4.0ms (0.2%)

Memory
7.1MiB live, 7.1MiB allocated; 0ms collecting garbage
Compiler

Compiled 567 to 125 computations (78% saved)

prune4.0ms (0.2%)

Memory
7.3MiB live, 7.3MiB allocated; 0ms collecting garbage
Pruning

7 alts after pruning (7 fresh and 0 done)

PrunedKeptTotal
New35742
Fresh000
Picked101
Done000
Total36743
Accuracy
100.0%
Counts
43 → 7
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
99.9%
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
73.3%
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
59.2%
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
92.0%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
59.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
41.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
Compiler

Compiled 190 to 148 computations (22.1% saved)

series14.0ms (0.7%)

Memory
-27.0MiB live, 17.5MiB allocated; 6ms collecting garbage
Counts
13 → 60
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
#s(literal 1 binary64)
(-.f64 x (*.f64 (sqrt.f64 x) y))
x
(*.f64 (sqrt.f64 x) y)
(sqrt.f64 x)
y
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
Outputs
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx x #s(hole binary64 x))
#s(approx (* (sqrt x) y) #s(hole binary64 (* (sqrt x) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* x (+ (* (sqrt (/ 1 x)) y) (/ 1 x)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (* (sqrt x) y) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* x (- (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))) (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 1))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- 1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* y (+ (sqrt x) (/ 1 y)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* y (- (* -1 (sqrt x)) (/ 1 y))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
Calls

6 calls:

TimeVariablePointExpression
8.0ms
x
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) x (* (sqrt x) y) (sqrt x) y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (+ (- 1 x) (* y (sqrt x))) (+ (* (sqrt x) y) 1) (+ (* (sqrt x) y) (- 1 x)))
1.0ms
x
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) x (* (sqrt x) y) (sqrt x) y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (+ (- 1 x) (* y (sqrt x))) (+ (* (sqrt x) y) 1) (+ (* (sqrt x) y) (- 1 x)))
1.0ms
y
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) x (* (sqrt x) y) (sqrt x) y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (+ (- 1 x) (* y (sqrt x))) (+ (* (sqrt x) y) 1) (+ (* (sqrt x) y) (- 1 x)))
1.0ms
y
@0
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) x (* (sqrt x) y) (sqrt x) y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (+ (- 1 x) (* y (sqrt x))) (+ (* (sqrt x) y) 1) (+ (* (sqrt x) y) (- 1 x)))
1.0ms
y
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) x (* (sqrt x) y) (sqrt x) y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (+ (- 1 x) (* y (sqrt x))) (+ (* (sqrt x) y) 1) (+ (* (sqrt x) y) (- 1 x)))

rewrite60.0ms (3.2%)

Memory
21.5MiB live, 65.0MiB allocated; 9ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01461064
0155956
0599942
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
73 → 127
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
#s(literal 1 binary64)
(-.f64 x (*.f64 (sqrt.f64 x) y))
x
(*.f64 (sqrt.f64 x) y)
(sqrt.f64 x)
y
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
(-.f64 #s(literal 1 binary64) x)
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx x #s(hole binary64 x))
#s(approx (* (sqrt x) y) #s(hole binary64 (* (sqrt x) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* x (+ (* (sqrt (/ 1 x)) y) (/ 1 x)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (* (sqrt x) y) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* (sqrt x) (* y (pow (sqrt -1) 2))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* x (- (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))) (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 1))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- 1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* y (+ (sqrt x) (/ 1 y)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (+ (* (sqrt x) y) 1) #s(hole binary64 (* -1 (* y (- (* -1 (sqrt x)) (/ 1 y))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
Outputs
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)))) (+.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y))))
(/.f64 (-.f64 (*.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (*.f64 x x)) (+.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x))
(/.f64 (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))) (-.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x)))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y))) (-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)) (*.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 x x (*.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 3 binary64))) (fma.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y) (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x)))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x) (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x))
(-.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 y) (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
(+.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x))
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y))
(+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (sqrt.f64 x) y) x))
#s(literal 1 binary64)
(/.f64 (-.f64 (*.f64 x x) (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y))) (+.f64 x (*.f64 (sqrt.f64 x) y)))
(/.f64 (-.f64 (*.f64 x x) (*.f64 (neg.f64 (*.f64 (sqrt.f64 x) y)) (neg.f64 (*.f64 (sqrt.f64 x) y)))) (-.f64 x (neg.f64 (*.f64 (sqrt.f64 x) y))))
(/.f64 (-.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64))) (fma.f64 x x (fma.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y) (*.f64 x (*.f64 (sqrt.f64 x) y)))))
(/.f64 (+.f64 (pow.f64 x #s(literal 3 binary64)) (pow.f64 (neg.f64 (*.f64 (sqrt.f64 x) y)) #s(literal 3 binary64))) (fma.f64 x x (-.f64 (*.f64 (neg.f64 (*.f64 (sqrt.f64 x) y)) (neg.f64 (*.f64 (sqrt.f64 x) y))) (*.f64 x (neg.f64 (*.f64 (sqrt.f64 x) y))))))
(fma.f64 (neg.f64 (sqrt.f64 x)) y x)
(fma.f64 (*.f64 #s(literal -1 binary64) y) (sqrt.f64 x) x)
(fma.f64 #s(literal -1 binary64) (*.f64 (sqrt.f64 x) y) x)
(fma.f64 (*.f64 (sqrt.f64 x) y) #s(literal -1 binary64) x)
(fma.f64 (sqrt.f64 x) (*.f64 #s(literal -1 binary64) y) x)
(-.f64 x (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 x) y)))
(-.f64 x (*.f64 (sqrt.f64 x) y))
(+.f64 (neg.f64 (*.f64 (sqrt.f64 x) y)) x)
(+.f64 x (neg.f64 (*.f64 (sqrt.f64 x) y)))
x
(*.f64 (sqrt.f64 x) y)
(*.f64 y (sqrt.f64 x))
(pow.f64 x #s(literal 1/2 binary64))
(sqrt.f64 x)
y
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 x x)) (+.f64 #s(literal 1 binary64) x))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 x x (*.f64 #s(literal 1 binary64) x))))
(-.f64 #s(literal 1 binary64) x)
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) #s(literal 1 binary64)) (-.f64 (*.f64 (sqrt.f64 x) y) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y))) (-.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 x) y)))
(/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (sqrt.f64 x) y) #s(literal 1 binary64)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 x) y)))))
(fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))
(fma.f64 y (sqrt.f64 x) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (sqrt.f64 x) y)))
(+.f64 (*.f64 (sqrt.f64 x) y) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 x) y))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)))) (+.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y))))
(/.f64 (-.f64 (*.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (*.f64 x x)) (+.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x))
(/.f64 (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x))) (-.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x)))
(/.f64 (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y))) (-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (-.f64 x (*.f64 (sqrt.f64 x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)) (*.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y))))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 x #s(literal 3 binary64))) (fma.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) (fma.f64 x x (*.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x))))
(/.f64 (+.f64 (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 3 binary64))) (fma.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y) (-.f64 (*.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x)) (*.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x)))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) x) #s(literal 3 binary64)) (pow.f64 (*.f64 (sqrt.f64 x) y) #s(literal 3 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) x) (-.f64 #s(literal 1 binary64) x) (-.f64 (*.f64 (*.f64 (sqrt.f64 x) y) (*.f64 (sqrt.f64 x) y)) (*.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y)))))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x))
(-.f64 (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)) x)
(-.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 y) (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
(+.f64 (*.f64 (sqrt.f64 x) y) (-.f64 #s(literal 1 binary64) x))
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 (sqrt.f64 x) y))
(+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (sqrt.f64 x) y) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 (sqrt.f64 x) y (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 (sqrt.f64 x) y)))
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)))
#s(approx x x)
#s(approx (* (sqrt x) y) (*.f64 (sqrt.f64 x) y))
#s(approx (sqrt x) (sqrt.f64 x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 (sqrt.f64 x) y (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (- 1 x) (fma.f64 #s(literal -1 binary64) x #s(literal 1 binary64)))
#s(approx (+ (* (sqrt x) y) 1) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 (sqrt.f64 x) y (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- 1 x) (neg.f64 x))
#s(approx (- 1 x) (*.f64 (-.f64 (pow.f64 x #s(literal -1 binary64)) #s(literal 1 binary64)) x))
#s(approx (+ (* (sqrt x) y) 1) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (* (sqrt x) y) 1) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- x (* (sqrt x) y)) (*.f64 (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64)) x))
#s(approx (* (sqrt x) y) (neg.f64 (neg.f64 (*.f64 (sqrt.f64 x) y))))
#s(approx (sqrt x) (neg.f64 (neg.f64 (sqrt.f64 x))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- 1 x) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (+ (* (sqrt x) y) 1) (neg.f64 (neg.f64 (*.f64 (sqrt.f64 x) y))))
#s(approx (+ (* (sqrt x) y) 1) (*.f64 (neg.f64 x) (-.f64 (*.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal -1 binary64)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (fma.f64 (*.f64 #s(literal -1 binary64) y) (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal 1 binary64)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x)))
#s(approx (- x (* (sqrt x) y)) x)
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 (sqrt.f64 x) y)))
#s(approx y y)
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x)))
#s(approx (+ (* (sqrt x) y) 1) #s(literal 1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 (/.f64 x y) (sqrt.f64 x)) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (+ (* (sqrt x) y) 1) (*.f64 (+.f64 (pow.f64 y #s(literal -1 binary64)) (sqrt.f64 x)) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 (-.f64 (/.f64 (neg.f64 x) y) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (+ (* (sqrt x) y) 1) (neg.f64 (*.f64 (-.f64 (neg.f64 (sqrt.f64 x)) (pow.f64 y #s(literal -1 binary64))) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))

eval48.0ms (2.6%)

Memory
-21.3MiB live, 39.4MiB allocated; 44ms collecting garbage
Compiler

Compiled 2 037 to 315 computations (84.5% saved)

prune8.0ms (0.4%)

Memory
21.2MiB live, 21.2MiB allocated; 0ms collecting garbage
Pruning

11 alts after pruning (6 fresh and 5 done)

PrunedKeptTotal
New1255130
Fresh112
Picked055
Done000
Total12611137
Accuracy
100.0%
Counts
137 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
67.5%
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
99.9%
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
92.0%
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)))
73.3%
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
59.2%
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
59.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
41.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
27.9%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
33.1%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
65.4%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (+ (* (sqrt x) y) 1) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) x)))
Compiler

Compiled 262 to 190 computations (27.5% saved)

series19.0ms (1%)

Memory
-16.7MiB live, 31.8MiB allocated; 8ms collecting garbage
Counts
19 → 78
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)
(-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)
(/.f64 #s(literal 1 binary64) (sqrt.f64 x))
(sqrt.f64 x)
x
y
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (- 1 x) (neg.f64 x))
(neg.f64 x)
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
(*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x)
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64))
Outputs
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* -1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (/ (- x (* (sqrt x) y)) x)))
#s(approx (* (/ 1 (sqrt x)) y) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (/ 1 (sqrt x)) #s(hole binary64 (sqrt (/ 1 x))))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx x #s(hole binary64 x))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx (neg x) #s(hole binary64 (* -1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* (sqrt x) y)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (+ (* -1 x) (* (sqrt x) y))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (/ (+ (* -1 x) (* (sqrt x) y)) x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (- 1 (* (sqrt (/ 1 x)) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (- (* (sqrt (/ 1 x)) y) 1)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 x))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 1))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (+ 1 (* -1 (* (sqrt (/ 1 x)) y)))))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- 1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* -1 x)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 -1))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* y (+ (* -1 (sqrt x)) (/ x y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* y (- (/ 1 y) (sqrt (/ 1 x))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* y (+ (sqrt x) (* -1 (/ x y))))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* y (- (sqrt (/ 1 x)) (/ 1 y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* -1 (* y (+ (sqrt x) (* -1 (/ x y)))))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (/ x y))))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y))))))
Calls

6 calls:

TimeVariablePointExpression
6.0ms
x
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (* (/ 1 (sqrt x)) y)) x) (- 1 (* (/ 1 (sqrt x)) y)) (* (/ 1 (sqrt x)) y) (/ 1 (sqrt x)) (sqrt x) x y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (- 1 x) (neg x) (+ (* (sqrt x) y) (- 1 x)) (+ (- 1 x) (* y (sqrt x))) (* (- (* (/ 1 (sqrt x)) y) 1) x) (- (* (/ 1 (sqrt x)) y) 1))
5.0ms
x
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (* (/ 1 (sqrt x)) y)) x) (- 1 (* (/ 1 (sqrt x)) y)) (* (/ 1 (sqrt x)) y) (/ 1 (sqrt x)) (sqrt x) x y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (- 1 x) (neg x) (+ (* (sqrt x) y) (- 1 x)) (+ (- 1 x) (* y (sqrt x))) (* (- (* (/ 1 (sqrt x)) y) 1) x) (- (* (/ 1 (sqrt x)) y) 1))
2.0ms
y
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (* (/ 1 (sqrt x)) y)) x) (- 1 (* (/ 1 (sqrt x)) y)) (* (/ 1 (sqrt x)) y) (/ 1 (sqrt x)) (sqrt x) x y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (- 1 x) (neg x) (+ (* (sqrt x) y) (- 1 x)) (+ (- 1 x) (* y (sqrt x))) (* (- (* (/ 1 (sqrt x)) y) 1) x) (- (* (/ 1 (sqrt x)) y) 1))
2.0ms
y
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (* (/ 1 (sqrt x)) y)) x) (- 1 (* (/ 1 (sqrt x)) y)) (* (/ 1 (sqrt x)) y) (/ 1 (sqrt x)) (sqrt x) x y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (- 1 x) (neg x) (+ (* (sqrt x) y) (- 1 x)) (+ (- 1 x) (* y (sqrt x))) (* (- (* (/ 1 (sqrt x)) y) 1) x) (- (* (/ 1 (sqrt x)) y) 1))
2.0ms
x
@0
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (* (/ 1 (sqrt x)) y)) x) (- 1 (* (/ 1 (sqrt x)) y)) (* (/ 1 (sqrt x)) y) (/ 1 (sqrt x)) (sqrt x) x y (+ (- 1 x) (* y (sqrt x))) (- 1 x) (+ (- 1 x) (* y (sqrt x))) (- 1 x) (neg x) (+ (* (sqrt x) y) (- 1 x)) (+ (- 1 x) (* y (sqrt x))) (* (- (* (/ 1 (sqrt x)) y) 1) x) (- (* (/ 1 (sqrt x)) y) 1))

rewrite85.0ms (4.5%)

Memory
-1.2MiB live, 44.5MiB allocated; 3ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01831487
02001395
07701345
Stop Event
iter limit
iter limit
node limit
iter limit
Counts
97 → 134
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)
(-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)
(/.f64 #s(literal 1 binary64) (sqrt.f64 x))
(sqrt.f64 x)
x
y
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (- 1 x) (neg.f64 x))
(neg.f64 x)
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
(*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x)
(-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* -1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (/ (- x (* (sqrt x) y)) x)))
#s(approx (* (/ 1 (sqrt x)) y) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (/ 1 (sqrt x)) #s(hole binary64 (sqrt (/ 1 x))))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx x #s(hole binary64 x))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- 1 x) #s(hole binary64 1))
#s(approx (- 1 x) #s(hole binary64 (+ 1 (* -1 x))))
#s(approx (neg x) #s(hole binary64 (* -1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* (sqrt x) y)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (+ (* -1 x) (* (sqrt x) y))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (/ (+ (* -1 x) (* (sqrt x) y)) x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (- 1 (* (sqrt (/ 1 x)) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- 1 x) #s(hole binary64 (* -1 x)))
#s(approx (- 1 x) #s(hole binary64 (* x (- (/ 1 x) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (- (* (sqrt (/ 1 x)) y) 1)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 x) #s(hole binary64 (* -1 (* x (- 1 (/ 1 x))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 x))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 1))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (+ 1 (* -1 (* (sqrt (/ 1 x)) y)))))
#s(approx y #s(hole binary64 y))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- 1 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- 1 x)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* -1 x)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 -1))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* y (+ (* -1 (sqrt x)) (/ x y)))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* y (- (/ 1 y) (sqrt (/ 1 x))))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* (sqrt x) y)))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* y (+ (sqrt x) (* -1 (/ x y))))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* y (- (sqrt (/ 1 x)) (/ 1 y)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) #s(hole binary64 (* -1 (* y (+ (sqrt x) (* -1 (/ x y)))))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(hole binary64 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (+ (* (sqrt x) y) (- 1 x)) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (/ x y))))))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y))))))
Outputs
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)))) (+.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)) (*.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))))))
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
(*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x)
(*.f64 x (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
(fma.f64 x #s(literal 1 binary64) (*.f64 x (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
(fma.f64 #s(literal 1 binary64) x (*.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
(+.f64 (*.f64 x #s(literal 1 binary64)) (*.f64 x (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
(+.f64 (*.f64 #s(literal 1 binary64) x) (*.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))) (+.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))) (-.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))))
(/.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))) (*.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))))
(fma.f64 (*.f64 #s(literal -1 binary64) y) (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) #s(literal 1 binary64))
(fma.f64 (neg.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64))) y #s(literal 1 binary64))
(fma.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal -1 binary64) #s(literal 1 binary64))
(fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) (*.f64 #s(literal -1 binary64) y) #s(literal 1 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64))) (*.f64 #s(literal -1 binary64) y)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
(-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))
(+.f64 (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
(*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)
(*.f64 y (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))
(pow.f64 (pow.f64 x #s(literal -1 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 x) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 x)))
(/.f64 #s(literal 1 binary64) (sqrt.f64 x))
(sqrt.f64 (pow.f64 x #s(literal -1 binary64)))
(pow.f64 x #s(literal 1/2 binary64))
(sqrt.f64 x)
x
y
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (- 1 x) (neg.f64 x))
(*.f64 #s(literal -1 binary64) x)
(*.f64 x #s(literal -1 binary64))
(neg.f64 x)
(/.f64 (-.f64 (*.f64 (*.f64 y (sqrt.f64 x)) (*.f64 y (sqrt.f64 x))) (*.f64 #s(approx (- 1 x) (neg.f64 x)) #s(approx (- 1 x) (neg.f64 x)))) (-.f64 (*.f64 y (sqrt.f64 x)) #s(approx (- 1 x) (neg.f64 x))))
(/.f64 (+.f64 (pow.f64 (*.f64 y (sqrt.f64 x)) #s(literal 3 binary64)) (pow.f64 #s(approx (- 1 x) (neg.f64 x)) #s(literal 3 binary64))) (fma.f64 (*.f64 y (sqrt.f64 x)) (*.f64 y (sqrt.f64 x)) (-.f64 (*.f64 #s(approx (- 1 x) (neg.f64 x)) #s(approx (- 1 x) (neg.f64 x))) (*.f64 (*.f64 y (sqrt.f64 x)) #s(approx (- 1 x) (neg.f64 x))))))
(fma.f64 y (sqrt.f64 x) #s(approx (- 1 x) (neg.f64 x)))
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
(+.f64 #s(approx (- 1 x) (neg.f64 x)) (*.f64 y (sqrt.f64 x)))
(+.f64 (*.f64 y (sqrt.f64 x)) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x))
(*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x)
(*.f64 x (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)))
(/.f64 (-.f64 (*.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) #s(literal 1 binary64)) (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y #s(literal 1 binary64)))
(/.f64 (-.f64 (pow.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 3 binary64)) #s(literal 1 binary64)) (fma.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)))))
(-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 y (sqrt.f64 x) (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 y (sqrt.f64 x))))
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) (neg.f64 (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (neg.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (/.f64 (-.f64 x (*.f64 y (sqrt.f64 x))) x))
#s(approx (* (/ 1 (sqrt x)) y) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))
#s(approx (/ 1 (sqrt x)) (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)))
#s(approx (sqrt x) (sqrt.f64 x))
#s(approx x x)
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 y (sqrt.f64 x) (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- 1 x) #s(literal 1 binary64))
#s(approx (- 1 x) (fma.f64 #s(literal -1 binary64) x #s(literal 1 binary64)))
#s(approx (neg x) (neg.f64 x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (+.f64 (fma.f64 y (sqrt.f64 x) (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (*.f64 y (sqrt.f64 x)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (fma.f64 y (sqrt.f64 x) (neg.f64 x)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) (/.f64 (fma.f64 y (sqrt.f64 x) (neg.f64 x)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- 1 x) (neg.f64 x))
#s(approx (- 1 x) (*.f64 (-.f64 (pow.f64 x #s(literal -1 binary64)) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (*.f64 (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)) x))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) (-.f64 (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) x))
#s(approx (sqrt x) (neg.f64 (neg.f64 (sqrt.f64 x))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- 1 x) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (neg.f64 x) (-.f64 (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x)))
#s(approx (- x (* (sqrt x) y)) x)
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) x)
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) #s(literal 1 binary64))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (-.f64 #s(literal 1 binary64) (*.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) y)))
#s(approx y y)
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 y (sqrt.f64 x) (-.f64 #s(literal 1 binary64) x)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (neg.f64 x))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) #s(literal -1 binary64))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 y (sqrt.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 (/.f64 x y) (sqrt.f64 x)) y))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) (*.f64 (fma.f64 #s(literal -1 binary64) (sqrt.f64 x) (/.f64 x y)) y))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (*.f64 (-.f64 (pow.f64 y #s(literal -1 binary64)) (pow.f64 (sqrt.f64 x) #s(literal -1 binary64))) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 y (sqrt.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 y (sqrt.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (*.f64 (fma.f64 (/.f64 x y) #s(literal -1 binary64) (sqrt.f64 x)) y))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) (*.f64 (-.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) (pow.f64 y #s(literal -1 binary64))) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 (-.f64 (/.f64 (neg.f64 x) y) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (* (- 1 (* (/ 1 (sqrt x)) y)) x) (neg.f64 (*.f64 (fma.f64 (/.f64 x y) #s(literal -1 binary64) (sqrt.f64 x)) y)))
#s(approx (- 1 (* (/ 1 (sqrt x)) y)) (*.f64 (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64) (pow.f64 y #s(literal -1 binary64))) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (* (- (* (/ 1 (sqrt x)) y) 1) x) (neg.f64 (*.f64 (fma.f64 #s(literal -1 binary64) (sqrt.f64 x) (/.f64 x y)) y)))
#s(approx (- (* (/ 1 (sqrt x)) y) 1) (neg.f64 (*.f64 (fma.f64 (pow.f64 (sqrt.f64 x) #s(literal -1 binary64)) #s(literal -1 binary64) (pow.f64 y #s(literal -1 binary64))) y)))

eval15.0ms (0.8%)

Memory
25.0MiB live, 25.0MiB allocated; 0ms collecting garbage
Compiler

Compiled 3 165 to 461 computations (85.4% saved)

prune12.0ms (0.6%)

Memory
-27.2MiB live, 16.1MiB allocated; 7ms collecting garbage
Pruning

10 alts after pruning (1 fresh and 9 done)

PrunedKeptTotal
New1481149
Fresh101
Picked145
Done055
Total15010160
Accuracy
100.0%
Counts
160 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
67.5%
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
99.9%
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
92.1%
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)))
73.3%
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
59.2%
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
59.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
41.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
27.9%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
33.1%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 131 to 99 computations (24.4% saved)

series7.0ms (0.4%)

Memory
15.5MiB live, 15.5MiB allocated; 0ms collecting garbage
Counts
10 → 38
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)
(-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x)))
(/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))
(*.f64 #s(literal 1 binary64) y)
y
(sqrt.f64 x)
x
Outputs
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* -1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (/ (- x (* (sqrt x) y)) x)))
#s(approx (/ (* 1 y) (sqrt x)) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx x #s(hole binary64 x))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (- 1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 x))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 1))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (+ 1 (* -1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* 1 y) #s(hole binary64 y))
#s(approx y #s(hole binary64 y))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* y (+ (* -1 (sqrt x)) (/ x y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* y (- (/ 1 y) (sqrt (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* -1 (* y (+ (sqrt x) (* -1 (/ x y)))))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y)))))
Calls

6 calls:

TimeVariablePointExpression
2.0ms
x
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (/ (* 1 y) (sqrt x))) x) (- 1 (/ (* 1 y) (sqrt x))) (/ (* 1 y) (sqrt x)) (* 1 y) y (sqrt x) x)
1.0ms
y
@-inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (/ (* 1 y) (sqrt x))) x) (- 1 (/ (* 1 y) (sqrt x))) (/ (* 1 y) (sqrt x)) (* 1 y) y (sqrt x) x)
1.0ms
x
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (/ (* 1 y) (sqrt x))) x) (- 1 (/ (* 1 y) (sqrt x))) (/ (* 1 y) (sqrt x)) (* 1 y) y (sqrt x) x)
1.0ms
y
@inf
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (/ (* 1 y) (sqrt x))) x) (- 1 (/ (* 1 y) (sqrt x))) (/ (* 1 y) (sqrt x)) (* 1 y) y (sqrt x) x)
1.0ms
x
@0
((- 1 (- x (* (sqrt x) y))) 1 (- x (* (sqrt x) y)) (* (- 1 (/ (* 1 y) (sqrt x))) x) (- 1 (/ (* 1 y) (sqrt x))) (/ (* 1 y) (sqrt x)) (* 1 y) y (sqrt x) x)

rewrite84.0ms (4.5%)

Memory
-21.7MiB live, 73.1MiB allocated; 17ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0118686
0127600
0575596
Stop Event
iter limit
iter limit
iter limit
unsound
iter limit
Counts
48 → 56
Calls
Call 1
Inputs
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)
(-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x)))
(/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))
(*.f64 #s(literal 1 binary64) y)
y
(sqrt.f64 x)
x
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (* (sqrt x) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (+ 1 (+ (* -1 x) (* (sqrt x) y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (- x (* (sqrt x) y))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* -1 (* (sqrt x) y))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* -1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (/ (- x (* (sqrt x) y)) x)))
#s(approx (/ (* 1 y) (sqrt x)) #s(hole binary64 (* (sqrt (/ 1 x)) y)))
#s(approx (sqrt x) #s(hole binary64 (sqrt x)))
#s(approx x #s(hole binary64 x))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (* (sqrt (/ 1 x)) y) 1))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* x (- (+ (* (sqrt (/ 1 x)) y) (/ 1 x)) 1))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* x (- 1 (* (sqrt (/ 1 x)) y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (- 1 (* (sqrt (/ 1 x)) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2))))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* x (- (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))) (/ 1 x))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* x (+ 1 (* (sqrt (/ 1 x)) (* y (pow (sqrt -1) 2)))))))
#s(approx (sqrt x) #s(hole binary64 (* -1 (* (sqrt x) (pow (sqrt -1) 2)))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- 1 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (- (+ 1 (* (sqrt x) y)) x)))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 x))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (+ x (* -1 (* (sqrt x) y)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 x))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 1))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (+ 1 (* -1 (* (sqrt (/ 1 x)) y)))))
#s(approx (* 1 y) #s(hole binary64 y))
#s(approx y #s(hole binary64 y))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* (sqrt x) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* y (- (+ (sqrt x) (/ 1 y)) (/ x y)))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* y (- (/ x y) (sqrt x)))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* y (+ (* -1 (sqrt x)) (/ x y)))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* y (- (/ 1 y) (sqrt (/ 1 x))))))
#s(approx (- 1 (- x (* (sqrt x) y))) #s(hole binary64 (* -1 (* y (+ (* -1 (sqrt x)) (* -1 (/ (- 1 x) y)))))))
#s(approx (- x (* (sqrt x) y)) #s(hole binary64 (* -1 (* y (- (* -1 (/ x y)) (* -1 (sqrt x)))))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) #s(hole binary64 (* -1 (* y (+ (sqrt x) (* -1 (/ x y)))))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(hole binary64 (* y (+ (* -1 (sqrt (/ 1 x))) (/ 1 y)))))
Outputs
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)))) (+.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)) (*.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x))))))
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)))
#s(literal 1 binary64)
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x))
(*.f64 (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))) x)
(*.f64 x (-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 y (sqrt.f64 x)) (/.f64 y (sqrt.f64 x)))) (+.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (/.f64 y (sqrt.f64 x)) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (fma.f64 (/.f64 y (sqrt.f64 x)) (/.f64 y (sqrt.f64 x)) (/.f64 y (sqrt.f64 x)))))
(-.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x)))
(*.f64 #s(literal 1 binary64) (/.f64 y (sqrt.f64 x)))
(/.f64 (neg.f64 y) (neg.f64 (sqrt.f64 x)))
(/.f64 y (sqrt.f64 x))
y
y
(pow.f64 x #s(literal 1/2 binary64))
(sqrt.f64 x)
x
#s(approx (- 1 (- x (* (sqrt x) y))) (fma.f64 y (sqrt.f64 x) #s(literal 1 binary64)))
#s(approx (- 1 (- x (* (sqrt x) y))) (+.f64 (fma.f64 y (sqrt.f64 x) (neg.f64 x)) #s(literal 1 binary64)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 y (sqrt.f64 x))))
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) (neg.f64 (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (neg.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (/.f64 (-.f64 x (*.f64 y (sqrt.f64 x))) x))
#s(approx (/ (* 1 y) (sqrt x)) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y))
#s(approx (sqrt x) (sqrt.f64 x))
#s(approx x x)
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)))
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 (neg.f64 x) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y))))
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 (neg.f64 x) (-.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) (pow.f64 x #s(literal -1 binary64)))))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x))
#s(approx (sqrt x) (neg.f64 (neg.f64 (sqrt.f64 x))))
#s(approx (- 1 (- x (* (sqrt x) y))) (-.f64 #s(literal 1 binary64) x))
#s(approx (- 1 (- x (* (sqrt x) y))) (-.f64 (fma.f64 y (sqrt.f64 x) #s(literal 1 binary64)) x))
#s(approx (- x (* (sqrt x) y)) x)
#s(approx (- x (* (sqrt x) y)) (-.f64 x (*.f64 y (sqrt.f64 x))))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) x)
#s(approx (- 1 (/ (* 1 y) (sqrt x))) #s(literal 1 binary64))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)))
#s(approx (* 1 y) y)
#s(approx (* 1 y) y)
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 y (sqrt.f64 x)))
#s(approx (- 1 (- x (* (sqrt x) y))) (*.f64 (+.f64 (sqrt.f64 x) (/.f64 (-.f64 #s(literal 1 binary64) x) y)) y))
#s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 (/.f64 x y) (sqrt.f64 x)) y))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) (*.f64 (fma.f64 #s(literal -1 binary64) (sqrt.f64 x) (/.f64 x y)) y))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (*.f64 (-.f64 (pow.f64 y #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 x))) y))
#s(approx (- 1 (- x (* (sqrt x) y))) (neg.f64 (*.f64 (fma.f64 (/.f64 (-.f64 #s(literal 1 binary64) x) y) #s(literal -1 binary64) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (- x (* (sqrt x) y)) (neg.f64 (*.f64 (-.f64 (/.f64 (neg.f64 x) y) (neg.f64 (sqrt.f64 x))) y)))
#s(approx (* (- 1 (/ (* 1 y) (sqrt x))) x) (neg.f64 (*.f64 (fma.f64 (/.f64 x y) #s(literal -1 binary64) (sqrt.f64 x)) y)))
#s(approx (- 1 (/ (* 1 y) (sqrt x))) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) #s(literal -1 binary64) (pow.f64 y #s(literal -1 binary64))) y))

eval6.0ms (0.3%)

Memory
12.8MiB live, 12.8MiB allocated; 0ms collecting garbage
Compiler

Compiled 1 230 to 219 computations (82.2% saved)

prune6.0ms (0.3%)

Memory
11.6MiB live, 11.6MiB allocated; 0ms collecting garbage
Pruning

9 alts after pruning (1 fresh and 8 done)

PrunedKeptTotal
New54155
Fresh000
Picked101
Done189
Total56965
Accuracy
100.0%
Counts
65 → 9
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
67.5%
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
99.9%
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
92.1%
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(approx (* 1 y) y) (sqrt.f64 x))) x)))
73.3%
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
59.2%
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
41.7%
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
27.9%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
33.1%
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Compiler

Compiled 342 to 147 computations (57% saved)

regimes33.0ms (1.7%)

Memory
-19.7MiB live, 26.3MiB allocated; 3ms collecting garbage
Counts
15 → 1
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
(-.f64 #s(literal 1 binary64) (-.f64 x (*.f64 (sqrt.f64 x) y)))
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 #s(approx (* 1 y) y) (sqrt.f64 x))) x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y) #s(literal 1 binary64)) x))
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y)) x)))
(-.f64 #s(literal 1 binary64) #s(approx (- x (* (sqrt x) y)) (*.f64 (-.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 1 binary64) y) (sqrt.f64 x))) x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (+ (* (sqrt x) y) 1) (*.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (-.f64 (fma.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 x)) y (pow.f64 x #s(literal -1 binary64))) #s(literal 1 binary64)) x))
Outputs
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
Calls

3 calls:

23.0ms
x
4.0ms
y
4.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Results
AccuracySegmentsBranch
99.9%1(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
99.9%1x
99.9%1y
Compiler

Compiled 10 to 11 computations (-10% saved)

regimes7.0ms (0.4%)

Memory
18.3MiB live, 18.3MiB allocated; 0ms collecting garbage
Counts
6 → 2
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
(fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x)))
Calls

3 calls:

2.0ms
x
2.0ms
y
2.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Results
AccuracySegmentsBranch
99.4%2(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
99.5%2x
96.8%3y
Compiler

Compiled 10 to 11 computations (-10% saved)

regimes6.0ms (0.3%)

Memory
16.4MiB live, 16.4MiB allocated; 0ms collecting garbage
Counts
5 → 3
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))
Calls

3 calls:

2.0ms
x
2.0ms
y
2.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Results
AccuracySegmentsBranch
94.9%3y
81.9%2(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
85.4%2x
Compiler

Compiled 10 to 11 computations (-10% saved)

regimes5.0ms (0.3%)

Memory
-38.7MiB live, 5.6MiB allocated; 6ms collecting garbage
Counts
4 → 3
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
#s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))
Calls

1 calls:

5.0ms
y
Results
AccuracySegmentsBranch
92.8%3y
Compiler

Compiled 1 to 2 computations (-100% saved)

regimes5.0ms (0.3%)

Memory
13.2MiB live, 13.2MiB allocated; 0ms collecting garbage
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
Calls

3 calls:

2.0ms
y
2.0ms
x
1.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Results
AccuracySegmentsBranch
59.2%1(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
59.2%1x
59.2%1y
Compiler

Compiled 10 to 11 computations (-10% saved)

regimes4.0ms (0.2%)

Memory
11.6MiB live, 11.6MiB allocated; 0ms collecting garbage
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x)))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Calls

3 calls:

1.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
1.0ms
y
1.0ms
x
Results
AccuracySegmentsBranch
58.8%2x
39.5%4y
59.5%2(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Compiler

Compiled 10 to 11 computations (-10% saved)

regimes3.0ms (0.2%)

Memory
13.8MiB live, 13.8MiB allocated; 0ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Outputs
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Calls

3 calls:

1.0ms
(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
1.0ms
x
1.0ms
y
Results
AccuracySegmentsBranch
33.1%1y
33.1%1x
33.1%1(+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x)))
Compiler

Compiled 10 to 11 computations (-10% saved)

bsearch17.0ms (0.9%)

Memory
-33.8MiB live, 23.4MiB allocated; 8ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
16.0ms
2.2130893209003516e-7
1.4088980362379359e-5
Samples
5.0ms112×0valid
Compiler

Compiled 179 to 159 computations (11.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-sub: 1.0ms (36.8% of total)
ival-mult: 1.0ms (36.8% of total)
ival-sqrt: 1.0ms (36.8% of total)
ival-true: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch26.0ms (1.4%)

Memory
2.2MiB live, 45.6MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
13.0ms
1.0520579768567903e+64
1.6949503945405834e+66
11.0ms
-3.8002676287928284e+59
-2.4592235870927882e+56
Samples
11.0ms240×0valid
Compiler

Compiled 401 to 357 computations (11% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sqrt: 2.0ms (33.2% of total)
ival-sub: 1.0ms (16.6% of total)
ival-add: 1.0ms (16.6% of total)
ival-mult: 1.0ms (16.6% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch45.0ms (2.4%)

Memory
-4.8MiB live, 40.5MiB allocated; 5ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
8.0ms
1.0520579768567903e+64
1.6949503945405834e+66
9.0ms
-3.8002676287928284e+59
-2.4592235870927882e+56
Samples
9.0ms208×0valid
Compiler

Compiled 386 to 342 computations (11.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 5.0ms
ival-sub: 1.0ms (19.8% of total)
ival-add: 1.0ms (19.8% of total)
ival-mult: 1.0ms (19.8% of total)
ival-sqrt: 1.0ms (19.8% of total)
ival-true: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated; 0ms collecting garbage
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-1508437572700.463
0.968591795400233
Compiler

Compiled 11 to 12 computations (-9.1% saved)

simplify63.0ms (3.3%)

Memory
-3.3MiB live, 41.4MiB allocated; 5ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041170
160170
276170
3106170
4163170
5423170
63448170
75922170
Stop Event
node limit
Calls
Call 1
Inputs
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 x #s(literal 8264141345021879/590295810358705651712 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x))))
(if (<=.f64 y #s(literal -280000000000000008310336636449409737310516586697384263680 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (if (<=.f64 y #s(literal 26999999999999999552600167123636672809554579622836939803754233856 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))))
(if (<=.f64 y #s(literal -380000000000000009312065267007324790611904493174998555426816 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y)) (if (<=.f64 y #s(literal 750000000000000005759802795774477226800149574436992572489222586368 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x)) #s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 (+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x))) #s(literal -1000000000000 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x))) #s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))
Outputs
(fma.f64 (sqrt.f64 x) y (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 x #s(literal 8264141345021879/590295810358705651712 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (fma.f64 (sqrt.f64 x) y #s(approx (- 1 x) (neg.f64 x))))
(if (<=.f64 y #s(literal -280000000000000008310336636449409737310516586697384263680 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64))) (if (<=.f64 y #s(literal 26999999999999999552600167123636672809554579622836939803754233856 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x)) #s(approx (+ (- 1 x) (* y (sqrt x))) (fma.f64 (sqrt.f64 x) y #s(literal 1 binary64)))))
(if (<=.f64 y #s(literal -380000000000000009312065267007324790611904493174998555426816 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y)) (if (<=.f64 y #s(literal 750000000000000005759802795774477226800149574436992572489222586368 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x)) #s(approx (+ (- 1 x) (* y (sqrt x))) (*.f64 (sqrt.f64 x) y))))
#s(approx (+ (- 1 x) (* y (sqrt x))) (-.f64 #s(literal 1 binary64) x))
(if (<=.f64 (+.f64 (-.f64 #s(literal 1 binary64) x) (*.f64 y (sqrt.f64 x))) #s(literal -1000000000000 binary64)) #s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) (neg.f64 x))) #s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64))))
#s(approx (+ (- 1 x) (* y (sqrt x))) #s(approx (- 1 x) #s(literal 1 binary64)))

derivations9.0ms (0.5%)

Memory
9.3MiB live, 9.3MiB allocated; 0ms collecting garbage
Stop Event
fuel
Compiler

Compiled 195 to 42 computations (78.5% saved)

preprocess55.0ms (2.9%)

Memory
1.0MiB live, 51.5MiB allocated; 14ms collecting garbage
Compiler

Compiled 406 to 98 computations (75.9% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...