Question

Je pense que je suis assez confus à propos de ce qu'on appelle un calcul et de ce qu'on appelle un langage de programmation.

J'ai tendance à penser et aurait pu être dit qu'un calcul est un système formel pour raisonner sur l'équivalence des programmes. Les programmes ont une sémantique opérationnelle spécifiée par une machine, qui devrait (je pense?) Déterministe. De cette façon, un calcul (correct) pour une langue $ l $ est une méthode de preuve pour l'équivalence du programme.

Cela me semble être une division raisonnable, mais est-ce le sens communément accepté? Ou peut-être que c'est même mal?

En rapport, pourquoi certaines sémantiques opérationnelles sont-elles non déterministes (supposons qu'elle est confluente)? Qu'est-ce qui est gagné en laissant le choix de la stratégie ouverte?

J'apprécierais vraiment des éclaircissements à ce sujet; Et les références concrètes encore plus! Merci!

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à cs.stackexchange
scroll top