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

Error

Bits error versus m

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

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

    \[\leadsto \frac{m - m \cdot m}{\frac{v}{m}} - m\]
  3. Using strategy rm
  4. Applied sub-neg0.2

    \[\leadsto \color{blue}{\frac{m - m \cdot m}{\frac{v}{m}} + \left(-m\right)}\]
  5. Final simplification0.2

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

Reproduce

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

Details

Time bar (total: 12.6s)Debug log

start261.0ms

Algorithm
intervals

setup889.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.1b

localize22.0ms

Local error

Found 3 expressions with local error:

0.2b
(/ (- m (* m m)) (/ v m))
0.0b
(- m (* m m))
0.0b
(- (/ (- m (* m m)) (/ v m)) m)

rewrite14.0ms

Algorithm
rewrite-expression-head
Counts
3 → 58
Calls

3 calls. Slowest were:

6.0ms
(- (/ (- m (* m m)) (/ v m)) m)
5.0ms
(/ (- m (* m m)) (/ v m))
0.0ms
(- m (* m m))

series70.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

33.0ms
(/ (- m (* m m)) (/ v m))
20.0ms
(- m (* m m))
17.0ms
(- (/ (- m (* m m)) (/ v m)) m)

simplify2.3s

Counts
45 → 67
Calls

45 calls. Slowest were:

478.0ms
(- (* m m) (* (* m m) (* m m)))
441.0ms
(/ (* (* (- m (* m m)) (- m (* m m))) (- m (* m m))) (* (* (/ v m) (/ v m)) (/ v m)))
125.0ms
(- (/ (pow m 2) v) (+ m (/ (pow m 3) v)))

prune567.0ms

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 0b

localize11.0ms

Local error

Found 3 expressions with local error:

0.2b
(/ (- m (* m m)) (/ v m))
0.0b
(- m (* m m))
0.0b
(+ (/ (- m (* m m)) (/ v m)) (- m))

rewrite11.0ms

Algorithm
rewrite-expression-head
Counts
3 → 63
Calls

3 calls. Slowest were:

6.0ms
(+ (/ (- m (* m m)) (/ v m)) (- m))
4.0ms
(/ (- m (* m m)) (/ v m))
0.0ms
(- m (* m m))

series63.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

27.0ms
(/ (- m (* m m)) (/ v m))
20.0ms
(- m (* m m))
16.0ms
(+ (/ (- m (* m m)) (/ v m)) (- m))

simplify2.8s

Counts
48 → 72
Calls

48 calls. Slowest were:

481.0ms
(- (* m m) (* (* m m) (* m m)))
367.0ms
(/ (* (* (- m (* m m)) (- m (* m m))) (- m (* m m))) (* (* (/ v m) (/ v m)) (/ v m)))
317.0ms
(* (exp (/ (- m (* m m)) (/ v m))) (exp (- m)))

prune555.0ms

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 0b

localize9.0ms

Local error

Found 3 expressions with local error:

0.2b
(* (/ m v) (- m (* m m)))
0.0b
(- m (* m m))
0.0b
(- (* (/ m v) (- m (* m m))) m)

rewrite20.0ms

Algorithm
rewrite-expression-head
Counts
3 → 53
Calls

3 calls. Slowest were:

10.0ms
(- (* (/ m v) (- m (* m m))) m)
8.0ms
(* (/ m v) (- m (* m m)))
1.0ms
(- m (* m m))

series103.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

40.0ms
(* (/ m v) (- m (* m m)))
34.0ms
(- m (* m m))
30.0ms
(- (* (/ m v) (- m (* m m))) m)

simplify2.2s

Counts
32 → 62
Calls

32 calls. Slowest were:

413.0ms
(* v (+ (* m m) (+ (* (* m m) (* m m)) (* m (* m m)))))
259.0ms
(* m (- (* m m) (* (* m m) (* m m))))
232.0ms
(+ (* m m) (+ (* (* m m) (* m m)) (* m (* m m))))

prune547.0ms

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 0b

localize13.0ms

Local error

Found 4 expressions with local error:

1.0b
(* (/ m v) (- (* m m)))
0.2b
(* (/ m v) m)
0.0b
(+ (* (/ m v) m) (* (/ m v) (- (* m m))))
0.0b
(- (+ (* (/ m v) m) (* (/ m v) (- (* m m)))) m)

rewrite56.0ms

Algorithm
rewrite-expression-head
Counts
4 → 65
Calls

4 calls. Slowest were:

35.0ms
(- (+ (* (/ m v) m) (* (/ m v) (- (* m m)))) m)
12.0ms
(+ (* (/ m v) m) (* (/ m v) (- (* m m))))
4.0ms
(* (/ m v) (- (* m m)))

series105.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

37.0ms
(+ (* (/ m v) m) (* (/ m v) (- (* m m))))
28.0ms
(- (+ (* (/ m v) m) (* (/ m v) (- (* m m)))) m)
24.0ms
(* (/ m v) (- (* m m)))
17.0ms
(* (/ m v) m)

simplify1.2s

Counts
36 → 77
Calls

36 calls. Slowest were:

193.0ms
(* (exp (* (/ m v) m)) (exp (* (/ m v) (- (* m m)))))
126.0ms
(- (/ (pow m 2) v) (+ m (/ (pow m 3) v)))
110.0ms
(+ (* (* m m) v) (* v (* m (- (* m m)))))

prune688.0ms

Pruning

6 alts after pruning (4 fresh and 2 done)

Merged error: 0b

regimes98.0ms

Accuracy

0% (0.2b remaining)

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

bsearch1.0ms