Herbie run

Date:Wednesday, November 27th, 2024
Commit:27374272 on bhargav-bigfloat
Hostname:nightly with Racket 8.10
Seed:2024332
Parameters:256 points for 4 iterations
Flags:
localize:costslocalize:errorsreduce:regimesreduce:binary-searchreduce:branch-expressionssetup:simplifysetup:searchrules:arithmeticrules:polynomialsrules:fractionsrules:exponentsrules:trigonometryrules:hyperbolicrules:numericsrules:specialrules:boolsrules:branchesgenerate:rrgenerate:taylorgenerate:simplifygenerate:proofs
default

Time bar (total: 7.4min)

sample2.2min (30.3%)

Memory
167.0MiB live, 34 301.5MiB allocated
Samples
33.2s108 193×1valid
28.1s294 268×0valid
24.6s14 086×5exit
11.2s23 829×2valid
4.7s2 993×3valid
4.4s35 383×0exit
2.1s20 664×0invalid
1.6s11 434×1invalid
267.0ms854×2invalid
266.0ms3 505×1exit
178.0ms29×4valid
12.0ms4exit
Precisions
Click to see histograms. Total time spent on operations: 1.6min
ival-pow: 21.0s (21.9% of total)
ival-mult: 10.6s (11% of total)
ival-cos: 7.4s (7.7% of total)
ival-div: 7.0s (7.3% of total)
adjust: 6.9s (7.2% of total)
ival-sin: 5.6s (5.8% of total)
ival-pow2: 4.9s (5.1% of total)
ival-sub: 4.3s (4.5% of total)
ival-add: 4.1s (4.2% of total)
ival-sinu: 4.0s (4.2% of total)
ival-exp: 4.0s (4.1% of total)
ival-cosu: 3.7s (3.9% of total)
ival-log: 2.9s (3% of total)
ival-sqrt: 2.4s (2.5% of total)
ival-neg: 1.3s (1.3% of total)
const: 1.2s (1.2% of total)
ival-<: 958.0ms (1% of total)
ival-atan2: 595.0ms (0.6% of total)
ival-tan: 462.0ms (0.5% of total)
ival-hypot: 458.0ms (0.5% of total)
exact: 325.0ms (0.3% of total)
ival-acos: 319.0ms (0.3% of total)
ival-and: 295.0ms (0.3% of total)
ival-true: 256.0ms (0.3% of total)
ival-atan: 242.0ms (0.3% of total)
ival-cbrt: 212.0ms (0.2% of total)
ival-assert: 167.0ms (0.2% of total)
ival-asin: 129.0ms (0.1% of total)
ival-fabs: 108.0ms (0.1% of total)
ival-log1p: 104.0ms (0.1% of total)
ival-<=: 101.0ms (0.1% of total)
ival-pi: 89.0ms (0.1% of total)
ival-==: 1.0ms (0% of total)
ival-or: 0.0ms (0% of total)
Bogosity

simplify57.6s (13%)

Memory
462.2MiB live, 17 123.9MiB allocated
Algorithm
454×egg-herbie
Stop Event
603×iter limit
322×node limit
132×saturated
Counts
24 048 → 23 897

soundness47.9s (10.8%)

Memory
1.2MiB live, 751.0MiB allocated
Stop Event
425×iter limit
286×node limit
43×fuel
done
saturated
Compiler

Compiled 89 398 to 30 675 computations (65.7% saved)

localize43.2s (9.8%)

Memory
149.3MiB live, 13 881.6MiB allocated
Samples
14.1s14 606×1valid
6.9s27 806×0valid
6.0s4 274×2valid
3.5s489×5exit
1.0s164×4exit
934.0ms395×3valid
865.0ms2 254×0invalid
600.0ms330×1invalid
533.0ms565×1exit
443.0ms367×2exit
203.0ms35×2invalid
107.0ms3invalid
31.0ms156×0exit
30.0ms4valid
18.0ms3exit
Compiler

Compiled 265 951 to 20 025 computations (92.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 28.8s
ival-mult: 5.7s (19.9% of total)
ival-sin: 4.5s (15.5% of total)
ival-cos: 3.1s (10.7% of total)
ival-div: 2.7s (9.2% of total)
adjust: 2.5s (8.7% of total)
ival-add: 1.7s (6% of total)
ival-pow2: 1.2s (4.2% of total)
ival-pow: 1.2s (4.2% of total)
ival-sub: 829.0ms (2.9% of total)
const: 798.0ms (2.8% of total)
ival-sinu: 731.0ms (2.5% of total)
ival-sqrt: 675.0ms (2.3% of total)
ival-exp: 590.0ms (2% of total)
ival-cosu: 534.0ms (1.9% of total)
ival-log: 476.0ms (1.7% of total)
ival-neg: 249.0ms (0.9% of total)
ival-atan2: 239.0ms (0.8% of total)
ival-hypot: 194.0ms (0.7% of total)
ival-log1p: 173.0ms (0.6% of total)
ival-cbrt: 110.0ms (0.4% of total)
ival-atan: 103.0ms (0.4% of total)
ival-tan: 102.0ms (0.4% of total)
ival-acos: 96.0ms (0.3% of total)
exact: 87.0ms (0.3% of total)
ival-pi: 58.0ms (0.2% of total)
ival-fabs: 58.0ms (0.2% of total)
ival-true: 39.0ms (0.1% of total)
ival-asin: 38.0ms (0.1% of total)
ival-assert: 18.0ms (0.1% of total)
ival-cosh: 11.0ms (0% of total)
ival-expm1: 4.0ms (0% of total)
ival-copysign: 4.0ms (0% of total)
ival-sinh: 3.0ms (0% of total)
ival-tanh: 1.0ms (0% of total)

rewrite31.1s (7%)

Memory
25.8MiB live, 12 396.2MiB allocated
Stop Event
405×iter limit
200×node limit
saturated
Counts
3 670 → 131 409

regimes28.7s (6.5%)

Memory
-86.0MiB live, 13 129.6MiB allocated
Counts
19 913 → 872
Calls

155 calls:

1.8s
b
1.6s
a
1.5s
phi1
1.4s
phi2
1.2s
lambda1
Compiler

Compiled 22 332 to 16 429 computations (26.4% saved)

eval23.1s (5.2%)

Memory
480.8MiB live, 17 124.7MiB allocated
Compiler

Compiled 11 605 512 to 734 344 computations (93.7% saved)

prune18.4s (4.2%)

Memory
-701.4MiB live, 19 171.1MiB allocated
Counts
162 541 → 7 599
Compiler

Compiled 1 146 813 to 442 316 computations (61.4% saved)

series16.1s (3.6%)

Memory
-78.0MiB live, 7 789.7MiB allocated
Counts
3 670 → 24 048
Calls

1644 calls:

TimeVariablePointExpression
149.0ms
s
@inf
((- (+ (* (neg (log (+ 1 (exp (neg s))))) c_p) (* (log (+ 1 (pow (- -1 (exp (neg s))) -1))) c_n)) (+ (* (neg (log (+ 1 (exp (neg t))))) c_p) (* (log (+ 1 (pow (- -1 (exp (neg t))) -1))) c_n))) (+ (* (neg (log (+ 1 (exp (neg s))))) c_p) (* (log (+ 1 (pow (- -1 (exp (neg s))) -1))) c_n)) (neg (log (+ 1 (exp (neg s))))) (log (+ 1 (exp (neg s)))) (/ (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (pow (/ 1 (+ (exp (neg t)) 1)) c_p)) (/ (* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))) (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (+ (exp (neg s)) 1) (- 1 (/ 1 (+ 1 (exp (neg s))))) (- 1 (/ 1 (+ 1 (exp (neg t))))) (/ (* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))) (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (/ (* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))) (+ 1 (exp (neg s))) (+ (* (neg (* t (/ (* (* (pow 1/2 c_p) (pow 1/2 c_n)) (+ (* 1/2 c_p) (* -1/2 c_n))) (pow (pow 1/2 c_n) 2)))) (* (pow (- 1 (/ 1 (+ (exp (neg s)) 1))) c_n) (/ (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (pow (pow 1/2 c_p) 2)))) (* (/ (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (* (pow 1/2 c_p) (pow 1/2 c_n))) (pow (- 1 (/ 1 (+ (exp (neg s)) 1))) c_n))) (/ (* (* (pow 1/2 c_p) (pow 1/2 c_n)) (+ (* 1/2 c_p) (* -1/2 c_n))) (pow (pow 1/2 c_n) 2)) (- 1 (/ 1 (+ (exp (neg s)) 1))) (/ (* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))) (log (+ 1 (exp (neg t)))) (log (+ 1 (pow (- -1 (exp (neg t))) -1))) (pow (/ 1 (+ (exp (neg t)) 1)) c_p) (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n) (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (/ (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (* (pow 1/2 c_p) (pow 1/2 c_n))) (/ (pow (/ 1 (+ (exp (neg s)) 1)) c_p) (pow (pow 1/2 c_p) 2)))
96.0ms
a
@0
((+ (cbrt (* (/ 1 (* 2 a)) (+ (neg g) (sqrt (- (* g g) (* h h)))))) (cbrt (* (/ 1 (* 2 a)) (- (neg g) (sqrt (- (* g g) (* h h))))))) (cbrt (* (/ 1 (* 2 a)) (+ (neg g) (sqrt (- (* g g) (* h h)))))) (/ (cbrt (* (* (/ h g) h) -1/4)) (cbrt a)) (cbrt (* (* (/ h g) h) -1/4)) (+ (* (cbrt (/ 1/2 a)) (cbrt (- (sqrt (* (- g h) (+ h g))) g))) (cbrt (* (/ 1 (* 2 a)) (- (neg g) (sqrt (- (* g g) (* h h))))))) (+ (* (cbrt (/ 1/2 a)) (cbrt (- (sqrt (* (- g h) (+ h g))) g))) (cbrt (* (/ 1 (* 2 a)) (- (neg g) (sqrt (- (* g g) (* h h))))))) (* (* (cbrt (/ g a)) (cbrt -1/2)) (cbrt 2)) (* (cbrt (/ g a)) (cbrt -1/2)) (cbrt (/ g a)) (+ (* (cbrt 1/2) (cbrt (/ (- (neg g) (sqrt (* (+ h g) (- g h)))) a))) (cbrt (* (- (sqrt (* (+ h g) (- g h))) g) (/ 1/2 a)))) (cbrt 1/2) (cbrt (/ (- (neg g) (sqrt (* (+ h g) (- g h)))) a)) (/ (- (neg g) (sqrt (* (+ h g) (- g h)))) a) (pow (/ 1/2 a) 1/2) (+ (* (pow (* a 2) -1/6) (cbrt (* (pow (/ 1/2 a) 1/2) (- (neg g) (sqrt (* (+ h g) (- g h))))))) (cbrt (* (- (sqrt (* (+ h g) (- g h))) g) (/ 1/2 a)))) (pow (* a 2) -1/6) (* a 2) (* (/ 1 (* 2 a)) (- (neg g) (sqrt (- (* g g) (* h h))))) (cbrt (* (/ 1 (* 2 a)) (- (neg g) (sqrt (- (* g g) (* h h)))))) (cbrt 2) (sqrt (* (+ h g) (- g h))) (cbrt (* (- (sqrt (* (+ h g) (- g h))) g) (/ 1/2 a))) (- (neg g) (sqrt (* (+ h g) (- g h)))) (cbrt (* (pow (/ 1/2 a) 1/2) (- (neg g) (sqrt (* (+ h g) (- g h)))))))
79.0ms
s
@inf
((* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (/ 1 (+ 1 (exp (neg s)))) (+ 1 (exp (neg s))) (/ (* (pow (/ 1 (+ 1 (exp (neg s)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg s))))) c_n)) (* (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))) (pow (/ 1 (+ 1 (exp (neg t)))) c_p) (pow (- 1 (/ 1 (+ 1 (exp (neg t))))) c_n))
70.0ms
phi2
@-inf
((/ (cos (+ lambda2 lambda1)) (* (cos (- lambda2 lambda1)) (cos (+ lambda2 lambda1)))) (/ 1 (/ (cos (+ lambda2 lambda1)) (* (cos (- lambda2 lambda1)) (cos (+ lambda2 lambda1))))) (+ (cos phi1) (* (cos phi2) (/ 1 (/ (cos (+ lambda2 lambda1)) (* (cos (- lambda2 lambda1)) (cos (+ lambda2 lambda1))))))) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (/ 1 (/ (cos (+ lambda2 lambda1)) (* (cos (- lambda2 lambda1)) (cos (+ lambda2 lambda1))))))))) (/ 1 (/ 1 (+ (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) lambda1))) (/ 1 (+ (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) lambda1)) (pow (* lambda1 lambda1) -1/2) (* lambda1 lambda1) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2))))) (* (cos phi2) (sin (- lambda1 lambda2))) (cos phi2) (exp (log (+ (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) lambda1))) (log (+ (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) lambda1)) (+ (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) lambda1) (atan2 (* (sin (- lambda1 lambda2)) (cos phi2)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))) (* (- (- (pow (* (cos (- lambda2 lambda1)) (cos phi2)) 2) 1/2) (* (cos (* 2 phi1)) 1/2)) (/ 1 (- (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1)))) (- (- (pow (* (cos (- lambda2 lambda1)) (cos phi2)) 2) 1/2) (* (cos (* 2 phi1)) 1/2)) (+ lambda1 (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (* (- (- (pow (* (cos (- lambda2 lambda1)) (cos phi2)) 2) 1/2) (* (cos (* 2 phi1)) 1/2)) (/ 1 (- (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1)))))) (atan2 (* (cos phi2) (sin (- lambda1 lambda2))) (* (- (- (pow (* (cos (- lambda2 lambda1)) (cos phi2)) 2) 1/2) (* (cos (* 2 phi1)) 1/2)) (/ 1 (- (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1))))) (cos (- lambda2 lambda1)) (cos (+ lambda2 lambda1)) (sin (- lambda1 lambda2)) (+ (cos phi1) (* (cos phi2) (cos (- lambda1 lambda2)))) (cos (- lambda2 lambda1)) (+ (cos (- lambda2 lambda1)) (cos phi1)) (+ (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1)) (- (* (cos (- lambda2 lambda1)) (cos phi2)) (cos phi1)))
70.0ms
x-scale
@0
((* 180 (/ (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (PI))) (/ (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (PI)) (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale)) (* 180 (/ (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (PI))) (/ (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (PI)) (atan (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale))) (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale)) (- (+ (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400) (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400))) (- (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400) (+ (* (/ (+ (* (* (- (+ (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400) (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400))) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 2) (* (* (* (PI) (PI)) (/ (pow (* (+ b a) (- b a)) 2) (* (* y-scale x-scale) (* y-scale x-scale)))) 1/8100)) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 1/2) (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400)))) (+ (* (/ (* (* x-scale y-scale) (- (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400) (+ (* (/ (+ (* (* (- (+ (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400) (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400))) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 2) (* (* (* (PI) (PI)) (/ (pow (* (+ b a) (- b a)) 2) (* (* y-scale x-scale) (* y-scale x-scale)))) 1/8100)) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 1/2) (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400))))) (* (* (+ b a) (- b a)) (PI))) 180) (* -32400 (/ (* (* x-scale y-scale) (* (* (* (pow (PI) 3) (* (+ b a) (- b a))) -1/8748000) (* 2 (- (/ (* a a) (* y-scale y-scale)) (/ (* b b) (* x-scale x-scale)))))) (* (pow (* (+ b a) (- b a)) 2) (* (PI) (PI)))))) (* (* (* (pow (PI) 3) (* (+ b a) (- b a))) -1/8748000) (* 2 (- (/ (* a a) (* y-scale y-scale)) (/ (* b b) (* x-scale x-scale))))) (pow b 2) (pow a 2) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) (- (pow b 2) (pow a 2)) (+ (* (- (* (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) y-scale) x-scale) (* y-scale (/ (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) x-scale))) (pow (* y-scale x-scale) -1)) (neg (sqrt (+ (* (/ (/ (* (* (+ b a) (- b a)) (sin (* 2 (* (PI) (* 1/180 angle))))) x-scale) y-scale) (/ (/ (* (* (+ b a) (- b a)) (sin (* 2 (* (PI) (* 1/180 angle))))) x-scale) y-scale)) (* (+ (* (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) (pow x-scale -2)) (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) (neg (* y-scale y-scale)))) (+ (* (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) (pow x-scale -2)) (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) (neg (* y-scale y-scale))))))))) (/ (/ (* (* (+ b a) (- b a)) (sin (* 2 (* (PI) (* 1/180 angle))))) x-scale) y-scale) (cos (* (* (PI) angle) 1/180)) (sin (* (* (PI) angle) 1/180)) (* (* x-scale y-scale) (- (- (/ (pow (sin (* (* (PI) angle) 1/180)) 2) (* y-scale y-scale)) (sqrt (+ (* (* (pow (cos (* (* (PI) angle) 1/180)) 2) (/ (pow (sin (* (* (PI) angle) 1/180)) 2) (* (* y-scale x-scale) (* y-scale x-scale)))) 4) (pow (- (/ (pow (cos (* (* (PI) angle) 1/180)) 2) (* x-scale x-scale)) (/ (pow (sin (* (* (PI) angle) 1/180)) 2) (* y-scale y-scale))) 2)))) (/ (pow (cos (* (* (PI) angle) 1/180)) 2) (* x-scale x-scale)))) (/ (* (* 2 (- (/ (* a a) (* y-scale y-scale)) (/ (* b b) (* x-scale x-scale)))) y-scale) (* (* (+ b a) (- b a)) (PI))) (PI) (/ (* b b) (* x-scale x-scale)) (/ (* (* x-scale y-scale) (* (* (* (pow (PI) 3) (* (+ b a) (- b a))) -1/8748000) (* 2 (- (/ (* a a) (* y-scale y-scale)) (/ (* b b) (* x-scale x-scale)))))) (* (pow (* (+ b a) (- b a)) 2) (* (PI) (PI)))) (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale)) (/ (+ (* (* (- (+ (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400) (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400))) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 2) (* (* (* (PI) (PI)) (/ (pow (* (+ b a) (- b a)) 2) (* (* y-scale x-scale) (* y-scale x-scale)))) 1/8100)) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) (/ (* (* x-scale y-scale) (- (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400) (+ (* (/ (+ (* (* (- (+ (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400) (* (/ (* (* (PI) b) (* (PI) b)) (* x-scale x-scale)) -1/32400)) (+ (* (/ (* (* (PI) b) (* (PI) b)) (* y-scale y-scale)) 1/32400) (* (/ (* (* (PI) a) (* (PI) a)) (* y-scale y-scale)) -1/32400))) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 2) (* (* (* (PI) (PI)) (/ (pow (* (+ b a) (- b a)) 2) (* (* y-scale x-scale) (* y-scale x-scale)))) 1/8100)) (- (/ (* b b) (* x-scale x-scale)) (/ (* a a) (* y-scale y-scale)))) 1/2) (* (/ (* (* (PI) a) (* (PI) a)) (* x-scale x-scale)) 1/32400))))) (* (* (+ b a) (- b a)) (PI))) (/ (- (- (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale) (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale)) (sqrt (+ (pow (- (/ (/ (+ (pow (* a (sin (* (/ angle 180) (PI)))) 2) (pow (* b (cos (* (/ angle 180) (PI)))) 2)) x-scale) x-scale) (/ (/ (+ (pow (* a (cos (* (/ angle 180) (PI)))) 2) (pow (* b (sin (* (/ angle 180) (PI)))) 2)) y-scale) y-scale)) 2) (pow (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale) 2)))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale)) (cos (* (/ angle 180) (PI))) (/ (+ (* (- (* (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) y-scale) x-scale) (* y-scale (/ (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) x-scale))) (pow (* y-scale x-scale) -1)) (neg (sqrt (+ (* (/ (/ (* (* (+ b a) (- b a)) (sin (* 2 (* (PI) (* 1/180 angle))))) x-scale) y-scale) (/ (/ (* (* (+ b a) (- b a)) (sin (* 2 (* (PI) (* 1/180 angle))))) x-scale) y-scale)) (* (+ (* (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) (pow x-scale -2)) (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) (neg (* y-scale y-scale)))) (+ (* (+ (pow (* (cos (* (PI) (* 1/180 angle))) b) 2) (pow (* (sin (* (PI) (* 1/180 angle))) a) 2)) (pow x-scale -2)) (/ (+ (pow (* b (sin (* (PI) (* 1/180 angle)))) 2) (pow (* (cos (* (PI) (* 1/180 angle))) a) 2)) (neg (* y-scale y-scale))))))))) (/ (/ (* (* (* 2 (- (pow b 2) (pow a 2))) (sin (* (/ angle 180) (PI)))) (cos (* (/ angle 180) (PI)))) x-scale) y-scale)) (cos (* (PI) (* 1/180 angle))))

explain14.2s (3.2%)

Memory
-229.7MiB live, 6 556.9MiB allocated
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
cos.f64#fsensitivity19510
+.f64#fcancellation170845
sin.f64#fsensitivity16651
sqrt.f64#foflow-rescue13760
-.f64#fcancellation94016
-.f64#fnan-rescue6490
log.f64#fsensitivity5861
/.f64#fo/n5090
/.f64#fo/o3650
/.f64#fu/u2660
*.f64#fn*o2350
sqrt.f64#fuflow-rescue1680
/.f64#fu/n1670
exp.f64#fsensitivity16037
/.f64#fn/o1030
cbrt.f64#foflow-rescue970
*.f64#fn*u790
*.f64#fo*u480
cbrt.f64#fuflow-rescue470
/.f64#fn/u350
*.f64#fu*o210
acos.f64(acos.f64 (+.f64 (*.f64 (sin.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))sensitivity171
pow.f64#fuflow-rescue140
pow.f64#fsensitivity90
log.f64#foflow-rescue50
log.f64(log.f64 (+.f64 (exp.f64 a) (exp.f64 b)))uflow-rescue10
(+.f64 (exp.f64 a) (exp.f64 b))underflow1
(exp.f64 a)underflow63
(exp.f64 b)underflow70
Confusion
Predicted +Predicted -
+572586
-14026099
Precision
0.803283288901361
Recall
0.9852004818447772
Confusion?
Predicted +Predicted MaybePredicted -
+57256224
-1402316068
Precision?
0.8015235457063712
Recall?
0.9958699019101703
Freqs
test
numberfreq
06185
14695
21634
3332
4220
5138
674
726
86
92
Total Confusion?
Predicted +Predicted MaybePredicted -
+4300
-216
Precision?
0.9347826086956522
Recall?
1.0
Total Time
3148.09716796875
Average Time
0.23648566466111404
Samples
2.4s6 936×1valid
1.8s17 378×0valid
1.5s2 002×2valid
367.0ms304×3valid
10.0ms4valid
Compiler

Compiled 29 036 to 3 336 computations (88.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.8s
ival-sin: 880.0ms (18.3% of total)
ival-mult: 642.0ms (13.4% of total)
ival-cos: 562.0ms (11.7% of total)
ival-div: 379.0ms (7.9% of total)
adjust: 329.0ms (6.9% of total)
ival-pow2: 279.0ms (5.8% of total)
ival-sinu: 257.0ms (5.4% of total)
ival-cosu: 251.0ms (5.2% of total)
ival-sub: 219.0ms (4.6% of total)
ival-add: 201.0ms (4.2% of total)
ival-exp: 185.0ms (3.9% of total)
ival-log: 154.0ms (3.2% of total)
ival-sqrt: 133.0ms (2.8% of total)
ival-neg: 51.0ms (1.1% of total)
ival-tan: 44.0ms (0.9% of total)
ival-atan2: 37.0ms (0.8% of total)
ival-hypot: 31.0ms (0.6% of total)
ival-atan: 24.0ms (0.5% of total)
ival-true: 21.0ms (0.4% of total)
ival-acos: 19.0ms (0.4% of total)
ival-pow: 19.0ms (0.4% of total)
ival-pi: 16.0ms (0.3% of total)
ival-cbrt: 16.0ms (0.3% of total)
exact: 16.0ms (0.3% of total)
ival-fabs: 10.0ms (0.2% of total)
ival-assert: 9.0ms (0.2% of total)
ival-asin: 8.0ms (0.2% of total)
ival-log1p: 5.0ms (0.1% of total)

analyze11.3s (2.6%)

Memory
-20.2MiB live, 3 942.1MiB allocated
Algorithm
53×search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%79.4%20.6%0%0%0%0
17.2%13.7%65.7%20.6%0%0%0%1
25%19.6%58.5%20.6%0%1.3%0%2
35.2%26.6%48.9%20.6%0%3.8%0%3
42.3%31.7%43.1%20.6%0%4.5%0%4
47.9%35.6%38.7%20.6%0%5.1%0%5
51%37.6%36.1%20.6%0%5.7%0%6
54.4%39.7%33.2%20.6%0%6.5%0%7
56.2%40.7%31.8%20.6%0%6.8%0%8
59%42.5%29.5%20.6%0%7.4%0%9
60.3%43.2%28.4%20.6%0%7.7%0%10
62.1%44.3%27%20.6%0%8.1%0%11
63.6%45.1%25.8%20.6%0%8.5%0%12
Compiler

Compiled 1 826 to 964 computations (47.2% saved)

preprocess10.9s (2.5%)

Memory
70.5MiB live, 3 330.3MiB allocated
Algorithm
52×egg-herbie
Stop Event
104×iter limit
61×saturated
43×node limit
Compiler

Compiled 179 505 to 36 996 computations (79.4% saved)

bsearch6.1s (1.4%)

Memory
-11.1MiB live, 1 767.9MiB allocated
Algorithm
257×binary-search
112×left-value
Stop Event
251×narrow-enough
predicate-same
Samples
2.3s4 690×1valid
1.5s11 880×0valid
509.0ms995×2valid
201.0ms131×3valid
28.0ms377×0invalid
1.0ms15×0exit
Compiler

Compiled 224 047 to 123 165 computations (45% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0s
ival-cos: 729.0ms (18.1% of total)
ival-sin: 715.0ms (17.7% of total)
ival-mult: 606.0ms (15% of total)
ival-pow2: 304.0ms (7.5% of total)
ival-div: 266.0ms (6.6% of total)
adjust: 265.0ms (6.6% of total)
ival-sinu: 238.0ms (5.9% of total)
ival-cosu: 226.0ms (5.6% of total)
ival-sub: 181.0ms (4.5% of total)
ival-add: 123.0ms (3.1% of total)
ival-sqrt: 88.0ms (2.2% of total)
ival-atan2: 62.0ms (1.5% of total)
ival-acos: 50.0ms (1.2% of total)
ival-atan: 31.0ms (0.8% of total)
ival-neg: 23.0ms (0.6% of total)
ival-tan: 23.0ms (0.6% of total)
ival-exp: 20.0ms (0.5% of total)
ival-hypot: 20.0ms (0.5% of total)
ival-asin: 13.0ms (0.3% of total)
ival-true: 12.0ms (0.3% of total)
exact: 8.0ms (0.2% of total)
ival-pi: 7.0ms (0.2% of total)
ival-assert: 6.0ms (0.1% of total)
ival-fabs: 6.0ms (0.1% of total)
ival-log: 5.0ms (0.1% of total)
ival-log1p: 3.0ms (0.1% of total)

start2.0ms (0%)

Memory
-6.1MiB live, 1.8MiB allocated

end0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

Profiling

Loading profile data...