Trowbridge-Reitz Sample, sample surface normal, cosTheta

Time bar (total: 6.2s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze872.0ms (14.1%)

Memory
-6.1MiB live, 258.6MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%0%100%0%0%0%0
0%0%0%100%0%0%0%1
0%0%0%100%0%0%0%2
0%0%0%100%0%0%0%3
0%0%0%100%0%0%0%4
0%0%0%100%0%0%0%5
0%0%0%100%0%0%0%6
6.2%0%0%100%0%0%0%7
9.4%0%0%100%0%0%0%8
14.1%0%0%100%0%0%0%9
21.1%0%0%100%0%0%0%10
31.6%0%0%100%0%0%0%11
36.9%0%0%100%0%0%0%12
Compiler

Compiled 120 to 50 computations (58.3% saved)

sample95.0ms (1.5%)

Memory
5.6MiB live, 31.3MiB allocated
Samples
79.0ms260×0valid
Precisions
Click to see histograms. Total time spent on operations: 67.0ms
ival-mult: 13.0ms (19.3% of total)
ival-div: 10.0ms (14.9% of total)
ival-tan: 8.0ms (11.9% of total)
ival-sin: 7.0ms (10.4% of total)
ival-cos: 7.0ms (10.4% of total)
const: 7.0ms (10.4% of total)
ival-<=: 5.0ms (7.4% of total)
ival-add: 3.0ms (4.5% of total)
ival-atan: 2.0ms (3% of total)
ival-sqrt: 2.0ms (3% of total)
ival-pi: 1.0ms (1.5% of total)
ival-sub: 1.0ms (1.5% of total)
ival-and: 1.0ms (1.5% of total)
adjust: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)
Bogosity

explain5.0s (81.2%)

Memory
21.0MiB live, 2 602.6MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
1935(1.835418004247913e-7 0.0006787566235288978 0.00954418908804655 0.1755112111568451)6(8.977654175623684e-8 0.002538197673857212 0.17011243104934692 0.01515503041446209)(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))
19011(7.667130716981774e-7 3.73131078958977e-5 0.001817173557356 0.0002676259318832308)1(0.003324099350720644 3.6153804103378206e-5 0.8963871002197266 0.00695421127602458)(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))
00-0-(sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0))))
00-0-(*.f32 alphax alphax)
00-0-(*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))))
00-0-(PI.f32)
00-0-#s(literal 2 binary32)
00-0-(/.f32 alphay alphax)
00-0-(/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay))))
00-0-#s(literal 1/2 binary32)
00-0-(+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))
00-0-(-.f32 #s(literal 1 binary32) u0)
00-0-u1
00-0-(*.f32 #s(literal 1/2 binary32) (PI.f32))
00-0-alphax
00-0-(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
00-0-u0
00-0-(*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))))
00-0-(*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1)
00-0-(sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))
00-0-(*.f32 alphay alphay)
00-0-#s(literal 1 binary32)
00-0-(*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0)
00-0-(atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))
00-0-(/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0))
00-0-(+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))
00-0-(/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay))
00-0-(*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))
00-0-alphay
00-0-(+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))
00-0-(/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax))
00-0-(*.f32 #s(literal 2 binary32) (PI.f32))
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
cos.f32(cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))sensitivity20015
tan.f32(tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))cancellation19216
Confusion
Predicted +Predicted -
+00
-21343
Precision
0.0
Recall
0/0
Confusion?
Predicted +Predicted MaybePredicted -
+000
-2131429
Precision?
0.0
Recall?
0/0
Freqs
test
numberfreq
043
134
2179
Total Confusion?
Predicted +Predicted MaybePredicted -
+000
-100
Precision?
0.0
Recall?
0/0
Total Time
66.569091796875
Average Time
0.26003551483154297
Samples
1.5s6 096×0valid
28.0ms48×1valid
Compiler

Compiled 30 768 to 1 584 computations (94.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 1.2s
ival-mult: 287.0ms (23.1% of total)
ival-div: 208.0ms (16.7% of total)
ival-tan: 182.0ms (14.6% of total)
ival-sin: 169.0ms (13.6% of total)
ival-cos: 160.0ms (12.9% of total)
ival-add: 75.0ms (6% of total)
ival-atan: 58.0ms (4.7% of total)
ival-sqrt: 36.0ms (2.9% of total)
ival-sub: 29.0ms (2.3% of total)
ival-pi: 20.0ms (1.6% of total)
exact: 8.0ms (0.6% of total)
adjust: 5.0ms (0.4% of total)
ival-true: 5.0ms (0.4% of total)
ival-assert: 2.0ms (0.2% of total)

preprocess168.0ms (2.7%)

Memory
0.8MiB live, 31.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02021260
14911222
210131108
332361108
462671108
03288
05788
18986
212778
317678
427078
572078
6222578
7418378
8616878
0804473
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
Outputs
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
(/.f32 #s(literal 1 binary32) (sqrt.f32 (-.f32 (/.f32 (/.f32 u0 (-.f32 #s(literal 1 binary32) u0)) (fma.f32 (/.f32 (sin.f32 (atan.f32 (*.f32 (tan.f32 (*.f32 (fma.f32 u1 #s(literal 2 binary32) #s(literal 1/2 binary32)) (PI.f32))) (/.f32 alphay alphax)))) (*.f32 alphay alphay)) (sin.f32 (atan.f32 (*.f32 (tan.f32 (*.f32 (fma.f32 u1 #s(literal 2 binary32) #s(literal 1/2 binary32)) (PI.f32))) (/.f32 alphay alphax)))) (*.f32 (/.f32 (cos.f32 (atan.f32 (*.f32 (tan.f32 (*.f32 (fma.f32 u1 #s(literal 2 binary32) #s(literal 1/2 binary32)) (PI.f32))) (/.f32 alphay alphax)))) (*.f32 alphax alphax)) (cos.f32 (atan.f32 (*.f32 (tan.f32 (*.f32 (fma.f32 u1 #s(literal 2 binary32) #s(literal 1/2 binary32)) (PI.f32))) (/.f32 alphay alphax))))))) #s(literal -1 binary32))))
Compiler

Compiled 88 to 32 computations (63.6% saved)

eval0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 4 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
99.3%
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
Compiler

Compiled 176 to 64 computations (63.6% saved)

simplify20.0ms (0.3%)

Memory
2.4MiB live, 18.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03288
14588
24988
35188
45288
Stop Event
saturated
Calls
Call 1
Inputs
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
Outputs
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 #s(literal 1 binary32) (/.f32 (*.f32 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (cos.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphax alphax)) (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32))))))) (sin.f32 (atan.f32 (*.f32 (/.f32 alphay alphax) (tan.f32 (+.f32 (*.f32 (*.f32 #s(literal 2 binary32) (PI.f32)) u1) (*.f32 #s(literal 1/2 binary32) (PI.f32)))))))) (*.f32 alphay alphay)))) u0) (-.f32 #s(literal 1 binary32) u0)))))
(/.f32 #s(literal 1 binary32) (sqrt.f32 (+.f32 (/.f32 (*.f32 u0 (/.f32 #s(literal 1 binary32) (+.f32 (/.f32 (*.f32 (sin.f32 (atan.f32 (*.f32 (tan.f32 (+.f32 (*.f32 #s(literal 1/2 binary32) (PI.f32)) (*.f32 u1 (*.f32 (PI.f32) #s(literal 2 binary32))))) (/.f32 alphay alphax)))) (sin.f32 (atan.f32 (*.f32 (tan.f32 (+.f32 (*.f32 #s(literal 1/2 binary32) (PI.f32)) (*.f32 u1 (*.f32 (PI.f32) #s(literal 2 binary32))))) (/.f32 alphay alphax))))) (*.f32 alphay alphay)) (/.f32 (*.f32 (cos.f32 (atan.f32 (*.f32 (tan.f32 (+.f32 (*.f32 #s(literal 1/2 binary32) (PI.f32)) (*.f32 u1 (*.f32 (PI.f32) #s(literal 2 binary32))))) (/.f32 alphay alphax)))) (cos.f32 (atan.f32 (*.f32 (tan.f32 (+.f32 (*.f32 #s(literal 1/2 binary32) (PI.f32)) (*.f32 u1 (*.f32 (PI.f32) #s(literal 2 binary32))))) (/.f32 alphay alphax))))) (*.f32 alphax alphax))))) (-.f32 #s(literal 1 binary32) u0)) #s(literal 1 binary32))))

soundness0.0ms (0%)

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

Compiled 88 to 32 computations (63.6% saved)

preprocess1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Compiler

Compiled 352 to 128 computations (63.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...