Average Error: 15.0 → 1.3
Time: 22.6s
Precision: 64
Internal Precision: 128
\[\cos \left(\frac{K \cdot \left(m + n\right)}{2} - M\right) \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]
\[e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]

Error

Bits error versus K

Bits error versus m

Bits error versus n

Bits error versus M

Bits error versus l

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 15.0

    \[\cos \left(\frac{K \cdot \left(m + n\right)}{2} - M\right) \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]
  2. Taylor expanded around 0 1.3

    \[\leadsto \color{blue}{1} \cdot e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]
  3. Final simplification1.3

    \[\leadsto e^{\left(-{\left(\frac{m + n}{2} - M\right)}^{2}\right) - \left(\ell - \left|m - n\right|\right)}\]

Reproduce

herbie shell --seed 2018362 
(FPCore (K m n M l)
  :name "Maksimov and Kolovsky, Equation (32)"
  (* (cos (- (/ (* K (+ m n)) 2) M)) (exp (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n)))))))

Details

Time bar (total: 15.6s)Debug log

start153.0ms

Algorithm
intervals

setup191.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 15.3b

localize57.0ms

Local error

Found 4 expressions with local error:

33.8b
(cos (- (/ (* K (+ m n)) 2) M))
0.0b
(pow (- (/ (+ m n) 2) M) 2)
0.0b
(* K (+ m n))
0.0b
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))

rewrite123.0ms

Algorithm
rewrite-expression-head
Counts
4 → 59
Calls

4 calls. Slowest were:

109.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
6.0ms
(pow (- (/ (+ m n) 2) M) 2)
5.0ms
(cos (- (/ (* K (+ m n)) 2) M))

series231.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

104.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
58.0ms
(pow (- (/ (+ m n) 2) M) 2)
52.0ms
(cos (- (/ (* K (+ m n)) 2) M))
17.0ms
(* K (+ m n))

simplify2.4s

Counts
36 → 71
Calls

36 calls. Slowest were:

288.0ms
(/ (exp (- (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n)))))
255.0ms
(/ (/ 1 (exp (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n)))))
233.0ms
(+ (sqrt (- (pow (- (/ (+ m n) 2) M) 2))) (sqrt (- l (fabs (- m n)))))

prune1.3s

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 1.2b

localize4.0ms

Local error

Found 3 expressions with local error:

0.0b
(pow (- (/ (+ m n) 2) M) 2)
0.0b
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
0.0b
(- l (fabs (- m n)))

rewrite147.0ms

Algorithm
rewrite-expression-head
Counts
3 → 45
Calls

3 calls. Slowest were:

140.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
5.0ms
(pow (- (/ (+ m n) 2) M) 2)
1.0ms
(- l (fabs (- m n)))

series182.0ms

Counts
3 → 9
Calls

3 calls. Slowest were:

101.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
72.0ms
(pow (- (/ (+ m n) 2) M) 2)
9.0ms
(- l (fabs (- m n)))

simplify2.0s

Counts
23 → 54
Calls

23 calls. Slowest were:

308.0ms
(/ (/ 1 (exp (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n)))))
281.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
272.0ms
(/ (exp (- (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n)))))

prune953.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 1.2b

localize63.0ms

Local error

Found 4 expressions with local error:

39.4b
(sin (/ (* K (+ m n)) 2))
39.0b
(cos (/ (+ m n) (/ 2 K)))
0.2b
(* (sin (/ (* K (+ m n)) 2)) (sin (- M)))
0.2b
(/ (+ m n) (/ 2 K))

rewrite14.0ms

Algorithm
rewrite-expression-head
Counts
4 → 67
Calls

4 calls. Slowest were:

7.0ms
(* (sin (/ (* K (+ m n)) 2)) (sin (- M)))
3.0ms
(/ (+ m n) (/ 2 K))
2.0ms
(cos (/ (+ m n) (/ 2 K)))

series180.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

86.0ms
(* (sin (/ (* K (+ m n)) 2)) (sin (- M)))
40.0ms
(cos (/ (+ m n) (/ 2 K)))
34.0ms
(sin (/ (* K (+ m n)) 2))
19.0ms
(/ (+ m n) (/ 2 K))

simplify1.5s

Counts
55 → 79
Calls

55 calls. Slowest were:

369.0ms
(/ (* (* (+ m n) (+ m n)) (+ m n)) (* (* (/ 2 K) (/ 2 K)) (/ 2 K)))
136.0ms
(* (* (* (sin (/ (* K (+ m n)) 2)) (sin (/ (* K (+ m n)) 2))) (sin (/ (* K (+ m n)) 2))) (* (* (sin (- M)) (sin (- M))) (sin (- M))))
94.0ms
(- (cos (- (/ (* K (+ m n)) 2) (- M))) (cos (+ (/ (* K (+ m n)) 2) (- M))))

prune2.2s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 1.1b

localize38.0ms

Local error

Found 4 expressions with local error:

39.4b
(sin (/ (* K (+ m n)) 2))
38.6b
(cos (* (* (cbrt (+ n m)) (cbrt (+ n m))) (/ (cbrt (+ m n)) (/ 2 K))))
0.6b
(cbrt (+ m n))
0.6b
(cbrt (+ n m))

rewrite24.0ms

Algorithm
rewrite-expression-head
Counts
4 → 40
Calls

4 calls. Slowest were:

20.0ms
(cos (* (* (cbrt (+ n m)) (cbrt (+ n m))) (/ (cbrt (+ m n)) (/ 2 K))))
2.0ms
(sin (/ (* K (+ m n)) 2))
1.0ms
(cbrt (+ m n))

series405.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

162.0ms
(cbrt (+ m n))
154.0ms
(cbrt (+ n m))
53.0ms
(cos (* (* (cbrt (+ n m)) (cbrt (+ n m))) (/ (cbrt (+ m n)) (/ 2 K))))
36.0ms
(sin (/ (* K (+ m n)) 2))

simplify742.0ms

Counts
22 → 52
Calls

22 calls. Slowest were:

163.0ms
(- (+ (* 1/3 (* m (pow (/ 1 (pow n 2)) 1/3))) (pow n 1/3)) (* 1/9 (* (pow m 2) (pow (/ 1 (pow n 5)) 1/3))))
157.0ms
(- (+ (pow m 1/3) (* 1/3 (* (pow (/ 1 (pow m 2)) 1/3) n))) (* 1/9 (* (pow (/ 1 (pow m 5)) 1/3) (pow n 2))))
66.0ms
(sin (* 1/2 (* K (+ m n))))

prune2.0s

Pruning

6 alts after pruning (5 fresh and 1 done)

Merged error: 1.1b

regimes696.0ms

Accuracy

0% (0.2b remaining)

Error of 1.3b against oracle of 1.1b and baseline of 1.3b

bsearch3.0ms