Average Error: 12.0 → 0.4
Time: 2.5m
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) - 4.5\right) - \frac{1}{\frac{\frac{1 - v}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}}{0.125 \cdot \left(v \cdot -2 + 3\right)}}\]

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.0

    \[\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. Initial simplification0.4

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - 4.5\right) - \frac{\left(-2 \cdot v + 3\right) \cdot 0.125}{\frac{1 - v}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}}\]
  3. Using strategy rm
  4. Applied clear-num0.4

    \[\leadsto \left(\left(3 + \frac{2}{r \cdot r}\right) - 4.5\right) - \color{blue}{\frac{1}{\frac{\frac{1 - v}{\left(w \cdot r\right) \cdot \left(w \cdot r\right)}}{\left(-2 \cdot v + 3\right) \cdot 0.125}}}\]
  5. Using strategy rm
  6. Applied associate-/r*0.4

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

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

Reproduce

herbie shell --seed 2018362 
(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: 2.4m)Debug log

start402.0ms

Algorithm
intervals

setup120.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.3b

localize60.0ms

Local error

Found 4 expressions with local error:

4.4b
(/ (* (+ (* -2 v) 3) 0.125) (/ (- 1 v) (* (* w r) (* w r))))
0.4b
(/ 2 (* r r))
0.4b
(* (* w r) (* w r))
0.1b
(/ (- 1 v) (* (* w r) (* w r)))

rewrite22.0ms

Algorithm
rewrite-expression-head
Counts
4 → 85
Calls

4 calls. Slowest were:

12.0ms
(/ (* (+ (* -2 v) 3) 0.125) (/ (- 1 v) (* (* w r) (* w r))))
4.0ms
(/ (- 1 v) (* (* w r) (* w r)))
3.0ms
(* (* w r) (* w r))

series512.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

385.0ms
(/ 2 (* r r))
69.0ms
(/ (* (+ (* -2 v) 3) 0.125) (/ (- 1 v) (* (* w r) (* w r))))
41.0ms
(/ (- 1 v) (* (* w r) (* w r)))
16.0ms
(* (* w r) (* w r))

simplify6.9s

Counts
65 → 97
Calls

65 calls. Slowest were:

583.0ms
(- (log (* (+ (* -2 v) 3) 0.125)) (- (log (- 1 v)) (log (* (* w r) (* w r)))))
552.0ms
(* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r)))
447.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))))))

prune2.1s

Pruning

11 alts after pruning (11 fresh and 0 done)

Merged error: 0.0b

localize18.0ms

Local error

Found 4 expressions with local error:

4.4b
(/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125))
0.4b
(/ 2 (* r r))
0.4b
(* (* w r) (* w r))
0.2b
(/ 1 (/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125)))

rewrite34.0ms

Algorithm
rewrite-expression-head
Counts
4 → 92
Calls

4 calls. Slowest were:

21.0ms
(/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125))
6.0ms
(/ 1 (/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125)))
3.0ms
(* (* w r) (* w r))

series153.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

62.0ms
(/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125))
62.0ms
(/ 1 (/ (/ (- 1 v) (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125)))
18.0ms
(* (* w r) (* w r))
11.0ms
(/ 2 (* r r))

simplify8.0s

Counts
63 → 104
Calls

63 calls. Slowest were:

680.0ms
(* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r)))
536.0ms
(/ (/ 1 (* (* w r) (* w r))) (* (+ (* -2 v) 3) 0.125))
490.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))))))

prune2.4s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize23.0ms

Local error

Found 4 expressions with local error:

3.8b
(/ (/ 1 (/ (- 1 v) (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
0.6b
(/ 1 (/ (- 1 v) (* (* w r) (* w r))))
0.4b
(/ 2 (* r r))
0.4b
(* (* w r) (* w r))

rewrite36.0ms

Algorithm
rewrite-expression-head
Counts
4 → 112
Calls

4 calls. Slowest were:

15.0ms
(/ (/ 1 (/ (- 1 v) (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
11.0ms
(* (* w r) (* w r))
6.0ms
(/ 1 (/ (- 1 v) (* (* w r) (* w r))))

series133.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

59.0ms
(/ (/ 1 (/ (- 1 v) (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
42.0ms
(/ 1 (/ (- 1 v) (* (* w r) (* w r))))
16.0ms
(* (* w r) (* w r))
16.0ms
(/ 2 (* r r))

simplify21.6s

Counts
106 → 124
Calls

106 calls. Slowest were:

739.0ms
(/ (cbrt (/ 1 (/ (- 1 v) (* (* w r) (* w r))))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
723.0ms
(* (* (* (* w r) (* w r)) (* w r)) (* (* (* w r) (* w r)) (* w r)))
615.0ms
(/ (/ 1 (/ (- 1 v) (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))

prune3.0s

Pruning

10 alts after pruning (10 fresh and 0 done)

Merged error: 0.0b

localize14.0ms

Local error

Found 4 expressions with local error:

3.8b
(/ (/ (/ 1 (- 1 v)) (/ 1 (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
0.4b
(/ 2 (* r r))
0.4b
(* (* w r) (* w r))
0.2b
(/ 1 (* (* w r) (* w r)))

rewrite29.0ms

Algorithm
rewrite-expression-head
Counts
4 → 283
Calls

4 calls. Slowest were:

16.0ms
(/ (/ (/ 1 (- 1 v)) (/ 1 (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
3.0ms
(* (* w r) (* w r))
3.0ms
(/ 1 (* (* w r) (* w r)))

series120.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

58.0ms
(/ (/ (/ 1 (- 1 v)) (/ 1 (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
28.0ms
(* (* w r) (* w r))
23.0ms
(/ 1 (* (* w r) (* w r)))
11.0ms
(/ 2 (* r r))

simplify1.5m

Counts
424 → 295
Calls

424 calls. Slowest were:

1.0s
(/ (/ (/ 1 (- 1 v)) (/ 1 (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))
843.0ms
(- (- (log (/ 1 (- 1 v))) (- (log (* (* w r) (* w r))))) (- (log (* (+ (* -2 v) 3) 0.125))))
770.0ms
(/ (/ (sqrt (/ 1 (- 1 v))) (/ 1 (* (* w r) (* w r)))) (/ 1 (* (+ (* -2 v) 3) 0.125)))

prune8.2s

Pruning

9 alts after pruning (9 fresh and 0 done)

Merged error: 0.0b

regimes418.0ms

Accuracy

0% (0.3b remaining)

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

bsearch3.0ms