math.arg on complex

Time bar (total: 1.7s)

analyze1.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
50%50%50%0.1%0%0%0%2
75%74.9%25%0.1%0%0%0%3
87.5%87.4%12.5%0.1%0%0%0%4
93.8%93.7%6.2%0.1%0%0%0%5
96.9%96.8%3.1%0.1%0%0%0%6
98.4%98.3%1.6%0.1%0%0%0%7
99.2%99.1%0.8%0.1%0%0%0%8
99.6%99.5%0.4%0.1%0%0%0%9
99.8%99.7%0.2%0.1%0%0%0%10
99.9%99.8%0.1%0.1%0%0%0%11
100%99.9%0%0.1%0%0%0%12
Compiler

Compiled 6 to 4 computations (33.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-atan2: 0.0ms (0% of total)
const: 0.0ms (0% of total)

sample1.5s (86.9%)

Results
1.0s8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 158.0ms
ival-atan2: 146.0ms (92.3% of total)
const: 8.0ms (5.1% of total)
backward-pass: 4.0ms (2.5% of total)
Bogosity

preprocess38.0ms (2.2%)

Algorithm
egg-herbie
Rules
12×sub-neg
fma-define
+-commutative
*-commutative
associate--r+
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016115
126115
234115
339115
456115
569115
680115
Stop Event
saturated
Calls
Call 1
Inputs
(atan2.f64 im re)
(atan2.f64 im re)
(atan2.f64 im (neg.f64 re))
(atan2.f64 (neg.f64 im) re)
(neg.f64 (atan2.f64 im (neg.f64 re)))
(neg.f64 (atan2.f64 (neg.f64 im) re))
(atan2.f64 re im)
Outputs
(atan2.f64 im re)
(atan2.f64 im re)
(atan2.f64 im (neg.f64 re))
(atan2.f64 (neg.f64 im) re)
(neg.f64 (atan2.f64 im (neg.f64 re)))
(neg.f64 (atan2.f64 (neg.f64 im) re))
(atan2.f64 re im)

explain48.0ms (2.8%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
00-0-im
00-0-(atan2.f64 im re)
00-0-re
Results
37.0ms512×256valid
Compiler

Compiled 21 to 11 computations (47.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-atan2: 10.0ms (92.6% of total)
const: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(atan2.f64 im re)
Compiler

Compiled 5 to 3 computations (40% saved)

localize22.0ms (1.3%)

Results
18.0ms256×256valid
Compiler

Compiled 8 to 4 computations (50% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-atan2: 3.0ms (97.6% of total)
const: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0.1%)

Pruning

1 alts after pruning (0 fresh and 1 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done000
Total011
Accuracy
100.0%
Counts
1 → 1
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(atan2.f64 im re)
Compiler

Compiled 10 to 6 computations (40% saved)

simplify93.0ms (5.5%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0813
Stop Event
saturated
Calls
Call 1
Inputs
(atan2.f64 im re)
Outputs
(atan2.f64 im re)

soundness0.0ms (0%)

Stop Event
done
Compiler

Compiled 5 to 3 computations (40% saved)

preprocess19.0ms (1.1%)

Compiler

Compiled 20 to 12 computations (40% saved)

end0.0ms (0%)

Profiling

Loading profile data...