Program induction infers a program from observed input-output behavior. Matching outputs does not identify one program: multiple implementations can explain the same examples. section 6.2.2
Constrain the candidate programs with:
- An inductive bias favoring simpler explanations, such as Occam’s razor or minimum description length. section 6.2.2
- A restricted function class and model-selection criterion that eliminate implausible assignment functions. section 6.2.2
Concatenation is not uniquely identified
For inputs “foo” and “bar” producing “foobar,” direct concatenation fits, but a longer program could add “aardvark,” delete it, and return the same output. section 6.2.2
Figure 6.17 Suppose we didn’t know which “marked stick” was generating the observed die rolls. There would be no way of inferring the correct marked stick from the die rolls alone. More generally, SCMs cannot be learned from statistical information in the data alone.
Shows why observed data alone cannot determine the generating SCM, motivating additional assumptions. section 6.2.2
