Informal Verification
- You give the definition of foo to Scheme and
try some tests:
Expression | Value
|
(foo 0) | 0
|
(foo 1) | 1
|
(foo 2) | 4
|
(foo 3) | 9
|
(foo 4) | 16
|
- Are you convinced that there is not somehow a mistake ("bug") in the
procedure?
- Rigorous testing can give very good
confirmation of the correctness of a
procedure.
- But it is always possible that testing did
not reveal all of the procedure's behavior: try (foo -3)