Average Error: 10.3 → 10.3
Time: 47.8s
Precision: 64
Internal Precision: 128
\[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
\[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]

Error

Bits error versus t

Bits error versus l

Bits error versus Om

Bits error versus Omc

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 10.3

    \[\sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]
  2. Final simplification10.3

    \[\leadsto \sin^{-1} \left(\sqrt{\frac{1 - {\left(\frac{Om}{Omc}\right)}^{2}}{1 + 2 \cdot {\left(\frac{t}{\ell}\right)}^{2}}}\right)\]

Reproduce

herbie shell --seed 2019005 
(FPCore (t l Om Omc)
  :name "Toniolo and Linder, Equation (2)"
  (asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))))

Details

Time bar (total: 46.4s)Debug log

sample208.0ms

Algorithm
intervals

simplify557.0ms

Counts
1 → 1
Calls

1 calls. Slowest were:

557.0ms
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))

prune18.0ms

Pruning

1 alts after pruning (1 fresh and 0 done)

Merged error: 10.4b

localize66.0ms

Local error

Found 4 expressions with local error:

10.0b
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
0.3b
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
0.2b
(pow (/ t l) 2)
0.2b
(pow (/ Om Omc) 2)

rewrite13.0ms

Algorithm
rewrite-expression-head
Counts
4 → 64
Calls

4 calls. Slowest were:

7.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
2.0ms
(pow (/ t l) 2)
2.0ms
(pow (/ Om Omc) 2)

series190.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

154.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
12.0ms
(asin (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
12.0ms
(pow (/ t l) 2)
11.0ms
(pow (/ Om Omc) 2)

simplify3.3s

Counts
42 → 76
Calls

42 calls. Slowest were:

468.0ms
(asin (sqrt (/ (- 1 (/ (pow Om 2) (pow Omc 2))) (+ (* 2 (/ (pow t 2) (pow l 2))) 1))))
429.0ms
(asin (sqrt (/ (- 1 (/ (pow Om 2) (pow Omc 2))) (+ (* 2 (/ (pow t 2) (pow l 2))) 1))))
388.0ms
(asin (sqrt (/ (- 1 (/ (pow Om 2) (pow Omc 2))) (+ (* 2 (/ (pow t 2) (pow l 2))) 1))))

prune1.4s

Pruning

7 alts after pruning (6 fresh and 1 done)

Merged error: 10.4b

localize43.0ms

Local error

Found 4 expressions with local error:

15.4b
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
15.4b
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
15.4b
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
10.3b
(sqrt (/ 1 (* (cbrt (+ 1 (* 2 (pow (/ t l) 2)))) (cbrt (+ 1 (* 2 (pow (/ t l) 2)))))))

rewrite12.0ms

Algorithm
rewrite-expression-head
Counts
4 → 61
Calls

4 calls. Slowest were:

8.0ms
(sqrt (/ 1 (* (cbrt (+ 1 (* 2 (pow (/ t l) 2)))) (cbrt (+ 1 (* 2 (pow (/ t l) 2)))))))
1.0ms
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
1.0ms
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))

series640.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

178.0ms
(sqrt (/ 1 (* (cbrt (+ 1 (* 2 (pow (/ t l) 2)))) (cbrt (+ 1 (* 2 (pow (/ t l) 2)))))))
171.0ms
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
150.0ms
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))
141.0ms
(cbrt (+ 1 (* 2 (pow (/ t l) 2))))

simplify5.4s

Counts
41 → 73
Calls

41 calls. Slowest were:

382.0ms
(sqrt (/ 1 (* (cbrt (+ (pow 1 3) (pow (* 2 (pow (/ t l) 2)) 3))) (cbrt (- (* 1 1) (* (* 2 (pow (/ t l) 2)) (* 2 (pow (/ t l) 2))))))))
358.0ms
(sqrt (/ 1 (* (cbrt (- (* 1 1) (* (* 2 (pow (/ t l) 2)) (* 2 (pow (/ t l) 2))))) (cbrt (+ (pow 1 3) (pow (* 2 (pow (/ t l) 2)) 3))))))
332.0ms
(exp (* 1/3 (- (+ (log 2) (* 2 (log (/ -1 l)))) (* 2 (log (/ -1 t))))))

prune1.7s

Pruning

7 alts after pruning (5 fresh and 2 done)

Merged error: 10.4b

localize43.0ms

Local error

Found 4 expressions with local error:

15.3b
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))
15.3b
(cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
1.9b
(sqrt (cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
0.3b
(asin (* (fabs (cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))) (sqrt (cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))))

rewrite16.0ms

Algorithm
rewrite-expression-head
Counts
4 → 86
Calls

4 calls. Slowest were:

7.0ms
(sqrt (cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
4.0ms
(cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
3.0ms
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))

series736.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

264.0ms
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))
217.0ms
(sqrt (cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
213.0ms
(cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
42.0ms
(asin (* (fabs (cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))) (sqrt (cbrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))))

simplify9.1s

Counts
66 → 98
Calls

66 calls. Slowest were:

485.0ms
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ (pow 1 3) (pow (* 2 (* (/ t l) (/ t l))) 3))))
378.0ms
(cbrt (sqrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l)))))))
360.0ms
(asin (* (pow (/ (- 1 (/ (pow Om 2) (pow Omc 2))) (+ (* 2 (/ (pow t 2) (pow l 2))) 1)) 1/6) (fabs (pow (/ (- 1 (/ (pow Om 2) (pow Omc 2))) (+ (* 2 (/ (pow t 2) (pow l 2))) 1)) 1/3))))

prune2.2s

Pruning

7 alts after pruning (4 fresh and 3 done)

Merged error: 10.4b

localize32.0ms

Local error

Found 4 expressions with local error:

15.3b
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))
10.0b
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
10.0b
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
6.9b
(cbrt (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))

rewrite21.0ms

Algorithm
rewrite-expression-head
Counts
4 → 103
Calls

4 calls. Slowest were:

6.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
6.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
4.0ms
(cbrt (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))

series699.0ms

Counts
4 → 12
Calls

4 calls. Slowest were:

262.0ms
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ 1 (* 2 (* (/ t l) (/ t l))))))
194.0ms
(cbrt (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2))))))
128.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))
115.0ms
(sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ 1 (* 2 (pow (/ t l) 2)))))

simplify10.0s

Counts
83 → 115
Calls

83 calls. Slowest were:

602.0ms
(cbrt (sqrt (/ (- 1 (pow (/ Om Omc) 2)) (+ (pow 1 3) (pow (* 2 (pow (/ t l) 2)) 3)))))
413.0ms
(cbrt (/ (- 1 (* (/ Om Omc) (/ Om Omc))) (+ (pow 1 3) (pow (* 2 (* (/ t l) (/ t l))) 3))))
385.0ms
(exp (* 1/3 (- (+ (* 2 (log (/ 1 t))) (+ (* 2 (log (/ 1 Omc))) (log -1/2))) (+ (* 2 (log (/ 1 Om))) (* 2 (log (/ 1 l)))))))

prune3.4s

Pruning

6 alts after pruning (3 fresh and 3 done)

Merged error: 10.4b

regimes1.3s

Accuracy

0% (0.1b remaining)

Error of 10.3b against oracle of 10.2b and baseline of 10.3b

bsearch2.0ms

end0.0ms

sample5.4s

Algorithm
intervals