Look for the Proof to Find the Program: Decorated-Component-Based Program Synthesis