Distinguishable pairs are a pair of strings that can be prepended onto any string, and will result in one of them belonging to a language, while the other does not. Non-distinguishable pairs either both belong to a language or are both rejected. More stronger, prepending a non-distinguishable pair to any string will make the resulting pair either both accepted or both rejected.
Definition
Distinguishable Pair ^definition
Let be a language. Let be formula that do not necessarily have to belong to . Then, and are distinguishable in iff:
- is known as the distinguishing suffix
- The distinguishing pair is represented as
Again, a distinguishable pair for a language need not necessarily belong to the language!
That is, we could have a distinguishable pair for with both and
Theorems
T1: A DFA has unique resultant states for a distinguishing pair ^t1
Let be a language and be a DFA. For every distinguishing pair in L:
- See the definition of a DFA recognising a language here.
- is resulting state after applying the extended transition function on (the initial state of ) with the string
This means any DFA needs at least 2 states to recognise , if contains a distinguishing pair.
Proof
From the memorylessness lemma:
Then, for the FSA, , we can use a proof by contrapositive:
The contrapositive of the memorylessness lemma states that:
If means that either accepts both and or rejects both and , then the negation of this would mean that accepts one and rejects the other.
So if we assume that accepts one of or and rejects the other, we get a language, generated by where one of or is in and the other one is not.
This is our definition of a distinguishable pair!
So, if we assume a distinguishable pair, then it implies that , which is what we set out to prove.
C1: A language with a distinguishing pair cannot be recognised by the single-state FSA
From theorem 1, a DFA recognising where has a distinguishing pair need at least two states. Then, the single-state FSA (having only one state) cannot recognise it.
Examples
Distinguishable & Non-distinguishable pairs
Let be the language given by:
Are the strings and distinguishable in ?
Are the strings and distinguishable in ?
Solution
- We can use the distinguishing suffix :
Hence, and are distinguishing pairs in .
- We can try to find a distinguishing suffix. If none exist, the pair must be non-distinguishable.
First, note that would be essentially just taking the strings ‘as is’. In this case they are both in , so that won’t work.
If we take as anything but , attaching it to the ends of and would make them both not belong to .
But if is , (for example, ) then attaching it to the end would make:
So there is no possible suffix and the strings are non-distinguishable in