Learning programs from noisy data | Synapse