math.abs on complex (squared)

Time bar (total: 1.3s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated; 0ms collecting garbage

analyze0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated; 0ms collecting garbage
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
100%99.9%0%0.1%0%0%0%1
Compiler

Compiled 9 to 7 computations (22.2% saved)

sample635.0ms (47.7%)

Memory
30.3MiB live, 873.9MiB allocated; 185ms collecting garbage
Samples
456.0ms8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 120.0ms
ival-mult!: 86.0ms (71.6% of total)
ival-add!: 33.0ms (27.5% of total)
adjust: 1.0ms (0.8% of total)
Bogosity

preprocess133.0ms (10%)

Memory
-20.9MiB live, 36.1MiB allocated; 11ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01444
15144
216144
321444
446544
5249644
6621544
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (*.f64 re re) (*.f64 im im))
Symmetry

(abs re)

(abs im)

(sort re im)

Compiler

Compiled 10 to 10 computations (0% saved)

series4.0ms (0.3%)

Memory
10.0MiB live, 10.0MiB allocated; 0ms collecting garbage
Counts
5 → 7
Calls
Call 1
Inputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
Outputs
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx re #s(hole binary64 re))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx im #s(hole binary64 im))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
re
@inf
((+ (* re re) (* im im)) (* re re) re (* im im) im)
1.0ms
re
@-inf
((+ (* re re) (* im im)) (* re re) re (* im im) im)
1.0ms
im
@inf
((+ (* re re) (* im im)) (* re re) re (* im im) im)
1.0ms
im
@-inf
((+ (* re re) (* im im)) (* re re) re (* im im) im)
1.0ms
re
@0
((+ (* re re) (* im im)) (* re re) re (* im im) im)

rewrite131.0ms (9.9%)

Memory
30.1MiB live, 169.5MiB allocated; 12ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02696
02884
114984
2104284
Stop Event
iter-limit
unsound
node-limit
iter-limit
Counts
12 → 12
Calls
Call 1
Inputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (* re re) #s(hole binary64 (pow re 2)))
#s(approx re #s(hole binary64 re))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx im #s(hole binary64 im))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
Outputs
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
re
(*.f64 im im)
im
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
#s(approx (+ (* re re) (* im im)) (+.f64 (*.f64 re re) (*.f64 im im)))
#s(approx (* re re) (*.f64 re re))
#s(approx re re)
#s(approx (+ (* re re) (* im im)) (+.f64 (*.f64 re re) (*.f64 im im)))
#s(approx im im)
#s(approx (+ (* re re) (* im im)) (+.f64 (*.f64 re re) (*.f64 im im)))

eval0.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated; 0ms collecting garbage
Compiler

Compiled 28 to 18 computations (35.7% saved)

prune1.0ms (0.1%)

Memory
2.2MiB live, 2.2MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (1 fresh and 1 done)

PrunedKeptTotal
New415
Fresh000
Picked011
Done000
Total426
Accuracy
100.0%
Counts
6 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (*.f64 re re) (*.f64 im im))
99.5%
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
Compiler

Compiled 12 to 12 computations (0% saved)

series2.0ms (0.2%)

Memory
5.9MiB live, 5.9MiB allocated; 0ms collecting garbage
Counts
3 → 6
Calls
Call 1
Inputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
Outputs
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow re 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx im #s(hole binary64 im))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
Calls

6 calls:

TimeVariablePointExpression
1.0ms
im
@-inf
((+ (* re re) (* im im)) (* im im) im)
1.0ms
im
@inf
((+ (* re re) (* im im)) (* im im) im)
0.0ms
re
@inf
((+ (* re re) (* im im)) (* im im) im)
0.0ms
im
@0
((+ (* re re) (* im im)) (* im im) im)
0.0ms
re
@-inf
((+ (* re re) (* im im)) (* im im) im)

rewrite374.0ms (28.1%)

Memory
7.8MiB live, 230.8MiB allocated; 69ms collecting garbage
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02497
02585
114085
2103385
Stop Event
iter-limit
unsound
node-limit
iter-limit
Counts
9 → 5
Calls
Call 1
Inputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow im 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (+ (pow im 2) (pow re 2))))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (pow re 2)))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow re 2) (+ 1 (/ (pow im 2) (pow re 2))))))
#s(approx im #s(hole binary64 im))
#s(approx (+ (* re re) (* im im)) #s(hole binary64 (* (pow im 2) (+ 1 (/ (pow re 2) (pow im 2))))))
Outputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(*.f64 im im)
im
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
#s(approx im im)

eval0.0ms (0%)

Memory
0.3MiB live, 0.3MiB allocated; 0ms collecting garbage
Compiler

Compiled 9 to 8 computations (11.1% saved)

prune1.0ms (0.1%)

Memory
2.0MiB live, 2.0MiB allocated; 0ms collecting garbage
Pruning

2 alts after pruning (0 fresh and 2 done)

PrunedKeptTotal
New101
Fresh000
Picked011
Done011
Total123
Accuracy
100.0%
Counts
3 → 2
Alt Table
Click to see full alt table
StatusAccuracyProgram
100.0%
(+.f64 (*.f64 re re) (*.f64 im im))
99.5%
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
Compiler

Compiled 22 to 21 computations (4.5% saved)

regimes11.0ms (0.8%)

Memory
-29.8MiB live, 16.0MiB allocated; 9ms collecting garbage
Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
(+.f64 (*.f64 re re) (*.f64 im im))
Outputs
(+.f64 (*.f64 re re) (*.f64 im im))
Calls

5 calls:

6.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
1.0ms
re
1.0ms
im
1.0ms
(*.f64 im im)
1.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
100.0%1(*.f64 im im)
100.0%1(*.f64 re re)
100.0%1(+.f64 (*.f64 re re) (*.f64 im im))
100.0%1re
100.0%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

regimes5.0ms (0.4%)

Memory
14.0MiB live, 14.0MiB allocated; 0ms collecting garbage
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
Outputs
#s(approx (+ (* re re) (* im im)) (*.f64 im im))
Calls

5 calls:

1.0ms
im
1.0ms
re
1.0ms
(+.f64 (*.f64 re re) (*.f64 im im))
1.0ms
(*.f64 im im)
1.0ms
(*.f64 re re)
Results
AccuracySegmentsBranch
99.5%1(*.f64 im im)
99.5%1(*.f64 re re)
99.5%1(+.f64 (*.f64 re re) (*.f64 im im))
99.5%1re
99.5%1im
Compiler

Compiled 11 to 15 computations (-36.4% saved)

derivations11.0ms (0.8%)

Memory
18.6MiB live, 18.6MiB allocated; 0ms collecting garbage
Stop Event
done
Compiler

Compiled 10 to 9 computations (10% saved)

preprocess23.0ms (1.7%)

Memory
-32.4MiB live, 56.9MiB allocated; 9ms collecting garbage
Compiler

Compiled 87 to 86 computations (1.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated; 0ms collecting garbage

Profiling

Loading profile data...