Difference of squares

Time bar (total: 2.4s)

analyze0.0ms (0%)

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 10 to 6 computations (40% saved)

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

sample584.0ms (24.7%)

Results
420.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 199.0ms
ival-mult: 141.0ms (71% of total)
ival-sub: 48.0ms (24.2% of total)
const: 6.0ms (3% of total)
backward-pass: 3.0ms (1.5% of total)
Bogosity

preprocess207.0ms (8.7%)

Algorithm
egg-herbie
Rules
2632×sum4-define
2434×sum3-define
1966×fmsub-define
1962×fnmsub-define
1952×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01439
16336
218936
352536
4148336
5395236
6615136
056
1156
2276
3576
41376
55636
623346
741276
878636
080466
Stop Event
iter limit
node limit
node limit
Calls
Call 1
Inputs
(- (* a a) (* b b))
Outputs
(- (* a a) (* b b))
(-.f64 (*.f64 a a) (*.f64 b b))
Call 2
Inputs
(- (* a a) (* b b))
(- (* (neg a) (neg a)) (* b b))
(- (* a a) (* (neg b) (neg b)))
(neg (- (* (neg a) (neg a)) (* b b)))
(neg (- (* a a) (* (neg b) (neg b))))
(- (* b b) (* a a))
Outputs
(- (* a a) (* b b))
(fmsub a a (* b b))
(- (* (neg a) (neg a)) (* b b))
(fmsub a a (* b b))
(- (* a a) (* (neg b) (neg b)))
(fmsub a a (* b b))
(neg (- (* (neg a) (neg a)) (* b b)))
(fmsub b b (* a a))
(neg (- (* a a) (* (neg b) (neg b))))
(fmsub b b (* a a))
(- (* b b) (* a a))
(fmsub b b (* a a))
Symmetry

(abs a)

(abs b)

explain50.0ms (2.1%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
210-0-(-.f64 (*.f64 a a) (*.f64 b b))
00-0-(*.f64 b b)
00-0-b
00-0-a
00-0-(*.f64 a a)
Results
30.0ms512×0valid
Compiler

Compiled 45 to 17 computations (62.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 9.0ms (73.2% of total)
ival-sub: 2.0ms (16.3% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

prune2.0ms (0.1%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
91.8%
(-.f64 (*.f64 a a) (*.f64 b b))
Compiler

Compiled 9 to 5 computations (44.4% saved)

simplify130.0ms (5.5%)

Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 a a)
cost-diff0
(-.f64 (*.f64 a a) (*.f64 b b))
Rules
2632×sum4-define
1446×sum3-define
1442×fmsub-define
1390×fma-define
1298×fnmadd-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0514
11514
22714
35714
413714
556314
6233414
7412714
8786314
0804614
Stop Event
iter limit
node limit
Calls
Call 1
Inputs
(- (* a a) (* b b))
(* a a)
a
(* b b)
b
Outputs
(- (* a a) (* b b))
(-.f64 (*.f64 a a) (*.f64 b b))
(* a a)
(*.f64 a a)
a
(* b b)
(*.f64 b b)
b

localize29.0ms (1.2%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 a a)
accuracy92.7%
(-.f64 (*.f64 a a) (*.f64 b b))
Results
23.0ms256×0valid
Compiler

Compiled 18 to 6 computations (66.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (68.7% of total)
ival-sub: 1.0ms (17.2% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series2.0ms (0.1%)

Counts
3 → 48
Calls
Call 1
Inputs
#<alt (- (* a a) (* b b))>
#<alt (* a a)>
#<alt (* b b)>
Outputs
#<alt (* -1 (pow b 2))>
#<alt (- (pow a 2) (pow b 2))>
#<alt (- (pow a 2) (pow b 2))>
#<alt (- (pow a 2) (pow b 2))>
#<alt (pow a 2)>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 2)>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 2)>
#<alt (+ (* -1 (pow b 2)) (pow a 2))>
#<alt (+ (* -1 (pow b 2)) (pow a 2))>
#<alt (+ (* -1 (pow b 2)) (pow a 2))>
#<alt (* -1 (pow b 2))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (* -1 (pow b 2))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
Calls

12 calls:

TimeVariablePointExpression
0.0ms
a
@0
(- (* a a) (* b b))
0.0ms
a
@inf
(- (* a a) (* b b))
0.0ms
b
@0
(- (* a a) (* b b))
0.0ms
b
@inf
(- (* a a) (* b b))
0.0ms
a
@-inf
(- (* a a) (* b b))

rewrite283.0ms (12%)

Algorithm
batch-egg-rewrite
Rules
2928×*-lowering-*.f32
2928×*-lowering-*.f64
1848×sum3-define
1554×fma-lowering-fma.f32
1554×fma-lowering-fma.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0512
13312
225112
3324112
0854312
Stop Event
iter limit
node limit
Counts
3 → 224
Calls
Call 1
Inputs
(- (* a a) (* b b))
(* a a)
(* b b)
Outputs
(+.f64 (*.f64 a a) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(+.f64 (*.f64 a a) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(+.f64 (*.f64 a a) (neg.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (*.f64 a a) (+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(+.f64 (*.f64 a a) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (*.f64 a a) (+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (+.f64 (*.f64 b b) (-.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))
(+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))
(+.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(+.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 a a))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (-.f64 (*.f64 a a) (*.f64 b b)))
(+.f64 (*.f64 (+.f64 a b) a) (*.f64 (+.f64 a b) (-.f64 #s(literal 0 binary64) b)))
(+.f64 (*.f64 (-.f64 a b) a) (*.f64 (-.f64 a b) b))
(+.f64 (*.f64 (-.f64 a b) b) (*.f64 (-.f64 a b) a))
(+.f64 (*.f64 a (+.f64 a b)) (*.f64 (-.f64 #s(literal 0 binary64) b) (+.f64 a b)))
(+.f64 (*.f64 a (-.f64 a b)) (*.f64 b (-.f64 a b)))
(+.f64 (*.f64 b (-.f64 a b)) (*.f64 a (-.f64 a b)))
(+.f64 (+.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 b b))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(+.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b)))) #s(literal -1 binary64)))
(-.f64 (*.f64 a a) (*.f64 b b))
(-.f64 (*.f64 a a) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(-.f64 (*.f64 a a) (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(-.f64 (*.f64 a a) (-.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(-.f64 (*.f64 a a) (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(-.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(-.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(-.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(-.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))))
(-.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(-.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(-.f64 #s(literal 0 binary64) (-.f64 (*.f64 b b) (*.f64 a a)))
(-.f64 (/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (/.f64 (*.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)) (*.f64 b b))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(-.f64 (+.f64 (*.f64 a a) #s(literal 0 binary64)) (*.f64 b b))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(-.f64 (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b)))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 a a (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 a a (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(fma.f64 a a (neg.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 a a (neg.f64 (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 a a (neg.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 a a (neg.f64 (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 a (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 a (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 a (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a a) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 b (-.f64 #s(literal 0 binary64) b) (*.f64 a a))
(fma.f64 (-.f64 #s(literal 0 binary64) b) b (*.f64 a a))
(fma.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 a a))) (/.f64 (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(fma.f64 (+.f64 a b) (-.f64 a b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 (+.f64 a b) (-.f64 a b) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(fma.f64 (-.f64 a b) (+.f64 a b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 (-.f64 a b) (+.f64 a b) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a a)) (/.f64 (*.f64 a (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 #s(literal -1 binary64) (*.f64 b b) (*.f64 a a))
(fma.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)) (neg.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)) (neg.f64 (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)) (neg.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)) (neg.f64 (-.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 (*.f64 a a) (*.f64 b b)) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 (*.f64 a a) (*.f64 b b)) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 (*.f64 a a) (*.f64 b b)) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (+.f64 a b)) (*.f64 b (-.f64 b a)))) (neg.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (+.f64 a b)) (*.f64 b (-.f64 b a)))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (+.f64 a b)) (*.f64 b (-.f64 b a)))) (neg.f64 (-.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 a (*.f64 a (*.f64 a a)))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 a (*.f64 a (*.f64 a a)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 a (*.f64 a (*.f64 a a)))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (-.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (neg.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (-.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(fma.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (-.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (neg.f64 (-.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(neg.f64 (/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(neg.f64 (/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(neg.f64 (/.f64 (+.f64 (neg.f64 (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))
(/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)))))
(/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b (-.f64 b a))) (+.f64 (*.f64 a a) (*.f64 b (+.f64 a b)))))
(/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 a (*.f64 a (-.f64 #s(literal 0 binary64) (*.f64 b b)))))))
(/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a a) (*.f64 b b)))
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (+.f64 (neg.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (neg.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a))))))
(/.f64 (+.f64 (neg.f64 (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (*.f64 a a) (*.f64 b b)))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))))
(/.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))))
(/.f64 (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (-.f64 (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (*.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (+.f64 (*.f64 a a) (*.f64 b b)))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))) (+.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b)))) (*.f64 (-.f64 a b) (+.f64 (*.f64 a a) (*.f64 b (+.f64 a b)))))
(/.f64 (*.f64 (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a))) (-.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a))))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a)))) (*.f64 (+.f64 a b) (+.f64 (*.f64 a a) (*.f64 b (-.f64 b a)))))
(/.f64 (*.f64 (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b))) (-.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a)))) (*.f64 (+.f64 (*.f64 a a) (*.f64 b (+.f64 a b))) (+.f64 (*.f64 a a) (*.f64 b (-.f64 b a)))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(/.f64 (neg.f64 (+.f64 (neg.f64 (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (*.f64 b b))))) (neg.f64 (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))))
(/.f64 (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) (neg.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))) (neg.f64 (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (pow.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal 3 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (-.f64 (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (*.f64 (*.f64 a a) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 8 binary64) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))))
(/.f64 (-.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (pow.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal 3 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (*.f64 (*.f64 a a) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (+.f64 (*.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (*.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal 3 binary64))) (+.f64 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 (*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))))
(/.f64 (-.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a)))) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)))
(/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))) (-.f64 (*.f64 a a) (+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (-.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b))))) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 2 binary64) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))))
(/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b))))) (+.f64 (*.f64 a a) (-.f64 (*.f64 b b) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (*.f64 (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))) (+.f64 (/.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (/.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(/.f64 (-.f64 (*.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 a a) (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a a) (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 a b)) (+.f64 a b))
(/.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 a b)) (-.f64 a b))
(/.f64 (*.f64 (-.f64 a b) (-.f64 (*.f64 a a) (*.f64 b b))) (-.f64 a b))
(/.f64 (*.f64 (+.f64 a b) (-.f64 (*.f64 a a) (*.f64 b b))) (+.f64 a b))
(/.f64 (*.f64 (+.f64 a b) (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 a a) (*.f64 b (+.f64 a b))))
(/.f64 (*.f64 (-.f64 a b) (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a)))) (+.f64 (*.f64 a a) (*.f64 b (-.f64 b a))))
(/.f64 (*.f64 (-.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (+.f64 (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 (*.f64 (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (+.f64 (*.f64 b (*.f64 b b)) (*.f64 a (*.f64 a a))) (-.f64 a b)) (+.f64 (*.f64 a a) (*.f64 b (-.f64 b a))))
(/.f64 (*.f64 (-.f64 (*.f64 a (*.f64 a a)) (*.f64 b (*.f64 b b))) (+.f64 a b)) (+.f64 (*.f64 a a) (*.f64 b (+.f64 a b))))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a)))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b))) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b))))) #s(literal -1 binary64))
(*.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(*.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 a a))))))
(*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))
(*.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))))
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))))
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (/.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))))
(*.f64 (+.f64 a b) (-.f64 a b))
(*.f64 (-.f64 a b) (+.f64 a b))
(*.f64 (+.f64 (neg.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))
(*.f64 (+.f64 (neg.f64 (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (+.f64 (*.f64 a a) (*.f64 b b)))))
(*.f64 (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 (*.f64 a a) (*.f64 b b)))))))
(*.f64 #s(literal 1 binary64) (-.f64 (*.f64 a a) (*.f64 b b)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))) (pow.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a a) (*.f64 b b))) (pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) #s(literal -1 binary64)))
(*.f64 (*.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 #s(literal 0 binary64) (*.f64 b b)))))
(*.f64 (/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 (*.f64 a a) (*.f64 b b)))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (-.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 a (*.f64 a (*.f64 a a)))))))
(*.f64 (/.f64 (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b)))))))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))))
(*.f64 (/.f64 (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (+.f64 a b)) (*.f64 b (-.f64 b a)))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (-.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))))))
(*.f64 (pow.f64 (/.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))))) (+.f64 (*.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b)))))) #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (+.f64 (*.f64 (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 a))) #s(literal 2 binary64)))
(pow.f64 a #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 2 binary64))
(*.f64 a a)
(*.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)))
(*.f64 (pow.f64 (pow.f64 a #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 a #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (exp.f64 (log.f64 a)) #s(literal 1 binary64)) (pow.f64 (exp.f64 (log.f64 a)) #s(literal 1 binary64)))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 b))) #s(literal 2 binary64)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(*.f64 b b)
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (pow.f64 (pow.f64 b #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 b #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (exp.f64 (log.f64 b)) #s(literal 1 binary64)) (pow.f64 (exp.f64 (log.f64 b)) #s(literal 1 binary64)))

simplify130.0ms (5.5%)

Algorithm
egg-herbie
Rules
2156×*-lowering-*.f32
2156×*-lowering-*.f64
1684×sum4-define
1286×sum3-define
1232×sum5-define
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
017219
140201
2123201
3516201
41905201
53924201
08187201
Stop Event
iter limit
node limit
Counts
48 → 48
Calls
Call 1
Inputs
(* -1 (pow b 2))
(- (pow a 2) (pow b 2))
(- (pow a 2) (pow b 2))
(- (pow a 2) (pow b 2))
(pow a 2)
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(pow a 2)
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(pow a 2)
(+ (* -1 (pow b 2)) (pow a 2))
(+ (* -1 (pow b 2)) (pow a 2))
(+ (* -1 (pow b 2)) (pow a 2))
(* -1 (pow b 2))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(* -1 (pow b 2))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
Outputs
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(- (pow a 2) (pow b 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(- (pow a 2) (pow b 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(- (pow a 2) (pow b 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow a 2) (+ 1 (* -1 (/ (pow b 2) (pow a 2)))))
(-.f64 (*.f64 a a) (*.f64 b b))
(pow a 2)
(*.f64 a a)
(+ (* -1 (pow b 2)) (pow a 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(+ (* -1 (pow b 2)) (pow a 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(+ (* -1 (pow b 2)) (pow a 2))
(-.f64 (*.f64 a a) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(* (pow b 2) (- (/ (pow a 2) (pow b 2)) 1))
(-.f64 (*.f64 a a) (*.f64 b b))
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)

eval33.0ms (1.4%)

Compiler

Compiled 9916 to 541 computations (94.5% saved)

prune29.0ms (1.2%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New2702272
Fresh000
Picked011
Done000
Total2703273
Accuracy
100.0%
Counts
273 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.8%
(-.f64 (*.f64 a a) (*.f64 b b))
50.2%
(-.f64 #s(literal 0 binary64) (*.f64 b b))
55.5%
(*.f64 a a)
Compiler

Compiled 21 to 13 computations (38.1% saved)

simplify7.0ms (0.3%)

Algorithm
egg-herbie
Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 b b)
cost-diff0
(-.f64 #s(literal 0 binary64) (*.f64 b b))
cost-diff0
(*.f64 a a)
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0613
11113
21813
33013
44213
56013
66913
77613
810013
010013
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(* a a)
a
(- 0 (* b b))
0
(* b b)
b
Outputs
(* a a)
(*.f64 a a)
a
(- 0 (* b b))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
0
#s(literal 0 binary64)
(* b b)
(*.f64 b b)
b

localize33.0ms (1.4%)

Localize:

Found 3 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(-.f64 #s(literal 0 binary64) (*.f64 b b))
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 a a)
Results
22.0ms256×0valid
Compiler

Compiled 17 to 7 computations (58.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 6.0ms
ival-mult: 4.0ms (66.6% of total)
ival-sub: 1.0ms (16.7% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series0.0ms (0%)

Counts
3 → 36
Calls
Call 1
Inputs
#<alt (* a a)>
#<alt (- 0 (* b b))>
#<alt (* b b)>
Outputs
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (pow a 2)>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
Calls

9 calls:

TimeVariablePointExpression
0.0ms
b
@0
(- 0 (* b b))
0.0ms
a
@0
(* a a)
0.0ms
b
@inf
(- 0 (* b b))
0.0ms
b
@-inf
(- 0 (* b b))
0.0ms
a
@inf
(* a a)

rewrite78.0ms (3.3%)

Algorithm
batch-egg-rewrite
Rules
596×/-lowering-/.f32
596×/-lowering-/.f64
582×*-lowering-*.f32
582×*-lowering-*.f64
238×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0610
12710
219510
0193310
Stop Event
iter limit
iter limit
node limit
Counts
3 → 134
Calls
Call 1
Inputs
(* a a)
(- 0 (* b b))
(* b b)
Outputs
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 a #s(literal 2 binary64))
(pow.f64 (*.f64 a a) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 a)) #s(literal 2 binary64))
(*.f64 a a)
(*.f64 (exp.f64 (log.f64 a)) (exp.f64 (log.f64 a)))
(+.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal 0 binary64))
(fma.f64 b (-.f64 #s(literal 0 binary64) b) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b b)) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) b) b #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 b b) #s(literal 0 binary64))
(neg.f64 (*.f64 b b))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b b))
(/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal 1 binary64)))
(/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (*.f64 b b))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) #s(literal 1 binary64)) (*.f64 (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b b)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) #s(literal 1 binary64)) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) (-.f64 #s(literal 0 binary64) b))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (/.f64 #s(literal 1 binary64) (*.f64 b b))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) b) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) b) (*.f64 b (*.f64 b b)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b b))) b)
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) b)) b)
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) #s(literal -1 binary64)) (*.f64 b b))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal -1 binary64))
(*.f64 b (-.f64 #s(literal 0 binary64) b))
(*.f64 (*.f64 b b) #s(literal -1 binary64))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(*.f64 (-.f64 #s(literal 0 binary64) b) b)
(*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 b b)) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 #s(literal -1 binary64) (*.f64 b b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b b))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(+.f64 #s(literal 0 binary64) (*.f64 b b))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) b) (-.f64 #s(literal 0 binary64) b)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) b)) b))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 b b)))
(+.f64 (*.f64 b b) #s(literal 0 binary64))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(-.f64 (*.f64 b b) #s(literal 0 binary64))
(fma.f64 b b #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b b))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) b) (-.f64 #s(literal 0 binary64) b))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) b)) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64)) (*.f64 b b))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) b) (*.f64 b (*.f64 b b)))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b b)) (*.f64 b b))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b b))) b)
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 b)) #s(literal 2 binary64))
(*.f64 b b)
(*.f64 b (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b b)))
(*.f64 (*.f64 b b) (/.f64 (*.f64 b b) (*.f64 b b)))
(*.f64 (*.f64 b b) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 b (*.f64 b b)) (/.f64 b (*.f64 b b)))
(*.f64 (*.f64 b (*.f64 b b)) (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (exp.f64 (log.f64 b)) (exp.f64 (log.f64 b)))
(*.f64 (/.f64 b b) (/.f64 (*.f64 b (*.f64 b b)) b))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) b) (/.f64 b b))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) b) (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b b) b) (/.f64 (*.f64 b b) b))
(*.f64 (/.f64 (*.f64 b b) b) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b b) b))
(*.f64 (/.f64 (*.f64 b b) (*.f64 b b)) (*.f64 b b))
(*.f64 (/.f64 (*.f64 b b) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b b)) b))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b b)) (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b b)))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b))))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))

simplify9.0ms (0.4%)

Algorithm
egg-herbie
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07120
111120
220120
322120
425120
539120
657120
766120
879120
9103120
0103120
Stop Event
iter limit
saturated
Counts
36 → 36
Calls
Call 1
Inputs
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(pow a 2)
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
Outputs
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(pow a 2)
(*.f64 a a)
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)

eval22.0ms (0.9%)

Compiler

Compiled 2918 to 288 computations (90.1% saved)

prune18.0ms (0.8%)

Pruning

3 alts after pruning (1 fresh and 2 done)

PrunedKeptTotal
New1691170
Fresh000
Picked112
Done011
Total1703173
Accuracy
100.0%
Counts
173 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.8%
(-.f64 (*.f64 a a) (*.f64 b b))
55.5%
(*.f64 a a)
50.2%
(neg.f64 (*.f64 b b))
Compiler

Compiled 20 to 12 computations (40% saved)

simplify6.0ms (0.2%)

Algorithm
egg-herbie
Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
cost-diff-64
(neg.f64 (*.f64 b b))
cost-diff0
(*.f64 b b)
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
038
1108
2148
3208
4348
5528
6618
7748
8988
0988
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(neg (* b b))
(* b b)
b
Outputs
(neg (* b b))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* b b)
(*.f64 b b)
b

localize18.0ms (0.7%)

Localize:

Found 2 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(neg.f64 (*.f64 b b))
Results
12.0ms256×0valid
Compiler

Compiled 11 to 5 computations (54.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 4.0ms
ival-mult: 2.0ms (52.1% of total)
ival-neg: 1.0ms (26% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series0.0ms (0%)

Counts
2 → 24
Calls
Call 1
Inputs
#<alt (* b b)>
#<alt (neg (* b b))>
Outputs
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (pow b 2)>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
#<alt (* -1 (pow b 2))>
Calls

6 calls:

TimeVariablePointExpression
0.0ms
b
@0
(* b b)
0.0ms
b
@inf
(neg (* b b))
0.0ms
b
@0
(neg (* b b))
0.0ms
b
@-inf
(neg (* b b))
0.0ms
b
@inf
(* b b)

rewrite123.0ms (5.2%)

Algorithm
batch-egg-rewrite
Rules
668×*-lowering-*.f32
668×*-lowering-*.f64
646×/-lowering-/.f32
646×/-lowering-/.f64
238×frac-times
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037
1127
2367
32107
021737
Stop Event
iter limit
iter limit
node limit
Counts
2 → 138
Calls
Call 1
Inputs
(* b b)
(neg (* b b))
Outputs
(+.f64 (*.f64 b b) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (*.f64 b b))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) b) (-.f64 #s(literal 0 binary64) b)))
(+.f64 #s(literal 0 binary64) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal -1 binary64)))
(+.f64 #s(literal 0 binary64) (*.f64 #s(literal 1 binary64) (*.f64 b b)))
(+.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (-.f64 #s(literal 0 binary64) b)) b))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(exp.f64 (*.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)) #s(literal 1 binary64)))
(exp.f64 (-.f64 (*.f64 (log.f64 b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 b))))
(exp.f64 (-.f64 (*.f64 (log.f64 b) #s(literal 6 binary64)) (*.f64 (log.f64 b) #s(literal 4 binary64))))
(-.f64 (*.f64 b b) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(fma.f64 b b #s(literal 0 binary64))
(neg.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal -1 binary64))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b b))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) b) (-.f64 #s(literal 0 binary64) b))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64)) (*.f64 b b))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) b)) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) b) (*.f64 b (*.f64 b b)))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b b)) (*.f64 b b))
(/.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b b))) b)
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (*.f64 b b) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)
(*.f64 (*.f64 b b) (/.f64 (*.f64 b b) (*.f64 b b)))
(*.f64 (*.f64 b b) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (*.f64 b (*.f64 b b)) (/.f64 b (*.f64 b b)))
(*.f64 (*.f64 b (*.f64 b b)) (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) b))
(*.f64 (/.f64 b b) (/.f64 (*.f64 b (*.f64 b b)) b))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) b) (/.f64 b b))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) b) (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b b) b) (/.f64 (*.f64 b b) b))
(*.f64 (/.f64 (*.f64 b b) b) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b b) b))
(*.f64 (/.f64 (*.f64 b b) (*.f64 b b)) (*.f64 b b))
(*.f64 (/.f64 (*.f64 b b) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) (/.f64 (*.f64 b b) (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b b))) (/.f64 (*.f64 b (*.f64 b b)) b))
(*.f64 (*.f64 b (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b b))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(+.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal 0 binary64))
(+.f64 #s(literal 0 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(-.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) #s(literal 0 binary64))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(fma.f64 b (-.f64 #s(literal 0 binary64) b) #s(literal 0 binary64))
(fma.f64 (*.f64 b b) #s(literal -1 binary64) #s(literal 0 binary64))
(fma.f64 #s(literal -1 binary64) (*.f64 b b) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) b) b #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 0 binary64))
(fma.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b b)) #s(literal 0 binary64))
(neg.f64 (*.f64 b b))
(/.f64 (*.f64 b b) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b b))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b b) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b b))) b)
(/.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal 1 binary64)) (*.f64 b b))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b b)))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) #s(literal 1 binary64)) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) b) (-.f64 #s(literal 0 binary64) b))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b b)) b) b)
(/.f64 (*.f64 b (-.f64 #s(literal 0 binary64) (*.f64 b b))) b)
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (/.f64 #s(literal 1 binary64) (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(/.f64 (*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) b) b)
(/.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) b) (*.f64 b (*.f64 b b)))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) #s(literal -1 binary64)) (*.f64 b b))
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) b)) b)
(/.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(pow.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) #s(literal -1 binary64))
(*.f64 b (-.f64 #s(literal 0 binary64) b))
(*.f64 (*.f64 b b) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (*.f64 b b))
(*.f64 (-.f64 #s(literal 0 binary64) b) b)
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (*.f64 b b)))
(*.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))))
(*.f64 (/.f64 #s(literal 1 binary64) (*.f64 b b)) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (sqrt.f64 b) (*.f64 (sqrt.f64 b) (-.f64 #s(literal 0 binary64) b)))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) #s(literal 1 binary64)) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 0 binary64) (*.f64 b b))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (*.f64 (-.f64 #s(literal 0 binary64) b) (sqrt.f64 b)) (sqrt.f64 b))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b b))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))) (*.f64 b (*.f64 b (*.f64 b b))))
(*.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))) (-.f64 #s(literal 0 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (*.f64 (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))))
(*.f64 (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) (-.f64 #s(literal 0 binary64) (*.f64 b b)))

simplify9.0ms (0.4%)

Algorithm
egg-herbie
Rules
40×sum3-define
32×fma-define
18×fma-lowering-fma.f32
18×fma-lowering-fma.f64
16×+-lowering-+.f64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0584
1884
21784
31984
42284
53684
65484
76384
87684
910084
010084
Stop Event
iter limit
saturated
Counts
24 → 24
Calls
Call 1
Inputs
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(pow b 2)
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
(* -1 (pow b 2))
Outputs
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(pow b 2)
(*.f64 b b)
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(* -1 (pow b 2))
(-.f64 #s(literal 0 binary64) (*.f64 b b))

eval16.0ms (0.7%)

Compiler

Compiled 2836 to 306 computations (89.2% saved)

prune22.0ms (0.9%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New1620162
Fresh000
Picked011
Done022
Total1623165
Accuracy
100.0%
Counts
165 → 3
Alt Table
Click to see full alt table
StatusAccuracyProgram
91.8%
(-.f64 (*.f64 a a) (*.f64 b b))
55.5%
(*.f64 a a)
50.2%
(neg.f64 (*.f64 b b))
Compiler

Compiled 41 to 20 computations (51.2% saved)

regimes11.0ms (0.5%)

Counts
4 → 2
Calls
Call 1
Inputs
(*.f64 a a)
(neg.f64 (*.f64 b b))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
(-.f64 (*.f64 a a) (*.f64 b b))
Outputs
(-.f64 (*.f64 a a) (*.f64 b b))
(*.f64 a a)
Calls

5 calls:

3.0ms
(-.f64 (*.f64 a a) (*.f64 b b))
2.0ms
a
2.0ms
b
2.0ms
(*.f64 b b)
2.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
96.1%2a
95.7%2b
96.1%2(-.f64 (*.f64 a a) (*.f64 b b))
96.1%2(*.f64 a a)
95.7%2(*.f64 b b)
Compiler

Compiled 25 to 15 computations (40% saved)

regimes7.0ms (0.3%)

Counts
3 → 2
Calls
Call 1
Inputs
(*.f64 a a)
(neg.f64 (*.f64 b b))
(-.f64 #s(literal 0 binary64) (*.f64 b b))
Outputs
(*.f64 a a)
(neg.f64 (*.f64 b b))
Calls

4 calls:

2.0ms
a
2.0ms
b
2.0ms
(*.f64 b b)
2.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
79.8%2b
79.8%2(*.f64 b b)
78.9%2a
78.9%2(*.f64 a a)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes5.0ms (0.2%)

Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 a a)
Outputs
(*.f64 a a)
Calls

3 calls:

2.0ms
b
1.0ms
a
1.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
55.5%1a
55.5%1(*.f64 a a)
55.5%1b
Compiler

Compiled 11 to 7 computations (36.4% saved)

bsearch10.0ms (0.4%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
9.0ms
2.3245483993426593e+300
8.754543754066912e+304
Results
5.0ms128×0valid
Compiler

Compiled 110 to 73 computations (33.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-sub: 1.0ms (52.9% of total)
ival-mult: 1.0ms (52.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

bsearch12.0ms (0.5%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
11.0ms
4.812728735124786e-89
5.443322212577418e-84
Results
7.0ms144×0valid
Compiler

Compiled 113 to 81 computations (28.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 2.0ms
ival-sub: 1.0ms (44.9% of total)
ival-mult: 1.0ms (44.9% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify8.0ms (0.3%)

Algorithm
egg-herbie
Rules
+-commutative_binary64
sub-neg_binary64
*-commutative_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01232
12132
22632
32932
43032
Stop Event
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 a a) #s(literal 85000000000000004581865974370598366163724829246185572978348415951254765653518945387116819454670418327328342885487637692224012378221074442966174155350462550165379358566950513380353237108353777570461273811716336944951030780900364451291765379686542519091804912277597478282203440341468205909465276951088332800 binary64)) (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
(if (<=.f64 (*.f64 b b) #s(literal 8639640362892897/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824 binary64)) (*.f64 a a) (neg.f64 (*.f64 b b)))
(*.f64 a a)
Outputs
(if (<=.f64 (*.f64 a a) #s(literal 85000000000000004581865974370598366163724829246185572978348415951254765653518945387116819454670418327328342885487637692224012378221074442966174155350462550165379358566950513380353237108353777570461273811716336944951030780900364451291765379686542519091804912277597478282203440341468205909465276951088332800 binary64)) (-.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
(if (<=.f64 (*.f64 b b) #s(literal 8639640362892897/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824 binary64)) (*.f64 a a) (neg.f64 (*.f64 b b)))
(if (<=.f64 (*.f64 b b) #s(literal 8639640362892897/2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824 binary64)) (*.f64 a a) (*.f64 b (-.f64 #s(literal 0 binary64) b)))
(*.f64 a a)

soundness439.0ms (18.5%)

Rules
2156×*-lowering-*.f32
2156×*-lowering-*.f64
1684×sum4-define
1286×sum3-define
1232×sum5-define
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
017219
140201
2123201
3516201
41905201
53924201
08187201
0610
12710
219510
0193310
Stop Event
done
iter limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 63 to 32 computations (49.2% saved)

preprocess33.0ms (1.4%)

Remove

(abs b)

(abs a)

Compiler

Compiled 178 to 80 computations (55.1% saved)

end0.0ms (0%)

Profiling

Loading profile data...