ceci de ces choses ou valeur purement théorique avec absolument aucune application pratique? "
Hrm. Qu'est-ce qu'une application pratique? Vous avez judicieusement étiqueté votre question "informatique-science". Donc, je suppose que votre question vise à demander: « est-il pratique la science à l'ordinateur?
Dans ce cas, la réponse est ...
Bien sûr, il est! Il est enseigné comme une des premières façons de classer différentes classes de complexité de langage, au-delà de simplement "big-O (whateverthehell)" Il montre qu'il y a des problèmes concernant le calcul au-delà du runtime, dans ce cas certains modèles ne peuvent simplement pas calculer certaines fonctions. * -ball introduction aux preuves formelles concernant la théorie des automates
Une énorme partie de l'informatique que la plupart des étudiants en informatique (mes pairs) semblent Vouloir éviter est la Théorie du Calcul, une classification que les lemmes de pompage relèvent évidemment.
Le fait, on l'espère, est que la théorie du calcul, qu'elle soit ou non, est fondamentale pour l'informatique. Ne pas comprendre l'idée de classes de complexité différentes (le big-O ne le coupe pas vraiment) ne sera pas la mort de l'informaticien, mais il cachera une partie considérable du champ de sa vue.
* Oui, le problème d'arrêt est généralement affiché en premier, mais il ne l'est jamais la première fois. En ce qui concerne peut-être l'interprétation plus cynique de votre question, dans laquelle vous voulez dire "est-ce que n'importe quel logiciel utilise vraiment ceci?", Ma réponse est bien sûr que non. Cela fait partie du fondement du calcul, pas de ses applications. Cela ne veut pas paraître dédaigneux de ses applications, pas du tout. Les deux sont d'égale valeur noble.
Est-il possible de prouver si une langue est ou non d'usage courant? –
@Anon: oui parce que la question de savoir si une langue peut être décrite par une grammaire sans contexte est utile pour les générateurs d'analyseurs. – cletus
Il m'a fallu du temps pour comprendre pourquoi L n'est pas une langue sans contexte. Je pense qu'une bonne façon de penser à la réponse est: si vous voulez écrire n 0, gardez la trace en ajoutant quelque chose à la pile n fois. Ensuite, pour imprimer n 1, gardez la trace en supprimant tous les éléments de la pile. Cependant, il n'y a plus aucun moyen de se souvenir de ce que n devait imprimer n 2. –