• No se han encontrado resultados

Algoritmos y estructuras de datos II Inducción estructural

N/A
N/A
Protected

Academic year: 2022

Share "Algoritmos y estructuras de datos II Inducción estructural"

Copied!
22
0
0

Texto completo

(1)

Algoritmos y estructuras de datos II

Inducción estructural

Carlos Gustavo Lopez Pombo (Charlie)

Departamento de Computación,

Facultad de ciencias exactas y naturales, Universidad de Buenos Aires

(2)

Inducción

Desde un punto de vista histórico es un método científico que se basa en derivar reglas generales a partir observaciones particulares.

¿Qué es la inducción?

(3)

Inducción

Desde un punto de vista matemático es un

“método” de prueba que se basa en derivar reglas generales a partir probar que:

Si una propiedad vale para un elemento, entonces esto implica que vale para todo otro que lo

contenga estrictamente. (aprox)

¿Qué es la inducción?

(4)

Inducción

Repasemos inducción sobre los naturales à la Algebra I

¿Qué es la inducción?

( 8n : nat)

ni=0

i = n ⇤ (n + 1) 2

(5)

Inducción

¿Cómo sería con nuestras axiomatizaciones?

¿Qué es la inducción?

( 8n : nat) (prod(suc(suc(0)), sumatoria(0, n)) = prod(n, suc(n)))

(6)

Inducción

¿Qué es la inducción?

suma: nat x nat -> nat (su_1) suma(n, 0) = n

(su_2) suma(n, suc(m)) = suc(suma(n,m)) sumatoria: nat n x nat m -> nat (n <= m) (suma_1) sumatoria(n, 0) = 0

(suma_2) sumatoria(n, suc(m)) = if (n = m) then n

else suma(sumatoria(n, m), suc(m)) fi

prod: nat x nat -> nat (prod_1) prod(n, 0) = 0

(prod_2) prod(n, suc(m)) = suma(prod(n,m),n)

(7)

Inducción

¿Qué es la inducción?

Vamos con una más fácil...

( 8n, m, p : nat) (suma(n, suma(m, p)) = suma(suma(n, m), p))

(8)

Inducción

Si una propiedad vale para un elemento, entonces esto implica que vale para todo otro que lo

contenga estrictamente. (aprox)

Para que esto “funcione” debe tratarse de un conjunto bien ordenado

¿Y por qué funciona?

(9)

Inducción

Se dice que un conjunto S esta bien ordenado si existe una relación binaria R sobre S tal que:

(a) ordena totalmente a los elementos, y (b) es una relación bien fundada

¿Y por qué funciona?

(10)

Inducción

Se dice que una relación binaria sobre un conjunto S es bien fundada si para todo subconjunto S’ de S existe un elemento

mínimo o tal que para todo otro elemento t de S’, el par <t, o> no está en la relación.

¿Y por qué funciona?

(11)

Inducción

Tomemos entonces cualquier tipo definido usando el lenguaje de TADs con el que trabajamos definido sobre los generadores g1, ... gn, > un orden arbitrario entre ellos de forma que los generadores no recursivos sean menores que los

recursivos, la relación > entre términos se define como:

g_ik(...(g_i1 (args_i1), ..., args_ik) > g’_i’j(…(g’_i’1 (args_i’1), ..., args_i’j)

sii k >= j y existe i’1<=t<=i’j tal que para todo i’1<=l<t, g_il = g’_i’l y
 g_i(l+1) > g’_i’(l+1)

En pocas palabras, dado un orden entre los generadores, extendemos ese orden a secuencias finitas de generadores, es decir, si pensamos a los generadores como

“letras”, construimos el “orden lexicográfico” de términos.

¿Y por qué funciona?

(12)

Inducción

Lema: para todo par de términos t, t’

distintos, o bien t > t’ o bien t’ > t.

¿Y por qué funciona?

(13)

Inducción

Lema: existe un elemento mínimo.

Demo: trivial pues se toma como dicho elemento al generador no recursivo que sea menor bajo la relación >.

¿Y por qué funciona?

(14)

Inducción

Teorema: los conjuntos de términos

construidos con el lenguaje de TADs con el que trabajamos son conjuntos bien

ordenados.

¿Y por qué funciona?

(15)

Inducción

Corolario: los conjuntos bien ordenados no poseen cadenas (respecto de >)

descendentes infinitas.

¿Y por qué funciona?

(16)

Inducción

Copado: (a) las recursiones terminan siempre que tengan bien definidos los casos base y que los casos recursivos que toman un término t se resuelvan en función de un término t’ tal que t>t’, y (b) tiene

sentido pensar que si demuestro que una propiedad vale para los casos base, y que si vale para un término, entonces vale para los términos que lo contienen.

¿Y por qué funciona?

(17)

Inducción

Sea P una fórmula con una única variable libre x de tipo T, luego, si queremos ver que P vale para todo elemento de T, debemos probar:

Esquema de inducción

( 8x : T)P(x)

(18)

Inducción

Sea T un tipo con generadores:

c1: args -> T r1: T t x args -> T ...

cn: args -> T rm: T t x args -> T

y P una propiedad con una variable libre t de tipo T

Esquema de inducción

^

n i=1

( 8args)P(c

i

(args)) ^

^

m i=1

( 8t : T) (P(t) ) (8args)P(r

i

(t, args)))

!

)

( 8t : T)P(t)

(19)

Inducción

En el caso de los números naturales obtenemos:

Esquema de inducción

P(0) ^ (8n : nat)(P(n) ) P(suc(n)) )

( 8n : nat)P(t)

(20)

Inducción

En el caso de las listas de números naturales obtenemos:

Esquema de inducción

P([ ]) ^ (8l : lista[nat])(P(l) ) (8n : nat)P(n • l) )

( 8l : lista[nat])P(l)

(21)

Repaso

• Presentamos el concepto de inducción generalizando el método conocido desde Algebra I

• Básicamente sólo eso :-)

(22)

¡Es todo por hoy!

Referencias

Documento similar

•  The constitutional and cognitive dimension refers to the learner’s own identity, his attitude and his natural ability to approach a text and. generate his

Esto puede suceder en el conjunto S s´ olo para el unico punto en el que se intersecan L

En el Anexo II se adjunta documentación acreditativa de estar matriculado en el/los curso/s citado/s. DÉCIMA.- Mensualmente se actualizarán los datos de los estudiantes que

Artículo 3.- Del Territorio. Chile, en su diversidad geográfica, histórica y cultural, forma un territorio único e indivisible, conformado por el territorio continental,

1. LAS GARANTÍAS CONSTITUCIONALES.—2. C) La reforma constitucional de 1994. D) Las tres etapas del amparo argentino. F) Las vías previas al amparo. H) La acción es judicial en

La parte más interesante desde el punto de vista analítico es el estudio de las reacciones de la tiosemicarbazona de la benzoína con ' d i s t i n t o s iones con vistas a s~

La biotecnología es la rama de la biología que desarrolla tecnologías de organismos vivos, o materia prima a partir de ellos, a partir de procesos biomoleculares y

ES La Nucia Desembocadura DelRiu Riude deL’Algar L’Algar Desembocadura Del Riu de L’Algar Desembocadura DesembocaduraDel Del Riu de L’Algar 1000 1000 1000 1000.. Playa deMal