Alle computerprogramma's tellen op de een of andere manier als een klein deel van een taak. Honderd items tellen duurt niet lang, ook niet zonder computer. Sommige computers moeten echter mogelijk een miljard items of meer tellen. Als het tellen niet efficiënt wordt gedaan, kan het dagen duren voordat een programma een rapport voltooit, terwijl het slechts enkele minuten zou moeten duren. Het tellen van winnende lotnummers van alle loten zou bijvoorbeeld het stoppen van het tellen van loten inhouden wanneer het minimum aantal juiste nummers op dat specifieke lot niet kan worden bereikt. Wanneer de lotnummers op elk lot zijn voorgesorteerd, kan het tellen heel snel gaan met een verdeel- en heersstrategie. De tak van de wiskunde die combinatoriek wordt genoemd, geeft studenten de theorie die nodig is om telprogramma's te coderen die de snelkoppelingen bevatten die de looptijd van het programma verkorten.
Nadat een telling is voltooid, is een taak nodig om iets te doen met het werkelijke aantal van de telling. Het aantal stappen dat nodig is om een taak te voltooien, moet worden geminimaliseerd, zodat de computer sneller een resultaat kan retourneren voor een groot aantal taken. Nogmaals, als een taak maar 20 keer hoeft te worden uitgevoerd, duurt het zelfs voor de langzaamste computer niet lang. Als de taak echter een miljard keer moet worden uitgevoerd, kan een inefficiënt algoritme met te veel stappen dagen in plaats van uren duren, zelfs op een computer van een miljoen dollar. Er zijn bijvoorbeeld veel manieren om een lijst met ongesorteerde getallen van laag naar hoog te sorteren, maar sommige algoritmen nemen te veel stappen, waardoor het programma veel langer kan duren dan nodig is. Door de wiskunde achter algoritmen te leren, kunnen studenten efficiënte stappen in hun programma's maken.
Problemen in computers zijn veel groter dan alleen tellen en algoritmen. Automatentheorie bestudeert problemen met een eindig of oneindig aantal mogelijke uitkomsten van verschillende waarschijnlijkheid. Computers die bijvoorbeeld de betekenis van een woord met meer dan één definitie proberen te begrijpen, zouden de hele zin of zelfs een alinea moeten analyseren. Nadat alle tellingen en algoritmen op de zin of alinea zijn voltooid, zijn regels nodig om de juiste definitie te bepalen. Het maken van deze regels maakt deel uit van de automatentheorie. Aan elke definitie worden waarschijnlijkheden toegewezen, afhankelijk van de resultaten van het algoritmegedeelte voor de alinea. Idealiter zijn de kansen slechts 100 procent en 0 procent, maar veel problemen in de echte wereld zijn gecompliceerd zonder zeker resultaat. Computer compiler ontwerp, parsing en kunstmatige intelligentie maken veel gebruik van automatentheorie.