Proving Properties of Programs by Structural Induction | Synapse