Details

Time bar (total: 19.2s)

analyze943.0ms (4.9%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
3.1%3.1%96.7%0.2%0%0%0%8
6.3%6.2%92%0.2%0%1.6%0%9
8.3%8.2%90.1%0.2%0%1.6%0%10
13.6%13.3%84.2%0.2%0%2.3%0%11
17.8%16.2%74.7%0.2%0%9%0%12
Compiler

Compiled 13 to 9 computations (30.8% saved)

sample3.2s (16.5%)

Results
1.8s8256×body256valid
1.2s7409×body256invalid
138.0ms886×body256infinite
Bogosity

preprocess18.0ms (0.1%)

Algorithm
egg-herbie
Rules
12×*-commutative_binary64
12×associate-/r*_binary64
swap-V-l
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03284
15684
26484
044
144
Stop Event
unsound
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
2
Call 2
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 A (sqrt.f64 (/.f64 c0 (*.f64 V l))))
(*.f64 V (sqrt.f64 (/.f64 A (*.f64 c0 l))))
(*.f64 l (sqrt.f64 (/.f64 A (*.f64 V c0))))
(*.f64 c0 (sqrt.f64 (/.f64 V (*.f64 A l))))
(*.f64 c0 (sqrt.f64 (/.f64 l (*.f64 V A))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 l V))))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 A (sqrt.f64 (/.f64 c0 (*.f64 V l))))
(*.f64 V (sqrt.f64 (/.f64 A (*.f64 c0 l))))
(*.f64 l (sqrt.f64 (/.f64 A (*.f64 V c0))))
(*.f64 l (sqrt.f64 (/.f64 A (*.f64 c0 V))))
(*.f64 c0 (sqrt.f64 (/.f64 V (*.f64 A l))))
(*.f64 c0 (sqrt.f64 (/.f64 l (*.f64 V A))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 l V) A)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 l V))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Symmetry

(sort V l)

Compiler

Compiled 16 to 12 computations (25% saved)

simplify8.0ms (0%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0912
11312
21512
Stop Event
saturated
Counts
1 → 1
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))

eval0.0ms (0%)

Compiler

Compiled 12 to 8 computations (33.3% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New011
Fresh011
Picked000
Done000
Total022
Error
17.1b
Counts
2 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
17.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 12 to 8 computations (33.3% saved)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
5.8b
(/.f64 A (*.f64 V l))
14.3b
(sqrt.f64 (/.f64 A (*.f64 V l)))
Compiler

Compiled 30 to 8 computations (73.3% saved)

series29.0ms (0.2%)

Counts
3 → 12
Calls

30 calls:

TimeVariablePointExpression
2.0ms
c0
@inf
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
2.0ms
l
@0
(sqrt.f64 (/.f64 A (*.f64 V l)))
2.0ms
A
@0
(sqrt.f64 (/.f64 A (*.f64 V l)))
1.0ms
V
@-inf
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
1.0ms
c0
@0
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))

rewrite82.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
989×pow1_binary64
914×add-log-exp_binary64
914×log1p-expm1-u_binary64
914×expm1-log1p-u_binary64
94×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
118528
2245628
Stop Event
node limit
Counts
3 → 90
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 A (*.f64 V l)))
(/.f64 A (*.f64 V l))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) (cbrt.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 A) (pow.f64 (/.f64 1 (*.f64 V l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 A) (/.f64 1 (sqrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) (pow.f64 (/.f64 (/.f64 A V) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2) 1/2) (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A V) l) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 A (/.f64 1 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 A V) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 A) 2) (*.f64 (cbrt.f64 A) (/.f64 1 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) (*.f64 (cbrt.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 A) (*.f64 (sqrt.f64 A) (/.f64 1 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) (*.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 A) (/.f64 1 (*.f64 l (neg.f64 V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (*.f64 V l)) A)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A V) (/.f64 1 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (pow.f64 (/.f64 (/.f64 A V) l) 1/4)) (pow.f64 (/.f64 (/.f64 A V) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 V) (/.f64 A l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) V) (/.f64 (cbrt.f64 A) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) V) (/.f64 (sqrt.f64 A) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 l) (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) l) (/.f64 (cbrt.f64 A) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) 1) (/.f64 (cbrt.f64 A) (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) 1) (/.f64 (sqrt.f64 A) (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 (cbrt.f64 (*.f64 V l)) 2)) (/.f64 A (cbrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) (pow.f64 (cbrt.f64 (*.f64 V l)) 2)) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) (pow.f64 (cbrt.f64 (*.f64 V l)) 2)) (/.f64 (sqrt.f64 A) (cbrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (sqrt.f64 (*.f64 V l))) (/.f64 A (sqrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) (sqrt.f64 (*.f64 V l))) (/.f64 (cbrt.f64 A) (sqrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (cbrt.f64 (/.f64 (/.f64 A V) l))) (cbrt.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A V) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 l (/.f64 A V)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 A (*.f64 l (neg.f64 V))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 A 3) (pow.f64 (*.f64 V l) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (/.f64 A V) l)))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2) (pow.f64 c0 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 c0 3) (pow.f64 (/.f64 (/.f64 A V) l) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))))

simplify20.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09144
113144
215144
Stop Event
saturated
Counts
102 → 91
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

eval37.0ms (0.2%)

Compiler

Compiled 1148 to 426 computations (62.9% saved)

prune39.0ms (0.2%)

Pruning

19 alts after pruning (18 fresh and 1 done)

PrunedKeptTotal
New731891
Fresh000
Picked011
Done000
Total731992
Error
2.2b
Counts
92 → 19
Alt Table
Click to see full alt table
StatusErrorProgram
36.2b
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)
37.6b
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
17.8b
(*.f64 c0 (pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) 2))
17.6b
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
25.8b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
39.2b
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
35.8b
(*.f64 c0 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))
17.2b
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
17.9b
(*.f64 c0 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)))))
36.0b
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
17.7b
(*.f64 c0 (sqrt.f64 (pow.f64 (/.f64 l (/.f64 A V)) -1)))
17.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
38.3b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))
17.6b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
17.6b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
17.5b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
47.1b
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
56.6b
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
41.5b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
Compiler

Compiled 544 to 378 computations (30.5% saved)

localize59.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V))))
0.7b
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
5.9b
(/.f64 l (/.f64 A V))
13.6b
(sqrt.f64 (/.f64 l (/.f64 A V)))
Compiler

Compiled 41 to 13 computations (68.3% saved)

series47.0ms (0.2%)

Counts
4 → 48
Calls

39 calls:

TimeVariablePointExpression
22.0ms
A
@-inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
2.0ms
V
@-inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
1.0ms
l
@0
(sqrt.f64 (/.f64 l (/.f64 A V)))
1.0ms
l
@-inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
1.0ms
A
@-inf
(sqrt.f64 (/.f64 l (/.f64 A V)))

rewrite90.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
619×log-prod_binary64
364×pow-prod-down_binary64
289×pow2_binary64
226×pow-unpow_binary64
205×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01140
123337
2314937
Stop Event
node limit
Counts
4 → 179
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 l (/.f64 A V)))
(/.f64 l (/.f64 A V))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) (pow.f64 (*.f64 V (/.f64 l A)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/6) (cbrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) (pow.f64 (*.f64 V (/.f64 l A)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 l A)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) (pow.f64 (*.f64 V (/.f64 l A)) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) (pow.f64 (*.f64 V (/.f64 l A)) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 l)) (sqrt.f64 (/.f64 (neg.f64 A) V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 l)) (neg.f64 (sqrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V (/.f64 l A)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -3/2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/6) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/4) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V (/.f64 l A))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (*.f64 V (/.f64 l A)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4)) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 V (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 l A)) V)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 l A)) V))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 l A)) V))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 l A)) V))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 V (/.f64 l A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (/.f64 V A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 V (/.f64 l A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 V (/.f64 l A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 V (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) 2) (*.f64 (cbrt.f64 l) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) (pow.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) 2) (cbrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (*.f64 (sqrt.f64 l) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) (pow.f64 (*.f64 V (/.f64 l A)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 l) (/.f64 1 (/.f64 (neg.f64 A) V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 V A) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l A) V)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 V A)) (/.f64 l (sqrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) A) (/.f64 (cbrt.f64 l) (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) A) (/.f64 (sqrt.f64 l) (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) 1) (/.f64 (cbrt.f64 l) (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) 1) (/.f64 (sqrt.f64 l) (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) -2) (/.f64 l (cbrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (pow.f64 (cbrt.f64 (/.f64 A V)) 2)) (cbrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 l) (pow.f64 (cbrt.f64 (/.f64 A V)) 2)) (/.f64 (sqrt.f64 l) (cbrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 l) 2) (sqrt.f64 (/.f64 A V))) (/.f64 (cbrt.f64 l) (sqrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l 1) (/.f64 V A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (neg.f64 A)) (neg.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3/4) (pow.f64 (*.f64 V (/.f64 l A)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) 5/6) (pow.f64 (*.f64 V (/.f64 l A)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 l A) 1) V)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 l A) (pow.f64 (cbrt.f64 V) 2)) (cbrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 l A) (sqrt.f64 V)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V (/.f64 l A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 l 3) (pow.f64 (/.f64 A V) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A (*.f64 l V)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 l (/.f64 (neg.f64 A) V)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 V (/.f64 l A)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 l A)) V))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 l 3) (pow.f64 (/.f64 A V) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V (/.f64 l A))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 V (/.f64 l A)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 V (/.f64 l A)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) -1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 c0) 2) (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) (cbrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 c0) (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) (sqrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 c0) (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) 1/4)) (pow.f64 (*.f64 V (/.f64 l A)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 1) (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 (cbrt.f64 (*.f64 V (/.f64 l A)))) (pow.f64 (*.f64 V (/.f64 l A)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 c0) (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 -1) (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 c0 c0) (*.f64 V (/.f64 l A))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (*.f64 V (/.f64 l A)) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (*.f64 V (/.f64 l A)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/6) (cbrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) (pow.f64 (*.f64 V (/.f64 l A)) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/4) (pow.f64 (*.f64 V (/.f64 l A)) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (*.f64 V (/.f64 l A)))) (pow.f64 (*.f64 V (/.f64 l A)) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V (/.f64 l A)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 2) -1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3) -1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 3/2) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 V (/.f64 l A))) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/6) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V (/.f64 l A)) 1/4) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 V (/.f64 l A))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 A (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V (/.f64 l A)) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 V (/.f64 l A)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V (/.f64 l A))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) -3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V (/.f64 l A)) -1/4)) 2))))))

simplify19.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010396
116396
220396
323396
424396
Stop Event
saturated
Counts
227 → 182
Calls
Call 1
Inputs
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)

localize19.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
6.0b
(/.f64 (/.f64 A V) l)
14.3b
(pow.f64 (/.f64 (/.f64 A V) l) 1/2)
Compiler

Compiled 33 to 12 computations (63.6% saved)

series18.0ms (0.1%)

Counts
3 → 48
Calls

30 calls:

TimeVariablePointExpression
3.0ms
V
@-inf
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
1.0ms
c0
@0
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
1.0ms
A
@-inf
(pow.f64 (/.f64 (/.f64 A V) l) 1/2)
1.0ms
l
@-inf
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
1.0ms
V
@-inf
(pow.f64 (/.f64 (/.f64 A V) l) 1/2)

rewrite84.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
561×log-prod_binary64
418×exp-prod_binary64
359×pow-prod-down_binary64
280×pow2_binary64
196×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01028
121728
2284428
Stop Event
node limit
Counts
3 → 118
Calls
Call 1
Inputs
(pow.f64 (/.f64 (/.f64 A V) l) 1/2)
(/.f64 (/.f64 A V) l)
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/6) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) (pow.f64 (/.f64 (/.f64 A V) l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A V)) (pow.f64 l -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) (pow.f64 (/.f64 (/.f64 A V) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 (/.f64 A V) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (/.f64 A V) l)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (/.f64 A V) l)) 1/4) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (/.f64 A V) l))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (/.f64 A V) l)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 A (/.f64 1 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A V) (/.f64 1 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 A V) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) 2) (*.f64 (cbrt.f64 (/.f64 A V)) (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A V)) (*.f64 (sqrt.f64 (/.f64 A V)) (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 A) V) (/.f64 1 (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 l) (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) (pow.f64 (/.f64 (/.f64 A V) l) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/4) (pow.f64 (/.f64 (/.f64 A V) l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l -1/2) (/.f64 (/.f64 A V) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 A A)) l) (/.f64 (cbrt.f64 A) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A 1) (/.f64 (/.f64 1 V) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) 2) 1) (/.f64 (cbrt.f64 (/.f64 A V)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 A V)) 1) (/.f64 (sqrt.f64 (/.f64 A V)) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A (cbrt.f64 (*.f64 l l))) (/.f64 (/.f64 1 V) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 l) -2) (/.f64 (/.f64 A V) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) 2) (cbrt.f64 (*.f64 l l))) (cbrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (cbrt.f64 (*.f64 l l))) (/.f64 (sqrt.f64 (/.f64 A V)) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A (sqrt.f64 l)) (/.f64 (/.f64 1 V) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) 2) (sqrt.f64 l)) (/.f64 (cbrt.f64 (/.f64 A V)) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (/.f64 A V) l) 5/6) (pow.f64 (/.f64 (/.f64 A V) l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A V) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 A V) 3) (pow.f64 l 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 V A) l) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V l) A) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 l (/.f64 V A)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 (/.f64 A V) l))) 2)) (cbrt.f64 (log.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 (/.f64 A V) l)))) (sqrt.f64 (log.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 A V) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 A V) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 A V) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 A V) l) 2)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (/.f64 A V) l) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (/.f64 A V) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (/.f64 V A))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (/.f64 A V) l)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) 1) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) c0)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) c0))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 (/.f64 A V) l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 1) 1))))))

simplify14.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09396
113396
215396
Stop Event
saturated
Counts
166 → 120
Calls
Call 1
Inputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize35.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
6.1b
(*.f64 (/.f64 A V) (/.f64 1 l))
14.3b
(sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l)))
Compiler

Compiled 40 to 20 computations (50% saved)

series11.0ms (0.1%)

Counts
3 → 48
Calls

30 calls:

TimeVariablePointExpression
1.0ms
V
@-inf
(sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l)))
0.0ms
A
@0
(sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l)))
0.0ms
A
@-inf
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
0.0ms
V
@-inf
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
0.0ms
A
@-inf
(sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l)))

rewrite182.0ms (0.9%)

Algorithm
batch-egg-rewrite
Rules
595×log-prod_binary64
421×pow-prod-down_binary64
286×pow2_binary64
236×pow-unpow_binary64
204×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01128
123028
2305328
Stop Event
node limit
Counts
3 → 127
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l)))
(*.f64 (/.f64 A V) (/.f64 1 l))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) (pow.f64 (/.f64 A (*.f64 V l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) (cbrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) (pow.f64 (/.f64 A (*.f64 V l)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A V)) (pow.f64 l -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 A (*.f64 V l)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 A (*.f64 V l)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 A (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 A (*.f64 V l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 A (*.f64 V l))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 A (*.f64 V l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 A (*.f64 V l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 A (/.f64 l (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 A (/.f64 (*.f64 V l) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 A (/.f64 V (/.f64 1 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 A V) l)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 V A) l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 l (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 l (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 V l) A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 V (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 l) (/.f64 V A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (/.f64 A V)) 2) (/.f64 l (cbrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A V)) (/.f64 l (sqrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 V A) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 l) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 A) (neg.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 A) (*.f64 (neg.f64 l) V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 A) (*.f64 l (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 A l) V)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 A V)) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 A l)) (neg.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 A) 1) (*.f64 (neg.f64 V) l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 A -1) (*.f64 V (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 A) -1) (*.f64 (neg.f64 V) (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 A)) (*.f64 (neg.f64 l) (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A V) (sqrt.f64 l)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A V) 1) l)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A V) (pow.f64 (cbrt.f64 l) 2)) (cbrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A l) 1) V)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A l) (pow.f64 (cbrt.f64 V) 2)) (cbrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 A l) (sqrt.f64 V)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 A) (/.f64 1 l)) (neg.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (/.f64 A V)) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 A V) -1) (neg.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 l) (neg.f64 A)) (neg.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 A V) 3) (pow.f64 l 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 V A) l) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 l (/.f64 A V)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V l) A) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 V (/.f64 A l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 A V) 3) (pow.f64 l 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 A (*.f64 V l)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 A (*.f64 V l)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 A (*.f64 V l)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1) 1))))))

simplify25.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09396
113396
215396
Stop Event
saturated
Counts
175 → 128
Calls
Call 1
Inputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize18.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
0.2b
(*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l))))
0.2b
(/.f64 1 (*.f64 V l))
10.3b
(sqrt.f64 (/.f64 1 (*.f64 V l)))
Compiler

Compiled 45 to 21 computations (53.3% saved)

series17.0ms (0.1%)

Counts
4 → 12
Calls

33 calls:

TimeVariablePointExpression
1.0ms
V
@0
(sqrt.f64 (/.f64 1 (*.f64 V l)))
1.0ms
l
@0
(sqrt.f64 (/.f64 1 (*.f64 V l)))
1.0ms
V
@-inf
(sqrt.f64 (/.f64 1 (*.f64 V l)))
1.0ms
l
@-inf
(sqrt.f64 (/.f64 1 (*.f64 V l)))
1.0ms
V
@inf
(sqrt.f64 (/.f64 1 (*.f64 V l)))

rewrite220.0ms (1.1%)

Algorithm
batch-egg-rewrite
Rules
588×log-prod_binary64
451×pow-prod-down_binary64
427×exp-prod_binary64
290×pow2_binary64
231×pow-unpow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01243
124135
2289635
Stop Event
node limit
Counts
4 → 154
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 1 (*.f64 V l)))
(/.f64 1 (*.f64 V l))
(*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l))))
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 V l) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 V -1) l)) (pow.f64 (*.f64 V l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/6) (cbrt.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/4) (pow.f64 (*.f64 V l) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (neg.f64 (sqrt.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 -1) (sqrt.f64 (*.f64 V (neg.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (pow.f64 V -1)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V l) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 V -1) l) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) 3) -1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 V l)) -3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 V -1) l)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (neg.f64 (log.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 V l)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2))) 2)) (cbrt.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)))) (sqrt.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 V l) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V l) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V l)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 V l))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) -1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (pow.f64 V -1) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 V -1) l))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (pow.f64 V -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 V -1) l)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (pow.f64 V -1) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (pow.f64 V -1) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (pow.f64 V -1) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 V -1) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/2) (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (pow.f64 V -1) l)) (cbrt.f64 (pow.f64 (*.f64 V l) -2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 V l) -2)) (cbrt.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/4) (sqrt.f64 (pow.f64 (*.f64 V l) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (*.f64 V (neg.f64 l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1) (/.f64 1 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (*.f64 V l) -3/2)) (pow.f64 (*.f64 V l) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 l) (pow.f64 V -1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) -2) (cbrt.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (pow.f64 V -1) l) 5/6) (pow.f64 (*.f64 V l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V l) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 V -1) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (neg.f64 (log.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) 2) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 V l)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (pow.f64 V -1) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V l)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 V l) -1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 -1) (log.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (*.f64 V (neg.f64 l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (neg.f64 (log.f64 (*.f64 V l)))) 2)) (cbrt.f64 (neg.f64 (log.f64 (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (neg.f64 (log.f64 (*.f64 V l))))) (sqrt.f64 (neg.f64 (log.f64 (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 V l) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (pow.f64 V -1) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V l) -3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (pow.f64 V -1) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (neg.f64 (log.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V l)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -2 (log.f64 (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (neg.f64 (log.f64 (cbrt.f64 (*.f64 V l)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) 1) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) -1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (*.f64 V l))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/2)) 1) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 A (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sqrt.f64 A) c0) 1) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (E.f64) (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 c0 c0) (/.f64 A (*.f64 V l))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 c0 c0) (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1) 1))))))

simplify20.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09144
113144
215144
Stop Event
saturated
Counts
166 → 155
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
6.0b
(/.f64 (/.f64 A V) l)
14.3b
(sqrt.f64 (/.f64 (/.f64 A V) l))
33.5b
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
Compiler

Compiled 52 to 14 computations (73.1% saved)

series79.0ms (0.4%)

Counts
3 → 24
Calls

33 calls:

TimeVariablePointExpression
52.0ms
c0
@-inf
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
1.0ms
A
@0
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
1.0ms
l
@-inf
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
1.0ms
l
@inf
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
1.0ms
V
@-inf
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))

rewrite100.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
621×log-prod_binary64
427×pow-prod-down_binary64
301×pow2_binary64
247×pow-unpow_binary64
213×pow-to-exp_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01233
126233
2323933
Stop Event
node limit
Counts
3 → 107
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
(sqrt.f64 (/.f64 (/.f64 A V) l))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 c0) 2) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))) (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c0) (pow.f64 (*.f64 c0 (/.f64 A (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) (*.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (pow.f64 (cbrt.f64 c0) 2)) (cbrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (cbrt.f64 (/.f64 A (*.f64 V l)))) (pow.f64 (/.f64 A (*.f64 V l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) (pow.f64 (/.f64 A (*.f64 V l)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 9) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))) 3/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) (pow.f64 (/.f64 A (*.f64 V l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) (cbrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) (pow.f64 (/.f64 A (*.f64 V l)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A V)) (pow.f64 l -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (/.f64 A V))) (neg.f64 (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 A V))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 A (*.f64 V l)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 A (*.f64 V l)))) 1/3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 9) 1/9)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))) 3/2))))))

simplify80.0ms (0.4%)

Algorithm
egg-herbie
Rules
244×fma-def_binary64
21×associate-*l*_binary64
21×sub-neg_binary64
20×distribute-rgt-in_binary64
18×distribute-lft-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
014316
126316
258316
3105316
4120316
5168316
6240316
7277316
8319316
9488316
10516316
Stop Event
saturated
Counts
131 → 84
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (*.f64 c0 (cbrt.f64 -1))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (cbrt.f64 -1)) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) (neg.f64 c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (*.f64 c0 (cbrt.f64 -1))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (cbrt.f64 -1)) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) (neg.f64 c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (*.f64 c0 (cbrt.f64 -1))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (cbrt.f64 -1)) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) (neg.f64 c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) c0)))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (*.f64 c0 (cbrt.f64 -1))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (cbrt.f64 -1)) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (cbrt.f64 -1) (neg.f64 c0)))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)

eval427.0ms (2.2%)

Compiler

Compiled 9956 to 4036 computations (59.5% saved)

prune310.0ms (1.6%)

Pruning

26 alts after pruning (24 fresh and 2 done)

PrunedKeptTotal
New71321734
Fresh10313
Picked101
Done325
Total72726753
Error
1.0b
Counts
753 → 26
Alt Table
Click to see full alt table
StatusErrorProgram
36.9b
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 2)
27.9b
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
37.6b
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
17.9b
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
18.4b
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
41.2b
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
17.6b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
17.8b
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
17.4b
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2))
50.2b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))))
49.9b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
25.8b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
39.2b
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
17.1b
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
35.8b
(*.f64 c0 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))
17.2b
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
16.9b
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
25.8b
(*.f64 c0 (*.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V))))
35.8b
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
47.4b
(*.f64 c0 (*.f64 (sqrt.f64 A) (/.f64 (sqrt.f64 (pow.f64 V -1)) (sqrt.f64 l))))
17.5b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
18.2b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
17.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
47.4b
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
56.6b
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
56.6b
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))) c0) 3))
Compiler

Compiled 710 to 506 computations (28.7% saved)

localize30.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V)))))
0.7b
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
5.9b
(*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V)))
13.6b
(sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))
Compiler

Compiled 65 to 44 computations (32.3% saved)

series16.0ms (0.1%)

Counts
4 → 48
Calls

39 calls:

TimeVariablePointExpression
1.0ms
A
@0
(sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))
1.0ms
A
@inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
1.0ms
V
@-inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
0.0ms
A
@-inf
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
0.0ms
A
@-inf
(sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))

rewrite80.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
722×log-prod_binary64
341×pow2_binary64
283×pow-unpow_binary64
243×pow1/3_binary64
234×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01352
128038
2379738
Stop Event
node limit
Counts
4 → 162
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))
(*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V)))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) (cbrt.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))) (cbrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 l V)) (pow.f64 A -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (/.f64 V A)) 1/4) (pow.f64 (*.f64 l (/.f64 V A)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 A -1/2) (sqrt.f64 (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) (cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 l V)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 l) (sqrt.f64 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (*.f64 l (/.f64 V A)) 1/4) (pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 A -1/2) (/.f64 1 (sqrt.f64 (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 l A)) (pow.f64 V -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (/.f64 V A))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 l (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (*.f64 l (/.f64 V A)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (*.f64 l (/.f64 V A))))) (log.f64 (sqrt.f64 (exp.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 l (/.f64 V A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 A (/.f64 (/.f64 1 V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (*.f64 (/.f64 (/.f64 1 V) l) A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 A (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (/.f64 1 V) (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 1 A) (/.f64 (/.f64 1 V) l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 l (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l V) A)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 (*.f64 l V)) 2) (/.f64 A (cbrt.f64 (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (cbrt.f64 l) 2) (/.f64 (/.f64 A V) (cbrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 l V)) (/.f64 A (sqrt.f64 (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 l) (/.f64 (/.f64 A V) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (neg.f64 A) (/.f64 (/.f64 1 V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 -1 (*.f64 (/.f64 (/.f64 1 V) l) (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 l) (neg.f64 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 l) (*.f64 (neg.f64 A) (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 l) (*.f64 A (/.f64 -1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 l A) (/.f64 1 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 l V)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (/.f64 l A)) (/.f64 -1 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 l) 1) (*.f64 (/.f64 -1 V) A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (neg.f64 l)) (*.f64 (neg.f64 A) (/.f64 -1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l -1) (*.f64 (/.f64 1 V) (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 l) -1) (*.f64 (/.f64 -1 V) (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 l V) (sqrt.f64 A)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 l A) 1) (/.f64 1 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 l V) (pow.f64 (cbrt.f64 A) 2)) (cbrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 l A) (cbrt.f64 (pow.f64 V -2))) (/.f64 1 (cbrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (/.f64 l A) (pow.f64 V -1/2)) (pow.f64 V -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 (*.f64 l V)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 l) (/.f64 1 A)) (/.f64 -1 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 l V) -1) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 l V) 3) (pow.f64 A 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (pow.f64 A -2) A) (pow.f64 (*.f64 l V) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 l V) 3) (/.f64 (pow.f64 A -2) A)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 A (/.f64 (/.f64 1 V) l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 1 V) l) A) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A V) l) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 1 V) (/.f64 l A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 l V) 3) (pow.f64 A 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (/.f64 (pow.f64 A -2) A) (pow.f64 (*.f64 l V) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 l V) 3) (/.f64 (pow.f64 A -2) A)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (/.f64 V A))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (cbrt.f64 (*.f64 c0 c0)) (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) (cbrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 c0) (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) (sqrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 c0) (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 (pow.f64 (*.f64 l (/.f64 V A)) 1/4)) (pow.f64 (*.f64 l (/.f64 V A)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 1) (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 (cbrt.f64 (*.f64 l (/.f64 V A)))) (cbrt.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 c0 (pow.f64 A -1/2)) (sqrt.f64 (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 -1 c0) (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 -1) (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (*.f64 l (/.f64 V A)) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 c0 3) (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3) (pow.f64 c0 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (*.f64 l (/.f64 V A)) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 c0 3) (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3) (pow.f64 c0 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)) (cbrt.f64 (/.f64 1 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (*.f64 l (/.f64 V A)))) (cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1/2) (pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (*.f64 l (/.f64 V A)))) (cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (pow.f64 A -1/2)) (/.f64 1 (sqrt.f64 (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 1 (*.f64 l (/.f64 V A))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) -1/2) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 l (/.f64 V A)) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/2 (log.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 (*.f64 l (/.f64 V A)))) 1))))))

simplify18.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
associate-/l*_binary64
associate-/r/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
010396
116396
220396
323396
424396
Stop Event
saturated
Counts
210 → 166
Calls
Call 1
Inputs
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)

localize10.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
5.7b
(/.f64 (/.f64 A l) V)
14.3b
(sqrt.f64 (/.f64 (/.f64 A l) V))
Compiler

Compiled 30 to 8 computations (73.3% saved)

series13.0ms (0.1%)

Counts
3 → 48
Calls

30 calls:

TimeVariablePointExpression
2.0ms
A
@0
(sqrt.f64 (/.f64 (/.f64 A l) V))
0.0ms
l
@-inf
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
0.0ms
l
@-inf
(sqrt.f64 (/.f64 (/.f64 A l) V))
0.0ms
A
@inf
(sqrt.f64 (/.f64 (/.f64 A l) V))
0.0ms
A
@-inf
(sqrt.f64 (/.f64 (/.f64 A l) V))

rewrite67.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
536×log-prod_binary64
398×exp-prod_binary64
362×pow-prod-down_binary64
257×pow2_binary64
185×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0928
119128
2264828
Stop Event
node limit
Counts
3 → 140
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (/.f64 A l) V))
(/.f64 (/.f64 A l) V)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) (pow.f64 (/.f64 A (*.f64 l V)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/6) (cbrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/4) (pow.f64 (/.f64 A (*.f64 l V)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A l)) (pow.f64 V -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (*.f64 V (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 V) (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 (neg.f64 A) l)) (sqrt.f64 (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 (/.f64 A l))) (neg.f64 (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V (/.f64 l A)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 V) (sqrt.f64 (/.f64 A l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 A (*.f64 l V)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 A (*.f64 l V)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 A (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 A (*.f64 l V)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 A (*.f64 l V))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 A (*.f64 l V))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 A (*.f64 l V)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 A (/.f64 1 (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A l) (/.f64 1 V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A (*.f64 l V)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) (sqrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 A (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 2) (cbrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (/.f64 A l) 2)) (*.f64 (cbrt.f64 (/.f64 A l)) (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/4) (pow.f64 (/.f64 A (*.f64 l V)) 3/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A l)) (*.f64 (sqrt.f64 (/.f64 A l)) (/.f64 1 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (neg.f64 A) l) (/.f64 1 (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 V) (/.f64 A l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3/4) (pow.f64 (/.f64 A (*.f64 l V)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1/2) (/.f64 (/.f64 A l) (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 A) 2) V) (/.f64 (cbrt.f64 A) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 A) V) (/.f64 (sqrt.f64 A) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A 1) (/.f64 (/.f64 1 l) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 A l) 2)) 1) (/.f64 (cbrt.f64 (/.f64 A l)) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 A l)) 1) (/.f64 (sqrt.f64 (/.f64 A l)) V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A (pow.f64 (cbrt.f64 V) 2)) (/.f64 (/.f64 1 l) (cbrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 V) -2) (/.f64 (/.f64 A l) (cbrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 A l) 2)) (pow.f64 (cbrt.f64 V) 2)) (cbrt.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 A l)) (pow.f64 (cbrt.f64 V) 2)) (/.f64 (sqrt.f64 (/.f64 A l)) (cbrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A (sqrt.f64 V)) (/.f64 (/.f64 1 l) (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (pow.f64 (/.f64 A l) 2)) (sqrt.f64 V)) (/.f64 (cbrt.f64 (/.f64 A l)) (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 l V)) 5/6) (pow.f64 (/.f64 A (*.f64 l V)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 l V)) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 V (/.f64 l A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 A l) 3) (pow.f64 V 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 l A) V) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 l V) A) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V (/.f64 l A)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (/.f64 A (*.f64 l V)))) 2)) (cbrt.f64 (log.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (/.f64 A (*.f64 l V))))) (sqrt.f64 (log.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (/.f64 A l) (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 A (*.f64 l V)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 l V)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 A l) 3) (pow.f64 V 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 A (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 A (*.f64 l V)))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 A (*.f64 l V)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 A (*.f64 l V)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 V (/.f64 l A))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A (*.f64 l V))) 1/2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 l V)))) 1) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 A) 1) (log.f64 (*.f64 l V))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 A l)) 1) (log.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (/.f64 A l)) (*.f64 (log.f64 V) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (/.f64 A l)) 1) (*.f64 (log.f64 V) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A (*.f64 l V)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 l V))) c0)) 1) 1))))))

simplify15.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09396
113396
215396
Stop Event
saturated
Counts
188 → 142
Calls
Call 1
Inputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(/.f64 A (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize12.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.7b
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
0.8b
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
6.2b
(*.f64 V (/.f64 l A))
13.6b
(sqrt.f64 (*.f64 V (/.f64 l A)))
Compiler

Compiled 41 to 11 computations (73.2% saved)

series23.0ms (0.1%)

Counts
4 → 60
Calls

42 calls:

TimeVariablePointExpression
3.0ms
A
@-inf
(*.f64 V (/.f64 l A))
1.0ms
V
@-inf
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
1.0ms
V
@0
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
1.0ms
l
@-inf
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
1.0ms
A
@-inf
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)

rewrite86.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
615×log-prod_binary64
379×pow-prod-down_binary64
295×pow2_binary64
232×pow-unpow_binary64
208×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01143
123240
2309240
Stop Event
node limit
Counts
4 → 170
Calls
Call 1
Inputs
(sqrt.f64 (*.f64 V (/.f64 l A)))
(*.f64 V (/.f64 l A))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) (pow.f64 (/.f64 (*.f64 V l) A) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) (cbrt.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 l A)) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 V) (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) (pow.f64 (/.f64 (*.f64 V l) A) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V l) A) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 V l) A)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 (*.f64 V l) A))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 (*.f64 V l) A))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (*.f64 V l) A))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 V l) A))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 V l) A)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (*.f64 V l) A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 V (/.f64 A l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 A (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 V l) A)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 V l)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 V l) 1) A)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 V l) (pow.f64 (cbrt.f64 A) 2)) (cbrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 V l) (sqrt.f64 A)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 l) V) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 V (neg.f64 l)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V l) A) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (*.f64 V l) A) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (*.f64 V l) A)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (/.f64 (*.f64 V l) A))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (*.f64 V l) A))) 3))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (pow.f64 (/.f64 (*.f64 V l) A) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) (pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2) (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -1 (/.f64 1 (/.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 c0) 2) 1) (/.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) 1) (/.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (/.f64 (*.f64 V l) A))) (/.f64 c0 (pow.f64 (/.f64 (*.f64 V l) A) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 c0) 2) (cbrt.f64 (/.f64 (*.f64 V l) A))) (/.f64 (cbrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) (cbrt.f64 (/.f64 (*.f64 V l) A))) (/.f64 (sqrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 c0) 2) (sqrt.f64 V)) (/.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) (sqrt.f64 V)) (/.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/4) (/.f64 c0 (pow.f64 (/.f64 (*.f64 V l) A) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 c0) 2) (pow.f64 (/.f64 (*.f64 V l) A) 1/4)) (/.f64 (cbrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/4)) (/.f64 (sqrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)))) (neg.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) -2) (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) 1) c0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) (pow.f64 (cbrt.f64 c0) 2)) (cbrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) (sqrt.f64 c0)) (sqrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (*.f64 V l) A) (pow.f64 c0 -2)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) 3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (/.f64 (*.f64 V l) A) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (neg.f64 (/.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))) c0)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 c0) (pow.f64 (/.f64 (*.f64 V l) A) 1/4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (/.f64 (*.f64 V l) A) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))))) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))) 2)) (log.f64 (cbrt.f64 (exp.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))) (log.f64 (sqrt.f64 (exp.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) (/.f64 1 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) (cbrt.f64 (*.f64 (/.f64 (*.f64 V l) A) (pow.f64 c0 -2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (*.f64 V l) A) (pow.f64 c0 -2))) (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 V) (*.f64 (sqrt.f64 (/.f64 l A)) (/.f64 1 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) (sqrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) (/.f64 1 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (/.f64 (*.f64 V l) A))) (/.f64 1 (neg.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) 1) (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 V) 1) (/.f64 (sqrt.f64 (/.f64 l A)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) 1) (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 c0) -2) (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (cbrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) (pow.f64 (cbrt.f64 c0) 2)) (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 V) (pow.f64 (cbrt.f64 c0) 2)) (/.f64 (sqrt.f64 (/.f64 l A)) (cbrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) (pow.f64 (cbrt.f64 c0) 2)) (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/4) (cbrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 c0 -1/2) (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (sqrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 (*.f64 V l) A)) (sqrt.f64 c0)) (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 1/6) (sqrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 V) (sqrt.f64 c0)) (/.f64 (sqrt.f64 (/.f64 l A)) (sqrt.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) -3) -1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (*.f64 V l) A) (pow.f64 c0 -2)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) -3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3/2) (pow.f64 c0 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (neg.f64 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 (*.f64 V l) A) (pow.f64 c0 -2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 (*.f64 V l) A) 3/2) (pow.f64 c0 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) c0))) 2))))))

simplify29.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/l*_binary64
associate-/r*_binary64
associate-/r/_binary64
*-rgt-identity_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
014576
125540
234540
346540
449540
552540
659540
759540
Stop Event
saturated
Counts
230 → 174
Calls
Call 1
Inputs
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
Outputs
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)
(*.f64 (sqrt.f64 (/.f64 (*.f64 V l) A)) (/.f64 1 c0))
(/.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) c0)
(/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0)
(/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0)

localize18.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
0.2b
(*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))
12.2b
(pow.f64 (*.f64 V l) -1/2)
Compiler

Compiled 37 to 16 computations (56.8% saved)

series151.0ms (0.8%)

Counts
3 → 36
Calls

27 calls:

TimeVariablePointExpression
44.0ms
l
@-inf
(pow.f64 (*.f64 V l) -1/2)
39.0ms
V
@0
(pow.f64 (*.f64 V l) -1/2)
17.0ms
l
@0
(pow.f64 (*.f64 V l) -1/2)
15.0ms
V
@-inf
(pow.f64 (*.f64 V l) -1/2)
15.0ms
l
@inf
(pow.f64 (*.f64 V l) -1/2)

rewrite74.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
577×log-prod_binary64
423×exp-prod_binary64
393×pow-prod-down_binary64
293×pow2_binary64
250×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01134
122834
2271434
Stop Event
node limit
Counts
3 → 75
Calls
Call 1
Inputs
(pow.f64 (*.f64 V l) -1/2)
(*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 V l) -1/2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 V l) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/6) (cbrt.f64 (/.f64 1 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 1 (*.f64 V l))) (pow.f64 (*.f64 V l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1/2) (pow.f64 l -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/4) (pow.f64 (*.f64 V l) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) -1) (pow.f64 (*.f64 V l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 1 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 V l) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 V l) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 -1/2 (log.f64 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/2 (log.f64 (*.f64 V l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 2 (log.f64 (*.f64 V l))) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 V l) -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/4 (log.f64 (*.f64 V l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (*.f64 -1/2 (log.f64 (*.f64 V l))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 V l)) -1/4) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (pow.f64 (*.f64 V l) -1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (pow.f64 (*.f64 V l) -1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (pow.f64 (*.f64 V l) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 A (/.f64 1 (*.f64 V l))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 A 3/2) (pow.f64 (*.f64 V l) -3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 A 1/6) (pow.f64 (*.f64 V l) -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 A 1/4) (pow.f64 (*.f64 V l) -1/4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))) 2)) (cbrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))) (sqrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 A (/.f64 1 (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (pow.f64 (*.f64 V l) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 A 3/2) (pow.f64 (*.f64 V l) -3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 A 3/2) (pow.f64 (*.f64 V l) -3/2))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 A 1/6) (pow.f64 (*.f64 V l) -1/6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 A 1/4) (pow.f64 (*.f64 V l) -1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (*.f64 (pow.f64 (*.f64 V l) -1/2) c0))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (*.f64 (pow.f64 (*.f64 V l) -1/2) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (*.f64 (pow.f64 (*.f64 V l) -1/2) c0)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (*.f64 (pow.f64 (*.f64 V l) -1/2) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 A (/.f64 1 (*.f64 V l))) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 A) c0)) (pow.f64 (*.f64 V l) -1/6)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 A) c0)) (pow.f64 (*.f64 V l) -1/4)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))) 2)) (cbrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))))) (sqrt.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 A (/.f64 1 (*.f64 V l))) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 A)) (*.f64 (pow.f64 (*.f64 V l) -1/2) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cbrt.f64 (*.f64 (sqrt.f64 A) c0)) (pow.f64 (*.f64 V l) -1/6))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (*.f64 (sqrt.f64 A) c0)) (pow.f64 (*.f64 V l) -1/4))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (pow.f64 (*.f64 V l) -1/2) (*.f64 (sqrt.f64 A) c0))) 1) 1))))))

simplify71.0ms (0.4%)

Algorithm
egg-herbie
Rules
759×fma-def_binary64
517×fma-neg_binary64
515×div-sub_binary64
298×distribute-rgt-in_binary64
293×exp-sum_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
045456
1118456
2282384
3726312
41959312
55236312
Stop Event
node limit
Counts
111 → 82
Calls
Call 1
Inputs
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 V))) (log.f64 (*.f64 -1 l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 V)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 l)))
(*.f64 (pow.f64 l -1/2) (pow.f64 V -1/2))
(pow.f64 (*.f64 V l) -1/2)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize39.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
4.9b
(*.f64 (/.f64 A (*.f64 V l)) c0)
5.8b
(/.f64 A (*.f64 V l))
14.9b
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)
Compiler

Compiled 47 to 14 computations (70.2% saved)

series29.0ms (0.1%)

Counts
3 → 60
Calls

36 calls:

TimeVariablePointExpression
3.0ms
V
@0
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)
2.0ms
c0
@inf
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)
2.0ms
c0
@-inf
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
2.0ms
A
@0
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)
1.0ms
l
@0
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)

rewrite71.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
672×log-prod_binary64
478×pow-prod-down_binary64
317×pow2_binary64
295×pow-unpow_binary64
223×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01239
125434
2323734
Stop Event
node limit
Counts
3 → 79
Calls
Call 1
Inputs
(pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2)
(*.f64 (/.f64 A (*.f64 V l)) c0)
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)) (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/6) (cbrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (sqrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/4) (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) 1) (sqrt.f64 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (cbrt.f64 c0)) (pow.f64 c0 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (pow.f64 c0 1/4)) (pow.f64 c0 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 A c0)) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 (/.f64 A V) l) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 A V) l)) c0)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 A V) l)) c0))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 A (/.f64 (*.f64 V l) c0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c0 (/.f64 l (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 V l) (*.f64 A c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 A c0) (*.f64 V l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 A c0)) (*.f64 l (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 A c0) V) l)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 A c0) l) V)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 A c0) 1) (*.f64 V l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 A c0) (pow.f64 (cbrt.f64 (*.f64 V l)) 2)) (cbrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 A c0) (sqrt.f64 (*.f64 V l))) (sqrt.f64 (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 A) c0) (*.f64 l (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (/.f64 A V) c0) l)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (neg.f64 A)) (*.f64 l (neg.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (/.f64 A V)) l)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 3/2) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/6) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 1/4) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 V l) (*.f64 A c0)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 (/.f64 A V) l)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 (/.f64 A V) l) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 (/.f64 A V) l) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 (/.f64 A V) l) c0)) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (*.f64 (/.f64 (/.f64 A V) l) c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 c0 (*.f64 (/.f64 (/.f64 A V) l) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 1))))))

simplify71.0ms (0.4%)

Algorithm
egg-herbie
Rules
1009×fma-def_binary64
474×cancel-sign-sub-inv_binary64
447×distribute-neg-frac_binary64
363×div-sub_binary64
283×associate-*l/_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
018624
142624
2116624
3230624
4700624
52009624
64960624
Stop Event
node limit
Counts
139 → 83
Calls
Call 1
Inputs
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
Outputs
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(/.f64 (*.f64 A c0) (*.f64 V l))
(*.f64 (/.f64 c0 (*.f64 V l)) A)
(*.f64 A (/.f64 c0 (*.f64 V l)))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (*.f64 (pow.f64 (sqrt.f64 -1) 2) c0)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))

eval166.0ms (0.9%)

Compiler

Compiled 9786 to 4007 computations (59.1% saved)

prune132.0ms (0.7%)

Pruning

27 alts after pruning (23 fresh and 4 done)

PrunedKeptTotal
New67615691
Fresh11819
Picked101
Done246
Total69027717
Error
1.0b
Counts
717 → 27
Alt Table
Click to see full alt table
StatusErrorProgram
36.6b
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)
27.9b
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
37.6b
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
17.7b
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
17.9b
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
36.2b
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A)) c0))
18.4b
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
17.4b
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
41.9b
(*.f64 (pow.f64 (/.f64 (/.f64 (*.f64 A c0) l) V) 1/2) (sqrt.f64 c0))
16.8b
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
50.5b
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
17.6b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
17.8b
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
17.4b
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3/2))
50.2b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))))
49.9b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
25.8b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
39.2b
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
17.1b
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
17.9b
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
25.8b
(*.f64 c0 (*.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V))))
35.8b
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
17.5b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
17.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
47.6b
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
47.4b
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
56.6b
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
Compiler

Compiled 700 to 494 computations (29.4% saved)

localize16.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
5.8b
(/.f64 (*.f64 V l) A)
14.0b
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
Compiler

Compiled 33 to 12 computations (63.6% saved)

series249.0ms (1.3%)

Counts
3 → 48
Calls

30 calls:

TimeVariablePointExpression
110.0ms
l
@-inf
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
26.0ms
A
@0
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
20.0ms
l
@0
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
17.0ms
V
@-inf
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
17.0ms
A
@-inf
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)

rewrite80.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
552×log-prod_binary64
424×exp-prod_binary64
331×pow-prod-down_binary64
276×pow2_binary64
194×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01030
121130
2270128
Stop Event
node limit
Counts
3 → 111
Calls
Call 1
Inputs
(pow.f64 (/.f64 (*.f64 V l) A) -1/2)
(/.f64 (*.f64 V l) A)
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 V A) l) -1/6) (cbrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) (pow.f64 (*.f64 (/.f64 V A) l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (/.f64 V A) l) -1/4) (pow.f64 (*.f64 (/.f64 V A) l) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 V l) -1/2) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 V A) l)) -1) (pow.f64 (*.f64 (/.f64 V A) l) -1/6))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 A (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 V A) l) -3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 V A) l) -3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 V A) l) 2)) -1/4))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 V A) l) -1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 -1/4 (log.f64 (*.f64 (/.f64 V A) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 V A) l)) 1) -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 V A) l)) -1/4) 2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (/.f64 V A) l))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 V A)) l)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (/.f64 V A)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 V A)) l))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (/.f64 V A)) l))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (/.f64 V A) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 V (/.f64 1 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 V (*.f64 l (/.f64 1 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 l (*.f64 V (/.f64 1 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 V l) (/.f64 1 A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (/.f64 V A) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (/.f64 V A) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (/.f64 V A) l)) (pow.f64 (cbrt.f64 (*.f64 (/.f64 V A) l)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (/.f64 V A) l)) 2) (cbrt.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) 2) (*.f64 (cbrt.f64 (*.f64 V l)) (/.f64 1 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) (sqrt.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 V l)) (*.f64 (sqrt.f64 (*.f64 V l)) (/.f64 1 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 V (neg.f64 l)) (/.f64 1 (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 A) (*.f64 V l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 V 1) (/.f64 l A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l 1) (/.f64 V A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 V A) l)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) 2) 1) (/.f64 (cbrt.f64 (*.f64 V l)) A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 V l)) 1) (/.f64 (sqrt.f64 (*.f64 V l)) A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 V (cbrt.f64 (*.f64 A A))) (/.f64 l (cbrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (cbrt.f64 (*.f64 A A))) (/.f64 V (cbrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 A) -2) (/.f64 (*.f64 V l) (cbrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) 2) (cbrt.f64 (*.f64 A A))) (cbrt.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 (*.f64 V l)) (cbrt.f64 (*.f64 A A))) (/.f64 (sqrt.f64 (*.f64 V l)) (cbrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 V (sqrt.f64 A)) (/.f64 l (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 l (sqrt.f64 A)) (/.f64 V (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 A -1/2) (/.f64 (*.f64 V l) (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (cbrt.f64 (*.f64 V l)) 2) (sqrt.f64 A)) (/.f64 (cbrt.f64 (*.f64 V l)) (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 V A) l) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 V A) l) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (/.f64 V A) l) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (/.f64 V A) l)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 V A) l)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (*.f64 V l) 3) (pow.f64 A 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 A (*.f64 V l)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (/.f64 V A) l))) 2)) (cbrt.f64 (log.f64 (*.f64 (/.f64 V A) l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (/.f64 V A) l)))) (sqrt.f64 (log.f64 (*.f64 (/.f64 V A) l))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 V l) (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (/.f64 V A) l) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (/.f64 V A)) l))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (/.f64 V A) l))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (/.f64 V A) l) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (*.f64 V l) 3) (pow.f64 A 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (/.f64 V A) l)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (/.f64 V A) l)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (/.f64 V A) l) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (/.f64 V A) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (/.f64 V A) l))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (/.f64 V A) l)) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 V) 1) (log.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 V l)) 1) (log.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (log.f64 (*.f64 V l)) (*.f64 (log.f64 A) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (-.f64 (*.f64 (log.f64 (*.f64 V l)) 1) (*.f64 (log.f64 A) 1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 c0 c0) (/.f64 A (*.f64 V l))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 c0 c0) (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1) 1))))))

simplify80.0ms (0.4%)

Algorithm
egg-herbie
Rules
536×exp-sum_binary64
493×fma-neg_binary64
378×div-sub_binary64
370×exp-diff_binary64
345×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
070720
1187720
2469612
31197504
43703504
Stop Event
node limit
Counts
159 → 123
Calls
Call 1
Inputs
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 V) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 1 V))) (log.f64 (/.f64 l A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (/.f64 l A))) (*.f64 -1 (log.f64 (/.f64 -1 V))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (log.f64 l))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 V A)) (*.f64 -1 (log.f64 (/.f64 1 l))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 (/.f64 -1 l))) (log.f64 (*.f64 -1 (/.f64 V A))))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 (log.f64 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (/.f64 1 A)) (log.f64 (*.f64 V l)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(exp.f64 (*.f64 -1/2 (+.f64 (log.f64 (*.f64 -1 (*.f64 V l))) (log.f64 (/.f64 -1 A)))))
(pow.f64 (exp.f64 -1/2) (+.f64 (log.f64 V) (log.f64 (/.f64 l A))))
(pow.f64 (exp.f64 -1/2) (-.f64 (log.f64 (*.f64 V l)) (log.f64 A)))
(*.f64 (pow.f64 (/.f64 V A) -1/2) (pow.f64 l -1/2))
(pow.f64 (*.f64 (/.f64 V A) l) -1/2)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A l) V)) c0)

localize23.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.7b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
6.0b
(/.f64 (/.f64 A V) l)
14.3b
(sqrt.f64 (/.f64 (/.f64 A V) l))
Compiler

Compiled 30 to 8 computations (73.3% saved)

localize25.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
6.3b
(*.f64 l (/.f64 V A))
14.8b
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
22.7b
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
Compiler

Compiled 38 to 9 computations (76.3% saved)

series31.0ms (0.2%)

Counts
3 → 96
Calls

33 calls:

TimeVariablePointExpression
2.0ms
c0
@inf
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
2.0ms
l
@0
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
2.0ms
l
@inf
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
2.0ms
A
@0
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
2.0ms
V
@0
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))

rewrite108.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
654×log-prod_binary64
417×pow-prod-down_binary64
293×pow2_binary64
243×pow-unpow_binary64
207×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01035
121832
2322232
Stop Event
node limit
Counts
3 → 124
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A)))
(*.f64 l (/.f64 V A))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 c0 l)) (sqrt.f64 (*.f64 c0 (/.f64 A V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (*.f64 (/.f64 l c0) (/.f64 (/.f64 V A) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 l (*.f64 c0 (/.f64 A V)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (*.f64 c0 (neg.f64 c0))) (sqrt.f64 (*.f64 l (neg.f64 (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (/.f64 c0 (/.f64 l c0))) (sqrt.f64 (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 c0) (neg.f64 (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 4) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 6) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 l c0) (/.f64 (/.f64 V A) c0)) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (/.f64 l c0) (/.f64 (/.f64 V A) c0))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) c0) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 2 (log.f64 c0) (log.f64 (/.f64 (/.f64 A V) l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (*.f64 c0 (/.f64 (/.f64 A V) l)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (*.f64 c0 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (*.f64 c0 (/.f64 (/.f64 A V) l))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (*.f64 c0 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (/.f64 1 (/.f64 l (*.f64 c0 (/.f64 A V)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 c0) (/.f64 (/.f64 A V) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))) (cbrt.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 4)) (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cbrt.f64 c0) c0) (*.f64 (pow.f64 (cbrt.f64 c0) 2) (/.f64 (/.f64 A V) l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (neg.f64 c0)) (/.f64 1 (*.f64 l (neg.f64 (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (/.f64 A V)) (/.f64 c0 l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 A V) (/.f64 c0 (/.f64 l c0)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3/2) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (/.f64 (*.f64 c0 c0) (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 1) (/.f64 c0 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 c0) c0) 1) (/.f64 (pow.f64 (cbrt.f64 c0) 2) (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 c0) c0) l) (/.f64 (pow.f64 (cbrt.f64 c0) 2) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 c0) c0) (/.f64 V A)) (/.f64 (pow.f64 (cbrt.f64 c0) 2) l))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 (*.f64 l (/.f64 V A))) c0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 (pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) 2)) (/.f64 c0 (cbrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) -2) (/.f64 (*.f64 c0 c0) (cbrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 c0) c0) (pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) 2)) (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 (cbrt.f64 c0) c0) (sqrt.f64 (*.f64 l (/.f64 V A)))) (/.f64 (pow.f64 (cbrt.f64 c0) 2) (sqrt.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (*.f64 c0 c0) (*.f64 l V)) A)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) 1) (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) (neg.f64 V)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))) 5/6) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 4) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 6) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 3) 2/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l)))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 l c0) (/.f64 (/.f64 V A) c0)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 c0 6) (pow.f64 (*.f64 l (/.f64 V A)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (*.f64 (/.f64 l c0) (/.f64 (/.f64 V A) c0)) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (neg.f64 (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (*.f64 c0 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A V) l))) 6))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 c0 6) (pow.f64 (*.f64 l (/.f64 V A)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 c0 (*.f64 c0 (/.f64 (/.f64 A V) l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (fma.f64 2 (log.f64 c0) (log.f64 (/.f64 (/.f64 A V) l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (fma.f64 2 (log.f64 c0) (log.f64 (/.f64 (/.f64 A V) l))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 l (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 l) (/.f64 V A))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 l) (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 l) (/.f64 V A)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 l) (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 l (/.f64 V A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 l (/.f64 A V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 A (*.f64 l V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l V) A)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 l V)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 l V) 1) A)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 l V) (pow.f64 (cbrt.f64 A) 2)) (cbrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 l V) (sqrt.f64 A)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 V) l) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 l (neg.f64 V)) (neg.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 l (/.f64 V A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 l (/.f64 V A))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 l (/.f64 V A))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 l V)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 l) (/.f64 V A)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 l (/.f64 V A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 l (/.f64 V A)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 l (/.f64 V A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 l (/.f64 V A))) 1))))))

simplify181.0ms (0.9%)

Algorithm
egg-herbie
Rules
542×fma-neg_binary64
405×times-frac_binary64
331×associate-/l*_binary64
330×unswap-sqr_binary64
310×div-sub_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0161028
1381028
2891028
32231028
47271028
530921028
633971028
743101028
848951028
969731028
1077801028
Stop Event
node limit
Counts
220 → 132
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
(/.f64 (*.f64 V l) A)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (neg.f64 c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (neg.f64 c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (neg.f64 c0))
(*.f64 -1 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))
(neg.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0))
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) (neg.f64 c0))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) (neg.f64 c0))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 A (pow.f64 c0 2)) (*.f64 V l))
(*.f64 (/.f64 A V) (/.f64 (*.f64 c0 c0) l))
(/.f64 (*.f64 A (*.f64 c0 c0)) (*.f64 V l))
(*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0))
(/.f64 (/.f64 A V) (/.f64 l (*.f64 c0 c0)))
(*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V)))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))
(/.f64 (*.f64 V l) A)
(/.f64 V (/.f64 A l))
(*.f64 (/.f64 V A) l)
(*.f64 l (/.f64 V A))
(*.f64 V (/.f64 l A))

localize28.0ms (0.1%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
0.1b
(/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V))
6.2b
(sqrt.f64 (/.f64 A l))
Compiler

Compiled 33 to 9 computations (72.7% saved)

series26.0ms (0.1%)

Counts
3 → 12
Calls

27 calls:

TimeVariablePointExpression
2.0ms
A
@0
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
1.0ms
l
@0
(sqrt.f64 (/.f64 A l))
1.0ms
l
@-inf
(sqrt.f64 (/.f64 A l))
1.0ms
A
@0
(sqrt.f64 (/.f64 A l))
1.0ms
A
@-inf
(sqrt.f64 (/.f64 A l))

rewrite111.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
575×log-prod_binary64
419×exp-prod_binary64
377×pow-prod-down_binary64
275×pow2_binary64
210×pow-unpow_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01027
121227
2287427
Stop Event
node limit
Counts
3 → 127
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 A l))
(/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A l)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A l))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A l)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A l) 1/6) (cbrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A l)) (pow.f64 (/.f64 A l) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A l) 1/4) (pow.f64 (/.f64 A l) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 A) (pow.f64 l -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 l) (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 A) (sqrt.f64 l))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (neg.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 A)) (neg.f64 (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A l) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A l)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A l) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A l) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A l) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A l) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 A l)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A l) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 l A) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1/2) (log.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 l A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 l) (sqrt.f64 A)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A l)))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A l))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A l) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A l)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A l))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 A l))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A l) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A l) 1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A l)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 A l)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A l))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A l)) (pow.f64 V -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) (cbrt.f64 (/.f64 A (*.f64 V l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) (pow.f64 (/.f64 A (*.f64 V l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 A l)) (*.f64 (pow.f64 (/.f64 A l) 1/6) (pow.f64 V -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) (pow.f64 (/.f64 A (*.f64 V l)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 A l) 1/4) (*.f64 (pow.f64 (/.f64 A l) 1/4) (pow.f64 V -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 (sqrt.f64 (/.f64 A l))) (/.f64 1 (neg.f64 (sqrt.f64 V))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1/2) (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 A l)) 1) (/.f64 (pow.f64 (/.f64 A l) 1/6) (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 A l) 1/4) 1) (/.f64 (pow.f64 (/.f64 A l) 1/4) (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 V)) (/.f64 (sqrt.f64 (/.f64 A l)) (pow.f64 V 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 A l)) (cbrt.f64 V)) (pow.f64 (/.f64 A (*.f64 V l)) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (pow.f64 (/.f64 A l) 1/4) (cbrt.f64 V)) (/.f64 (pow.f64 (/.f64 A l) 1/4) (pow.f64 V 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 V -1/4) (/.f64 (sqrt.f64 (/.f64 A l)) (pow.f64 V 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (/.f64 A l)) (pow.f64 V 1/4)) (/.f64 (pow.f64 (/.f64 A l) 1/6) (pow.f64 V 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A (*.f64 V l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 V (/.f64 A l))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 (/.f64 A l) 3/2) (pow.f64 V 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 V (/.f64 A l))) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))) 2)) (cbrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))) (sqrt.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 (sqrt.f64 (/.f64 A l)) (neg.f64 (sqrt.f64 V))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (/.f64 A (*.f64 V l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 (/.f64 A l) 3/2) (pow.f64 V 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 A (*.f64 V l))) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 3/2)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 A (*.f64 V l)) 1/4)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 V (/.f64 A l)))) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0)) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 V) (*.f64 (sqrt.f64 (/.f64 A l)) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0)) (neg.f64 (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0) 1) (sqrt.f64 V))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0) (cbrt.f64 V)) (pow.f64 V 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (sqrt.f64 (/.f64 A l)) c0) (pow.f64 V 1/4)) (pow.f64 V 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 (sqrt.f64 (/.f64 A l))) c0) (neg.f64 (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 c0 (neg.f64 (sqrt.f64 (/.f64 A l)))) (neg.f64 (sqrt.f64 V)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 1) (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 V) (*.f64 (sqrt.f64 (/.f64 A l)) c0)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (pow.f64 (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2)) (cbrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (exp.f64 (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))) (sqrt.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sqrt.f64 (/.f64 A (*.f64 V l)))) c0))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)) 1) 1))))))

simplify21.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09144
113144
215144
Stop Event
saturated
Counts
139 → 128
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)

localize29.0ms (0.2%)

Local error

Found 3 expressions with local error:

NewErrorProgram
0.1b
(/.f64 c0 (sqrt.f64 (/.f64 l A)))
0.6b
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
9.7b
(sqrt.f64 (/.f64 l A))
Compiler

Compiled 35 to 13 computations (62.9% saved)

series32.0ms (0.2%)

Counts
3 → 24
Calls

27 calls:

TimeVariablePointExpression
2.0ms
c0
@inf
(/.f64 c0 (sqrt.f64 (/.f64 l A)))
2.0ms
l
@0
(sqrt.f64 (/.f64 l A))
2.0ms
A
@-inf
(/.f64 c0 (sqrt.f64 (/.f64 l A)))
2.0ms
l
@-inf
(sqrt.f64 (/.f64 l A))
2.0ms
l
@-inf
(/.f64 c0 (sqrt.f64 (/.f64 l A)))

rewrite108.0ms (0.6%)

Algorithm
batch-egg-rewrite
Rules
602×log-prod_binary64
367×pow-prod-down_binary64
309×pow2_binary64
218×pow-unpow_binary64
216×pow1/3_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01130
123830
2309128
Stop Event
node limit
Counts
3 → 117
Calls
Call 1
Inputs
(sqrt.f64 (/.f64 l A))
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (/.f64 l A)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 l A)))) 2)) (log.f64 (cbrt.f64 (exp.f64 (sqrt.f64 (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 l A))))) (log.f64 (sqrt.f64 (exp.f64 (sqrt.f64 (/.f64 l A))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sqrt.f64 (/.f64 l A)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 l A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 l A) 1/6) (cbrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (/.f64 l A)) (pow.f64 (/.f64 l A) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 l A) 1/4) (pow.f64 (/.f64 l A) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 l) (pow.f64 A -1/2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 A) (sqrt.f64 l)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 l) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (sqrt.f64 (neg.f64 l)) (sqrt.f64 (neg.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (sqrt.f64 l)) (neg.f64 (sqrt.f64 A)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 l A) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 l A)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l A) 3/2) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l A) 2) 1/4)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l A) 3) 1/6)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l A) 1/6) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (/.f64 l A)) 3/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 l A) 1/4) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 A l) -1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (/.f64 A l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 A) (sqrt.f64 l)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sqrt.f64 (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 l A) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 l A)) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 l A))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3/2 (log.f64 (/.f64 l A))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 l A) 1/6)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 1/4 (log.f64 (/.f64 l A))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 l A)) 1) 1/2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 l A)) 1/2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (sqrt.f64 (/.f64 l A))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (pow.f64 (*.f64 (/.f64 l A) V) -1/2))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 V -1/2) (/.f64 (sqrt.f64 (/.f64 l A)) c0))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (sqrt.f64 (/.f64 l A)) (*.f64 (pow.f64 V -1/2) c0)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 V -1/2) c0) (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (pow.f64 V -1/2) c0)) (neg.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 V -1/2) c0) 1) (sqrt.f64 (/.f64 l A)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 V -1/2) c0) (cbrt.f64 (/.f64 l A))) (pow.f64 (/.f64 l A) 1/6))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (/.f64 (*.f64 (pow.f64 V -1/2) c0) (pow.f64 (/.f64 l A) 1/4)) (pow.f64 (/.f64 l A) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (neg.f64 c0) (pow.f64 V -1/2)) (neg.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (pow.f64 V -1/2) (neg.f64 c0)) (neg.f64 (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 V -1) (*.f64 (*.f64 c0 c0) (/.f64 A l))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 l A)) (*.f64 (pow.f64 V -1/2) c0)) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (pow.f64 V -1) (*.f64 (*.f64 c0 c0) (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 c0 (pow.f64 (*.f64 (/.f64 l A) V) -1/2))) 1) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 c0 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A l)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A l))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A l))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A l))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 c0 (sqrt.f64 (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 c0 (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 c0 c0)) (*.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) (cbrt.f64 (*.f64 (*.f64 c0 c0) (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (*.f64 c0 c0) (/.f64 A l))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 c0) (*.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (neg.f64 c0) (/.f64 1 (neg.f64 (sqrt.f64 (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (/.f64 A l)) c0)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 c0 c0)) 1) (/.f64 (cbrt.f64 c0) (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) 1) (/.f64 (sqrt.f64 c0) (sqrt.f64 (/.f64 l A))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 1 (cbrt.f64 (/.f64 l A))) (/.f64 c0 (pow.f64 (/.f64 l A) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 c0 c0)) (cbrt.f64 (/.f64 l A))) (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (sqrt.f64 c0) (cbrt.f64 (/.f64 l A))) (/.f64 (sqrt.f64 c0) (pow.f64 (/.f64 l A) 1/6)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (/.f64 l A) -1/4) (/.f64 c0 (pow.f64 (/.f64 l A) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 (cbrt.f64 (*.f64 c0 c0)) (pow.f64 (/.f64 l A) 1/4)) (/.f64 (cbrt.f64 c0) (pow.f64 (/.f64 l A) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (/.f64 c0 (sqrt.f64 l)) (sqrt.f64 A))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 c0 c0) (/.f64 A l)) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0) -3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (/.f64 l A) 3/2)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0) 1) -1)))) (#(struct:change #<rule egg-rr> (2) ((x neg.f64 (/.f64 c0 (neg.f64 (sqrt.f64 (/.f64 l A)))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (*.f64 (*.f64 c0 c0) (/.f64 A l)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 A l))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0) -3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (/.f64 (pow.f64 c0 3) (pow.f64 (/.f64 l A) 3/2)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0) -3)) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (/.f64 l A)) c0)) -1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 c0 (sqrt.f64 (/.f64 A l)))) 1) 1))))))

simplify25.0ms (0.1%)

Algorithm
egg-herbie
Rules
*-commutative_binary64
associate-/r*_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
012252
117252
218252
Stop Event
saturated
Counts
141 → 118
Calls
Call 1
Inputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
Outputs
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A (*.f64 V l))) c0)
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))
(*.f64 (sqrt.f64 (/.f64 A l)) c0)
(*.f64 c0 (sqrt.f64 (/.f64 A l)))

eval258.0ms (1.3%)

Compiler

Compiled 8108 to 3027 computations (62.7% saved)

prune117.0ms (0.6%)

Pruning

26 alts after pruning (19 fresh and 7 done)

PrunedKeptTotal
New59610606
Fresh9918
Picked011
Done268
Total60726633
Error
0.8b
Counts
633 → 26
Alt Table
Click to see full alt table
StatusErrorProgram
36.6b
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)
27.9b
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
37.6b
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
17.6b
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
17.7b
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
17.9b
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
36.2b
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A)) c0))
18.4b
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
16.8b
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
17.7b
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
50.5b
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
50.2b
(*.f64 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))) c0)
25.8b
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
17.6b
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
17.8b
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
39.2b
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
17.1b
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
35.8b
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
17.5b
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
17.1b
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
45.5b
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
45.4b
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
44.0b
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
47.3b
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
44.3b
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
56.6b
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
Compiler

Compiled 355 to 246 computations (30.7% saved)

regimes1.3s (6.7%)

Counts
65 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (pow.f64 (/.f64 l (/.f64 A V)) -1)))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (*.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V))))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3/2))
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
(*.f64 c0 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))))
(*.f64 c0 (pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) 2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))) c0)
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A)) c0))
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
(*.f64 (pow.f64 (/.f64 (/.f64 (*.f64 A c0) l) V) 1/2) (sqrt.f64 c0))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 2)
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
(log.f64 (pow.f64 (exp.f64 c0) (sqrt.f64 (/.f64 (/.f64 A V) l))))
(*.f64 c0 (*.f64 (sqrt.f64 A) (/.f64 (sqrt.f64 (pow.f64 V -1)) (sqrt.f64 l))))
(cbrt.f64 (pow.f64 (*.f64 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))) c0) 3))
(*.f64 c0 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)) 2)) (sqrt.f64 (cbrt.f64 (/.f64 (/.f64 A V) l)))))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))
Calls

10 calls:

201.0ms
c0
184.0ms
A
154.0ms
(*.f64 V l)
153.0ms
V
150.0ms
(*.f64 V l)
Results
ErrorSegmentsBranch
14.3b4c0
8.7b4A
10.1b4V
9.2b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
3.4b5(*.f64 V l)
3.4b5(*.f64 V l)
Compiler

Compiled 749 to 309 computations (58.7% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6643206670269553e+291
2.1151099996918947e+304
0.0ms
1.05e-321
8.698233e-318
0.0ms
-9.797727930743521e-301
-5.7811372037e-314
0.0ms
-3.677808315439359e+265
-2.480934114020591e+264
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes1.9s (9.7%)

Counts
58 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (pow.f64 (/.f64 l (/.f64 A V)) -1)))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (*.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V))))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3/2))
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
(*.f64 c0 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))))
(*.f64 c0 (pow.f64 (pow.f64 (/.f64 (/.f64 A V) l) 1/4) 2))
(*.f64 (/.f64 (sqrt.f64 (/.f64 (neg.f64 A) V)) (sqrt.f64 (neg.f64 l))) c0)
(/.f64 1 (/.f64 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A)) c0))
(*.f64 (pow.f64 (*.f64 (/.f64 A (*.f64 V l)) c0) 1/2) (sqrt.f64 c0))
(*.f64 (pow.f64 (/.f64 (/.f64 (*.f64 A c0) l) V) 1/2) (sqrt.f64 c0))
(cbrt.f64 (pow.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0) 3))
(pow.f64 (sqrt.f64 (*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)) 2)
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))) 2)
(pow.f64 (sqrt.f64 (/.f64 c0 (sqrt.f64 (/.f64 (*.f64 V l) A)))) 2)
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V)))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

10 calls:

366.0ms
V
330.0ms
(*.f64 V l)
234.0ms
(*.f64 V l)
196.0ms
A
193.0ms
c0
Results
ErrorSegmentsBranch
14.3b4c0
8.7b4A
11.1b6V
9.2b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
3.4b5(*.f64 V l)
3.4b5(*.f64 V l)
Compiler

Compiled 662 to 285 computations (56.9% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6643206670269553e+291
2.1151099996918947e+304
0.0ms
1.05e-321
8.698233e-318
0.0ms
-9.797727930743521e-301
-5.7811372037e-314
0.0ms
-3.677808315439359e+265
-2.480934114020591e+264
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes1.1s (5.5%)

Counts
47 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (pow.f64 (/.f64 l (/.f64 A V)) -1)))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (*.f64 (pow.f64 l -1/2) (sqrt.f64 (/.f64 A V))))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 V l))) 3/2))
(*.f64 c0 (pow.f64 (cbrt.f64 (/.f64 A (*.f64 l V))) 3/2))
(*.f64 (pow.f64 V -1/2) (/.f64 c0 (sqrt.f64 (/.f64 l A))))
(*.f64 c0 (*.f64 (sqrt.f64 A) (sqrt.f64 (/.f64 1 (*.f64 V l)))))
(*.f64 c0 (/.f64 1 (/.f64 (sqrt.f64 (*.f64 V l)) (sqrt.f64 A))))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2)))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

10 calls:

205.0ms
c0
188.0ms
(*.f64 V l)
165.0ms
V
100.0ms
l
93.0ms
A
Results
ErrorSegmentsBranch
14.3b4c0
10.0b3A
11.2b6V
9.7b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
5.4b5(*.f64 V l)
5.4b5(*.f64 V l)
Compiler

Compiled 539 to 240 computations (55.5% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6643206670269553e+291
2.1151099996918947e+304
0.0ms
1.05e-321
8.698233e-318
0.0ms
-3.3800163086230954e-101
-1.9578049840187385e-103
0.0ms
-2.3287121516469927e+255
-2.3802636375906618e+253
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes1.2s (6%)

Counts
40 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(*.f64 c0 (sqrt.f64 (pow.f64 (/.f64 l (/.f64 A V)) -1)))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

10 calls:

244.0ms
A
171.0ms
(*.f64 V l)
169.0ms
(*.f64 V l)
136.0ms
c0
119.0ms
V
Results
ErrorSegmentsBranch
14.3b4c0
9.9b5A
12.9b3V
10.7b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
7.2b5(*.f64 V l)
7.2b5(*.f64 V l)
Compiler

Compiled 467 to 210 computations (55% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6643206670269553e+291
2.1151099996918947e+304
0.0ms
1.05e-321
8.698233e-318
0.0ms
-3.3800163086230954e-101
-1.9578049840187385e-103
0.0ms
-2.3287121516469927e+255
-2.3802636375906618e+253
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes917.0ms (4.8%)

Counts
38 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l)))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

10 calls:

181.0ms
A
155.0ms
V
148.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
93.0ms
c0
75.0ms
(*.f64 V l)
Results
ErrorSegmentsBranch
14.3b4c0
9.9b5A
12.9b3V
10.7b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
7.2b5(*.f64 V l)
7.2b5(*.f64 V l)
Compiler

Compiled 448 to 204 computations (54.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.6643206670269553e+291
2.1151099996918947e+304
0.0ms
1.05e-321
8.698233e-318
0.0ms
-3.3800163086230954e-101
-1.9578049840187385e-103
0.0ms
-2.3287121516469927e+255
-2.3802636375906618e+253
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes706.0ms (3.7%)

Counts
36 → 5
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A l)) (sqrt.f64 V)))
(*.f64 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)) c0)
Outputs
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l)))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

10 calls:

108.0ms
A
104.0ms
c0
104.0ms
(*.f64 V l)
92.0ms
V
71.0ms
(*.f64 V l)
Results
ErrorSegmentsBranch
14.3b4c0
12.5b3A
12.9b3V
11.2b3l
10.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
9.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
9.9b3(/.f64 A (*.f64 V l))
9.9b3(/.f64 A (*.f64 V l))
8.6b5(*.f64 V l)
8.6b5(*.f64 V l)
Compiler

Compiled 430 to 200 computations (53.5% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.1819704629171252e+94
2.1801348335837355e+96
0.0ms
1.05e-321
8.698233e-318
0.0ms
-3.3800163086230954e-101
-1.9578049840187385e-103
0.0ms
-2.3287121516469927e+255
-2.3802636375906618e+253
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes1.1s (5.7%)

Counts
31 → 3
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
(sqrt.f64 (*.f64 (/.f64 1 l) (/.f64 (*.f64 c0 c0) (/.f64 V A))))
(/.f64 1 (*.f64 (/.f64 1 c0) (sqrt.f64 (/.f64 (*.f64 V l) A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (*.f64 (/.f64 1 A) (/.f64 l (/.f64 1 V))))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 (*.f64 (/.f64 1 A) (neg.f64 l)) (/.f64 -1 V)))))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)
Calls

10 calls:

252.0ms
c0
233.0ms
l
167.0ms
A
95.0ms
V
90.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Results
ErrorSegmentsBranch
14.3b4c0
14.7b3A
15.5b2V
12.3b5l
11.6b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
11.6b3(sqrt.f64 (/.f64 A (*.f64 V l)))
11.6b3(/.f64 A (*.f64 V l))
11.6b3(/.f64 A (*.f64 V l))
12.2b4(*.f64 V l)
12.2b4(*.f64 V l)
Compiler

Compiled 385 to 191 computations (50.4% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.071018567373007e+296
8.333044367112142e+297
0.0ms
0.0
5.05e-321
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes674.0ms (3.5%)

Counts
26 → 3
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
(/.f64 c0 (sqrt.f64 (/.f64 V (/.f64 A l))))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (*.f64 V (/.f64 l A)) -1/2))
(*.f64 c0 (pow.f64 (/.f64 (/.f64 A V) l) 1/2))
(*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0)
(sqrt.f64 (*.f64 A (*.f64 (/.f64 c0 l) (/.f64 c0 V))))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 V l)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 A (*.f64 l V)) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 c0 l) (*.f64 c0 (/.f64 A V))))
(sqrt.f64 (*.f64 (/.f64 c0 (/.f64 l c0)) (/.f64 A V)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 A V) l) (*.f64 c0 c0)))
(sqrt.f64 (*.f64 (/.f64 (/.f64 c0 (/.f64 l c0)) V) A))
(sqrt.f64 (/.f64 (*.f64 c0 c0) (*.f64 l (/.f64 V A))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 V) (/.f64 A l))))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 1 (*.f64 V l)) A)))
(*.f64 c0 (sqrt.f64 (*.f64 (/.f64 A V) (/.f64 1 l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 1 l) (/.f64 V A))))
(*.f64 c0 (/.f64 1 (sqrt.f64 (/.f64 l (/.f64 A V)))))
(/.f64 1 (/.f64 (sqrt.f64 (*.f64 V (/.f64 l A))) c0))
(*.f64 c0 (/.f64 1 (pow.f64 (/.f64 A (*.f64 l V)) -1/2)))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))
Calls

10 calls:

107.0ms
(*.f64 V l)
107.0ms
(*.f64 V l)
87.0ms
c0
76.0ms
l
63.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Results
ErrorSegmentsBranch
14.3b4c0
14.7b3A
15.5b2V
12.3b5l
11.7b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
11.6b3(sqrt.f64 (/.f64 A (*.f64 V l)))
11.6b3(/.f64 A (*.f64 V l))
11.6b3(/.f64 A (*.f64 V l))
12.2b4(*.f64 V l)
12.2b4(*.f64 V l)
Compiler

Compiled 321 to 152 computations (52.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
7.071018567373007e+296
8.333044367112142e+297
0.0ms
0.0
5.05e-321
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes273.0ms (1.4%)

Counts
5 → 4
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A))))
Calls

8 calls:

63.0ms
c0
54.0ms
l
34.0ms
A
29.0ms
V
27.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Results
ErrorSegmentsBranch
15.8b2c0
15.3b3A
15.8b2V
12.7b5l
11.9b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
11.9b3(sqrt.f64 (/.f64 A (*.f64 V l)))
11.9b3(/.f64 A (*.f64 V l))
12.6b4(*.f64 V l)
Compiler

Compiled 102 to 62 computations (39.2% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.2250554635472813e+294
+inf
0.0ms
2.09740943622398e-130
1.0343912553324248e-128
0.0ms
-4.0114259691473864e-308
-2.567565124211e-311
Compiler

Compiled 19 to 14 computations (26.3% saved)

regimes262.0ms (1.4%)

Accuracy

Total -16.7b remaining (-138.4%)

Threshold costs -16.7b (-138.4%)

Counts
4 → 4
Calls
Call 1
Inputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
(*.f64 (sqrt.f64 (/.f64 (/.f64 A V) l)) c0)
Outputs
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
(*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))
Calls

8 calls:

63.0ms
(*.f64 V l)
47.0ms
l
38.0ms
A
28.0ms
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
24.0ms
c0
Results
ErrorSegmentsBranch
16.0b2c0
15.3b3A
15.8b2V
12.7b5l
12.1b4(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
12.2b3(sqrt.f64 (/.f64 A (*.f64 V l)))
12.2b3(/.f64 A (*.f64 V l))
12.6b4(*.f64 V l)
Compiler

Compiled 94 to 58 computations (38.3% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.2250554635472813e+294
+inf
0.0ms
2.09740943622398e-130
1.0343912553324248e-128
0.0ms
-4.0114259691473864e-308
-2.567565124211e-311
Compiler

Compiled 19 to 14 computations (26.3% saved)

simplify107.0ms (0.6%)

Algorithm
egg-herbie
Rules
22×*-commutative_binary64
+-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0113967
1139967
2148967
3154967
4157967
5158967
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 20000000000000000404377582543118939771521926464287154822755537124160080099963286187173956550656) (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (/.f64 A (*.f64 V l)) 0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (/.f64 A (*.f64 V l)) 1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)))
(if (<=.f64 (/.f64 A (*.f64 V l)) 0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (/.f64 A (*.f64 V l)) 1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))
(if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) -8096090132292425/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1248699420126397/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))))
(if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) -8096090132292425/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1248699420126397/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Outputs
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 V (neg.f64 l))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (*.f64 (/.f64 (sqrt.f64 A) l) (/.f64 (sqrt.f64 A) V))))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 l (neg.f64 V))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -20000000000000001330293251784077024404771326911320976908787298030835333694183123784100048437476144137746460631060770586711684590915444743656162943995952194793889144970883957474817615854880173231735058974284480539885410778819330483862894400308606204866790619762130944) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6032057205060441/12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624) (*.f64 c0 (/.f64 (sqrt.f64 (neg.f64 A)) (sqrt.f64 (*.f64 V (neg.f64 l))))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (*.f64 c0 (*.f64 (sqrt.f64 A) (pow.f64 (*.f64 V l) -1/2))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 (sqrt.f64 (/.f64 A V)) c0) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (/.f64 (*.f64 c0 (sqrt.f64 (/.f64 A V))) (sqrt.f64 l)) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 (sqrt.f64 A) c0) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 1999999999999999915721804700692568264307103756193028567705035546458066308011144957252473074143807250296165225781973727428404914040084012839363052749931748355577247086899988970114516525323491896053535264551226099793920157922636301090836929322135983339163576571058010961411376392137707276468224) (/.f64 (*.f64 c0 (sqrt.f64 A)) (sqrt.f64 (*.f64 V l))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 20000000000000000404377582543118939771521926464287154822755537124160080099963286187173956550656) (*.f64 (pow.f64 (/.f64 (*.f64 V l) A) -1/2) c0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (*.f64 V l) -1999999999999999976905139389282906579782825695533667793354736930857696261802069818591759239817890633118585175139916931349309985855457249115766978327499080492713782258213467183862609667387277131256364612156226766545565568781988099212151532024379513329680384) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) -6304320991423117/315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 V l) 405/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (/.f64 (sqrt.f64 (/.f64 A V)) (sqrt.f64 l))) (if (<=.f64 (*.f64 V l) 20000000000000000404377582543118939771521926464287154822755537124160080099963286187173956550656) (*.f64 c0 (pow.f64 (/.f64 (*.f64 V l) A) -1/2)) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V)))))))
(if (<=.f64 (/.f64 A (*.f64 V l)) 0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (/.f64 A (*.f64 V l)) 1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2) c0)))
(if (<=.f64 (/.f64 A (*.f64 V l)) 0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (/.f64 A (*.f64 V l)) 1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (pow.f64 (*.f64 l (*.f64 V (/.f64 1 A))) -1/2))))
(if (<=.f64 (/.f64 A (*.f64 V l)) 0) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (/.f64 A (*.f64 V l)) 1000000000000000017652801462756379714374878780719864776839443139119744823869255243069012222883470359078822072829219411228534934402712624705615450492327979456500795456339201761949451160807447294527656222743617592048849967890105831362861792425329827928397252374398383022243308510390698430058459037696) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (/.f64 c0 (sqrt.f64 (*.f64 l (/.f64 V A))))))
(if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) -8096090132292425/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1248699420126397/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (/.f64 c0 (sqrt.f64 (*.f64 V (/.f64 l A)))))))
(if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) -8096090132292425/202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 1248699420126397/3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))) (if (<=.f64 (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) 2000000000000000132872935482496206237094312341172584908970922214753713493255768101167089780693375139608812241567134921336075488584322101781755750774742240399521541760156078250259598945212267909879768657149226586411367871939134697181462712041438531269934236247503274787037183937480902858990682112) (*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l)))) (*.f64 c0 (sqrt.f64 (/.f64 (/.f64 A l) V))))))
(*.f64 c0 (sqrt.f64 (/.f64 A (*.f64 V l))))
Compiler

Compiled 680 to 319 computations (53.1% saved)

soundness0.0ms (0%)

end759.0ms (4%)

Compiler

Compiled 798 to 250 computations (68.7% saved)

Profiling

Loading profile data...