Average Error: 0.0 → 0.0
Time: 49.0s
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(\sqrt{1 - \left(v \cdot v\right) \cdot 3} \cdot \frac{\sqrt{2}}{4}\right) \cdot \left(1 - v \cdot v\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 *-commutative0.0

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

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

Reproduce

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

Details

Time bar (total: 43.1s)Debug log

start179.0ms

Algorithm
intervals

setup290.0ms

Pruning

2 alts after pruning (2 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)))

rewrite25.0ms

Algorithm
rewrite-expression-head
Counts
4 → 88
Calls

4 calls. Slowest were:

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

series235.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

105.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- 1 (* v v)))
89.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
29.0ms
(sqrt (- 1 (* 3 (* v v))))
11.0ms
(* 3 (* v v))

simplify13.3s

Counts
78 → 100
Calls

78 calls. Slowest were:

583.0ms
(- (* 1/8 (/ 1 (* (pow (sqrt -3) 3) (pow v 3)))) (+ (* 1/2 (/ 1 (* (sqrt -3) v))) (* (sqrt -3) v)))
522.0ms
(* (- (* v v)) (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))
519.0ms
(* (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))) (- (* v v)))

prune1.6s

Pruning

2 alts after pruning (2 fresh and 0 done)

Merged error: 0b

localize7.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
(* (- 1 (* v v)) (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))

rewrite28.0ms

Algorithm
rewrite-expression-head
Counts
4 → 84
Calls

4 calls. Slowest were:

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

series261.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

131.0ms
(* (- 1 (* v v)) (* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v))))))
77.0ms
(* (/ (sqrt 2) 4) (sqrt (- 1 (* 3 (* v v)))))
42.0ms
(sqrt (- 1 (* 3 (* v v))))
11.0ms
(* 3 (* v v))

simplify11.9s

Counts
72 → 96
Calls

72 calls. Slowest were:

879.0ms
(* (+ (* 1 1) (+ (* (* v v) (* v v)) (* 1 (* v v)))) (* 4 (sqrt (+ 1 (* 3 (* v v))))))
543.0ms
(- (* 1/8 (/ 1 (* (pow (sqrt -3) 3) (pow v 3)))) (+ (* 1/2 (/ 1 (* (sqrt -3) v))) (* (sqrt -3) v)))
539.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 (1 fresh and 1 done)

Merged error: 0b

localize67.0ms

Local error

Found 4 expressions with local error:

0.1b
(* v (* 3 v))
0.1b
(* (pow v 4) 9)
0.1b
(* (pow v 5) (* v 27))
0.0b
(/ (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2))) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4)))

rewrite39.0ms

Algorithm
rewrite-expression-head
Counts
4 → 76
Calls

4 calls. Slowest were:

30.0ms
(/ (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2))) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4)))
3.0ms
(* (pow v 5) (* v 27))
2.0ms
(* (pow v 4) 9)

series196.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

142.0ms
(/ (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2))) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4)))
19.0ms
(* (pow v 5) (* v 27))
18.0ms
(* (pow v 4) 9)
17.0ms
(* v (* 3 v))

simplify10.6s

Counts
51 → 88
Calls

51 calls. Slowest were:

1.2s
(/ (* (* (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (sqrt (- 1 (* (pow v 5) (* v 27))))) (sqrt (- 1 (* (pow v 5) (* v 27))))) (* (* (* (- 1 (pow v 4)) (- 1 (pow v 4))) (- 1 (pow v 4))) (* (* (sqrt 2) (sqrt 2)) (sqrt 2)))) (* (* (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4)) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4))) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4))))
1.0s
(/ (* (* (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2))) (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2)))) (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (* (- 1 (pow v 4)) (sqrt 2)))) (* (* (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9)))) (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9)))) (* (* (+ (* (* v v) 4) 4) (+ (* (* v v) 4) 4)) (+ (* (* v v) 4) 4))))
920.0ms
(/ (* (* (* (sqrt (- 1 (* (pow v 5) (* v 27)))) (sqrt (- 1 (* (pow v 5) (* v 27))))) (sqrt (- 1 (* (pow v 5) (* v 27))))) (* (* (* (- 1 (pow v 4)) (sqrt 2)) (* (- 1 (pow v 4)) (sqrt 2))) (* (- 1 (pow v 4)) (sqrt 2)))) (* (* (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4)) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4))) (* (sqrt (+ (+ 1 (* v (* 3 v))) (* (pow v 4) 9))) (+ (* (* v v) 4) 4))))

prune2.7s

Pruning

2 alts after pruning (0 fresh and 2 done)

Merged error: 0b

regimes102.0ms

Accuracy

0% (0.0b remaining)

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

bsearch5.0ms