| Alternative 1 | |
|---|---|
| Accuracy | 72.4% |
| Cost | 976 |
(FPCore (m v) :precision binary64 (* (- (/ (* m (- 1.0 m)) v) 1.0) (- 1.0 m)))
(FPCore (m v) :precision binary64 (+ (+ m (* (/ m v) (- 1.0 m))) (- -1.0 (* (- 1.0 m) (/ m (/ v m))))))
double code(double m, double v) {
return (((m * (1.0 - m)) / v) - 1.0) * (1.0 - m);
}
double code(double m, double v) {
return (m + ((m / v) * (1.0 - m))) + (-1.0 - ((1.0 - m) * (m / (v / m))));
}
real(8) function code(m, v)
real(8), intent (in) :: m
real(8), intent (in) :: v
code = (((m * (1.0d0 - m)) / v) - 1.0d0) * (1.0d0 - m)
end function
real(8) function code(m, v)
real(8), intent (in) :: m
real(8), intent (in) :: v
code = (m + ((m / v) * (1.0d0 - m))) + ((-1.0d0) - ((1.0d0 - m) * (m / (v / m))))
end function
public static double code(double m, double v) {
return (((m * (1.0 - m)) / v) - 1.0) * (1.0 - m);
}
public static double code(double m, double v) {
return (m + ((m / v) * (1.0 - m))) + (-1.0 - ((1.0 - m) * (m / (v / m))));
}
def code(m, v): return (((m * (1.0 - m)) / v) - 1.0) * (1.0 - m)
def code(m, v): return (m + ((m / v) * (1.0 - m))) + (-1.0 - ((1.0 - m) * (m / (v / m))))
function code(m, v) return Float64(Float64(Float64(Float64(m * Float64(1.0 - m)) / v) - 1.0) * Float64(1.0 - m)) end
function code(m, v) return Float64(Float64(m + Float64(Float64(m / v) * Float64(1.0 - m))) + Float64(-1.0 - Float64(Float64(1.0 - m) * Float64(m / Float64(v / m))))) end
function tmp = code(m, v) tmp = (((m * (1.0 - m)) / v) - 1.0) * (1.0 - m); end
function tmp = code(m, v) tmp = (m + ((m / v) * (1.0 - m))) + (-1.0 - ((1.0 - m) * (m / (v / m)))); end
code[m_, v_] := N[(N[(N[(N[(m * N[(1.0 - m), $MachinePrecision]), $MachinePrecision] / v), $MachinePrecision] - 1.0), $MachinePrecision] * N[(1.0 - m), $MachinePrecision]), $MachinePrecision]
code[m_, v_] := N[(N[(m + N[(N[(m / v), $MachinePrecision] * N[(1.0 - m), $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + N[(-1.0 - N[(N[(1.0 - m), $MachinePrecision] * N[(m / N[(v / m), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)
\left(m + \frac{m}{v} \cdot \left(1 - m\right)\right) + \left(-1 - \left(1 - m\right) \cdot \frac{m}{\frac{v}{m}}\right)
Results
Initial program 99.9%
Applied egg-rr99.7%
[Start]99.9 | \[ \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(1 - m\right)
\] |
|---|---|
sub-neg [=>]99.9 | \[ \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \color{blue}{\left(1 + \left(-m\right)\right)}
\] |
distribute-lft-in [=>]99.9 | \[ \color{blue}{\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot 1 + \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)}
\] |
*-commutative [<=]99.9 | \[ \color{blue}{1 \cdot \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right)} + \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)
\] |
*-un-lft-identity [<=]99.9 | \[ \color{blue}{\left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right)} + \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)
\] |
associate-+l- [=>]99.9 | \[ \color{blue}{\frac{m \cdot \left(1 - m\right)}{v} - \left(1 - \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)\right)}
\] |
associate-/l* [=>]99.9 | \[ \color{blue}{\frac{m}{\frac{v}{1 - m}}} - \left(1 - \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)\right)
\] |
div-inv [=>]99.7 | \[ \color{blue}{m \cdot \frac{1}{\frac{v}{1 - m}}} - \left(1 - \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)\right)
\] |
associate-/l* [<=]99.7 | \[ m \cdot \color{blue}{\frac{1 \cdot \left(1 - m\right)}{v}} - \left(1 - \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)\right)
\] |
*-un-lft-identity [<=]99.7 | \[ m \cdot \frac{\color{blue}{1 - m}}{v} - \left(1 - \left(\frac{m \cdot \left(1 - m\right)}{v} - 1\right) \cdot \left(-m\right)\right)
\] |
sub-neg [=>]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \color{blue}{\left(\frac{m \cdot \left(1 - m\right)}{v} + \left(-1\right)\right)} \cdot \left(-m\right)\right)
\] |
associate-/l* [=>]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \left(\color{blue}{\frac{m}{\frac{v}{1 - m}}} + \left(-1\right)\right) \cdot \left(-m\right)\right)
\] |
div-inv [=>]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \left(\color{blue}{m \cdot \frac{1}{\frac{v}{1 - m}}} + \left(-1\right)\right) \cdot \left(-m\right)\right)
\] |
associate-/l* [<=]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \left(m \cdot \color{blue}{\frac{1 \cdot \left(1 - m\right)}{v}} + \left(-1\right)\right) \cdot \left(-m\right)\right)
\] |
*-un-lft-identity [<=]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \left(m \cdot \frac{\color{blue}{1 - m}}{v} + \left(-1\right)\right) \cdot \left(-m\right)\right)
\] |
metadata-eval [=>]99.7 | \[ m \cdot \frac{1 - m}{v} - \left(1 - \left(m \cdot \frac{1 - m}{v} + \color{blue}{-1}\right) \cdot \left(-m\right)\right)
\] |
Taylor expanded in v around 0 99.9%
Simplified99.9%
[Start]99.9 | \[ \left(-1 \cdot \frac{{m}^{2} \cdot \left(1 - m\right)}{v} + \left(m + \frac{m \cdot \left(1 - m\right)}{v}\right)\right) - 1
\] |
|---|---|
sub-neg [=>]99.9 | \[ \color{blue}{\left(-1 \cdot \frac{{m}^{2} \cdot \left(1 - m\right)}{v} + \left(m + \frac{m \cdot \left(1 - m\right)}{v}\right)\right) + \left(-1\right)}
\] |
+-commutative [<=]99.9 | \[ \left(-1 \cdot \frac{{m}^{2} \cdot \left(1 - m\right)}{v} + \color{blue}{\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right)}\right) + \left(-1\right)
\] |
+-commutative [=>]99.9 | \[ \color{blue}{\left(\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right) + -1 \cdot \frac{{m}^{2} \cdot \left(1 - m\right)}{v}\right)} + \left(-1\right)
\] |
mul-1-neg [=>]99.9 | \[ \left(\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right) + \color{blue}{\left(-\frac{{m}^{2} \cdot \left(1 - m\right)}{v}\right)}\right) + \left(-1\right)
\] |
unsub-neg [=>]99.9 | \[ \color{blue}{\left(\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right) - \frac{{m}^{2} \cdot \left(1 - m\right)}{v}\right)} + \left(-1\right)
\] |
metadata-eval [=>]99.9 | \[ \left(\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right) - \frac{{m}^{2} \cdot \left(1 - m\right)}{v}\right) + \color{blue}{-1}
\] |
associate-+l- [=>]99.9 | \[ \color{blue}{\left(\frac{m \cdot \left(1 - m\right)}{v} + m\right) - \left(\frac{{m}^{2} \cdot \left(1 - m\right)}{v} - -1\right)}
\] |
+-commutative [=>]99.9 | \[ \color{blue}{\left(m + \frac{m \cdot \left(1 - m\right)}{v}\right)} - \left(\frac{{m}^{2} \cdot \left(1 - m\right)}{v} - -1\right)
\] |
associate-/l* [=>]99.9 | \[ \left(m + \color{blue}{\frac{m}{\frac{v}{1 - m}}}\right) - \left(\frac{{m}^{2} \cdot \left(1 - m\right)}{v} - -1\right)
\] |
associate-/r/ [=>]99.9 | \[ \left(m + \color{blue}{\frac{m}{v} \cdot \left(1 - m\right)}\right) - \left(\frac{{m}^{2} \cdot \left(1 - m\right)}{v} - -1\right)
\] |
associate-/l* [=>]99.9 | \[ \left(m + \frac{m}{v} \cdot \left(1 - m\right)\right) - \left(\color{blue}{\frac{{m}^{2}}{\frac{v}{1 - m}}} - -1\right)
\] |
associate-/r/ [=>]99.9 | \[ \left(m + \frac{m}{v} \cdot \left(1 - m\right)\right) - \left(\color{blue}{\frac{{m}^{2}}{v} \cdot \left(1 - m\right)} - -1\right)
\] |
unpow2 [=>]99.9 | \[ \left(m + \frac{m}{v} \cdot \left(1 - m\right)\right) - \left(\frac{\color{blue}{m \cdot m}}{v} \cdot \left(1 - m\right) - -1\right)
\] |
associate-/l* [=>]99.9 | \[ \left(m + \frac{m}{v} \cdot \left(1 - m\right)\right) - \left(\color{blue}{\frac{m}{\frac{v}{m}}} \cdot \left(1 - m\right) - -1\right)
\] |
Final simplification99.9%
| Alternative 1 | |
|---|---|
| Accuracy | 72.4% |
| Cost | 976 |
| Alternative 2 | |
|---|---|
| Accuracy | 72.2% |
| Cost | 976 |
| Alternative 3 | |
|---|---|
| Accuracy | 72.3% |
| Cost | 976 |
| Alternative 4 | |
|---|---|
| Accuracy | 99.5% |
| Cost | 836 |
| Alternative 5 | |
|---|---|
| Accuracy | 99.7% |
| Cost | 836 |
| Alternative 6 | |
|---|---|
| Accuracy | 99.9% |
| Cost | 832 |
| Alternative 7 | |
|---|---|
| Accuracy | 96.1% |
| Cost | 708 |
| Alternative 8 | |
|---|---|
| Accuracy | 96.2% |
| Cost | 708 |
| Alternative 9 | |
|---|---|
| Accuracy | 96.2% |
| Cost | 708 |
| Alternative 10 | |
|---|---|
| Accuracy | 96.2% |
| Cost | 708 |
| Alternative 11 | |
|---|---|
| Accuracy | 96.2% |
| Cost | 708 |
| Alternative 12 | |
|---|---|
| Accuracy | 61.4% |
| Cost | 589 |
| Alternative 13 | |
|---|---|
| Accuracy | 96.0% |
| Cost | 580 |
| Alternative 14 | |
|---|---|
| Accuracy | 41.7% |
| Cost | 192 |
| Alternative 15 | |
|---|---|
| Accuracy | 41.2% |
| Cost | 64 |
herbie shell --seed 2023131
(FPCore (m v)
:name "b parameter of renormalized beta distribution"
:precision binary64
:pre (and (and (< 0.0 m) (< 0.0 v)) (< v 0.25))
(* (- (/ (* m (- 1.0 m)) v) 1.0) (- 1.0 m)))