2 = # {0, {0}}

Sure this can be stated as defining a number? Yes if you are able to take it as just symbols on the RS. Hewever we need to understand the symbols, which requires understanding # as "the number of the set" and to connect 2 with the RS we need to consider # as an operator instructing us to count the sets in sets. But counting relies on numbers already existing.

0 is a number

1 = 0'

2 = 1'

ect.

suffers from the same problem (counting in 1's before 1 is defined).

With these definitions it seems we may need to admit circular definitions for the primitive entities to operate on.