Predicative programming
Method of computer program specification
Predicative programming is the original name of a formal method for program specification and refinement, more recently called a Practical Theory of Programming, invented by Eric Hehner. The central idea is that each specification is a binary (boolean) expression that is true of acceptable computer behaviors and false of unacceptable behaviors.
Nº Q7239635 ★
Commune · Savoirs
Predicative programming
Method of computer program specification
Predicative programming is the original name of a formal method for program specification and refinement, more recently called a Practical Theory of Programming, invented by Eric Hehner. The central idea is that each specification is a binary (boolean) expression that is true of acceptable computer behaviors and false of unacceptable behaviors.
Sur Wikipédia
Texte en anglais Pas encore d'article dans ta langue : extrait en anglais.
Predicative programming is the original name of a formal method for program specification and refinement, more recently called a Practical Theory of Programming, invented by Eric Hehner. The central idea is that each specification is a binary (boolean) expression that is true of acceptable computer behaviors and false of unacceptable behaviors. It follows that refinement is just implication. This is the simplest formal method, and the most general, applying to sequential, parallel, stand-alone, communicating, terminating, nonterminating, natural-time, real-time, deterministic, and probabilistic programs, and includes time and space bounds. Commands in a programming language are considered to be a special case of specification—those specifications that are compilable. For example, if the program variables are x {\displaystyle x} , y {\displaystyle y} , and z {\displaystyle z} , the command x {\displaystyle x} := y {\displaystyle y} +1 is equivalent to the specification (binary expression) x ′ {\displaystyle x'} = y {\displaystyle y} +1 ∧ y ′ {\displaystyle y'} = y {\displaystyle y} ∧ z ′ {\displaystyle z'} = z {\displaystyle z} in which x {\displaystyle x} , y {\displaystyle y} , and z {\displaystyle z} represent the values of the program variables before the assignment, and x ′ {\displaystyle x'} , y ′ {\displaystyle y'} , and z ′ {\displaystyle z'} represent the values of the program variables after the assignment. If the specification is x ′ {\displaystyle x'} > y {\displaystyle y} , we easily prove ( x {\displaystyle x} := y {\displaystyle y} +1) ⇒ ( x ′ {\displaystyle x'} > y {\displaystyle y} ), which says that x {\displaystyle x} := y {\displaystyle y} +1 implies, or refines, or implements x ′ {\displaystyle x'} > y {\displaystyle y} . Loop proofs are greatly simplified. For example, if x {\displaystyle x} is an integer variable, to prove that while...
Texte : Wikipédia en anglais, CC BY-SA 4.0. ·
Cartes voisines
-
L
Logic Theorist
Programme informatique d'intelligence artificielle
Nº Q4391896 ★★
Pas en vente
-
Principe de Sagan
« des affirmations extraordinaires nécessitent des preuves extraordinaires »
Nº Q27963927 ★
Pas en vente
-
Polymorphisme (informatique)
Concept consistant à fournir une interface unique à des entités pouvant avoir différents types
Nº Q3240252 ★★★
Pas en vente
-
Charles Babbage
Mathématicien britannique
Nº Q46633 ★★★★
Pas en vente
-
P
Principe d'explosion
Principe de logique énonçant « d'une contradiction on peut déduire ce qu'on veut »
Nº Q60190 ★★
Pas en vente
-
l
langage de programmation fonctionnel
Type de langage de programmation
Nº Q3839507 ★
Pas en vente
-
Dérivée
Fonction, définie en chaque point par la limite du taux d'accroissement du point de la fonction dérivable
Nº Q29175 ★★★★
Pas en vente
-
N
Neural field
A neural field is a type of neural network that models a mathematical field in a continuous and differentiable way
Nº Q135271240 ★★
Pas en vente
-
Brainfuck
Langage de programmation minimaliste
Nº Q244627 ★★★
Pas en vente
-
E
Effet Einstellung
Nº Q5349816 ★
Pas en vente
-
M
MECE principle
Organizing method developed by McKinsey
Nº Q1074664 ★★
Pas en vente
-
Tool Command Language
Langage de programmation
Nº Q5288 ★★
Pas en vente
-
C (langage)
Langage de programmation créé en 1972
Nº Q15777 ★★★★★★
Pas en vente
-
Creo
Logiciel de CAO mécanique
Nº Q926821 ★
Pas en vente
-
F
Formule BBP
Nº Q803807 ★
Pas en vente
-
C
Conflict-driven clause learning
SAT solving algorithm
Nº Q17008878 ★
Pas en vente
-
F
FOCAL
Langage de programmation
Nº Q1966202 ★
Pas en vente
-
Accélération matérielle
Confier une fonction spécifique effectuée par le processeur à un circuit intégré dédié qui effectuera cette fonction de façon plus efficace
Nº Q600158 ★
Pas en vente