Average Error: 36.4 → 36.4
Time: 8.3s
Precision: binary64
\[e^{a \cdot \log \left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}\]
\[{\left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}^{a}\]
e^{a \cdot \log \left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}
{\left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}^{a}
double code(double a, double b, double x) {
	return ((double) exp(((double) (a * ((double) log(((double) (1.0 - ((double) exp(((double) (((double) (1.0 / b)) * ((double) log(((double) (1.0 - x))))))))))))))));
}
double code(double a, double b, double x) {
	return ((double) pow(((double) (1.0 - ((double) exp(((double) (((double) (1.0 / b)) * ((double) log(((double) (1.0 - x)))))))))), a));
}

Error

Bits error versus a

Bits error versus b

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 36.4

    \[e^{a \cdot \log \left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}\]
  2. Simplified36.4

    \[\leadsto \color{blue}{{\left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}^{a}}\]
  3. Final simplification36.4

    \[\leadsto {\left(1 - e^{\frac{1}{b} \cdot \log \left(1 - x\right)}\right)}^{a}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (a b x)
  :name "(exp (* a (log (- 1 (exp (* (/ 1 b) (log (- 1 x))))))))"
  :precision binary64
  (exp (* a (log (- 1.0 (exp (* (/ 1.0 b) (log (- 1.0 x)))))))))