Last Update: 22 November 2004
Note: or material is highlighted |
Note to Other Readers: This page was created for the students in CSE 111, Great Ideas in Computer Science, so my statement of the Boehm-Jacopini Theorem is not phrased exactly the way that they phrased it. However, the references in the second half of the article, while not all directly related to the Theorem, are of some relevant interest to the general topic of structured programming.
Note to All Readers: All articles from publications of the ACM and most articles from the IEEE are available online under certain circumstances, one of which is using a ".buffalo.edu" computer. UB students: Log into Bison and access the journals from there.
| | V S1 | | V S2 | | V
(IF some statement Q is true,
THEN do this
ELSE do that)
IF Q
THEN S1
ELSE S2
| | V (else if false) (if true) --------------- Q? --------------- | | | | V V S2 S1 | | | | V V
(WHILE some statement Q is true, DO this)
WHILE Q DO
S
| | |<--------------- | | | | v while true | Q?------------> S | | when false | v
These, together with naming, are the 4 basic features of Karel the Robot that we'll learn.
Recursion
Abstract:
This paper contains a proof that every program
with gotos can be transformed into a semantically equivalent
program without goto. A transformation algorithm is given.
Riley, David D.,
"Boehm-Jacopini
Theorem" [PowerPoint]
"Status of
Bohm-Jacopini Theorem"
Copyright © 2004 by
William J. Rapaport
(rapaport@cse.buffalo.edu)
file: 111F04/greatidea3-2004-11-22.html