Laissez
Existe-t-il une machine de Turing R qui décide (je ne veux pas dire reconnaît) la langue ?
Il semble que la même technique utilisée pour montrer que devrait également fonctionner ici.
Laissez
Il semble que la même technique utilisée pour montrer que devrait également fonctionner ici.
Réponses:
Par marquage, vous entendez probablement une analyse d'accessibilité - à la recherche d'un chemin allant de l'état initial à un état acceptant. En effet, la langue d'un DFA est vide si ce chemin n'existe pas.
Commençons par un exemple expliquant pourquoi cela échoue dans les MT. Considérons une MT qui, en , ignore son entrée, mais écrit un sur sa bande, déplace la tête vers la droite et passe à l'état q 1 , puis en q 1, elle ignore à nouveau l'entrée, écrit a , déplace la tête vers la gauche et va à q 2 . Dans q 2 , s'il lit a , alors il écrit a , déplace la tête vers la droite et revient à q 1 .
C'est, la machine écrit juste et alterne entre deux états ( q 1 et q 2 ) et a toujours deux à côté d' un « s sur la bande.
Nous ajoutons maintenant une transition de qui, lors de la lecture de b, passe à un état d'acceptation et s'arrête.
La langue de cette machine est vide. En effet, la course est toujours bloquée dans la boucle et n'atteindra jamais l'état d'acceptation. Pourtant, il existe une voie étatique vers un état acceptant. Alors qu'est-ce qui a mal tourné?
Eh bien, intuitivement, `` l'état '' d'une MT n'est pas suffisamment informatif pour décrire la suite de la course. Pour avoir toutes les informations, vous avez besoin de la configuration de la MT, qui comprend l'état, la position de la tête et le contenu de la bande. Si vous trouvez un chemin de configuration (qui est appelé une exécution ) vers une configuration acceptante, alors la langue n'est pas vide et c'est une condition siff.
Le problème avec l'utilisation de l'analyse d'accessibilité sur le graphique de configuration est qu'elle peut être infinie. C'est pourquoi décider du vide du langage est indécidable.
C'est aussi pourquoi le non-vide du langage est reconnaissable - vous pouvez effectuer un BFS sur le graphique de configuration infini. S'il existe un chemin vers un état acceptant, vous le trouverez éventuellement. S'il n'y en a pas, cependant, vous pouvez vous retrouver coincé dans une recherche infinie.
est indécidable à cause duthéorèmedeRice , qui déclare que les propriétés non triviales des fonctions partielles ne sont pas décidables.
Cela signifie que les fonctions calculées par les éléments de ont une propriété non triviale. Par conséquent, A n'est pas décidable.
n'est décidable que dans l'hypothèse où les DFA sont encodés d'une manière spéciale comme une table de transition d'état ou etc. (nous ne pouvons pas décider si une MT n'accepte que des langues régulières, à cause du théorème de Rice!). Dans ce casthéorème de riz n'est pas applicable parce que le codage particulier d'un élément est nécessaire pour décider E . Nous ne décidons donc pas uniquement des fonctions partielles.
(C'est-à-dire si le problème était, décider si une MT particulière est un DFA - ou DFA calculable - et le langage accepté par elle est vide, serait indécidable via le théorème de Rice. Notez que dans ce cas A = E .)
Autre indice: essayez de réduire le problème d'arrêt à .
(L'astuce d'origine est d'utiliser le théorème de Rice, mais dans ce cas, une preuve directe est également assez simple.)
Lemme 1 : Si L est indécidable, le complément de L. l'est aussi
On sait que le problème d'arrêt, est indécidable. Par conséquent, selon le complément du lemme 1 du problème d'arrêt, est également indécidable.
=
=
=
Supposons que est décidable. Nous réduirons à - en d' autres termes , nous montrerons comment construire une machine de Turing qui décide à l' aide du TM, qui décide . Cela nous donne une contradiction, car nous savons que est indécidable, et donc cannot exist. The word “reduce” simply means solving a given problem by converting it into another problem which we already know to solve. So, the Turing Machine for can be constructed as follows:
= “on input
1. Construct the code for a TM, that does the following:
= "on input
1. Simulate on .
2. Accept if halts."
2. Run on
3. Accept if accepts, reject otherwise."
It is crucial to understand that the TM is never actually simulated – such simulation could go into an infinite loop. All we are doing is constructing the code for .
is constructed such that on any input given to it, it will simulate with input . can halt or loop on and hence there can be two cases:
1. accepts all inputs if halts on . will reject as .
2. If loops on , will also loop for every input given to it. Anyway, as is a decider it will reject and halt on input as .
rejects if rejects that is which happens if halts on . Thus, decides which is a contradiction as is undecidable.
Let R be the reduction from to .
The reduction gives:
i)
M loops on input x iff the language recognised by accepts nothing
ii)
M halts on input x iff the language recognised by accepts something
Proof by contradicting , (which we know is undecidable).
Assume the existence of , a TM that decides
Use can then use in the construction of a TM , which is a decider for
"On input , where is the encoding of a TM and is a string:
Modify , taking into account the input , such that the new (call it ) rejects all input which is not equal to , where is built into its description. If the input is equal to , then runs on and outputs whatever outputs.
Run with the input
Output the opposite of s output."
The assumption that there exists a Turing Machine deicer for , allows us to construct a decider for , which is a contradiction.
E={ | M is a TM and L(M)=Φ}. Is E Turing-recognizable?
E is a language, to accept language E we construct a Turing Machine. Suppose we create a Turing EM for the language E.
EM will be provided as input the encoding of another Turing machines, If that inputted machine M accepts an empty language then it will be a member of language E, else it will be not a member of language.
Suppose we have a Turing Machine M, we need to check if it accepts an empty language. Turing Machine EM have M and strings eps, a, b, aa, bb, ..... EM will check if M can reach a final state for at least on a single input, and if it accepts at least a single input it will be discarded and not included in language E. Now, see a possibility T.M M gets into a loop so M will keep on running and we couldn't decide whether it can accept or can't accept anything. Hence, this given language E is NOT RE.
PS: I think the complement of this given Language E will be RE.