0
  • Why some sets are countable and some are not countable? Say regular set are countable but how (0+1)* will be countable? It is an infinite string, then how it could be a countable set?
  • How the set of all non-decreasing functions from N to N are countable?
  • How the set of all finite partitions of N are uncountable?
Srestha1
  • 13
  • 6

1 Answers1

0

First let's clean up a common misconception: (0+1)* is not an infinite string. It's a language of an infinite number of finite strings. The distinction is important: any given string from the language is finite, but there are an infinite number of them.

L=(0+1)* means L={'', '0', '1', '00', '01', '10', '11', etc}. This also shows how a language can be considered countable, if you list all of the words of length 0, then 1, then 2, etc. Every word in the language has a position in this set and can be mapped to the natural numbers.

All regular languages are countable sets of words. Finite languages are trivially countable. Infinite languages are countable because the corresponding DFA can be walked over, enumerating the entire language in an ordered manner, allowing all strings to be mapped to the natural numbers.

The other two questions are more generally mathematical rather than computer science. This should help: https://math.stackexchange.com/questions/1396896/number-of-non-decreasing-functions. For the last question, this might help: https://en.wikipedia.org/wiki/Cantor%27s_theorem

Welbog
  • 59,154
  • 9
  • 110
  • 123