توجه کنید که فضای جستجویتان یک فضای گستتهٔ متناهی است یعنی به دنبال اعضایی از یک مجموعهٔ متناهی، دقیقا 10^3=1000 عضویِ \lbrace (a,b,c)\in\mathbb{Z}^3\mid 0\leq a,b,c\leq 9\rbrace هستید که در یک برابریِ سادهٔ درجهٔ سهٔ a^3+b^3+c^3=100a+10b+c صدق کنند. میتوانید از بهینهسازیِ صحیح با یک تابعِ هدفِ مصنوعی و با شرط (قید) -ِ برابریِ یادشده استفاده کنید (که البته یک بهینهسازیِ ناخطی میشود). یا روشهای ترکیبیاتی و غیرهٔ دیگر. در بدترین حالت میتوانید از برنامهنویسیِ ساده و گذاشتن یک حلقه و یک شرط استفاده کنید چون بررسیِ هر ۱۰۰۰ عضو مجموعه برای این شرط بوسیلهٔ رایانه سخت نیست و سریع انجام میشود.
اما برای جالبتر شدن توجه کنید که میتوانید پرسش را به دستگاه برابریِ چندجملهایِ چندمتغیره تبدیل کنید و با پایههای گروبنر یا روشهای زیاد دیگر از هندسهٔ جبریِ محاسباتی آن را حل کنید. پیشتر چند پرسش در همین سایت را به این شکل مدل و حل کردیم . یک برابری که همان شرطی است که در پاراگراف پیشین اشاره شد. ۳ برابریِ دیگر به شکل زیر میافزاییم که مقدارهای a و b و c را به عددهای ۰ و ۱ تا ۹ محدود کند. به فرض x یکی از این سه متغیر باشد، روشن است که برابریِ زیر دقیقا ۱۰ پاسخ حقیقی (و حتی مختلط) دارد که دقیقا ۰ و ۱ و ... و ۹ هستند.
x(x-1)(x-2)\cdots (x-9)
باید برایتان روشن باشد که مجموعهٔ پاسخهای حقیقی (و یا مختلط) -ِ برابریِ ۳ متغیره با ۴ برابریِ یادشده دقیقا برابر با مجموعهٔ سهتاییهای صحیحی است که به دنبالشان هستند. یکی از روشهای حلِ دقیق این دستگاه این است که پایهٔ گروبنر ایدهآل تولیدشده بوسیلهٔ این ۴ چندجملهای را با یک ترتیب تکجملهایهای حذفکننده، مانند ترتیب واژهنامهایِ a < b < c، محاسبه کنید و سپس چندجملهایهای تکمتغیرهاش را با هر روش دلخواهی که یک چندجملهای تکمتغیره را حل میکنید، تجزیه، نیوتن-رافسون، دنبالهٔ استورم و دوبخشیکردن بازه، ... حل کنید، ریشهها را جایگذاری و سپس چندجملهایهای دو متغیره را حل کنید که اکنون تکمتغیره شدهاند و همینطور ادامه دهید تا تمام متغیرها حل شوند. دستی انجام دادن این کار برای این پرسش سخت نیست ولی ممکن است کمی زمانبر باشد، بنابراین در زیر کُدی با زبان نرمافزار میپل نوشتهایم که این کار را خودکار برایمان انجام دهد (توجه کنید که این روش با حل تصادفی یا عددی یا امتحانکردن حالتها یکی نیست و یک الگوریتم با ایدهٔ محاسباتی داریم).
f__0 := 100*a + 10*b + c - a^3 - b^3 - c^3;
f__1 := product( a-i, i = 0..9 );
f__2 := product( b-i, i = 0..9 );
f__3 := product( c-i, i = 0..9 );
G := Groebner:-Basis( [f__0, f__1, f__2, f__3], plex( a, b, c ) );
solutions := Array([]):
list1 := Array([ solve( G[1] = 0, c, real ) ]):
for ic in list1 do
sols2 := [ solve( eval( [ G[2] = 0, G[3] = 0 ], c = ic ), b, real ) ]:
list2 := Array([ seq( eval( b, sol ), sol in sols2 ) ]):
for ib in list2 do
list3 := Array([ solve( eval( G[4] = 0, [ c = ic, b = ib ] ), a, real ) ]):
ArrayTools:-Extend( solutions, [ seq( [ia, ib, ic], ia in list3 ) ] ):
end do:
end do:
solutions;
در زیر تصویری از خروجی این کد در محیط میپل را میبینید.

دستآورد پایانی این است که ۶ عدد (با احتساب عددهای ۱ و ۲ رقمی) با این ویژگی وجود دارند یعنی عددهای زیر.
0,\;1,\;153,\;370,\;371,\;407
میتوانستید در مدلسازی شرطهایی بیفزائید که عددهای زیرِ سه رقم شامل نشوند. میتوانید این را به عنوان تمرینی ساده در نظر بگیرید.