ABCF->ab-angle b

Time bar (total: 5.9s)

analyze518.0ms (8.7%)

Memory
-20.8MiB live, 548.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
3.2%3.1%95.1%0.2%0%1.6%0%7
11.9%10.9%81.1%0.2%0%7.8%0%8
12%10.9%80.3%0.2%0%8.6%0%9
13.5%12.1%77.6%0.2%0%10.1%0%10
17.5%15.2%71.5%0.2%0%13.1%0%11
24.3%20.1%62.4%0.2%0%17.3%0%12
Compiler

Compiled 42 to 24 computations (42.9% saved)

sample4.1s (69.2%)

Memory
-27.7MiB live, 4 398.8MiB allocated
Samples
981.0ms5 611×0valid
606.0ms2 141×1valid
579.0ms1 947×1invalid
451.0ms2 962×0invalid
188.0ms491×2valid
136.0ms414×2invalid
6.0ms13×3valid
Precisions
Click to see histograms. Total time spent on operations: 2.3s
ival-mult: 638.0ms (27.4% of total)
ival-pow2: 420.0ms (18% of total)
ival-sqrt: 310.0ms (13.3% of total)
ival-sub: 299.0ms (12.8% of total)
ival-add: 212.0ms (9.1% of total)
ival-div: 188.0ms (8.1% of total)
adjust: 133.0ms (5.7% of total)
ival-neg: 97.0ms (4.2% of total)
exact: 16.0ms (0.7% of total)
ival-true: 12.0ms (0.5% of total)
ival-assert: 6.0ms (0.3% of total)
Bogosity

preprocess1.3s (21.7%)

Memory
32.6MiB live, 623.3MiB allocated
Algorithm
egg-herbie
Rules
25 372×accelerator-lowering-fma.f32
25 372×accelerator-lowering-fma.f64
4 974×+-lowering-+.f64
4 974×+-lowering-+.f32
4 748×*-lowering-*.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0162621
1474600
21649590
35634585
02240
15440
216440
375039
4383439
0806133
Stop Event
iter limit
node limit
node limit
Calls
Call 1
Inputs
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
Outputs
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
(-.f64 #s(literal 0 binary64) (/.f64 (sqrt.f64 (*.f64 (fma.f64 B B (fma.f64 (*.f64 A C) #s(literal -4 binary64) #s(literal 0 binary64))) (*.f64 F (*.f64 #s(literal 2 binary64) (-.f64 (+.f64 A C) (sqrt.f64 (fma.f64 B B (*.f64 (-.f64 A C) (-.f64 A C))))))))) (fma.f64 B B (fma.f64 (*.f64 A C) #s(literal -4 binary64) #s(literal 0 binary64)))))
Call 2
Inputs
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 (neg A)) C)) F)) (- (+ (neg A) C) (sqrt (+ (pow (- (neg A) C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 (neg A)) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow (neg B) 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow (neg B) 2))))))) (- (pow (neg B) 2) (* (* 4 A) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) (neg C))) F)) (- (+ A (neg C)) (sqrt (+ (pow (- A (neg C)) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) (neg C))))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) (neg F))) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 (neg A)) C)) F)) (- (+ (neg A) C) (sqrt (+ (pow (- (neg A) C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 (neg A)) C))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow (neg B) 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow (neg B) 2))))))) (- (pow (neg B) 2) (* (* 4 A) C))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) (neg C))) F)) (- (+ A (neg C)) (sqrt (+ (pow (- A (neg C)) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) (neg C)))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) (neg F))) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C))))
(/ (neg (sqrt (* (* 2 (* (- (pow A 2) (* (* 4 B) C)) F)) (- (+ B C) (sqrt (+ (pow (- B C) 2) (pow A 2))))))) (- (pow A 2) (* (* 4 B) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 C) A)) F)) (- (+ C A) (sqrt (+ (pow (- C A) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 C) A)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 F) C)) A)) (- (+ F C) (sqrt (+ (pow (- F C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 F) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow C 2) (* (* 4 A) B)) F)) (- (+ A B) (sqrt (+ (pow (- A B) 2) (pow C 2))))))) (- (pow C 2) (* (* 4 A) B)))
(/ (neg (sqrt (* (* 2 (* (- (pow F 2) (* (* 4 A) C)) B)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow F 2))))))) (- (pow F 2) (* (* 4 A) C)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) F)) C)) (- (+ A F) (sqrt (+ (pow (- A F) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) F)))
Outputs
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
(/ (sqrt (* 2 (* (* (+ (* B B) (* A (* C -4))) F) (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2))))))) (- (* 4 (* A C)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 (neg A)) C)) F)) (- (+ (neg A) C) (sqrt (+ (pow (- (neg A) C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 (neg A)) C)))
(/ (sqrt (* (- (- C A) (sqrt (+ (* B B) (pow (+ A C) 2)))) (* (+ (* B B) (* 4 (* A C))) (* 2 F)))) (- (* A (* C -4)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow (neg B) 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow (neg B) 2))))))) (- (pow (neg B) 2) (* (* 4 A) C)))
(/ (sqrt (* 2 (* (* (+ (* B B) (* A (* C -4))) F) (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2))))))) (- (* 4 (* A C)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) (neg C))) F)) (- (+ A (neg C)) (sqrt (+ (pow (- A (neg C)) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) (neg C))))
(/ (sqrt (* (* (+ (* B B) (* 4 (* A C))) (* 2 F)) (- (- A C) (sqrt (+ (* B B) (pow (+ A C) 2)))))) (- (* A (* C -4)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) (neg F))) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C)))
(/ (sqrt (* (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2)))) (* (+ (* B B) (* A (* C -4))) (* F -2)))) (- (* 4 (* A C)) (* B B)))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 (neg A)) C)) F)) (- (+ (neg A) C) (sqrt (+ (pow (- (neg A) C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 (neg A)) C))))
(/ (sqrt (* (- (- C A) (sqrt (+ (* B B) (pow (+ A C) 2)))) (* (+ (* B B) (* 4 (* A C))) (* 2 F)))) (+ (* B B) (* 4 (* A C))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow (neg B) 2) (* (* 4 A) C)) F)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow (neg B) 2))))))) (- (pow (neg B) 2) (* (* 4 A) C))))
(/ (sqrt (* 2 (* (* (+ (* B B) (* A (* C -4))) F) (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2))))))) (+ (* B B) (* A (* C -4))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) (neg C))) F)) (- (+ A (neg C)) (sqrt (+ (pow (- A (neg C)) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) (neg C)))))
(/ (sqrt (* (* (+ (* B B) (* 4 (* A C))) (* 2 F)) (- (- A C) (sqrt (+ (* B B) (pow (+ A C) 2)))))) (+ (* B B) (* 4 (* A C))))
(neg (/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) C)) (neg F))) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) C))))
(/ (sqrt (* (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2)))) (* (+ (* B B) (* A (* C -4))) (* F -2)))) (+ (* B B) (* A (* C -4))))
(/ (neg (sqrt (* (* 2 (* (- (pow A 2) (* (* 4 B) C)) F)) (- (+ B C) (sqrt (+ (pow (- B C) 2) (pow A 2))))))) (- (pow A 2) (* (* 4 B) C)))
(/ (sqrt (* (* 2 (* F (+ (* A A) (* B (* C -4))))) (- (+ B C) (sqrt (+ (* A A) (pow (- B C) 2)))))) (- (* B (* 4 C)) (* A A)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 C) A)) F)) (- (+ C A) (sqrt (+ (pow (- C A) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 C) A)))
(/ (sqrt (* 2 (* (* (+ (* B B) (* A (* C -4))) F) (- (+ A C) (sqrt (+ (* B B) (pow (- A C) 2))))))) (- (* 4 (* A C)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 F) C)) A)) (- (+ F C) (sqrt (+ (pow (- F C) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 F) C)))
(/ (sqrt (* (* (+ (* B B) (* F (* C -4))) (* 2 A)) (- (+ C F) (sqrt (+ (* B B) (pow (- F C) 2)))))) (- (* F (* 4 C)) (* B B)))
(/ (neg (sqrt (* (* 2 (* (- (pow C 2) (* (* 4 A) B)) F)) (- (+ A B) (sqrt (+ (pow (- A B) 2) (pow C 2))))))) (- (pow C 2) (* (* 4 A) B)))
(/ (sqrt (* 2 (* (* F (+ (* C C) (* (* B A) -4))) (- (+ B A) (sqrt (+ (* C C) (pow (- A B) 2))))))) (- (* 4 (* B A)) (* C C)))
(/ (neg (sqrt (* (* 2 (* (- (pow F 2) (* (* 4 A) C)) B)) (- (+ A C) (sqrt (+ (pow (- A C) 2) (pow F 2))))))) (- (pow F 2) (* (* 4 A) C)))
(/ (sqrt (* 2 (* (* B (+ (* F F) (* A (* C -4)))) (- (+ A C) (sqrt (+ (pow (- A C) 2) (* F F))))))) (- (* 4 (* A C)) (* F F)))
(/ (neg (sqrt (* (* 2 (* (- (pow B 2) (* (* 4 A) F)) C)) (- (+ A F) (sqrt (+ (pow (- A F) 2) (pow B 2))))))) (- (pow B 2) (* (* 4 A) F)))
(/ (sqrt (* (* (+ (* B B) (* A (* F -4))) (* 2 C)) (- (+ A F) (sqrt (+ (* B B) (pow (- A F) 2)))))) (- (* 4 (* A F)) (* B B)))
Symmetry

(abs B)

(sort A C)

explain29.0ms (0.5%)

Memory
-33.3MiB live, 5.4MiB allocated
Samples
1.0ms0valid
Compiler

Compiled 223 to 24 computations (89.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.0ms
ival-div: 0.0ms (0% of total)
ival-add: 0.0ms (0% of total)
ival-mult: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
ival-sub: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
ival-sqrt: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
ival-neg: 0.0ms (0% of total)
ival-pow2: 0.0ms (0% of total)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...