Bouland and Aaronson, Equation (26)

Time bar (total: 8.2s)

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 20 to 13 computations (35% saved)

Precisions
Click to see histograms. Total time spent on operations: 0.0ms
ival-sub: 0.0ms (0% of total)
ival-add: 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)
ival-pow: 0.0ms (0% of total)

sample1.2s (14.5%)

Results
916.0ms8256×0valid
Precisions
Click to see histograms. Total time spent on operations: 571.0ms
ival-mult: 244.0ms (42.7% of total)
ival-add: 104.0ms (18.2% of total)
ival-pow: 104.0ms (18.2% of total)
ival-sub: 98.0ms (17.2% of total)
const: 19.0ms (3.3% of total)
backward-pass: 3.0ms (0.5% of total)
Bogosity

preprocess222.0ms (2.7%)

Algorithm
egg-herbie
Rules
1996×+-lowering-+.f64
1996×+-lowering-+.f32
1890×fma-lowering-fma.f32
1890×fma-lowering-fma.f64
1774×fmsub-define
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03286
19374
224572
383272
4420372
01214
12812
26112
319712
490112
5288912
6438612
0823012
Stop Event
iter limit
node limit
node limit
Calls
Call 1
Inputs
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1)
Outputs
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1)
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
Call 2
Inputs
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1)
(- (+ (pow (+ (* (neg a) (neg a)) (* b b)) 2) (* 4 (* b b))) 1)
(- (+ (pow (+ (* a a) (* (neg b) (neg b))) 2) (* 4 (* (neg b) (neg b)))) 1)
(neg (- (+ (pow (+ (* (neg a) (neg a)) (* b b)) 2) (* 4 (* b b))) 1))
(neg (- (+ (pow (+ (* a a) (* (neg b) (neg b))) 2) (* 4 (* (neg b) (neg b)))) 1))
(- (+ (pow (+ (* b b) (* a a)) 2) (* 4 (* a a))) 1)
Outputs
(- (+ (pow (+ (* a a) (* b b)) 2) (* 4 (* b b))) 1)
(+ (square (fma a a (square b))) (fnmsub (square b) -4 1))
(- (+ (pow (+ (* (neg a) (neg a)) (* b b)) 2) (* 4 (* b b))) 1)
(+ (square (fma a a (square b))) (fnmsub (square b) -4 1))
(- (+ (pow (+ (* a a) (* (neg b) (neg b))) 2) (* 4 (* (neg b) (neg b)))) 1)
(+ (square (fma a a (square b))) (fnmsub (square b) -4 1))
(neg (- (+ (pow (+ (* (neg a) (neg a)) (* b b)) 2) (* 4 (* b b))) 1))
(- (fnmsub (square b) 4 -1) (square (fma a a (square b))))
(neg (- (+ (pow (+ (* a a) (* (neg b) (neg b))) 2) (* 4 (* (neg b) (neg b)))) 1))
(- (fnmsub (square b) 4 -1) (square (fma a a (square b))))
(- (+ (pow (+ (* b b) (* a a)) 2) (* 4 (* a a))) 1)
(+ (square (fma a a (square b))) (fnmsub (square a) -4 1))
Symmetry

(abs a)

(abs b)

explain188.0ms (2.3%)

FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
054(9.360082015892829e+30 1.8808256125884621e-252)0-(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))
00-0-b
00-0-(+.f64 (*.f64 a a) (*.f64 b b))
00-0-#s(literal 2 binary64)
00-0-(*.f64 #s(literal 4 binary64) (*.f64 b b))
00-0-(*.f64 b b)
00-0-(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal 1 binary64))
00-0-#s(literal 4 binary64)
00-0-(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b)))
00-0-#s(literal 1 binary64)
00-0-a
00-0-(*.f64 a a)
Results
125.0ms512×0valid
Compiler

Compiled 153 to 38 computations (75.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 27.0ms
ival-mult: 12.0ms (44.3% of total)
ival-add: 6.0ms (22.2% of total)
ival-pow: 6.0ms (22.2% of total)
ival-sub: 3.0ms (11.1% of total)
const: 1.0ms (3.7% of total)
backward-pass: 0.0ms (0% of total)

eval0.0ms (0%)

Compiler

Compiled 25 to 11 computations (56% saved)

prune1.0ms (0%)

Alt Table
Click to see full alt table
StatusAccuracyProgram
99.9%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
Compiler

Compiled 25 to 11 computations (56% saved)

simplify232.0ms (2.8%)

Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 a a)
cost-diff0
(+.f64 (*.f64 a a) (*.f64 b b))
cost-diff0
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)))
cost-diff0
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
Rules
4084×sum4-define
2864×sum3-define
2862×fma-define
2836×sum5-define
2398×fma-lowering-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01140
13140
29840
348340
4141140
5402440
6414440
7424040
8425440
9426040
10426040
11731240
12796640
13796640
0796640
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(* (+ (* a a) (* b b)) (+ (* a a) (* b b)))
(+ (* a a) (* b b))
(* a a)
a
(* b b)
b
(+ (* (* b b) 4) -1)
(* (* b b) 4)
4
-1
Outputs
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(* (+ (* a a) (* b b)) (+ (* a a) (* b b)))
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)))
(+ (* a a) (* b b))
(+.f64 (*.f64 a a) (*.f64 b b))
(* a a)
(*.f64 a a)
a
(* b b)
(*.f64 b b)
b
(+ (* (* b b) 4) -1)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* (* b b) 4)
(*.f64 b (*.f64 b #s(literal 4 binary64)))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)

localize54.0ms (0.7%)

Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 a a)
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy99.8%
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)))
Results
40.0ms256×0valid
Compiler

Compiled 70 to 12 computations (82.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-mult: 7.0ms (64.8% of total)
ival-add: 4.0ms (37% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

series30.0ms (0.4%)

Counts
6 → 108
Calls
Call 1
Inputs
#<alt (+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))>
#<alt (* (+ (* a a) (* b b)) (+ (* a a) (* b b)))>
#<alt (+ (* a a) (* b b))>
#<alt (* a a)>
#<alt (* (* b b) 4)>
#<alt (* b b)>
Outputs
#<alt (- (+ (* 4 (pow b 2)) (pow b 4)) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (- (pow a 4) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow a 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (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 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 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 a 2)>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (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

27 calls:

TimeVariablePointExpression
24.0ms
a
@-inf
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
1.0ms
a
@0
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
1.0ms
b
@inf
(* (* b b) 4)
1.0ms
b
@0
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
1.0ms
b
@inf
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))

rewrite281.0ms (3.4%)

Algorithm
batch-egg-rewrite
Rules
3516×sum4-define
2860×fma-define
2836×sum5-define
2652×sum3-define
2374×fma-lowering-fma.f32
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01131
13531
211131
352631
4154031
5423931
6450031
7473231
8475331
9477631
10477631
11786431
0805231
Stop Event
iter limit
node limit
Counts
6 → 188
Calls
Call 1
Inputs
(+ (* (+ (* a a) (* b b)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(* (+ (* a a) (* b b)) (+ (* a a) (* b b)))
(+ (* a a) (* b b))
(* a a)
(* (* b b) 4)
(* b b)
Outputs
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.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 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(+.f64 (*.f64 a (*.f64 a (*.f64 b b))) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(+.f64 (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))) (*.f64 a (*.f64 a (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 b b)))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))) (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 a (*.f64 a (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 a (*.f64 a (*.f64 b b)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a a) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 (*.f64 a a) (*.f64 b b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 b (*.f64 (*.f64 a a) b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 b (*.f64 b (*.f64 (*.f64 a a) #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b b) (*.f64 a a) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b b) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 a (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 (*.f64 a (*.f64 a (*.f64 b b))) #s(literal 2 binary64) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) b (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a b) (*.f64 a b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 a b) (*.f64 b (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 (*.f64 a (*.f64 a a)) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))))
(fma.f64 (*.f64 (*.f64 a a) b) b (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 (*.f64 a a) b) (*.f64 b #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a (*.f64 b b)) a (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 a (*.f64 b b)) (*.f64 a #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (+.f64 (*.f64 a a) #s(literal 4 binary64)) (*.f64 b b) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))) b (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) b (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) b (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))) a (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 (*.f64 a a) #s(literal 2 binary64))) b (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 (*.f64 a a) #s(literal 2 binary64)) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 a b) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 (*.f64 a a) b) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 a (*.f64 b b)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 b b))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 b b))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))) (*.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b)))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(fma.f64 a (*.f64 a (*.f64 b b)) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 a (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 b b) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 b (*.f64 b (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 b (*.f64 (*.f64 a a) b) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 b (*.f64 b (*.f64 (*.f64 a a) #s(literal 2 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (*.f64 a a) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (*.f64 b b) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b b) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 a (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 b b))) #s(literal 2 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) b (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 a b) (*.f64 a b) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a b) (*.f64 b (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 b b)) b (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(fma.f64 (*.f64 (*.f64 a a) b) b (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 (*.f64 a a) b) (*.f64 b #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 b b)) a (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 b b)) (*.f64 a #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64))) (*.f64 b b) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))) b (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b b))) a (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 (*.f64 a a) #s(literal 2 binary64))) b (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 (*.f64 a a) #s(literal 2 binary64)) (*.f64 b b) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 a b) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 (*.f64 a a) b) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 a (*.f64 b b)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.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 a) (*.f64 b b))
(+.f64 (*.f64 b b) (*.f64 a a))
(exp.f64 (log.f64 (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 a a (*.f64 b b))
(fma.f64 b b (*.f64 a a))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 a #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 a))
(*.f64 a a)
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(*.f64 (*.f64 b #s(literal 4 binary64)) b)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)

simplify266.0ms (3.2%)

Algorithm
egg-herbie
Rules
3094×+-lowering-+.f64
3094×+-lowering-+.f32
2484×*-lowering-*.f32
2484×*-lowering-*.f64
2036×sum3-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0771110
1249918
2823886
33445787
08929787
Stop Event
iter limit
node limit
Counts
108 → 108
Calls
Call 1
Inputs
(- (+ (* 4 (pow b 2)) (pow b 4)) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(- (pow a 4) 1)
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(pow b 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow a 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(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 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 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 a 2)
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (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
(- (+ (* 4 (pow b 2)) (pow b 4)) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64))
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))) #s(literal -1 binary64)))
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))) #s(literal -1 binary64)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))) (*.f64 a (*.f64 a (*.f64 a a))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))) (*.f64 a (*.f64 a (*.f64 a a))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))) (*.f64 a (*.f64 a (*.f64 a a))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))) (*.f64 a (*.f64 a (*.f64 a a))))))
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))) #s(literal -1 binary64)))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) (+.f64 (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))) #s(literal -1 binary64)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 #s(literal 4 binary64) (*.f64 b b))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)))))
(pow b 2)
(*.f64 b b)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.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 a 2)
(*.f64 a a)
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* 4 (pow b 2))
(*.f64 #s(literal 4 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)

eval46.0ms (0.6%)

Compiler

Compiled 9550 to 451 computations (95.3% saved)

prune38.0ms (0.5%)

Pruning

10 alts after pruning (9 fresh and 1 done)

PrunedKeptTotal
New3649373
Fresh000
Picked011
Done000
Total36410374
Accuracy
100.0%
Counts
374 → 10
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.1%
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))) (*.f64 a (*.f64 a (*.f64 a a))))
99.9%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
99.9%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
81.5%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
87.3%
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64))
72.8%
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
72.8%
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
67.9%
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
49.8%
(*.f64 b (*.f64 b (*.f64 b b)))
45.0%
(*.f64 a (*.f64 a (*.f64 a a)))
Compiler

Compiled 327 to 189 computations (42.2% saved)

simplify245.0ms (3%)

Algorithm
egg-herbie
Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 a a)
cost-diff0
(+.f64 (*.f64 a a) (*.f64 b b))
cost-diff0
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
cost-diff0
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 b (*.f64 b b))
cost-diff0
(*.f64 b (*.f64 b (*.f64 b b)))
cost-diff256
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 a (*.f64 a a))
cost-diff0
(*.f64 a (*.f64 a (*.f64 a a)))
cost-diff0
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 a (*.f64 a a))
cost-diff0
(*.f64 a (*.f64 a (*.f64 a a)))
cost-diff0
(+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64)))
cost-diff0
(*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b)))
cost-diff0
(+.f64 (*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
cost-diff6336
(pow.f64 b #s(literal 2 binary64))
Rules
4024×sum4-define
2948×fma-define
2932×sum3-define
2852×sum5-define
2398×fma-lowering-fma.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
022161
171144
2179143
3680142
41812142
53691142
63818142
73917142
83931142
93937142
105547142
117624142
127812142
137812142
07812142
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* (+ (* a a) (pow b 2)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(* (+ (* a a) (pow b 2)) (+ (* a a) (* b b)))
(+ (* a a) (pow b 2))
(* a a)
a
(pow b 2)
b
2
(+ (* a a) (* b b))
(* b b)
(+ (* (* b b) 4) -1)
(* (* b b) 4)
4
-1
(* a (* a (* a a)))
a
(* a (* a a))
(* a a)
(+ (* a (* a (* a a))) -1)
(* a (* a (* a a)))
a
(* a (* a a))
(* a a)
-1
(+ (* b (* b (* b b))) (+ (* (* b b) 4) -1))
(* b (* b (* b b)))
b
(* b (* b b))
(* b b)
(+ (* (* b b) 4) -1)
(* (* b b) 4)
4
-1
(+ (* (+ (* a a) (* b b)) (* a a)) (+ (* (* b b) 4) -1))
(* (+ (* a a) (* b b)) (* a a))
(+ (* a a) (* b b))
(* a a)
a
(* b b)
b
(+ (* (* b b) 4) -1)
(* (* b b) 4)
4
-1
Outputs
(+ (* (+ (* a a) (pow b 2)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(* (+ (* a a) (pow b 2)) (+ (* a a) (* b b)))
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)))
(+ (* a a) (pow b 2))
(+.f64 (*.f64 a a) (*.f64 b b))
(* a a)
(*.f64 a a)
a
(pow b 2)
(*.f64 b b)
b
2
#s(literal 2 binary64)
(+ (* a a) (* b b))
(+.f64 (*.f64 a a) (*.f64 b b))
(* b b)
(*.f64 b b)
(+ (* (* b b) 4) -1)
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(* (* b b) 4)
(*.f64 (*.f64 b b) #s(literal 4 binary64))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)
(* a (* a (* a a)))
(*.f64 (*.f64 a a) (*.f64 a a))
a
(* a (* a a))
(*.f64 a (*.f64 a a))
(* a a)
(*.f64 a a)
(+ (* a (* a (* a a))) -1)
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))
(* a (* a (* a a)))
(*.f64 (*.f64 a a) (*.f64 a a))
a
(* a (* a a))
(*.f64 a (*.f64 a a))
(* a a)
(*.f64 a a)
-1
#s(literal -1 binary64)
(+ (* b (* b (* b b))) (+ (* (* b b) 4) -1))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(* b (* b (* b b)))
(*.f64 b (*.f64 b (*.f64 b b)))
b
(* b (* b b))
(*.f64 b (*.f64 b b))
(* b b)
(*.f64 b b)
(+ (* (* b b) 4) -1)
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(* (* b b) 4)
(*.f64 (*.f64 b b) #s(literal 4 binary64))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)
(+ (* (+ (* a a) (* b b)) (* a a)) (+ (* (* b b) 4) -1))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(* (+ (* a a) (* b b)) (* a a))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))
(+ (* a a) (* b b))
(+.f64 (*.f64 a a) (*.f64 b b))
(* a a)
(*.f64 a a)
a
(* b b)
(*.f64 b b)
b
(+ (* (* b b) 4) -1)
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(* (* b b) 4)
(*.f64 (*.f64 b b) #s(literal 4 binary64))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)

localize177.0ms (2.2%)

Localize:

Found 19 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(*.f64 a a)
accuracy100.0%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy90.1%
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy99.9%
(*.f64 b (*.f64 b (*.f64 b b)))
accuracy99.9%
(*.f64 b (*.f64 b b))
accuracy100.0%
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
accuracy100.0%
(*.f64 a a)
accuracy99.9%
(*.f64 a (*.f64 a (*.f64 a a)))
accuracy99.9%
(*.f64 a (*.f64 a a))
accuracy100.0%
(*.f64 a a)
accuracy99.9%
(*.f64 a (*.f64 a (*.f64 a a)))
accuracy99.9%
(*.f64 a (*.f64 a a))
accuracy100.0%
(*.f64 a a)
accuracy100.0%
(pow.f64 b #s(literal 2 binary64))
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy99.8%
(*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b)))
Results
120.0ms256×0valid
Compiler

Compiled 227 to 23 computations (89.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 30.0ms
ival-mult: 16.0ms (53.2% of total)
ival-add: 9.0ms (29.9% of total)
ival-pow: 4.0ms (13.3% of total)
const: 1.0ms (3.3% of total)
backward-pass: 0.0ms (0% of total)

series8.0ms (0.1%)

Counts
16 → 264
Calls
Call 1
Inputs
#<alt (pow b 2)>
#<alt (+ (* (+ (* a a) (pow b 2)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))>
#<alt (* (+ (* a a) (pow b 2)) (+ (* a a) (* b b)))>
#<alt (+ (* a a) (pow b 2))>
#<alt (* a (* a (* a a)))>
#<alt (* a (* a a))>
#<alt (* a a)>
#<alt (+ (* a (* a (* a a))) -1)>
#<alt (+ (* b (* b (* b b))) (+ (* (* b b) 4) -1))>
#<alt (* b (* b (* b b)))>
#<alt (* b (* b b))>
#<alt (* b b)>
#<alt (+ (* (+ (* a a) (* b b)) (* a a)) (+ (* (* b b) 4) -1))>
#<alt (* (+ (* a a) (* b b)) (* a a))>
#<alt (+ (* a a) (* b b))>
#<alt (* (* b b) 4)>
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 (- (+ (* 4 (pow b 2)) (pow b 4)) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))>
#<alt (- (pow a 4) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow a 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (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 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<alt (pow a 3)>
#<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>
#<alt (- (pow a 4) 1)>
#<alt (- (pow a 4) 1)>
#<alt (- (pow a 4) 1)>
#<alt (pow a 4)>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- 1 (/ 1 (pow a 4))))>
#<alt -1>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<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 (- (* 4 (pow b 2)) 1)>
#<alt (- (+ (* 4 (pow b 2)) (* (pow a 2) (pow b 2))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)>
#<alt (- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))>
#<alt (- (pow a 4) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)>
#<alt (* (pow b 2) (+ 4 (pow a 2)))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (+ 4 (pow a 2)))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))>
#<alt (* (pow a 2) (pow b 2))>
#<alt (* (pow a 2) (+ (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (pow a 2) (pow b 2)))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 4)>
#<alt (+ (* (pow a 2) (pow b 2)) (pow a 4))>
#<alt (+ (* (pow a 2) (pow b 2)) (pow a 4))>
#<alt (+ (* (pow a 2) (pow b 2)) (pow a 4))>
#<alt (* (pow a 2) (pow b 2))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (* (pow a 2) (pow b 2))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))>
#<alt (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 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))>
#<alt (pow a 2)>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (+ (pow a 2) (pow b 2))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
Calls

66 calls:

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

rewrite314.0ms (3.8%)

Algorithm
batch-egg-rewrite
Rules
3800×sum4-define
3024×fma-define
2916×sum3-define
2804×sum5-define
2696×fma-lowering-fma.f32
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
022100
17585
220084
376083
4196283
5399083
6415583
7427383
8431183
9431783
10593583
0800883
Stop Event
iter limit
node limit
Counts
16 → 302
Calls
Call 1
Inputs
(pow b 2)
(+ (* (+ (* a a) (pow b 2)) (+ (* a a) (* b b))) (+ (* (* b b) 4) -1))
(* (+ (* a a) (pow b 2)) (+ (* a a) (* b b)))
(+ (* a a) (pow b 2))
(* a (* a (* a a)))
(* a (* a a))
(* a a)
(+ (* a (* a (* a a))) -1)
(+ (* b (* b (* b b))) (+ (* (* b b) 4) -1))
(* b (* b (* b b)))
(* b (* b b))
(* b b)
(+ (* (+ (* a a) (* b b)) (* a a)) (+ (* (* b b) 4) -1))
(* (+ (* a a) (* b b)) (* a a))
(+ (* a a) (* b b))
(* (* b b) 4)
Outputs
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.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 (*.f64 a a) (*.f64 b b))) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 b (*.f64 b #s(literal 4 binary64)))) #s(literal -1 binary64))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(+.f64 (*.f64 a (*.f64 b (*.f64 b a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))) (*.f64 a (*.f64 b (*.f64 b a))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 b (*.f64 b a)))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 b (*.f64 b a)))))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a)))) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64))))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 b (*.f64 b (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 b (*.f64 b (*.f64 #s(literal 2 binary64) (*.f64 a a))) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a))) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 a (*.f64 a (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 a (*.f64 b (*.f64 b a)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 a (*.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b a))) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(fma.f64 (*.f64 a a) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b b) (*.f64 a a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b b) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 (*.f64 a (*.f64 a a)) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) #s(literal -1 binary64)))
(fma.f64 (*.f64 a (*.f64 b (*.f64 b a))) #s(literal 2 binary64) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) b (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b a) (*.f64 b a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b a) (*.f64 #s(literal 2 binary64) (*.f64 b a)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 a a)) b (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 b a)) a (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b (*.f64 b a)) (*.f64 #s(literal 2 binary64) a) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) b (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) b (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (+.f64 (*.f64 a a) #s(literal 4 binary64)) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) b (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (*.f64 b b) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 #s(literal 2 binary64) (*.f64 a a))) b (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b a))) a (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b a)) (*.f64 b a) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 #s(literal 2 binary64) a) (*.f64 b (*.f64 b a)) (+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64))))) b (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 b b) (+.f64 (*.f64 a a) (+.f64 (*.f64 a a) #s(literal 4 binary64)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) b (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 a (*.f64 b (*.f64 b a))) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 a (*.f64 b (*.f64 b a))))
(+.f64 (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))) (*.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a)))))
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 b (*.f64 b (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 b (*.f64 b (*.f64 #s(literal 2 binary64) (*.f64 a a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 b (*.f64 b a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 a (*.f64 b (*.f64 b a)) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 a (*.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b a))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(fma.f64 (*.f64 a a) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (*.f64 a a) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (*.f64 b b) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 b b) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(fma.f64 (*.f64 b (*.f64 b b)) b (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 b (*.f64 b a))) #s(literal 2 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) (*.f64 b b))) b (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 (*.f64 b a) (*.f64 b a) (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b a) (*.f64 #s(literal 2 binary64) (*.f64 b a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 a a)) b (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 b a)) a (+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 b a)) (*.f64 #s(literal 2 binary64) a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))) (*.f64 a a) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))) b (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))) (*.f64 b b) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b)))) a (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 b (*.f64 #s(literal 2 binary64) (*.f64 a a))) b (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b a))) a (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 #s(literal 2 binary64) (*.f64 b a)) (*.f64 b a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 #s(literal 2 binary64) a) (*.f64 b (*.f64 b a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 b b))))
(pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.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 a) (*.f64 b b))
(+.f64 (*.f64 b b) (*.f64 a a))
(exp.f64 (log.f64 (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 b b (*.f64 a a))
(fma.f64 a a (*.f64 b b))
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 a)))
(pow.f64 a #s(literal 4 binary64))
(pow.f64 (*.f64 a a) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 a))
(*.f64 a (*.f64 a (*.f64 a a)))
(*.f64 (*.f64 a a) (*.f64 a a))
(*.f64 (*.f64 a (*.f64 a a)) a)
(exp.f64 (*.f64 #s(literal 3 binary64) (log.f64 a)))
(pow.f64 a #s(literal 3 binary64))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 a))
(*.f64 a (*.f64 a a))
(*.f64 (*.f64 a a) a)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 a #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 a))
(*.f64 a a)
(+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(fma.f64 a (*.f64 a (*.f64 a a)) #s(literal -1 binary64))
(fma.f64 (*.f64 a a) (*.f64 a a) #s(literal -1 binary64))
(fma.f64 (*.f64 a (*.f64 a a)) a #s(literal -1 binary64))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b #s(literal -1 binary64))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) #s(literal -1 binary64))
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 b)))
(pow.f64 b #s(literal 4 binary64))
(pow.f64 (*.f64 b b) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 b))
(*.f64 b (*.f64 b (*.f64 b b)))
(*.f64 (*.f64 b b) (*.f64 b b))
(*.f64 (*.f64 b (*.f64 b b)) b)
(exp.f64 (*.f64 (log.f64 b) #s(literal 3 binary64)))
(pow.f64 b #s(literal 3 binary64))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 b))
(*.f64 b (*.f64 b b))
(*.f64 (*.f64 b b) b)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) #s(literal -1 binary64))
(+.f64 (*.f64 a (*.f64 b (*.f64 b a))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 b (*.f64 b a)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))) (*.f64 a (*.f64 b (*.f64 b a))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 b (*.f64 b a)))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (*.f64 a a)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 a (*.f64 a (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 a (*.f64 b (*.f64 b a)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a a) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 b b) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b b) (*.f64 a a) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a a)) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 a a) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 (*.f64 b a) (*.f64 b a) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 a a)) b (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (*.f64 b a)) a (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 a a) #s(literal 4 binary64))) b (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 a a) #s(literal 4 binary64)) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 a (*.f64 b (*.f64 b a))))
(+.f64 (*.f64 a (*.f64 b (*.f64 b a))) (*.f64 a (*.f64 a (*.f64 a a))))
(exp.f64 (log.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))))
(fma.f64 b (*.f64 b (*.f64 a a)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 a (*.f64 b (*.f64 b a))))
(fma.f64 a (*.f64 b (*.f64 b a)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 a (*.f64 b (*.f64 b a))))
(fma.f64 (*.f64 a a) (*.f64 b b) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b b) (*.f64 a a) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 a (*.f64 b (*.f64 b a))))
(fma.f64 (*.f64 b a) (*.f64 b a) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b (*.f64 a a)) b (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b (*.f64 b a)) a (*.f64 a (*.f64 a (*.f64 a a))))
(*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))
(*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a))
(*.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 b b))) a)
(+.f64 (*.f64 a a) (*.f64 b b))
(+.f64 (*.f64 b b) (*.f64 a a))
(exp.f64 (log.f64 (+.f64 (*.f64 a a) (*.f64 b b))))
(fma.f64 b b (*.f64 a a))
(fma.f64 a a (*.f64 b b))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(*.f64 (*.f64 b #s(literal 4 binary64)) b)

simplify281.0ms (3.4%)

Algorithm
egg-herbie
Rules
3254×+-lowering-+.f64
3254×+-lowering-+.f32
2792×*-lowering-*.f32
2792×*-lowering-*.f64
1538×sum4-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01122223
13621835
211501770
345641710
084051710
Stop Event
iter limit
node limit
Counts
264 → 264
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)
(- (+ (* 4 (pow b 2)) (pow b 4)) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(- (pow a 4) 1)
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(pow b 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow a 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(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 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(pow a 3)
(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 a 4) 1)
(- (pow a 4) 1)
(- (pow a 4) 1)
(pow a 4)
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(pow a 4)
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
-1
(- (* 4 (pow b 2)) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(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)
(- (* 4 (pow b 2)) 1)
(- (+ (* 4 (pow b 2)) (* (pow a 2) (pow b 2))) 1)
(- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)
(- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)
(pow a 4)
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(pow a 4)
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(- (pow a 4) 1)
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(* (pow b 2) (+ 4 (pow a 2)))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow b 2) (+ 4 (pow a 2)))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(* (pow a 2) (pow b 2))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(pow a 4)
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 4)
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 4)
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(* (pow a 2) (pow b 2))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(* (pow a 2) (pow b 2))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(* (pow b 2) (+ (/ (pow a 4) (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 b 2))
(pow a 2)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(pow a 2)
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(+ (pow a 2) (pow b 2))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(pow b 2)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (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)
(- (+ (* 4 (pow b 2)) (pow b 4)) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (+ (* 4 (pow b 2)) (pow b 4))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
(- (+ (* 4 (pow b 2)) (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))) 1)
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a))))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a))))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a))))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 4) (pow a 4))))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 2 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a))))))))
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.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 #s(literal 4 binary64) (*.f64 b b)))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.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 #s(literal 4 binary64) (*.f64 b b)))))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.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 #s(literal 4 binary64) (*.f64 b b)))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.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 #s(literal 4 binary64) (*.f64 b b)))))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a)) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a)))))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a)) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a)))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a)) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a)))))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a)) (/.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 a (*.f64 a (*.f64 a a)))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 a a)) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))))
(pow b 2)
(*.f64 b b)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.f64 a a))
(pow a 3)
(*.f64 a (*.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 a 2)
(*.f64 a a)
-1
#s(literal -1 binary64)
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(* (pow a 4) (- 1 (/ 1 (pow a 4))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
-1
#s(literal -1 binary64)
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.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)
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(- (+ (* 4 (pow b 2)) (* (pow a 2) (pow b 2))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))) #s(literal -1 binary64))
(- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(- (+ (* 4 (pow b 2)) (* (pow a 2) (+ (pow a 2) (pow b 2)))) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))))))
(* (pow a 4) (- (+ 1 (+ (* 4 (/ (pow b 2) (pow a 4))) (/ (pow b 2) (pow a 2)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 #s(literal 1 binary64) (*.f64 a a)) (/.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a (*.f64 a a)))))))))
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(- (+ (* (pow b 2) (+ 4 (pow a 2))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (pow a 2)))
(*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (pow a 2)))
(*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow b 2) (- (+ 4 (+ (/ (pow a 4) (pow b 2)) (pow a 2))) (/ 1 (pow b 2))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a a)))))
(* (pow a 2) (pow b 2))
(*.f64 b (*.f64 b (*.f64 a a)))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow a 2) (+ (pow a 2) (pow b 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(* (pow a 4) (+ 1 (/ (pow b 2) (pow a 2))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b b) (*.f64 a a))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(+ (* (pow a 2) (pow b 2)) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow a 2) (pow b 2))
(*.f64 b (*.f64 b (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow a 2) (pow b 2))
(*.f64 b (*.f64 b (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(* (pow b 2) (+ (/ (pow a 4) (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 b b) (*.f64 a a)))
(pow b 2)
(*.f64 b b)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow a 2) (+ 1 (/ (pow b 2) (pow a 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow a 2)
(*.f64 a a)
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(+ (pow a 2) (pow b 2))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* (pow b 2) (+ 1 (/ (pow a 2) (pow b 2))))
(+.f64 (*.f64 b b) (*.f64 a a))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(* 4 (pow b 2))
(*.f64 (*.f64 b b) #s(literal 4 binary64))

eval123.0ms (1.5%)

Compiler

Compiled 16395 to 680 computations (95.9% saved)

prune63.0ms (0.8%)

Pruning

12 alts after pruning (9 fresh and 3 done)

PrunedKeptTotal
New8168824
Fresh314
Picked325
Done011
Total82212834
Accuracy
100.0%
Counts
834 → 12
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.1%
(pow.f64 a #s(literal 4 binary64))
72.8%
(+.f64 (pow.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
96.0%
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
99.9%
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
79.5%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
72.8%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
51.7%
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
67.9%
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
45.0%
(*.f64 (*.f64 a a) (*.f64 a a))
49.8%
(*.f64 b (*.f64 b (*.f64 b b)))
45.0%
(*.f64 a (*.f64 a (*.f64 a a)))
24.1%
#s(literal -1 binary64)
Compiler

Compiled 259 to 157 computations (39.4% saved)

simplify64.0ms (0.8%)

Algorithm
egg-herbie
Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
cost-diff6080
(pow.f64 a #s(literal 4 binary64))
cost-diff0
(+.f64 (*.f64 b b) #s(literal 4 binary64))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
cost-diff0
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
cost-diff0
(*.f64 a a)
cost-diff0
(*.f64 (*.f64 a a) (*.f64 a a))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
cost-diff0
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
cost-diff0
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
Rules
1302×fma-define
1188×fma-lowering-fma.f32
1188×fma-lowering-fma.f64
818×sum3-define
730×sum4-define
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
017107
152103
2166103
3441103
41002102
51902102
62213102
72240102
02240102
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
(+ (* (* b b) (+ (* b b) 4)) -1)
(* (* b b) (+ (* b b) 4))
(* b b)
b
(+ (* b b) 4)
4
-1
(* (* a a) (+ (* a a) (* b (* b 2))))
(* a a)
a
(+ (* a a) (* b (* b 2)))
(* b (* b 2))
(* b 2)
2
-1
(* (* a a) (* a a))
(* a a)
a
(+ (* (* b b) (+ (* b b) 4)) -1)
(* (* b b) (+ (* b b) 4))
(* b b)
b
(+ (* b b) 4)
4
-1
(pow a 4)
a
4
Outputs
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(+ (* (* b b) (+ (* b b) 4)) -1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(* (* b b) (+ (* b b) 4))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(* b b)
(*.f64 b b)
b
(+ (* b b) 4)
(+.f64 (*.f64 b b) #s(literal 4 binary64))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)
(* (* a a) (+ (* a a) (* b (* b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(* a a)
(*.f64 a a)
a
(+ (* a a) (* b (* b 2)))
(+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))
(* b (* b 2))
(*.f64 (*.f64 b b) #s(literal 2 binary64))
(* b 2)
(*.f64 b #s(literal 2 binary64))
2
#s(literal 2 binary64)
-1
#s(literal -1 binary64)
(* (* a a) (* a a))
(*.f64 (*.f64 a a) (*.f64 a a))
(* a a)
(*.f64 a a)
a
(+ (* (* b b) (+ (* b b) 4)) -1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(* (* b b) (+ (* b b) 4))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(* b b)
(*.f64 b b)
b
(+ (* b b) 4)
(+.f64 (*.f64 b b) #s(literal 4 binary64))
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)
(pow a 4)
(*.f64 (*.f64 a a) (*.f64 a a))
a
4
#s(literal 4 binary64)

localize107.0ms (1.3%)

Localize:

Found 11 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(pow.f64 a #s(literal 4 binary64))
accuracy100.0%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
accuracy100.0%
(+.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy100.0%
(*.f64 b b)
accuracy99.9%
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
accuracy100.0%
(*.f64 a a)
accuracy99.7%
(*.f64 (*.f64 a a) (*.f64 a a))
accuracy100.0%
(*.f64 a a)
accuracy100.0%
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
accuracy99.9%
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
accuracy90.1%
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
Results
77.0ms256×0valid
Compiler

Compiled 142 to 18 computations (87.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-mult: 12.0ms (59.3% of total)
ival-add: 5.0ms (24.7% of total)
ival-pow: 3.0ms (14.8% of total)
const: 1.0ms (4.9% of total)
backward-pass: 0.0ms (0% of total)

series8.0ms (0.1%)

Counts
9 → 132
Calls
Call 1
Inputs
#<alt (+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))>
#<alt (+ (* (* b b) (+ (* b b) 4)) -1)>
#<alt (* (* b b) (+ (* b b) 4))>
#<alt (* b b)>
#<alt (* (* a a) (* a a))>
#<alt (* a a)>
#<alt (+ (* b b) 4)>
#<alt (pow a 4)>
#<alt (* (* a a) (+ (* a a) (* b (* b 2))))>
Outputs
#<alt (- (pow a 4) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))>
#<alt (* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))>
#<alt -1>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* 4 (pow b 2))>
#<alt (* (pow b 2) (+ 4 (pow b 2)))>
#<alt (* (pow b 2) (+ 4 (pow b 2)))>
#<alt (* (pow b 2) (+ 4 (pow b 2)))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 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)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<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 4>
#<alt (+ 4 (pow b 2))>
#<alt (+ 4 (pow b 2))>
#<alt (+ 4 (pow b 2))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (pow a 4)>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
Calls

33 calls:

TimeVariablePointExpression
1.0ms
a
@0
(* (* a a) (+ (* a a) (* b (* b 2))))
0.0ms
b
@0
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
0.0ms
a
@0
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
0.0ms
b
@inf
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
0.0ms
a
@inf
(* (* a a) (+ (* a a) (* b (* b 2))))

rewrite103.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1362×fma-define
1228×fma-lowering-fma.f32
1228×fma-lowering-fma.f64
870×sum3-define
746×sum4-define
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01758
15855
218755
349155
4109454
5208054
6250454
7255454
0255454
Stop Event
iter limit
saturated
Counts
9 → 158
Calls
Call 1
Inputs
(+ (+ (* (* b b) (+ (* b b) 4)) -1) (* (* a a) (+ (* a a) (* b (* b 2)))))
(+ (* (* b b) (+ (* b b) 4)) -1)
(* (* b b) (+ (* b b) 4))
(* b b)
(* (* a a) (* a a))
(* a a)
(+ (* b b) 4)
(pow a 4)
(* (* a a) (+ (* a a) (* b (* b 2))))
Outputs
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)))
(+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))) (*.f64 (*.f64 b b) (*.f64 b b)))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))) #s(literal -1 binary64))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (*.f64 (*.f64 a a) (*.f64 a a)))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 a a) (*.f64 a a))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(+.f64 (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 a a) (*.f64 a a))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(+.f64 (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (*.f64 b (*.f64 b #s(literal 4 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (*.f64 (*.f64 b b) (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 b (*.f64 a (*.f64 a (*.f64 b #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 b (*.f64 b (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))))
(fma.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))))
(fma.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 a (*.f64 a (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 a (*.f64 b (*.f64 a (*.f64 b #s(literal 2 binary64)))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a a) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64)))
(fma.f64 (*.f64 a (*.f64 a a)) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b #s(literal 4 binary64))))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 b #s(literal 2 binary64)))) a (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 b (*.f64 a a))) #s(literal 2 binary64) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a (*.f64 a (*.f64 b #s(literal 2 binary64)))) b (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b a) (*.f64 a (*.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a (*.f64 b #s(literal 2 binary64))) (*.f64 b a) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b (*.f64 b a)) (*.f64 a #s(literal 2 binary64)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 b (*.f64 b a)) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))))
(fma.f64 (*.f64 b (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))))
(fma.f64 (+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a a) (*.f64 a a))))
(fma.f64 (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(fma.f64 (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) #s(literal -1 binary64))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b #s(literal -1 binary64))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64)))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 b (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 b b) (*.f64 b b) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (*.f64 (*.f64 b b) (*.f64 b b)))
(fma.f64 (*.f64 b (*.f64 b b)) b (*.f64 b (*.f64 b #s(literal 4 binary64))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (*.f64 (*.f64 b b) (*.f64 b b)))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(*.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b))
(*.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 a)))
(pow.f64 a #s(literal 4 binary64))
(pow.f64 (*.f64 a a) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 a))
(*.f64 a (*.f64 a (*.f64 a a)))
(*.f64 (*.f64 a a) (*.f64 a a))
(*.f64 (*.f64 a (*.f64 a a)) a)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 a #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 a))
(*.f64 a a)
(+.f64 (*.f64 b b) #s(literal 4 binary64))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(fma.f64 b b #s(literal 4 binary64))
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 a)))
(pow.f64 a #s(literal 4 binary64))
(pow.f64 (*.f64 a a) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 a)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 a))
(*.f64 a (*.f64 a (*.f64 a a)))
(*.f64 (*.f64 a a) (*.f64 a a))
(*.f64 (*.f64 a (*.f64 a a)) a)
(+.f64 (*.f64 (*.f64 a a) (*.f64 a a)) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(+.f64 (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 b (*.f64 a (*.f64 a (*.f64 b #s(literal 2 binary64)))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(fma.f64 a (*.f64 b (*.f64 a (*.f64 b #s(literal 2 binary64)))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 #s(literal 2 binary64) (*.f64 b (*.f64 b (*.f64 a a))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 b #s(literal 2 binary64)))) a (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b (*.f64 b (*.f64 a a))) #s(literal 2 binary64) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a (*.f64 a (*.f64 b #s(literal 2 binary64)))) b (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b a) (*.f64 a (*.f64 b #s(literal 2 binary64))) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a (*.f64 b #s(literal 2 binary64))) (*.f64 b a) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 b (*.f64 b a)) (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 a a) (*.f64 a a)))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 b (*.f64 b a)) (*.f64 (*.f64 a a) (*.f64 a a)))
(*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(*.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a))
(*.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a)

simplify243.0ms (3%)

Algorithm
egg-herbie
Rules
2244×*-lowering-*.f32
2244×*-lowering-*.f64
1986×+-lowering-+.f64
1986×+-lowering-+.f32
1514×sum3-define
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0681162
1212975
2733952
32871904
08659904
Stop Event
iter limit
node limit
Counts
132 → 132
Calls
Call 1
Inputs
(- (pow a 4) 1)
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
-1
(- (* 4 (pow b 2)) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* 4 (pow b 2))
(* (pow b 2) (+ 4 (pow b 2)))
(* (pow b 2) (+ 4 (pow b 2)))
(* (pow b 2) (+ 4 (pow b 2)))
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (+ 1 (* 4 (/ 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)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(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)
4
(+ 4 (pow b 2))
(+ 4 (pow b 2))
(+ 4 (pow b 2))
(pow b 2)
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(pow b 2)
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(pow a 4)
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(pow a 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
Outputs
(- (pow a 4) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
(- (+ (* (pow b 2) (+ 4 (* 2 (pow a 2)))) (pow a 4)) 1)
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64)))
(- (+ (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) (pow a 4)) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 4 binary64) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 4 binary64) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b)))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 4 binary64) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (+ (* 4 (/ 1 (pow b 2))) (/ (pow a 4) (pow b 4))))) (/ 1 (pow b 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (+.f64 (/.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b)) (+.f64 #s(literal 1 binary64) (+.f64 (/.f64 #s(literal 4 binary64) (*.f64 b b)) (/.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))) (*.f64 b (*.f64 b (*.f64 b b)))))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64))
(- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64)))
(- (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 (+.f64 #s(literal 4 binary64) (*.f64 b b)) (*.f64 a (*.f64 a (*.f64 a a)))) (/.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 (+.f64 #s(literal 4 binary64) (*.f64 b b)) (*.f64 a (*.f64 a (*.f64 a a)))) (/.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 (+.f64 #s(literal 4 binary64) (*.f64 b b)) (*.f64 a (*.f64 a (*.f64 a a)))) (/.f64 #s(literal 2 binary64) (*.f64 a a)))))))
(* (pow a 4) (- (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 4)))) (/ 1 (pow a 4))))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (*.f64 (*.f64 b b) (+.f64 (/.f64 (+.f64 #s(literal 4 binary64) (*.f64 b b)) (*.f64 a (*.f64 a (*.f64 a a)))) (/.f64 #s(literal 2 binary64) (*.f64 a a)))))))
-1
#s(literal -1 binary64)
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 #s(literal 4 binary64) (*.f64 b b)) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b)))) #s(literal -1 binary64))
(* 4 (pow b 2))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(* (pow b 2) (+ 4 (pow b 2)))
(*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b)))
(* (pow b 2) (+ 4 (pow b 2)))
(*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b)))
(* (pow b 2) (+ 4 (pow b 2)))
(*.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.f64 b b))))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 (+.f64 #s(literal 1 binary64) (/.f64 #s(literal 4 binary64) (*.f64 b b))) (*.f64 b (*.f64 b (*.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)
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.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 a 2)
(*.f64 a a)
4
#s(literal 4 binary64)
(+ 4 (pow b 2))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(+ 4 (pow b 2))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(+ 4 (pow b 2))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(* (pow b 2) (+ 1 (* 4 (/ 1 (pow b 2)))))
(+.f64 #s(literal 4 binary64) (*.f64 b b))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 a (*.f64 a (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (*.f64 b (*.f64 b #s(literal 2 binary64))) (*.f64 a a))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 a (*.f64 a (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 a (*.f64 a (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))

eval48.0ms (0.6%)

Compiler

Compiled 9076 to 376 computations (95.9% saved)

prune32.0ms (0.4%)

Pruning

11 alts after pruning (5 fresh and 6 done)

PrunedKeptTotal
New4532455
Fresh134
Picked145
Done123
Total45611467
Accuracy
100.0%
Counts
467 → 11
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.1%
(pow.f64 a #s(literal 4 binary64))
72.8%
(+.f64 (pow.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
79.5%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64))
72.8%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
51.7%
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
72.3%
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
67.9%
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
45.0%
(*.f64 (*.f64 a a) (*.f64 a a))
49.8%
(*.f64 b (*.f64 b (*.f64 b b)))
45.0%
(*.f64 a (*.f64 a (*.f64 a a)))
24.1%
#s(literal -1 binary64)
Compiler

Compiled 196 to 121 computations (38.3% saved)

simplify35.0ms (0.4%)

Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (*.f64 b b) #s(literal 4 binary64))
cost-diff0
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
cost-diff256
(+.f64 (pow.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
cost-diff6080
(pow.f64 b #s(literal 4 binary64))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 b (*.f64 b b))
cost-diff0
(*.f64 b (*.f64 b (*.f64 b b)))
cost-diff0
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) #s(literal 4 binary64))
cost-diff0
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 b (*.f64 b b))
cost-diff0
(*.f64 b (*.f64 b (*.f64 b b)))
cost-diff0
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
cost-diff0
(*.f64 b b)
cost-diff0
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
cost-diff0
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64))
Rules
746×fma-define
672×fma-lowering-fma.f32
672×fma-lowering-fma.f64
238×*-lowering-*.f32
238×*-lowering-*.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
024161
172146
2210146
3524145
4840145
5952145
6954145
0954145
Stop Event
iter limit
saturated
Calls
Call 1
Inputs
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
(* (* b b) (+ (* b b) (+ 4 (* a (* a 2)))))
(* b b)
b
(+ (* b b) (+ 4 (* a (* a 2))))
(+ 4 (* a (* a 2)))
4
(* a (* a 2))
a
(* a 2)
2
-1
(* b (* b (* b b)))
b
(* b (* b b))
(* b b)
(+ (* (* b b) 4) -1)
(* (* b b) 4)
(* b b)
b
4
-1
(+ (* b (* b (* b b))) (* (* a a) (+ (* a a) (* b (* b 2)))))
(* b (* b (* b b)))
b
(* b (* b b))
(* b b)
(* (* a a) (+ (* a a) (* b (* b 2))))
(* a a)
a
(+ (* a a) (* b (* b 2)))
(* b (* b 2))
(* b 2)
2
(+ (pow b 4) (+ (* (* b b) 4) -1))
(pow b 4)
b
4
(+ (* (* b b) 4) -1)
(* (* b b) 4)
(* b b)
-1
Outputs
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(* (* b b) (+ (* b b) (+ 4 (* a (* a 2)))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(* b b)
(*.f64 b b)
b
(+ (* b b) (+ 4 (* a (* a 2))))
(+.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(+ 4 (* a (* a 2)))
(+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))
4
#s(literal 4 binary64)
(* a (* a 2))
(*.f64 a (*.f64 a #s(literal 2 binary64)))
a
(* a 2)
(*.f64 a #s(literal 2 binary64))
2
#s(literal 2 binary64)
-1
#s(literal -1 binary64)
(* b (* b (* b b)))
(*.f64 b (*.f64 b (*.f64 b b)))
b
(* b (* b b))
(*.f64 b (*.f64 b b))
(* b b)
(*.f64 b b)
(+ (* (* b b) 4) -1)
(+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(* (* b b) 4)
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* b b)
(*.f64 b b)
b
4
#s(literal 4 binary64)
-1
#s(literal -1 binary64)
(+ (* b (* b (* b b))) (* (* a a) (+ (* a a) (* b (* b 2)))))
(+.f64 (*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))) (*.f64 b (*.f64 b (*.f64 b b))))
(* b (* b (* b b)))
(*.f64 b (*.f64 b (*.f64 b b)))
b
(* b (* b b))
(*.f64 b (*.f64 b b))
(* b b)
(*.f64 b b)
(* (* a a) (+ (* a a) (* b (* b 2))))
(*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(* a a)
(*.f64 a a)
a
(+ (* a a) (* b (* b 2)))
(+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))
(* b (* b 2))
(*.f64 (*.f64 b b) #s(literal 2 binary64))
(* b 2)
(*.f64 b #s(literal 2 binary64))
2
#s(literal 2 binary64)
(+ (pow b 4) (+ (* (* b b) 4) -1))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
b
4
#s(literal 4 binary64)
(+ (* (* b b) 4) -1)
(+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64))))
(* (* b b) 4)
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* b b)
(*.f64 b b)
-1
#s(literal -1 binary64)

localize186.0ms (2.3%)

Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy100.0%
(+.f64 (pow.f64 b #s(literal 4 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
accuracy100.0%
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy100.0%
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
accuracy99.9%
(*.f64 b (*.f64 b (*.f64 b b)))
accuracy99.9%
(*.f64 b (*.f64 b b))
accuracy90.1%
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))
accuracy100.0%
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 (*.f64 b b) #s(literal 4 binary64))
accuracy100.0%
(*.f64 b b)
accuracy99.9%
(*.f64 b (*.f64 b (*.f64 b b)))
accuracy99.9%
(*.f64 b (*.f64 b b))
accuracy100.0%
(*.f64 b b)
accuracy100.0%
(*.f64 a (*.f64 a #s(literal 2 binary64)))
accuracy100.0%
(*.f64 a #s(literal 2 binary64))
accuracy86.2%
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
Results
122.0ms256×0valid
Compiler

Compiled 207 to 25 computations (87.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 30.0ms
ival-mult: 17.0ms (57.5% of total)
ival-add: 8.0ms (27.1% of total)
ival-pow: 4.0ms (13.5% of total)
const: 1.0ms (3.4% of total)
backward-pass: 0.0ms (0% of total)

series7.0ms (0.1%)

Counts
14 → 228
Calls
Call 1
Inputs
#<alt (+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)>
#<alt (* (* b b) (+ (* b b) (+ 4 (* a (* a 2)))))>
#<alt (* b b)>
#<alt (+ (* b b) (+ 4 (* a (* a 2))))>
#<alt (* b (* b (* b b)))>
#<alt (* b (* b b))>
#<alt (+ (* (* b b) 4) -1)>
#<alt (* (* b b) 4)>
#<alt (+ (* b (* b (* b b))) (* (* a a) (+ (* a a) (* b (* b 2)))))>
#<alt (pow b 4)>
#<alt (+ (pow b 4) (+ (* (* b b) 4) -1))>
#<alt (* a 2)>
#<alt (* a (* a 2))>
#<alt (* (* a a) (+ (* a a) (* b (* b 2))))>
Outputs
#<alt -1>
#<alt (- (* (pow b 2) (+ 4 (* 2 (pow a 2)))) 1)>
#<alt (- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)>
#<alt (- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))>
#<alt (* (pow b 2) (+ 4 (* 2 (pow a 2))))>
#<alt (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))>
#<alt (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))>
#<alt (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 2) (+ 4 (pow b 2)))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (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)>
#<alt (+ 4 (* 2 (pow a 2)))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (pow b 2)>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))>
#<alt (+ 4 (pow b 2))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))>
#<alt (* 2 (pow a 2))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (* 2 (pow a 2))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt (pow b 3)>
#<alt -1>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (* 4 (pow b 2))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* 4 (pow b 2))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* (pow b 2) (- 4 (/ 1 (pow b 2))))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (* 4 (pow b 2))>
#<alt (pow a 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))>
#<alt (pow b 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt (pow b 4)>
#<alt -1>
#<alt (- (* 4 (pow b 2)) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (- (* (pow b 2) (+ 4 (pow b 2))) 1)>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (pow b 4)>
#<alt (* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 a)>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (pow a 2))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 4)>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))>
#<alt (pow a 4)>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* 2 (* (pow a 2) (pow b 2)))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
#<alt (* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))>
Calls

57 calls:

TimeVariablePointExpression
0.0ms
a
@inf
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
0.0ms
b
@0
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
0.0ms
a
@-inf
(* a 2)
0.0ms
a
@0
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
0.0ms
a
@inf
(* a 2)

rewrite70.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
804×fma-define
712×fma-lowering-fma.f32
712×fma-lowering-fma.f64
276×*-lowering-*.f32
276×*-lowering-*.f64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02499
17788
222988
357687
494187
5112487
6124187
7125387
0125387
Stop Event
iter limit
saturated
Counts
14 → 228
Calls
Call 1
Inputs
(+ (* (* b b) (+ (* b b) (+ 4 (* a (* a 2))))) -1)
(* (* b b) (+ (* b b) (+ 4 (* a (* a 2)))))
(* b b)
(+ (* b b) (+ 4 (* a (* a 2))))
(* b (* b (* b b)))
(* b (* b b))
(+ (* (* b b) 4) -1)
(* (* b b) 4)
(+ (* b (* b (* b b))) (* (* a a) (+ (* a a) (* b (* b 2)))))
(pow b 4)
(+ (pow b 4) (+ (* (* b b) 4) -1))
(* a 2)
(* a (* a 2))
(* (* a a) (+ (* a a) (* b (* b 2))))
Outputs
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64))
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))) (*.f64 b (*.f64 b (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) #s(literal -1 binary64))
(fma.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 b (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) #s(literal -1 binary64))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 a (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 (*.f64 b b) a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 b b) a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 b b) #s(literal -1 binary64))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) b #s(literal -1 binary64))
(fma.f64 (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) a (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 a (*.f64 (*.f64 b b) a)) #s(literal 2 binary64) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b a) (*.f64 b (*.f64 a #s(literal 2 binary64))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 (*.f64 b b) a) (*.f64 a #s(literal 2 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b a) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) (*.f64 b (*.f64 b (*.f64 b b))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 b (*.f64 b (*.f64 b b)) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 b (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 (*.f64 b b) (*.f64 b b) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 a (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 (*.f64 b b) a)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 b b) a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 b (*.f64 b b)) b (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) a (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 (*.f64 a (*.f64 (*.f64 b b) a)) #s(literal 2 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) b (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b a) (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 (*.f64 (*.f64 b b) a) (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(*.f64 (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 b b))
(*.f64 (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))) b)
(exp.f64 (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 b #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 b))
(*.f64 b b)
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 #s(literal 4 binary64) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(+.f64 (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b))
(+.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 a (*.f64 a #s(literal 2 binary64))))
(+.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) #s(literal 4 binary64))
(fma.f64 b b (+.f64 #s(literal 4 binary64) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 a (*.f64 a #s(literal 2 binary64)) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 #s(literal 2 binary64) (*.f64 a a) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 (*.f64 a #s(literal 2 binary64)) a (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 (*.f64 a a) #s(literal 2 binary64) (+.f64 (*.f64 b b) #s(literal 4 binary64)))
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 b)))
(pow.f64 b #s(literal 4 binary64))
(pow.f64 (*.f64 b b) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 b))
(*.f64 b (*.f64 b (*.f64 b b)))
(*.f64 (*.f64 b b) (*.f64 b b))
(*.f64 (*.f64 b (*.f64 b b)) b)
(exp.f64 (*.f64 (log.f64 b) #s(literal 3 binary64)))
(pow.f64 b #s(literal 3 binary64))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 b))
(*.f64 b (*.f64 b b))
(*.f64 (*.f64 b b) b)
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) #s(literal -1 binary64))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) #s(literal -1 binary64))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) #s(literal -1 binary64))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b #s(literal -1 binary64))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(*.f64 (*.f64 b b) #s(literal 4 binary64))
(*.f64 #s(literal 4 binary64) (*.f64 b b))
(*.f64 (*.f64 b #s(literal 4 binary64)) b)
(+.f64 (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b (*.f64 b b))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(+.f64 (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 b (*.f64 b (*.f64 b b)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 b (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b b) (*.f64 b b) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 a (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 (*.f64 b b) a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 b b) a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 b b)) b (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a) (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a (*.f64 b (*.f64 b (*.f64 b b))))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))))
(fma.f64 (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) a (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 b b) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (*.f64 (*.f64 b b) a)) #s(literal 2 binary64) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) b (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b a) (*.f64 b (*.f64 a #s(literal 2 binary64))) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))))) b (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 (*.f64 b b) a) (*.f64 a #s(literal 2 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b a) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b)))))
(exp.f64 (*.f64 #s(literal 4 binary64) (log.f64 b)))
(pow.f64 b #s(literal 4 binary64))
(pow.f64 (*.f64 b b) #s(literal 2 binary64))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (log.f64 b)))
(pow.f64 (exp.f64 #s(literal 4 binary64)) (log.f64 b))
(*.f64 b (*.f64 b (*.f64 b b)))
(*.f64 (*.f64 b b) (*.f64 b b))
(*.f64 (*.f64 b (*.f64 b b)) b)
(+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))) (*.f64 b (*.f64 b (*.f64 b b))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(+.f64 (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))) (*.f64 (*.f64 b b) #s(literal 4 binary64)))
(fma.f64 b (*.f64 b (*.f64 b b)) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 b (*.f64 b #s(literal 4 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
(fma.f64 (*.f64 b b) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (*.f64 b b) #s(literal 4 binary64) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
(fma.f64 #s(literal 4 binary64) (*.f64 b b) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (*.f64 b b)) b (+.f64 #s(literal -1 binary64) (*.f64 (*.f64 b b) #s(literal 4 binary64))))
(fma.f64 (+.f64 (*.f64 b b) #s(literal 4 binary64)) (*.f64 b b) #s(literal -1 binary64))
(fma.f64 (*.f64 b #s(literal 4 binary64)) b (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (*.f64 b b)))))
(fma.f64 (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))) b #s(literal -1 binary64))
(*.f64 a #s(literal 2 binary64))
(*.f64 #s(literal 2 binary64) a)
(*.f64 a (*.f64 a #s(literal 2 binary64)))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(*.f64 (*.f64 a #s(literal 2 binary64)) a)
(*.f64 (*.f64 a a) #s(literal 2 binary64))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(+.f64 (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 b (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 a (*.f64 a (*.f64 a a)) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 a (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 #s(literal 2 binary64) (*.f64 a (*.f64 (*.f64 b b) a)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a #s(literal 2 binary64)) (*.f64 (*.f64 b b) a) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (*.f64 a #s(literal 2 binary64))) (*.f64 b b) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a a) (*.f64 a a) (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b #s(literal 2 binary64)) (*.f64 b (*.f64 a a)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 (*.f64 b b) #s(literal 2 binary64)) (*.f64 a a) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (*.f64 a a)) a (*.f64 (*.f64 b b) (*.f64 a (*.f64 a #s(literal 2 binary64)))))
(fma.f64 (*.f64 (*.f64 b b) (*.f64 a #s(literal 2 binary64))) a (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 a (*.f64 (*.f64 b b) a)) #s(literal 2 binary64) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b (*.f64 a (*.f64 a #s(literal 2 binary64)))) b (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b (*.f64 a a)) (*.f64 b #s(literal 2 binary64)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b a) (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 (*.f64 b b) a) (*.f64 a #s(literal 2 binary64)) (*.f64 a (*.f64 a (*.f64 a a))))
(fma.f64 (*.f64 b (*.f64 a #s(literal 2 binary64))) (*.f64 b a) (*.f64 a (*.f64 a (*.f64 a a))))
(*.f64 a (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))))
(*.f64 (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64))) (*.f64 a a))
(*.f64 (*.f64 a (+.f64 (*.f64 a a) (*.f64 (*.f64 b b) #s(literal 2 binary64)))) a)

simplify242.0ms (3%)

Algorithm
egg-herbie
Rules
2782×*-lowering-*.f32
2782×*-lowering-*.f64
1624×fma-lowering-fma.f32
1624×fma-lowering-fma.f64
1234×+-lowering-+.f64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
0821963
12651636
28321601
329791482
458171462
084321462
Stop Event
iter limit
node limit
Counts
228 → 228
Calls
Call 1
Inputs
-1
(- (* (pow b 2) (+ 4 (* 2 (pow a 2)))) 1)
(- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)
(- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(* (pow b 2) (+ 4 (* 2 (pow a 2))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(pow b 4)
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 2) (+ 4 (pow b 2)))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 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)
(+ 4 (* 2 (pow a 2)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(pow b 2)
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(pow b 2)
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+ 4 (pow b 2))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(* 2 (pow a 2))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(* 2 (pow a 2))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
(pow b 3)
-1
(- (* 4 (pow b 2)) 1)
(- (* 4 (pow b 2)) 1)
(- (* 4 (pow b 2)) 1)
(* 4 (pow b 2))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* 4 (pow b 2))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(* 4 (pow b 2))
(pow a 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(pow b 4)
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(pow b 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
(pow b 4)
-1
(- (* 4 (pow b 2)) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(pow b 4)
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 a)
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (pow a 2))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(pow a 4)
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(pow a 4)
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* 2 (* (pow a 2) (pow b 2)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
Outputs
-1
#s(literal -1 binary64)
(- (* (pow b 2) (+ 4 (* 2 (pow a 2)))) 1)
(+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))))
(- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))) (/ 1 (pow b 4))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(- (+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2)))) 1)
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow a 2) (- (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))) (/ 1 (pow a 2))))
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))) #s(literal -1 binary64))
(* (pow b 2) (+ 4 (* 2 (pow a 2))))
(*.f64 b (*.f64 b (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (+ (* 2 (pow a 2)) (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 2) (+ 4 (pow b 2)))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* 2 (* (pow a 2) (pow b 2))) (* (pow b 2) (+ 4 (pow b 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow a 2) (+ (* 2 (pow b 2)) (/ (* (pow b 2) (+ 4 (pow b 2))) (pow a 2))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.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)
(+ 4 (* 2 (pow a 2)))
(+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(pow b 2)
(*.f64 b b)
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 2) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (* 4 (/ 1 (pow b 2))))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ 4 (pow b 2))
(+.f64 (*.f64 b b) #s(literal 4 binary64))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ 4 (+ (* 2 (pow a 2)) (pow b 2)))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow a 2) (+ 2 (+ (* 4 (/ 1 (pow a 2))) (/ (pow b 2) (pow a 2)))))
(+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
(pow b 3)
(*.f64 b (*.f64 b b))
-1
#s(literal -1 binary64)
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* (pow b 2) (- 4 (/ 1 (pow b 2))))
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(* 4 (pow b 2))
(*.f64 b (*.f64 b #s(literal 4 binary64)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* (pow b 2) (+ (* 2 (pow a 2)) (pow b 2))) (pow a 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 2 (/ (pow a 2) (pow b 2)))))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(* (pow b 4) (+ 1 (+ (* 2 (/ (pow a 2) (pow b 2))) (/ (pow a 4) (pow b 4)))))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow b 4))
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(+ (* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2))) (pow b 4))
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a))))
(* (pow a 4) (+ 1 (+ (* 2 (/ (pow b 2) (pow a 2))) (/ (pow b 4) (pow a 4)))))
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a))))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
-1
#s(literal -1 binary64)
(- (* 4 (pow b 2)) 1)
(+.f64 (*.f64 b (*.f64 b #s(literal 4 binary64))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(- (* (pow b 2) (+ 4 (pow b 2))) 1)
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(pow b 4)
(*.f64 b (*.f64 b (*.f64 b b)))
(* (pow b 4) (+ 1 (* 4 (/ 1 (pow b 2)))))
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(* (pow b 4) (- (+ 1 (* 4 (/ 1 (pow b 2)))) (/ 1 (pow b 4))))
(+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))) #s(literal -1 binary64))
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 a)
(*.f64 #s(literal 2 binary64) a)
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (pow a 2))
(*.f64 #s(literal 2 binary64) (*.f64 a a))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow a 2) (+ (* 2 (pow b 2)) (pow a 2)))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(* (pow a 4) (+ 1 (* 2 (/ (pow b 2) (pow a 2)))))
(*.f64 (*.f64 a (*.f64 a (*.f64 a a))) (+.f64 #s(literal 1 binary64) (/.f64 (/.f64 (*.f64 #s(literal 2 binary64) (*.f64 b b)) a) a)))
(pow a 4)
(*.f64 a (*.f64 a (*.f64 a a)))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(+ (* 2 (* (pow a 2) (pow b 2))) (pow a 4))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* 2 (* (pow a 2) (pow b 2)))
(*.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))
(* (pow b 2) (+ (* 2 (pow a 2)) (/ (pow a 4) (pow b 2))))
(*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 #s(literal 2 binary64) (*.f64 b b))))

eval91.0ms (1.1%)

Compiler

Compiled 9542 to 469 computations (95.1% saved)

prune42.0ms (0.5%)

Pruning

13 alts after pruning (4 fresh and 9 done)

PrunedKeptTotal
New6034607
Fresh000
Picked235
Done066
Total60513618
Accuracy
100.0%
Counts
618 → 13
Alt Table
Click to see full alt table
StatusAccuracyProgram
49.8%
(pow.f64 b #s(literal 4 binary64))
45.1%
(pow.f64 a #s(literal 4 binary64))
72.8%
(+.f64 (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) #s(literal 4 binary64))) #s(literal -1 binary64))
51.7%
(+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))
72.3%
(+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64))))))
67.9%
(+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64))
56.3%
(*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a))))
45.0%
(*.f64 (*.f64 a a) (*.f64 a a))
49.9%
(*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64))))
49.8%
(*.f64 b (*.f64 b (*.f64 b b)))
28.7%
(*.f64 b (*.f64 b #s(literal 4 binary64)))
45.0%
(*.f64 a (*.f64 a (*.f64 a a)))
24.1%
#s(literal -1 binary64)
Compiler

Compiled 454 to 151 computations (66.7% saved)

regimes47.0ms (0.6%)

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

6 calls:

9.0ms
(*.f64 b b)
8.0ms
a
8.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b)))
7.0ms
b
7.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
99.9%1a
99.9%1b
99.9%1(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal 1 binary64))
99.9%1(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b)))
99.9%1(*.f64 a a)
99.9%1(*.f64 b b)
Compiler

Compiled 52 to 32 computations (38.5% saved)

regimes45.0ms (0.6%)

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

6 calls:

11.0ms
b
7.0ms
(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b)))
7.0ms
a
6.0ms
(*.f64 a a)
6.0ms
(*.f64 b b)
Results
AccuracySegmentsBranch
99.9%1a
99.9%1b
99.9%1(-.f64 (+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b))) #s(literal 1 binary64))
99.9%1(+.f64 (pow.f64 (+.f64 (*.f64 a a) (*.f64 b b)) #s(literal 2 binary64)) (*.f64 #s(literal 4 binary64) (*.f64 b b)))
99.9%1(*.f64 a a)
99.9%1(*.f64 b b)
Compiler

Compiled 52 to 32 computations (38.5% saved)

regimes27.0ms (0.3%)

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

4 calls:

8.0ms
b
7.0ms
(*.f64 b b)
5.0ms
a
5.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
99.7%2a
99.0%2b
99.7%2(*.f64 a a)
99.0%2(*.f64 b b)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes281.0ms (3.4%)

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

4 calls:

265.0ms
a
5.0ms
b
5.0ms
(*.f64 b b)
5.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
99.0%2b
99.0%2(*.f64 b b)
98.9%2a
98.9%2(*.f64 a a)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes30.0ms (0.4%)

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

4 calls:

11.0ms
(*.f64 b b)
8.0ms
a
5.0ms
b
4.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
93.9%2a
93.9%2(*.f64 a a)
98.6%2b
98.6%2(*.f64 b b)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes9.0ms (0.1%)

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

2 calls:

4.0ms
b
4.0ms
(*.f64 b b)
Results
AccuracySegmentsBranch
98.6%2b
98.6%2(*.f64 b b)
Compiler

Compiled 8 to 5 computations (37.5% saved)

regimes10.0ms (0.1%)

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

2 calls:

6.0ms
(*.f64 b b)
4.0ms
b
Results
AccuracySegmentsBranch
97.1%2b
97.1%2(*.f64 b b)
Compiler

Compiled 8 to 5 computations (37.5% saved)

regimes14.0ms (0.2%)

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

4 calls:

5.0ms
b
3.0ms
a
3.0ms
(*.f64 a a)
3.0ms
(*.f64 b b)
Results
AccuracySegmentsBranch
80.5%2a
80.5%2(*.f64 a a)
79.9%4b
79.9%4(*.f64 b b)
Compiler

Compiled 16 to 10 computations (37.5% saved)

regimes13.0ms (0.2%)

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

3 calls:

8.0ms
a
2.0ms
b
2.0ms
(*.f64 a a)
Results
AccuracySegmentsBranch
79.9%4b
72.9%3a
72.3%3(*.f64 a a)
Compiler

Compiled 11 to 7 computations (36.4% saved)

regimes4.0ms (0.1%)

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

2 calls:

2.0ms
b
2.0ms
a
Results
AccuracySegmentsBranch
69.5%3a
65.7%4b
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes6.0ms (0.1%)

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

2 calls:

4.0ms
a
2.0ms
b
Results
AccuracySegmentsBranch
51.3%2b
41.0%2a
Compiler

Compiled 6 to 4 computations (33.3% saved)

regimes3.0ms (0%)

Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
1 → 1
Calls
Call 1
Inputs
#s(literal -1 binary64)
Outputs
#s(literal -1 binary64)
Calls

2 calls:

1.0ms
a
1.0ms
b
Results
AccuracySegmentsBranch
24.1%1a
24.1%1b
Compiler

Compiled 6 to 4 computations (33.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.12067987985480415
325827.7878748328
Compiler

Compiled 24 to 16 computations (33.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.446988330556999e+29
2.6137133423850036e+35
Compiler

Compiled 22 to 16 computations (27.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.405751901966164e-9
1.792522405723759e-8
Compiler

Compiled 22 to 16 computations (27.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.446988330556999e+29
2.6137133423850036e+35
Compiler

Compiled 22 to 16 computations (27.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.446988330556999e+29
2.6137133423850036e+35
Compiler

Compiled 22 to 16 computations (27.3% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0045778219348094e+21
3.095148294228424e+24
Compiler

Compiled 24 to 16 computations (33.3% saved)

bsearch65.0ms (0.8%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
narrow-enough
Steps
TimeLeftRight
28.0ms
587110579921448.8
511244886760249540.0
13.0ms
4.5772645919492005e-34
2.2561715929337753e-33
19.0ms
2.0121393443346134e-171
1.9152439428146745e-162
Results
48.0ms368×0valid
Compiler

Compiled 394 to 262 computations (33.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-mult: 8.0ms (39.3% of total)
ival-pow: 6.0ms (29.5% of total)
ival-add: 3.0ms (14.7% of total)
ival-sub: 2.0ms (9.8% of total)
const: 1.0ms (4.9% of total)
backward-pass: 0.0ms (0% of total)

bsearch57.0ms (0.7%)

Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
34.0ms
31695075673.27785
1759303354805.0842
20.0ms
0.3473900975197827
570.8132688321399
Results
46.0ms240×0valid
Compiler

Compiled 246 to 180 computations (26.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 12.0ms
ival-mult: 5.0ms (42.7% of total)
ival-pow: 3.0ms (25.6% of total)
ival-add: 2.0ms (17.1% of total)
ival-sub: 1.0ms (8.5% of total)
const: 1.0ms (8.5% of total)
backward-pass: 0.0ms (0% of total)

bsearch21.0ms (0.2%)

Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
18.0ms
0.00017833108978228284
357.4418266317535
Results
14.0ms144×0valid
Compiler

Compiled 132 to 106 computations (19.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 9.0ms
ival-mult: 3.0ms (33.8% of total)
ival-sub: 2.0ms (22.5% of total)
ival-add: 2.0ms (22.5% of total)
ival-pow: 1.0ms (11.3% of total)
const: 0.0ms (0% of total)
backward-pass: 0.0ms (0% of total)

simplify16.0ms (0.2%)

Algorithm
egg-herbie
Rules
36×*-commutative_binary64
30×+-commutative_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074300
1107300
Stop Event
saturated
Calls
Call 1
Inputs
(+.f64 (*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(if (<=.f64 (*.f64 a a) #s(literal 3602879701896397/18014398509481984 binary64)) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))) (+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64)))
(if (<=.f64 (*.f64 b b) #s(literal 4835703278458517/1208925819614629174706176 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64)))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(if (<=.f64 (*.f64 a a) #s(literal 2000000000000000000000 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 a (*.f64 a (*.f64 a a))))
(if (<=.f64 b #s(literal 2761917562647189/2124551971267068394758352826209874509318372470908127692797776552801614239443408970956650009060917142675557317944986004061386317350610828957638079915066349407775325083341572876126912512 binary64)) (*.f64 a (*.f64 a (*.f64 a a))) (if (<=.f64 b #s(literal 2484552783462535/1461501637330902918203684832716283019655932542976 binary64)) #s(literal -1 binary64) (if (<=.f64 b #s(literal 6000000000000000 binary64)) (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))
(if (<=.f64 a #s(literal 2476979795053773/4503599627370496 binary64)) #s(literal -1 binary64) (if (<=.f64 a #s(literal 42000000000 binary64)) (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))))
(if (<=.f64 b #s(literal 1080863910568919/2251799813685248 binary64)) #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64))))
#s(literal -1 binary64)
Outputs
(+.f64 (*.f64 (+.f64 (*.f64 a a) (pow.f64 b #s(literal 2 binary64))) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)))
(+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (+.f64 (*.f64 a a) (*.f64 b b))))
(if (<=.f64 (*.f64 a a) #s(literal 3602879701896397/18014398509481984 binary64)) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))))
(if (<=.f64 (*.f64 a a) #s(literal 3602879701896397/18014398509481984 binary64)) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b (*.f64 b #s(literal 2 binary64)))))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 (+.f64 (*.f64 a a) (*.f64 b b)) (*.f64 a a)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64))) (+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64)))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 (*.f64 a a) (+.f64 (*.f64 a a) (*.f64 b b)))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))))
(if (<=.f64 (*.f64 b b) #s(literal 4835703278458517/1208925819614629174706176 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (+.f64 (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))) #s(literal -1 binary64)))
(if (<=.f64 (*.f64 b b) #s(literal 4835703278458517/1208925819614629174706176 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (+.f64 #s(literal -1 binary64) (*.f64 b (*.f64 b (+.f64 (*.f64 b b) (+.f64 #s(literal 4 binary64) (*.f64 (*.f64 a a) #s(literal 2 binary64))))))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 #s(literal 2 binary64) (*.f64 a a)))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 (*.f64 b b) (+.f64 (*.f64 b b) (*.f64 (*.f64 a a) #s(literal 2 binary64)))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 (*.f64 a (*.f64 a (*.f64 a a))) #s(literal -1 binary64)) (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(if (<=.f64 (*.f64 b b) #s(literal 500000000000000009942312419328 binary64)) (+.f64 #s(literal -1 binary64) (*.f64 a (*.f64 a (*.f64 a a)))) (*.f64 b (*.f64 b (+.f64 (*.f64 b b) #s(literal 4 binary64)))))
(if (<=.f64 (*.f64 a a) #s(literal 2000000000000000000000 binary64)) (+.f64 (*.f64 (*.f64 b b) #s(literal 4 binary64)) #s(literal -1 binary64)) (*.f64 a (*.f64 a (*.f64 a a))))
(if (<=.f64 b #s(literal 2761917562647189/2124551971267068394758352826209874509318372470908127692797776552801614239443408970956650009060917142675557317944986004061386317350610828957638079915066349407775325083341572876126912512 binary64)) (*.f64 a (*.f64 a (*.f64 a a))) (if (<=.f64 b #s(literal 2484552783462535/1461501637330902918203684832716283019655932542976 binary64)) #s(literal -1 binary64) (if (<=.f64 b #s(literal 6000000000000000 binary64)) (*.f64 a (*.f64 a (*.f64 a a))) (*.f64 b (*.f64 b (*.f64 b b))))))
(if (<=.f64 a #s(literal 2476979795053773/4503599627370496 binary64)) #s(literal -1 binary64) (if (<=.f64 a #s(literal 42000000000 binary64)) (*.f64 b (*.f64 b #s(literal 4 binary64))) (*.f64 a (*.f64 a (*.f64 a a)))))
(if (<=.f64 b #s(literal 1080863910568919/2251799813685248 binary64)) #s(literal -1 binary64) (*.f64 b (*.f64 b #s(literal 4 binary64))))
#s(literal -1 binary64)

soundness2.4s (29.3%)

Rules
3800×sum4-define
3516×sum4-define
3254×+-lowering-+.f64
3254×+-lowering-+.f32
3094×+-lowering-+.f64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01131
13531
211131
352631
4154031
5423931
6450031
7473231
8475331
9477631
10477631
11786431
0805231
01122223
13621835
211501770
345641710
084051710
0771110
1249918
2823886
33445787
08929787
01214
12812
26112
319712
490112
5288912
6438612
0823012
022100
17585
220084
376083
4196283
5399083
6415583
7427383
8431183
9431783
10593583
0800883
0821963
12651636
28321601
329791482
458171462
084321462
0681162
1212975
2733952
32871904
08659904
Stop Event
fuel
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
Compiler

Compiled 1295 to 587 computations (54.7% saved)

preprocess120.0ms (1.5%)

Remove

(abs b)

(abs a)

Compiler

Compiled 842 to 284 computations (66.3% saved)

end0.0ms (0%)

Profiling

Loading profile data...