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
-
★★
Mathematical problem
Problem that can be possibly solved via mathematics
-
★
Sequence motif
Nucleotide or amino-acid sequence pattern that is widespread and has, or is conjectured to have, a biological significance. For proteins, a sequence motif is distinguished from a structural motif
-
I★★
Inversion of control
Software programming technique in which general framework code calls into business-logic subroutines
-
C★★
Control flow
Order in which individual statements, instructions or function calls of an imperative program are executed or evaluated
-
★
ROOT
Data analysis software
-
M★★
Modus ponens
If X implies Y, and X is true, then Y is true
-
C★
Continuous mapping theorem
Probability theorem
-
★★
Instruction cycle
Basic operation cycle of a computer
-
★★
Structuration theory
Social theory of the creation and reproduction of social systems
-
★★
Pick's theorem
Formula that the area of a planar polygon whose vertices all have integer coordinates equals the number of interior integer points plus half the number of boundary integer points minus one
-
★
Undecidable problem
Decision problem for which it is impossible to construct an algorithm that always leads to a correct yes-or-no answer
-
★
Field theory (mathematics)
Theory in mathematics
-
★
Path (graph theory)
Sequence of edges connecting a sequence of vertices in a graph, with no repeating vertices
-
C★★★
Control theory
Branch of engineering and mathematics that deals with the behavior of dynamical systems with inputs, and how their behavior is modified by feedback
-
C★
Concurrent logic programming
Logic programming paradigm
-
★★
Computational mathematics
Area of mathematics
-
S★
Structure (mathematical logic)
Set together with an interpretation of a given first-order language
-
★
Japanese theorem for cyclic polygons
Theorem that no matter how one triangulates a cyclic polygon, the sum of inradii of triangles is constant