Numeric.Signal.Multichannel:$cput from hsignal-0.2.7.1

Time bar (total: 1.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze66.0ms (5.1%)

Memory
2.3MiB live, 118.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
50%49.9%49.9%0.2%0%0%0%4
50%49.9%49.9%0.2%0%0%0%5
50%49.9%49.9%0.2%0%0%0%6
50%49.9%49.9%0.2%0%0%0%7
75%74.9%25%0.2%0%0%0%8
75%74.9%25%0.2%0%0%0%9
75%74.9%25%0.2%0%0%0%10
75%74.9%25%0.2%0%0%0%11
87.5%87.3%12.5%0.2%0%0%0%12
Compiler

Compiled 11 to 10 computations (9.1% saved)

sample728.0ms (56.1%)

Memory
9.7MiB live, 1 314.8MiB allocated
Samples
435.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 210.0ms
ival-sub: 85.0ms (40.6% of total)
ival-div: 58.0ms (27.7% of total)
ival-mult: 57.0ms (27.2% of total)
ival-true: 7.0ms (3.3% of total)
ival-assert: 3.0ms (1.4% of total)
Bogosity

explain70.0ms (5.4%)

Memory
-5.6MiB live, 154.0MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
60-0-(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
00-0-y
00-0-t
00-0-(-.f64 x y)
00-0-z
00-0-(/.f64 (-.f64 x y) (-.f64 z y))
00-0-x
00-0-(-.f64 z y)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
*.f64(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)n*o50
*.f64(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)n*u10
Confusion
Predicted +Predicted -
+60
-0250
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+600
-00250
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0250
16
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
29.0ms512×0valid
Compiler

Compiled 91 to 36 computations (60.4% saved)

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

preprocess4.0ms (0.3%)

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

Compiled 9 to 8 computations (11.1% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune0.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Compiler

Compiled 9 to 8 computations (11.1% 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 y)
cost-diff0
(-.f64 x y)
cost-diff0
(/.f64 (-.f64 x y) (-.f64 z y))
cost-diff0
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Calls
Call 1
Inputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
x
y
(-.f64 z y)
z
t
Outputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
x
y
(-.f64 z y)
z
t

localize22.0ms (1.7%)

Memory
-26.1MiB live, 51.8MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 z y)
accuracy0.0
(-.f64 x y)
accuracy0.02734375
(/.f64 (-.f64 x y) (-.f64 z y))
accuracy1.5506937821400648
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Samples
16.0ms256×0valid
Compiler

Compiled 54 to 18 computations (66.7% saved)

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

series15.0ms (1.1%)

Memory
30.1MiB live, 30.1MiB allocated
Counts
4 → 70
Calls
Call 1
Inputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)
Outputs
(* -1 (/ (* t y) (- z y)))
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(* -1 (/ y (- z y)))
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(* -1 y)
(- x y)
(/ (* t x) (- z y))
(* x (+ (* -1 (/ (* t y) (* x (- z y)))) (/ t (- z y))))
(/ x (- z y))
(* x (+ (* -1 (/ y (* x (- z y)))) (/ 1 (- z y))))
x
(* x (+ 1 (* -1 (/ y x))))
(* -1 (* x (+ (* -1 (/ t (- z y))) (/ (* t y) (* x (- z y))))))
(* -1 (* x (- (/ y (* x (- z y))) (/ 1 (- z y)))))
(* -1 (* x (- (/ y x) 1)))
(/ (* t x) z)
(+ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (* y (- (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (pow z 2)) (* -1 (/ (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2)))) z))))) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(/ x z)
(+ (* -1 (* y (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 4))) (/ 1 (pow z 3))))) (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ x (* -1 y))
z
(+ z (* -1 y))
t
(- (+ t (* -1 (/ (* t x) y))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* (pow z 2) (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 3)))) (+ (* -1 (/ (* t z) y)) (* -1 (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))))
1
(- (+ 1 (* -1 (/ x y))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* (pow z 2) (- (* -1 x) (* -1 z))) (pow y 3)))) (+ (* -1 (/ z y)) (* -1 (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))))
(* y (- (/ x y) 1))
(* y (- (/ z y) 1))
(+ t (* -1 (/ (- (* t x) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* t x) (/ (* z (- (* t x) (* t z))) y)) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow z 2) (- (* t x) (* t z))) y)) (* z (- (* t x) (* t z)))) y)) (* t x)) (* t z)) y)))
(+ 1 (* -1 (/ (- x z) y)))
(+ 1 (* -1 (/ (- (+ x (/ (* z (- x z)) y)) z) y)))
(+ 1 (* -1 (/ (- (+ x (* -1 (/ (- (* -1 (/ (* (pow z 2) (- x z)) y)) (* z (- x z))) y))) z) y)))
(* -1 (* y (+ 1 (* -1 (/ x y)))))
(* -1 (* y (+ 1 (* -1 (/ z y)))))
(* -1 (/ (* t (- x y)) y))
(+ (* -1 (/ (* t (* z (- x y))) (pow y 2))) (* -1 (/ (* t (- x y)) y)))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 3))) (/ (* t (- x y)) (pow y 2)))))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 4))) (/ (* t (- x y)) (pow y 3)))) (/ (* t (- x y)) (pow y 2)))))
(* -1 (/ (- x y) y))
(+ (* -1 (/ (- x y) y)) (* z (- (/ 1 y) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (/ 1 y) (/ (* z (- (/ 1 y) (/ x (pow y 2)))) y)) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (* z (- (/ (* z (- (/ 1 y) (/ x (pow y 2)))) (pow y 2)) (* -1 (/ (- (/ 1 y) (/ x (pow y 2))) y)))) (/ 1 y)) (/ x (pow y 2)))))
(- z y)
(/ (* t (- x y)) z)
(/ (+ (* t (- x y)) (/ (* t (* y (- x y))) z)) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 2) (- x y))) (pow z 2))) (* -1 (/ (* t (* y (- x y))) z))) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 3) (- x y))) (pow z 3))) (+ (* -1 (/ (* t (* y (- x y))) z)) (* -1 (/ (* t (* (pow y 2) (- x y))) (pow z 2))))) z)
(/ (- x y) z)
(/ (- (+ x (/ (* y (- x y)) z)) y) z)
(/ (- (+ x (/ (* (pow y 2) (- x y)) (pow z 2))) (+ y (* -1 (/ (* y (- x y)) z)))) z)
(/ (- (+ x (/ (* (pow y 3) (- x y)) (pow z 3))) (+ y (+ (* -1 (/ (* y (- x y)) z)) (* -1 (/ (* (pow y 2) (- x y)) (pow z 2)))))) z)
(* z (+ 1 (* -1 (/ y z))))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (* t (* y (- x y))) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* t (* y (- x y))) (/ (* t (* (pow y 2) (- x y))) z)) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* t (* (pow y 2) (- x y)))) (* -1 (/ (* t (* (pow y 3) (- x y))) z))) z)) (* t (* y (- x y)))) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (* y (- x y)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* y (- x y)) (/ (* (pow y 2) (- x y)) z)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* (pow y 2) (- x y))) (* -1 (/ (* (pow y 3) (- x y)) z))) z)) (* y (- x y))) z))) z))
(* -1 (* z (- (/ y z) 1)))
(/ (* t (- x y)) (- z y))
Calls

12 calls:

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

simplify3.0ms (0.2%)

Memory
-36.1MiB live, 2.6MiB allocated
Algorithm
egg-herbie
Counts
70 → 4
Calls
Call 1
Inputs
(* -1 (/ (* t y) (- z y)))
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(* -1 (/ y (- z y)))
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(* -1 y)
(- x y)
(/ (* t x) (- z y))
(* x (+ (* -1 (/ (* t y) (* x (- z y)))) (/ t (- z y))))
(/ x (- z y))
(* x (+ (* -1 (/ y (* x (- z y)))) (/ 1 (- z y))))
x
(* x (+ 1 (* -1 (/ y x))))
(* -1 (* x (+ (* -1 (/ t (- z y))) (/ (* t y) (* x (- z y))))))
(* -1 (* x (- (/ y (* x (- z y))) (/ 1 (- z y)))))
(* -1 (* x (- (/ y x) 1)))
(/ (* t x) z)
(+ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (* y (- (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (pow z 2)) (* -1 (/ (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2)))) z))))) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(/ x z)
(+ (* -1 (* y (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 4))) (/ 1 (pow z 3))))) (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ x (* -1 y))
z
(+ z (* -1 y))
t
(- (+ t (* -1 (/ (* t x) y))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* (pow z 2) (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 3)))) (+ (* -1 (/ (* t z) y)) (* -1 (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))))
1
(- (+ 1 (* -1 (/ x y))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* (pow z 2) (- (* -1 x) (* -1 z))) (pow y 3)))) (+ (* -1 (/ z y)) (* -1 (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))))
(* y (- (/ x y) 1))
(* y (- (/ z y) 1))
(+ t (* -1 (/ (- (* t x) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* t x) (/ (* z (- (* t x) (* t z))) y)) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow z 2) (- (* t x) (* t z))) y)) (* z (- (* t x) (* t z)))) y)) (* t x)) (* t z)) y)))
(+ 1 (* -1 (/ (- x z) y)))
(+ 1 (* -1 (/ (- (+ x (/ (* z (- x z)) y)) z) y)))
(+ 1 (* -1 (/ (- (+ x (* -1 (/ (- (* -1 (/ (* (pow z 2) (- x z)) y)) (* z (- x z))) y))) z) y)))
(* -1 (* y (+ 1 (* -1 (/ x y)))))
(* -1 (* y (+ 1 (* -1 (/ z y)))))
(* -1 (/ (* t (- x y)) y))
(+ (* -1 (/ (* t (* z (- x y))) (pow y 2))) (* -1 (/ (* t (- x y)) y)))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 3))) (/ (* t (- x y)) (pow y 2)))))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 4))) (/ (* t (- x y)) (pow y 3)))) (/ (* t (- x y)) (pow y 2)))))
(* -1 (/ (- x y) y))
(+ (* -1 (/ (- x y) y)) (* z (- (/ 1 y) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (/ 1 y) (/ (* z (- (/ 1 y) (/ x (pow y 2)))) y)) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (* z (- (/ (* z (- (/ 1 y) (/ x (pow y 2)))) (pow y 2)) (* -1 (/ (- (/ 1 y) (/ x (pow y 2))) y)))) (/ 1 y)) (/ x (pow y 2)))))
(- z y)
(/ (* t (- x y)) z)
(/ (+ (* t (- x y)) (/ (* t (* y (- x y))) z)) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 2) (- x y))) (pow z 2))) (* -1 (/ (* t (* y (- x y))) z))) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 3) (- x y))) (pow z 3))) (+ (* -1 (/ (* t (* y (- x y))) z)) (* -1 (/ (* t (* (pow y 2) (- x y))) (pow z 2))))) z)
(/ (- x y) z)
(/ (- (+ x (/ (* y (- x y)) z)) y) z)
(/ (- (+ x (/ (* (pow y 2) (- x y)) (pow z 2))) (+ y (* -1 (/ (* y (- x y)) z)))) z)
(/ (- (+ x (/ (* (pow y 3) (- x y)) (pow z 3))) (+ y (+ (* -1 (/ (* y (- x y)) z)) (* -1 (/ (* (pow y 2) (- x y)) (pow z 2)))))) z)
(* z (+ 1 (* -1 (/ y z))))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (* t (* y (- x y))) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* t (* y (- x y))) (/ (* t (* (pow y 2) (- x y))) z)) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* t (* (pow y 2) (- x y)))) (* -1 (/ (* t (* (pow y 3) (- x y))) z))) z)) (* t (* y (- x y)))) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (* y (- x y)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* y (- x y)) (/ (* (pow y 2) (- x y)) z)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* (pow y 2) (- x y))) (* -1 (/ (* (pow y 3) (- x y)) z))) z)) (* y (- x y))) z))) z))
(* -1 (* z (- (/ y z) 1)))
(/ (* t (- x y)) (- z y))
Outputs
(* -1 (/ (* t y) (- z y)))
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(/.f64 (-.f64 x y) (-.f64 z y))
(* -1 (/ y (- z y)))
(-.f64 x y)
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(-.f64 z y)

rewrite0.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Counts
4 → 4
Calls
Call 1
Inputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)
Outputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)

eval1.0ms (0.1%)

Memory
2.1MiB live, 2.1MiB allocated
Compiler

Compiled 98 to 18 computations (81.6% saved)

prune2.0ms (0.1%)

Memory
3.9MiB live, 3.9MiB allocated
Pruning

4 alts after pruning (3 fresh and 1 done)

PrunedKeptTotal
New538
Fresh000
Picked011
Done000
Total549
Accuracy
97.6%
Counts
9 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
4.4%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
8.8%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
8.7%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
Compiler

Compiled 52 to 40 computations (23.1% saved)

simplify1.0ms (0%)

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

Found 10 expressions of interest:

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

localize26.0ms (2%)

Memory
10.4MiB live, 52.2MiB allocated
Localize:

Found 10 expressions of interest:

NewMetricScoreProgram
accuracy0.0
(-.f64 z y)
accuracy1.5506937821400648
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
accuracy62.096020414840396
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
accuracy0.0
(-.f64 x y)
accuracy1.5506937821400648
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
accuracy0.0
(-.f64 z y)
accuracy0.0
(-.f64 x y)
accuracy0.02734375
(/.f64 (-.f64 x y) (-.f64 z y))
accuracy58.455830162978266
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
Samples
19.0ms256×0valid
Compiler

Compiled 164 to 26 computations (84.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sub: 3.0ms (50.2% of total)
ival-div: 2.0ms (33.5% of total)
ival-mult: 2.0ms (33.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series6.0ms (0.5%)

Memory
14.5MiB live, 14.5MiB allocated
Counts
8 → 70
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
Outputs
(* -1 (/ (* t y) (- z y)))
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(* -1 (/ y (- z y)))
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(* -1 y)
(- x y)
(/ (* t x) (- z y))
(* x (+ (* -1 (/ (* t y) (* x (- z y)))) (/ t (- z y))))
(/ x (- z y))
(* x (+ (* -1 (/ y (* x (- z y)))) (/ 1 (- z y))))
x
(* x (+ 1 (* -1 (/ y x))))
(* -1 (* x (+ (* -1 (/ t (- z y))) (/ (* t y) (* x (- z y))))))
(* -1 (* x (- (/ y (* x (- z y))) (/ 1 (- z y)))))
(* -1 (* x (- (/ y x) 1)))
(/ (* t x) z)
(+ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (* y (- (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (pow z 2)) (* -1 (/ (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2)))) z))))) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(/ x z)
(+ (* -1 (* y (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 4))) (/ 1 (pow z 3))))) (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ x (* -1 y))
z
(+ z (* -1 y))
t
(- (+ t (* -1 (/ (* t x) y))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* (pow z 2) (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 3)))) (+ (* -1 (/ (* t z) y)) (* -1 (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))))
1
(- (+ 1 (* -1 (/ x y))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* (pow z 2) (- (* -1 x) (* -1 z))) (pow y 3)))) (+ (* -1 (/ z y)) (* -1 (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))))
(* y (- (/ x y) 1))
(* y (- (/ z y) 1))
(+ t (* -1 (/ (- (* t x) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* t x) (/ (* z (- (* t x) (* t z))) y)) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow z 2) (- (* t x) (* t z))) y)) (* z (- (* t x) (* t z)))) y)) (* t x)) (* t z)) y)))
(+ 1 (* -1 (/ (- x z) y)))
(+ 1 (* -1 (/ (- (+ x (/ (* z (- x z)) y)) z) y)))
(+ 1 (* -1 (/ (- (+ x (* -1 (/ (- (* -1 (/ (* (pow z 2) (- x z)) y)) (* z (- x z))) y))) z) y)))
(* -1 (* y (+ 1 (* -1 (/ x y)))))
(* -1 (* y (+ 1 (* -1 (/ z y)))))
(* -1 (/ (* t (- x y)) y))
(+ (* -1 (/ (* t (* z (- x y))) (pow y 2))) (* -1 (/ (* t (- x y)) y)))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 3))) (/ (* t (- x y)) (pow y 2)))))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 4))) (/ (* t (- x y)) (pow y 3)))) (/ (* t (- x y)) (pow y 2)))))
(* -1 (/ (- x y) y))
(+ (* -1 (/ (- x y) y)) (* z (- (/ 1 y) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (/ 1 y) (/ (* z (- (/ 1 y) (/ x (pow y 2)))) y)) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (* z (- (/ (* z (- (/ 1 y) (/ x (pow y 2)))) (pow y 2)) (* -1 (/ (- (/ 1 y) (/ x (pow y 2))) y)))) (/ 1 y)) (/ x (pow y 2)))))
(- z y)
(/ (* t (- x y)) z)
(/ (+ (* t (- x y)) (/ (* t (* y (- x y))) z)) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 2) (- x y))) (pow z 2))) (* -1 (/ (* t (* y (- x y))) z))) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 3) (- x y))) (pow z 3))) (+ (* -1 (/ (* t (* y (- x y))) z)) (* -1 (/ (* t (* (pow y 2) (- x y))) (pow z 2))))) z)
(/ (- x y) z)
(/ (- (+ x (/ (* y (- x y)) z)) y) z)
(/ (- (+ x (/ (* (pow y 2) (- x y)) (pow z 2))) (+ y (* -1 (/ (* y (- x y)) z)))) z)
(/ (- (+ x (/ (* (pow y 3) (- x y)) (pow z 3))) (+ y (+ (* -1 (/ (* y (- x y)) z)) (* -1 (/ (* (pow y 2) (- x y)) (pow z 2)))))) z)
(* z (+ 1 (* -1 (/ y z))))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (* t (* y (- x y))) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* t (* y (- x y))) (/ (* t (* (pow y 2) (- x y))) z)) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* t (* (pow y 2) (- x y)))) (* -1 (/ (* t (* (pow y 3) (- x y))) z))) z)) (* t (* y (- x y)))) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (* y (- x y)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* y (- x y)) (/ (* (pow y 2) (- x y)) z)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* (pow y 2) (- x y))) (* -1 (/ (* (pow y 3) (- x y)) z))) z)) (* y (- x y))) z))) z))
(* -1 (* z (- (/ y z) 1)))
(/ (* t (- x y)) (- z y))
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
x
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
t
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
0.0ms
x
@0
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
0.0ms
t
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))

simplify1.0ms (0.1%)

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

rewrite0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Counts
8 → 8
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
Outputs
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(/.f64 (-.f64 x y) (-.f64 z y))
(-.f64 x y)
(-.f64 z y)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
#s(approx (/ (- x y) (- z y)) (-.f64 z y))

eval3.0ms (0.2%)

Memory
-34.3MiB live, 4.4MiB allocated
Compiler

Compiled 345 to 30 computations (91.3% saved)

prune4.0ms (0.3%)

Memory
7.9MiB live, 7.9MiB allocated
Pruning

8 alts after pruning (4 fresh and 4 done)

PrunedKeptTotal
New13417
Fresh000
Picked033
Done011
Total13821
Accuracy
99.9%
Counts
21 → 8
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
4.4%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
8.8%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
12.7%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
8.7%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
82.2%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
2.6%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
3.3%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
Compiler

Compiled 152 to 90 computations (40.8% saved)

simplify1.0ms (0.1%)

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

Found 14 expressions of interest:

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

localize32.0ms (2.4%)

Memory
17.3MiB live, 56.0MiB allocated
Localize:

Found 14 expressions of interest:

NewMetricScoreProgram
accuracy1.5506937821400648
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)))
accuracy61.90408204549606
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
accuracy1.5506937821400648
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
accuracy58.455830162978266
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
accuracy61.90408204549606
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
accuracy0.0
(-.f64 z y)
accuracy58.455830162978266
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
accuracy62.096020414840396
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
accuracy0.0
(-.f64 x y)
accuracy58.455830162978266
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
Samples
19.0ms256×0valid
Compiler

Compiled 406 to 30 computations (92.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sub: 3.0ms (50.5% of total)
ival-div: 2.0ms (33.7% of total)
ival-mult: 2.0ms (33.7% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series11.0ms (0.8%)

Memory
-22.9MiB live, 14.6MiB allocated
Counts
12 → 70
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(-.f64 x y)
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
(-.f64 z y)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)))
Outputs
(* -1 (/ (* t y) (- z y)))
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(* -1 (/ y (- z y)))
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(* -1 y)
(- x y)
(/ (* t x) (- z y))
(* x (+ (* -1 (/ (* t y) (* x (- z y)))) (/ t (- z y))))
(/ x (- z y))
(* x (+ (* -1 (/ y (* x (- z y)))) (/ 1 (- z y))))
x
(* x (+ 1 (* -1 (/ y x))))
(* -1 (* x (+ (* -1 (/ t (- z y))) (/ (* t y) (* x (- z y))))))
(* -1 (* x (- (/ y (* x (- z y))) (/ 1 (- z y)))))
(* -1 (* x (- (/ y x) 1)))
(/ (* t x) z)
(+ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (* y (- (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (pow z 2)) (* -1 (/ (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2)))) z))))) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(/ x z)
(+ (* -1 (* y (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 4))) (/ 1 (pow z 3))))) (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ x (* -1 y))
z
(+ z (* -1 y))
t
(- (+ t (* -1 (/ (* t x) y))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* (pow z 2) (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 3)))) (+ (* -1 (/ (* t z) y)) (* -1 (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))))
1
(- (+ 1 (* -1 (/ x y))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* (pow z 2) (- (* -1 x) (* -1 z))) (pow y 3)))) (+ (* -1 (/ z y)) (* -1 (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))))
(* y (- (/ x y) 1))
(* y (- (/ z y) 1))
(+ t (* -1 (/ (- (* t x) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* t x) (/ (* z (- (* t x) (* t z))) y)) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow z 2) (- (* t x) (* t z))) y)) (* z (- (* t x) (* t z)))) y)) (* t x)) (* t z)) y)))
(+ 1 (* -1 (/ (- x z) y)))
(+ 1 (* -1 (/ (- (+ x (/ (* z (- x z)) y)) z) y)))
(+ 1 (* -1 (/ (- (+ x (* -1 (/ (- (* -1 (/ (* (pow z 2) (- x z)) y)) (* z (- x z))) y))) z) y)))
(* -1 (* y (+ 1 (* -1 (/ x y)))))
(* -1 (* y (+ 1 (* -1 (/ z y)))))
(* -1 (/ (* t (- x y)) y))
(+ (* -1 (/ (* t (* z (- x y))) (pow y 2))) (* -1 (/ (* t (- x y)) y)))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 3))) (/ (* t (- x y)) (pow y 2)))))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 4))) (/ (* t (- x y)) (pow y 3)))) (/ (* t (- x y)) (pow y 2)))))
(* -1 (/ (- x y) y))
(+ (* -1 (/ (- x y) y)) (* z (- (/ 1 y) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (/ 1 y) (/ (* z (- (/ 1 y) (/ x (pow y 2)))) y)) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (* z (- (/ (* z (- (/ 1 y) (/ x (pow y 2)))) (pow y 2)) (* -1 (/ (- (/ 1 y) (/ x (pow y 2))) y)))) (/ 1 y)) (/ x (pow y 2)))))
(- z y)
(/ (* t (- x y)) z)
(/ (+ (* t (- x y)) (/ (* t (* y (- x y))) z)) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 2) (- x y))) (pow z 2))) (* -1 (/ (* t (* y (- x y))) z))) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 3) (- x y))) (pow z 3))) (+ (* -1 (/ (* t (* y (- x y))) z)) (* -1 (/ (* t (* (pow y 2) (- x y))) (pow z 2))))) z)
(/ (- x y) z)
(/ (- (+ x (/ (* y (- x y)) z)) y) z)
(/ (- (+ x (/ (* (pow y 2) (- x y)) (pow z 2))) (+ y (* -1 (/ (* y (- x y)) z)))) z)
(/ (- (+ x (/ (* (pow y 3) (- x y)) (pow z 3))) (+ y (+ (* -1 (/ (* y (- x y)) z)) (* -1 (/ (* (pow y 2) (- x y)) (pow z 2)))))) z)
(* z (+ 1 (* -1 (/ y z))))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (* t (* y (- x y))) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* t (* y (- x y))) (/ (* t (* (pow y 2) (- x y))) z)) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* t (* (pow y 2) (- x y)))) (* -1 (/ (* t (* (pow y 3) (- x y))) z))) z)) (* t (* y (- x y)))) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (* y (- x y)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* y (- x y)) (/ (* (pow y 2) (- x y)) z)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* (pow y 2) (- x y))) (* -1 (/ (* (pow y 3) (- x y)) z))) z)) (* y (- x y))) z))) z))
(* -1 (* z (- (/ y z) 1)))
(/ (* t (- x y)) (- z y))
Calls

12 calls:

TimeVariablePointExpression
4.0ms
t
@0
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
x
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
x
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
t
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))
1.0ms
y
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- z y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)))

simplify1.0ms (0.1%)

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

rewrite1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Counts
12 → 12
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(-.f64 x y)
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
(-.f64 z y)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)))
Outputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
(-.f64 x y)
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
#s(approx (/ (- x y) (- z y)) (-.f64 z y))
(-.f64 z y)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)))

eval4.0ms (0.3%)

Memory
9.1MiB live, 9.1MiB allocated
Compiler

Compiled 1 439 to 77 computations (94.6% saved)

prune8.0ms (0.6%)

Memory
16.8MiB live, 16.8MiB allocated
Pruning

10 alts after pruning (2 fresh and 8 done)

PrunedKeptTotal
New39241
Fresh000
Picked044
Done044
Total391049
Accuracy
99.9%
Counts
49 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
4.4%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
8.8%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
12.7%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
13.4%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
8.6%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
8.7%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
82.2%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
2.6%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
3.3%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
Compiler

Compiled 220 to 119 computations (45.9% saved)

simplify1.0ms (0.1%)

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

Found 8 expressions of interest:

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

localize36.0ms (2.7%)

Memory
-32.9MiB live, 48.6MiB allocated
Localize:

Found 8 expressions of interest:

NewMetricScoreProgram
accuracy58.455830162978266
#s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)))
accuracy61.90408204549606
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))
accuracy41.96104749556765
#s(approx (- x y) (-.f64 z y))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y)))
accuracy61.65848902310639
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)))
accuracy61.90408204549606
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))
Samples
23.0ms256×0valid
Compiler

Compiled 402 to 32 computations (92% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-sub: 3.0ms (48.4% of total)
ival-div: 2.0ms (32.3% of total)
ival-mult: 2.0ms (32.3% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

series7.0ms (0.6%)

Memory
13.7MiB live, 13.7MiB allocated
Counts
12 → 63
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y)))
#s(approx (- x y) (-.f64 z y))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
#s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
Outputs
(* -1 (/ (* t y) (- z y)))
(+ (* -1 (/ (* t y) (- z y))) (/ (* t x) (- z y)))
(* -1 (/ y (- z y)))
(+ (* -1 (/ y (- z y))) (/ x (- z y)))
(* -1 y)
(- x y)
(/ (* t x) (- z y))
(* x (+ (* -1 (/ (* t y) (* x (- z y)))) (/ t (- z y))))
(/ x (- z y))
(* x (+ (* -1 (/ y (* x (- z y)))) (/ 1 (- z y))))
x
(* x (+ 1 (* -1 (/ y x))))
(* -1 (* x (+ (* -1 (/ t (- z y))) (/ (* t y) (* x (- z y))))))
(* -1 (* x (- (/ y (* x (- z y))) (/ 1 (- z y)))))
(* -1 (* x (- (/ y x) 1)))
(/ (* t x) z)
(+ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) z)) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(+ (* y (- (+ (* -1 (/ t z)) (* y (- (/ (* y (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2))))) (pow z 2)) (* -1 (/ (- (* -1 (/ t z)) (* -1 (/ (* t x) (pow z 2)))) z))))) (* -1 (/ (* t x) (pow z 2))))) (/ (* t x) z))
(/ x z)
(+ (* -1 (* y (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ (* y (- (* y (- (* -1 (* y (+ (* -1 (/ x (pow z 4))) (/ 1 (pow z 3))))) (+ (* -1 (/ x (pow z 3))) (/ 1 (pow z 2))))) (+ (* -1 (/ x (pow z 2))) (/ 1 z)))) (/ x z))
(+ x (* -1 y))
t
(- (+ t (* -1 (/ (* t x) y))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))) (* -1 (/ (* t z) y)))
(- (+ t (+ (* -1 (/ (* t x) y)) (/ (* (pow z 2) (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 3)))) (+ (* -1 (/ (* t z) y)) (* -1 (/ (* z (- (* -1 (* t x)) (* -1 (* t z)))) (pow y 2)))))
1
(- (+ 1 (* -1 (/ x y))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))) (* -1 (/ z y)))
(- (+ 1 (+ (* -1 (/ x y)) (/ (* (pow z 2) (- (* -1 x) (* -1 z))) (pow y 3)))) (+ (* -1 (/ z y)) (* -1 (/ (* z (- (* -1 x) (* -1 z))) (pow y 2)))))
(* y (- (/ x y) 1))
(+ t (* -1 (/ (- (* t x) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* t x) (/ (* z (- (* t x) (* t z))) y)) (* t z)) y)))
(+ t (* -1 (/ (- (+ (* -1 (/ (- (* -1 (/ (* (pow z 2) (- (* t x) (* t z))) y)) (* z (- (* t x) (* t z)))) y)) (* t x)) (* t z)) y)))
(+ 1 (* -1 (/ (- x z) y)))
(+ 1 (* -1 (/ (- (+ x (/ (* z (- x z)) y)) z) y)))
(+ 1 (* -1 (/ (- (+ x (* -1 (/ (- (* -1 (/ (* (pow z 2) (- x z)) y)) (* z (- x z))) y))) z) y)))
(* -1 (* y (+ 1 (* -1 (/ x y)))))
(* -1 (/ (* t (- x y)) y))
(+ (* -1 (/ (* t (* z (- x y))) (pow y 2))) (* -1 (/ (* t (- x y)) y)))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 3))) (/ (* t (- x y)) (pow y 2)))))
(+ (* -1 (/ (* t (- x y)) y)) (* z (- (* z (- (* -1 (/ (* t (* z (- x y))) (pow y 4))) (/ (* t (- x y)) (pow y 3)))) (/ (* t (- x y)) (pow y 2)))))
(* -1 (/ (- x y) y))
(+ (* -1 (/ (- x y) y)) (* z (- (/ 1 y) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (/ 1 y) (/ (* z (- (/ 1 y) (/ x (pow y 2)))) y)) (/ x (pow y 2)))))
(+ (* -1 (/ (- x y) y)) (* z (- (+ (* z (- (/ (* z (- (/ 1 y) (/ x (pow y 2)))) (pow y 2)) (* -1 (/ (- (/ 1 y) (/ x (pow y 2))) y)))) (/ 1 y)) (/ x (pow y 2)))))
(/ (* t (- x y)) z)
(/ (+ (* t (- x y)) (/ (* t (* y (- x y))) z)) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 2) (- x y))) (pow z 2))) (* -1 (/ (* t (* y (- x y))) z))) z)
(/ (- (+ (* t (- x y)) (/ (* t (* (pow y 3) (- x y))) (pow z 3))) (+ (* -1 (/ (* t (* y (- x y))) z)) (* -1 (/ (* t (* (pow y 2) (- x y))) (pow z 2))))) z)
(/ (- x y) z)
(/ (- (+ x (/ (* y (- x y)) z)) y) z)
(/ (- (+ x (/ (* (pow y 2) (- x y)) (pow z 2))) (+ y (* -1 (/ (* y (- x y)) z)))) z)
(/ (- (+ x (/ (* (pow y 3) (- x y)) (pow z 3))) (+ y (+ (* -1 (/ (* y (- x y)) z)) (* -1 (/ (* (pow y 2) (- x y)) (pow z 2)))))) z)
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (* t (* y (- x y))) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* t (* y (- x y))) (/ (* t (* (pow y 2) (- x y))) z)) z))) z))
(* -1 (/ (+ (* -1 (* t (- x y))) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* t (* (pow y 2) (- x y)))) (* -1 (/ (* t (* (pow y 3) (- x y))) z))) z)) (* t (* y (- x y)))) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (* y (- x y)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* y (- x y)) (/ (* (pow y 2) (- x y)) z)) z))) z))
(* -1 (/ (+ (* -1 (- x y)) (* -1 (/ (+ (* -1 (/ (+ (* -1 (* (pow y 2) (- x y))) (* -1 (/ (* (pow y 3) (- x y)) z))) z)) (* y (- x y))) z))) z))
(/ (* t (- x y)) (- z y))
Calls

12 calls:

TimeVariablePointExpression
1.0ms
x
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (/ (- x y) (- z y)) (/ (- x y) (- z y)))
1.0ms
x
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (/ (- x y) (- z y)) (/ (- x y) (- z y)))
1.0ms
x
@0
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (/ (- x y) (- z y)) (/ (- x y) (- z y)))
1.0ms
t
@-inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (/ (- x y) (- z y)) (/ (- x y) (- z y)))
0.0ms
y
@inf
((* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (* (/ (- x y) (- z y)) t) (/ (- x y) (- z y)) (- x y) (/ (- x y) (- z y)) (/ (- x y) (- z y)))

simplify1.0ms (0.1%)

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

rewrite1.0ms (0.1%)

Memory
1.6MiB live, 1.6MiB allocated
Counts
12 → 12
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y)))
#s(approx (- x y) (-.f64 z y))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
#s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
Outputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)))
#s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t)
#s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y)))
#s(approx (- x y) (-.f64 z y))
#s(approx (/ (- x y) (- z y)) (-.f64 x y))
#s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))

eval2.0ms (0.2%)

Memory
4.9MiB live, 4.9MiB allocated
Compiler

Compiled 756 to 43 computations (94.3% saved)

prune6.0ms (0.5%)

Memory
12.5MiB live, 12.5MiB allocated
Pruning

10 alts after pruning (0 fresh and 10 done)

PrunedKeptTotal
New22022
Fresh000
Picked022
Done088
Total221032
Accuracy
99.9%
Counts
32 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
97.6%
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
4.4%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
8.8%
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
12.7%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
13.4%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
8.6%
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
8.7%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
82.2%
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
2.6%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
3.3%
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
Compiler

Compiled 440 to 154 computations (65% saved)

regimes28.0ms (2.1%)

Memory
-33.1MiB live, 43.1MiB allocated
Counts
10 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Outputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Calls

6 calls:

6.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
6.0ms
x
4.0ms
y
4.0ms
t
4.0ms
z
Results
AccuracySegmentsBranch
97.6%1x
97.6%1y
97.6%1z
97.6%1t
97.6%1(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
97.6%1(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 20 to 31 computations (-55% saved)

regimes24.0ms (1.8%)

Memory
-1.3MiB live, 41.4MiB allocated
Counts
9 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
Outputs
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
Calls

6 calls:

7.0ms
x
3.0ms
z
3.0ms
y
3.0ms
t
3.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Results
AccuracySegmentsBranch
82.2%1x
82.2%1y
82.2%1z
82.2%1t
82.2%1(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
82.2%1(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 20 to 31 computations (-55% saved)

regimes21.0ms (1.6%)

Memory
10.7MiB live, 49.1MiB allocated
Counts
8 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
Outputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
Calls

6 calls:

5.0ms
t
3.0ms
z
3.0ms
x
3.0ms
y
3.0ms
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Results
AccuracySegmentsBranch
15.2%2z
15.2%2t
13.4%1x
13.4%1y
15.0%2(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
13.4%1(/.f64 (-.f64 x y) (-.f64 z y))
Compiler

Compiled 20 to 31 computations (-55% saved)

regimes9.0ms (0.7%)

Memory
26.1MiB live, 26.1MiB allocated
Counts
7 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
Outputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y)))
Calls

3 calls:

3.0ms
z
3.0ms
t
3.0ms
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Results
AccuracySegmentsBranch
12.7%1(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
12.7%1z
14.9%2t
Compiler

Compiled 11 to 16 computations (-45.5% saved)

regimes15.0ms (1.1%)

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

5 calls:

4.0ms
t
2.0ms
y
2.0ms
x
2.0ms
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
2.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Results
AccuracySegmentsBranch
12.7%1(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
12.7%1y
12.7%1(/.f64 (-.f64 x y) (-.f64 z y))
12.7%1x
12.7%1t
Compiler

Compiled 19 to 27 computations (-42.1% saved)

regimes16.0ms (1.2%)

Memory
-0.3MiB live, 38.2MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
Outputs
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
Calls

6 calls:

5.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
2.0ms
y
2.0ms
z
2.0ms
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
2.0ms
x
Results
AccuracySegmentsBranch
11.0%2x
10.8%2y
11.2%2z
8.8%1(/.f64 (-.f64 x y) (-.f64 z y))
8.8%1t
10.4%2(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
Compiler

Compiled 20 to 31 computations (-55% saved)

regimes14.0ms (1.1%)

Memory
-16.3MiB live, 24.8MiB allocated
Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 z y)))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 z y)) t)
Outputs
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
Calls

5 calls:

6.0ms
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
2.0ms
z
2.0ms
x
2.0ms
y
2.0ms
(/.f64 (-.f64 x y) (-.f64 z y))
Results
AccuracySegmentsBranch
8.8%1(/.f64 (-.f64 x y) (-.f64 z y))
8.8%1(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
8.8%1y
8.8%1x
8.8%1z
Compiler

Compiled 19 to 27 computations (-42.1% saved)

regimes8.0ms (0.7%)

Memory
21.7MiB live, 21.7MiB allocated
Accuracy

Total -0.7b remaining (-1.2%)

Threshold costs -0.7b (-1.2%)

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

6 calls:

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

Compiled 20 to 31 computations (-55% saved)

bsearch16.0ms (1.3%)

Memory
-14.8MiB live, 23.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
15.0ms
6.765595788449075e-134
3.830310016219276e-130
Samples
6.0ms128×0valid
Compiler

Compiled 444 to 247 computations (44.4% saved)

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

bsearch11.0ms (0.8%)

Memory
19.1MiB live, 19.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
9.0ms
3.830310016219276e-130
2.0530609488176684e-128
Samples
5.0ms112×0valid
Compiler

Compiled 320 to 204 computations (36.3% saved)

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

bsearch15.0ms (1.1%)

Memory
-19.5MiB live, 18.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
14.0ms
1.83841465966723e-69
1.7634065162978871e-68
Samples
5.0ms96×0valid
Compiler

Compiled 276 to 171 computations (38% saved)

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

simplify5.0ms (0.4%)

Memory
12.5MiB live, 12.5MiB allocated
Algorithm
egg-herbie
Calls
Call 1
Inputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(if (<=.f64 t #s(literal 3356504041299755/799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t) #s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y))))
(if (<=.f64 t #s(literal 8241416172834219/6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t) #s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y))))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
(if (<=.f64 z #s(literal 1699835280697513/485667223056432267729865476705879726660601709763034880312953102434726071301302124544 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))
Outputs
(*.f64 (/.f64 (-.f64 x y) (-.f64 z y)) t)
#s(approx (* (/ (- x y) (- z y)) t) (/.f64 #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) (-.f64 z y)))
(if (<=.f64 t #s(literal 3356504041299755/799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)) t))) t) #s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y))))
(if (<=.f64 t #s(literal 8241416172834219/6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t) #s(approx (* (/ (- x y) (- z y)) t) (/.f64 (-.f64 x y) (-.f64 z y))))
(*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))) t)
(if (<=.f64 z #s(literal 1699835280697513/485667223056432267729865476705879726660601709763034880312953102434726071301302124544 binary64)) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (*.f64 #s(approx (/ (- x y) (- z y)) #s(approx (- x y) (-.f64 z y))) t))) t) (*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t))
(*.f64 #s(approx (/ (- x y) (- z y)) (-.f64 x y)) t)
#s(approx (* (/ (- x y) (- z y)) t) #s(approx (/ (- x y) (- z y)) (-.f64 x y)))

soundness2.0ms (0.1%)

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

Compiled 255 to 41 computations (83.9% saved)

preprocess51.0ms (3.9%)

Memory
-22.4MiB live, 99.3MiB allocated
Compiler

Compiled 546 to 114 computations (79.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...