Details

Time bar (total: 2.1s)

analyze308.0ms (14.4%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
6.3%6.2%93.6%0.2%0%0%0%9
9.4%9.4%90.4%0.2%0%0%0%10
13%12.5%83.4%0.2%3.9%0%0%11
19.6%18.7%76.8%0.2%4.3%0%0%12
Compiler

Compiled 12 to 8 computations (33.3% saved)

sample1.1s (51.2%)

Results
866.0ms8256×body256valid
215.0ms2056×body256infinite
Bogosity

preprocess27.0ms (1.2%)

Algorithm
egg-herbie
Rules
12×rational.json-simplify-2
swap-z-t
swap-x-y
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
023133
127133
044
144
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
0
2
3
2
Call 2
Inputs
(-.f64 (*.f64 x y) (*.f64 z t))
(-.f64 (*.f64 y x) (*.f64 z t))
(-.f64 (*.f64 z y) (*.f64 x t))
(-.f64 (*.f64 t y) (*.f64 z x))
(-.f64 (*.f64 x z) (*.f64 y t))
(-.f64 (*.f64 x t) (*.f64 z y))
(-.f64 (*.f64 x y) (*.f64 t z))
Outputs
(-.f64 (*.f64 x y) (*.f64 z t))
(-.f64 (*.f64 y x) (*.f64 z t))
(-.f64 (*.f64 x y) (*.f64 z t))
(-.f64 (*.f64 z y) (*.f64 x t))
(-.f64 (*.f64 y z) (*.f64 x t))
(-.f64 (*.f64 t y) (*.f64 z x))
(-.f64 (*.f64 y t) (*.f64 x z))
(-.f64 (*.f64 x z) (*.f64 y t))
(-.f64 (*.f64 x t) (*.f64 z y))
(-.f64 (*.f64 x t) (*.f64 y z))
(-.f64 (*.f64 x y) (*.f64 t z))
(-.f64 (*.f64 x y) (*.f64 z t))
Symmetry

(sort x y)

(sort z t)

Compiler

Compiled 15 to 11 computations (26.7% saved)

simplify18.0ms (0.8%)

Algorithm
egg-herbie
Rules
rational.json-simplify-2
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
11119
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(-.f64 (*.f64 x y) (*.f64 z t))
Outputs
(-.f64 (*.f64 x y) (*.f64 z t))

eval0.0ms (0%)

Compiler

Compiled 11 to 7 computations (36.4% 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 (*.f64 x y) (*.f64 z t))
Compiler

Compiled 11 to 7 computations (36.4% saved)

localize7.0ms (0.3%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 x y) (*.f64 z t))
Compiler

Compiled 21 to 7 computations (66.7% saved)

series4.0ms (0.2%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
z
@0
(-.f64 (*.f64 x y) (*.f64 z t))
0.0ms
x
@0
(-.f64 (*.f64 x y) (*.f64 z t))
0.0ms
x
@-inf
(-.f64 (*.f64 x y) (*.f64 z t))
0.0ms
y
@-inf
(-.f64 (*.f64 x y) (*.f64 z t))
0.0ms
z
@-inf
(-.f64 (*.f64 x y) (*.f64 z t))

rewrite92.0ms (4.3%)

Algorithm
batch-egg-rewrite
Rules
2036×rational.json-5
2034×rational.json-1
2034×rational.json-2
2034×rational.json-4
2034×rational.json-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
17619
225819
396419
4385619
Stop Event
node limit
Counts
1 → 16
Calls
Call 1
Inputs
(-.f64 (*.f64 x y) (*.f64 z t))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 x y) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 -1 (-.f64 (*.f64 z t) (*.f64 x y))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 x y) (*.f64 z t)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))) (/.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 z t) (*.f64 x y)))))))

simplify300.0ms (14%)

Algorithm
egg-herbie
Rules
1298×rational.json-simplify-47
1096×rational.json-simplify-49
1000×rational.json-simplify-1
912×exponential.json-simplify-26
906×rational.json-simplify-2
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
0411324
1731240
22091240
311751240
449681240
578791240
Stop Event
node limit
Counts
64 → 24
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 0)
(+.f64 0 (-.f64 (*.f64 x y) (*.f64 z t)))
(+.f64 (-.f64 -1 (-.f64 (*.f64 z t) (*.f64 x y))) 1)
(*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(*.f64 1 (-.f64 (*.f64 x y) (*.f64 z t)))
(*.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)
(*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))
(*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) 1))
(*.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))) (/.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))))
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(/.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)
(pow.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(neg.f64 (-.f64 (*.f64 z t) (*.f64 x y)))
Outputs
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 y x)
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(*.f64 -1 (*.f64 t z))
(neg.f64 (*.f64 t z))
(*.f64 t (neg.f64 z))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (*.f64 -1 (*.f64 t z)) (*.f64 y x))
(+.f64 (neg.f64 (*.f64 t z)) (*.f64 y x))
(+.f64 (*.f64 t (neg.f64 z)) (*.f64 y x))
(+.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 0)
(-.f64 (*.f64 y x) (*.f64 t z))
(+.f64 0 (-.f64 (*.f64 x y) (*.f64 z t)))
(-.f64 (*.f64 y x) (*.f64 t z))
(+.f64 (-.f64 -1 (-.f64 (*.f64 z t) (*.f64 x y))) 1)
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 1 (-.f64 (*.f64 x y) (*.f64 z t)))
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))))
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) 1))
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(-.f64 (*.f64 y x) (*.f64 t z))
(*.f64 (*.f64 (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))) (/.f64 (/.f64 1 (-.f64 (*.f64 x y) (*.f64 z t))) (*.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t)))))
(-.f64 (*.f64 y x) (*.f64 t z))
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(-.f64 (*.f64 y x) (*.f64 t z))
(/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (/.f64 (-.f64 (*.f64 x y) (*.f64 z t)) (-.f64 (*.f64 x y) (*.f64 z t))))
(-.f64 (*.f64 y x) (*.f64 t z))
(/.f64 (-.f64 (*.f64 z t) (*.f64 x y)) -1)
(-.f64 (*.f64 y x) (*.f64 t z))
(pow.f64 (-.f64 (*.f64 x y) (*.f64 z t)) 1)
(-.f64 (*.f64 y x) (*.f64 t z))
(neg.f64 (-.f64 (*.f64 z t) (*.f64 x y)))
(-.f64 (*.f64 y x) (*.f64 t z))

eval4.0ms (0.2%)

Compiler

Compiled 323 to 62 computations (80.8% saved)

prune6.0ms (0.3%)

Pruning

3 alts after pruning (2 fresh and 1 done)

PrunedKeptTotal
New22224
Fresh000
Picked011
Done000
Total22325
Error
0.0b
Counts
25 → 3
Alt Table
Click to see full alt table
StatusErrorProgram
0.0b
(-.f64 (*.f64 x y) (*.f64 z t))
30.7b
(*.f64 y x)
31.7b
(*.f64 t (neg.f64 z))
Compiler

Compiled 26 to 18 computations (30.8% saved)

localize5.0ms (0.2%)

Compiler

Compiled 12 to 6 computations (50% saved)

localize4.0ms (0.2%)

Compiler

Compiled 9 to 5 computations (44.4% saved)

eval0.0ms (0%)

Compiler

Compiled 4 to 4 computations (0% saved)

prune3.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
0.0b
(-.f64 (*.f64 x y) (*.f64 z t))
30.7b
(*.f64 y x)
31.7b
(*.f64 t (neg.f64 z))
Compiler

Compiled 26 to 18 computations (30.8% saved)

regimes34.0ms (1.6%)

Counts
3 → 1
Calls
Call 1
Inputs
(*.f64 y x)
(*.f64 t (neg.f64 z))
(-.f64 (*.f64 x y) (*.f64 z t))
Outputs
(-.f64 (*.f64 x y) (*.f64 z t))
Calls

7 calls:

6.0ms
t
5.0ms
x
5.0ms
z
5.0ms
y
5.0ms
(-.f64 (*.f64 x y) (*.f64 z t))
Results
ErrorSegmentsBranch
0.0b1x
0.0b1y
0.0b1z
0.0b1t
0.0b1(-.f64 (*.f64 x y) (*.f64 z t))
0.0b1(*.f64 x y)
0.0b1(*.f64 z t)
Compiler

Compiled 63 to 43 computations (31.7% saved)

regimes74.0ms (3.5%)

Accuracy

Total -44.5b remaining (-275.6%)

Threshold costs -44.5b (-275.6%)

Counts
2 → 9
Calls
Call 1
Inputs
(*.f64 y x)
(*.f64 t (neg.f64 z))
Outputs
(*.f64 y x)
(*.f64 t (neg.f64 z))
(*.f64 y x)
(*.f64 t (neg.f64 z))
(*.f64 y x)
(*.f64 t (neg.f64 z))
(*.f64 y x)
(*.f64 t (neg.f64 z))
(*.f64 y x)
Calls

4 calls:

30.0ms
x
21.0ms
z
11.0ms
y
11.0ms
t
Results
ErrorSegmentsBranch
16.1b9x
18.6b3y
19.0b5z
16.7b3t
Compiler

Compiled 31 to 23 computations (25.8% saved)

bsearch112.0ms (5.2%)

Algorithm
binary-search
Steps
TimeLeftRight
17.0ms
1.6212496702146519e-121
3.9808332025076385e-117
18.0ms
-1.396089197672715e-161
-1.2775206194504132e-180
3.0ms
-2.243579917785342e-139
-2.088326781565109e-139
13.0ms
-1.2941430686264265e-43
-2.143366128055591e-45
15.0ms
-9.62999316915082e-35
-5.302508898425934e-38
14.0ms
-2.2204134736829563e+47
-3.486659406404276e+45
15.0ms
-3.8853384063314707e+68
-1.2037548263340436e+64
17.0ms
-5.5492442962165954e+103
-1.1859636551185021e+101
Results
91.0ms912×body256valid
3.0ms27×body256infinite
Compiler

Compiled 987 to 754 computations (23.6% saved)

simplify5.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
040177
Stop Event
done
saturated
Calls
Call 1
Inputs
(-.f64 (*.f64 x y) (*.f64 z t))
(if (<=.f64 x -309999999999999999101889567348387381760799345011747003156000637133764438181844583668504713945935773696) (*.f64 y x) (if (<=.f64 x -369999999999999998102340069930400902459591772500915930690379216584704) (*.f64 t (neg.f64 z)) (if (<=.f64 x -3800000000000000176755408373115385159583006720) (*.f64 y x) (if (<=.f64 x -838083498911033/5986310706507378352962293074805895248510699696029696) (*.f64 t (neg.f64 z)) (if (<=.f64 x -7532522082464017/100433627766186892221372630771322662657637687111424552206336) (*.f64 y x) (if (<=.f64 x -5631279330575891/26815615859885194199148049996411692254958731641184786755447122887443528060147093953603748596333806855380063716372972101707507765623893139892867298012168192) (*.f64 t (neg.f64 z)) (if (<=.f64 x -3419095469964197/253266331108459042877954581524118722595974501479640924072000569439126758509088631982403994686712878069348015540240526683495797795130113239006767262824338603946605334680267915264) (*.f64 y x) (if (<=.f64 x 6586975938928937/22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208) (*.f64 t (neg.f64 z)) (*.f64 y x)))))))))
(*.f64 y x)
Outputs
(-.f64 (*.f64 x y) (*.f64 z t))
(if (<=.f64 x -309999999999999999101889567348387381760799345011747003156000637133764438181844583668504713945935773696) (*.f64 y x) (if (<=.f64 x -369999999999999998102340069930400902459591772500915930690379216584704) (*.f64 t (neg.f64 z)) (if (<=.f64 x -3800000000000000176755408373115385159583006720) (*.f64 y x) (if (<=.f64 x -838083498911033/5986310706507378352962293074805895248510699696029696) (*.f64 t (neg.f64 z)) (if (<=.f64 x -7532522082464017/100433627766186892221372630771322662657637687111424552206336) (*.f64 y x) (if (<=.f64 x -5631279330575891/26815615859885194199148049996411692254958731641184786755447122887443528060147093953603748596333806855380063716372972101707507765623893139892867298012168192) (*.f64 t (neg.f64 z)) (if (<=.f64 x -3419095469964197/253266331108459042877954581524118722595974501479640924072000569439126758509088631982403994686712878069348015540240526683495797795130113239006767262824338603946605334680267915264) (*.f64 y x) (if (<=.f64 x 6586975938928937/22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208) (*.f64 t (neg.f64 z)) (*.f64 y x)))))))))
(*.f64 y x)
Compiler

Compiled 85 to 43 computations (49.4% saved)

soundness0.0ms (0%)

end42.0ms (1.9%)

Remove

(sort z t)

(sort x y)

Compiler

Compiled 121 to 62 computations (48.8% saved)

Profiling

Loading profile data...