Average Error: 0.0 → 0.0
Time: 33.3s
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)\]
\[e^{\log \left(1 - v \cdot v\right) + \log \left(\sqrt{1 - \left(v \cdot v\right) \cdot 3} \cdot \frac{\sqrt{2}}{4}\right)}\]

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 add-exp-log0.0

    \[\leadsto \left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right) \cdot \color{blue}{e^{\log \left(1 - v \cdot v\right)}}\]
  4. Applied add-exp-log0.0

    \[\leadsto \color{blue}{e^{\log \left(\frac{\sqrt{2}}{4} \cdot \sqrt{1 - 3 \cdot \left(v \cdot v\right)}\right)}} \cdot e^{\log \left(1 - v \cdot v\right)}\]
  5. Applied prod-exp0.0

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

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

Runtime

Time bar (total: 33.3s)Debug logProfile

start256.0ms

Algorithm
intervals

setup243.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0.0b

localize46.0ms

Local error

Found 4 expressions with local error:

0.1b
(* 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)))

rewrite41.0ms

Algorithm
rewrite-expression-head
Counts
4 → 88
Calls

4 calls. Slowest were:

26.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))
11.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
2.0ms
(* 3 (* v v))

series289.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

131.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))
93.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
41.0ms
(sqrt (- 1 (* 3 (* v v))))

simplify14.1s

Counts
78 → 100
Calls

78 calls. Slowest were:

993.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))))))
555.0ms
(* (sqrt (+ (* 1 1) (+ (* (* 3 (* v v)) (* 3 (* v v))) (* 1 (* 3 (* v v)))))) (+ (* 1 1) (+ (* (* v v) (* v v)) (* 1 (* v v)))))
475.0ms
(* (- (* v v)) (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))

prune1.5s

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 0b

localize17.0ms

Local error

Found 4 expressions with local error:

1.9b
(log (- 1 (* v v)))
0.1b
(* 3 (* v v))
0.0b
(+ (log (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))) (log (- 1 (* v v))))
0.0b
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))

rewrite50.0ms

Algorithm
rewrite-expression-head
Counts
4 → 77
Calls

4 calls. Slowest were:

34.0ms
(+ (log (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))) (log (- 1 (* v v))))
10.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
2.0ms
(* 3 (* v v))

series460.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

253.0ms
(+ (log (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))) (log (- 1 (* v v))))
102.0ms
(log (- 1 (* v v)))
89.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))

simplify6.5s

Counts
55 → 89
Calls

55 calls. Slowest were:

1.1s
(* (* (* (/ (sqrt 2) 4) (/ (sqrt 2) 4)) (/ (sqrt 2) 4)) (* (* (sqrt (- 1 (* 3 (* v v)))) (sqrt (- 1 (* 3 (* v v))))) (sqrt (- 1 (* 3 (* v v))))))
373.0ms
(- (* 1/4 (sqrt 2)) (+ (* 9/32 (* (sqrt 2) (pow v 4))) (* 3/8 (* (sqrt 2) (pow v 2)))))
300.0ms
(- (* 1/32 (/ (sqrt 2) (* (pow v 3) (pow (sqrt -3) 3)))) (+ (* 1/4 (* (sqrt 2) (* v (sqrt -3)))) (* 1/8 (/ (sqrt 2) (* v (sqrt -3))))))

prune1.7s

Pruning

1 alts after pruning (0 fresh and 1 done)

Merged error: 0b

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