Numeric.SpecFunctions:invErfc from math-functions-0.1.5.2, A

Time bar (total: 1.7s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze259.0ms (15.4%)

Memory
-153.6MiB live, 219.7MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
25%25%74.9%0.1%0%0%0%4
31.3%31.2%68.6%0.1%0%0%0%5
43.8%43.7%56.2%0.1%0%0%0%6
53.1%53%46.8%0.1%0%0%0%7
59.4%59.3%40.6%0.1%0%0%0%8
68%67.9%32%0.1%0%0%0%9
73.6%73.5%26.3%0.1%0%0%0%10
78.2%78.1%21.7%0.1%0%0%0%11
83.3%83.1%16.7%0.1%0%0%0%12
Compiler

Compiled 14 to 12 computations (14.3% saved)

sample1.1s (62.9%)

Memory
24.0MiB live, 1 608.7MiB allocated
Samples
753.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 520.0ms
ival-mult: 141.0ms (27.1% of total)
const: 132.0ms (25.4% of total)
ival-exp: 82.0ms (15.8% of total)
ival-div: 63.0ms (12.1% of total)
ival-sub: 46.0ms (8.8% of total)
ival-add: 46.0ms (8.8% of total)
ival-true: 7.0ms (1.3% of total)
ival-assert: 4.0ms (0.8% of total)
Bogosity

explain128.0ms (7.6%)

Memory
24.3MiB live, 222.1MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
280-2(-0.00011827356519358349 3.8945216200758183e-308 -1.9946531552008807e+85)(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
30-0-(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
00-0-#s(literal 5641895835477563/5000000000000000 binary64)
00-0-(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
00-0-z
00-0-(*.f64 x y)
00-0-(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
00-0-y
00-0-x
00-0-(exp.f64 z)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))n/u80
(exp.f64 z)underflow59
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))underflow59
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))underflow8
(*.f64 x y)underflow35
-.f64(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))nan-rescue30
(exp.f64 z)overflow65
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))overflow65
(*.f64 x y)overflow28
Confusion
Predicted +Predicted -
+112
-0243
Precision
1.0
Recall
0.8461538461538461
Confusion?
Predicted +Predicted MaybePredicted -
+1102
-00243
Precision?
1.0
Recall?
0.8461538461538461
Freqs
test
numberfreq
0245
111
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
47.0ms512×0valid
Compiler

Compiled 145 to 44 computations (69.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 30.0ms
ival-mult: 8.0ms (27.1% of total)
const: 8.0ms (27.1% of total)
ival-div: 4.0ms (13.5% of total)
ival-exp: 4.0ms (13.5% of total)
ival-sub: 2.0ms (6.8% of total)
ival-add: 2.0ms (6.8% of total)
ival-true: 1.0ms (3.4% of total)
ival-assert: 0.0ms (0% of total)

preprocess5.0ms (0.3%)

Memory
-31.5MiB live, 6.8MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Outputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Compiler

Compiled 12 to 10 computations (16.7% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Compiler

Compiled 12 to 10 computations (16.7% saved)

simplify0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
cost-diff0
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
cost-diff0
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
cost-diff0
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
x
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
y
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)
Outputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
x
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
y
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)

localize30.0ms (1.8%)

Memory
7.4MiB live, 45.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
accuracy0.0078125
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
accuracy0.6250000000000001
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
accuracy6.3435750726779405
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
Samples
23.0ms256×0valid
Compiler

Compiled 88 to 22 computations (75% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 4.0ms (27.4% of total)
const: 4.0ms (27.4% of total)
ival-div: 2.0ms (13.7% of total)
ival-exp: 2.0ms (13.7% of total)
ival-sub: 1.0ms (6.8% of total)
ival-add: 1.0ms (6.8% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series12.0ms (0.7%)

Memory
19.9MiB live, 19.9MiB allocated
Counts
4 → 64
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x (pow y 2)) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(* 5641895835477563/5000000000000000 (exp z))
(+ (* -1 (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(/ -1 x)
(/ (- (* -5641895835477563/5000000000000000 (/ (exp z) (* x y))) 1) x)
(/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2)))) (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))))) x)
(/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 3) (pow y 3)))) (+ 1 (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2))))))) x)
(* -1 (* x y))
(* x (- (* 5641895835477563/5000000000000000 (/ (exp z) x)) y))
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(* -1 (/ (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y)))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (* 179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* x (pow y 3)))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow y 2)))) x)) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (* x (- (* -5641895835477563/5000000000000000 (/ (exp z) x)) (* -1 y))))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* y (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* (pow x 3) y) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow x 2) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x))
(- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(* y (- (* 5641895835477563/5000000000000000 (/ (exp z) y)) x))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(- (* -1 (/ (- (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y))) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(- (* -1 (/ (- (* -1 (/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(* -1 (* y (- (* -5641895835477563/5000000000000000 (/ (exp z) y)) (* -1 x))))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(/ y (- 5641895835477563/5000000000000000 (* x y)))
(+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(- 5641895835477563/5000000000000000 (* x y))
(- (+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z)) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z)))) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z)))))) (* x y))
5641895835477563/5000000000000000
(+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z))))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z))))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))
(- (* 5641895835477563/5000000000000000 (exp z)) (* x y))
Calls

9 calls:

TimeVariablePointExpression
1.0ms
y
@inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
1.0ms
x
@0
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
1.0ms
z
@-inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
1.0ms
x
@inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
1.0ms
z
@0
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (* 5641895835477563/5000000000000000 (exp z)))

simplify1.0ms (0.1%)

Memory
2.6MiB live, 2.6MiB allocated
Algorithm
egg-herbie
Counts
64 → 4
Calls
Call 1
Inputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x (pow y 2)) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(* 5641895835477563/5000000000000000 (exp z))
(+ (* -1 (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(/ -1 x)
(/ (- (* -5641895835477563/5000000000000000 (/ (exp z) (* x y))) 1) x)
(/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2)))) (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))))) x)
(/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 3) (pow y 3)))) (+ 1 (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2))))))) x)
(* -1 (* x y))
(* x (- (* 5641895835477563/5000000000000000 (/ (exp z) x)) y))
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(* -1 (/ (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y)))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (* 179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* x (pow y 3)))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow y 2)))) x)) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (* x (- (* -5641895835477563/5000000000000000 (/ (exp z) x)) (* -1 y))))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* y (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* (pow x 3) y) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow x 2) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x))
(- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(* y (- (* 5641895835477563/5000000000000000 (/ (exp z) y)) x))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(- (* -1 (/ (- (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y))) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(- (* -1 (/ (- (* -1 (/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(* -1 (* y (- (* -5641895835477563/5000000000000000 (/ (exp z) y)) (* -1 x))))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(/ y (- 5641895835477563/5000000000000000 (* x y)))
(+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(- 5641895835477563/5000000000000000 (* x y))
(- (+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z)) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z)))) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z)))))) (* x y))
5641895835477563/5000000000000000
(+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z))))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z))))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))
(- (* 5641895835477563/5000000000000000 (exp z)) (* x y))
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))

rewrite0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Outputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))

eval1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Compiler

Compiled 134 to 21 computations (84.3% saved)

prune2.0ms (0.1%)

Memory
3.8MiB live, 3.8MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
95.7%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
27.0%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
3.2%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
2.9%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
Compiler

Compiled 73 to 57 computations (21.9% saved)

simplify1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
cost-diff0
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
cost-diff0
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
cost-diff0
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
cost-diff0
(exp.f64 z)
cost-diff0
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
cost-diff0
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
cost-diff0
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
cost-diff0
(exp.f64 z)
cost-diff0
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
cost-diff0
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)
x
y
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
y
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)
x
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)
x
y
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
y
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
#s(literal 5641895835477563/5000000000000000 binary64)
(exp.f64 z)
z
(*.f64 x y)
x

localize39.0ms (2.3%)

Memory
-17.1MiB live, 62.1MiB allocated
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy0.0078125
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
accuracy0.6250000000000001
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
accuracy6.3435750726779405
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
accuracy44.69250888801687
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
accuracy0.0
(exp.f64 z)
accuracy0.0078125
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
accuracy0.6250000000000001
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
accuracy61.88307643398819
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
accuracy0.0
(exp.f64 z)
accuracy0.0078125
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
accuracy62.15216650620394
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
Samples
28.0ms256×0valid
Compiler

Compiled 219 to 31 computations (85.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 16.0ms
ival-mult: 5.0ms (31.3% of total)
const: 4.0ms (25% of total)
ival-div: 2.0ms (12.5% of total)
ival-exp: 2.0ms (12.5% of total)
ival-sub: 1.0ms (6.3% of total)
ival-add: 1.0ms (6.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series5.0ms (0.3%)

Memory
11.2MiB live, 11.2MiB allocated
Counts
7 → 69
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
(exp.f64 z)
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(* 5641895835477563/5000000000000000 (exp z))
(+ (* -1 (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
(+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x (pow y 2)) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(* -1 (* x y))
(* x (- (* 5641895835477563/5000000000000000 (/ (exp z) x)) y))
(/ -1 x)
(/ (- (* -5641895835477563/5000000000000000 (/ (exp z) (* x y))) 1) x)
(/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2)))) (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))))) x)
(/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 3) (pow y 3)))) (+ 1 (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2))))))) x)
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (* -5641895835477563/5000000000000000 (/ (exp z) x)) (* -1 y))))
(* -1 (/ (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y)))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (* 179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* x (pow y 3)))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow y 2)))) x)) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* y (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* (pow x 3) y) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow x 2) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(* y (- (* 5641895835477563/5000000000000000 (/ (exp z) y)) x))
(- (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x))
(- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(* -1 (* y (- (* -5641895835477563/5000000000000000 (/ (exp z) y)) (* -1 x))))
(- (* -1 (/ (- (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y))) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(- (* -1 (/ (- (* -1 (/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
5641895835477563/5000000000000000
(+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z))))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z))))))
1
(+ 1 z)
(+ 1 (* z (+ 1 (* 1/2 z))))
(+ 1 (* z (+ 1 (* z (+ 1/2 (* 1/6 z))))))
(- 5641895835477563/5000000000000000 (* x y))
(- (+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z)) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z)))) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z)))))) (* x y))
(/ y (- 5641895835477563/5000000000000000 (* x y)))
(+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(exp z)
(- (* 5641895835477563/5000000000000000 (exp z)) (* x y))
(/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))
Calls

9 calls:

TimeVariablePointExpression
1.0ms
z
@inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (* 5641895835477563/5000000000000000 (exp z)) (exp z) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
1.0ms
z
@-inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (* 5641895835477563/5000000000000000 (exp z)) (exp z) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
0.0ms
y
@-inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (* 5641895835477563/5000000000000000 (exp z)) (exp z) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
0.0ms
z
@0
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (* 5641895835477563/5000000000000000 (exp z)) (exp z) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
0.0ms
x
@-inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (* 5641895835477563/5000000000000000 (exp z)) (exp z) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)) (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))

simplify1.0ms (0.1%)

Memory
2.9MiB live, 2.9MiB allocated
Algorithm
egg-herbie
Counts
69 → 7
Calls
Call 1
Inputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(* 5641895835477563/5000000000000000 (exp z))
(+ (* -1 (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
(+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x (pow y 2)) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(* -1 (* x y))
(* x (- (* 5641895835477563/5000000000000000 (/ (exp z) x)) y))
(/ -1 x)
(/ (- (* -5641895835477563/5000000000000000 (/ (exp z) (* x y))) 1) x)
(/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2)))) (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))))) x)
(/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 3) (pow y 3)))) (+ 1 (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* x y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 2) (pow y 2))))))) x)
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (* -5641895835477563/5000000000000000 (/ (exp z) x)) (* -1 y))))
(* -1 (/ (+ 1 (* 5641895835477563/5000000000000000 (/ (exp z) (* x y)))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(* -1 (/ (+ 1 (* -1 (/ (- (* -1 (/ (- (* 179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* x (pow y 3)))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow y 2)))) x)) (* 5641895835477563/5000000000000000 (/ (exp z) y))) x))) x))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(* y (+ (* y (- (* y (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* (pow x 3) y) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow x 2) (pow (exp z) 3))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z)))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(* y (- (* 5641895835477563/5000000000000000 (/ (exp z) y)) x))
(- (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x))
(- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3)))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(* -1 (* y (- (* -5641895835477563/5000000000000000 (/ (exp z) y)) (* -1 x))))
(- (* -1 (/ (- (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y))) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(- (* -1 (/ (- (* -1 (/ (- (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* -5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y)) (/ 1 x))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
5641895835477563/5000000000000000
(+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z))))
(+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z))))))
1
(+ 1 z)
(+ 1 (* z (+ 1 (* 1/2 z))))
(+ 1 (* z (+ 1 (* z (+ 1/2 (* 1/6 z))))))
(- 5641895835477563/5000000000000000 (* x y))
(- (+ 5641895835477563/5000000000000000 (* 5641895835477563/5000000000000000 z)) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* 5641895835477563/10000000000000000 z)))) (* x y))
(- (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/5000000000000000 (* z (+ 5641895835477563/10000000000000000 (* 5641895835477563/30000000000000000 z)))))) (* x y))
(/ y (- 5641895835477563/5000000000000000 (* x y)))
(+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(exp z)
(- (* 5641895835477563/5000000000000000 (exp z)) (* x y))
(/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(exp.f64 z)
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(* 5641895835477563/5000000000000000 (exp z))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
(+ (* -1 (* x y)) (* 5641895835477563/5000000000000000 (exp z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x (pow y 2)) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ y (exp z))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))

rewrite1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Counts
7 → 7
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
(exp.f64 z)
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
(exp.f64 z)
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
(-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))

eval3.0ms (0.2%)

Memory
-33.7MiB live, 5.0MiB allocated
Compiler

Compiled 517 to 32 computations (93.8% saved)

prune4.0ms (0.2%)

Memory
8.5MiB live, 8.5MiB allocated
Pruning

5 alts after pruning (1 fresh and 4 done)

PrunedKeptTotal
New19120
Fresh000
Picked033
Done011
Total19524
Accuracy
95.7%
Counts
24 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
27.0%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
3.2%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
2.9%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
2.9%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Compiler

Compiled 88 to 69 computations (21.6% saved)

simplify0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff0
(exp.f64 z)
cost-diff0
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(exp.f64 z)
z
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(exp.f64 z)
z

localize27.0ms (1.6%)

Memory
0.2MiB live, 38.7MiB allocated
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(exp.f64 z)
accuracy62.15225214720593
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Samples
21.0ms256×0valid
Compiler

Compiled 35 to 24 computations (31.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 15.0ms
ival-mult: 4.0ms (27.6% of total)
const: 4.0ms (27.6% of total)
ival-div: 2.0ms (13.8% of total)
ival-exp: 2.0ms (13.8% of total)
ival-sub: 1.0ms (6.9% of total)
ival-add: 1.0ms (6.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series3.0ms (0.1%)

Memory
3.3MiB live, 3.3MiB allocated
Counts
2 → 30
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(exp.f64 z)
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
1
(+ 1 z)
(+ 1 (* z (+ 1 (* 1/2 z))))
(+ 1 (* z (+ 1 (* z (+ 1/2 (* 1/6 z))))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(exp z)
Calls

9 calls:

TimeVariablePointExpression
0.0ms
z
@inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp z))
0.0ms
z
@-inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp z))
0.0ms
z
@0
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp z))
0.0ms
x
@0
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp z))
0.0ms
x
@inf
((+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp z))

simplify1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
egg-herbie
Counts
30 → 2
Calls
Call 1
Inputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* x (pow y 3)) (pow (exp z) 3)))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- (+ 1 (* x (- (* 625000000000000000000000000000000000000000000000000000000000000/1013211836423377808197068612118338110498536634308026710423022961 (/ (* x (pow y 4)) (pow (exp z) 4))) (* -125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (pow y 3) (pow (exp z) 3)))))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
x
(* x (- 1 (/ 1 (pow x 2))))
(* x (- (+ 1 (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y)))) (/ 1 (pow x 2))))
(* x (- (+ 1 (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 4) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2)))))
(* -1 (* x (- (/ 1 (pow x 2)) 1)))
(* -1 (* x (- (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 3) y))) (/ 1 (pow x 2))) 1)))
(* -1 (* x (- (+ (* -1 (/ (- (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* x (pow y 2)))) (* 5641895835477563/5000000000000000 (/ (exp z) y))) (pow x 3))) (/ 1 (pow x 2))) 1)))
(+ x (* 5000000000000000/5641895835477563 (/ y (exp z))))
(+ x (* y (+ (* 25000000000000000000000000000000/31830988618379068626528276418969 (/ (* x y) (pow (exp z) 2))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(+ x (* y (+ (* y (- (* 125000000000000000000000000000000000000000000000/179587122125166574152748016388400639365587092547 (/ (* (pow x 2) y) (pow (exp z) 3))) (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ x (pow (exp z) 2))))) (* 5000000000000000/5641895835477563 (/ 1 (exp z))))))
(- x (/ 1 x))
(- (+ x (* -5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y)))) (/ 1 x))
(- (+ x (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (/ 1 x)))
(- (+ x (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) (pow y 3))))) (+ (* 5641895835477563/5000000000000000 (/ (exp z) (* (pow x 2) y))) (+ (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) (pow y 2)))) (/ 1 x))))
(- (+ x (* -1 (/ (+ (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2))) (* 31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (* (pow x 3) y)))) y))) (/ 1 x))
(- (+ x (* -1 (/ (+ (* -1 (/ (+ (* -179587122125166574152748016388400639365587092547/125000000000000000000000000000000000000000000000 (/ (pow (exp z) 3) (* (pow x 4) y))) (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ (pow (exp z) 2) (pow x 3)))) y)) (* 5641895835477563/5000000000000000 (/ (exp z) (pow x 2)))) y))) (/ 1 x))
(+ x (/ y (- 5641895835477563/5000000000000000 (* x y))))
(+ x (+ (* -5641895835477563/5000000000000000 (/ (* y z) (pow (- 5641895835477563/5000000000000000 (* x y)) 2))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* -1 (* z (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
(+ x (+ (* z (- (* z (- (* -1 (* z (+ (* -5641895835477563/5000000000000000 (/ (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))) (- 5641895835477563/5000000000000000 (* x y)))) (+ (* -31830988618379068626528276418969/50000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/30000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))))) (+ (* -31830988618379068626528276418969/25000000000000000000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 3))) (* 5641895835477563/10000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2)))))) (* 5641895835477563/5000000000000000 (/ y (pow (- 5641895835477563/5000000000000000 (* x y)) 2))))) (/ y (- 5641895835477563/5000000000000000 (* x y)))))
1
(+ 1 z)
(+ 1 (* z (+ 1 (* 1/2 z))))
(+ 1 (* z (+ 1 (* z (+ 1/2 (* 1/6 z))))))
(+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y))))
(exp z)
Outputs
(* 5000000000000000/5641895835477563 (/ y (exp z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(+ (* 5000000000000000/5641895835477563 (/ y (exp z))) (* x (- 1 (* -25000000000000000000000000000000/31830988618379068626528276418969 (/ (pow y 2) (pow (exp z) 2))))))
(exp.f64 z)

rewrite0.0ms (0%)

Memory
0.4MiB live, 0.4MiB allocated
Counts
2 → 2
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(exp.f64 z)
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
(exp.f64 z)

eval0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Compiler

Compiled 58 to 13 computations (77.6% saved)

prune3.0ms (0.2%)

Memory
4.6MiB live, 4.6MiB allocated
Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New303
Fresh000
Picked011
Done044
Total358
Accuracy
95.7%
Counts
8 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
27.0%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
3.2%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
2.9%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
2.9%
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Compiler

Compiled 176 to 90 computations (48.9% saved)

regimes15.0ms (0.9%)

Memory
-19.1MiB live, 21.4MiB allocated
Counts
5 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Outputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Calls

6 calls:

4.0ms
x
2.0ms
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
2.0ms
z
2.0ms
y
2.0ms
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Results
AccuracySegmentsBranch
95.6%1x
95.6%1y
95.6%1z
95.6%1(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
95.6%1(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
95.6%1(exp.f64 z)
Compiler

Compiled 21 to 29 computations (-38.1% saved)

regimes12.0ms (0.7%)

Memory
19.9MiB live, 19.9MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Calls

6 calls:

2.0ms
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
2.0ms
z
2.0ms
x
2.0ms
y
1.0ms
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Results
AccuracySegmentsBranch
27.0%1x
27.0%1y
27.0%1z
27.0%1(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
27.0%1(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
27.0%1(exp.f64 z)
Compiler

Compiled 21 to 29 computations (-38.1% saved)

regimes11.0ms (0.7%)

Memory
-19.5MiB live, 19.3MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
Calls

6 calls:

2.0ms
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
2.0ms
z
2.0ms
x
2.0ms
y
1.0ms
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Results
AccuracySegmentsBranch
3.2%1y
3.2%1(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
3.2%1(exp.f64 z)
3.2%1x
3.2%1z
3.2%1(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Compiler

Compiled 21 to 29 computations (-38.1% saved)

regimes9.0ms (0.5%)

Memory
15.8MiB live, 15.8MiB allocated
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
Calls

6 calls:

2.0ms
z
1.0ms
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
1.0ms
x
1.0ms
y
1.0ms
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Results
AccuracySegmentsBranch
2.9%1x
2.9%1(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
2.9%1(exp.f64 z)
2.9%1y
2.9%1(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
2.9%1z
Compiler

Compiled 21 to 29 computations (-38.1% saved)

regimes7.0ms (0.4%)

Memory
13.6MiB live, 13.6MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Outputs
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Calls

6 calls:

1.0ms
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
1.0ms
y
1.0ms
x
1.0ms
z
1.0ms
(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
Results
AccuracySegmentsBranch
2.9%1(*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z))
2.9%1(exp.f64 z)
2.9%1x
2.9%1z
2.9%1y
2.9%1(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
Compiler

Compiled 21 to 29 computations (-38.1% saved)

simplify5.0ms (0.3%)

Memory
8.4MiB live, 8.4MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))
Outputs
(+.f64 x (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (/.f64 y (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y))))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (-.f64 (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)) (*.f64 x y)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (*.f64 #s(literal 5641895835477563/5000000000000000 binary64) (exp.f64 z)))
#s(approx (+ x (/ y (- (* 5641895835477563/5000000000000000 (exp z)) (* x y)))) (exp.f64 z))

soundness1.0ms (0.1%)

Memory
1.4MiB live, 1.4MiB allocated
Stop Event
done
Compiler

Compiled 88 to 21 computations (76.1% saved)

preprocess36.0ms (2.1%)

Memory
-16.6MiB live, 59.9MiB allocated
Compiler

Compiled 224 to 84 computations (62.5% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...