Generate some rough numbers Background

A number n can be described as B-rough if all of the prime factors of n strictly exceed B.

The Challenge

Given two positive integers B and k, output the first k B-rough numbers.

Examples

Let f(B, k) be a function which returns the set containing the first k B-rough numbers.

&gt; f(1, 10)
1, 2, 3, 4, 5, 6, 7, 8, 9, 10

&gt; f(2, 5)
1, 3, 5, 7, 9

&gt; f(10, 14)
1, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59
Python 3, 80, 75 bytes



lambda B,k:[i for i in range(1,-~B*k)if all(i%j for j in range(2,B+1))][:k]


Try it online!

Thanks to shooqie for saving 5 bytes.

This assumes that the k'th B-rough number will never exceed \$B * k\$, which I don't know how to prove, but seems like a fairly safe assumption (and I can't find any counterexamples).

Alternate solution:

Python 2, 78 bytes



B,k=input()
i=1
while k:
 if all(i%j for j in range(2,B+1)):print i;k-=1
 i+=1


Try it online!

This solution does not make the above solution. And is much more efficient.