Uncommon · Knowledge
Structured program theorem
Theorem that a class of control flow graphs can compute any computable function if it combines subprograms only through sequence, selection, and iteration
In programming language theory, the structured program theorem, generally called the Böhm–Jacopini theorem, states that a class of control-flow graphs (historically called flowcharts in this context) can compute any computable function using only the following three control structures to combine subprograms (statements and blocks): Sequence Executing one subprogram, and then another subprogram Selection Executing one of two subprograms according to the value of a boolean expression Iteration Repeatedly executing a subprogram as long as a boolea...
From Wikipedia
In programming language theory, the structured program theorem, generally called the Böhm–Jacopini theorem, states that a class of control-flow graphs (historically called flowcharts in this context) can compute any computable function using only the following three control structures to combine subprograms (statements and blocks): Sequence Executing one subprogram, and then another subprogram Selection Executing one of two subprograms according to the value of a boolean expression Iteration Repeatedly executing a subprogram as long as a boolean expression is true More precise definitions are listed in the next section. The structured chart subject to these constraints, particularly the loop constraint implying a single exit (as described later in this article), may however use additional variables in the form of bits (stored in an extra integer variable in the original proof) in order to keep track of information that the original program represents by the program location. The construction was based on Böhm's programming language P′′. The theorem forms the basis of structured programming, a programming paradigm which eschews the goto statement, exclusively using other control semantics for selection and iteration.
Text: Wikipédia, CC BY-SA 4.0. ·
Related cards
-
★★
General topology
Branch of topology dealing with general topological spaces
-
★
Hyperplane separation theorem
Convex polyhedra
-
★★★
Formal language
Set of strings of symbols that may be constrained by rules that are specific to it; words whose letters are taken from an alphabet and are well-formed according to a specific set of rules
-
G★★
Goodstein's theorem
Theorem
-
★
Diode–transistor logic
Class of digital circuits
-
★★★★
Von Neumann architecture
Computer architecture using a common memory bus and address space for instructions and data
-
★★
Ring theory
Branch of abstract algebra in mathematics
-
★★
Lagrange's four-square theorem
Theorem
-
S★
Szemerédi's theorem
Theorem that long dense subsets of the integers contain arbitrarily large arithmetic progressions
-
C★
Computability
Ability to solve a problem in an effective manner
-
D★
Double negation
Theorem
-
D★
Duplicate code
Piece of source code that occurs more than once in the same environment
-
★
Needleman–Wunsch algorithm
Algorithm
-
H★★
Hensel's lemma
Theorem in commutative algebra
-
★
Chen's theorem
Mathematics theorem in number theory, which was first stated and proved by Chen Jingrun
-
★★★
Law of large numbers
Theorem that describes the result of performing the same experiment a large number of times
-
★
History of compiler construction
Wikimedia history article
-
★★
Mathematical problem
Problem that can be possibly solved via mathematics