فرض میکنیم یک برنامه در ازای ورودی هایی از اعداد صحیح مختلف یک خروجی تولید میکنه
ایا میشه با داشتن ورودی و خروجیهای به الگوریتم اون برنامه پی برد؟ ایا میشه برنامه ای نوشت که با دادن این ورودی و خروجیها و با سعی و خطا همه حالتهای ممکن رو تست کنه و اون فرمول موجود در الگوریتم رو بدست بیاره ؟البته منطقا بزرگی عدد ورودی و خروجی هم مهمه پس با فرض بر ورودی 4 بایتی و خروجی 1 بایتی این کار به این راحتیها شدنیه؟
برای این کار بطور کلی چه طرحی باید داشته باشیم ؟ مثلا یه راه میتونه این باشه که ابتدا بین اولین ورودی و خروجی یه رابطه پیدا کنیم بعد در ورودی دوم این رابطه رو تست کنیم و اگه درست نبود برنامه به دنبال یافتن یه رابطه دیگه بره و اون رو روی هر دو مورد تست کنه و اگه درست بود دوباره ورودی و خروجی سوم رو بگیره و این کار رو به تعداد حالتهای ممکن از ورودیمون تکرار کنه
البته یه سوالی هم در همین الگوریتم پیشنهادی هست و اینکه در اون قسمت از برناممون که وظیفه یافتن یک رابطه رو بین ورودی و خروجی داره چطور عمل کنیم؟