Average Error: 1.6 → 1.3
Time: 56.7s
Precision: 64
Internal Precision: 128
\[\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\]
\[\sqrt{\frac{1}{2} + \frac{\frac{1}{2}}{\sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}} \cdot \left(\sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}} \cdot \sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}}\right)}}\]

Error

Bits error versus l

Bits error versus Om

Bits error versus kx

Bits error versus ky

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 1.6

    \[\sqrt{\frac{1}{2} \cdot \left(1 + \frac{1}{\sqrt{1 + {\left(\frac{2 \cdot \ell}{Om}\right)}^{2} \cdot \left({\left(\sin kx\right)}^{2} + {\left(\sin ky\right)}^{2}\right)}}\right)}\]
  2. Initial simplification1.6

    \[\leadsto \sqrt{\frac{\frac{1}{2}}{\sqrt{\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \left(\frac{\ell}{\frac{Om}{2}} \cdot \frac{\ell}{\frac{Om}{2}}\right) + 1}} + \frac{1}{2}}\]
  3. Using strategy rm
  4. Applied associate-*r*1.3

    \[\leadsto \sqrt{\frac{\frac{1}{2}}{\sqrt{\color{blue}{\left(\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \frac{\ell}{\frac{Om}{2}}\right) \cdot \frac{\ell}{\frac{Om}{2}}} + 1}} + \frac{1}{2}}\]
  5. Using strategy rm
  6. Applied add-cube-cbrt1.3

    \[\leadsto \sqrt{\frac{\frac{1}{2}}{\color{blue}{\left(\sqrt[3]{\sqrt{\left(\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \frac{\ell}{\frac{Om}{2}}\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}} \cdot \sqrt[3]{\sqrt{\left(\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \frac{\ell}{\frac{Om}{2}}\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}}\right) \cdot \sqrt[3]{\sqrt{\left(\left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right) \cdot \frac{\ell}{\frac{Om}{2}}\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}}}} + \frac{1}{2}}\]
  7. Final simplification1.3

    \[\leadsto \sqrt{\frac{1}{2} + \frac{\frac{1}{2}}{\sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}} \cdot \left(\sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}} \cdot \sqrt[3]{\sqrt{\left(\frac{\ell}{\frac{Om}{2}} \cdot \left(\sin ky \cdot \sin ky + \sin kx \cdot \sin kx\right)\right) \cdot \frac{\ell}{\frac{Om}{2}} + 1}}\right)}}\]

Reproduce

herbie shell --seed 2018365 
(FPCore (l Om kx ky)
  :name "Toniolo and Linder, Equation (3a)"
  (sqrt (* (/ 1 2) (+ 1 (/ 1 (sqrt (+ 1 (* (pow (/ (* 2 l) Om) 2) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))

Details

Time bar (total: 50.5s)Debug log

start87.0ms

Algorithm
intervals

setup375.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 1.6b

localize51.0ms

Local error

Found 4 expressions with local error:

9.1b
(sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1))
3.4b
(* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2))))
0.4b
(/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1)))
0.3b
(* (sin kx) (sin kx))

rewrite101.0ms

Algorithm
rewrite-expression-head
Counts
4 → 87
Calls

4 calls. Slowest were:

40.0ms
(* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2))))
28.0ms
(sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1))
22.0ms
(/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1)))

series808.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

302.0ms
(sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1))
253.0ms
(/ 1/2 (sqrt (+ (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2)))) 1)))
233.0ms
(* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (* (/ l (/ Om 2)) (/ l (/ Om 2))))
20.0ms
(* (sin kx) (sin kx))

simplify15.2s

Counts
72 → 99
Calls

72 calls. Slowest were:

2.3s
(* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) (* (/ l (/ Om 2)) (/ l (/ Om 2))))
1.6s
(* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) (* l (/ l (/ Om 2))))
1.3s
(* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) (* (/ l (/ Om 2)) l))

prune2.0s

Pruning

3 alts after pruning (3 fresh and 0 done)

Merged error: 0.7b

localize34.0ms

Local error

Found 4 expressions with local error:

9.1b
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
2.5b
(* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2)))
0.7b
(* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2)))
0.4b
(/ 1/2 (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

rewrite100.0ms

Algorithm
rewrite-expression-head
Counts
4 → 93
Calls

4 calls. Slowest were:

42.0ms
(* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2)))
27.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
17.0ms
(/ 1/2 (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

series798.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

263.0ms
(/ 1/2 (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))
257.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
163.0ms
(* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2)))
114.0ms
(* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2)))

simplify18.8s

Counts
78 → 105
Calls

78 calls. Slowest were:

2.9s
(* (* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) (/ l (/ Om 2))) (/ l (/ Om 2)))
1.5s
(* (* (* 2 2) (/ Om 2)) (/ Om 2))
1.3s
(* (* (+ (* (- (cos (- ky ky)) (cos (+ ky ky))) 2) (* 2 (- (cos (- kx kx)) (cos (+ kx kx))))) l) (/ l (/ Om 2)))

prune2.4s

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0.7b

localize21.0ms

Local error

Found 4 expressions with local error:

9.1b
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
9.1b
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
9.1b
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
8.4b
(cbrt (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

rewrite159.0ms

Algorithm
rewrite-expression-head
Counts
4 → 58
Calls

4 calls. Slowest were:

53.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
37.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
35.0ms
(cbrt (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

series1.3s

Counts
4 → 12
Calls

4 calls. Slowest were:

334.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
329.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
325.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
289.0ms
(cbrt (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

simplify6.1s

Counts
38 → 70
Calls

38 calls. Slowest were:

388.0ms
(sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1))
384.0ms
(sqrt (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))
351.0ms
(sqrt (sqrt (+ (* (* (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))) (/ l (/ Om 2))) (/ l (/ Om 2))) 1)))

prune1.8s

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0.7b

localize5.0ms

Local error

Found 0 expressions with local error:

rewrite0.0ms

Algorithm
rewrite-expression-head
Counts
0 → 0
Calls

0 calls. Slowest were:

series0.0ms

Counts
0 → 0
Calls

0 calls. Slowest were:

simplify0.0ms

Counts
0 → 0
Calls

0 calls. Slowest were:

prune0.0ms

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 0.7b

regimes346.0ms

Accuracy

0% (0.7b remaining)

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

bsearch3.0ms