Details

Time bar (total: 2.6s)

analyze255.0ms (9.8%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
25%25%74.9%0.1%0%0%0%5
28.6%25%62.4%0.1%12.5%0%0%6
38.1%25%40.6%0.1%34.3%0%0%7
43.2%25%32.8%0.1%42.1%0%0%8
51.6%25%23.4%0.1%51.5%0%0%9
61%28.1%18%0.1%53.9%0%0%10
73.3%31.6%11.5%0.1%56.8%0%0%11
79%33.4%8.9%0.1%57.7%0%0%12
Compiler

Compiled 10 to 8 computations (20% saved)

sample1.7s (64%)

Results
1.5s8256×body256valid
140.0ms659×body256infinite
Bogosity

preprocess5.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0938
022
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
Outputs
0
1
Call 2
Inputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(-.f64 (pow.f64 y 4) (pow.f64 x 4))
Outputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(-.f64 (pow.f64 y 4) (pow.f64 x 4))
Compiler

Compiled 11 to 9 computations (18.2% saved)

simplify9.0ms (0.3%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
Outputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))

eval0.0ms (0%)

Compiler

Compiled 9 to 7 computations (22.2% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

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

Compiled 9 to 7 computations (22.2% saved)

localize8.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
Compiler

Compiled 18 to 12 computations (33.3% saved)

series5.0ms (0.2%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
y
@-inf
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
1.0ms
y
@0
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
1.0ms
x
@0
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
1.0ms
x
@inf
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
0.0ms
x
@-inf
(-.f64 (pow.f64 x 4) (pow.f64 y 4))

rewrite98.0ms (3.7%)

Algorithm
batch-egg-rewrite
Rules
1330×exponential.json-3
1330×rational.json-1
1330×rational.json-2
1330×rational.json-4
1330×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0819
15019
211019
322719
440419
592119
6248119
7466119
8614819
Stop Event
node limit
Counts
1 → 51
Calls
Call 1
Inputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 1 (-.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (pow.f64 y 4)) (pow.f64 x 4))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -1 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (pow.f64 x 4) 1/2) (-.f64 (*.f64 (pow.f64 x 4) 1/2) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 1 (pow.f64 y 4)) (+.f64 (pow.f64 x 4) -1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 -2 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (pow.f64 x 4) 1) (-.f64 -1 (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 4 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 1/8)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 16 (*.f64 1/16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/4 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/16 (*.f64 16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/8 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 256 (*.f64 1/256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/256 (*.f64 256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)) 16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 4 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))) 32)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -8)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)))) 64)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))) -16)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))))) 128)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))))))

simplify322.0ms (12.3%)

Algorithm
egg-herbie
Rules
1888×rational.json-simplify-35
1578×rational.json-simplify-1
1524×rational.json-simplify-2
1028×rational.json-simplify-51
810×rational.json-simplify-42
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01151661
12371661
28181661
315271661
429301389
539011389
646611389
757471389
864051389
967251389
1068531389
1172341389
1276611389
1378571389
Stop Event
node limit
Counts
75 → 57
Calls
Call 1
Inputs
(*.f64 -1 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(*.f64 -1 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 0)
(+.f64 0 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))
(+.f64 1 (-.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4))))
(+.f64 (neg.f64 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 -1 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)))
(+.f64 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)) -1)
(+.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))
(+.f64 (*.f64 (pow.f64 x 4) 1/2) (-.f64 (*.f64 (pow.f64 x 4) 1/2) (pow.f64 y 4)))
(+.f64 (-.f64 1 (pow.f64 y 4)) (+.f64 (pow.f64 x 4) -1))
(+.f64 -2 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))
(+.f64 (+.f64 (pow.f64 x 4) 1) (-.f64 -1 (pow.f64 y 4)))
(+.f64 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) -2)
(+.f64 (+.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2)))
(*.f64 4 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4))
(*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(*.f64 1 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))
(*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 1/2)
(*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)
(*.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 1/4)
(*.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 1/8)
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -1/2)
(*.f64 1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) 2)
(*.f64 16 (*.f64 1/16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(*.f64 -2 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2))
(*.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2) -2)
(*.f64 1/4 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4) 4)
(*.f64 1/16 (*.f64 16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(*.f64 1/8 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))
(*.f64 -1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2))
(*.f64 256 (*.f64 1/256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(*.f64 1/256 (*.f64 256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 2)
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)
(/.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 4)
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 8)
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -2)
(/.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)) 16)
(/.f64 (*.f64 4 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -4)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))) 32)
(/.f64 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -8)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)))) 64)
(/.f64 (*.f64 2 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))) -16)
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))))) 128)
(pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))
Outputs
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(pow.f64 x 4)
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 -1 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 -1 (pow.f64 y 4))
(neg.f64 (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (*.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 0)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 0 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 1 (-.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (neg.f64 (pow.f64 y 4)) (pow.f64 x 4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 -1 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (-.f64 (pow.f64 x 4) (+.f64 (pow.f64 y 4) -1)) -1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (*.f64 (pow.f64 x 4) 1/2) (-.f64 (*.f64 (pow.f64 x 4) 1/2) (pow.f64 y 4)))
(+.f64 (-.f64 1 (pow.f64 y 4)) (+.f64 (pow.f64 x 4) -1))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 -2 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (+.f64 (pow.f64 x 4) 1) (-.f64 -1 (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (+.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) -2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(+.f64 (+.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) -1) (+.f64 1 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 4 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1 (-.f64 (pow.f64 x 4) (pow.f64 y 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 1/2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 1/4)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 -1 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 1/8)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -1/2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/2) 2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 16 (*.f64 1/16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 -2 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) 1/2) -2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1/4 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1/4) 4)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1/16 (*.f64 16 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1/8 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 -1/2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 256 (*.f64 1/256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(*.f64 1/256 (*.f64 256 (-.f64 (pow.f64 x 4) (pow.f64 y 4))))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 2) 2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)) -1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 4 (-.f64 (pow.f64 x 4) (pow.f64 y 4))) 4)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8) 8)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) -2) -2)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)) 16)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 4 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -4)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))) 32)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4))) -8)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8)))) 64)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 2 (*.f64 8 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))) -16)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(/.f64 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 2 (*.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 8))))) 128)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(pow.f64 (-.f64 (pow.f64 x 4) (pow.f64 y 4)) 1)
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(neg.f64 (-.f64 (pow.f64 y 4) (pow.f64 x 4)))
(+.f64 (pow.f64 x 4) (neg.f64 (pow.f64 y 4)))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))

eval72.0ms (2.7%)

Compiler

Compiled 619 to 503 computations (18.7% saved)

prune9.0ms (0.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New55257
Fresh000
Picked011
Done000
Total55358
Error
0.0b
Counts
58 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
22.1b
(pow.f64 x 4)
0.0b
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
18.8b
(neg.f64 (pow.f64 y 4))
Compiler

Compiled 20 to 16 computations (20% saved)

localize5.0ms (0.2%)

Compiler

Compiled 11 to 8 computations (27.3% saved)

localize3.0ms (0.1%)

Compiler

Compiled 7 to 5 computations (28.6% saved)

eval0.0ms (0%)

Compiler

Compiled 2 to 2 computations (0% saved)

prune1.0ms (0.1%)

Pruning

3 alts after pruning (0 fresh and 3 done)

PrunedKeptTotal
New000
Fresh000
Picked011
Done022
Total033
Error
0.0b
Counts
3 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
22.1b
(pow.f64 x 4)
0.0b
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
18.8b
(neg.f64 (pow.f64 y 4))
Compiler

Compiled 20 to 16 computations (20% saved)

regimes16.0ms (0.6%)

Counts
3 → 1
Calls
Call 1
Inputs
(pow.f64 x 4)
(neg.f64 (pow.f64 y 4))
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
Outputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
Calls

5 calls:

3.0ms
x
3.0ms
y
3.0ms
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
3.0ms
(pow.f64 x 4)
2.0ms
(pow.f64 y 4)
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1(-.f64 (pow.f64 x 4) (pow.f64 y 4))
0.0b1(pow.f64 x 4)
0.0b1(pow.f64 y 4)
Compiler

Compiled 41 to 31 computations (24.4% saved)

regimes80.0ms (3.1%)

Accuracy

Total -36.8b remaining (-938.5%)

Threshold costs -36.8b (-938.5%)

Counts
2 → 3
Calls
Call 1
Inputs
(pow.f64 x 4)
(neg.f64 (pow.f64 y 4))
Outputs
(pow.f64 x 4)
(neg.f64 (pow.f64 y 4))
(pow.f64 x 4)
Calls

4 calls:

56.0ms
(pow.f64 x 4)
12.0ms
x
8.0ms
y
3.0ms
(pow.f64 y 4)
Results
ErrorSegmentsBranch
3.9b3x
4.2b3y
4.2b2(pow.f64 x 4)
4.2b2(pow.f64 y 4)
Compiler

Compiled 25 to 19 computations (24% saved)

bsearch23.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
9.0ms
7.101858705005889e-68
1.8276750184770813e-67
15.0ms
-3.7135537766211124e-69
-3.484748564199589e-71
Results
21.0ms192×body256valid
Compiler

Compiled 170 to 143 computations (15.9% saved)

simplify4.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01969
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(if (<=.f64 x -8081502591659033/124330809102446660538845562036705210025114037699336929360115994223289874253133343883264) (pow.f64 x 4) (if (<=.f64 x 4978089036328431/60708402882054033466233184588234965832575213720379360039119137804340758912662765568) (neg.f64 (pow.f64 y 4)) (pow.f64 x 4)))
(pow.f64 x 4)
Outputs
(-.f64 (pow.f64 x 4) (pow.f64 y 4))
(if (<=.f64 x -8081502591659033/124330809102446660538845562036705210025114037699336929360115994223289874253133343883264) (pow.f64 x 4) (if (<=.f64 x 4978089036328431/60708402882054033466233184588234965832575213720379360039119137804340758912662765568) (neg.f64 (pow.f64 y 4)) (pow.f64 x 4)))
(pow.f64 x 4)
Compiler

Compiled 34 to 26 computations (23.5% saved)

soundness0.0ms (0%)

end27.0ms (1%)

Compiler

Compiled 30 to 22 computations (26.7% saved)

Profiling

Loading profile data...