Average Error: 0.1 → 0.1
Time: 27.8s
Precision: 64
Internal Precision: 128
\[\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\]
\[\left((\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \frac{m}{v} \cdot \left(\left(m + -1\right) \cdot m\right)\right) + m\]

Error

Bits error versus m

Bits error versus v

Derivation

  1. Initial program 0.1

    \[\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)\]
  2. Initial simplification0.1

    \[\leadsto (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* \cdot \left(1 - m\right)\]
  3. Using strategy rm
  4. Applied sub-neg0.1

    \[\leadsto (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* \cdot \color{blue}{\left(1 + \left(-m\right)\right)}\]
  5. Applied distribute-rgt-in0.1

    \[\leadsto \color{blue}{1 \cdot (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \left(-m\right) \cdot (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_*}\]
  6. Simplified0.1

    \[\leadsto 1 \cdot (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \color{blue}{(\left(\frac{m}{v}\right) \cdot \left(m \cdot \left(-1 + m\right)\right) + m)_*}\]
  7. Using strategy rm
  8. Applied fma-udef0.1

    \[\leadsto 1 \cdot (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \color{blue}{\left(\frac{m}{v} \cdot \left(m \cdot \left(-1 + m\right)\right) + m\right)}\]
  9. Applied associate-+r+0.1

    \[\leadsto \color{blue}{\left(1 \cdot (\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \frac{m}{v} \cdot \left(m \cdot \left(-1 + m\right)\right)\right) + m}\]
  10. Final simplification0.1

    \[\leadsto \left((\left(1 - m\right) \cdot \left(\frac{m}{v}\right) + -1)_* + \frac{m}{v} \cdot \left(\left(m + -1\right) \cdot m\right)\right) + m\]

Reproduce

herbie shell --seed 2018365 +o rules:numerics
(FPCore (m v)
  :name "b parameter of renormalized beta distribution"
  :pre (and (< 0 m) (< 0 v) (< v 0.25))
  (* (- (/ (* m (- 1 m)) v) 1) (- 1 m)))

Details

Time bar (total: 23.6s)Debug log

start183.0ms

Algorithm
intervals

setup832.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.1b

localize25.0ms

Local error

Found 2 expressions with local error:

0.1b
(fma (- 1 m) (/ m v) -1)
0.1b
(* (fma (- 1 m) (/ m v) -1) (- 1 m))

rewrite8.0ms

Algorithm
rewrite-expression-head
Counts
2 → 35
Calls

2 calls. Slowest were:

4.0ms
(* (fma (- 1 m) (/ m v) -1) (- 1 m))
1.0ms
(fma (- 1 m) (/ m v) -1)

series54.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

29.0ms
(* (fma (- 1 m) (/ m v) -1) (- 1 m))
25.0ms
(fma (- 1 m) (/ m v) -1)

simplify5.5s

Counts
20 → 41
Calls

20 calls. Slowest were:

1.1s
(* (- m) (fma (- 1 m) (/ m v) -1))
961.0ms
(* (- m) (fma (- 1 m) (/ m v) -1))
674.0ms
(* (* (* (fma (- 1 m) (/ m v) -1) (fma (- 1 m) (/ m v) -1)) (fma (- 1 m) (/ m v) -1)) (* (* (- 1 m) (- 1 m)) (- 1 m)))

prune480.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 0.0b

localize10.0ms

Local error

Found 4 expressions with local error:

0.1b
(* (fma (- 1 m) (/ m v) -1) (- m))
0.1b
(fma (- 1 m) (/ m v) -1)
0.1b
(fma (- 1 m) (/ m v) -1)
0.0b
(+ (* (fma (- 1 m) (/ m v) -1) 1) (* (fma (- 1 m) (/ m v) -1) (- m)))

rewrite10.0ms

Algorithm
rewrite-expression-head
Counts
4 → 58
Calls

4 calls. Slowest were:

5.0ms
(+ (* (fma (- 1 m) (/ m v) -1) 1) (* (fma (- 1 m) (/ m v) -1) (- m)))
4.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
0.0ms
(fma (- 1 m) (/ m v) -1)

series85.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

39.0ms
(+ (* (fma (- 1 m) (/ m v) -1) 1) (* (fma (- 1 m) (/ m v) -1) (- m)))
19.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
15.0ms
(fma (- 1 m) (/ m v) -1)
11.0ms
(fma (- 1 m) (/ m v) -1)

simplify3.4s

Counts
26 → 70
Calls

26 calls. Slowest were:

479.0ms
(* (* (* (fma (- 1 m) (/ m v) -1) (fma (- 1 m) (/ m v) -1)) (fma (- 1 m) (/ m v) -1)) (* (* (- m) (- m)) (- m)))
432.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
308.0ms
(- (+ m (/ (pow m 3) v)) (* 2 (/ (pow m 2) v)))

prune991.0ms

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 0.0b

localize15.0ms

Local error

Found 4 expressions with local error:

0.1b
(* (fma (- 1 m) (/ m v) -1) (- m))
0.1b
(fma m (/ m v) 1)
0.1b
(fma (- 1 m) (/ m v) -1)
0.0b
(- (/ m v) (fma m (/ m v) 1))

rewrite9.0ms

Algorithm
rewrite-expression-head
Counts
4 → 74
Calls

4 calls. Slowest were:

4.0ms
(- (/ m v) (fma m (/ m v) 1))
4.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
0.0ms
(fma m (/ m v) 1)

series59.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

18.0ms
(- (/ m v) (fma m (/ m v) 1))
17.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
13.0ms
(fma m (/ m v) 1)
11.0ms
(fma (- 1 m) (/ m v) -1)

simplify5.4s

Counts
50 → 86
Calls

50 calls. Slowest were:

585.0ms
(* (* (* (fma (- 1 m) (/ m v) -1) (fma (- 1 m) (/ m v) -1)) (fma (- 1 m) (/ m v) -1)) (* (* (- m) (- m)) (- m)))
504.0ms
(* (fma (- 1 m) (/ m v) -1) (- m))
352.0ms
(fma (sqrt (/ m v)) (sqrt (/ m v)) (- (* (fma m (/ m v) 1) 1)))

prune1.2s

Pruning

6 alts after pruning (6 fresh and 0 done)

Merged error: 0.0b

localize29.0ms

Local error

Found 4 expressions with local error:

0.2b
(fma (/ m v) (* m (+ -1 m)) m)
0.1b
(fma (- 1 m) (/ m v) -1)
0.0b
(+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m))
0.0b
(* m (+ -1 m))

rewrite11.0ms

Algorithm
rewrite-expression-head
Counts
4 → 55
Calls

4 calls. Slowest were:

8.0ms
(+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m))
2.0ms
(* m (+ -1 m))
0.0ms
(fma (/ m v) (* m (+ -1 m)) m)

series94.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

32.0ms
(* m (+ -1 m))
25.0ms
(fma (/ m v) (* m (+ -1 m)) m)
25.0ms
(+ (* 1 (fma (- 1 m) (/ m v) -1)) (fma (/ m v) (* m (+ -1 m)) m))
11.0ms
(fma (- 1 m) (/ m v) -1)

simplify4.2s

Counts
23 → 67
Calls

23 calls. Slowest were:

2.4s
(+ (fma (- 1 m) (/ m v) -1) (fma (/ m v) (* m (+ -1 m)) m))
383.0ms
(- (+ m (/ (pow m 3) v)) (* 2 (/ (pow m 2) v)))
295.0ms
(* 1 (* (- 1 m) (/ m v)))

prune893.0ms

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 0.0b

regimes164.0ms

Accuracy

0% (0.1b remaining)

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

bsearch4.0ms