Average Error: 17.2 → 7.5
Time: 36.8s
Precision: 64
Internal Precision: 128
\[\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\]
\[\left(\cos \left(\frac{K}{2}\right) \cdot \sqrt{1^2 + \left(\frac{\frac{\frac{U}{2}}{J}}{\cos \left(\frac{K}{2}\right)}\right)^2}^*\right) \cdot \left(J \cdot -2\right)\]

Error

Bits error versus J

Bits error versus K

Bits error versus U

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 17.2

    \[\left(\left(-2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \sqrt{1 + {\left(\frac{U}{\left(2 \cdot J\right) \cdot \cos \left(\frac{K}{2}\right)}\right)}^{2}}\]
  2. Simplified7.5

    \[\leadsto \color{blue}{\sqrt{1^2 + \left(\frac{\frac{\frac{U}{2}}{J}}{\cos \left(\frac{K}{2}\right)}\right)^2}^* \cdot \left(\cos \left(\frac{K}{2}\right) \cdot \left(-2 \cdot J\right)\right)}\]
  3. Using strategy rm
  4. Applied associate-*r*7.5

    \[\leadsto \color{blue}{\left(\sqrt{1^2 + \left(\frac{\frac{\frac{U}{2}}{J}}{\cos \left(\frac{K}{2}\right)}\right)^2}^* \cdot \cos \left(\frac{K}{2}\right)\right) \cdot \left(-2 \cdot J\right)}\]
  5. Final simplification7.5

    \[\leadsto \left(\cos \left(\frac{K}{2}\right) \cdot \sqrt{1^2 + \left(\frac{\frac{\frac{U}{2}}{J}}{\cos \left(\frac{K}{2}\right)}\right)^2}^*\right) \cdot \left(J \cdot -2\right)\]

Reproduce

herbie shell --seed 2019022 +o rules:numerics
(FPCore (J K U)
  :name "Maksimov and Kolovsky, Equation (3)"
  (* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2)))))

Details

Time bar (total: 35.8s)Debug log

sample212.0ms

Algorithm
intervals
Results
86.0ms48×body1280valid
40.0ms136×body80valid
39.0ms35×body640valid
19.0ms23×body320valid
8.0ms14×body160valid

simplify301.0ms

Counts
1 → 1
Calls
1 calls:
Slowest
300.0ms
(* (* (* -2 J) (cos (/ K 2))) (sqrt (+ 1 (pow (/ U (* (* 2 J) (cos (/ K 2)))) 2))))

prune18.0ms

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 5.3b

localize27.0ms

Local error

Found 4 expressions with local error:

5.3b
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J)))
0.1b
(/ (/ (/ U 2) J) (cos (/ K 2)))
0.1b
(* (cos (/ K 2)) (* -2 J))
0.0b
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))

rewrite41.0ms

Algorithm
rewrite-expression-head
Rules
15×add-cube-cbrt
15×*-un-lft-identity
15×add-sqr-sqrt
13×add-exp-log
13×add-cbrt-cube
12×times-frac
11×pow1
associate-*l*
div-inv
add-log-exp
associate-/l*
log1p-expm1-u
cbrt-unprod
prod-exp
pow-prod-down
expm1-log1p-u
associate-/r*
*-commutative
associate-*r*
associate-/l/
div-exp
frac-2neg
clear-num
hypot-udef
cbrt-undiv
Counts
4 → 81
Calls
4 calls:
Slowest
20.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J)))
10.0ms
(/ (/ (/ U 2) J) (cos (/ K 2)))
9.0ms
(* (cos (/ K 2)) (* -2 J))
0.0ms
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))

series594.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
266.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (cos (/ K 2)) (* -2 J)))
183.0ms
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))
106.0ms
(/ (/ (/ U 2) J) (cos (/ K 2)))
39.0ms
(* (cos (/ K 2)) (* -2 J))

simplify2.3s

Counts
59 → 93
Calls
59 calls:
Slowest
446.0ms
(/ (* (* (/ (/ U 2) J) (/ (/ U 2) J)) (/ (/ U 2) J)) (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))))
212.0ms
(* (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))) (* (* (* -2 J) (* -2 J)) (* -2 J)))
209.0ms
(+ (* 1/16 (/ (* (pow K 2) U) J)) (* 1/2 (/ U J)))
185.0ms
(- (log (/ (/ U 2) J)) (log (cos (/ K 2))))
122.0ms
(- (+ (* 2 J) (* 1/4 (/ (pow U 2) J))))

prune1.1s

Pruning

7 alts after pruning (7 fresh and 0 done)

Merged error: 1.4b

localize5.0ms

Local error

Found 4 expressions with local error:

5.2b
(* (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2))) (* -2 J))
0.1b
(/ (/ (/ U 2) J) (cos (/ K 2)))
0.1b
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2)))
0.0b
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))

rewrite29.0ms

Algorithm
rewrite-expression-head
Rules
15×add-cube-cbrt
15×*-un-lft-identity
15×add-sqr-sqrt
13×add-exp-log
13×add-cbrt-cube
12×times-frac
11×pow1
div-inv
add-log-exp
associate-/l*
log1p-expm1-u
cbrt-unprod
prod-exp
pow-prod-down
associate-*l*
associate-*r*
expm1-log1p-u
associate-/r*
*-commutative
associate-/l/
div-exp
frac-2neg
clear-num
hypot-udef
cbrt-undiv
Counts
4 → 81
Calls
4 calls:
Slowest
11.0ms
(* (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2))) (* -2 J))
9.0ms
(/ (/ (/ U 2) J) (cos (/ K 2)))
8.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2)))
0.0ms
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))

series708.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
245.0ms
(* (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2))) (* -2 J))
205.0ms
(hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))
175.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2)))
83.0ms
(/ (/ (/ U 2) J) (cos (/ K 2)))

simplify2.8s

Counts
60 → 93
Calls
60 calls:
Slowest
691.0ms
(* (* (* (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2))) (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2)))) (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (cos (/ K 2)))) (* (* (* -2 J) (* -2 J)) (* -2 J)))
495.0ms
(/ (* (* (/ (/ U 2) J) (/ (/ U 2) J)) (/ (/ U 2) J)) (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))))
204.0ms
(+ (* 1/16 (/ (* (pow K 2) U) J)) (* 1/2 (/ U J)))
144.0ms
(- (log (/ (/ U 2) J)) (log (cos (/ K 2))))
123.0ms
(* (* (* (* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))) (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))) (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2)))) (* (* (* -2 J) (* -2 J)) (* -2 J)))

prune1.1s

Pruning

9 alts after pruning (8 fresh and 1 done)

Merged error: 1.4b

localize13.0ms

Local error

Found 4 expressions with local error:

5.3b
(* (hypot 1 (/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))) (* (cos (/ K 2)) (* -2 J)))
0.5b
(/ (cos (/ K 2)) (/ 1 J))
0.1b
(* (cos (/ K 2)) (* -2 J))
0.1b
(/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))

rewrite48.0ms

Algorithm
rewrite-expression-head
Rules
140×times-frac
73×add-cube-cbrt
73×*-un-lft-identity
73×add-sqr-sqrt
44×div-inv
21×associate-/r*
18×add-exp-log
18×add-cbrt-cube
11×pow1
associate-/l*
associate-/r/
associate-*l*
add-log-exp
log1p-expm1-u
cbrt-unprod
prod-exp
pow-prod-down
div-exp
cbrt-undiv
expm1-log1p-u
*-commutative
associate-*r*
frac-2neg
clear-num
associate-/l/
Counts
4 → 178
Calls
4 calls:
Slowest
15.0ms
(* (hypot 1 (/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))) (* (cos (/ K 2)) (* -2 J)))
13.0ms
(/ (cos (/ K 2)) (/ 1 J))
9.0ms
(* (cos (/ K 2)) (* -2 J))
8.0ms
(/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))

series450.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
274.0ms
(* (hypot 1 (/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))) (* (cos (/ K 2)) (* -2 J)))
66.0ms
(/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))
57.0ms
(* (cos (/ K 2)) (* -2 J))
52.0ms
(/ (cos (/ K 2)) (/ 1 J))

simplify11.7s

Counts
217 → 190
Calls
217 calls:
Slowest
464.0ms
(* (hypot 1 (/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))) (* (cos (/ K 2)) (* -2 J)))
402.0ms
(* (hypot 1 (/ (/ U 2) (/ (cos (/ K 2)) (/ 1 J)))) (* (cos (/ K 2)) (* -2 J)))
376.0ms
(/ (* (cbrt (/ U 2)) (cbrt (/ U 2))) (/ (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (/ 1 J)) (cbrt (/ 1 J)))))
299.0ms
(/ (* (* (cos (/ K 2)) (cos (/ K 2))) (cos (/ K 2))) (* (* (/ 1 J) (/ 1 J)) (/ 1 J)))
273.0ms
(/ (* (cbrt (/ U 2)) (cbrt (/ U 2))) (/ (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) 1))

prune2.3s

Pruning

10 alts after pruning (8 fresh and 2 done)

Merged error: 1.4b

localize20.0ms

Local error

Found 4 expressions with local error:

5.3b
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (cos (/ K 2))) (* -2 J))))
0.3b
(cbrt (cos (/ K 2)))
0.3b
(cbrt (cos (/ K 2)))
0.3b
(cbrt (cos (/ K 2)))

rewrite61.0ms

Algorithm
rewrite-expression-head
Rules
22×add-exp-log
22×pow1
16×add-cbrt-cube
13×cbrt-unprod
13×prod-exp
13×pow-prod-down
cbrt-prod
add-cube-cbrt
*-un-lft-identity
add-sqr-sqrt
add-log-exp
log1p-expm1-u
expm1-log1p-u
associate-*l*
pow1/3
*-commutative
associate-*r*
Counts
4 → 68
Calls
4 calls:
Slowest
55.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (cos (/ K 2))) (* -2 J))))
1.0ms
(cbrt (cos (/ K 2)))
1.0ms
(cbrt (cos (/ K 2)))
1.0ms
(cbrt (cos (/ K 2)))

series709.0ms

Counts
4 → 12
Calls
4 calls:
Slowest
287.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (cos (/ K 2))) (* -2 J))))
146.0ms
(cbrt (cos (/ K 2)))
143.0ms
(cbrt (cos (/ K 2)))
132.0ms
(cbrt (cos (/ K 2)))

simplify3.6s

Counts
39 → 80
Calls
39 calls:
Slowest
380.0ms
(+ (log (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))) (+ (+ (log (cbrt (cos (/ K 2)))) (log (cbrt (cos (/ K 2))))) (log (* (cbrt (cos (/ K 2))) (* -2 J)))))
257.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (cos (/ K 2))) (* -2 J))))
251.0ms
(+ (log (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))) (+ (log (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2))))) (log (* (cbrt (cos (/ K 2))) (* -2 J)))))
248.0ms
(+ (log (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2))))) (+ (log (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2))))) (+ (log (cbrt (cos (/ K 2)))) (log (* -2 J)))))
247.0ms
(* (hypot 1 (/ (/ (/ U 2) J) (cos (/ K 2)))) (* (* (cbrt (cos (/ K 2))) (cbrt (cos (/ K 2)))) (* (cbrt (cos (/ K 2))) (* -2 J))))

prune1.1s

Pruning

9 alts after pruning (7 fresh and 2 done)

Merged error: 1.4b

regimes367.0ms

Accuracy

0% (3.7b remaining)

Error of 7.5b against oracle of 3.8b and baseline of 7.5b

bsearch3.0ms

end0.0ms

sample6.2s

Algorithm
intervals
Results
2.4s1496×body1280valid
1.9s1248×body640valid
1.1s4328×body80valid
449.0ms629×body320valid
131.0ms300×body160valid