בבקשה
נענה על המודלים החישוביים, העיצוב לא קשה במיוחד, הראשונים זה פחות או יותר מעקב אחרי התוכנית לגבי 2,למיין את הרשימה, לעבור עליה מהסוף, לקחת משתנה לסכום, להוסיף לו את האיבר שעליו מצביעים עכשיו, ואז ללכת 2 אחורה (אם הרשימה אי זוגית, אז להוסיף גם את הפריט הראשון (הכי זול)) לגבי 3, קל לעשות את זה מהשורש למטה באופן רקורסיבי, אם אין בנים לצומת הרלוונטי להחזיר אמת אחרת לקבל את הרמה, ולבדוק לכל הבנים את הערך ביחס לרמה, אם הכל שווה, להמשיך להריץ את הפונקציה רקורסיבית לכל הבנים, אחרת להחזיר שקר. לגבי 4, אפשר לעשות בכמה צורות (עץ למשל, או ללכת ברוטפורס על מערכים או מטריצות בלי תחכום) טוב לגבי 14 זה יראה אוטומט באופן הבא
q0->q1->q2->q3->q4->q5->q6
q6 מצב מקבל ונשים גם מצב "לא מקבל" q7 כעת מq0, אם מקבלים a עוברים לq1, כל דבר אחר נזרק לq7 מq1 אם מקבלים b עוברים לq2, כל דבר אחר נזרק לq7 כעת בq2, אם מקבלים c או b נשארים במצב, אם מקבלים a מתקדמים לq3 בq3, אם מקבלים c חוזרים לq2, אם מקבלים a נשארים, ואם מקבלים b מתקדמים לq4 בq4, אם מקבלים b או c נשארים במצב, אם מקבלים a עוברים לq5 בq5, אם מקבלים c חוזרים לq4, אם מקבלים b ממשיכים לq6, ואם מקבלים a נשארים q6 מקבל, ואם משהו יוצא ממנו הוא עובר לq7 בq7 הכל נשאר אצלו, והוא לא מקבל. 15. L1 רגולרית\, קל לבנות לה אוטומט. L2 רגולרית, מתעלמים מהaים בהתחלה כי הם לא משנים, אח"כ סופרים כמה bים יש מודולו 3 (כלומר 0 1 או 2, וכאשר קולטים אחד יותר מ2 חוזרים ל0), ומכל מצב של "ספירה" יורד "טור של cים" בגודל המתאים לספור אותם. L3 לא רגולרית (רמז: a^ib^j כאשר i=!j לא רגולרית, והיא שווה לL3 חיתוך a^mb^n כאשר n,m>0, והשפה הזאת היא רגולרית (פשוט קבלי aים בהתחלה, ואז bים, וזאת סתירה לסגירות) L4 לא רגולרית (קל להראות עם למת הניפוח אם את מכירה, אם לא אפשר פשוט להוכיח על האוטומט, שהוא "מאבד" ספירה ע"י מעגל בסוף הabים או לחפש משהו עם חיתוכים כי a^ib^i לא רגולרית) אני לא רוצה להטעות בטיורינג אז על זה נוותר