math.sqrt on complex, imaginary part, im greater than 0 branch

Time bar (total: 1.5s)

start0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

analyze77.0ms (5.3%)

Memory
3.3MiB live, 27.9MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%50%50%0%0%0%0
0%0%50%50%0%0%0%1
50%25%25%50%0%0%0%2
50%25%25%50%0%0%0%3
62.5%31.2%18.7%50%0%0%0%4
62.5%31.2%18.7%50%0%0%0%5
68.8%34.3%15.6%50%0%0%0%6
68.8%34.3%15.6%50%0%0%0%7
71.9%35.9%14%50%0%0%0%8
71.9%35.9%14%50%0%0%0%9
73.4%36.7%13.3%50%0%0%0%10
73.4%36.7%13.3%50%0%0%0%11
74.2%37.1%12.9%50%0%0%0%12
Compiler

Compiled 19 to 12 computations (36.8% saved)

sample32.0ms (2.2%)

Memory
2.7MiB live, 10.9MiB allocated
Samples
11.0ms193×0valid
5.0ms17×3valid
4.0ms23×2valid
3.0ms27×1valid
Precisions
Click to see histograms. Total time spent on operations: 18.0ms
ival-hypot: 7.0ms (39.9% of total)
ival-mult: 4.0ms (22.8% of total)
adjust: 2.0ms (11.4% of total)
ival-sub: 2.0ms (11.4% of total)
ival-sqrt: 2.0ms (11.4% of total)
ival->: 1.0ms (5.7% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain1.3s (87.5%)

Memory
2.3MiB live, 891.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1170-0-(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
3632(1.5317499384879829e+162 1.211343631094368e-249)0-(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)
240-24(8.104491507767065e+55 8.464920125118886e-158)(sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)))
00-0-(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
00-0-(*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))
00-0-(*.f64 re re)
00-0-im
00-0-(+.f64 (*.f64 re re) (*.f64 im im))
00-0-#s(literal 2 binary64)
00-0-re
00-0-#s(literal 1/2 binary64)
00-0-(*.f64 im im)
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))oflow-rescue1060
(+.f64 (*.f64 re re) (*.f64 im im))overflow106
(*.f64 re re)overflow62
(*.f64 im im)overflow62
-.f64(-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re)cancellation680
sqrt.f64(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))uflow-rescue110
(+.f64 (*.f64 re re) (*.f64 im im))underflow11
(*.f64 re re)underflow57
(*.f64 im im)underflow56
Confusion
Predicted +Predicted -
+1490
-0107
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+14900
-00107
Precision?
1.0
Recall?
1.0
2:
4:
8:
16:
32:
64:
128:
256:
512:
1024:
2048:
Freqs
test
numberfreq
0107
1113
236
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Total Time
7.331787109375
Average Time
0.028639793395996094
Samples
190.0ms2 268×0valid
72.0ms204×3valid
70.0ms276×2valid
56.0ms324×1valid
Compiler

Compiled 2 904 to 600 computations (79.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 271.0ms
ival-hypot: 85.0ms (31.4% of total)
ival-mult: 82.0ms (30.3% of total)
adjust: 36.0ms (13.3% of total)
ival-sqrt: 28.0ms (10.3% of total)
ival-sub: 20.0ms (7.4% of total)
ival-add: 15.0ms (5.5% of total)
exact: 3.0ms (1.1% of total)
ival-true: 2.0ms (0.7% of total)
ival-assert: 1.0ms (0.4% of total)

preprocess47.0ms (3.3%)

Memory
-0.5MiB live, 7.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03077
17175
215275
328575
442475
551575
663775
777575
883075
01215
02015
12515
23615
35215
47315
59815
615415
722715
831015
936015
1042015
1143415
1245015
1347015
1450015
1553115
1654315
1754515
054510
Stop Event
iter limit
saturated
iter limit
saturated
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (hypot.f64 im re) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))
Symmetry

(abs im)

Compiler

Compiled 15 to 12 computations (20% saved)

eval0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated
Compiler

Compiled 0 to 2 computations (-∞% saved)

prune1.0ms (0.1%)

Memory
0.5MiB live, 0.5MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.0%
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Compiler

Compiled 30 to 24 computations (20% saved)

simplify20.0ms (1.4%)

Memory
2.3MiB live, 18.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01215
11715
22215
32415
42515
Stop Event
saturated
Calls
Call 1
Inputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
Outputs
(*.f64 #s(literal 1/2 binary64) (sqrt.f64 (*.f64 #s(literal 2 binary64) (-.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))) re))))
(*.f64 (sqrt.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 im im) (*.f64 re re))) re) #s(literal 2 binary64))) #s(literal 1/2 binary64))

soundness0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Stop Event
fuel
Compiler

Compiled 15 to 12 computations (20% saved)

preprocess2.0ms (0.1%)

Memory
1.5MiB live, 1.5MiB allocated
Remove

(abs im)

Compiler

Compiled 120 to 96 computations (20% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...