سوال ۵۱ کنکور ارشد مهندسی کامپیوتر ۱۴۰۰
کدامیک از گزارههای زیر درست است؟
پاسخ صحیح: گزینهٔ B — مجموعه تمام زبانهای تصمیمناپذیر روی یک الفبا ناشمارا است.
Fix a finite, non-empty alphabet . Two cardinality facts settle every option.
Strings are countable. Every string is finite, and is a countable union of finite sets, so (enumerate by length, then lexicographically).
Languages are uncountable. A language is any subset of , so the set of all languages is the power set . By Cantor's theorem, which is uncountable (the cardinality of the continuum).
Now check each option.
Option 1 — false. Every Turing machine has a finite description (finite state set, finite tape alphabet, finite transition table), so it can be encoded as a finite string. The set of all TM encodings is a subset of a countable set, hence the set of Turing machines is countable.
Option 2 — true. The decidable (recursive) languages are exactly those accepted by a TM that always halts; since TMs are countable, the decidable languages form a countable set. The undecidable languages are Subtracting a countable set from an uncountable set still leaves an uncountable set (an uncountable set is not a union of two countable sets). Hence the undecidable languages are uncountable.
Option 3 — false. "All strings over an alphabet" is exactly , which is countable, not uncountable.
Option 4 — false. Regular languages are described by finite DFAs / regular expressions, so they form a countable set. Non-regular languages , again uncountable minus countable, so they are uncountable — not countable.
Only option 2 holds.
Exam trick: Anything with a finite description (TMs, DFAs, grammars, decidable languages) forms a countable set; the set of all languages over is and is uncountable. So "most" languages — undecidable, non-regular, non-context-free — are uncountable, because subtracting a countable set from an uncountable one keeps it uncountable.