Phew! The only difference I can find between +0.2Ni's and 1.x's infinite growth detection is the extra z's. To fix that, just replace the powerlyse() function in +0.2Ni with this version (with extra z's inserted):A for awesome wrote:I'm sorry about that. I had no idea that there was any bug in the infinite-growth detection; I tried to paste all changes between 1.x from 0.x when I made +0.2Ni, but it appears I missed something. What is the bug, anyway?calcyman wrote:Erm... why is this called z_LINEAR rather than zz_LINEAR?
https://catagolue.appspot.com/object/z_ ... 3678s34678
This has the worrying implication that +0.*i is actually forked from an older (buggier) version of apgsearch instead of the latest version.
Code: Select all
def powerlyse(stepsize, numsteps, ruletype): if ruletype: g.setalgo("HashLife") else: g.setalgo("RuleLoader") g.setbase(2) g.setstep(stepsize) poplist = *numsteps poplist = int(g.getpop()) pointlist =  for i in xrange(1, numsteps, 1): g.step() poplist[i] = int(g.getpop()) + poplist[i-1] if (i % 50 == 0): g.fit() g.update() if (i > numsteps/2): pointlist.append((math.log(i),math.log(poplist[i]+1.0))) power = regress(pointlist) if (power < 1.10): return "unidentified" elif (power < 1.65): return "zz_REPLICATOR" elif (power < 2.05): return "zz_LINEAR" elif (power < 2.8): return "zz_EXPLOSIVE" else: return "zz_QUADRATIC"