Un concepto importante en ciencias de la computacion es el de procedimiento o metodo para realizar alguna tarea determinada. Nos interesan los procedimientos que estan definidos en forma precisa e inambigua, es decir aquellos en los cuales en cada paso a seguir, la tarea a realizar esta objetivamente descripta. Tambien deben ser repetibles, en el sentido de que si realizamos un procedimiento dos veces con el mismo dato de entrada, entonces ambas ejecuciones deben ser identicas, es decir se realizaran las mismas tareas y en el mismo orden.
Nos interesan los procedimientos que posean las siguientes caracteristicas:
Siempre supondremos que el interprete o ejecutante de es una persona que trabajara con papel y lapiz (ambos recursos disponibles en forma ilimitada).
Cada paso o tarea que encomiende a realizar debe ser simple y facil de realizar en forma efectiva por cualquier persona.
El procedimiento comienza a funcionar siempre a partir de cierto dato de entrada y una ves que haya comensado, siempre sucedera una de las dos siguientes posibilidades
luego de cierta cantidad de pasos realizados, se detiene y da cierto dato de salida
nunca se detiene, es decir a medida que se van realizando las instrucciones o tareas, siempre direcciona a realizar nuevas tareas y lo hace sucesiva e indefinidamente.
En el caso (a) diremos que se detiene partiendo del dato de entrada en cuestion y en el caso (b) diremos que no se detiene partiendo de dicho dato
Hay y un alfabeto tales que el conjunto de datos de entrada de es . Cabe aclarar que para ciertas -uplas de el procedimiento se detendra y para ciertas otras no lo hara.
Llamaremos procedimientos efectivos a aquellos procedimientos que posean las caracteristicas arriba mencionadas.
El conjunto de datos de salida de es el conjunto de todos los datos que el procedimiento dara como salida en alguna de las posibles ejecuciones al variar todos los datos de entrada posibles. Si bien siempre el conjunto de datos de entrada sera de la forma , puede ser muy dificil o imposible, en general, conocer con precision el conjunto de datos de salida de un procedimiento (esto lo justificaremos mas adelante).
Ya que el interprete de es una persona dotada de lapiz y papel, supondremos que los elementos de que intervienen en los datos de entrada y de salida estaran representados por palabras de usando la notacion decimal clasica (i.e. con 0).
Quisas el procedimiento efectivo mas famoso de la matematica es aquel que se enseña en los colegios para sumar dos numeros naturales expresados en notacion decimal. Notar que el conjunto de datos de entrada de dicho procedimiento es y el conjunto de datos de salida es el conjunto formado por todas las sumas posibles de pares de elementos de , es decir . Por supuesto este procedimiento solo usa lapiz, papel y pasos extremadamente simples a seguir en cada momento de la computacion, es decir, en algun sentido, no es necesario "entender que es lo que se esta haciendo" para llegar al final y obtener la palabra que representa en notacion decimal a la suma de los numeros iniciales. Dejamos al lector repasar este procedimiento asi como el que calcula dado un numero no nulo de , al numero , los cuales nos haran falta mas adelante en los ejemplos.