Details

Time bar (total: 1.2min)

analyze2.7s (3.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.0min (82.5%)

Results
55.8s4059×body8192exit
4.7s8256×body128valid
46.0ms87×body128invalid
Compiler

Compiled 378 to 334 computations (11.6% saved)

simplify48.0ms (0.1%)

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

prune19.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
1.6b
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 (+.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 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)))))
Compiler

Compiled 596 to 508 computations (14.8% saved)

localize55.0ms (0.1%)

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)))
4.7b
(-.f64 (-.f64 1 z) 1)

series29.0ms (0%)

Counts
4 → 36
Calls

4 calls:

25.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))))
2.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))

rewrite83.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
582×log1p-udef_binary64
326×log1p-expm1-u_binary64
326×expm1-log1p-u_binary64
317×add-log-exp_binary64
315×add-exp-log_binary64
Counts
4 → 79
Calls

4 calls:

81.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))))
81.0ms
(sqrt.f64 (*.f64 (PI.f64) 2))
81.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)))
81.0ms
(-.f64 (-.f64 1 z) 1)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02883
168466
2493866
3570466

simplify64.0ms (0.1%)

Algorithm
egg-herbie
Rules
901×fma-def_binary64
599×*-commutative_binary64
365×associate-+l+_binary64
323×sub-neg_binary64
270×associate-*r*_binary64
Counts
115 → 103
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
01331007
13971005
21402893
34603893
45005893

prune845.0ms (1.1%)

Pruning

8 alts after pruning (8 fresh and 0 done)

PrunedKeptTotal
New3258333
Fresh101
Picked101
Done000
Total3278335
Error
0.3b
Counts
335 → 8
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
1.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (fma.f64 (sqrt.f64 (-.f64 1 z)) (sqrt.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)))))
2.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 479507597606835099/10000000000000000 (/.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)))))
2.0b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sqrt.f64 (*.f64 2 (PI.f64)))) 3) (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 (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 (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 (sqrt.f64 (-.f64 1 z)) (sqrt.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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (cbrt.f64 (pow.f64 (neg.f64 z) 3)) 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 43483 to 36635 computations (15.7% saved)

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(sqrt.f64 (*.f64 2 (PI.f64)))
2.0b
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
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)))
4.7b
(-.f64 (-.f64 1 z) 1)

series745.0ms (1%)

Counts
2 → 12
Calls

2 calls:

745.0ms
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
0.0ms
(sqrt.f64 (*.f64 2 (PI.f64)))

rewrite65.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
311×log1p-udef_binary64
199×add-sqr-sqrt_binary64
197×log1p-expm1-u_binary64
197×expm1-log1p-u_binary64
187×add-cbrt-cube_binary64
Counts
2 → 62
Calls

2 calls:

63.0ms
(sqrt.f64 (*.f64 2 (PI.f64)))
63.0ms
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02042
142934
2443234
3485334

simplify63.0ms (0.1%)

Algorithm
egg-herbie
Rules
981×fma-neg_binary64
758×fma-def_binary64
499×*-commutative_binary64
366×sub-neg_binary64
263×associate-+l+_binary64
Counts
74 → 71
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
092797
1303779
21141675
33672675
44926675
55023675

prune911.0ms (1.2%)

Pruning

8 alts after pruning (7 fresh and 1 done)

PrunedKeptTotal
New2894293
Fresh437
Picked011
Done000
Total2938301
Error
0.2b
Counts
301 → 8
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
1.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (fma.f64 (sqrt.f64 (-.f64 1 z)) (sqrt.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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (PI.f64))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (PI.f64))))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
2.1b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (fma.f64 2076511864126339/4000000000000 (*.f64 z z) (fma.f64 z 904338909853211/2500000000000 479507597606835099/10000000000000000)) (/.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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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 (fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (cbrt.f64 (pow.f64 (neg.f64 z) 3)) 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 35807 to 29070 computations (18.8% saved)

localize54.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.0b
(pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
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)))
4.5b
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.f64 (-.f64 1 z)) -1)
4.7b
(-.f64 (-.f64 1 z) 1)

series85.0ms (0.1%)

Counts
1 → 12
Calls

1 calls:

85.0ms
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.f64 (-.f64 1 z)) -1)

rewrite65.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
703×log1p-expm1-u_binary64
703×expm1-log1p-u_binary64
135×expm1-udef_binary64
134×log1p-udef_binary64
132×prod-diff_binary64
Counts
1 → 25
Calls

1 calls:

64.0ms
(fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.f64 (-.f64 1 z)) -1)
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
097
11787
217907
349557
448847

simplify94.0ms (0.1%)

Algorithm
egg-herbie
Rules
706×log-prod_binary64
416×associate-*l*_binary64
394×associate-*r*_binary64
302×div-sub_binary64
268×fma-def_binary64
Counts
37 → 31
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02172
15568
211566
327638
484138
5384138
6484738
7437638
8456738

prune1.0s (1.4%)

Pruning

8 alts after pruning (6 fresh and 2 done)

PrunedKeptTotal
New2770277
Fresh066
Picked011
Done011
Total2778285
Error
0.2b
Counts
285 → 8
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
1.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (fma.f64 (sqrt.f64 (-.f64 1 z)) (sqrt.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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (PI.f64))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (PI.f64))))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
2.1b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (fma.f64 2076511864126339/4000000000000 (*.f64 z z) (fma.f64 z 904338909853211/2500000000000 479507597606835099/10000000000000000)) (/.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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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 (fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.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 (-.f64 (-.f64 1 z) 1) 1))) (/.f64 -3147848041806007/2500000000000 (+.f64 (-.f64 (-.f64 1 z) 1) 2))) (/.f64 7713234287776531/10000000000000 (+.f64 (cbrt.f64 (pow.f64 (neg.f64 z) 3)) 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 35593 to 29002 computations (18.5% saved)

localize49.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.0b
(sqrt.f64 (PI.f64))
2.0b
(pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
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)))
4.7b
(-.f64 (-.f64 1 z) 1)

series728.0ms (1%)

Counts
2 → 12
Calls

2 calls:

728.0ms
(pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
0.0ms
(sqrt.f64 (PI.f64))

rewrite65.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
325×log1p-udef_binary64
208×add-sqr-sqrt_binary64
206×log1p-expm1-u_binary64
206×expm1-log1p-u_binary64
196×add-cbrt-cube_binary64
Counts
2 → 54
Calls

2 calls:

64.0ms
(sqrt.f64 (PI.f64))
64.0ms
(pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3)
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02139
145031
2439331
3477531

simplify67.0ms (0.1%)

Algorithm
egg-herbie
Rules
981×fma-neg_binary64
758×fma-def_binary64
499×*-commutative_binary64
366×sub-neg_binary64
263×associate-+l+_binary64
Counts
66 → 63
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
092797
1303779
21141675
33672675
44926675
55023675

prune1.1s (1.5%)

Pruning

7 alts after pruning (5 fresh and 2 done)

PrunedKeptTotal
New2823285
Fresh325
Picked101
Done022
Total2867293
Error
0.2b
Counts
293 → 7
Alt Table
StatusErrorProgram
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (cbrt.f64 (pow.f64 (neg.f64 z) 3)) 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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 9999999999998099/10000000000000000 (/.f64 6765203681218851/10000000000000 (+.f64 (fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.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)))))
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
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 (fma.f64 (sqrt.f64 (-.f64 1 z)) (sqrt.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 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 2 (PI.f64))) 2)) (sqrt.f64 (cbrt.f64 (*.f64 2 (PI.f64))))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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)))))
0.5b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (sqrt.f64 (*.f64 2 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/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 (fma.f64 (pow.f64 (cbrt.f64 (-.f64 1 z)) 2) (cbrt.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)))))
2.1b
(*.f64 (/.f64 (PI.f64) (sin.f64 (*.f64 (PI.f64) z))) (*.f64 (pow.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 2) (sqrt.f64 (PI.f64))) (pow.f64 (+.f64 (neg.f64 z) 15/2) (+.f64 (neg.f64 z) 1/2))) (exp.f64 (neg.f64 (+.f64 (neg.f64 z) 15/2)))) 3) 1/3) (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (+.f64 (fma.f64 2076511864126339/4000000000000 (*.f64 z z) (fma.f64 z 904338909853211/2500000000000 479507597606835099/10000000000000000)) (/.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 34158 to 27453 computations (19.6% saved)

regimes3.4s (4.6%)

Accuracy

Total 0.2b remaining (42.3%)

Threshold costs 0.2b (42.3%)

Counts
469 → 1
Compiler

Compiled 111710 to 96700 computations (13.4% saved)

simplify30.0ms (0%)

Algorithm
egg-herbie
Rules
122×cancel-sign-sub-inv_binary64
89×distribute-rgt-neg-in_binary64
59×distribute-neg-in_binary64
57×distribute-lft-neg-in_binary64
56×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0714294967295
11074294967295
21204294967295
31314294967295
41374294967295
51494294967295
61574294967295
71704294967295
81854294967295
92034294967295
102314294967295
112594294967295
122894294967295
133294294967295
143714294967295
154134294967295
164554294967295
174974294967295
185404294967295
195754294967295
205944294967295
216034294967295
226054294967295
235804294967295

end508.0ms (0.7%)

Compiler

Compiled 1061 to 915 computations (13.8% saved)

Profiling

Loading profile data...