aquest text presenta una introducció a les teories de la calculabilitat i la complexitat a labast dun estudiant de primer cicle duna enginyeria informàtica. a partir de la justificació de la necessitat dun model formal de computació, es presenta el model de màquina de turing. shi introdueixen els conceptes i les eines que calen per classificar problemes segons el grau de dificultat computacional i, en particular, per determinar si un problema és indecidible o si és np-complet.