Synthesizing Information Definition