Average Error: 3.7 → 2.9
Time: 1.8m
Precision: 64
Internal Precision: 128
\[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
\[\frac{x}{y \cdot e^{2.0 \cdot \left(\frac{z}{\frac{t}{\sqrt{a + t}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)} + x}\]

Error

Bits error versus x

Bits error versus y

Bits error versus z

Bits error versus t

Bits error versus a

Bits error versus b

Bits error versus c

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 3.7

    \[\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
  2. Using strategy rm
  3. Applied associate-/l*2.9

    \[\leadsto \frac{x}{x + y \cdot e^{2.0 \cdot \left(\color{blue}{\frac{z}{\frac{t}{\sqrt{t + a}}}} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\]
  4. Final simplification2.9

    \[\leadsto \frac{x}{y \cdot e^{2.0 \cdot \left(\frac{z}{\frac{t}{\sqrt{a + t}}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right)} + x}\]

Reproduce

herbie shell --seed 2019005 
(FPCore (x y z t a b c)
  :name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
  (/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))

Details

Time bar (total: 1.8m)Debug log

sample303.0ms

Algorithm
intervals

simplify242.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

242.0ms
(/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))))))))

prune16.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 1.7b

localize61.0ms

Local error

Found 4 expressions with local error:

3.2b
(/ (* z (sqrt (+ t a))) t)
0.9b
(- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
0.2b
(/ 2.0 (* t 3.0))
0.2b
(* z (sqrt (+ t a)))

rewrite28.0ms

Algorithm
rewrite-expression-head
Counts
4 → 72
Calls

4 calls. Slowest were:

18.0ms
(- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
4.0ms
(* z (sqrt (+ t a)))
4.0ms
(/ (* z (sqrt (+ t a))) t)

series342.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

210.0ms
(- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
73.0ms
(/ (* z (sqrt (+ t a))) t)
48.0ms
(* z (sqrt (+ t a)))
11.0ms
(/ 2.0 (* t 3.0))

simplify8.2s

Counts
57 → 84
Calls

57 calls. Slowest were:

677.0ms
(- (* (* z (sqrt (+ t a))) (* (+ b c) (+ (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))) (* t (* (- (* b b) (* c c)) (- (* (+ a (/ 5.0 6.0)) (+ a (/ 5.0 6.0))) (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0)))))))
503.0ms
(* t (* (+ b c) (* (- a (/ 5.0 6.0)) (* t 3.0))))
444.0ms
(- (* (* z (sqrt (+ t a))) (* (+ b c) (+ (* (+ a (/ 5.0 6.0)) (+ a (/ 5.0 6.0))) (+ (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (* (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))))) (* t (* (- (* b b) (* c c)) (- (pow (+ a (/ 5.0 6.0)) 3) (pow (/ 2.0 (* t 3.0)) 3)))))

prune1.9s

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.2b

localize35.0ms

Local error

Found 4 expressions with local error:

2.2b
(/ z (/ t (sqrt (+ t a))))
0.9b
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
0.3b
(/ t (sqrt (+ t a)))
0.2b
(/ 2.0 (* t 3.0))

rewrite10.0ms

Algorithm
rewrite-expression-head
Counts
4 → 78
Calls

4 calls. Slowest were:

8.0ms
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
1.0ms
(/ t (sqrt (+ t a)))
1.0ms
(/ z (/ t (sqrt (+ t a))))

series332.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

215.0ms
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))
59.0ms
(/ t (sqrt (+ t a)))
49.0ms
(/ z (/ t (sqrt (+ t a))))
9.0ms
(/ 2.0 (* t 3.0))

simplify7.6s

Counts
62 → 90
Calls

62 calls. Slowest were:

420.0ms
(- (* z (* (+ (* b b) (+ (* c c) (* b c))) (+ (* (+ a (/ 5.0 6.0)) (+ a (/ 5.0 6.0))) (+ (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (* (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))))) (* (/ t (sqrt (+ t a))) (* (- (pow b 3) (pow c 3)) (- (pow (+ a (/ 5.0 6.0)) 3) (pow (/ 2.0 (* t 3.0)) 3)))))
399.0ms
(- (* z (* (+ (* b b) (+ (* c c) (* b c))) (+ (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0))))) (* (/ t (sqrt (+ t a))) (* (- (pow b 3) (pow c 3)) (- (* (+ a (/ 5.0 6.0)) (+ a (/ 5.0 6.0))) (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0)))))))
370.0ms
(* (/ t (sqrt (+ t a))) (* (+ (* a a) (- (* (/ 5.0 6.0) (/ 5.0 6.0)) (* a (/ 5.0 6.0)))) (* t 3.0)))

prune2.0s

Pruning

3 alts after pruning (2 fresh and 1 done)

Merged error: 0.0b

localize29.0ms

Local error

Found 4 expressions with local error:

39.1b
(cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0))))
2.2b
(/ z (/ t (sqrt (+ t a))))
0.9b
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0)))))))
0.3b
(/ t (sqrt (+ t a)))

rewrite42.0ms

Algorithm
rewrite-expression-head
Counts
4 → 120
Calls

4 calls. Slowest were:

32.0ms
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0)))))))
6.0ms
(cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0))))
1.0ms
(/ t (sqrt (+ t a)))

series485.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

282.0ms
(- (/ z (/ t (sqrt (+ t a)))) (* (- b c) (- (+ a (/ 5.0 6.0)) (cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0)))))))
93.0ms
(cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0))))
71.0ms
(/ z (/ t (sqrt (+ t a))))
38.0ms
(/ t (sqrt (+ t a)))

simplify25.9s

Counts
142 → 132
Calls

142 calls. Slowest were:

692.0ms
(- (* z (* (+ (* b b) (+ (* c c) (* b c))) (* (- a (/ 5.0 6.0)) (cbrt (* (* t 3.0) (* t 3.0)))))) (* (/ t (sqrt (+ t a))) (* (- (pow b 3) (pow c 3)) (- (* (- (* a a) (* (/ 5.0 6.0) (/ 5.0 6.0))) (cbrt (* (* t 3.0) (* t 3.0)))) (* (- a (/ 5.0 6.0)) (cbrt (* (* 2.0 (/ 2.0 (* t 3.0))) 2.0)))))))
689.0ms
(* (- b c) (- (/ 5.0 6.0) (cbrt (* (* (/ 2.0 (* t 3.0)) (/ 2.0 (* t 3.0))) (/ 2.0 (* t 3.0))))))
533.0ms
(* (/ t (sqrt (+ t a))) (* (+ b c) (* (- a (/ 5.0 6.0)) (cbrt (* (* t 3.0) (* t 3.0))))))

prune3.8s

Pruning

3 alts after pruning (1 fresh and 2 done)

Merged error: 0.0b

localize78.0ms

Local error

Found 4 expressions with local error:

24.3b
(/ (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))) (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0))))
6.4b
(/ (* t (- b c)) (sqrt (+ a t)))
4.2b
(* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))
4.1b
(- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t)))))

rewrite181.0ms

Algorithm
rewrite-expression-head
Counts
4 → 192
Calls

4 calls. Slowest were:

74.0ms
(/ (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))) (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0))))
47.0ms
(* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))
46.0ms
(- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t)))))

series2.7s

Counts
4 → 12
Calls

4 calls. Slowest were:

1.5s
(/ (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))) (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0))))
806.0ms
(- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t)))))
218.0ms
(* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))
97.0ms
(/ (* t (- b c)) (sqrt (+ a t)))

simplify38.9s

Counts
216 → 204
Calls

216 calls. Slowest were:

662.0ms
(- (* (* (- (* a a) (* (/ 5.0 6.0) (/ 5.0 6.0))) (* z (* 3.0 t))) (* (+ a (/ 5.0 6.0)) (sqrt (+ a t)))) (* (+ a (/ 5.0 6.0)) (* (* (- (* a a) (* (/ 5.0 6.0) (/ 5.0 6.0))) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (* t (- b c)))))
637.0ms
(/ (* (* (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t))))) (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t)))))) (- (* (- a (/ 5.0 6.0)) (* z (* 3.0 t))) (* (* (- a (/ 5.0 6.0)) (- (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0)) (/ (* t (- b c)) (sqrt (+ a t)))))) (* (* (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0))) (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0)))) (* (/ t (sqrt (+ t a))) (* (- a (/ 5.0 6.0)) (* t 3.0)))))
632.0ms
(- (* (* (- (* a a) (* (/ 5.0 6.0) (/ 5.0 6.0))) (* z (* 3.0 t))) (* (+ (* (* (* 3.0 t) (+ a (/ 5.0 6.0))) (* (* 3.0 t) (+ a (/ 5.0 6.0)))) (+ (* 2.0 2.0) (* (* (* 3.0 t) (+ a (/ 5.0 6.0))) 2.0))) (sqrt (+ a t)))) (* (+ a (/ 5.0 6.0)) (* (* (- a (/ 5.0 6.0)) (- (pow (* (* 3.0 t) (+ a (/ 5.0 6.0))) 3) (pow 2.0 3))) (* t (- b c)))))

prune7.5s

Pruning

3 alts after pruning (0 fresh and 3 done)

Merged error: 0.0b

regimes770.0ms

Accuracy

0% (2.4b remaining)

Error of 2.9b against oracle of 0.6b and baseline of 2.9b

bsearch8.0ms

end0.0ms

sample6.7s

Algorithm
intervals