  We present a new framework and associated synthesis algorithms for program
synthesis over noisy data, i.e., data that may contain incorrect/corrupted
input-output examples. This framework is based on an extension of finite tree
automata called {\em weighted finite tree automata}. We show how to apply this
framework to formulate and solve a variety of program synthesis problems over
noisy data. Results from our implemented system running on problems from the
SyGuS 2018 benchmark suite highlight its ability to successfully synthesize
programs in the face of noisy data sets, including the ability to synthesize a
correct program even when every input-output example in the data set is
corrupted.
