In the Wikipedia article on Automata theory there is a diagram that suggests that combinational logic recognizes a proper subset of the languages that a regular expression recognizes. Is this in fact the case?
1 Answers
The set of languages which can be recognised by combinational logic (to the extent that it's reasonable to talk about languages being recognised by combinational logic) is a proper subset of the set of languages recognised by DFAs. However, the two sets have the same cardinality ($\aleph_0$); both are isomorphic with $\mathbb{N}$.
Unlike DFAs and the other automaton in that diagram, combinational logic automaton have no way of dealing with sequential input. Every combinational circuit has a predefined finite number of boolean inputs. That allows the construction of a combinational circuit for any finite language. Every finite language is regular, but not all regular languages are finite. Hence, the set of finite languages is a proper subset of the set of regular languages.
A finite language with alphabet $\Sigma$ can be precisely described as a finite string by adding two symbols to the language ("separator" and "end-marker") and then listing the members in some order, separated by the separator and terminated by the end-marker. Each such representation corresponds to some natural number written in base $|\Sigma|+2$. That's similar to the representation of an arbitrary regular language by writing out its regular expression, also using an alphabet which augments $\Sigma$ with a few special characters.
That's not a one-to-one mapping; a strict proof of the assertion that both of these sets are isomorphic to $\mathbb{N}$ is left as an exercise. (But see this question if necessary.)

- 1,195
-
All formal languages with finite alphabets and finite length strings are countable. That isn't something that is peculiar to DFAs and combinational logic. – Q the Platypus Jan 17 '23 at 00:57
-
Can you give an example of a language that can be recognized by a DFA that could not be recognized by combinational logic? – Shadow43375 Jan 17 '23 at 01:20
-
1@Shadow43375 How about the language $a^*$ over the alphabet ${a,b}.$ Any combinational logic automaton has a limit to how many characters of input it can read (due to the finite number of boolean inputs mentioned above). – David K Jan 17 '23 at 03:26
-
@QthePlatypus: I'm not talking about particular formal languages. What I said is that the set of all regular languages is countable. That's not a particularly profound statement, but I think it's more interesting than the statement that every regular language is countable. The set of all formal languages (that is, the set of subsets of ${0, 1}^*$) is certainly not countable. But the set of all (finite) grammars is countable, and therefore so is the set of all formal languages described by a generative grammar. (And, indeed, that goes beyond just finite and regular languages.) – rici Jan 17 '23 at 04:12