Details

Time bar (total: 4.8s)

analyze5.0ms (0.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%100%0%0%0%0%0
0%0%100%0%0%0%0%1
0%0%100%0%0%0%0%2
50%50%50%0%0%0%0%3
75%75%25%0%0%0%0%4
87.5%87.5%12.5%0%0%0%0%5
93.8%93.7%6.2%0%0%0%0%6
96.9%96.8%3.1%0%0%0%0%7
98.4%98.4%1.6%0%0%0%0%8
99.2%99.2%0.8%0%0%0%0%9
99.6%99.6%0.4%0%0%0%0%10
99.8%99.8%0.2%0%0%0%0%11
99.9%99.9%0.1%0%0%0%0%12
Compiler

Compiled 8 to 7 computations (12.5% saved)

sample1.7s (34.7%)

Results
1.7s8256×body256valid
0.0msbody256infinite
Bogosity

preprocess58.0ms (1.2%)

Algorithm
egg-herbie
Rules
rational_best-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
1917
011
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
Outputs
0
Call 2
Inputs
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Outputs
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 8 to 7 computations (12.5% saved)

simplify13.0ms (0.3%)

Algorithm
egg-herbie
Rules
rational_best-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0817
1917
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Outputs
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))

eval0.0ms (0%)

Compiler

Compiled 7 to 6 computations (14.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
28.3b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
28.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 7 to 6 computations (14.3% saved)

localize205.0ms (4.3%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(*.f64 2 (pow.f64 x 2))
27.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 17 to 13 computations (23.5% saved)

series2.0ms (0%)

Counts
2 → 12
Calls

6 calls:

TimeVariablePointExpression
0.0ms
x
@0
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
0.0ms
x
@inf
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
0.0ms
x
@0
(*.f64 2 (pow.f64 x 2))
0.0ms
x
@inf
(*.f64 2 (pow.f64 x 2))
0.0ms
x
@-inf
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))

rewrite105.0ms (2.2%)

Algorithm
batch-egg-rewrite
Rules
1764×rational_best-5
1764×rational_best-2
1764×rational_best-3
1764×rational_best-1
1762×rational_best-4
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0830
16630
221730
387530
4362830
Stop Event
node limit
Counts
2 → 28
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))) (*.f64 2 (pow.f64 (*.f64 x x) 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 2) (pow.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (pow.f64 x 2)) 1)))))

simplify181.0ms (3.7%)

Algorithm
egg-herbie
Rules
1104×rational_best-simplify-132
918×rational_best-simplify-2
886×rational_best-simplify-54
540×rational_best-simplify-80
466×rational_best-simplify-78
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
063630
1102616
2224616
3732616
42487616
55931616
Stop Event
node limit
Counts
40 → 37
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))) (*.f64 2 (pow.f64 (*.f64 x x) 2))))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) 0)
(+.f64 0 (*.f64 2 (pow.f64 x 2)))
(-.f64 (*.f64 2 (pow.f64 x 2)) 0)
(/.f64 (*.f64 2 (pow.f64 x 2)) 1)
(/.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(/.f64 (*.f64 (pow.f64 x 2) 4) 2)
(pow.f64 (*.f64 2 (pow.f64 x 2)) 1)
Outputs
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))) (*.f64 2 (pow.f64 (*.f64 x x) 2))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) 0)
(*.f64 2 (pow.f64 x 2))
(+.f64 0 (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(-.f64 (*.f64 2 (pow.f64 x 2)) 0)
(*.f64 2 (pow.f64 x 2))
(/.f64 (*.f64 2 (pow.f64 x 2)) 1)
(*.f64 2 (pow.f64 x 2))
(/.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(*.f64 (/.f64 2 (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2))
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))
(/.f64 (*.f64 (pow.f64 x 2) 4) 2)
(*.f64 2 (pow.f64 x 2))
(pow.f64 (*.f64 2 (pow.f64 x 2)) 1)
(*.f64 2 (pow.f64 x 2))

eval11.0ms (0.2%)

Compiler

Compiled 517 to 429 computations (17% saved)

prune156.0ms (3.2%)

Pruning

5 alts after pruning (4 fresh and 1 done)

PrunedKeptTotal
New33437
Fresh000
Picked011
Done000
Total33538
Error
0.2b
Counts
38 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
47.3b
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
30.9b
(*.f64 (sqrt.f64 2) (neg.f64 x))
32.0b
(*.f64 (sqrt.f64 2) x)
47.3b
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2))))
28.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 51 to 42 computations (17.6% saved)

localize16.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(pow.f64 (*.f64 x x) 2)
0.4b
(/.f64 2 (pow.f64 x 2))
27.3b
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2))))
42.4b
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))
Compiler

Compiled 42 to 26 computations (38.1% saved)

series1.0ms (0%)

Counts
4 → 36
Calls

12 calls:

TimeVariablePointExpression
0.0ms
x
@inf
(pow.f64 (*.f64 x x) 2)
0.0ms
x
@0
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))
0.0ms
x
@0
(pow.f64 (*.f64 x x) 2)
0.0ms
x
@inf
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))
0.0ms
x
@-inf
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))

rewrite118.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
1072×rational_best-simplify-57
640×rational_best-simplify-44
566×rational_best-simplify-43
548×rational_best-5
546×rational_best-4
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01192
19192
229792
3123256
4578756
Stop Event
node limit
Counts
4 → 112
Calls
Call 1
Inputs
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(pow.f64 (*.f64 x x) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 2) (pow.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (neg.f64 (pow.f64 x 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 x 2) 4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 x 2) 4)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 2 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (neg.f64 (pow.f64 x 2)) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)) (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 2 (pow.f64 x 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (pow.f64 x 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 2 (pow.f64 x 2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 (*.f64 x x) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (pow.f64 (*.f64 x x) 2) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x x) 2) (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 x 2) (pow.f64 x 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (*.f64 x (*.f64 x x)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2) (/.f64 1 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 x (*.f64 x x)) 2) (/.f64 1 (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) (*.f64 x (*.f64 x x))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 x x) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (pow.f64 (*.f64 x x) 2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (*.f64 x x) 2))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (pow.f64 x 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 x 2) (neg.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (neg.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 x 2) (fabs.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (fabs.f64 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 x 2) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (neg.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 1 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))))))

simplify160.0ms (3.3%)

Algorithm
egg-herbie
Rules
1610×rational_best-simplify-54
1544×rational_best-simplify-129
1050×rational_best-simplify-135
724×rational_best-simplify-49
636×rational_best-simplify-2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02272858
14252796
28902796
348682790
Stop Event
node limit
Counts
148 → 137
Calls
Call 1
Inputs
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) x)
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(+.f64 (*.f64 2 (pow.f64 x 2)) 0)
(+.f64 0 (*.f64 2 (pow.f64 x 2)))
(-.f64 (*.f64 2 (pow.f64 x 2)) 0)
(-.f64 0 (*.f64 (neg.f64 (pow.f64 x 2)) 2))
(/.f64 (*.f64 2 (pow.f64 x 2)) 1)
(/.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(/.f64 (*.f64 (pow.f64 x 2) 4) 2)
(/.f64 (neg.f64 (*.f64 (pow.f64 x 2) 4)) -2)
(pow.f64 (*.f64 2 (pow.f64 x 2)) 1)
(neg.f64 (*.f64 (neg.f64 (pow.f64 x 2)) 2))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)) (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(/.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2) -2)
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(+.f64 (/.f64 2 (pow.f64 x 2)) 0)
(+.f64 0 (/.f64 2 (pow.f64 x 2)))
(-.f64 (/.f64 2 (pow.f64 x 2)) 0)
(-.f64 0 (neg.f64 (/.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 2 (pow.f64 x 2)) 1)
(*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))))
(*.f64 1 (/.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(*.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 2 (pow.f64 x 2))))
(*.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))
(*.f64 (/.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(pow.f64 (/.f64 2 (pow.f64 x 2)) 1)
(neg.f64 (neg.f64 (/.f64 2 (pow.f64 x 2))))
(+.f64 (pow.f64 (*.f64 x x) 2) 0)
(+.f64 0 (pow.f64 (*.f64 x x) 2))
(-.f64 (pow.f64 (*.f64 x x) 2) 0)
(-.f64 0 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(*.f64 (pow.f64 (*.f64 x x) 2) 1)
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))))
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))
(*.f64 (pow.f64 x 2) (pow.f64 x 2))
(*.f64 1 (pow.f64 (*.f64 x x) 2))
(*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2))
(*.f64 (neg.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2)))
(*.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (*.f64 x (*.f64 x x)) 2))
(*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(*.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2) (/.f64 1 (pow.f64 (*.f64 x x) 2)))
(*.f64 (fabs.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2)))
(*.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))
(*.f64 (pow.f64 (*.f64 x (*.f64 x x)) 2) (/.f64 1 (pow.f64 x 2)))
(*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) (*.f64 x (*.f64 x x))))) 2))
(*.f64 (/.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(*.f64 (/.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(*.f64 (/.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(/.f64 (pow.f64 (*.f64 x x) 2) 1)
(/.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(/.f64 (*.f64 2 (pow.f64 (*.f64 x x) 2)) 2)
(/.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) 2) -2)
(neg.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(fabs.f64 (pow.f64 (*.f64 x x) 2))
(fabs.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (pow.f64 x 2)))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (pow.f64 x 2)))
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (pow.f64 x 2)))
(fabs.f64 (*.f64 (pow.f64 x 2) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (pow.f64 x 2) (fabs.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (fabs.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (pow.f64 x 2) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (/.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (neg.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2))))
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 1 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))))
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(fabs.f64 (-.f64 0 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
Outputs
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 (sqrt.f64 2) x)
(*.f64 x (sqrt.f64 2))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 x (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 x (neg.f64 (sqrt.f64 2)))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 x (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 x (neg.f64 (sqrt.f64 2)))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 x (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 x (neg.f64 (sqrt.f64 2)))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (*.f64 -1 x))
(neg.f64 (*.f64 x (sqrt.f64 2)))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 x (neg.f64 (sqrt.f64 2)))
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(pow.f64 x 4)
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(neg.f64 (*.f64 (pow.f64 x 2) -2))
(+.f64 (*.f64 2 (pow.f64 x 2)) 0)
(*.f64 2 (pow.f64 x 2))
(+.f64 0 (*.f64 2 (pow.f64 x 2)))
(*.f64 2 (pow.f64 x 2))
(-.f64 (*.f64 2 (pow.f64 x 2)) 0)
(*.f64 2 (pow.f64 x 2))
(-.f64 0 (*.f64 (neg.f64 (pow.f64 x 2)) 2))
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(neg.f64 (*.f64 (pow.f64 x 2) -2))
(/.f64 (*.f64 2 (pow.f64 x 2)) 1)
(*.f64 2 (pow.f64 x 2))
(/.f64 (*.f64 2 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(*.f64 (/.f64 2 (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2))
(/.f64 (*.f64 (pow.f64 x 2) 4) 2)
(*.f64 2 (pow.f64 x 2))
(/.f64 (neg.f64 (*.f64 (pow.f64 x 2) 4)) -2)
(*.f64 2 (pow.f64 x 2))
(pow.f64 (*.f64 2 (pow.f64 x 2)) 1)
(*.f64 2 (pow.f64 x 2))
(neg.f64 (*.f64 (neg.f64 (pow.f64 x 2)) 2))
(+.f64 (pow.f64 x 2) (pow.f64 x 2))
(neg.f64 (*.f64 (pow.f64 x 2) -2))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)) (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4)))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2)))) (sqrt.f64 (*.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2)) (*.f64 4 (pow.f64 (*.f64 x x) 2)))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2))) (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2))) (/.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 x 2) (*.f64 (pow.f64 x 2) 4))) (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 4 (pow.f64 (*.f64 x x) 2))) (/.f64 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2) -2)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 (/.f64 2 (pow.f64 x 2)) 0)
(/.f64 2 (pow.f64 x 2))
(+.f64 0 (/.f64 2 (pow.f64 x 2)))
(/.f64 2 (pow.f64 x 2))
(-.f64 (/.f64 2 (pow.f64 x 2)) 0)
(/.f64 2 (pow.f64 x 2))
(-.f64 0 (neg.f64 (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 2 (pow.f64 x 2)) 1)
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))))
(/.f64 2 (pow.f64 x 2))
(*.f64 1 (/.f64 2 (pow.f64 x 2)))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2)))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 1 (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2)))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 (/.f64 1 (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 1 (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2)))) (/.f64 2 (pow.f64 x 2))) (*.f64 (/.f64 2 (pow.f64 x 2)) (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(pow.f64 (/.f64 2 (pow.f64 x 2)) 1)
(/.f64 2 (pow.f64 x 2))
(neg.f64 (neg.f64 (/.f64 2 (pow.f64 x 2))))
(/.f64 2 (pow.f64 x 2))
(+.f64 (pow.f64 (*.f64 x x) 2) 0)
(pow.f64 (*.f64 x x) 2)
(+.f64 0 (pow.f64 (*.f64 x x) 2))
(pow.f64 (*.f64 x x) 2)
(-.f64 (pow.f64 (*.f64 x x) 2) 0)
(pow.f64 (*.f64 x x) 2)
(-.f64 0 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x x) 2) 1)
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 x 2) (pow.f64 x 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 1 (pow.f64 (*.f64 x x) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (neg.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2)))
(*.f64 (/.f64 1 (pow.f64 x 2)) (pow.f64 (*.f64 x (*.f64 x x)) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2) (/.f64 1 (pow.f64 (*.f64 x x) 2)))
(pow.f64 (*.f64 x x) 2)
(*.f64 (fabs.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2)))
(pow.f64 (*.f64 x x) 2)
(*.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (pow.f64 (*.f64 x (*.f64 x x)) 2) (/.f64 1 (pow.f64 x 2)))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 (*.f64 x x) (*.f64 x (*.f64 x x))))) 2))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x (*.f64 x (*.f64 (*.f64 x x) (*.f64 x x))))) 2))
(*.f64 (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)) (pow.f64 (*.f64 x (*.f64 (*.f64 x (*.f64 x x)) (*.f64 (*.f64 x x) (*.f64 x x)))) 2))
(*.f64 (pow.f64 (*.f64 x (*.f64 x (*.f64 (*.f64 x x) (*.f64 (*.f64 x x) (*.f64 x x))))) 2) (/.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)))
(*.f64 (/.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 (*.f64 (pow.f64 x 2) (/.f64 1 (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(pow.f64 (*.f64 x x) 2)
(*.f64 (/.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)) (pow.f64 (*.f64 x (*.f64 x (*.f64 x x))) 2))
(pow.f64 (*.f64 x x) 2)
(/.f64 (pow.f64 (*.f64 x x) 2) 1)
(pow.f64 (*.f64 x x) 2)
(/.f64 (pow.f64 (*.f64 x x) 2) (/.f64 (pow.f64 x 2) (pow.f64 x 2)))
(pow.f64 (*.f64 x x) 2)
(/.f64 (*.f64 2 (pow.f64 (*.f64 x x) 2)) 2)
(pow.f64 (*.f64 x x) 2)
(/.f64 (*.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) 2) -2)
(pow.f64 (*.f64 x x) 2)
(neg.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (pow.f64 (*.f64 x x) 2))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (pow.f64 x 2)))
(fabs.f64 (*.f64 (pow.f64 x 2) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (pow.f64 x 2)))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (pow.f64 x 2)))
(fabs.f64 (*.f64 (pow.f64 x 2) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (pow.f64 x 2) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (neg.f64 (pow.f64 x 2))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (neg.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (pow.f64 x 2) (fabs.f64 (pow.f64 x 2))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (fabs.f64 (pow.f64 x 2))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))) (fabs.f64 (pow.f64 x 2))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (pow.f64 x 2) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (neg.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (*.f64 (fabs.f64 (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(fabs.f64 (/.f64 (neg.f64 (pow.f64 (*.f64 x x) 2)) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (/.f64 (pow.f64 (*.f64 x x) 2) (neg.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2)))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 1 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 1 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (pow.f64 (*.f64 x x) 2))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (*.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)) (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (*.f64 (/.f64 1 (/.f64 (pow.f64 x 2) (pow.f64 x 2))) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (neg.f64 (pow.f64 (*.f64 x x) 2)))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (/.f64 1 (pow.f64 (*.f64 x x) 2)) (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2)))))))
(pow.f64 (*.f64 x x) 2)
(fabs.f64 (-.f64 0 (/.f64 (pow.f64 (*.f64 x x) 2) (fabs.f64 (/.f64 (pow.f64 x 2) (pow.f64 x 2))))))
(pow.f64 (*.f64 x x) 2)

localize4.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (sqrt.f64 2) x)
Compiler

Compiled 9 to 7 computations (22.2% saved)

series0.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(*.f64 (sqrt.f64 2) x)
0.0ms
x
@inf
(*.f64 (sqrt.f64 2) x)
0.0ms
x
@0
(*.f64 (sqrt.f64 2) x)

rewrite102.0ms (2.1%)

Algorithm
batch-egg-rewrite
Rules
1432×rational_best-2
1432×rational_best-3
1432×rational_best-1
1430×rational_best-4
1430×exponential-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
15811
218411
375411
4298111
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) x)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 2) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 2) x))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 2) x) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (*.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) x) (/.f64 (*.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 2) x)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (+.f64 x x)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) x) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (*.f64 (sqrt.f64 2) x)))))))

simplify131.0ms (2.7%)

Algorithm
egg-herbie
Rules
1570×rational_best-simplify-132
1338×rational_best-simplify-80
1212×rational_best-simplify-78
998×rational_best-simplify-82
718×rational_best-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02299
13699
27599
320599
496799
5264199
6536199
Stop Event
node limit
Counts
9 → 10
Calls
Call 1
Inputs
(+.f64 (*.f64 (sqrt.f64 2) x) 0)
(+.f64 0 (*.f64 (sqrt.f64 2) x))
(-.f64 (*.f64 (sqrt.f64 2) x) 0)
(-.f64 0 (neg.f64 (*.f64 (sqrt.f64 2) x)))
(/.f64 (*.f64 (sqrt.f64 2) x) 1)
(/.f64 (*.f64 (sqrt.f64 2) x) (/.f64 (*.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 2) x)))
(/.f64 (*.f64 (sqrt.f64 2) (+.f64 x x)) 2)
(pow.f64 (*.f64 (sqrt.f64 2) x) 1)
(neg.f64 (neg.f64 (*.f64 (sqrt.f64 2) x)))
Outputs
(+.f64 (*.f64 (sqrt.f64 2) x) 0)
(*.f64 (sqrt.f64 2) x)
(+.f64 0 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) x)
(-.f64 (*.f64 (sqrt.f64 2) x) 0)
(*.f64 (sqrt.f64 2) x)
(-.f64 0 (neg.f64 (*.f64 (sqrt.f64 2) x)))
(*.f64 (sqrt.f64 2) x)
(/.f64 (*.f64 (sqrt.f64 2) x) 1)
(*.f64 (sqrt.f64 2) x)
(/.f64 (*.f64 (sqrt.f64 2) x) (/.f64 (*.f64 (sqrt.f64 2) x) (*.f64 (sqrt.f64 2) x)))
(*.f64 (sqrt.f64 2) x)
(/.f64 (*.f64 (sqrt.f64 2) (+.f64 x x)) 2)
(*.f64 (sqrt.f64 2) x)
(pow.f64 (*.f64 (sqrt.f64 2) x) 1)
(*.f64 (sqrt.f64 2) x)
(neg.f64 (neg.f64 (*.f64 (sqrt.f64 2) x)))
(*.f64 (sqrt.f64 2) x)

localize6.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (sqrt.f64 2) (neg.f64 x))
Compiler

Compiled 12 to 8 computations (33.3% saved)

series0.0ms (0%)

Counts
1 → 12
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@0
(*.f64 (sqrt.f64 2) (neg.f64 x))
0.0ms
x
@inf
(*.f64 (sqrt.f64 2) (neg.f64 x))
0.0ms
x
@-inf
(*.f64 (sqrt.f64 2) (neg.f64 x))

rewrite115.0ms (2.4%)

Algorithm
batch-egg-rewrite
Rules
1656×rational_best-2
1656×rational_best-1
1650×rational_best-3
1648×rational_best-4
1648×exponential-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
17015
222615
387615
4351115
Stop Event
node limit
Counts
1 → 9
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) (neg.f64 x))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 2) (neg.f64 x)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (*.f64 (sqrt.f64 2) (neg.f64 x))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) (*.f64 x -2)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 2) x) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (sqrt.f64 2) x))))))

simplify128.0ms (2.6%)

Algorithm
egg-herbie
Rules
1454×rational_best-simplify-132
1292×rational_best-simplify-80
1160×rational_best-simplify-78
1124×rational_best-simplify-2
1016×rational_best-simplify-82
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
026315
145315
289315
3229315
41179315
52748315
65464315
Stop Event
node limit
Counts
21 → 11
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(+.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)
(+.f64 0 (*.f64 (sqrt.f64 2) (neg.f64 x)))
(-.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)
(/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)
(/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (*.f64 (sqrt.f64 2) (neg.f64 x))))
(/.f64 (*.f64 (sqrt.f64 2) (*.f64 x -2)) 2)
(/.f64 (*.f64 (sqrt.f64 2) x) -1)
(pow.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)
(neg.f64 (*.f64 (sqrt.f64 2) x))
Outputs
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 -1 (*.f64 (sqrt.f64 2) x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(+.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(+.f64 0 (*.f64 (sqrt.f64 2) (neg.f64 x)))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(-.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 0)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (/.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) (*.f64 (sqrt.f64 2) (neg.f64 x))))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(/.f64 (*.f64 (sqrt.f64 2) (*.f64 x -2)) 2)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(/.f64 (*.f64 (sqrt.f64 2) x) -1)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(pow.f64 (*.f64 (sqrt.f64 2) (neg.f64 x)) 1)
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))
(neg.f64 (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) (neg.f64 x))

localize34.0ms (0.7%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
16.9b
(sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))
27.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
27.4b
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
Compiler

Compiled 79 to 56 computations (29.1% saved)

series2.0ms (0%)

Counts
3 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
x
@inf
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
1.0ms
x
@0
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
0.0ms
x
@0
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
0.0ms
x
@-inf
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
0.0ms
x
@-inf
(sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))

rewrite120.0ms (2.5%)

Algorithm
batch-egg-rewrite
Rules
728×rational_best-2
728×rational_best-3
728×rational_best-1
724×rational_best-5
722×rational_best-4
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
016109
113197
241997
3175663
4720763
Stop Event
node limit
Counts
3 → 75
Calls
Call 1
Inputs
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
(sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (-.f64 0 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))))

simplify183.0ms (3.8%)

Algorithm
egg-herbie
Rules
1084×rational_best-simplify-2
786×rational_best-simplify-132
774×rational_best-simplify-78
768×rational_best-simplify-80
638×rational_best-simplify-44
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01503433
12603433
24643367
314043367
429803367
554123367
Stop Event
node limit
Counts
111 → 100
Calls
Call 1
Inputs
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)
(+.f64 0 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(-.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) 2)
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(fabs.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (-.f64 0 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(+.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)
(+.f64 0 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(-.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)
(-.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)
(neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
Outputs
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
(*.f64 -2 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(*.f64 2 (pow.f64 x 2))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 1 (*.f64 (sqrt.f64 2) x))
(/.f64 1 (*.f64 x (sqrt.f64 2)))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 x (sqrt.f64 2)))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 x (sqrt.f64 2)))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 x (sqrt.f64 2)))
(/.f64 -1 (*.f64 (sqrt.f64 2) x))
(/.f64 -1 (*.f64 x (sqrt.f64 2)))
(+.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 0 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(-.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 0)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 2)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(pow.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) 1)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(+.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(+.f64 0 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(-.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 0)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(*.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4) (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) 8))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4) (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) 8))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2))))
(*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(*.f64 (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4) (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) 8))))
(*.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4) (pow.f64 x 2)))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 x 2) 8))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))) (sqrt.f64 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)) (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 16 (*.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16)) (pow.f64 (*.f64 x x) 2))))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)))) (sqrt.f64 (*.f64 16 (*.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)) (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)))) (sqrt.f64 (*.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)) (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2)))))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))) (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2))) (/.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (/.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))))
(*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (*.f64 (pow.f64 (*.f64 x x) 2) 16))) (/.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(*.f64 (sqrt.f64 (*.f64 16 (pow.f64 (*.f64 (*.f64 x x) (*.f64 x x)) 2))) (/.f64 (*.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 1 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))) (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 (*.f64 2 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) 2)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(pow.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) 1)
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))
(fabs.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(fabs.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))))
(fabs.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (*.f64 (neg.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (fabs.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(sqrt.f64 (*.f64 (*.f64 2 (pow.f64 x 2)) (*.f64 2 (pow.f64 x 2))))
(sqrt.f64 (*.f64 2 (*.f64 (pow.f64 x 2) (*.f64 2 (pow.f64 x 2)))))
(fabs.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (/.f64 (neg.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4))) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (neg.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(fabs.f64 (-.f64 0 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (fabs.f64 (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))))
(fabs.f64 (/.f64 (sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) 4)) (/.f64 (sqrt.f64 (*.f64 2 (pow.f64 x 2))) (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(+.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(+.f64 0 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(-.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 0)
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(-.f64 0 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (*.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))) (*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(pow.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) 1)
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))
(neg.f64 (neg.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))))
(/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2))))

eval345.0ms (7.1%)

Compiler

Compiled 6628 to 5136 computations (22.5% saved)

prune132.0ms (2.7%)

Pruning

5 alts after pruning (2 fresh and 3 done)

PrunedKeptTotal
New2822284
Fresh000
Picked101
Done134
Total2845289
Error
0.0b
Counts
289 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
30.9b
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
30.9b
(*.f64 (sqrt.f64 2) (neg.f64 x))
32.0b
(*.f64 (sqrt.f64 2) x)
32.1b
(*.f64 2 (/.f64 x (sqrt.f64 2)))
28.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 32 to 27 computations (15.6% saved)

localize29.0ms (0.6%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.5b
(/.f64 x (sqrt.f64 2))
Compiler

Compiled 15 to 12 computations (20% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

3 calls:

TimeVariablePointExpression
0.0ms
x
@-inf
(/.f64 x (sqrt.f64 2))
0.0ms
x
@0
(/.f64 x (sqrt.f64 2))
0.0ms
x
@inf
(/.f64 x (sqrt.f64 2))

rewrite69.0ms (1.4%)

Algorithm
batch-egg-rewrite
Rules
1384×rational_best-2
1384×rational_best-3
1384×rational_best-1
1382×rational_best-4
1380×exponential-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0711
15711
218311
374511
4288911
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(/.f64 x (sqrt.f64 2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (/.f64 x (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 x (sqrt.f64 2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 1 (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 x (sqrt.f64 2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (/.f64 x (sqrt.f64 2))))))))

simplify147.0ms (3%)

Algorithm
egg-herbie
Rules
1316×rational_best-simplify-80
1176×rational_best-simplify-78
818×rational_best-simplify-54
810×rational_best-simplify-2
656×rational_best-simplify-82
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
058341
1112341
2277341
3883341
42315341
54788341
Stop Event
node limit
Counts
31 → 32
Calls
Call 1
Inputs
(+.f64 (/.f64 x (sqrt.f64 2)) 0)
(+.f64 0 (/.f64 x (sqrt.f64 2)))
(-.f64 (/.f64 x (sqrt.f64 2)) 0)
(-.f64 0 (neg.f64 (/.f64 x (sqrt.f64 2))))
(*.f64 (/.f64 x (sqrt.f64 2)) 1)
(*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))))
(*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(*.f64 1 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 1 (/.f64 x (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(*.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(*.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(*.f64 (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(pow.f64 (/.f64 x (sqrt.f64 2)) 1)
(neg.f64 (neg.f64 (/.f64 x (sqrt.f64 2))))
Outputs
(+.f64 (/.f64 x (sqrt.f64 2)) 0)
(/.f64 x (sqrt.f64 2))
(+.f64 0 (/.f64 x (sqrt.f64 2)))
(/.f64 x (sqrt.f64 2))
(-.f64 (/.f64 x (sqrt.f64 2)) 0)
(/.f64 x (sqrt.f64 2))
(-.f64 0 (neg.f64 (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 x (sqrt.f64 2)) 1)
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 1 (/.f64 x (sqrt.f64 2)))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2)))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 1 (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2)))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(*.f64 (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 1 (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 (/.f64 1 (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))) (*.f64 (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))))))
(/.f64 x (sqrt.f64 2))
(*.f64 (/.f64 (/.f64 1 (/.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2)))) (/.f64 x (sqrt.f64 2))) (*.f64 (/.f64 x (sqrt.f64 2)) (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))
(pow.f64 (/.f64 x (sqrt.f64 2)) 1)
(/.f64 x (sqrt.f64 2))
(neg.f64 (neg.f64 (/.f64 x (sqrt.f64 2))))
(/.f64 x (sqrt.f64 2))

localize8.0ms (0.2%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.5b
(/.f64 x (sqrt.f64 2))
Compiler

Compiled 16 to 13 computations (18.8% saved)

eval201.0ms (4.2%)

Compiler

Compiled 1687 to 1383 computations (18% saved)

prune9.0ms (0.2%)

Pruning

5 alts after pruning (0 fresh and 5 done)

PrunedKeptTotal
New64064
Fresh000
Picked011
Done044
Total64569
Error
0.0b
Counts
69 → 5
Alt Table
Click to see full alt table
StatusErrorProgram
30.9b
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
30.9b
(*.f64 (sqrt.f64 2) (neg.f64 x))
32.0b
(*.f64 (sqrt.f64 2) x)
32.1b
(*.f64 2 (/.f64 x (sqrt.f64 2)))
28.3b
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
Compiler

Compiled 32 to 27 computations (15.6% saved)

regimes47.0ms (1%)

Accuracy

Total -63.1b remaining (-15988.7%)

Threshold costs -63.1b (-15988.7%)

Counts
7 → 2
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 2) x)
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 2 (/.f64 x (sqrt.f64 2)))
(*.f64 (/.f64 x (sqrt.f64 2)) -2)
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
(sqrt.f64 (*.f64 (pow.f64 (*.f64 x x) 2) (/.f64 2 (pow.f64 x 2))))
(*.f64 (/.f64 1 (sqrt.f64 (*.f64 2 (pow.f64 x 2)))) (sqrt.f64 (*.f64 2 (*.f64 2 (pow.f64 (*.f64 x x) 2)))))
Outputs
(*.f64 (sqrt.f64 2) (neg.f64 x))
(*.f64 (sqrt.f64 2) x)
Calls

4 calls:

12.0ms
(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
11.0ms
x
11.0ms
(pow.f64 x 2)
10.0ms
(*.f64 2 (pow.f64 x 2))
Results
ErrorSegmentsBranch
0.4b2x
11.4b3(sqrt.f64 (*.f64 2 (pow.f64 x 2)))
11.4b3(*.f64 2 (pow.f64 x 2))
11.4b3(pow.f64 x 2)
Compiler

Compiled 78 to 62 computations (20.5% saved)

bsearch18.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
18.0ms
-1.635127462965333e-306
8.806479124310309e-301
Results
16.0ms160×body256valid
Compiler

Compiled 141 to 119 computations (15.6% saved)

simplify2.0ms (0%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01546
Stop Event
done
saturated
Calls
Call 1
Inputs
(if (<=.f64 x -20240225330731/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696) (*.f64 (sqrt.f64 2) (neg.f64 x)) (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) x)
Outputs
(if (<=.f64 x -20240225330731/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696) (*.f64 (sqrt.f64 2) (neg.f64 x)) (*.f64 (sqrt.f64 2) x))
(*.f64 (sqrt.f64 2) x)
Compiler

Compiled 19 to 15 computations (21.1% saved)

soundness265.0ms (5.5%)

Algorithm
egg-herbie
Rules
1104×rational_best-simplify-132
918×rational_best-simplify-2
886×rational_best-simplify-54
540×rational_best-simplify-80
466×rational_best-simplify-78
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
063630
1102616
2224616
3732616
42487616
55931616
Stop Event
node limit
Compiler

Compiled 24 to 20 computations (16.7% saved)

end19.0ms (0.4%)

Compiler

Compiled 18 to 14 computations (22.2% saved)

Profiling

Loading profile data...