Average Error: 0.0 → 0.0
Time: 37.2s
Precision: 64
Internal Precision: 128
\[\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\]
\[\left(1 - v \cdot v\right) \cdot \log_* (1 + (e^{\sqrt{1 - \left(v \cdot v\right) \cdot 3} \cdot \frac{\sqrt{2}}{4}} - 1)^*)\]

Error

Bits error versus v

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \left(1 - v \cdot v\right)\]
  2. Using strategy rm
  3. Applied log1p-expm1-u0.0

    \[\leadsto \color{blue}{\log_* (1 + (e^{\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}} - 1)^*)} \cdot \left(1 - v \cdot v\right)\]
  4. Final simplification0.0

    \[\leadsto \left(1 - v \cdot v\right) \cdot \log_* (1 + (e^{\sqrt{1 - \left(v \cdot v\right) \cdot 3} \cdot \frac{\sqrt{2}}{4}} - 1)^*)\]

Reproduce

herbie shell --seed 2018360 +o rules:numerics
(FPCore (v)
  :name "Falkner and Boettcher, Appendix B, 2"
  (* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v))))

Details

Time bar (total: 31.8s)Debug log

start105.0ms

Algorithm
intervals

setup343.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.0b

localize22.0ms

Local error

Found 4 expressions with local error:

0.2b
(* 3 (* v v))
0.0b
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
0.0b
(sqrt (- 1 (* 3 (* v v))))
0.0b
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))

rewrite22.0ms

Algorithm
rewrite-expression-head
Counts
4 → 96
Calls

4 calls. Slowest were:

13.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))
5.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
1.0ms
(sqrt (- 1 (* 3 (* v v))))

series302.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

142.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))
97.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
45.0ms
(sqrt (- 1 (* 3 (* v v))))
18.0ms
(* 3 (* v v))

simplify15.1s

Counts
78 → 108
Calls

78 calls. Slowest were:

760.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- (* v v)))
530.0ms
(* (* 4 (sqrt (+ (* 1 1) (+ (* (* 3 (* v v)) (* 3 (* v v))) (* 1 (* 3 (* v v))))))) (+ (* 1 1) (+ (* (* v v) (* v v)) (* 1 (* v v)))))
529.0ms
(* (* (* (/ (sqrt 2) 4) (/ (sqrt 2) 4)) (/ (sqrt 2) 4)) (* (* (sqrt (- 1 (* 3 (* v v)))) (sqrt (- 1 (* 3 (* v v))))) (sqrt (- 1 (* 3 (* v v))))))

prune1.6s

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0b

localize22.0ms

Local error

Found 4 expressions with local error:

1.0b
(expm1 (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))
1.0b
(log1p (expm1 (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))))
0.2b
(* 3 (* v v))
0.0b
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))

rewrite18.0ms

Algorithm
rewrite-expression-head
Counts
4 → 61
Calls

4 calls. Slowest were:

14.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
2.0ms
(* 3 (* v v))
1.0ms
(expm1 (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))

series407.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

235.0ms
(log1p (expm1 (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))))
93.0ms
(expm1 (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))
58.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
21.0ms
(* 3 (* v v))

simplify3.2s

Counts
33 → 73
Calls

33 calls. Slowest were:

548.0ms
(* (* (* (/ (sqrt 2) 4) (/ (sqrt 2) 4)) (/ (sqrt 2) 4)) (* (* (sqrt (- 1 (* 3 (* v v)))) (sqrt (- 1 (* 3 (* v v))))) (sqrt (- 1 (* 3 (* v v))))))
348.0ms
(- (+ (* 1/4 (* (sqrt 2) (* v (sqrt -3)))) (* 1/8 (/ (sqrt 2) (* v (sqrt -3))))) (* 1/32 (/ (sqrt 2) (* (pow v 3) (pow (sqrt -3) 3)))))
318.0ms
(* 4 (sqrt (+ (* 1 1) (+ (* (* 3 (* v v)) (* 3 (* v v))) (* 1 (* 3 (* v v)))))))

prune1.3s

Pruning

2 alts after pruning (1 fresh and 1 done)

Merged error: 0b

localize29.0ms

Local error

Found 4 expressions with local error:

0.0b
(* (pow v 5) (- v))
0.0b
(/ (* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2))) (fma (* v v) (fma 4 (* v v) 4) 4))
0.0b
(* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2)))
0.0b
(sqrt (fma (* v v) -3 1))

rewrite17.0ms

Algorithm
rewrite-expression-head
Counts
4 → 82
Calls

4 calls. Slowest were:

8.0ms
(/ (* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2))) (fma (* v v) (fma 4 (* v v) 4) 4))
4.0ms
(* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2)))
3.0ms
(* (pow v 5) (- v))

series291.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

147.0ms
(/ (* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2))) (fma (* v v) (fma 4 (* v v) 4) 4))
78.0ms
(* (sqrt (fma (* v v) -3 1)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2)))
39.0ms
(* (pow v 5) (- v))
27.0ms
(sqrt (fma (* v v) -3 1))

simplify7.0s

Counts
51 → 94
Calls

51 calls. Slowest were:

779.0ms
(* (* (* (sqrt (fma (* v v) -3 1)) (sqrt (fma (* v v) -3 1))) (sqrt (fma (* v v) -3 1))) (* (* (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2)) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2))) (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2))))
540.0ms
(* (* (* (pow v 5) (pow v 5)) (pow v 5)) (* (* (- v) (- v)) (- v)))
423.0ms
(- (+ (log (sqrt (fma (* v v) -3 1))) (log (fma (sqrt 2) (* (pow v 5) (- v)) (sqrt 2)))) (log (fma (* v v) (fma 4 (* v v) 4) 4)))

prune2.0s

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 0b

regimes46.0ms

Accuracy

0% (0.0b remaining)

Error of 0.0b against oracle of 0.0b and baseline of 0.0b

bsearch3.0ms