Average Error: 15.1 → 1.3
Time: 18.2s
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.1

    \[\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 2019005 
(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: 17.2s)Debug log

sample128.0ms

Algorithm
intervals

simplify151.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

151.0ms
(* (cos (- (/ (* K (+ m n)) 2) M)) (exp (- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))))

prune17.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 13.5b

localize64.0ms

Local error

Found 4 expressions with local error:

34.4b
(cos (- (/ (* K (+ m n)) 2) M))
0.0b
(pow (- (/ (+ m n) 2) M) 2)
0.0b
(/ (* K (+ m n)) 2)
0.0b
(* K (+ m n))

rewrite36.0ms

Algorithm
rewrite-expression-head
Counts
4 → 52
Calls

4 calls. Slowest were:

18.0ms
(pow (- (/ (+ m n) 2) M) 2)
13.0ms
(cos (- (/ (* K (+ m n)) 2) M))
3.0ms
(/ (* K (+ m n)) 2)

series179.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

63.0ms
(cos (- (/ (* K (+ m n)) 2) M))
53.0ms
(pow (- (/ (+ m n) 2) M) 2)
38.0ms
(/ (* K (+ m n)) 2)
26.0ms
(* K (+ m n))

simplify1.2s

Counts
29 → 64
Calls

29 calls. Slowest were:

325.0ms
(* K (- (* m m) (* n n)))
123.0ms
(- (pow M 2) (+ (* m M) (* M n)))
108.0ms
(- (pow M 2) (+ (* m M) (* M n)))

prune1.3s

Pruning

5 alts after pruning (5 fresh and 0 done)

Merged error: 0.7b

localize6.0ms

Local error

Found 2 expressions with local error:

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

rewrite199.0ms

Algorithm
rewrite-expression-head
Counts
2 → 34
Calls

2 calls. Slowest were:

186.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
12.0ms
(pow (- (/ (+ m n) 2) M) 2)

series190.0ms

Counts
2 → 6
Calls

2 calls. Slowest were:

150.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
40.0ms
(pow (- (/ (+ m n) 2) M) 2)

simplify2.2s

Counts
20 → 40
Calls

20 calls. Slowest were:

334.0ms
(/ (/ 1 (exp (pow (- (/ (+ m n) 2) M) 2))) (exp (- l (fabs (- m n)))))
294.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))
265.0ms
(- (- (pow (- (/ (+ m n) 2) M) 2)) (- l (fabs (- m n))))

prune693.0ms

Pruning

5 alts after pruning (4 fresh and 1 done)

Merged error: 0.7b

localize33.0ms

Local error

Found 4 expressions with local error:

34.5b
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
1.2b
(/ 2 (* K (+ m n)))
0.5b
(/ 1 (/ 2 (* K (+ m n))))
0.0b
(pow (- (/ (+ m n) 2) M) 2)

rewrite25.0ms

Algorithm
rewrite-expression-head
Counts
4 → 57
Calls

4 calls. Slowest were:

11.0ms
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
10.0ms
(pow (- (/ (+ m n) 2) M) 2)
2.0ms
(/ 1 (/ 2 (* K (+ m n))))

series163.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

65.0ms
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
46.0ms
(pow (- (/ (+ m n) 2) M) 2)
28.0ms
(/ 2 (* K (+ m n)))
23.0ms
(/ 1 (/ 2 (* K (+ m n))))

simplify986.0ms

Counts
31 → 69
Calls

31 calls. Slowest were:

102.0ms
(- (pow M 2) (+ (* m M) (* M n)))
85.0ms
(* (cos (/ 1 (/ 2 (* K (+ m n))))) (cos (- M)))
77.0ms
(* (cos (/ 1 (/ 2 (* K (+ m n))))) (cos M))

prune1.3s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.7b

localize23.0ms

Local error

Found 4 expressions with local error:

34.5b
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
1.2b
(/ 2 (* K (+ m n)))
0.6b
(log (exp (cos (- (/ 1 (/ 2 (* K (+ m n)))) M))))
0.5b
(/ 1 (/ 2 (* K (+ m n))))

rewrite39.0ms

Algorithm
rewrite-expression-head
Counts
4 → 61
Calls

4 calls. Slowest were:

19.0ms
(log (exp (cos (- (/ 1 (/ 2 (* K (+ m n)))) M))))
15.0ms
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
2.0ms
(/ 1 (/ 2 (* K (+ m n))))

series243.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

85.0ms
(cos (- (/ 1 (/ 2 (* K (+ m n)))) M))
84.0ms
(log (exp (cos (- (/ 1 (/ 2 (* K (+ m n)))) M))))
44.0ms
(/ 1 (/ 2 (* K (+ m n))))
30.0ms
(/ 2 (* K (+ m n)))

simplify1.8s

Counts
36 → 73
Calls

36 calls. Slowest were:

138.0ms
(log (* (cbrt (exp (cos (- (/ 1 (/ 2 (* K (+ m n)))) M)))) (cbrt (exp (cos (- (/ 1 (/ 2 (* K (+ m n)))) M))))))
120.0ms
(* (cos (/ 1 (/ 2 (* K (+ m n))))) (cos (- M)))
117.0ms
(- (/ 1 (/ 2 (* K (+ m n)))) M)

prune1.6s

Pruning

4 alts after pruning (3 fresh and 1 done)

Merged error: 0.7b

regimes434.0ms

Accuracy

0% (0.2b remaining)

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

bsearch2.0ms

end0.0ms

sample4.0s

Algorithm
intervals