Details

Time bar (total: 2.4min)

analyze2.3s (1.6%)

Algorithm
search
Search
TrueOtherFalseIter
0%74.9%25.1%0
0%74.9%25.1%1
0%74.9%25.1%2
18.7%56.2%25.1%3
37.5%37.5%25.1%4
42.1%32.8%25.1%5
46.8%28.1%25.1%6
48%26.9%25.1%7
49.2%25.8%25.1%8
49.5%25.5%25.1%9
49.8%25.2%25.1%10
49.8%25.2%25.1%11
49.8%25.1%25.1%12
49.9%25%25.1%13
49.9%25%25.1%14
Compiler

Compiled 127 to 112 computations (11.8% saved)

sample1.9s (1.3%)

Algorithm
intervals
Results
1.6s128×body8192exit
105.0ms256×body128valid
7.0ms386×pre128true
1.0msbody128invalid
Compiler

Compiled 252 to 223 computations (11.5% saved)

simplify47.0ms (0%)

Algorithm
egg-herbie
Rules
388×associate-+l+_binary64
296×associate-+r+_binary64
271×distribute-rgt-in_binary64
266×distribute-lft-in_binary64
224×associate-*r*_binary64
Counts
1 → 2
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
061156
1160147
2606119
33454115
44863115
54787115

prune11.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
1.7b
Counts
3 → 2
Alt Table
StatusErrorProgram
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z))) (exp.f64 (+.f64 z -15/2))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (-.f64 1 z))) (/.f64 -3147848041806007/2500000000000 (-.f64 2 z))) (/.f64 7713234287776531/10000000000000 (-.f64 3 z))) (/.f64 -883075145810703/5000000000000 (-.f64 4 z))) (/.f64 2501468655737381/200000000000000 (-.f64 5 z))) (/.f64 -3464277381643003/25000000000000000 (-.f64 6 z))) (/.f64 2496092394504893/250000000000000000000 (-.f64 7 z))) (/.f64 3764081837873279/25000000000000000000000 (-.f64 8 z)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
Compiler

Compiled 596 to 508 computations (14.8% saved)

localize54.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2))))
1.0b
(sqrt.f64 (*.f64 (PI.f64) 2))
2.8b
(+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2)))
5.8b
(-.f64 (-.f64 1 z) 1)

series33.0ms (0%)

Counts
4 → 36
Calls

4 calls:

29.0ms
(*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2))))
3.0ms
(+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2)))
1.0ms
(-.f64 (-.f64 1 z) 1)
0.0ms
(sqrt.f64 (*.f64 (PI.f64) 2))

rewrite108.0ms (0.1%)

Algorithm
rewrite-expression-head
Rules
49×*-un-lft-identity_binary64
40×add-sqr-sqrt_binary64
27×prod-diff_binary64
24×add-cube-cbrt_binary64
14×add-log-exp_binary64
Counts
4 → 125
Calls

4 calls:

63.0ms
(*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2))))
26.0ms
(+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2)))
10.0ms
(-.f64 (-.f64 1 z) 1)
2.0ms
(sqrt.f64 (*.f64 (PI.f64) 2))

simplify137.0ms (0.1%)

Algorithm
egg-herbie
Rules
397×associate-*r*_binary64
385×fma-neg_binary64
333×associate-*l*_binary64
318×cancel-sign-sub-inv_binary64
290×times-frac_binary64
Counts
161 → 202
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03243671
18962770
231372758
349012758
448362758

prune3.1s (2.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New104481052
Fresh101
Picked101
Done000
Total104681054
Error
0.9b
Counts
1054 → 8
Alt Table
StatusErrorProgram
2.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) 2))) (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) 2)))) (cbrt.f64 (sqrt.f64 (*.f64 (PI.f64) 2)))) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
30.3b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (fma.f64 (+.f64 1 (sqrt.f64 z)) (-.f64 1 (sqrt.f64 z)) -1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (fma.f64 (sqrt.f64 (-.f64 1 z)) (sqrt.f64 (-.f64 1 z)) -1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z)) (sqrt.f64 (*.f64 2 (PI.f64)))) (exp.f64 (-.f64 z 7))) (exp.f64 (neg.f64 1/2))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (+.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2)))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (cbrt.f64 (pow.f64 (*.f64 (exp.f64 (+.f64 z -15/2)) (*.f64 (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z)) (sqrt.f64 (*.f64 2 (PI.f64))))) 3)) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
Compiler

Compiled 142118 to 119604 computations (15.8% saved)

localize67.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000)
1.0b
(sqrt.f64 (*.f64 (PI.f64) 2))
2.3b
(+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000))
5.8b
(-.f64 (-.f64 1 z) 1)

series6.0ms (0%)

Counts
2 → 12
Calls

2 calls:

6.0ms
(+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000))
0.0ms
(*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000)

rewrite60.0ms (0%)

Algorithm
rewrite-expression-head
Rules
21×flip-+_binary64
21×flip3-+_binary64
20×associate-*l/_binary64
16×frac-add_binary64
pow1_binary64
Counts
2 → 59
Calls

2 calls:

44.0ms
(+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000))
3.0ms
(*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000)

simplify165.0ms (0.1%)

Algorithm
egg-herbie
Rules
359×distribute-rgt-in_binary64
351×distribute-lft-in_binary64
303×associate-*l/_binary64
252×associate-*l*_binary64
238×associate-*r*_binary64
Counts
71 → 109
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02225271
18074184
234014057
351614057

prune11.0s (7.5%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New169031693
Fresh437
Picked101
Done000
Total169561701
Error
0.2b
Counts
1701 → 6
Alt Table
StatusErrorProgram
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z)) (sqrt.f64 (*.f64 2 (PI.f64)))) (exp.f64 (-.f64 z 7))) (exp.f64 (neg.f64 1/2))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
30.3b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (fma.f64 (+.f64 1 (sqrt.f64 z)) (-.f64 1 (sqrt.f64 z)) -1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3))))) (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (*.f64 (*.f64 (-.f64 (*.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 9999999999998099/10000000000000000 3)) (*.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3))) (-.f64 (*.f64 (-.f64 (-.f64 1 z) 1) (-.f64 (-.f64 1 z) 1)) (*.f64 2 2))) (-.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)))))) (*.f64 (*.f64 (-.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (-.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (-.f64 (*.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000)) (*.f64 (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)))) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)))))) -3147848041806007/2500000000000))) (*.f64 (*.f64 (-.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (-.f64 (-.f64 (-.f64 1 z) 1) 2)) (-.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
Compiler

Compiled 373529 to 325308 computations (12.9% saved)

localize86.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(sqrt.f64 (*.f64 (PI.f64) 2))
1.0b
(pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)
1.6b
(fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3)))))
5.8b
(-.f64 (-.f64 1 z) 1)

series16.0ms (0%)

Counts
2 → 24
Calls

2 calls:

11.0ms
(fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3)))))
5.0ms
(pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)

rewrite25.0ms (0%)

Algorithm
rewrite-expression-head
Rules
102×cube-prod_binary64
102×unpow-prod-down_binary64
81×*-un-lft-identity_binary64
81×add-sqr-sqrt_binary64
72×times-frac_binary64
Counts
2 → 141
Calls

2 calls:

10.0ms
(pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)
1.0ms
(fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3)))))

simplify202.0ms (0.1%)

Algorithm
egg-herbie
Rules
652×fma-def_binary64
271×cube-div_binary64
266×associate-*l*_binary64
256×associate-*r*_binary64
160×sqr-pow_binary64
Counts
165 → 112
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02685170
18444489
235904401
349904401

prune21.7s (14.8%)

Pruning

6 alts after pruning (6 fresh and 0 done)

PrunedKeptTotal
New123421236
Fresh145
Picked101
Done000
Total123661242
Error
0.2b
Counts
1242 → 6
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3))))) (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (-.f64 1 z) 1)) (cbrt.f64 (-.f64 (-.f64 1 z) 1))) (cbrt.f64 (-.f64 (-.f64 1 z) 1))) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.4b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3))))) (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z)) (sqrt.f64 (*.f64 2 (PI.f64)))) (exp.f64 (-.f64 z 7))) (exp.f64 (neg.f64 1/2))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
30.3b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (fma.f64 (+.f64 1 (sqrt.f64 z)) (-.f64 1 (sqrt.f64 z)) -1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
Compiler

Compiled 357287 to 308796 computations (13.6% saved)

localize109.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(sqrt.f64 (*.f64 (PI.f64) 2))
1.0b
(pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)
1.6b
(fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3)))))
5.8b
(-.f64 (-.f64 1 z) 1)

prune27.1s (18.4%)

Pruning

6 alts after pruning (5 fresh and 1 done)

PrunedKeptTotal
New140601406
Fresh055
Picked011
Done000
Total140661412
Error
0.2b
Counts
1412 → 6
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (fma.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3))))) (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (*.f64 (*.f64 (cbrt.f64 (-.f64 (-.f64 1 z) 1)) (cbrt.f64 (-.f64 (-.f64 1 z) 1))) (cbrt.f64 (-.f64 (-.f64 1 z) 1))) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (+.f64 (*.f64 (+.f64 (pow.f64 9999999999998099/10000000000000000 3) (pow.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) 3)) (+.f64 (-.f64 (-.f64 1 z) 1) 2)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) -3147848041806007/2500000000000)) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.4b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (/.f64 (/.f64 (+.f64 (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (*.f64 (+.f64 1 (-.f64 1 z)) (+.f64 999999999998289100000001300968359999422933801116164550426611741318963901105993089974933346576428185062242720299005322189018222164068639114022899/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 3) 3)))) (*.f64 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))) (*.f64 -3147848041806007/2500000000000 (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) 3))))) (*.f64 (fma.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000)) (fma.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) (+.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) -9999999999998099/10000000000000000) -99999999999961980000000003613801/100000000000000000000000000000000) 9999999999992396000000002168280599999725206571960013059557667601/10000000000000000000000000000000000000000000000000000000000000000) (+.f64 999999999998859400000000542070149999862603285980019589336501400010426852433477134642558734161401/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (-.f64 (pow.f64 (/.f64 6765203681218851/10000000000000 (-.f64 1 z)) 6) (/.f64 309629712517217998603152085463079349412952868162435643784923646795454570979604242627917440330249/1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 (pow.f64 (-.f64 1 z) 3)))))) (*.f64 (+.f64 (*.f64 9999999999998099/10000000000000000 9999999999998099/10000000000000000) (-.f64 (*.f64 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1)) (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (*.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))))) (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (log.f64 (exp.f64 (neg.f64 z))) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
1.7b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (pow.f64 (-.f64 15/2 z) (-.f64 1/2 z)) (sqrt.f64 (*.f64 2 (PI.f64)))) (exp.f64 (-.f64 z 7))) (exp.f64 (neg.f64 1/2))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
30.3b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 (PI.f64) 2)) (pow.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2) (+.f64 (-.f64 (-.f64 1 z) 1) 1/2))) (exp.f64 (neg.f64 (+.f64 (+.f64 (-.f64 (-.f64 1 z) 1) 7) 1/2)))) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (fma.f64 (+.f64 1 (sqrt.f64 z)) (-.f64 1 (sqrt.f64 z)) -1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 3))) (/.f64 -883075145810703/5000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 4))) (/.f64 2501468655737381/200000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 5))) (/.f64 -3464277381643003/25000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 6))) (/.f64 2496092394504893/250000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 7))) (/.f64 3764081837873279/25000000000000000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 8)))))
Compiler

Compiled 426205 to 368328 computations (13.6% saved)

regimes25.0s (17%)

Accuracy

Total 0.2b remaining (42.2%)

Threshold costs 0.2b (42.2%)

Counts
1413 → 1
Compiler

Compiled 670586 to 594450 computations (11.4% saved)

simplify65.0ms (0%)

Algorithm
egg-herbie
Rules
116×cancel-sign-sub-inv_binary64
110×distribute-rgt-neg-in_binary64
71×distribute-lft-neg-in_binary64
63×neg-sub0_binary64
63×neg-mul-1_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0101436
1163434
2190432
3211432
4221432
5227432
6239432
7247432
8260432
9275432
10293432
11321432
12355432
13403432
14461432
15519432
16575432
17621432
18661432
19692432
20714432
21727432
22734432
23736432
24712432

end5.0ms (0%)

Compiler

Compiled 287 to 253 computations (11.8% saved)

sample53.6s (36.5%)

Algorithm
intervals
Results
48.5s3857×body8192exit
3.2s8000×body128valid
237.0ms11949×pre128true
45.0ms92×body128invalid
Compiler

Compiled 1559 to 1379 computations (11.5% saved)

Profiling

Loading profile data...