Development.Shake.Progress:decay from shake-0.15.5

Time bar (total: 2.1s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze355.0ms (16.9%)

Memory
-16.9MiB live, 537.2MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.7%0.3%0%0%0%0
0%0%99.7%0.3%0%0%0%1
0%0%99.7%0.3%0%0%0%2
0%0%99.7%0.3%0%0%0%3
0%0%99.7%0.3%0%0%0%4
0%0%99.7%0.3%0%0%0%5
0%0%99.7%0.3%0%0%0%6
12.5%12.5%87.2%0.3%0%0%0%7
12.5%12.5%87.2%0.3%0%0%0%8
18.8%18.7%81%0.3%0%0%0%9
21.9%21.8%77.9%0.3%0%0%0%10
21.9%21.8%77.9%0.3%0%0%0%11
21.9%21.8%77.9%0.3%0%0%0%12
Compiler

Compiled 19 to 16 computations (15.8% saved)

sample1.1s (50%)

Memory
6.3MiB live, 1 635.9MiB allocated
Samples
683.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 415.0ms
ival-mult: 177.0ms (42.6% of total)
ival-sub: 96.0ms (23.1% of total)
ival-add: 80.0ms (19.3% of total)
ival-div: 53.0ms (12.8% of total)
ival-true: 7.0ms (1.7% of total)
ival-assert: 3.0ms (0.7% of total)
Bogosity

explain137.0ms (6.5%)

Memory
-4.9MiB live, 236.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
811(-1.9108081369268403e-126 -2.1073675481224125e+76 3.2578536336422984e+236 -1.0038874831739291e-246 2.816066080411867e-265 -2.359482405527227e-265)0-(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
40-0-(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
00-0-(*.f64 z (-.f64 t a))
00-0-a
00-0-t
00-0-z
00-0-(+.f64 y (*.f64 z (-.f64 b y)))
00-0-(*.f64 x y)
00-0-(-.f64 b y)
00-0-(*.f64 z (-.f64 b y))
00-0-y
00-0-(-.f64 t a)
00-0-b
00-0-x
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
/.f64(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))o/n310
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))overflow68
(*.f64 z (-.f64 t a))overflow46
(*.f64 x y)overflow31
/.f64(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))o/o290
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))overflow68
(*.f64 z (-.f64 t a))overflow46
(*.f64 x y)overflow31
(+.f64 y (*.f64 z (-.f64 b y)))overflow53
(*.f64 z (-.f64 b y))overflow53
/.f64(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))n/o220
(+.f64 y (*.f64 z (-.f64 b y)))overflow53
(*.f64 z (-.f64 b y))overflow53
+.f64(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))nan-rescue40
(*.f64 x y)overflow31
(*.f64 z (-.f64 t a))overflow46
Confusion
Predicted +Predicted -
+810
-1174
Precision
0.9878048780487805
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+8100
-10174
Precision?
0.9878048780487805
Recall?
1.0
Freqs
test
numberfreq
0174
178
24
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
46.0ms512×0valid
Compiler

Compiled 195 to 60 computations (69.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 23.0ms
ival-mult: 10.0ms (43% of total)
ival-sub: 5.0ms (21.5% of total)
ival-add: 4.0ms (17.2% of total)
ival-div: 3.0ms (12.9% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

preprocess5.0ms (0.3%)

Memory
9.2MiB live, 9.2MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Outputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Compiler

Compiled 17 to 14 computations (17.6% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 6 computations (-∞% saved)

prune0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Compiler

Compiled 17 to 14 computations (17.6% saved)

simplify0.0ms (0%)

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

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z (-.f64 t a))
cost-diff0
(*.f64 x y)
cost-diff0
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
cost-diff0
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
x
y
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
(-.f64 b y)
b
Outputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
x
y
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
(-.f64 b y)
b

localize32.0ms (1.5%)

Memory
5.6MiB live, 43.4MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.00390625
(*.f64 z (-.f64 t a))
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy0.9609313074906174
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
accuracy19.283223662678573
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Samples
23.0ms256×0valid
Compiler

Compiled 118 to 30 computations (74.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 5.0ms (43.1% of total)
ival-sub: 2.0ms (17.2% of total)
ival-div: 2.0ms (17.2% of total)
ival-add: 2.0ms (17.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series28.0ms (1.3%)

Memory
-2.6MiB live, 35.2MiB allocated
Counts
5 → 79
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(*.f64 z (-.f64 b y))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
Calls

18 calls:

TimeVariablePointExpression
3.0ms
z
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (* z (- b y)))
3.0ms
z
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (* z (- b y)))
2.0ms
y
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (* z (- b y)))
2.0ms
y
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (* z (- b y)))
1.0ms
y
@0
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (* z (- b y)))

simplify2.0ms (0.1%)

Memory
2.4MiB live, 2.4MiB allocated
Algorithm
egg-herbie
Counts
79 → 5
Calls
Call 1
Inputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(* z (- t a))
(*.f64 x y)
(+ (* x y) (* z (- t a)))
(*.f64 z (-.f64 t a))
(* x y)
(*.f64 z (-.f64 b y))

rewrite0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Counts
5 → 5
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(*.f64 z (-.f64 b y))
Outputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(*.f64 z (-.f64 b y))

eval1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Compiler

Compiled 214 to 31 computations (85.5% saved)

prune2.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New6410
Fresh000
Picked011
Done000
Total6511
Accuracy
70.0%
Counts
11 → 5
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
30.8%
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
47.7%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
27.9%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
5.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
Compiler

Compiled 111 to 81 computations (27% saved)

simplify1.0ms (0%)

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

Found 16 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 z (-.f64 b y))
cost-diff0
#s(approx (* x y) (*.f64 z (-.f64 b y)))
cost-diff0
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
cost-diff0
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
cost-diff0
(-.f64 t a)
cost-diff0
(*.f64 z (-.f64 t a))
cost-diff0
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
cost-diff0
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
cost-diff0
(+.f64 y (*.f64 z (-.f64 b y)))
cost-diff0
(*.f64 x y)
cost-diff0
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
cost-diff0
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
cost-diff0
(*.f64 z (-.f64 t a))
cost-diff0
(*.f64 x y)
cost-diff0
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
x
y
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
x
y
(+.f64 y (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))
y
(*.f64 z (-.f64 b y))
(-.f64 b y)
b
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
(*.f64 z (-.f64 t a))
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
x
y
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
x
y
(+.f64 y (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))
y
(*.f64 z (-.f64 b y))
(-.f64 b y)
b
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
(*.f64 z (-.f64 t a))
(-.f64 t a)
t
a
(+.f64 y (*.f64 z (-.f64 b y)))

localize49.0ms (2.3%)

Memory
-6.7MiB live, 71.0MiB allocated
Localize:

Found 16 expressions of interest:

NewMetricScoreProgram
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy0.9609313074906174
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
accuracy19.283223662678573
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
accuracy60.44641629460598
#s(approx (* x y) (*.f64 z (-.f64 b y)))
accuracy0.00390625
(*.f64 z (-.f64 t a))
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy19.283223662678573
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
accuracy21.06766812419791
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
accuracy0.00390625
(+.f64 y (*.f64 z (-.f64 b y)))
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy19.283223662678573
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
accuracy40.390645729063735
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
accuracy0.0
(*.f64 x y)
accuracy0.00390625
(*.f64 z (-.f64 t a))
accuracy0.9609313074906174
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
accuracy60.796882671777496
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
Samples
29.0ms256×0valid
Compiler

Compiled 452 to 45 computations (90% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 5.0ms (42.8% of total)
ival-sub: 3.0ms (25.7% of total)
ival-div: 2.0ms (17.1% of total)
ival-add: 2.0ms (17.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series21.0ms (1%)

Memory
-7.1MiB live, 30.1MiB allocated
Counts
14 → 100
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(+.f64 y (*.f64 z (-.f64 b y)))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(-.f64 t a)
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* b z) (* y (+ 1 (* -1 z))))
(+ (* -1 (* y z)) (* b z))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* y (+ 1 (* -1 z)))
(* y (+ 1 (+ (* -1 z) (/ (* b z) y))))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (- z 1)))
(* -1 (* y (- (+ z (* -1 (/ (* b z) y))) 1)))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
y
(+ y (* z (- b y)))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(* z (- (+ b (/ y z)) y))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- b y)) (* -1 (/ y z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(* -1 a)
(- t a)
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
t
(* t (+ 1 (* -1 (/ a t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(* -1 (* t (- (/ a t) 1)))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(+ t (* -1 a))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* a (- (/ t a) 1))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(* -1 (* a (+ 1 (* -1 (/ t a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ y (* -1 (* y z)))
(+ y (+ (* -1 (* y z)) (* b z)))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (+ (* -1 (/ (* y z) b)) (/ y b))))
(* b (+ z (* -1 (/ (* y z) b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (* -1 (/ (+ y (* -1 (* y z))) b)))))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
Calls

18 calls:

TimeVariablePointExpression
5.0ms
a
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (+ y (* z (- b y))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)))
1.0ms
z
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (+ y (* z (- b y))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)))
1.0ms
z
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (+ y (* z (- b y))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)))
1.0ms
y
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (+ y (* z (- b y))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)))
1.0ms
y
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- t a)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (+ y (* z (- b y))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)))

simplify2.0ms (0.1%)

Memory
3.2MiB live, 3.2MiB allocated
Algorithm
egg-herbie
Counts
100 → 14
Calls
Call 1
Inputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* b z) (* y (+ 1 (* -1 z))))
(+ (* -1 (* y z)) (* b z))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* y (+ 1 (* -1 z)))
(* y (+ 1 (+ (* -1 z) (/ (* b z) y))))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (- z 1)))
(* -1 (* y (- (+ z (* -1 (/ (* b z) y))) 1)))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
y
(+ y (* z (- b y)))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(* z (- (+ b (/ y z)) y))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- b y)) (* -1 (/ y z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(* -1 a)
(- t a)
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
t
(* t (+ 1 (* -1 (/ a t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(* -1 (* t (- (/ a t) 1)))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(+ t (* -1 a))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* a (- (/ t a) 1))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(* -1 (* a (+ 1 (* -1 (/ t a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ y (* -1 (* y z)))
(+ y (+ (* -1 (* y z)) (* b z)))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (+ (* -1 (/ (* y z) b)) (/ y b))))
(* b (+ z (* -1 (/ (* y z) b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (* -1 (/ (+ y (* -1 (* y z))) b)))))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(* z (- t a))
(*.f64 x y)
(+ (* x y) (* z (- t a)))
(*.f64 z (-.f64 t a))
(* x y)
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
(/ (* x y) (+ y (* z (- b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(+.f64 y (*.f64 z (-.f64 b y)))
(* x (+ y (/ (* z (- t a)) x)))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(-.f64 t a)
(/ (- t a) b)
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(*.f64 z (-.f64 b y))

rewrite1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Counts
14 → 14
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(+.f64 y (*.f64 z (-.f64 b y)))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(-.f64 t a)
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
(+.f64 (*.f64 x y) (*.f64 z (-.f64 t a)))
(*.f64 x y)
(*.f64 z (-.f64 t a))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(+.f64 y (*.f64 z (-.f64 b y)))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(-.f64 t a)
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))

eval3.0ms (0.2%)

Memory
7.1MiB live, 7.1MiB allocated
Compiler

Compiled 1 014 to 46 computations (95.5% saved)

prune7.0ms (0.3%)

Memory
13.9MiB live, 13.9MiB allocated
Pruning

11 alts after pruning (6 fresh and 5 done)

PrunedKeptTotal
New30636
Fresh000
Picked044
Done011
Total301141
Accuracy
70.4%
Counts
41 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
30.8%
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
47.7%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
27.9%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
5.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
4.5%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
2.6%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
2.9%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
3.3%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
5.1%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
4.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
Compiler

Compiled 463 to 297 computations (35.9% saved)

simplify1.0ms (0%)

Memory
1.6MiB live, 1.5MiB allocated
Algorithm
egg-herbie
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 b y)
cost-diff0
(*.f64 z (-.f64 b y))
cost-diff0
(+.f64 y (*.f64 z (-.f64 b y)))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
cost-diff0
(-.f64 b y)
cost-diff0
(*.f64 z (-.f64 b y))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
cost-diff0
(*.f64 x y)
cost-diff0
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
cost-diff0
(-.f64 t a)
cost-diff0
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
cost-diff0
(-.f64 t a)
cost-diff0
(*.f64 z (-.f64 t a))
cost-diff0
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
x
y
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 y (*.f64 z (-.f64 b y)))
y
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
z
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
x
y
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 y (*.f64 z (-.f64 b y)))
y
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b

localize43.0ms (2.1%)

Memory
-9.7MiB live, 65.9MiB allocated
Localize:

Found 17 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 b y)
accuracy0.00390625
(+.f64 y (*.f64 z (-.f64 b y)))
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy62.357444630355204
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
accuracy0.0
(-.f64 b y)
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy62.15504191944596
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
accuracy0.0
(*.f64 x y)
accuracy40.390645729063735
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
accuracy60.796882671777496
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
accuracy0.0
(-.f64 t a)
accuracy60.796882671777496
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
accuracy61.78993994494788
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
accuracy0.0
(-.f64 t a)
accuracy0.00390625
(*.f64 z (-.f64 t a))
accuracy21.06766812419791
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
accuracy60.796882671777496
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
Samples
29.0ms256×0valid
Compiler

Compiled 398 to 44 computations (88.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 5.0ms (43.8% of total)
ival-sub: 2.0ms (17.5% of total)
ival-div: 2.0ms (17.5% of total)
ival-add: 2.0ms (17.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series24.0ms (1.1%)

Memory
-19.5MiB live, 33.7MiB allocated
Counts
14 → 108
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
(-.f64 t a)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
(-.f64 b y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 y (*.f64 z (-.f64 b y)))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
b
(+ b (* -1 y))
(+ (* b z) (* y (+ 1 (* -1 z))))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 y)
(* y (- (/ b y) 1))
(* y (+ 1 (* -1 z)))
(* y (+ 1 (+ (* -1 z) (/ (* b z) y))))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
(* -1 (* y (+ 1 (* -1 (/ b y)))))
(* -1 (* y (- z 1)))
(* -1 (* y (- (+ z (* -1 (/ (* b z) y))) 1)))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
y
(+ y (* z (- b y)))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(* z (- (+ b (/ y z)) y))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- b y)) (* -1 (/ y z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(* -1 a)
(- t a)
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
t
(* t (+ 1 (* -1 (/ a t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(* -1 (* t (- (/ a t) 1)))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(+ t (* -1 a))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* a (- (/ t a) 1))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(* -1 (* a (+ 1 (* -1 (/ t a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(- b y)
(+ y (* -1 (* y z)))
(+ y (+ (* -1 (* y z)) (* b z)))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* b (+ 1 (* -1 (/ y b))))
(* b (+ z (+ (* -1 (/ (* y z) b)) (/ y b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
(* -1 (* b (- (/ y b) 1)))
(* -1 (* b (+ (* -1 z) (* -1 (/ (+ y (* -1 (* y z))) b)))))
Calls

18 calls:

TimeVariablePointExpression
7.0ms
t
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* z (- t a)) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (* z (- b y)) (- b y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ y (* z (- b y))))
1.0ms
z
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* z (- t a)) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (* z (- b y)) (- b y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ y (* z (- b y))))
1.0ms
z
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* z (- t a)) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (* z (- b y)) (- b y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ y (* z (- b y))))
1.0ms
y
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* z (- t a)) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (* z (- b y)) (- b y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ y (* z (- b y))))
1.0ms
y
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* z (- t a)) (- t a) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (* z (- b y)) (- b y) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ y (* z (- b y))))

simplify2.0ms (0.1%)

Memory
3.4MiB live, 3.4MiB allocated
Algorithm
egg-herbie
Counts
108 → 14
Calls
Call 1
Inputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
b
(+ b (* -1 y))
(+ (* b z) (* y (+ 1 (* -1 z))))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 y)
(* y (- (/ b y) 1))
(* y (+ 1 (* -1 z)))
(* y (+ 1 (+ (* -1 z) (/ (* b z) y))))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
(* -1 (* y (+ 1 (* -1 (/ b y)))))
(* -1 (* y (- z 1)))
(* -1 (* y (- (+ z (* -1 (/ (* b z) y))) 1)))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
y
(+ y (* z (- b y)))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(* z (- (+ b (/ y z)) y))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(* -1 (* z (+ (* -1 (- b y)) (* -1 (/ y z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(* -1 (* a z))
(+ (* -1 (* a z)) (* t z))
(* -1 a)
(- t a)
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* t (+ z (* -1 (/ (* a z) t))))
t
(* t (+ 1 (* -1 (/ a t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(* -1 (* t (+ (* -1 z) (/ (* a z) t))))
(* -1 (* t (- (/ a t) 1)))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(+ t (* -1 a))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* a (+ (* -1 z) (/ (* t z) a)))
(* a (- (/ t a) 1))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(* -1 (* a (+ z (* -1 (/ (* t z) a)))))
(* -1 (* a (+ 1 (* -1 (/ t a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(- b y)
(+ y (* -1 (* y z)))
(+ y (+ (* -1 (* y z)) (* b z)))
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* b (+ 1 (* -1 (/ y b))))
(* b (+ z (+ (* -1 (/ (* y z) b)) (/ y b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
(* -1 (* b (- (/ y b) 1)))
(* -1 (* b (+ (* -1 z) (* -1 (/ (+ y (* -1 (* y z))) b)))))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(* z (- t a))
(*.f64 z (-.f64 t a))
(+ (* x y) (* z (- t a)))
(-.f64 t a)
(* x y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
(/ (* x y) (+ y (* z (- b y))))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
(* x (+ y (/ (* z (- t a)) x)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(*.f64 x y)
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(/ (- t a) b)
(*.f64 z (-.f64 b y))
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(-.f64 b y)
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(+.f64 y (*.f64 z (-.f64 b y)))

rewrite1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Counts
14 → 14
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
(-.f64 t a)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
(-.f64 b y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 y (*.f64 z (-.f64 b y)))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a)))
(*.f64 z (-.f64 t a))
(-.f64 t a)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (+ (* x y) (* z (- t a))) (-.f64 t a))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (+ (* x y) (* z (- t a))) (*.f64 x y))
(*.f64 x y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
(-.f64 b y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
(+.f64 y (*.f64 z (-.f64 b y)))

eval3.0ms (0.1%)

Memory
5.7MiB live, 5.7MiB allocated
Compiler

Compiled 827 to 40 computations (95.2% saved)

prune7.0ms (0.3%)

Memory
11.6MiB live, 11.6MiB allocated
Pruning

12 alts after pruning (2 fresh and 10 done)

PrunedKeptTotal
New24125
Fresh011
Picked055
Done055
Total241236
Accuracy
70.5%
Counts
36 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
30.8%
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
47.7%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
27.9%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
2.7%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
5.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
4.5%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
2.6%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
2.9%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
3.3%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
5.1%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
4.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
Compiler

Compiled 308 to 205 computations (33.4% saved)

simplify1.0ms (0%)

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

Found 6 expressions of interest:

NewMetricScoreProgram
cost-diff0
(-.f64 b y)
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
cost-diff0
(*.f64 z (-.f64 b y))
cost-diff0
#s(approx (* x y) (*.f64 z (-.f64 b y)))
cost-diff0
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
cost-diff0
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
(*.f64 z (-.f64 t a))
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(-.f64 b y)
b
y
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
z
(-.f64 b y)
b
y
(*.f64 z (-.f64 t a))
(-.f64 t a)
t
a
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(-.f64 b y)
b
y

localize33.0ms (1.6%)

Memory
-27.9MiB live, 48.5MiB allocated
Localize:

Found 6 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 b y)
accuracy62.25575021866748
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
accuracy0.02734375
(*.f64 z (-.f64 b y))
accuracy0.9609313074906174
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
accuracy60.44641629460598
#s(approx (* x y) (*.f64 z (-.f64 b y)))
accuracy60.796882671777496
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
Samples
23.0ms256×0valid
Compiler

Compiled 178 to 38 computations (78.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 5.0ms (43.7% of total)
ival-sub: 2.0ms (17.5% of total)
ival-div: 2.0ms (17.5% of total)
ival-add: 2.0ms (17.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.5%)

Memory
19.5MiB live, 19.5MiB allocated
Counts
6 → 82
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(-.f64 b y)
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
b
(+ b (* -1 y))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 y)
(* y (- (/ b y) 1))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
(* -1 (* y (+ 1 (* -1 (/ b y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* -1 (* a z))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(- b y)
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* b (+ 1 (* -1 (/ y b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
(* -1 (* b (- (/ y b) 1)))
Calls

18 calls:

TimeVariablePointExpression
1.0ms
y
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (- b y))
1.0ms
z
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (- b y))
1.0ms
x
@-inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (- b y))
1.0ms
y
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (- b y))
1.0ms
z
@inf
((/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+ (* x y) (* z (- t a))) (* x y) (* z (- b y)) (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (- b y))

simplify1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
egg-herbie
Counts
82 → 6
Calls
Call 1
Inputs
(/ (* z (- t a)) (+ y (* z (- b y))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(* z (- t a))
(+ (* x y) (* z (- t a)))
(* x y)
(/ (* x y) (+ y (* z (- b y))))
(* x (+ (/ y (+ y (* z (- b y)))) (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))
(* x (+ y (/ (* z (- t a)) x)))
(* -1 (* x (+ (* -1 (/ y (+ y (* z (- b y))))) (* -1 (/ (* z (- t a)) (* x (+ y (* z (- b y)))))))))
(* -1 (* x (+ (* -1 y) (* -1 (/ (* z (- t a)) x)))))
(/ (- t a) b)
(- (+ (* y (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* -1 (/ (* y (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* b z))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(- (+ (* y (- (+ (* y (- (/ (* y (* (pow (+ 1 (* -1 z)) 2) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z))))) (* (pow b 2) (pow z 2))) (/ (* (+ 1 (* -1 z)) (- (/ x (* b z)) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (* b z)))) (/ x (* b z))) (/ (* (+ 1 (* -1 z)) (- t a)) (* (pow b 2) z)))) (/ t b)) (/ a b))
(* b z)
(+ (* -1 (* y z)) (* b z))
b
(+ b (* -1 y))
(/ x (+ 1 (* -1 z)))
(- (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (* -1 (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))) (+ (/ x (+ 1 (* -1 z))) (/ (* z (- t a)) (* y (+ 1 (* -1 z)))))) (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))))
(- (+ (/ x (+ 1 (* -1 z))) (+ (/ (* z (- t a)) (* y (+ 1 (* -1 z)))) (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 3) (pow (+ 1 (* -1 z)) 2))))) (+ (/ (* b (* x z)) (* y (pow (+ 1 (* -1 z)) 2))) (/ (* b (* z (- (/ (* z (- t a)) (+ 1 (* -1 z))) (/ (* b (* x z)) (pow (+ 1 (* -1 z)) 2))))) (* (pow y 2) (+ 1 (* -1 z))))))
(* y (+ x (/ (* z (- t a)) y)))
(* -1 (* y z))
(* y (+ (* -1 z) (/ (* b z) y)))
(* -1 y)
(* y (- (/ b y) 1))
(* -1 (/ x (- z 1)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (- z 1))) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(+ (* -1 (/ x (- z 1))) (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow b 2) (* (pow z 2) (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (* y (pow (- z 1) 2)))) (/ (* b (* z (- (/ (* z (- t a)) (- z 1)) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))))) (- z 1))) y)) (/ (* z (- t a)) (- z 1))) (* -1 (/ (* b (* x z)) (pow (- z 1) 2)))) y)))
(* -1 (* y (+ (* -1 x) (* -1 (/ (* z (- t a)) y)))))
(* -1 (* y (+ z (* -1 (/ (* b z) y)))))
(* -1 (* y (+ 1 (* -1 (/ b y)))))
x
(+ x (* z (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* -1 (/ (* z (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) y)) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(+ x (* z (- (+ (* z (- (/ (* z (* (pow (- b y) 2) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y))))) (pow y 2)) (/ (* (- b y) (- (/ t y) (+ (/ a y) (/ (* x (- b y)) y)))) y))) (/ t y)) (+ (/ a y) (/ (* x (- b y)) y)))))
(* z (- b y))
(/ (- t a) (- b y))
(- (+ (/ t (- b y)) (/ (* x y) (* z (- b y)))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (* -1 (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y)))) (+ (/ t (- b y)) (/ (* x y) (* z (- b y))))) (+ (/ a (- b y)) (/ (* y (- t a)) (* z (pow (- b y) 2)))))
(- (+ (/ t (- b y)) (+ (/ (* x y) (* z (- b y))) (/ (* (pow y 2) (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 3) (pow (- b y) 2))))) (+ (/ a (- b y)) (+ (/ (* y (- t a)) (* z (pow (- b y) 2))) (/ (* y (- (/ (* x y) (- b y)) (/ (* y (- t a)) (pow (- b y) 2)))) (* (pow z 2) (- b y))))))
(* z (- (+ t (/ (* x y) z)) a))
(- (+ (* -1 (/ (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (- b y))))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(- (+ (* -1 (/ (- (+ (* -1 (/ (* x y) (- b y))) (* -1 (/ (- (* -1 (/ (* (pow y 2) (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (* z (pow (- b y) 2)))) (* -1 (/ (* y (- (* -1 (/ (* x y) (- b y))) (* -1 (/ (* y (- t a)) (pow (- b y) 2))))) (- b y)))) z))) (* -1 (/ (* y (- t a)) (pow (- b y) 2)))) z)) (/ t (- b y))) (/ a (- b y)))
(* -1 (* z (+ (* -1 (- t a)) (* -1 (/ (* x y) z)))))
(/ (+ (* -1 (* a z)) (* x y)) (+ y (* z (- b y))))
(+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))))
(+ (* -1 (* a z)) (* x y))
(+ (* -1 (* a z)) (+ (* t z) (* x y)))
(/ (* t z) (+ y (* z (- b y))))
(* t (+ (* -1 (/ (* a z) (* t (+ y (* z (- b y)))))) (+ (/ z (+ y (* z (- b y)))) (/ (* x y) (* t (+ y (* z (- b y))))))))
(* t z)
(* t (+ z (+ (* -1 (/ (* a z) t)) (/ (* x y) t))))
(* -1 (* t (+ (* -1 (/ z (+ y (* z (- b y))))) (* -1 (/ (+ (* -1 (/ (* a z) (+ y (* z (- b y))))) (/ (* x y) (+ y (* z (- b y))))) t)))))
(* -1 (* t (+ (* -1 z) (* -1 (/ (+ (* -1 (* a z)) (* x y)) t)))))
(/ (+ (* t z) (* x y)) (+ y (* z (- b y))))
(+ (* t z) (* x y))
(* -1 (/ (* a z) (+ y (* z (- b y)))))
(* a (+ (* -1 (/ z (+ y (* z (- b y))))) (+ (/ (* t z) (* a (+ y (* z (- b y))))) (/ (* x y) (* a (+ y (* z (- b y))))))))
(* -1 (* a z))
(* a (+ (* -1 z) (+ (/ (* t z) a) (/ (* x y) a))))
(* -1 (* a (+ (* -1 (/ (+ (/ (* t z) (+ y (* z (- b y)))) (/ (* x y) (+ y (* z (- b y))))) a)) (/ z (+ y (* z (- b y)))))))
(* -1 (* a (+ z (* -1 (/ (+ (* t z) (* x y)) a)))))
(/ (+ (* x y) (* z (- t a))) (+ y (* -1 (* y z))))
(+ (* -1 (/ (* b (* z (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 2))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (/ (* b (* (pow z 2) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 3)) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(+ (* b (- (* b (- (* -1 (/ (* b (* (pow z 3) (+ (* x y) (* z (- t a))))) (pow (+ y (* -1 (* y z))) 4))) (* -1 (/ (* (pow z 2) (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 3))))) (/ (* z (+ (* x y) (* z (- t a)))) (pow (+ y (* -1 (* y z))) 2)))) (+ (/ (* x y) (+ y (* -1 (* y z)))) (/ (* z (- t a)) (+ y (* -1 (* y z))))))
(- b y)
(/ (+ (* x y) (* z (- t a))) (* b z))
(/ (+ (* -1 (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) (+ (- t a) (/ (* x y) z))) b)
(/ (- (+ (- t a) (+ (/ (* x y) z) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3))))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b)
(/ (- (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* (pow b 3) (pow z 4)))) (+ (- t a) (/ (* x y) z))) (+ (* -1 (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* (pow b 2) (pow z 3)))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2))))) b)
(* b (+ z (* -1 (/ (* y z) b))))
(* b (+ 1 (* -1 (/ y b))))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (* b (pow z 2)))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (* b (pow z 3))) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (/ (+ (* -1 (/ (+ (* x y) (* z (- t a))) z)) (* -1 (/ (- (* -1 (/ (- (/ (* (pow (+ y (* -1 (* y z))) 3) (+ (* x y) (* z (- t a)))) (* b (pow z 4))) (/ (* (pow (+ y (* -1 (* y z))) 2) (+ (* x y) (* z (- t a)))) (pow z 3))) b)) (/ (* (+ y (* -1 (* y z))) (+ (* x y) (* z (- t a)))) (pow z 2))) b))) b))
(* -1 (* b (+ (* -1 z) (/ (* y z) b))))
(* -1 (* b (- (/ y b) 1)))
Outputs
(/ (* z (- t a)) (+ y (* z (- b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+ (/ (* x y) (+ y (* z (- b y)))) (/ (* z (- t a)) (+ y (* z (- b y)))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
(* z (- t a))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(+ (* x y) (* z (- t a)))
(*.f64 z (-.f64 b y))
(* x y)
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(/ (* x y) (+ y (* z (- b y))))
(-.f64 b y)

rewrite0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Counts
6 → 6
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(-.f64 b y)
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a)))
#s(approx (* x y) (*.f64 z (-.f64 b y)))
(*.f64 z (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
(-.f64 b y)

eval1.0ms (0.1%)

Memory
2.3MiB live, 2.3MiB allocated
Compiler

Compiled 377 to 30 computations (92% saved)

prune8.0ms (0.4%)

Memory
-26.6MiB live, 11.6MiB allocated
Pruning

13 alts after pruning (1 fresh and 12 done)

PrunedKeptTotal
New10111
Fresh000
Picked022
Done01010
Total101323
Accuracy
70.5%
Counts
23 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
69.6%
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
30.8%
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
47.7%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
27.9%
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
2.7%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
5.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
4.5%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
4.5%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) #s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))) (*.f64 z (-.f64 t a))))
2.6%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
2.9%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
3.3%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
5.1%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
4.0%
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
Compiler

Compiled 714 to 267 computations (62.6% saved)

regimes38.0ms (1.8%)

Memory
23.1MiB live, 64.3MiB allocated
Counts
13 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) #s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Outputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Calls

8 calls:

6.0ms
z
4.0ms
b
4.0ms
y
4.0ms
(-.f64 t a)
4.0ms
x
Results
AccuracySegmentsBranch
69.6%1x
69.6%1y
69.6%1z
69.6%1t
69.6%1a
69.6%1b
69.6%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
69.6%1(-.f64 t a)
Compiler

Compiled 26 to 57 computations (-119.2% saved)

regimes33.0ms (1.6%)

Memory
-9.7MiB live, 68.2MiB allocated
Counts
11 → 3
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) #s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Outputs
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
Calls

8 calls:

5.0ms
x
5.0ms
(-.f64 t a)
4.0ms
b
4.0ms
t
4.0ms
y
Results
AccuracySegmentsBranch
54.2%3y
47.7%1(-.f64 t a)
47.7%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
51.8%3z
47.7%1a
47.7%1b
51.5%3x
47.7%1t
Compiler

Compiled 26 to 57 computations (-119.2% saved)

regimes35.0ms (1.6%)

Memory
-10.9MiB live, 66.9MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) #s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
Outputs
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
Calls

8 calls:

5.0ms
b
4.0ms
y
4.0ms
x
3.0ms
(-.f64 t a)
3.0ms
t
Results
AccuracySegmentsBranch
27.9%1t
27.9%1a
27.9%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
27.9%1(-.f64 t a)
27.9%1b
27.9%1x
27.9%1z
27.9%1y
Compiler

Compiled 26 to 57 computations (-119.2% saved)

regimes30.0ms (1.4%)

Memory
34.5MiB live, 71.8MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (*.f64 z (-.f64 b y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) #s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (+.f64 #s(approx (* x y) (*.f64 z (-.f64 b y))) (*.f64 z (-.f64 t a))))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
Calls

8 calls:

6.0ms
z
3.0ms
b
3.0ms
y
3.0ms
a
3.0ms
t
Results
AccuracySegmentsBranch
5.1%1x
5.1%1a
5.1%1y
5.1%1z
5.1%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
5.1%1(-.f64 t a)
5.1%1b
5.1%1t
Compiler

Compiled 26 to 57 computations (-119.2% saved)

regimes21.0ms (1%)

Memory
1.7MiB live, 39.5MiB allocated
Counts
3 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
Calls

8 calls:

8.0ms
b
2.0ms
y
2.0ms
(-.f64 t a)
2.0ms
x
2.0ms
a
Results
AccuracySegmentsBranch
4.0%1y
4.0%1z
4.0%1a
4.0%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
4.0%1x
4.0%1(-.f64 t a)
4.0%1b
4.0%1t
Compiler

Compiled 26 to 57 computations (-119.2% saved)

regimes19.0ms (0.9%)

Memory
-4.0MiB live, 34.4MiB allocated
Accuracy

Total -1.0b remaining (-1.7%)

Threshold costs -1b (-1.7%)

Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) (-.f64 b y))
Outputs
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
Calls

8 calls:

8.0ms
a
1.0ms
b
1.0ms
t
1.0ms
(-.f64 t a)
1.0ms
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
Results
AccuracySegmentsBranch
3.3%1(-.f64 t a)
3.3%1x
3.3%1(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
3.3%1z
3.3%1t
3.3%1a
3.3%1b
3.3%1y
Compiler

Compiled 26 to 57 computations (-119.2% saved)

bsearch41.0ms (2%)

Memory
-21.5MiB live, 63.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
18.0ms
1.0203324403986014e+37
8.453294908796416e+40
20.0ms
-1.738242320049943e-13
-7.81950724748186e-18
Samples
28.0ms256×0valid
Compiler

Compiled 724 to 583 computations (19.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 5.0ms (43.6% of total)
ival-sub: 2.0ms (17.5% of total)
ival-div: 2.0ms (17.5% of total)
ival-add: 2.0ms (17.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

simplify5.0ms (0.2%)

Memory
12.9MiB live, 12.9MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(if (<=.f64 y #s(literal -1663791412799551/158456325028528675187087900672 binary64)) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y)))) (if (<=.f64 y #s(literal 1699999999999999942840301067273997647872 binary64)) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y)))) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))
Outputs
(/.f64 (+.f64 (*.f64 x y) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y))))
(if (<=.f64 y #s(literal -1663791412799551/158456325028528675187087900672 binary64)) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y)))) (if (<=.f64 y #s(literal 1699999999999999942840301067273997647872 binary64)) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))) (+.f64 y (*.f64 z (-.f64 b y)))) (/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))))
(/.f64 #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)) (+.f64 y (*.f64 z (-.f64 b y))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 z (-.f64 t a))))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (*.f64 x y)))
#s(approx (/ (+ (* x y) (* z (- t a))) (+ y (* z (- b y)))) #s(approx (+ (* x y) (* z (- t a))) (-.f64 t a)))

soundness1.0ms (0.1%)

Memory
3.2MiB live, 3.2MiB allocated
Stop Event
fuel
Compiler

Compiled 206 to 36 computations (82.5% saved)

preprocess43.0ms (2.1%)

Memory
2.8MiB live, 78.1MiB allocated
Compiler

Compiled 496 to 134 computations (73% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...