Details

Time bar (total: 8.3s)

analyze454.0ms (5.5%)

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
0%0%99.9%0.1%0%0%0%5
0%0%99.9%0.1%0%0%0%6
0%0%93.6%0.1%0%6.2%0%7
6.7%6.2%87.4%0.1%0%6.2%0%8
11.1%10.1%81.1%0.1%0%8.6%0%9
18%15.6%71%0.1%0%13.3%0%10
25.9%22%63%0.1%0.8%14%0%11
35.5%29.1%52.9%0.1%1.6%16.4%0%12
Compiler

Compiled 21 to 15 computations (28.6% saved)

sample2.4s (28.3%)

Results
873.0ms5614×body256valid
677.0ms1149×body2048valid
244.0ms403×body4096valid
227.0ms719×body1024valid
154.0ms1043×body256invalid
91.0ms371×body512valid
72.0ms527×body256infinite
Bogosity

preprocess87.0ms (1%)

Algorithm
egg-herbie
Rules
986×rational_best-simplify-1
756×rational_best-simplify-21
756×rational_best-simplify-18
738×rational_best-simplify-20
402×rational_best-simplify-126
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
036204
1183188
21211188
36832188
033
Stop Event
saturated
node limit
Calls
Call 1
Inputs
0
1
2
Outputs
0
1
2
Call 2
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 3 b) c)))) (*.f64 3 b))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 c) a)))) (*.f64 3 c))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 3 a) b)))) (*.f64 3 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 a c)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 c -3)))) b) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 (*.f64 3 b) c)))) (*.f64 3 b))
(/.f64 (+.f64 (neg.f64 a) (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 c (*.f64 b 3))))) (*.f64 b 3))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 a a) (*.f64 3 (*.f64 c b)))) a) (*.f64 b 3))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 a a) (*.f64 c (*.f64 b -3)))) a) (*.f64 b 3))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 c) a)))) (*.f64 3 c))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 a (*.f64 3 c))))) (*.f64 3 c))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 a c)))) b) (*.f64 3 c))
(/.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 c -3))))) (*.f64 c -3))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 (*.f64 3 a) b)))) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 c) (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 b (*.f64 3 a))))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 c c) (*.f64 a (*.f64 b 3)))) c) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 c c) (*.f64 b (*.f64 a -3)))) c) (*.f64 3 a))
Compiler

Compiled 23 to 17 computations (26.1% saved)

simplify50.0ms (0.6%)

Algorithm
egg-herbie
Rules
718×rational_best-simplify-111
710×rational_best-simplify-96
690×rational_best-simplify-117
678×rational_best-simplify-61
662×rational_best-simplify-65
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01551
15847
231547
3203347
Stop Event
node limit
Counts
1 → 3
Calls
Call 1
Inputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
Outputs
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))

eval1.0ms (0%)

Compiler

Compiled 52 to 32 computations (38.5% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New123
Fresh101
Picked000
Done000
Total224
Error
36.0b
Counts
4 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
36.0b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
Compiler

Compiled 38 to 26 computations (31.6% saved)

localize26.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
1.0b
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
1.2b
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
23.5b
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
Compiler

Compiled 69 to 37 computations (46.4% saved)

series18.0ms (0.2%)

Counts
4 → 96
Calls

36 calls:

TimeVariablePointExpression
2.0ms
b
@inf
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
1.0ms
b
@inf
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
1.0ms
b
@0
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
1.0ms
b
@0
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
1.0ms
a
@inf
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))

rewrite77.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1062×rational_best-simplify-113
740×rational_best-simplify-111
612×rational_best-simplify-96
604×rational_best-simplify-61
596×rational_best-simplify-117
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
016136
157136
2279136
31818136
Stop Event
node limit
Counts
4 → 51
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 c (*.f64 a -3)) (neg.f64 (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 1 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (-.f64 (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3))) (*.f64 (*.f64 b b) (*.f64 b b))) (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 b b) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (*.f64 b b)) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3))) 0) (/.f64 (-.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 a (*.f64 c 3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))
()

simplify84.0ms (1%)

Algorithm
egg-herbie
Rules
596×rational_best-simplify-62
518×rational_best-simplify-124
516×rational_best-simplify-126
476×rational_best-simplify-65
474×rational_best-simplify-61
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03337321
115007285
Stop Event
node limit
Counts
147 → 168
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -3) 5)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -2 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 -1/24 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -2/3 (/.f64 b a))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(*.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0))
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))))
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))
(-.f64 (*.f64 c (*.f64 a -3)) (neg.f64 (*.f64 b b)))
(-.f64 0 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(*.f64 -1 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(*.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)
(/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(/.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)
(/.f64 (+.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b))) -2)
(/.f64 (-.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 1 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(neg.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (-.f64 (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3))) (*.f64 (*.f64 b b) (*.f64 b b))) (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b b) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (neg.f64 (*.f64 b b)) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3))) 0) (/.f64 (-.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 a (*.f64 c 3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -3) 5)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 5))) (/.f64 (pow.f64 b 6) (sqrt.f64 -243)))))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 5))) (/.f64 (pow.f64 b 6) (sqrt.f64 -243))))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(+.f64 (+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (neg.f64 b))
(-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (neg.f64 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) b))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (neg.f64 b)) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16) (*.f64 (/.f64 (*.f64 c a) b) 3/2)))
(+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) b) (-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(+.f64 (+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(+.f64 (+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (neg.f64 b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (neg.f64 b))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))) (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (pow.f64 (*.f64 c a) 2)) 2) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 81/64 (pow.f64 (pow.f64 (*.f64 c a) 2) 2)) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (*.f64 b -2))
(-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (*.f64 b -2)))
(+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (*.f64 b -2)) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16)))
(+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (+.f64 (-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b))) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16)))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) b)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) b))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (*.f64 -1/3 (/.f64 b a)))
(+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))))) (*.f64 -1/3 (/.f64 b a))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/6 (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3))))))))
(+.f64 (*.f64 -1/24 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))))
(+.f64 (*.f64 1/6 (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))))) (+.f64 (+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a))) (*.f64 -1/24 (*.f64 (/.f64 (pow.f64 b 4) (sqrt.f64 -27)) (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5))))))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (+.f64 (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/6 (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3))))))) (*.f64 (/.f64 (pow.f64 b 4) (sqrt.f64 -27)) (*.f64 -1/24 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5))))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (pow.f64 (*.f64 c a) 2)) 2) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (*.f64 a (pow.f64 b 7))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (*.f64 -1/6 (/.f64 (+.f64 (*.f64 81/64 (pow.f64 (pow.f64 (*.f64 c a) 2) 2)) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (*.f64 a (pow.f64 b 7))))))
(*.f64 -2/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 (/.f64 b a) -2/3) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (*.f64 (/.f64 b a) -2/3) (+.f64 (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8)) (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)) 9/16)))
(+.f64 (*.f64 (/.f64 b a) -2/3) (+.f64 (*.f64 1/2 (/.f64 c b)) (+.f64 (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8) (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)) 9/16))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) (*.f64 a b))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) (*.f64 a b)))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(-.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))))
(/.f64 (+.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 4 (*.f64 -2 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(-.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(-.f64 (*.f64 c (*.f64 a -3)) (neg.f64 (*.f64 b b)))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(-.f64 0 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(*.f64 -1 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(*.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) -1)
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(/.f64 (+.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)) (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b))) -2)
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(/.f64 (-.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 1 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(neg.f64 (-.f64 (*.f64 a (*.f64 c 3)) (*.f64 b b)))
(-.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (-.f64 (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3))) (*.f64 (*.f64 b b) (*.f64 b b))) (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (-.f64 (*.f64 (*.f64 c (*.f64 a 3)) (*.f64 c (*.f64 a 3))) (*.f64 (*.f64 b b) (*.f64 b b))) (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (-.f64 (*.f64 c (*.f64 (*.f64 c (*.f64 a 3)) (*.f64 a 3))) (*.f64 (*.f64 b b) (*.f64 b b))) (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b b) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b b) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 b b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b b) 0) (*.f64 1 (/.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (neg.f64 (*.f64 b b)) 0) (/.f64 (*.f64 b (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b (neg.f64 b)) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 b b)) (*.f64 b b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b (neg.f64 b)) 0) (*.f64 1 (/.f64 (*.f64 b (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3))) 0) (/.f64 (-.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 a (*.f64 c 3)) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 a (*.f64 c 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3))) 0) (/.f64 (-.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 (*.f64 c (*.f64 a 3)) (*.f64 c (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3))) 0) (/.f64 (-.f64 (*.f64 (*.f64 b b) (*.f64 b b)) (*.f64 c (*.f64 (*.f64 c (*.f64 a 3)) (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 a (*.f64 c 3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a 3)) 0) (/.f64 (*.f64 (*.f64 c (*.f64 a -3)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))

localize23.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
1.0b
(-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))
1.2b
(-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b)
23.5b
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))))
Compiler

Compiled 68 to 30 computations (55.9% saved)

series7.0ms (0.1%)

Counts
4 → 96
Calls

36 calls:

TimeVariablePointExpression
0.0ms
b
@0
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))))
0.0ms
c
@-inf
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))))
0.0ms
a
@-inf
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
0.0ms
a
@inf
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
0.0ms
c
@-inf
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))

rewrite74.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
908×rational_best-simplify-96
870×rational_best-simplify-61
852×rational_best-simplify-65
786×rational_best-simplify-3
700×rational_best-simplify-110
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
015136
172136
2392136
32557136
Stop Event
node limit
Counts
4 → 56
Calls
Call 1
Inputs
(sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))))
(-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b)
(-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (sqrt.f64 -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))) (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 3 (*.f64 c a)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 b b) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 b (neg.f64 b)) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0)) 0) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))))
()

simplify83.0ms (1%)

Algorithm
egg-herbie
Rules
596×rational_best-simplify-62
444×rational_best-simplify-124
442×rational_best-simplify-126
436×rational_best-simplify-127
412×rational_best-simplify-65
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
03337260
113227224
Stop Event
node limit
Counts
152 → 173
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -3) 5)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 -1 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -2 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 -3 (*.f64 c a))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 -1/24 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -2/3 (/.f64 b a))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(*.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(*.f64 (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (sqrt.f64 -1))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 0)
(+.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))
(+.f64 0 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)
(*.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))
(/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(/.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)
(/.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) -2)
(/.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1))
(/.f64 (+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 2)
(/.f64 (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))) (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1)))
(pow.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(neg.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 3 (*.f64 c a)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b b) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b (neg.f64 b)) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0)) 0) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3))))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 5) (pow.f64 a 5)))) (/.f64 (pow.f64 b 6) (pow.f64 (sqrt.f64 -3) 5)))) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 5))) (/.f64 (pow.f64 b 6) (sqrt.f64 -243))))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27))))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 1/16 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 5))) (/.f64 (pow.f64 b 6) (sqrt.f64 -243)))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1 b))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (neg.f64 b))
(-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (neg.f64 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) b))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -1 b))))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (neg.f64 b)) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) b) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16)))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
b
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b)
(+.f64 b (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) b))
(+.f64 b (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 b (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (neg.f64 b)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (neg.f64 b))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (-.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 81/64 (pow.f64 (pow.f64 (*.f64 c a) 2) 2)) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 c a) 4) 81/64) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7)))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (*.f64 b -2))
(-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (*.f64 b -2)))
(+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b))))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (+.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (*.f64 b -2)) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16)))
(-.f64 (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8) (-.f64 (*.f64 b -2) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) b)) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(pow.f64 b 2)
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 -3 (*.f64 c a))
(*.f64 c (*.f64 a -3))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(+.f64 (pow.f64 b 2) (*.f64 -3 (*.f64 c a)))
(+.f64 (pow.f64 b 2) (*.f64 c (*.f64 a -3)))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (*.f64 -1/3 (/.f64 b a)))
(+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (*.f64 1/6 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1/3 (/.f64 b a))))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (*.f64 1/6 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3))))))))
(+.f64 (*.f64 -1/24 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 1/6 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))))
(+.f64 (+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (+.f64 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))) (*.f64 1/6 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1/3 (/.f64 b a)))) (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))) (*.f64 -1/24 (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))))
(+.f64 (+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 -3 (/.f64 c a)))) (+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (/.f64 (pow.f64 b 2) (sqrt.f64 -3)) (*.f64 1/6 (sqrt.f64 (/.f64 1 (*.f64 c (pow.f64 a 3)))))))) (*.f64 (/.f64 (pow.f64 b 4) (sqrt.f64 -27)) (*.f64 -1/24 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 5)))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/6 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (*.f64 -1/6 (/.f64 (+.f64 (*.f64 81/64 (pow.f64 (pow.f64 (*.f64 c a) 2) 2)) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (*.f64 a (pow.f64 b 7)))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))) (*.f64 -1/6 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 c a) 4) 81/64) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (*.f64 a (pow.f64 b 7))))))
(*.f64 -2/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(+.f64 (*.f64 -2/3 (/.f64 b a)) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 1/2 (/.f64 c b)) (+.f64 (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8) (*.f64 (/.f64 b a) -2/3)))
(+.f64 (*.f64 (/.f64 b a) -2/3) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8)))
(+.f64 (*.f64 -2/3 (/.f64 b a)) (+.f64 (*.f64 9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (+.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8)) (+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)) 9/16)))
(+.f64 (*.f64 (/.f64 b a) -2/3) (+.f64 (*.f64 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)) 3/8) (-.f64 (*.f64 1/2 (/.f64 c b)) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) (*.f64 a b))) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) (*.f64 a b))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) (*.f64 a b))))
(*.f64 -1/2 (/.f64 c b))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))))
(+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5))) (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 (pow.f64 c 2) a) (pow.f64 b 3))))))
(+.f64 (+.f64 (*.f64 -1/2 (/.f64 c b)) (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3)))) (+.f64 (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b)) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 c b)) (+.f64 (+.f64 (*.f64 -3/8 (/.f64 (*.f64 a (pow.f64 c 2)) (pow.f64 b 3))) (*.f64 -9/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 2)) (pow.f64 b 5)))) (*.f64 -1/6 (/.f64 (*.f64 (pow.f64 a 3) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(-.f64 0 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 -1 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (sqrt.f64 -1))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(*.f64 (sqrt.f64 -1) (sqrt.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(/.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(neg.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (neg.f64 b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) -1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) b)) 2)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) -2)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) -4)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))) (*.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 -1 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1) (+.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 1)))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(pow.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 1)
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(neg.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (+.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (/.f64 0 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (*.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) 0)) 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b))
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 0)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(+.f64 0 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(*.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) -1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) -2)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) 2)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) -4)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))) (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) (-.f64 -1 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b))))) (+.f64 (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1) (+.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 1)))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(pow.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) 1)
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(neg.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a))) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 3 a))) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 3 a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 3 a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3))) 0) (/.f64 (+.f64 (*.f64 c (*.f64 (*.f64 a -3) (*.f64 c (*.f64 a 3)))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 3 (*.f64 c a)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(if (!=.f64 (*.f64 b b) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 3 (*.f64 c a)) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (+.f64 (*.f64 b (*.f64 b (*.f64 b b))) (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 3 a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 3 a)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a -3)) (*.f64 b b)) 0) (/.f64 (+.f64 (*.f64 c (*.f64 (*.f64 a -3) (*.f64 c (*.f64 a 3)))) (*.f64 b (*.f64 b (*.f64 b b)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a 3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b (neg.f64 b)) 0) (*.f64 (/.f64 (*.f64 b b) b) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 b (neg.f64 b)) 0) (*.f64 (+.f64 b (/.f64 0 b)) (/.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) b)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 3 a)) (*.f64 b b)) 0) (+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (/.f64 0 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (-.f64 (*.f64 c (*.f64 a 3)) (*.f64 b b)) 0) (+.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (/.f64 0 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (*.f64 3 (*.f64 c a)) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) (*.f64 3 (*.f64 c a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 c (*.f64 3 a))) (*.f64 c (*.f64 3 a))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 (*.f64 c (*.f64 a -3)) 0) (/.f64 (*.f64 c (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (*.f64 a 3))) (*.f64 c (*.f64 a 3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 3 (*.f64 c a)) (*.f64 b b)) 0)) 0) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))

eval175.0ms (2.1%)

Compiler

Compiled 11703 to 7347 computations (37.2% saved)

prune53.0ms (0.6%)

Pruning

14 alts after pruning (12 fresh and 2 done)

PrunedKeptTotal
New32912341
Fresh000
Picked011
Done011
Total32914343
Error
3.2b
Counts
343 → 14
Alt Table
Click to see full alt table
StatusErrorProgram
45.6b
(/.f64 (if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
38.5b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
47.5b
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
47.6b
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
55.5b
(/.f64 (-.f64 b b) (*.f64 3 a))
46.2b
(/.f64 (*.f64 b -2) (*.f64 3 a))
42.9b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
46.5b
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
52.7b
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
46.3b
(*.f64 (/.f64 b a) -2/3)
52.5b
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
36.5b
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 502 to 336 computations (33.1% saved)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.0b
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 14 to 7 computations (50% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

6 calls:

TimeVariablePointExpression
0.0ms
c
@inf
(*.f64 -1/2 (/.f64 c b))
0.0ms
c
@0
(*.f64 -1/2 (/.f64 c b))
0.0ms
b
@0
(*.f64 -1/2 (/.f64 c b))
0.0ms
b
@inf
(*.f64 -1/2 (/.f64 c b))
0.0ms
c
@-inf
(*.f64 -1/2 (/.f64 c b))

rewrite148.0ms (1.8%)

Algorithm
batch-egg-rewrite
Rules
1252×rational_best-simplify-61
1142×rational_best-simplify-3
738×rational_best-simplify-62
672×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
11713
28713
355613
4375813
Stop Event
node limit
Counts
1 → 0
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
Outputs
()

simplify13.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
0 → 0
Calls
Call 1
Inputs
Outputs

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (/.f64 b a) -2/3)
Compiler

Compiled 14 to 7 computations (50% saved)

series4.0ms (0.1%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
2.0ms
a
@inf
(*.f64 (/.f64 b a) -2/3)
1.0ms
b
@0
(*.f64 (/.f64 b a) -2/3)
0.0ms
b
@inf
(*.f64 (/.f64 b a) -2/3)
0.0ms
a
@0
(*.f64 (/.f64 b a) -2/3)
0.0ms
b
@-inf
(*.f64 (/.f64 b a) -2/3)

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1252×rational_best-simplify-61
1142×rational_best-simplify-3
738×rational_best-simplify-62
676×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
11713
28713
355613
4375213
Stop Event
node limit
Counts
1 → 0
Calls
Call 1
Inputs
(*.f64 (/.f64 b a) -2/3)
Outputs
()

simplify76.0ms (0.9%)

Algorithm
egg-herbie
Rules
1264×rational_best-simplify-61
1142×rational_best-simplify-3
738×rational_best-simplify-62
672×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07312
117312
287312
3556312
43758312
Stop Event
node limit
Counts
24 → 1
Calls
Call 1
Inputs
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
Outputs
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))

localize7.0ms (0.1%)

Compiler

Compiled 19 to 10 computations (47.4% saved)

localize11.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
6.7b
(/.f64 (*.f64 c a) b)
8.7b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
Compiler

Compiled 37 to 16 computations (56.8% saved)

series8.0ms (0.1%)

Counts
3 → 36
Calls

27 calls:

TimeVariablePointExpression
3.0ms
b
@0
(/.f64 (*.f64 c a) b)
0.0ms
a
@0
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
0.0ms
c
@0
(/.f64 (*.f64 c a) b)
0.0ms
b
@-inf
(/.f64 (*.f64 c a) b)
0.0ms
a
@0
(/.f64 (*.f64 c a) b)

rewrite52.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
952×rational_best-simplify-113
454×rational_best-simplify-3
452×rational_best-simplify-126
452×rational_best-simplify-124
444×rational_best-simplify-127
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01263
13363
218863
3123463
Stop Event
node limit
Counts
3 → 4
Calls
Call 1
Inputs
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(/.f64 (*.f64 c a) b)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
Outputs
()
()
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 (/.f64 (*.f64 c a) b) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2))))))

simplify54.0ms (0.7%)

Algorithm
egg-herbie
Rules
724×rational_best-simplify-61
710×rational_best-simplify-65
704×rational_best-simplify-96
694×rational_best-simplify-110
592×rational_best-simplify-3
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
021568
194544
2495544
33518544
Stop Event
node limit
Counts
40 → 7
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(-.f64 0 (*.f64 (/.f64 (*.f64 c a) b) 3/2))
(/.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) -1)
(neg.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2))
Outputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/2 (/.f64 c b))
(-.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(-.f64 0 (*.f64 (/.f64 (*.f64 c a) b) 3/2))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(/.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) -1)
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(neg.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) 0)
(*.f64 -3/2 (/.f64 (*.f64 c a) b))

localize15.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)
0.2b
(*.f64 -3 (*.f64 c a))
0.2b
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
15.6b
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
Compiler

Compiled 45 to 24 computations (46.7% saved)

series15.0ms (0.2%)

Counts
4 → 28
Calls

30 calls:

TimeVariablePointExpression
4.0ms
a
@inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
1.0ms
c
@0
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
1.0ms
c
@0
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
1.0ms
a
@-inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
1.0ms
c
@-inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))

rewrite95.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1362×rational_best-simplify-113
634×rational_best-simplify-111
574×rational_best-simplify-3
540×rational_best-simplify-61
534×rational_best-simplify-96
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01488
15588
226288
3167588
Stop Event
node limit
Counts
4 → 48
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
(*.f64 -3 (*.f64 c a))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 -3 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 -3) (sqrt.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 -3 c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 c a))) (neg.f64 (sqrt.f64 -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 -3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 -3) (sqrt.f64 c)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 -3 c)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))))
()
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 a 3) c))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))))

simplify78.0ms (0.9%)

Algorithm
egg-herbie
Rules
1168×rational_best-simplify-61
942×rational_best-simplify-3
622×rational_best-simplify-53
608×rational_best-simplify-62
578×rational_best-simplify-56
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01501682
16711670
242771670
Stop Event
node limit
Counts
76 → 62
Calls
Call 1
Inputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 -3 a)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 -3) (sqrt.f64 c)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 -3 c)))
(*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))
(*.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 c a))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c a))) (neg.f64 (sqrt.f64 -3)))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 -3 a))))
(*.f64 (*.f64 (sqrt.f64 -3) (sqrt.f64 c)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 -3 c)) (sqrt.f64 a))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(-.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))
(neg.f64 (*.f64 (*.f64 a 3) c))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0))
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(/.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)))
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))))
(pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
Outputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0)
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 -3 a)))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 a) (*.f64 (sqrt.f64 -3) (sqrt.f64 c)))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 -3 c)))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 c a))))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c a))) (neg.f64 (sqrt.f64 -3)))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 -3 a))))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (*.f64 (sqrt.f64 -3) (sqrt.f64 c)) (sqrt.f64 a))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 -3 c)) (sqrt.f64 a))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))
(*.f64 c (-.f64 0 (*.f64 a 3)))
(*.f64 a (*.f64 c -3))
(neg.f64 (*.f64 (*.f64 a 3) c))
(*.f64 c (-.f64 0 (*.f64 a 3)))
(*.f64 a (*.f64 c -3))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) -1)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) b)) 2)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) -2)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) -4)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 1)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (sqrt.f64 (*.f64 -3 (*.f64 c a)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 c a))))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)

eval22.0ms (0.3%)

Compiler

Compiled 1442 to 878 computations (39.1% saved)

prune28.0ms (0.3%)

Pruning

20 alts after pruning (13 fresh and 7 done)

PrunedKeptTotal
New63770
Fresh167
Picked011
Done066
Total642084
Error
0.4b
Counts
84 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
55.5b
(/.f64 (if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 3 a))
38.5b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
50.5b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 3 a))
52.3b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 c)) (sqrt.f64 a)) b) (*.f64 3 a))
53.3b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
47.5b
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
47.6b
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
55.5b
(/.f64 (-.f64 b b) (*.f64 3 a))
46.2b
(/.f64 (*.f64 b -2) (*.f64 3 a))
42.9b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
46.0b
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
46.1b
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
46.5b
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
52.7b
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
46.3b
(*.f64 (/.f64 b a) -2/3)
52.5b
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
59.3b
(*.f64 -1/3 (/.f64 b a))
36.5b
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 601 to 418 computations (30.4% saved)

localize48.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))
1.2b
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
9.5b
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
23.5b
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
Compiler

Compiled 155 to 83 computations (46.5% saved)

series2.0ms (0%)

Counts
1 → 20
Calls

9 calls:

TimeVariablePointExpression
0.0ms
a
@inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
0.0ms
c
@inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
0.0ms
c
@-inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
0.0ms
a
@-inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
0.0ms
b
@0
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)

rewrite103.0ms (1.2%)

Algorithm
batch-egg-rewrite
Rules
1028×rational_best-simplify-113
656×rational_best-simplify-111
574×rational_best-simplify-96
568×rational_best-simplify-117
560×rational_best-simplify-61
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01547
15447
225547
3165747
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b))))))

simplify65.0ms (0.8%)

Algorithm
egg-herbie
Rules
806×rational_best-simplify-65
788×rational_best-simplify-61
678×rational_best-simplify-113
642×rational_best-simplify-62
586×rational_best-simplify-117
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01221579
14111523
222601487
Stop Event
node limit
Counts
21 → 46
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -2 b)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(if (!=.f64 b 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 (*.f64 c a) -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (*.f64 -1 b)))
(+.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b)) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))))
(+.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 (pow.f64 c 3) (pow.f64 a 3)))) (/.f64 (pow.f64 b 4) (pow.f64 (sqrt.f64 -3) 3)))) (+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))))
(+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (+.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) (*.f64 -1 b))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (+.f64 (neg.f64 b) (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27))))) (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3))))))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 1/2 (*.f64 (sqrt.f64 (/.f64 1 (*.f64 c a))) (/.f64 (pow.f64 b 2) (sqrt.f64 -3)))) (-.f64 (*.f64 -1/8 (*.f64 (sqrt.f64 (/.f64 1 (pow.f64 (*.f64 c a) 3))) (/.f64 (pow.f64 b 4) (sqrt.f64 -27)))) b)))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -1/2 (/.f64 (+.f64 (pow.f64 (*.f64 -9/8 (*.f64 (pow.f64 c 2) (pow.f64 a 2))) 2) (*.f64 81/16 (*.f64 (pow.f64 c 4) (pow.f64 a 4)))) (pow.f64 b 7))) (+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 81/64 (pow.f64 (pow.f64 (*.f64 c a) 2) 2)) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7)))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (+.f64 (*.f64 (pow.f64 (*.f64 c a) 4) 81/64) (*.f64 81/16 (pow.f64 (*.f64 c a) 4))) (pow.f64 b 7)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 (*.f64 c a) 4) 405/64) (pow.f64 b 7))))))
(*.f64 -2 b)
(*.f64 b -2)
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (*.f64 -2 b))
(+.f64 (*.f64 b -2) (*.f64 (/.f64 (*.f64 c a) b) 3/2))
(+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b)))
(+.f64 (*.f64 b -2) (+.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8)))
(-.f64 (+.f64 (*.f64 b -2) (*.f64 (/.f64 (*.f64 c a) b) 3/2)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))) (+.f64 (*.f64 3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -2 b))))
(+.f64 (+.f64 (*.f64 b -2) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)) 9/8)) (+.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16) (*.f64 (/.f64 (*.f64 c a) b) 3/2)))
(+.f64 (-.f64 (+.f64 (*.f64 b -2) (*.f64 (/.f64 (*.f64 c a) b) 3/2)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))) (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16))
(+.f64 (*.f64 b -2) (-.f64 (*.f64 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)) 27/16) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b)) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b))))
(+.f64 (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 a 2) (pow.f64 b 3))) 2))) b))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 c 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 a 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 a 2) (pow.f64 b 3)) 2)))) b)))))
(*.f64 -3/2 (/.f64 (*.f64 c a) b))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (*.f64 -3/2 (/.f64 (*.f64 c a) b)))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5)))))
(+.f64 (*.f64 -9/8 (/.f64 (*.f64 (pow.f64 c 2) (pow.f64 a 2)) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (pow.f64 (*.f64 -9/8 (/.f64 (pow.f64 c 2) (pow.f64 b 3))) 2))) b)) (*.f64 -27/16 (/.f64 (*.f64 (pow.f64 c 3) (pow.f64 a 3)) (pow.f64 b 5))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b))) (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b)) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))))))
(+.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (+.f64 (*.f64 -27/16 (/.f64 (pow.f64 (*.f64 c a) 3) (pow.f64 b 5))) (+.f64 (*.f64 -9/8 (/.f64 (pow.f64 (*.f64 c a) 2) (pow.f64 b 3))) (*.f64 -1/2 (/.f64 (*.f64 (pow.f64 a 4) (+.f64 (*.f64 81/16 (/.f64 (pow.f64 c 4) (pow.f64 b 6))) (*.f64 81/64 (pow.f64 (/.f64 (pow.f64 c 2) (pow.f64 b 3)) 2)))) b)))))
(if (!=.f64 b 0) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b))
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b)

localize5.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.4b
(*.f64 -1/3 (/.f64 b a))
Compiler

Compiled 14 to 7 computations (50% saved)

series2.0ms (0%)

Counts
1 → 0
Calls

6 calls:

TimeVariablePointExpression
0.0ms
b
@inf
(*.f64 -1/3 (/.f64 b a))
0.0ms
b
@-inf
(*.f64 -1/3 (/.f64 b a))
0.0ms
b
@0
(*.f64 -1/3 (/.f64 b a))
0.0ms
a
@inf
(*.f64 -1/3 (/.f64 b a))
0.0ms
a
@-inf
(*.f64 -1/3 (/.f64 b a))

rewrite65.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1252×rational_best-simplify-61
1142×rational_best-simplify-3
738×rational_best-simplify-62
672×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0713
11713
28713
355613
4375813
Stop Event
node limit
Counts
1 → 0
Calls
Call 1
Inputs
(*.f64 -1/3 (/.f64 b a))
Outputs
()

simplify14.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
0 → 0
Calls
Call 1
Inputs
Outputs

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (/.f64 c a) -3)
0.3b
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
9.7b
(sqrt.f64 (*.f64 (/.f64 c a) -3))
Compiler

Compiled 29 to 16 computations (44.8% saved)

series10.0ms (0.1%)

Counts
3 → 24
Calls

18 calls:

TimeVariablePointExpression
3.0ms
a
@0
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
1.0ms
c
@0
(sqrt.f64 (*.f64 (/.f64 c a) -3))
0.0ms
c
@-inf
(sqrt.f64 (*.f64 (/.f64 c a) -3))
0.0ms
c
@inf
(sqrt.f64 (*.f64 (/.f64 c a) -3))
0.0ms
c
@-inf
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))

rewrite70.0ms (0.8%)

Algorithm
batch-egg-rewrite
Rules
1252×rational_best-simplify-61
1154×rational_best-simplify-3
738×rational_best-simplify-62
676×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01153
12553
29753
357053
4376853
Stop Event
node limit
Counts
3 → 2
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (/.f64 c a) -3))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(*.f64 (/.f64 c a) -3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (/.f64 c a)))))))
()
()

simplify65.0ms (0.8%)

Algorithm
egg-herbie
Rules
1264×rational_best-simplify-61
1146×rational_best-simplify-3
738×rational_best-simplify-62
678×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012346
123346
292346
3561346
43762346
Stop Event
node limit
Counts
26 → 4
Calls
Call 1
Inputs
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (/.f64 c a)))
Outputs
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 -3 (/.f64 c a))
(*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 -3 (/.f64 c a)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (/.f64 c a)))
(sqrt.f64 (*.f64 -3 (/.f64 c a)))

localize17.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
0.2b
(*.f64 c (*.f64 a -3))
0.2b
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
15.6b
(sqrt.f64 (*.f64 c (*.f64 a -3)))
Compiler

Compiled 45 to 29 computations (35.6% saved)

series4.0ms (0%)

Counts
4 → 52
Calls

30 calls:

TimeVariablePointExpression
0.0ms
c
@0
(sqrt.f64 (*.f64 c (*.f64 a -3)))
0.0ms
a
@-inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
0.0ms
c
@inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
0.0ms
a
@inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
0.0ms
c
@-inf
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))

rewrite75.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1364×rational_best-simplify-113
632×rational_best-simplify-111
574×rational_best-simplify-3
540×rational_best-simplify-61
534×rational_best-simplify-96
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01488
15588
226288
3167388
Stop Event
node limit
Counts
4 → 48
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
(*.f64 c (*.f64 a -3))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (*.f64 (sqrt.f64 c) (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 a)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))))))
()
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 (*.f64 a 3) c))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))))

simplify97.0ms (1.2%)

Algorithm
egg-herbie
Rules
1168×rational_best-simplify-61
1004×rational_best-simplify-3
624×rational_best-simplify-53
610×rational_best-simplify-62
570×rational_best-simplify-56
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01512218
16972206
244022206
Stop Event
node limit
Counts
100 → 65
Calls
Call 1
Inputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))
(*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))
(*.f64 (sqrt.f64 -3) (*.f64 (sqrt.f64 c) (sqrt.f64 a)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))
(*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))
(*.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 a)) (sqrt.f64 -3))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(-.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))
(neg.f64 (*.f64 (*.f64 a 3) c))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3))))
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0))
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(/.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)))
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))))
(pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
Outputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -3 (*.f64 c a))
(*.f64 a (*.f64 c -3))
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0)
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 -3) (*.f64 (sqrt.f64 c) (sqrt.f64 a)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 c a)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (*.f64 (sqrt.f64 c) (sqrt.f64 a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 (*.f64 c 0) (*.f64 c (*.f64 a 3)))
(*.f64 a (*.f64 c -3))
(neg.f64 (*.f64 (*.f64 a 3) c))
(*.f64 a (*.f64 c -3))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) -1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) 2)
(/.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c)))) 2)
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c))) (+.f64 b b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) -2)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) -4)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))) (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (-.f64 (sqrt.f64 c) (neg.f64 (sqrt.f64 c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) -2) (*.f64 (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c)))) (+.f64 (-.f64 (neg.f64 b) b) (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c)))))) (-.f64 4 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) -2)))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c))) (+.f64 b b)) (-.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c))) (+.f64 b b))) (*.f64 -2 (+.f64 (-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b) (-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)))) (+.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3)))) (-.f64 b (sqrt.f64 (*.f64 a (*.f64 c -3))))) -2) -4))
(/.f64 (+.f64 (*.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c))) (+.f64 b b)) (-.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (+.f64 (sqrt.f64 c) (sqrt.f64 c))) (+.f64 b b))) (*.f64 -2 (+.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (-.f64 (-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b) b)))) (+.f64 -4 (*.f64 2 (+.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (-.f64 (-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b) b)))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (sqrt.f64 (*.f64 c (*.f64 a -3)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 a -3)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)

localize21.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b)
0.1b
(sqrt.f64 (*.f64 -3 a))
0.1b
(*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))
0.1b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
Compiler

Compiled 49 to 30 computations (38.8% saved)

series11.0ms (0.1%)

Counts
4 → 28
Calls

27 calls:

TimeVariablePointExpression
5.0ms
c
@-inf
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
1.0ms
a
@-inf
(sqrt.f64 (*.f64 -3 a))
0.0ms
c
@-inf
(*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))
0.0ms
a
@0
(sqrt.f64 (*.f64 -3 a))
0.0ms
c
@-inf
(-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b)

rewrite74.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1436×rational_best-simplify-113
632×rational_best-simplify-111
592×rational_best-simplify-3
544×rational_best-simplify-61
534×rational_best-simplify-96
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01586
15686
226086
3169486
Stop Event
node limit
Counts
4 → 36
Calls
Call 1
Inputs
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
(*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c))
(sqrt.f64 (*.f64 -3 a))
(-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b)
Outputs
()
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 -3 (*.f64 a c)))))))
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (sqrt.f64 -3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))))

simplify85.0ms (1%)

Algorithm
egg-herbie
Rules
1020×rational_best-simplify-61
998×rational_best-simplify-65
774×rational_best-simplify-3
588×rational_best-simplify-62
540×rational_best-simplify-53
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01231462
15841462
237981462
Stop Event
node limit
Counts
64 → 51
Calls
Call 1
Inputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(sqrt.f64 (*.f64 -3 (*.f64 a c)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 a))
(*.f64 (sqrt.f64 a) (sqrt.f64 -3))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c))))
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0))
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(/.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)))
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))
(pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
Outputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0)
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(sqrt.f64 (*.f64 -3 (*.f64 a c)))
(sqrt.f64 (*.f64 a (*.f64 -3 c)))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 a))
(sqrt.f64 (*.f64 a -3))
(*.f64 (sqrt.f64 a) (sqrt.f64 -3))
(sqrt.f64 (*.f64 a -3))
(+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) -1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) b)) 2)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) -2)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) -4)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(pow.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 1)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 -3 (*.f64 a c)) (*.f64 a c)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b)) (sqrt.f64 (*.f64 -3 (*.f64 a c)))) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 a c))) b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 -3 c))) b)
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)

eval290.0ms (3.5%)

Compiler

Compiled 19988 to 11989 computations (40% saved)

prune108.0ms (1.3%)

Pruning

20 alts after pruning (9 fresh and 11 done)

PrunedKeptTotal
New4275432
Fresh448
Picked011
Done11011
Total43220452
Error
0.4b
Counts
452 → 20
Alt Table
Click to see full alt table
StatusErrorProgram
55.5b
(/.f64 (if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 3 a))
52.3b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) b) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
50.5b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
52.3b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b) (*.f64 3 a))
53.3b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
47.5b
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
47.6b
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
55.5b
(/.f64 (-.f64 b b) (*.f64 3 a))
46.2b
(/.f64 (*.f64 b -2) (*.f64 3 a))
42.9b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
46.0b
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
46.1b
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
52.7b
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
46.5b
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
46.3b
(*.f64 (/.f64 b a) -2/3)
52.5b
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
59.3b
(*.f64 -1/3 (/.f64 b a))
36.5b
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 557 to 394 computations (29.3% saved)

localize15.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 c (*.f64 a -3))
0.3b
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
15.6b
(sqrt.f64 (*.f64 c (*.f64 a -3)))
Compiler

Compiled 34 to 23 computations (32.4% saved)

series1.0ms (0%)

Counts
1 → 0
Calls

6 calls:

TimeVariablePointExpression
0.0ms
a
@-inf
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
0.0ms
c
@0
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
0.0ms
a
@inf
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
0.0ms
c
@inf
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
0.0ms
c
@-inf
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))

rewrite82.0ms (1%)

Algorithm
batch-egg-rewrite
Rules
1372×rational_best-simplify-61
1206×rational_best-simplify-52
838×rational_best-simplify-53
782×rational_best-simplify-56
668×rational_best-simplify-113
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01229
12929
211929
368329
4457429
Stop Event
node limit
Counts
1 → 0
Calls
Call 1
Inputs
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
Outputs
()

simplify13.0ms (0.2%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
000
Stop Event
saturated
Counts
0 → 0
Calls
Call 1
Inputs
Outputs

localize10.0ms (0.1%)

Local error

Found 1 expressions with local error:

NewErrorProgram
0.2b
(/.f64 (*.f64 b -2) (*.f64 3 a))
Compiler

Compiled 20 to 14 computations (30% saved)

series0.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
b
@0
(/.f64 (*.f64 b -2) (*.f64 3 a))
0.0ms
b
@inf
(/.f64 (*.f64 b -2) (*.f64 3 a))
0.0ms
b
@-inf
(/.f64 (*.f64 b -2) (*.f64 3 a))
0.0ms
a
@-inf
(/.f64 (*.f64 b -2) (*.f64 3 a))
0.0ms
a
@inf
(/.f64 (*.f64 b -2) (*.f64 3 a))

rewrite73.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1358×rational_best-simplify-61
1124×rational_best-simplify-52
808×rational_best-simplify-53
754×rational_best-simplify-56
560×rational_best-simplify-1
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0919
12019
210219
364119
4442919
Stop Event
node limit
Counts
1 → 0
Calls
Call 1
Inputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
Outputs
()

simplify64.0ms (0.8%)

Algorithm
egg-herbie
Rules
1264×rational_best-simplify-61
1142×rational_best-simplify-3
738×rational_best-simplify-62
672×rational_best-simplify-53
618×rational_best-simplify-56
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
07312
117312
287312
3556312
43758312
Stop Event
node limit
Counts
24 → 1
Calls
Call 1
Inputs
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
Outputs
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))
(*.f64 -2/3 (/.f64 b a))

localize13.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.2b
(*.f64 a (*.f64 c -3))
0.3b
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
15.6b
(sqrt.f64 (*.f64 a (*.f64 c -3)))
Compiler

Compiled 34 to 23 computations (32.4% saved)

series5.0ms (0.1%)

Counts
3 → 24
Calls

18 calls:

TimeVariablePointExpression
2.0ms
c
@-inf
(sqrt.f64 (*.f64 a (*.f64 c -3)))
0.0ms
a
@0
(sqrt.f64 (*.f64 a (*.f64 c -3)))
0.0ms
a
@inf
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
0.0ms
c
@inf
(sqrt.f64 (*.f64 a (*.f64 c -3)))
0.0ms
a
@0
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))

rewrite88.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
1372×rational_best-simplify-61
1206×rational_best-simplify-52
838×rational_best-simplify-53
782×rational_best-simplify-56
668×rational_best-simplify-113
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01259
12959
211959
368359
4457459
Stop Event
node limit
Counts
3 → 30
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(*.f64 a (*.f64 c -3))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 a (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 a) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c -3)) (neg.f64 (neg.f64 (sqrt.f64 a))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a -3)) (neg.f64 (neg.f64 (sqrt.f64 c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 a c)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 c -3))) (neg.f64 (sqrt.f64 a)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 a c))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))))))
()
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 c c) (*.f64 a (*.f64 c -3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (*.f64 c (*.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (-.f64 c c) (*.f64 c (*.f64 a 3)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c (*.f64 a 3)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (*.f64 c (*.f64 a 3)))))))

simplify104.0ms (1.2%)

Algorithm
egg-herbie
Rules
822×rational_best-simplify-52
752×rational_best-simplify-113
712×rational_best-simplify-53
370×rational_best-simplify-1
368×rational_best-simplify-111
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
066802
1231802
21121802
36590802
Stop Event
node limit
Counts
54 → 32
Calls
Call 1
Inputs
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(+.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)
(+.f64 0 (sqrt.f64 (*.f64 a (*.f64 c -3))))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(*.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))
(*.f64 (sqrt.f64 a) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 c -3)))))
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
(*.f64 (sqrt.f64 (*.f64 c -3)) (neg.f64 (neg.f64 (sqrt.f64 a))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))
(*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))
(*.f64 (sqrt.f64 (*.f64 a -3)) (neg.f64 (neg.f64 (sqrt.f64 c))))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 a c)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c -3))) (neg.f64 (sqrt.f64 a)))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))
(*.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 -3))
(*.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 a c))))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(/.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)
(pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(+.f64 (-.f64 c c) (*.f64 a (*.f64 c -3)))
(-.f64 0 (*.f64 c (*.f64 a 3)))
(-.f64 (-.f64 c c) (*.f64 c (*.f64 a 3)))
(/.f64 (*.f64 c (*.f64 a 3)) -1)
(neg.f64 (*.f64 c (*.f64 a 3)))
Outputs
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(*.f64 -3 (*.f64 c a))
(+.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 0 (sqrt.f64 (*.f64 a (*.f64 c -3))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 0)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 a) (sqrt.f64 (*.f64 c -3)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 a) (neg.f64 (neg.f64 (sqrt.f64 (*.f64 c -3)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 c -3)) (neg.f64 (neg.f64 (sqrt.f64 a))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 c) (sqrt.f64 (*.f64 a -3)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 a -3)) (neg.f64 (neg.f64 (sqrt.f64 c))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 -3) (sqrt.f64 (*.f64 a c)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 -1 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 a)) (neg.f64 (sqrt.f64 (*.f64 c -3))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 c -3))) (neg.f64 (sqrt.f64 a)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 c)) (neg.f64 (sqrt.f64 (*.f64 a -3))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (sqrt.f64 (*.f64 a c)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 -3)) (neg.f64 (sqrt.f64 (*.f64 a c))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(*.f64 (neg.f64 (sqrt.f64 (*.f64 a -3))) (neg.f64 (sqrt.f64 c)))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))) -1)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(pow.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) 1)
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 a (*.f64 c -3)))))
(sqrt.f64 (*.f64 -3 (*.f64 c a)))
(+.f64 (-.f64 c c) (*.f64 a (*.f64 c -3)))
(*.f64 -3 (*.f64 c a))
(-.f64 0 (*.f64 c (*.f64 a 3)))
(*.f64 -3 (*.f64 c a))
(-.f64 (-.f64 c c) (*.f64 c (*.f64 a 3)))
(*.f64 -3 (*.f64 c a))
(/.f64 (*.f64 c (*.f64 a 3)) -1)
(*.f64 -3 (*.f64 c a))
(neg.f64 (*.f64 c (*.f64 a 3)))
(*.f64 -3 (*.f64 c a))

localize54.0ms (0.6%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.2b
(-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)
12.1b
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
15.6b
(sqrt.f64 (*.f64 c (*.f64 a -3)))
23.5b
(sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))
Compiler

Compiled 153 to 88 computations (42.5% saved)

series1.0ms (0%)

Counts
1 → 14
Calls

9 calls:

TimeVariablePointExpression
0.0ms
a
@-inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
0.0ms
a
@inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
0.0ms
c
@-inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
0.0ms
c
@inf
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
0.0ms
b
@0
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)

rewrite50.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
1198×rational_best-simplify-113
562×rational_best-simplify-124
546×rational_best-simplify-111
504×rational_best-simplify-61
498×rational_best-simplify-3
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01335
15235
223835
3149235
Stop Event
node limit
Counts
1 → 1
Calls
Call 1
Inputs
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b))))))

simplify48.0ms (0.6%)

Algorithm
egg-herbie
Rules
624×rational_best-simplify-111
582×rational_best-simplify-124
522×rational_best-simplify-3
520×rational_best-simplify-61
512×rational_best-simplify-110
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
026373
170279
2295279
31699279
Stop Event
node limit
Counts
15 → 10
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(*.f64 -1 b)
(if (!=.f64 b 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b))
Outputs
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 (*.f64 c a) -3))
(sqrt.f64 (*.f64 c (*.f64 a -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 c a) -3)) (*.f64 -1 b))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(if (!=.f64 b 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b))
(/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b)

localize20.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.0b
(-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b)
0.1b
(sqrt.f64 (*.f64 c -3))
0.1b
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b) (*.f64 3 a))
0.1b
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
Compiler

Compiled 49 to 30 computations (38.8% saved)

series6.0ms (0.1%)

Counts
4 → 28
Calls

27 calls:

TimeVariablePointExpression
1.0ms
a
@-inf
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b) (*.f64 3 a))
1.0ms
a
@-inf
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
0.0ms
c
@inf
(sqrt.f64 (*.f64 c -3))
0.0ms
a
@-inf
(-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b)
0.0ms
c
@0
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))

rewrite71.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
1420×rational_best-simplify-113
630×rational_best-simplify-111
592×rational_best-simplify-3
544×rational_best-simplify-61
534×rational_best-simplify-96
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01586
15686
226086
3168486
Stop Event
node limit
Counts
4 → 36
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b) (*.f64 3 a))
(sqrt.f64 (*.f64 c -3))
(-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 c (*.f64 -3 a)))))))
()
((#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c) (sqrt.f64 -3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 -3) (sqrt.f64 c))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (neg.f64 b))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) b)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) -4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))) (#(struct:change #<rule egg-rr> (2) ((x if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))))

simplify70.0ms (0.8%)

Algorithm
egg-herbie
Rules
1016×rational_best-simplify-61
996×rational_best-simplify-65
736×rational_best-simplify-3
590×rational_best-simplify-62
540×rational_best-simplify-53
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01221614
15881462
237321462
Stop Event
node limit
Counts
64 → 50
Calls
Call 1
Inputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(*.f64 -1 b)
(*.f64 -1 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(*.f64 -1 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0)
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(sqrt.f64 (*.f64 c (*.f64 -3 a)))
(*.f64 (sqrt.f64 c) (sqrt.f64 -3))
(*.f64 (sqrt.f64 -3) (sqrt.f64 c))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (neg.f64 b))
(+.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a))))
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0))
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(/.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) b)) 2)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) -2)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1))
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) -4)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)))
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))))
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))))
(pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
Outputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/3 (/.f64 b a))
(*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3)))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1/3 (/.f64 b a))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (*.f64 (sqrt.f64 (/.f64 c a)) (sqrt.f64 -3))))
(+.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))))
(*.f64 -1 b)
(neg.f64 b)
(*.f64 -1 b)
(neg.f64 b)
(*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3))
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 b)
(neg.f64 b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (*.f64 -1 b) (*.f64 (sqrt.f64 (*.f64 c a)) (sqrt.f64 -3)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0)
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(-.f64 0 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(/.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(neg.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(sqrt.f64 (*.f64 c (*.f64 -3 a)))
(sqrt.f64 (*.f64 (*.f64 a c) -3))
(sqrt.f64 (*.f64 a (*.f64 c -3)))
(*.f64 (sqrt.f64 c) (sqrt.f64 -3))
(sqrt.f64 (*.f64 c -3))
(*.f64 (sqrt.f64 -3) (sqrt.f64 c))
(sqrt.f64 (*.f64 c -3))
(+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (neg.f64 b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 0 (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 (neg.f64 b) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(+.f64 0 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(*.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) -1)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) b)) 2)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) -2)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) -4)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (+.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (+.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))) (-.f64 1 (*.f64 1 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (-.f64 4 (*.f64 -2 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(/.f64 (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a))))))) (*.f64 (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))) (-.f64 (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1)) (*.f64 (+.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 1) (*.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 -1 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(pow.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 1)
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(neg.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 (neg.f64 b) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 -3 a)) (*.f64 c (*.f64 -3 a)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 b) 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (-.f64 b (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 (neg.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a)))) 0) (/.f64 (*.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b)) (sqrt.f64 (*.f64 c (*.f64 -3 a)))) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)
(if (!=.f64 0 0) (/.f64 (neg.f64 (*.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b) 0)) 0) (-.f64 (sqrt.f64 (*.f64 c (*.f64 -3 a))) b))
(+.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (neg.f64 b))
(-.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) b)

eval116.0ms (1.4%)

Compiler

Compiled 7965 to 5060 computations (36.5% saved)

prune51.0ms (0.6%)

Pruning

19 alts after pruning (7 fresh and 12 done)

PrunedKeptTotal
New2273230
Fresh044
Picked101
Done31215
Total23119250
Error
0.4b
Counts
250 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
55.5b
(/.f64 (if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 3 a))
52.3b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) b) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
50.5b
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
36.0b
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
47.5b
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
55.5b
(/.f64 (-.f64 b b) (*.f64 3 a))
52.8b
(/.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) (*.f64 3 a))
53.7b
(/.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c)) (*.f64 3 a))
46.2b
(/.f64 (*.f64 b -2) (*.f64 3 a))
42.9b
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
46.1b
(/.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (*.f64 3 a))
46.0b
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
52.7b
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
46.5b
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
46.3b
(*.f64 (/.f64 b a) -2/3)
52.5b
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
59.3b
(*.f64 -1/3 (/.f64 b a))
36.5b
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 331 to 236 computations (28.7% saved)

regimes453.0ms (5.4%)

Counts
30 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 3 (*.f64 c a)))) b) (*.f64 3 a))
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) b) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 3 a))
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (-.f64 (*.f64 (/.f64 (*.f64 c a) b) 3/2) b) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
(/.f64 (if (!=.f64 b 0) (/.f64 (*.f64 b (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) b) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
(/.f64 (*.f64 (sqrt.f64 (*.f64 a -3)) (sqrt.f64 c)) (*.f64 3 a))
(/.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) (*.f64 3 a))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 a)) (sqrt.f64 c)) b) (*.f64 3 a))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 -3 c)) (sqrt.f64 a)) b) (*.f64 3 a))
(/.f64 (-.f64 (*.f64 (sqrt.f64 (*.f64 c -3)) (sqrt.f64 a)) b) (*.f64 3 a))
(/.f64 (if (!=.f64 (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 (*.f64 c a) (*.f64 -3 (*.f64 c a))))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b)) (*.f64 3 a))
(/.f64 (if (!=.f64 (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (*.f64 c (*.f64 a -3)) (*.f64 c (*.f64 a -3)))) (*.f64 b b)) (+.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b)) (*.f64 3 a))
(/.f64 (if (!=.f64 (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) 0) (/.f64 (-.f64 (sqrt.f64 (*.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))) (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3))))) (*.f64 b b)) (+.f64 b (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))))) (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b)) (*.f64 3 a))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

5 calls:

152.0ms
c
111.0ms
(*.f64 3 a)
99.0ms
a
44.0ms
b
35.0ms
(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
Results
ErrorSegmentsBranch
24.6b7a
9.6b3b
25.6b11c
12.4b5(/.f64 (+.f64 (neg.f64 b) (sqrt.f64 (-.f64 (*.f64 b b) (*.f64 (*.f64 3 a) c)))) (*.f64 3 a))
24.6b7(*.f64 3 a)
Compiler

Compiled 587 to 352 computations (40% saved)

bsearch55.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
28.0ms
2.1443307245978352e-137
3.0488229713242695e-134
27.0ms
-3.945996435372238e+129
-3.267210201465106e+126
Results
34.0ms232×body256valid
6.0ms49×body256invalid
5.0ms41×body256infinite
4.0ms12×body1024valid
2.0ms10×body512valid
1.0msbody2048valid
Compiler

Compiled 506 to 371 computations (26.7% saved)

regimes158.0ms (1.9%)

Counts
15 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
(+.f64 (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/3 (/.f64 b a)))
(-.f64 (*.f64 -1/3 (/.f64 b a)) (*.f64 (sqrt.f64 (*.f64 (/.f64 c a) -3)) -1/3))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

48.0ms
c
41.0ms
a
40.0ms
(*.f64 3 a)
26.0ms
b
Results
ErrorSegmentsBranch
31.3b5a
13.1b3b
32.5b6c
31.3b5(*.f64 3 a)
Compiler

Compiled 162 to 104 computations (35.8% saved)

bsearch59.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
2.1443307245978352e-137
3.0488229713242695e-134
29.0ms
-1.0729655492700542e-154
-1.301498929657502e-171
Results
34.0ms265×body256valid
14.0ms96×body256invalid
3.0ms11×body1024valid
2.0msbody512valid
1.0msbody2048valid
Compiler

Compiled 496 to 381 computations (23.2% saved)

regimes138.0ms (1.7%)

Counts
12 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

40.0ms
c
38.0ms
a
34.0ms
(*.f64 3 a)
23.0ms
b
Results
ErrorSegmentsBranch
31.3b5a
13.1b3b
32.6b6c
31.3b5(*.f64 3 a)
Compiler

Compiled 122 to 80 computations (34.4% saved)

bsearch56.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
27.0ms
2.1443307245978352e-137
3.0488229713242695e-134
29.0ms
-1.0729655492700542e-154
-1.301498929657502e-171
Results
33.0ms261×body256valid
13.0ms107×body256invalid
4.0ms12×body1024valid
3.0ms13×body512valid
1.0msbody2048valid
Compiler

Compiled 496 to 381 computations (23.2% saved)

regimes114.0ms (1.4%)

Counts
11 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 (*.f64 a c) -3)) (*.f64 3 a))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

33.0ms
c
31.0ms
a
28.0ms
(*.f64 3 a)
18.0ms
b
Results
ErrorSegmentsBranch
31.6b5a
13.1b3b
32.6b6c
31.6b5(*.f64 3 a)
Compiler

Compiled 110 to 73 computations (33.6% saved)

bsearch58.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
25.0ms
2.1443307245978352e-137
3.0488229713242695e-134
32.0ms
-1.0729655492700542e-154
-1.301498929657502e-171
Results
36.0ms261×body256valid
11.0ms89×body256invalid
3.0ms16×body512valid
3.0ms11×body1024valid
Compiler

Compiled 460 to 363 computations (21.1% saved)

regimes99.0ms (1.2%)

Counts
9 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

30.0ms
c
26.0ms
(*.f64 3 a)
25.0ms
a
16.0ms
b
Results
ErrorSegmentsBranch
31.6b5a
13.2b3b
32.6b6c
31.6b5(*.f64 3 a)
Compiler

Compiled 90 to 59 computations (34.4% saved)

bsearch58.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
29.0ms
2.1443307245978352e-137
3.0488229713242695e-134
29.0ms
-1.0729655492700542e-154
-1.301498929657502e-171
Results
34.0ms263×body256valid
13.0ms118×body256invalid
4.0ms15×body1024valid
2.0msbody512valid
0.0msbody2048valid
Compiler

Compiled 460 to 363 computations (21.1% saved)

regimes74.0ms (0.9%)

Counts
8 → 3
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3)))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

19.0ms
(*.f64 3 a)
19.0ms
a
18.0ms
c
16.0ms
b
Results
ErrorSegmentsBranch
32.9b4a
16.9b3b
33.7b4c
32.9b4(*.f64 3 a)
Compiler

Compiled 80 to 52 computations (35% saved)

bsearch57.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
26.0ms
8.536538634839789e-173
1.1833410796801047e-168
31.0ms
-1.0729655492700542e-154
-1.301498929657502e-171
Results
34.0ms275×body256valid
15.0ms117×body256invalid
3.0ms11×body1024valid
0.0msbody512valid
Compiler

Compiled 424 to 345 computations (18.6% saved)

regimes52.0ms (0.6%)

Counts
7 → 2
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
(/.f64 (*.f64 b -2) (*.f64 3 a))
(/.f64 (-.f64 b b) (*.f64 3 a))
(+.f64 (*.f64 (/.f64 b a) -2/3) (*.f64 1/2 (/.f64 c b)))
(/.f64 (*.f64 -3/2 (/.f64 (*.f64 c a) b)) (*.f64 3 a))
Outputs
(/.f64 (*.f64 b -2) (*.f64 3 a))
(*.f64 -1/2 (/.f64 c b))
Calls

4 calls:

14.0ms
(*.f64 3 a)
13.0ms
c
13.0ms
a
10.0ms
b
Results
ErrorSegmentsBranch
35.2b3a
20.3b2b
35.3b3c
35.2b3(*.f64 3 a)
Compiler

Compiled 72 to 46 computations (36.1% saved)

bsearch20.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
19.0ms
2.251481841825324e-301
9.943647860266229e-301
Results
12.0ms96×body256valid
7.0ms52×body256invalid
Compiler

Compiled 146 to 115 computations (21.2% saved)

regimes27.0ms (0.3%)

Counts
3 → 2
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
(*.f64 (/.f64 b a) -2/3)
Outputs
(*.f64 (/.f64 b a) -2/3)
(*.f64 -1/2 (/.f64 c b))
Calls

3 calls:

9.0ms
a
9.0ms
c
7.0ms
b
Results
ErrorSegmentsBranch
35.3b3a
20.4b2b
35.3b3c
Compiler

Compiled 30 to 20 computations (33.3% saved)

bsearch20.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
2.251481841825324e-301
9.943647860266229e-301
Results
12.0ms96×body256valid
7.0ms57×body256invalid
Compiler

Compiled 134 to 103 computations (23.1% saved)

regimes13.0ms (0.2%)

Accuracy

Total -29.1b remaining (-87%)

Threshold costs -29.1b (-87%)

Counts
2 → 2
Calls
Call 1
Inputs
(*.f64 -1/2 (/.f64 c b))
(*.f64 -1/3 (/.f64 b a))
Outputs
(*.f64 -1/3 (/.f64 b a))
(*.f64 -1/2 (/.f64 c b))
Calls

3 calls:

6.0ms
b
3.0ms
c
3.0ms
a
Results
ErrorSegmentsBranch
36.5b1a
33.4b2b
36.5b1c
Compiler

Compiled 25 to 18 computations (28% saved)

bsearch20.0ms (0.2%)

Algorithm
binary-search
Steps
TimeLeftRight
20.0ms
2.251481841825324e-301
9.943647860266229e-301
Results
11.0ms96×body256valid
7.0ms51×body256invalid
Compiler

Compiled 134 to 103 computations (23.1% saved)

simplify10.0ms (0.1%)

Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
089622
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 b -5500000000000000413459678040850147451092859853938245174156000062967712588833283625654976056037669194855462752713688894796726272) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3068803694902633/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -6340256873700189/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3068803694902633/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -6340256873700189/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 2004951747336387/409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -531373909414873/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 5237424972633827/6546781215792283740026379393655198304433284092086129578966582736192267592809349109766540184651808314301773368255120142018434513091770786106657055178752) (/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -272063441620415/61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174784) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 2148162586431843/204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336) (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -2904660898216695/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 4249103942534137/4249103942534136789516705652419749018636744941816255385595553105603228478886817941913300018121834285351114635889972008122772634701221657915276159830132698815550650166683145752253825024) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b 3136669746631429/6032057205060440848842124543157735677050252251748505781796615064961622344493727293370973578138265743708225425014400837164813540499979063179105919597766951022193355091707896034850684039059079180396788349106095584290087446076413771468940477241550670753145517602931224392424029547429993824129889235158145614364972941312) (/.f64 (*.f64 b -2) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b)))
(if (<=.f64 b 588125577493393/754007150632555106105265567894716959631281531468563222724576883120202793061715911671371697267283217963528178126800104645601692562497382897388239949720868877774169386463487004356335504882384897549598543638261948036260930759551721433617559655193833844143189700366403049053003693428749228016236154394768201795621617664) (*.f64 (/.f64 b a) -2/3) (*.f64 -1/2 (/.f64 c b)))
(if (<=.f64 b 11545734494061/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (*.f64 -1/3 (/.f64 b a)) (*.f64 -1/2 (/.f64 c b)))
(*.f64 -1/2 (/.f64 c b))
Outputs
(if (<=.f64 b -5500000000000000413459678040850147451092859853938245174156000062967712588833283625654976056037669194855462752713688894796726272) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3068803694902633/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (/.f64 (-.f64 (sqrt.f64 (+.f64 (*.f64 b b) (*.f64 c (*.f64 a -3)))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -6340256873700189/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 3068803694902633/102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168) (/.f64 (-.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -6340256873700189/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 2004951747336387/409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672) (/.f64 (-.f64 (sqrt.f64 (*.f64 -3 (*.f64 c a))) b) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -531373909414873/60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 5237424972633827/6546781215792283740026379393655198304433284092086129578966582736192267592809349109766540184651808314301773368255120142018434513091770786106657055178752) (/.f64 (sqrt.f64 (*.f64 c (*.f64 a -3))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -272063441620415/61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174784) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 2148162586431843/204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336) (/.f64 (sqrt.f64 (*.f64 a (*.f64 c -3))) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b -2904660898216695/1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344) (/.f64 (*.f64 b -2) (*.f64 3 a)) (if (<=.f64 b 4249103942534137/4249103942534136789516705652419749018636744941816255385595553105603228478886817941913300018121834285351114635889972008122772634701221657915276159830132698815550650166683145752253825024) (*.f64 1/3 (sqrt.f64 (*.f64 (/.f64 c a) -3))) (*.f64 -1/2 (/.f64 c b))))
(if (<=.f64 b 3136669746631429/6032057205060440848842124543157735677050252251748505781796615064961622344493727293370973578138265743708225425014400837164813540499979063179105919597766951022193355091707896034850684039059079180396788349106095584290087446076413771468940477241550670753145517602931224392424029547429993824129889235158145614364972941312) (/.f64 (*.f64 b -2) (*.f64 3 a)) (*.f64 -1/2 (/.f64 c b)))
(if (<=.f64 b 588125577493393/754007150632555106105265567894716959631281531468563222724576883120202793061715911671371697267283217963528178126800104645601692562497382897388239949720868877774169386463487004356335504882384897549598543638261948036260930759551721433617559655193833844143189700366403049053003693428749228016236154394768201795621617664) (*.f64 (/.f64 b a) -2/3) (*.f64 -1/2 (/.f64 c b)))
(if (<=.f64 b 11545734494061/11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776) (*.f64 -1/3 (/.f64 b a)) (*.f64 -1/2 (/.f64 c b)))
(*.f64 -1/2 (/.f64 c b))
Compiler

Compiled 267 to 192 computations (28.1% saved)

soundness207.0ms (2.5%)

Algorithm
egg-herbie
Rules
718×rational_best-simplify-111
718×rational_best-simplify-111
718×rational_best-simplify-111
710×rational_best-simplify-96
710×rational_best-simplify-96
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01551
15847
231547
3203347
03337321
115007285
01551
15847
231547
3203347
01551
15847
231547
3203347
Stop Event
node limit
node limit
node limit
node limit
Compiler

Compiled 380 to 229 computations (39.7% saved)

end98.0ms (1.2%)

Compiler

Compiled 240 to 155 computations (35.4% saved)

Profiling

Loading profile data...