Average Error: 12.1 → 0.4
Time: 38.6s
Precision: 64
Internal Precision: 128
\[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
\[\left(\left(3 + \frac{\frac{2}{r}}{r}\right) - \sqrt{\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}} \cdot \sqrt{\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}}\right) - 4.5\]

Error

Bits error versus v

Bits error versus w

Bits error versus r

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 12.1

    \[\left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(0.125 \cdot \left(3 - 2 \cdot v\right)\right) \cdot \left(\left(\left(w \cdot w\right) \cdot r\right) \cdot r\right)}{1 - v}\right) - 4.5\]
  2. Taylor expanded around -inf 20.9

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\color{blue}{0.375 \cdot \left({r}^{2} \cdot {w}^{2}\right) - 0.25 \cdot \left({r}^{2} \cdot \left(v \cdot {w}^{2}\right)\right)}}{1 - v}\right) - 4.5\]
  3. Simplified6.1

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\color{blue}{\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \left(v \cdot \left(-0.25\right) + 0.375\right)}}{1 - v}\right) - 4.5\]
  4. Using strategy rm
  5. Applied *-un-lft-identity6.1

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \frac{\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \left(v \cdot \left(-0.25\right) + 0.375\right)}{\color{blue}{1 \cdot \left(1 - v\right)}}\right) - 4.5\]
  6. Applied times-frac0.3

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \color{blue}{\frac{\left(r \cdot w\right) \cdot \left(r \cdot w\right)}{1} \cdot \frac{v \cdot \left(-0.25\right) + 0.375}{1 - v}}\right) - 4.5\]
  7. Simplified0.3

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \color{blue}{\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right)} \cdot \frac{v \cdot \left(-0.25\right) + 0.375}{1 - v}\right) - 4.5\]
  8. Simplified0.3

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - \left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \color{blue}{\frac{0.375 - v \cdot 0.25}{1 - v}}\right) - 4.5\]
  9. Using strategy rm
  10. Applied associate-/r*0.3

    \[\leadsto \left(\left(3 + \color{blue}{\frac{\frac{2}{r}}{r}}\right) - \left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}\right) - 4.5\]
  11. Using strategy rm
  12. Applied add-sqr-sqrt0.4

    \[\leadsto \left(\left(3 + \frac{\frac{2}{r}}{r}\right) - \color{blue}{\sqrt{\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}} \cdot \sqrt{\left(\left(r \cdot w\right) \cdot \left(r \cdot w\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}}}\right) - 4.5\]
  13. Final simplification0.4

    \[\leadsto \left(\left(3 + \frac{\frac{2}{r}}{r}\right) - \sqrt{\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}} \cdot \sqrt{\left(\left(w \cdot r\right) \cdot \left(w \cdot r\right)\right) \cdot \frac{0.375 - v \cdot 0.25}{1 - v}}\right) - 4.5\]

Reproduce

herbie shell --seed 2019002 
(FPCore (v w r)
  :name "Rosa's TurbineBenchmark"
  (- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5))

Details

Time bar (total: 37.5s)Debug log

sample330.0ms

Algorithm
intervals

simplify116.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

115.0ms
(- (- (+ 3 (/ 2 (* r r))) (/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))) 4.5)

prune18.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 11.6b

localize69.0ms

Local error

Found 4 expressions with local error:

9.0b
(* (* w w) r)
6.4b
(/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))
6.3b
(* (* (* w w) r) r)
3.2b
(* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r))

rewrite61.0ms

Algorithm
rewrite-expression-head
Counts
4 → 58
Calls

4 calls. Slowest were:

24.0ms
(* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r))
17.0ms
(/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))
13.0ms
(* (* w w) r)

series190.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

76.0ms
(* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r))
66.0ms
(/ (* (* 0.125 (- 3 (* 2 v))) (* (* (* w w) r) r)) (- 1 v))
29.0ms
(* (* (* w w) r) r)
19.0ms
(* (* w w) r)

simplify6.7s

Counts
36 → 70
Calls

36 calls. Slowest were:

697.0ms
(* (* 0.125 (- (* 3 3) (* (* 2 v) (* 2 v)))) (* (* (* w w) r) r))
638.0ms
(* (* 0.125 (- (* 3 3) (* (* 2 v) (* 2 v)))) (* (* (* w w) r) r))
523.0ms
(+ (* 0.375 (* (pow r 2) (pow w 2))) (+ (* 0.125 (* (pow r 2) (* v (pow w 2)))) (* 0.125 (* (pow r 2) (* (pow v 2) (pow w 2))))))

prune964.0ms

Pruning

8 alts after pruning (8 fresh and 0 done)

Merged error: 0.1b

localize43.0ms

Local error

Found 4 expressions with local error:

6.4b
(/ (* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375)) (- 1 v))
3.2b
(* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375))
0.5b
(/ 2 (* r r))
0.4b
(* (* r w) (* r w))

rewrite40.0ms

Algorithm
rewrite-expression-head
Counts
4 → 76
Calls

4 calls. Slowest were:

24.0ms
(/ (* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375)) (- 1 v))
11.0ms
(* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375))
3.0ms
(* (* r w) (* r w))

series170.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

66.0ms
(/ (* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375)) (- 1 v))
57.0ms
(* (* (* r w) (* r w)) (+ (* v (- 0.25)) 0.375))
28.0ms
(* (* r w) (* r w))
18.0ms
(/ 2 (* r r))

simplify8.7s

Counts
52 → 88
Calls

52 calls. Slowest were:

751.0ms
(- (* 0.25 (* (pow r 2) (pow w 2))) (+ (* 0.125 (/ (* (pow r 2) (pow w 2)) v)) (* 0.125 (/ (* (pow r 2) (pow w 2)) (pow v 2)))))
663.0ms
(* (* (* (* r w) (* r w)) (* r w)) (* (* (* r w) (* r w)) (* r w)))
589.0ms
(* (* (* r w) (* r w)) (- (* (* v (- 0.25)) (* v (- 0.25))) (* 0.375 0.375)))

prune1.3s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize27.0ms

Local error

Found 4 expressions with local error:

0.5b
(/ 2 (* r r))
0.4b
(* (* r w) (* r w))
0.1b
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
0.0b
(- (- (+ 3 (/ 2 (* r r))) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)

rewrite58.0ms

Algorithm
rewrite-expression-head
Counts
4 → 77
Calls

4 calls. Slowest were:

42.0ms
(- (- (+ 3 (/ 2 (* r r))) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)
10.0ms
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
3.0ms
(* (* r w) (* r w))

series197.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

97.0ms
(- (- (+ 3 (/ 2 (* r r))) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)
63.0ms
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
19.0ms
(/ 2 (* r r))
17.0ms
(* (* r w) (* r w))

simplify5.1s

Counts
48 → 89
Calls

48 calls. Slowest were:

727.0ms
(* (* (* (* r w) (* r w)) (* r w)) (* (* (* r w) (* r w)) (* r w)))
441.0ms
(+ (* 0.125 (* v (* (pow r 2) (pow w 2)))) (+ (* 0.125 (* (pow v 2) (* (pow r 2) (pow w 2)))) (* 0.375 (* (pow r 2) (pow w 2)))))
341.0ms
(- (+ (* 0.125 (/ (* (pow r 2) (pow w 2)) v)) (* 0.125 (/ (* (pow r 2) (pow w 2)) (pow v 2)))) (* 0.25 (* (pow r 2) (pow w 2))))

prune1.3s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize26.0ms

Local error

Found 4 expressions with local error:

0.4b
(* (* r w) (* r w))
0.2b
(/ (/ 2 r) r)
0.1b
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
0.0b
(- (- (+ 3 (/ (/ 2 r) r)) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)

rewrite74.0ms

Algorithm
rewrite-expression-head
Counts
4 → 81
Calls

4 calls. Slowest were:

53.0ms
(- (- (+ 3 (/ (/ 2 r) r)) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)
12.0ms
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
5.0ms
(* (* r w) (* r w))

series205.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

100.0ms
(- (- (+ 3 (/ (/ 2 r) r)) (* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))) 4.5)
57.0ms
(* (* (* r w) (* r w)) (/ (- 0.375 (* v 0.25)) (- 1 v)))
28.0ms
(* (* r w) (* r w))
20.0ms
(/ (/ 2 r) r)

simplify4.8s

Counts
50 → 93
Calls

50 calls. Slowest were:

689.0ms
(* (* (* (* r w) (* r w)) (* r w)) (* (* (* r w) (* r w)) (* r w)))
334.0ms
(- (* 0.25 (* (pow r 2) (pow w 2))) (+ (* 0.125 (/ (* (pow r 2) (pow w 2)) v)) (* 0.125 (/ (* (pow r 2) (pow w 2)) (pow v 2)))))
323.0ms
(+ (* 0.125 (* v (* (pow r 2) (pow w 2)))) (+ (* 0.125 (* (pow v 2) (* (pow r 2) (pow w 2)))) (* 0.375 (* (pow r 2) (pow w 2)))))

prune1.2s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

regimes468.0ms

Accuracy

0% (0.3b remaining)

Error of 0.4b against oracle of 0.1b and baseline of 0.4b

bsearch3.0ms

end0.0ms

sample5.4s

Algorithm
intervals