math.log/2 on complex, imaginary part

Time bar (total: 2.6s)

start0.0ms (0%)

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

analyze244.0ms (9.3%)

Memory
7.9MiB live, 158.9MiB allocated; 72ms collecting garbage
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
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%49.9%0.1%0%49.9%0%4
0%0%49.9%0.1%0%49.9%0%5
0%0%49.9%0.1%0%49.9%0%6
9.4%4.7%45.2%0.1%0%49.9%0%7
17.2%8.6%41.3%0.1%0%49.9%0%8
27.3%13.7%36.3%0.1%0%49.9%0%9
41%20.5%29.4%0.1%0%49.9%0%10
48.6%24.3%25.6%0.1%0%49.9%0%11
57.1%28.5%21.4%0.1%0%49.9%0%12
Compiler

Compiled 30 to 17 computations (43.3% saved)

sample1.5s (55.9%)

Memory
18.8MiB live, 1 552.9MiB allocated; 532ms collecting garbage
Samples
1.1s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 852.0ms
ival-log: 308.0ms (36.2% of total)
ival-hypot: 200.0ms (23.5% of total)
ival-mult!: 125.0ms (14.7% of total)
ival-atan2: 97.0ms (11.4% of total)
ival-div!: 68.0ms (8% of total)
ival-sub!: 27.0ms (3.2% of total)
ival-add!: 25.0ms (2.9% of total)
adjust: 2.0ms (0.2% of total)
Bogosity

preprocess31.0ms (1.2%)

Memory
25.8MiB live, 25.8MiB allocated; 0ms collecting garbage
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
079141
1486121
Stop Event
node-limit
Alt Table
Click to see full alt table
StatusAccuracyProgram
52.0%
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
Compiler

Compiled 56 to 36 computations (35.7% saved)

series272.0ms (10.3%)

Memory
-37.4MiB live, 153.6MiB allocated; 64ms collecting garbage
Counts
18 → 64
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(atan2.f64 im re)
im
re
(log.f64 base)
base
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
(*.f64 im im)
#s(literal 0 binary64)
(+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
Outputs
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re)))
#s(approx (atan2 im re) (atan2.f64 im re))
#s(approx re re)
#s(approx (* (log (sqrt (+ (* re re) (* im im)))) 0) #s(literal 0 binary64))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (log.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 6 binary64)))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 4 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (sqrt.f64 (pow.f64 im #s(literal 2 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) (*.f64 (pow.f64 re #s(literal 2 binary64)) (fma.f64 (pow.f64 re #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 im #s(literal 2 binary64))) #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (+ (* re re) (* im im)) (pow.f64 im #s(literal 2 binary64)))
#s(approx (+ (* re re) (* im im)) (+.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))
#s(approx (* re re) (pow.f64 re #s(literal 2 binary64)))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) re))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) re)) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) re)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/720 binary64) (/.f64 (fma.f64 #s(literal 30 binary64) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 90 binary64) (pow.f64 im #s(literal 6 binary64)))) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (+ (* re re) (* im im)) (*.f64 (pow.f64 re #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) re))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) re)) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) re)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) re)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/720 binary64) (/.f64 (fma.f64 #s(literal 30 binary64) (pow.f64 im #s(literal 6 binary64)) (*.f64 #s(literal 90 binary64) (pow.f64 im #s(literal 6 binary64)))) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) re))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 re (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 4 binary64)) (pow.f64 re #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 6 binary64)) (pow.f64 re #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 re #s(literal 2 binary64))))))))))
#s(approx im im)
#s(approx (log (sqrt (+ (* re re) (* im im)))) (log.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 2 binary64))))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (+.f64 (log.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/6 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 6 binary64)))) (*.f64 #s(literal 1/4 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 4 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (sqrt.f64 (pow.f64 re #s(literal 2 binary64))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 3 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (+.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) (*.f64 (pow.f64 im #s(literal 2 binary64)) (fma.f64 (pow.f64 im #s(literal 2 binary64)) (-.f64 (*.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 im #s(literal 2 binary64)) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 5 binary64)))) (*.f64 #s(literal 1/8 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sqrt.f64 (pow.f64 re #s(literal 2 binary64))) #s(literal 3 binary64))))) (*.f64 #s(literal 1/2 binary64) (/.f64 #s(literal 1 binary64) (sqrt.f64 (pow.f64 re #s(literal 2 binary64)))))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) im))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) im)) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) im)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) im)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/720 binary64) (/.f64 (fma.f64 #s(literal 30 binary64) (pow.f64 re #s(literal 6 binary64)) (*.f64 #s(literal 90 binary64) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (+ (* re re) (* im im)) (*.f64 (pow.f64 im #s(literal 2 binary64)) (+.f64 #s(literal 1 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) im))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) im)) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) im)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))
#s(approx (log (sqrt (+ (* re re) (* im im)))) (fma.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal -1 binary64) im)) (fma.f64 #s(literal -1/4 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/720 binary64) (/.f64 (fma.f64 #s(literal 30 binary64) (pow.f64 re #s(literal 6 binary64)) (*.f64 #s(literal 90 binary64) (pow.f64 re #s(literal 6 binary64)))) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) im))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64)))))))))
#s(approx (sqrt (+ (* re re) (* im im))) (*.f64 #s(literal -1 binary64) (*.f64 im (+.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/8 binary64) (/.f64 (pow.f64 re #s(literal 4 binary64)) (pow.f64 im #s(literal 4 binary64))) (fma.f64 #s(literal 1/16 binary64) (/.f64 (pow.f64 re #s(literal 6 binary64)) (pow.f64 im #s(literal 6 binary64))) (*.f64 #s(literal 1/2 binary64) (/.f64 (pow.f64 re #s(literal 2 binary64)) (pow.f64 im #s(literal 2 binary64))))))))))
#s(approx (log base) (log.f64 base))
#s(approx base base)
#s(approx (+ (* (log base) (log base)) (* 0 0)) (pow.f64 (log.f64 base) #s(literal 2 binary64)))
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (*.f64 #s(literal -1 binary64) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 #s(literal 1 binary64) base)))))
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 #s(literal -1 binary64) (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) base)) (atan2.f64 im re))))
#s(approx (log base) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) base))))
#s(approx (+ (* (log base) (log base)) (* 0 0)) (pow.f64 (log.f64 (/.f64 #s(literal 1 binary64) base)) #s(literal 2 binary64)))
Calls

9 calls:

TimeVariablePoint
41.0ms
re
0
18.0ms
base
-inf
18.0ms
base
0
16.0ms
im
0
9.0ms
im
inf

rewrite167.0ms (6.4%)

Memory
37.1MiB live, 82.1MiB allocated; 4ms collecting garbage
Counts
18 → 76
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64)))
(*.f64 (atan2.f64 im re) (log.f64 base))
(atan2.f64 im re)
im
re
(log.f64 base)
base
(*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))
(log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im))))
(sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))
(+.f64 (*.f64 re re) (*.f64 im im))
(*.f64 re re)
(*.f64 im im)
#s(literal 0 binary64)
(+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
Outputs
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
(atan2.f64 im re)
im
(neg.f64 (neg.f64 im))
re
(neg.f64 (neg.f64 re))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
base
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
(*.f64 (+.f64 im re) (-.f64 re im))
(*.f64 (+.f64 im re) (-.f64 im re))
(*.f64 (-.f64 re im) (+.f64 im re))
(*.f64 (-.f64 (fabs.f64 im) (fabs.f64 re)) (-.f64 (fabs.f64 im) (fabs.f64 re)))
(*.f64 (neg.f64 (+.f64 im re)) (-.f64 (neg.f64 re) (neg.f64 im)))
(*.f64 re re)
(*.f64 (fabs.f64 re) (fabs.f64 re))
(*.f64 (fabs.f64 re) (neg.f64 re))
(*.f64 (fabs.f64 re) re)
(*.f64 (neg.f64 re) (fabs.f64 re))
(*.f64 im im)
(*.f64 (fabs.f64 im) (fabs.f64 im))
(*.f64 (fabs.f64 im) (neg.f64 im))
(*.f64 (fabs.f64 im) im)
(*.f64 (neg.f64 im) (fabs.f64 im))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 2 binary64)
#s(literal 1 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))

eval11.0ms (0.4%)

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

Compiled 3 456 to 633 computations (81.7% saved)

prune5.0ms (0.2%)

Memory
-43.4MiB live, 2.8MiB allocated; 2ms collecting garbage
Pruning

4 alts after pruning (4 fresh and 0 done)

PrunedKeptTotal
New80484
Fresh000
Picked101
Done000
Total81485
Accuracy
99.7%
Counts
85 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.3%
(/.f64 #s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
99.5%
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
6.4%
#s(literal 1 binary64)
10.7%
#s(literal 0 binary64)
Compiler

Compiled 72 to 53 computations (26.4% saved)

series169.0ms (6.4%)

Memory
28.2MiB live, 78.8MiB allocated; 15ms collecting garbage
Counts
15 → 12
Calls
Call 1
Inputs
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(atan2.f64 im re)
im
re
(log.f64 base)
base
(/.f64 #s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
Outputs
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
#s(approx (atan2 im re) (atan2.f64 im re))
#s(approx re re)
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re)))
#s(approx im im)
#s(approx (log base) (log.f64 base))
#s(approx base base)
#s(approx (+ (* (log base) (log base)) (* 0 0)) (pow.f64 (log.f64 base) #s(literal 2 binary64)))
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (*.f64 #s(literal -1 binary64) (/.f64 (atan2.f64 im re) (log.f64 (/.f64 #s(literal 1 binary64) base)))))
#s(approx (log base) (*.f64 #s(literal -1 binary64) (log.f64 (/.f64 #s(literal 1 binary64) base))))
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 #s(literal -1 binary64) (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) base)) (atan2.f64 im re))))
#s(approx (+ (* (log base) (log base)) (* 0 0)) (pow.f64 (log.f64 (/.f64 #s(literal 1 binary64) base)) #s(literal 2 binary64)))
Calls

9 calls:

TimeVariablePoint
21.0ms
im
0
16.0ms
im
-inf
10.0ms
im
inf
10.0ms
base
-inf
8.0ms
base
inf

rewrite160.0ms (6.1%)

Memory
-19.3MiB live, 72.1MiB allocated; 12ms collecting garbage
Counts
15 → 56
Calls
Call 1
Inputs
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 (atan2.f64 im re) (log.f64 base))
(atan2.f64 im re)
im
re
(log.f64 base)
base
(/.f64 #s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
#s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re)))
(*.f64 (log.f64 base) (atan2.f64 im re))
(+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64)))
(*.f64 (log.f64 base) (log.f64 base))
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
Outputs
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(approx 2 #s(literal 0 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
(atan2.f64 im re)
(neg.f64 (neg.f64 (atan2.f64 im re)))
im
(*.f64 im im)
(*.f64 (pow.f64 im (/.f64 (/.f64 #s(literal 3 binary64) #s(literal 0 binary64)) #s(literal 0 binary64))) (pow.f64 im (/.f64 (/.f64 #s(literal 3 binary64) #s(literal 0 binary64)) #s(literal 0 binary64))))
(fabs.f64 im)
(+.f64 (cosh.f64 (log.f64 im)) (sinh.f64 (log.f64 im)))
re
(*.f64 re re)
(*.f64 (pow.f64 re (/.f64 (/.f64 #s(literal 3 binary64) #s(literal 0 binary64)) #s(literal 0 binary64))) (pow.f64 re (/.f64 (/.f64 #s(literal 3 binary64) #s(literal 0 binary64)) #s(literal 0 binary64))))
(fabs.f64 re)
(+.f64 (cosh.f64 (log.f64 re)) (sinh.f64 (log.f64 re)))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
base
(/.f64 #s(approx 2 #s(literal 0 binary64)) #s(literal 0 binary64))
#s(approx 2 #s(literal 0 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(literal 2 binary64)
(*.f64 #s(literal 0 binary64) #s(literal 0 binary64))
(*.f64 #s(literal 0 binary64) #s(literal 3 binary64))

eval5.0ms (0.2%)

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

Compiled 1 533 to 180 computations (88.3% saved)

prune3.0ms (0.1%)

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

4 alts after pruning (0 fresh and 4 done)

PrunedKeptTotal
New43043
Fresh000
Picked044
Done000
Total43447
Accuracy
99.7%
Counts
47 → 4
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.3%
(/.f64 #s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
99.5%
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
6.4%
#s(literal 1 binary64)
10.7%
#s(literal 0 binary64)
Compiler

Compiled 72 to 53 computations (26.4% saved)

regimes32.0ms (1.2%)

Memory
-9.5MiB live, 34.8MiB allocated; 5ms collecting garbage
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
2 → 2
5 → 1
Calls
Call 1
Inputs
#s(literal 0 binary64)
Outputs
#s(literal 0 binary64)
Call 2
Inputs
#s(literal 0 binary64)
#s(literal 1 binary64)
Outputs
#s(literal 1 binary64)
#s(literal 0 binary64)
Call 3
Inputs
#s(literal 0 binary64)
#s(literal 1 binary64)
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
(/.f64 #s(approx (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (*.f64 (log.f64 base) (atan2.f64 im re))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
Outputs
#s(approx (/ (- (* (atan2 im re) (log base)) (* (log (sqrt (+ (* re re) (* im im)))) 0)) (+ (* (log base) (log base)) (* 0 0))) (/.f64 (atan2.f64 im re) (log.f64 base)))
Calls

13 calls:

6.0ms
(log.f64 base)
2.0ms
(log.f64 base)
2.0ms
(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
2.0ms
re
2.0ms
base
Results
AccuracySegmentsBranch
10.7%1(log.f64 base)
10.7%1base
10.7%1re
10.7%1(log.f64 base)
10.7%1(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
13.5%2re
10.7%1im
10.7%1base
99.5%1(log.f64 base)
99.5%1(/.f64 (-.f64 (*.f64 (atan2.f64 im re) (log.f64 base)) (*.f64 (log.f64 (sqrt.f64 (+.f64 (*.f64 re re) (*.f64 im im)))) #s(literal 0 binary64))) (+.f64 (*.f64 (log.f64 base) (log.f64 base)) (*.f64 #s(literal 0 binary64) #s(literal 0 binary64))))
99.5%1re
99.5%1im
99.5%1base
Compiler

Compiled 170 to 111 computations (34.7% saved)

bsearch23.0ms (0.9%)

Memory
26.7MiB live, 26.7MiB allocated; 0ms collecting garbage
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
20.0ms
16664609161196737000.0
3.945256769112311e+35
Samples
14.0ms160×0valid
Compiler

Compiled 51 to 121 computations (-137.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 10.0ms
ival-log: 3.0ms (28.9% of total)
ival-hypot: 3.0ms (28.9% of total)
ival-mult!: 2.0ms (19.3% of total)
ival-atan2: 1.0ms (9.6% of total)
ival-div!: 1.0ms (9.6% of total)
ival-sub!: 0.0ms (0% of total)
adjust: 0.0ms (0% of total)
ival-add!: 0.0ms (0% of total)

derivations1.0ms (0%)

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

Compiled 42 to 27 computations (35.7% saved)

preprocess37.0ms (1.4%)

Memory
-3.4MiB live, 45.3MiB allocated; 14ms collecting garbage
Compiler

Compiled 70 to 45 computations (35.7% saved)

end0.0ms (0%)

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

Profiling

Loading profile data...