Cuadro de texto:  

 

 

 

 

 

INTRODUCCI�N A LA TEOR�A DE CONJUNTOSgeocities archive

Rama de las matem�ticas a las que el matem�tico Georg Ferdinand Ludwing Philipp Cantor es el padre de la Teor�a de Conjuntos, dio su primer tratamiento formal en 1870. El concepto de conjunto es uno de los m�s fundamentales en matem�ticas, incluso m�s que la operaci�n de contar, pues se puede encontrar impl�cita o expl�citamente, en todas las ramas de las matem�ticas puras y aplicadas. En su forma expl�cita, los principios y terminolog�a de los conjuntos se utilizan para construir proposiciones matem�ticas m�s claras y precisas y para explicar conceptos abstractos como el infinito.

En el a�o 1874, apareci� el primer trabajo revolucionario de Cantor sobre la Teor�a de conjuntos.

DEFINICIONES

Sabemos que la palabra conjunto implica la idea de una colecci�n de objetos que se caracterizan en algo com�n.

En matem�tica tiene el mismo significado, s�lo que a estos objetos se les llama elementos o miembros del conjunto.

La noci�n simple de una colecci�n o conjunto de objetos es fundamental en la estructura b�sica de las matem�ticas y fue Georg Cantor, en los a�os 1870 quien primero llam� la atenci�n de los matem�ticos a este respecto.

No puede darse una definici�n satisfactoria de un conjunto en t�rminos de conceptos simples, por lo tanto la palabra "CONJUNTO" debe aceptarse l�gicamente como un t�rmino no definido.

Un conjunto es una colecci�n bien definida de objetos de cualquier clase.

DETERMINACI�N DE UN CONJUNTO

Hay dos formas de determinar conjuntos.

geocities mirror  Por extensi�n � Forma Tabular

Se dice que un conjunto es determinado por extensi�n (o enumeraci�n), cuando se da una lista que comprende a todos los elementos del conjunto y s�lo a ellos.

Ejemplos:

A = { a, e, i, o, u }

B = { 0, 2, 4, 6, 8 }

C = { c, o, n, j, u, t, s } En un conjunto determinado por extensi�n no se repite un mismo elemento.

geocities mirrorPor compresi�n � Forma Constructiva

Se dice que un conjunto es determinado por comprensi�n, cuando se da una propiedad que la cumpla en todos los elementos del conjunto y s�lo a ellos.

Ejemplos:

A = { x/x es una vocal }

B = { x/x es un n�mero par menor que 10 }

C = { x/x es una letra de la palabra conjuntos }

 

geocities mirrorVamos a mostrarte un cuadro comparativo de determinaci�n de conjuntos

Por extensi�n

 

Por compresi�n

A = { a, e, i, o, u }

 

A = { x/x es una vocal }

B = { 0, 2, 4, 6, 8 }

 

B = { x/x es un n�mero par menor que 10 }

C = { c, o, n, j, u, t, s }

 

C = { x/x es una letra de la palabra conjuntos }

D = { 1, 3, 5, 7, 9 }

 

D = { x/x es un n�mero impar menor que 10 }

E = { b, c, d, f, g, h, j, . . . }

 

E = { x/x es una consonante }

CONJUNTOS FINITOS

Un conjunto es finito si consta de un cierto n�mero de elementos distintos, es decir si al contar los diferentes elementos del conjunto el proceso de contar puede acabar. En caso contrario, el conjunto es infinito.

Ejemplos:

M = { x / x es un r�o de la tierra } Conjunto finito

N = { 0, 1, 2, 3, 4, 5, 6, 7, 8, ... } Conjunto infinito

P = { x / x es un pa�s de la tierra } Conjunto finito

V = { 3, 6, 9, 12, 15, 18, 21, 24, 27, ... } Conjunto infinito

IGUALDAD DE CONJUNTOS

Se dice que 2 conjuntos A y B son iguales cuando ambos tienen los mismos elementos, es decir si cada elemento de A pertenece a B y si cada elemento que pertenece a B pertenece tambi�n a A. La igualdad se denota A = B.

geocities mirrorEn la igualdad, el orden de los elementos de cada conjunto no importa.

Ejemplos:

 

A = {1, 2, 3, 4}

 

 

 

 

 

 

 

 

 

 

C = {1, 2, 3, 3, 4, 1}

 

 

 

 

 

 

 

 

 

E = {vocal de la palabra mundo}

B = {3, 4, 1, 2}

 

 

 

 

 

 

 

 

 

 

D = {1, 2, 2, 3, 4, 4,}

 

 

 

 

 

 

 

 

 

F = {u, o}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

A = B

 

 

 

 

 

 

 

 

 

 

C = D

 

 

 

 

 

 

 

 

 

E = F

CONJUNTO VAC�O

Es un conjunto que carece de elementos. Se suele llamarle conjunto nulo, y se le denota por el s�mbolo � o { }.

Ejemplos:

A = { Los perros que vuelan }

 

 

A = { }

 

A =

B = { x / x es un mes que tiene 53 d�as}

 

 

B = { }

 

B =

C = { x / x3 = 8 y x es impar }

 

 

C = { }

 

C =

D = { x / x es un d�a de 90 horas }

 

 

D = { }

 

D =

 

 

CONJUNTO UNITARIO

Es todo conjunto que est� formado por un s�lo y �nico elemento.

Ejemplos:

A = { 5 }

B = {n�meros pares entre 6 y 10} = { 8 }

C = {la capital del Per� } = { Lima }

D = {x / 2x = 6} = {3}

CONJUNTO UNIVERSAL

Es el conjunto que contiene a todos los elementos del discurso. Es un t�rmino relativo. Se le denota por la letra U.

Ejemplos:

Sean los conjuntos:

A = { aves }

 

 

B = { peces }

 

 

C = { conejos }

 

 

D = { monos }

geocities mirrorExiste otro conjunto que incluye a los conjuntos A, B, C y D. Es

U = { animales }

geocities mirrorGr�ficamente se representa por un rect�ngulo tal como se observa a continuaci�n.

geocities archive

Sean los conjuntos:

E = { mujeres }

 

 

F = { hombres }

geocities mirrorExiste otro conjunto que incluye a los conjuntos E y F. Es

U = { seres humanos }

geocities archiveGr�ficamente se representa por un rect�ngulo tal como se observa a continuaci�n.

geocities mirror

CONJUNTO POTENCIA

La familia de todos los subconjuntos de un conjunto M se llama Conjunto Potencia de M. Se le denota como 2M .

Ejemplos:

a)

M = { 1, 2 }

 

El conjunto M tiene 2 elementos

 

2M = { {1}, {2}, {1, 2}, }

 

entonces 22 = 4 elementos

 

 

 

 

b)

M = { 1, 2, 3 }

 

El conjunto M tiene 3 elementos

 

2M = { {1}, {2}, {3}, {1, 2}, {1, 3}, {2, 3}, {1, 2, 3}, }

 

entonces 23 = 8 elementos

 

 

 

 

geocities mirrorSi un conjunto M es finito con "n" elementos, entonces su conjunto potencia 2M tendr� 2n elementos.

CONJUNTOS DISJUNTOS

Si dos conjuntos A y B no tienen ning�n elemento com�n entonces A y B son disjuntos.

Ejemplos:

Conjuntos disjuntos

 

 

 

Conjuntos no disjuntos

 

 

 

 

 

A = { 2, 4, 6 }

 

 

 

M = { o, p, q, r, s }

B = { 1, 3, 5 }

 

 

 

N = { s, t, v, u }

A y B son disjuntos.

 

 

 

M y N no son disjuntos.

 

 

 

 

 

C = { x/x es una letra del alfabeto }

 

 

 

P = { x/x es una letra de la palabra aritm�tica }

D = { x/x es un n�mero }

 

 

 

Q = { x/x es una letra de la palabra algebra }

C y D son disjuntos

 

 

 

P y Q no son disjuntos

 

DIAGRAMA DE VENN

 

A cada conjunto se le considera encerrado dentro de una curva (plana) cerrada. Los elementos del conjunto considerado pueden ser espec�ficamente dibujados o pueden quedar (impl�citamente) sobreentendidos. Los diagramas son empleados, para representar tanto a los conjuntos como a sus operaciones, y constituyen una poderosa herramienta geom�trica, desprovista de validez l�gica.

A continuaci�n representaremos algunos conjuntos y verificaremos algunas igualdades (las intersecciones de dos o m�s conjuntos quedan caracterizados por el rayado m�ltiple).

 

geocities mirror

El gr�fico es la representaci�n de la uni�n

geocities archive

 

 

 

 

 

geocities mirror

El gr�fico es la representaci�n de la intersecci�n

geocities archive

 

 

 

 

 

geocities archive

El gr�fico es la representaci�n de la diferencia

geocities archive

 

UNI�N DE CONJUNTOS

 

 

La uni�n de los conjuntos A y B es el conjunto formado por todos los elementos que pertenecen a A o a B o a ambos. Se denota: A U B. La uni�n de conjuntos se define como:

A U B = {x / x geocities mirrorA o x geocities mirrorB}

En forma gr�fica:

geocities mirror                                                        vamos

 

 

 

 

 

 

Cuando no tienen

 

 

Cuando tienen algunos

 

Cuando todos los elementos de un

elementos comunes

 

 

elementos comunes

 

conjunto pertenecen a otro conjunto

Ejemplos:

 

1. Dados los conjuntos: A = { 0, 1, 2, 3, 4, 5 }, B = { 0, 2, 4 } y C = { 5, 6, 8 }, efectuar y construir los diagramas respectivos:

a)

A U C

 

 

 

 

 

b)

B U C

 

 

 

 

 

c)

A U B

Tenemos:

geocities archive

a) A = { 0, 1, 2, 3, 4, 5 } y C = { 5, 6, 8 }

 

 

 

 

 

 

A U C = { 0, 1, 2, 3, 4,geocities archive , 6, 8 }

geocities archive

 

 

 

 

 

geocities mirror

 

 

 

 

 

 

Representaci�n gr�fica de la uni�n de conjuntos A y C

geocities mirror

b) B = { 0, 2, 4 } y C = { 5, 6, 8 }

 

 

 

 

 

 

B U C = { 0, 2, 4, 5, 6, 8 }

geocities mirror

 

 

 

 

 

geocities mirror

 

 

 

 

 

 

Representaci�n gr�fica de la uni�n de conjuntos B y C

geocities mirror

c) A = { 0, 1, 2, 3, 4, 5 } y B = { 0, 2, 4 }

 

 

 

 

A U B = { geocities archive, 1, geocities archive, 3, geocities mirror, 5 }

geocities mirror

 

 

 

geocities archive

 

 

 

 

Representaci�n gr�fica de la uni�n de conjuntos A y B

 

INTERSECCI�N DE CONJUNTO

Se define la intersecci�n de dos conjuntos A y B al conjunto de elementos que son comunes a A y B. Se denota por A  B, que se lee: A intersecci�n B. La intersecci�n de A y B tambi�n se puede definir:

A geocities mirrorB = { x / x geocities archiveA y x geocities mirrorB } y mediante un diagrama de Venn-Euler:

geocities archive                                               Vamos

geocities mirror

 

 

 

geocities archive

 

 

 

geocities archive

Cuando tienen

 

 

 

Cuando no tienen

 

 

 

Cuando todos los elementos de un                                                                    

elementos comunes

 

 

 

elementos comunes

 

 

 

conjunto pertenecen a otro conjunto

Ejemplos:

1. Dados los conjuntos: A = { 0, 1, 2, 3, 4, 5 }, B = { 3, 5, 7 } y C = { 2, 4 }, efectuar y construir los diagramas respectivos:

a)

A geocities archiveC

 

 

 

 

 

b)

B geocities mirrorC

 

 

 

 

 

c)

A geocities archiveB

Tenemos:

geocities mirror           Observemos:

a) A = { 0, 1, 2, 3, 4, 5 } y C = { 2, 4 }

 

 

 

 

A geocities mirrorC = { , }

geocities mirror

 

 

 

geocities archive

 

 

 

 

Representaci�n gr�fica de la intersecci�n de conjuntos A y C

geocities archive

b) B = { 3, 5, 7 } y C = { 2, 4 }

 

 

 

 

B geocities mirrorC = { }

geocities archive

 

 

 

geocities mirror

 

 

 

 

Representaci�n gr�fica de la intersecci�n de conjuntos B y C

geocities archive

c) A = { 0, 1, 2, 3, 4, 5 } y B = { 3, 5, 7 }

 

 

 

 

A geocities mirrorB = { , }

geocities archive

 

 

 

geocities archive

 

 

 

 

Representaci�n gr�fica de la intersecci�n de conjuntos A y B

 

DIFERENCIA DE CONJUNTOS

Se denomina diferencia de dos conjuntos A y B al conjunto formado por todos los elementos de A pero que no pertenecen a B.

La diferencia se denota por: A - B que se lee: A diferencia B o A menos B. Se define la diferencia de dos conjuntos tambi�n como:

A - B = {x / x geocities archiveA y x geocities archiveB}

Mediante un diagrama de Venn - Euler:

geocities mirror                                               Vamos

geocities archive

 

geocities archive

 

geocities archive

Cuando no tienen

 

Cuando tienen

 

Cuando todos los elementos de un

elementos comunes

 

elementos comunes

 

conjunto pertenecen a otro conjunto

Ejemplos:

1. Dados los conjuntos: A = { a, b, c, d, e }, B = { a, e } y C = { d, f, g }, efectuar y construir los diagramas respectivos:

a)

A - C

 

 

 

 

 

b)

B - C

 

 

 

 

 

c)

A - B

Tenemos:

geocities mirror           observemos

a) A = { a, b, c, d, e } y C = { d, f, g }

 

 

 

 

A - C = { a, b, c, e }

geocities archive

 

 

 

geocities archive

 

 

 

 

Representaci�n gr�fica de la diferencia de conjuntos A y C

geocities archive    observemos

b) B = { a, e } y C = { d, f, g }

 

 

 

 

B - C = { a, e }

geocities mirror

 

 

 

geocities mirror

 

 

 

 

Representaci�n gr�fica de la diferencia de conjuntos B y C

geocities archive           observemos

c) A = { a, b, c, d, e } y B = { a, e }

 

 

 

 

A - B = { b, c, d }

geocities mirror

 

 

 

geocities archive

 

 

 

 

Representaci�n gr�fica de la diferencia de conjuntos A y B

 

 

 

 

 

COMPLEMENTO DE UN CONJUNTO

 

Si un conjunto A es subconjunto de otro conjunto universal U, al conjunto A' formado por todos los elementos de U pero no de A, se llama complemento de A con respecto a U. Simb�licamente se expresa:

A' = { x/x U y x geocities mirrorA }

Ejemplos:

a)

Sean U = { m, a, r, t, e }

 

y

 

A = { t, e }

 

Su complemento de A es:

 

 

 

A' = { m, a, r }

 

geocities archive

En forma gr�fica:

 

 

 

 

 

 

 

 

 

geocities mirror

 

 

 

 

 

 

 

b)

Sean U = { letras de la palabra aritm�tica}

 

y

 

B = { vocales de la palabra vida }

 

Determinado por extensi�n tenemos

 

 

 

 

 

U = { a, r, i, t, m, e, c }

 

 

 

B = { i, a }

 

Su complemento de B es:

 

 

 

B' = { r, t, m, e, c }

 

geocities mirror

En forma gr�fica:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

geocities archive

 

PREGUNTAS

1)

 

Cu�les son los elementos de:

 

a)

El conjunto de los dias de la semana

 

b)

El conjunto de las estaciones del a�o

 

c)

Los n�meros impares menores de 11

 

d)

Los n�meros pares mayor que 10 y menor que 20

 

e)

Los n�meros primos menores de 15

 

2)

 

Colocar V � F seg�n lo afirmado sean verdadero o falso

 

 

a)

6 { 2, 4, 5, 6, 9 }

( )

 

b)

y { o, p, q, x }

( )

 

c)

x { o, p, q, y }

( )

 

d)

Per� { pa�ses de Europa }

( )

 

e)

Amazonas { rios de Am�rica }

( )

 

3)

 

�Cu�les de los siguientes conjuntos son: vacios, unitarios, finitos, infinitos?

 

 

a)

A = { x / x es d�a de la semana}

. . . . .

 

b)

B = { vocales de la palabra vals}

. . . . .

 

c)

C = { 1, 3, 5, 7, 9, . . . . .}

. . . . .

 

d)

D = { x / x es un habitante de la luna}

. . . . .

 

e)

E = { x N / x < 15}

. . . . .

 

f)

F = { x N y 5 < x < 5 }

. . . . .

 

g)

G = { x N y x > 15}

. . . . .

 

h)

H = { x N y x = x}

. . . . .

 

i)

I = { x / x es presidente del Oceano Pac�fico}

. . . . .

 

j)

J = { x / x es n�mero de cabellos total de los habitantes del Per� }

. . . . .

 

RESPUESTA DE EJERCICIOS DE CONJUNTOS

1)

 

 

Cu�les son los elementos de:

 

a)

A = {lunes, martes, mi�rcoles, jueves, viernes, s�bado, domingo }

 

b)

B = {verano, oto�o, invierno, primavera }

 

c)

C = {1, 3, 5, 7, 9 }

 

d)

D = {12, 14, 16, 18 }

 

e)

E = {1, 2, 3, 5, 7, 11, 13 }

 

2)

 

Colocar V � F seg�n lo afirmado sean verdadero o falso

 

 

a)

6 { 2, 4, 5, 6, 9 }

( V )

 

b)

y { o, p, q, x }

( F )

 

c)

x { o, p, q, y }

( V )

 

d)

Per� { pa�ses de Europa }

( F )

 

e)

Amazonas { rios de Am�rica }

( F )

 

3)

 

�Cu�les de los siguientes conjuntos son: vacios, unitarios, finitos, infinitos?

 

 

a)

A = { x / x es d�a de la semana}

finito

 

b)

B = { vocales de la palabra vals}

unitario

 

c)

C = { 1, 3, 5, 7, 9, . . . . .}

infinito

 

d)

D = { x / x es un habitante de la luna}

vacio

 

e)

E = { x N / x < 15}

finito

 

f)

F = { x N y 5 < x < 5 }

vacio

 

g)

G = { x N y x > 15}

infinito

 

h)

H = { x N y x = x}

unitario

 

i)

I = { x / x es presidente del Oceano Pac�fico}

vacio

 

j)

J = { x / x es n�mero de cabellos total de los habitantes del Per� }

infinito

 

 

 

L�GICA PROPOSICIONAL

 

En  la L�gica Formal se estudian los principios y m�todos a trav�s de los cuales podemos determinar la validez de argumentos, desde el punto de vista solamente de su estructura, sin tomar en cuenta el contenido sem�ntico de las expresiones de los argumentos. De esta manera si se argumenta que:

    Todos los majadistanenses son de Majadist�n
    Rudistein es Majadistanense
    En consecuencia,Rudistein es de Majadistan.

En este argumento, no tomamos en cuenta si los majadistanenses son humanos, perros, pericos o un concepto abstracto de cualquier �rea.

Tampoco nos importa si Rudinstein es un ciudadado de alguna ciudad del mundo o si es el nombre de un perro.

De esta manera desde el punto de vista de su estructura este argumento es v�lido.

Se hace incapi� que la L�gica no se hace responsable de su aplicaci�n a nivel sem�ntico.

Se puede decir que la L�gica es una herramienta para el an�lisis de la veracidad de argumentos en base s�lo a la estructura de �stos, donde el significado de los elementos que intervienen no es tomado en cuenta.

El argumento anterior tiene dos partes principales:

A) Las premisas:
     Todos los majadistanenses son de Majadist�n
        Rudistein es Majadistanense

 

B) La conclusi�n:
        Rudistein es de Majadist�n

De esta manera el argumento es v�lido, ya que de las premisas sigue la conclusi�n, lo cual hasta cierto punto nos parece totalmente natural. Consideremos el siguiente argumento:

    Argentina est� en Africa o Argentina est� en Asia.
    Argentina no est� en Asia
    En consecuencia, Argentina est� en Africa.

Nuevamente este argumento es v�lido desde el punto de vista l�gico, a�n cuando sabemos que la conclusi�n es falsa.

�C�mo puede ser �sto? �A partir de la L�gica se pueden obtener conclusiones equivocadas?

La respuesta es afirmativa, ya que la l�gica  no verifica el significado de las premisas.

Debido a lo anterior es necesario distinguir entre proposiciones verdaderas y proposiciones l�gicamente verdaderas.

Las primeras son verdaderas independientemente de su estructura, mientras que las segundos no lo son. De esta manera, las proposiciones:

Argentina est� en Africa o Argentina est� en Asia
Argentina est� en Africa

Son verdaderas l�gicamente debido a que la primera es una premisa y a que la segunda ha sido derivada l�gicamente de sus premisas.

Las proposiciones son  expresiones que pueden ser evaluadas como verdaderas o falsas.

En los lenguajes naturales (Espa�ol, Ingl�s, etc), las proposiciones s�lo pueden ser expresiones declarativas y nunca interrogativas o imperativas.

De esta manera las siguientes son proposiciones:

        Los cantantes no duermen.
        Comer mucho, engorda
        Las monta�as cantan bonito
        Los mosquitos viven menos de un a�o
        El hombre desciende del elefante

Sin embargo, las siguientes no son proposiciones por no poder ser evaluadas como verdaderas ni falsas:

        �Lev�ntate temprano!
        �Has entendido lo que es una proposici�n?
        �Estudia esta lecci�n!
        �Cu�l es la direcci�n de la p�gina de L�gica Computacional?

En este m�dulo estudiamos la l�gica proposicional, es decir, se estudian los principios para determinar la validez de argumentos conformados con proposiciones. Esto involucra los siguientes tipos de proposiciones:

    * Proposiciones simples o �tomos
    * Proposiciones compuestas

Los �tomos o proposiciones simples son tales que no es posible encontrar en ellas otras proposiciones, mientras que las proposiciones compuestas est�n conformadas de varias proposicones simples a trav�s de lo que se denomina conectores l�gicos, entre los cuales se encuentran:  y, o, implica.

Ejemplo de proposiciones compuestas son:

        Las monta�as cantan bonito o Los mosquitos viven menos de un a�o.

        El hombre desciende del elefante y Comer mucho, engorda.

 

CONECTIVAS LOGICAS

Las conectivas  l�gicas tambi�n se llaman a veces operadores, y son de dos tipos:

    Operadores unarios:
                NEGACION: not, �

    Operadores binarios:
                CONJUNCION: and, &, y
                DISYUNCION: or
                CONDICIONAL: implies, ==>, implica
                BICONDICIONAL: <==>
 

FORMULAS BIEN FORMADAS

El C�lculo Proposicional estudia f�rmulas proposicionales simples o compuestas.

Las proposiciones simples o �tomos son representadas por s�mbolos, generalmente las letras del alfabeto A,B,C,....

Para obtener proposiciones compuestas se utilizan, como se dijo antes, conectores l�gicos. As� la proposici�n compuesta  A or B puede corresponder por ejemplo a:

        El coronel no tienen quien le escriba
                            or
        La jubilaci�n del Coronel Buend�a es  insuficiente para su familia

Una f�rmula bien formada (fbf) es una expresi�n que representa una proposici�n simple o compuesta, la cual esta bien escrita de acuerdo con determinada sintaxis.

Ahora bien, una fbf del C�lculo Proposicional, es una  f�rmula que est� bien escrita de acuerdo con la sintaxis del C�lculo Proposicional.

Las reglas de la sintaxis del C�lculo Proposicional definen de esta manera la forma de escribir o reconocer susu fbf's. Estas reglas son:

    a) Un �tomo es una f�rmula bien formada.
    b) Si G es una f�rmula bien formada entonces �G tambi�n lo es.
    c) Si G y H son f�rmulas bien formadas, entonces tambi�n lo son:
            G & H
            G or H
            G ==>  H
            G <==> H
    d) Todas las fbf's se obtienen aplicando a, b y c.

Es necesario puntualizar  en la regla c anterior, que es posible utilizar otras conectivas, pero sin embargo son reducibles a las que aqui presentamos.

De esta manera, fijaremos nuestra atenci�n solo  a las fbf's que aqu� describimos.

Ejemplos de f�rmulas bien formadas son:

        P & Q         P ==> Q

Ejemplos de f�rmulas que no son bien formadas son: P &,  ==>Q.

 

DEMOSTRACI�N Y REGLAS DE INFERENCIA
 

 

RESUMEN

 

En el C�lculo Proposicional, existen dos m�todos comunes de realizar una demostraci�n: Directo e Indirecto.

Ambos m�todos realizan una demostraci�n obteniendo una sucesi�n de f�rmulas:

       F1,F2,...,Fn

 

Donde cada una de estas f�rmulas se obtiene a trav�s de reglas de inferencia o es un axioma. Aqu� se discuten lo dos m�todos de demostraci�n directo e indirecto y las principales reglas de inferencia utilizadas en dichos m�todos.
 

PALABRAS CLAVE: L�GICA PROPOSICIONAL, DEMOSTRACI�N, DEDUCCION, I NFERENCIA

 

INTRODUCCI�N

 

 Una f�rmula G es una consecuencia l�gica (CL) de un conjunto de f�rmulas F1,F2,...,Fn, si cuando F1,F2,...,Fn son verdaderas, G tambi�n lo es. A partir de esta definici�n se han establecido dos teoremas:
 

TEOREMA 1: G es una CL de F1,F2,..,Fn si  G es v�lida. Fn .. F2y solo si F1

TEOREMA 2: G es una CL de F1,F2,..,Fn si  (~ G) es inconsistente. Fn .. F2y solo si F1
 

Para determinar s� una f�rmula G sigue de un conjunto de f�rmulas F1,F2..,Fn, se pueden utilizar tablas de verdad. Esto  G es v�lida Fn .. F2ser� verdad F1

 (~ G) es inconsistente. Fn .. F2o F1

 

Otra alternativa es utilizar el enfoque deductivo, el cual considera las f�rmulas involucradas (G y F1,..,Fn) dentro de una teor�a formal, de modo que G pueda ser obtenida a partir de las f�rmulas F�s (de ah� que se diga que G siga de las F�s).

 

En el marco del enfoque deductivo, se dice que una Teor�a Formal (TF) consiste de los siguientes elementos [DOWSING et al] [MENDELSON]:

 

1) Las reglas de sintaxis que definen las f�rmulas que pueden ser tratadas en la TF.

 

2) Un conjunto de f�rmulas llamadas axiomas las cuales se suponen verdaderas en la TF.

 

3) Un conjunto de Reglas de Inferencia que establece bajo que circunstancias una f�rmula se puede obtener (derivar) a partir de otras existentes. La f�rmula derivada ser� una CL de las formulas que le dieron origen.

 

Dentro de cualquier rama de la Ciencia se pueden establecer teor�as formales (o TF�s), cada una de los cuales tendr� sus propios axiomas.

 

Por ejemplo el siguiente es un axioma de la f�sica newtoniana: La aceleraci�n de un cuerpo es proporcional al producto de su masa por la fuerza ejercida sobre �l.

 

 

Este axioma se describe por la f�rmula:

        F = m a        (1)

 

Este es un axioma puesto que lo tomamos como verdadero en el contexto de la mec�nica newtoniana.

 

Es de observar que (1) fu� establecido como verdadero partiendo a su vez de otros enunciados supuestos tambi�n verdaderos, lo cual nos remontar�a a axiomas como los de la geometr�a de Euclides y as� sucesivamente hasta llegar a axiomas relacionados con la existencia misma del ser y la verdad.

 

Esto, si nos se tiene cuidado, podr�a llevarnos por caminos absurdos � no, del dogmatismo.

 

Podr�amos pensar entonces que la ciencia es dogm�tica, sin embargo, la diferencia entre el dogmatismo y la ciencia estriba en que la ciencia  constante investiga la veracidad de los axiomas y, en cuanto se descubre que uno de ellos es falso, se realizan un cambio de paradigma, es decir, un cambio en el conjunto de axiomas y de sus reglas de inferencia.

 

El problema de la deducci�n est� inmerso en todas las ramas de las Ciencias por lo que es necesario conocer no solo lo que significa sino tambi�n los mecanismos de inferencia que se pueden aplicar en ellas.

 

DEMOSTRACI�N

 

 Una demostraci�n de una f�rmula A es una sucesi�n de f�rmulas P1,P2,..,Pn, tales que:
 

    a)  Cada Pi es:

            * Un axioma o,
            * Una f�rmula obtenida a partir de las anteriores.

    

     b) El �ltimo elemento Pn, es A, la f�rmula que se desea demostrar.

 

En la definici�n anterior las f�rmulas que se mencionan en el inciso b) son obtenidas a partir de reglas de inferencia.

 

Como se mencion� en la introducci�n, las reglas de inferencia nos dicen cuales son las condiciones para poder obtener por CL otra f�rmula a partir de las que previamente han sido probadas; de esta manera, las f�rmulas que obtenemos usando reglas de inferencia son consideradas v�lidas.


 

 

 

Entre las Reglas de Inferencia m�s comunes se encuentran Modus Ponens la cual establece que:
 

 B              ||=  A, ||= A
        _________________        (2)

                 ||=  B
 
 

    donde el s�mbolo ||= establece que la f�rmula que sigue es verdadera.

 

La f�rmula (2) tiene una estructura conocida como "secuente". Los secuentes fueron establecidos por Gentzen en lo que se conoce como C�lculo de secuentes, lo que permiti� un gran avance en las t�cnicas de deducci�n.

 

La regla de Modus Ponens com�nmente esta regla se establece como sigue:

     Y son verdaderas, podemos inferir que Y es"S� dos proposiciones X, X  verdadera"
 

REGLAS DE INFERENCIA GENERALES:
 

 

Para la realizaci�n de cualquier demostraci�n:

P1,P2,...,Pn
 

Cada Pi se puede obtener por una de las tres reglas de inferencia generales [TREMBLAY&MANOHAR]:
 

1) REGLAS P: Una f�rmula Pi puede ser introducida en cualquier punto de la demostraci�n.

 

2) REGLA T: Una f�rmula S puede ser introducida en una demostraci�n si S es CL de las f�rmulas precedentes.

 

3) REGLA CP: S� podemos derivar S a partir de R y un conjunto de premisas, entonces  S a partir solamente del conjunto de premisas.podemos derivar R

 

 

 

 

 

 

 

 

 

 

 

HISTORIA DE LOS LENGUAJES

 

 

Creaci�n De Lenguajes

 

 

La creaci�n de lenguajes es un hobby fascinante (o una pasi�n, o incluso una obsesi�n) que consiste en la invenci�n de un sistema ling��stico, para enriquecer la fantas�a de un relato, o para compartir tus pensamientos con amigos �ntimos, o para tu propia diversi�n (entre muchas otras razones). Esta explicaci�n, por supuesto, es totalmente inexpresiva e insuficiente. Mucho m�s se ha dicho sobre este tema, y no voy a repetirlo, ni a inventar m�s sobre �l.

 

Un lenguaje no consiste simplemente de palabras. Un lenguaje debe tener una fonolog�a y una estructura fon�tica, es decir, debe tener un conjunto de sonidos individuales que se combinan para formar palabras; estos sonido no tienen por qu� ser iguales a los del espa�ol, el ingl�s o el hawaiano; y las palabras deben tener una 'm�sica' definida, usualmente expresada por restricciones en cuanto a qu� sonidos pueden ser combinados, y as�. Un lenguaje tambi�n debe tener una gram�tica, que dicta qu� clases de palabras diferentes (sustantivos, verbos, adjetivos, etc.) se colocan juntas para formar ideas.

Un lenguaje realmente bien planeado, para aqu�llos que quieran llegar a tanto detalle, debe tener tambi�n una lengua madre ancestral, una historia, y, por supuesto, �hablantes!

 

Por qu� y c�mo

�Por qu� querr�a alguien querer inventar un lenguaje? �Por qu� no hacer algo m�s �til? �Por qu� perder el tiempo? Hay muchas razones, y muchas formas en las que esto no es una p�rdida de tiempo. Por ejemplo, un compa�ero conlanger, Boudewijn Rempt, escribi� una apolog�a de la creaci�n de lenguajes en t�rminos teol�gicos. En pocas palabras, se trata de subcreaci�n, como dec�a Tolkien: la idea de que estamos hechos para crear (o bien construir, o sub-crear), porque somos creados a imagen de Dios, el Creador supremo. Como yo no creo en Dios, eso no me sirve, pero la idea sigue siendo adaptable a otras cosmovisiones.

Hay muchas otras razones y justificaciones para la construcci�n de lenguajes. Y no es que haga falta justificarlo;en general, la gente creativa deber�a entender, si no por qu� lo hac�s, al menos s� por qu� no es una p�rdida de tiempo. El resto quiz� necesite algo m�s, como las razones que siguen.

Una causa posible para inventar un lenguaje es que seas un escritor de ciencia ficci�n o fantas�a (profesional o amateur), y que est�s tratando de crear algunos nombres de personas y lugares en un escenario imaginario, como otro planeta o un antiguo reino m�gino, o un lugar real como nuestra propia tierra, en el futuro o el pasado. Si sos m�s ambicioso, a lo mejor est�s incluso pensando en traducir algunos versos de poes�a barata, o algunas frases o lugares comunes, o un hechizo, en el lenguaje local.

 

Yo he usado muchas palabras inventadas en cuentos fant�sticos, y algunas me llevaron a la invenci�n de un lenguaje 'completo'. Pero �sta es la peor forma de comenzar un lenguaje completo. Ten�s que tratar de decidir de antemano hasta qu� punto vas a entusiasmarte con esas peque�as palabras primorosamente inventadas. Si tu inter�s se enfoca en nombrar lugares y personas, vas a tener un lenguaje onom�stico. Un lenguaje onom�stico, o de nombres, es la forma m�s simple de lenguaje inventado, y s�lo requiere una regla gramatical, que es el orden de los elementos en los compuestos.

 

Si simplemente est�s traduciendo algunos trozos cortos de texto o di�logo para a�adir realismo a un cuento, pod�s armar una gram�tica simple para las oraciones que est�s escribiendo, inventar el l�xico, y luego parar all�.

 

Por el otro lado, creo que probablemente, si llegaste tan lejos, estar�s interestado en los lenguajes, y podr�as tratar de avanzar un paso m�s, creando palabras y reglas gramaticales por diversi�n, no s�lo para insertarlas en un cuento. (No pretendo insinuar que eso sea 'barato' o algo por el estilo.) Si despu�s de un largo tiempo todav�a segu�s en eso, te vas a encontrar con un lenguaje completo.

 

Por supuesto, no tendr�as que esperar 'terminar' tu lenguaje. Un lenguaje real, natural, es algo que ha sido producido por miles de a�os de evoluci�n y que se cambia a s� mismo todos los d�as. Un lenguaje inventado nunca ser� completo y natural al mismo tiempo (el esperanto es 'completo', en tanto tiene palabras para expresar casi cualquier cosa que un lenguaje natural puede expresar, o puede formarlas por procesos regulares de derivaci�n o analog�a, como un lenguaje natural; pero no es natural, y no pretende serlo, de manera que le falta ese 'gusto salvaje' de los lenguajes naturales, lo cual lo hace probablemente bastante aburrido de aprender).

 

Un lenguaje de cualquier tipo puede crearse de diferentes formas. Se puede empezar desde cero y armar una fonolog�a y una gram�tica completas. En realidad, no se va a inventar, estrictamente hablando, nada que no exista, ya que probablemente cualquier sonido que incluyas en tus palabras se estar� usando en alg�n lenguaje en el mundo, y cualquier regla gramatical ser� similar o igual a alguna que se encuentre en un lenguaje natural. Esto, por supuesto, no debe desalentarte. Pod�s decidir si vas a tomar elementos de lenguajes naturales que conozcas, o tratar de inventar nuevos. Aunque copies muchas cosas de un lenguaje, eso no quiere decir que no seas original o que tu lenguaje vaya a sonar como una copia.

 

Tolkien, el maestro de la creaci�n de lenguajes, tom� muchos elementos de lenguajes naturales que conoc�a y apreciaba, y nadie puede acusarlo de no ser original. El quenya fue modelado a partir del lat�n y el fin�s, con muchas vocales y un sistema de casos complicado. El sindarin, por otro lado, tom� mucha de su fonolog�a del gal�s, incluyendo sus conocidos patrones de lenici�n.

M�s todav�a, pod�s crear un lenguaje basado en otro (inventado o real). Solamente ten�s que crear reglas de cambio de sonido, y saber un poco de c�mo los lenguajes cambian con el tiempo. Un lenguaje derivado de otro que conoc�s es probablemente la forma m�s sencilla de comenzar, ya que no ten�s que inventar el l�xico, y pod�s dejar la gram�tica como est� (aunque probablemente quieras o tengas que hacerle alg�n cambio, porque as� es como funcionan los lenguajes reales). Por ejemplo, imagin�te el espa�ol en el a�o 3000. Establec� algunos cambios de sonido; por ejemplo, digamos que los diptongos se simplifican y las consonantes fricativas en finales de s�laba desaparecen. A�adimos algunos cambios a la gram�tica y podemos transformar 'Voy a la fiesta' en 'Al fieta v�'. Suena diferente, �no?

 

Otra cosa que pod�s hacer es adaptar palabras de un lenguaje a otro, y quiz� viceversa, creando un pidgin, una mezcla de ambos. Los pidgins que existen en nuestro planeta tienen algunas interesantes propiedades en com�n, y pueden ser m�s f�ciles de crear para el principiante.

Palabras reservadas y estructuras

Las palabras que son identificadores que permiten al compilador interpretar el programa y no se pueden utilizar con otros fines, suelen referirse con el t�rmino Palabras reservadas. El compilador interpreta igual may�sculas o min�sculas, y por tanto se pueden usar indistintamente. Esta libertad de elecci�n debe utilizarse para aumentar la legibilidad de los programas. Por ejemplo, podemos empezar siempre con may�scula las palabras reservadas y as� ser� m�s f�cil detectar las estructuras del programa. Tambi�n suele escribirse todo con may�sculas el nombre de las constantes cuyo valor no puede alterarse durante el programa. La elecci�n de un estilo u otro de escritura suele variar pero lo importante es que sea uniforme a lo largo del programa.

Vocabulario Palabras Reservadas

       La ventaja del m�todo de �palabras reservadas� es que simplifica el an�lisis lexicogr�icos a realizar por el compilador.

      La desventaja es que una lista larga de palabras que normalmente podr�an elegirse como identificadores en un programa son utilizadas ya.

 

 

 

Lenguajes de programaci�n

 

Los lenguajes de programaci�n son herramientas que nos permiten crear programas y software. Entre ellos tenemos Delphi, Visual Basic, Pascal, Java, etc..

 

Una computadora funciona bajo control de un programa el cual debe estar almacenado en la unidad de memoria; tales como el disco duro.

 

Los lenguajes de programaci�n de una computadora en particular se conoce como c�digo de m�quinas o lenguaje de m�quinas.

 

Estos lenguajes codificados en una computadora espec�fica no podr�n ser ejecutados en otra computadora diferente.

 

Para que estos programas funcionen para diferentes computadoras hay que realizar una versi�n para cada una de ellas, lo que implica el aumento del costo de desarrollo.

 

Por otra parte, los lenguajes de programaci�n en c�digo de m�quina son verdaderamente dif�ciles de entender para una persona, ya que est�n compuestos de c�digos num�ricos sin sentido nemot�cnico.

 

Los lenguajes de programaci�n facilitan la tarea de programaci�n, ya que disponen de formas adecuadas que permiten ser leidas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.

 

Los lenguajes de programaci�n representan en forma simb�lica y en manera de un texto los c�digos que podr�n ser leidos por una persona.

 

Los lenguajes de programaci�n son independientes de las computadoras a utilizar.

Existen estrategias que permiten ejecutar en una computadora un programa realizado en un lenguaje de programaci�n simb�lico. Los procesadores del lenguaje son los programas que permiten el tratamiento de la informaci�n en forma de texto, representada en los lenguajes de programaci�n simb�licos.

 

Hay lenguajes de programaci�n que utilizan compilador.

La ejecuci�n de un programa con compilador requiere de dos etapas:

1) Traducir el programa simb�lico a c�digo m�quina

2) Ejecuci�n y procesamiento de los datos.

 

Otros lenguajes de programaci�n utilizan un programa int�rprete o traductor, el cual analiza directamente la descripci�n simb�lica del programa fuente y realiza las instrucciones dadas.

 

El int

rprete en los lenguajes de programaci�n simula una m�quina virtual, donde el lenguaje de m�quina es similar al lenguaje fuente.

 

La ventaja del proceso interprete es que no necesita de dos fases para ejecutar el programa, sin embargo su inconveniente es que la velocidad de ejecuci�n es m�s lenta ya que debe analizar e interpretar las instrucciones contenidas en el programa fuente.

 

Historia de la Informatica

 

La historia de la informatica, a lo largo de la humanidad, el hombre en su curiosidad, ha creado ciencias que le permiten conocer y estudiar fenomenos acontecidos, esta curiosidad lo llevo a crear las computadoras u ordenadores, y a partir de ellos surge la implementaci�n de la informatica.

 

La historia de la informatica, en sus comienzos, se utilizaba para simplificar las rutinas tediosas y repetitivas de los operadores en el area administrativa.Se notaron grandes avances en el rendimiento y productividad, lo que a su vez simplico los costes al automatizar los procesos.

 

A lo largo de la historia de la informatica, se ha demostrado su utilidad en el manejo de informaci�n rapida, precisa y fiable. Al tener estas caracteristicas, la informatica facilita, la toma de desiciones dando informaci�n veraz y oportuna a quien la necesite.

 

En la historia de la informatica, este termino se conocia con el termino informatique, debido a que viene de la contraccion de dos palabras informaci�n Automatica.

 

Hoy tambien se le conoce como manejo de sistemas de informaci�n, procesamiento de datos o ciencia de la computacion.

 

Introducci�n

 

La computadora, a diferencia de otras herramientas que en general apoyan el esfuerzo f�sico de los humanos, fue inventada para facilitar el trabajo intelectual. Si el hombre tiene alg�n problema, por ejemplo "sumar dos y dos", el dise�ador define el algoritmo que resuelve el problema, el programador lo codifica en un lenguaje de programaci�n, el cual la computadora es capaz de "entender", luego la computadora ejecuta el algoritmo expresado como programa en el lenguaje de programaci�n en cuesti�n, y listo. La m�quina le entrega al hombre la respuesta "4", sin que �ste tuviera que esforzar sus neuronas.

 

�Cu�l es el papel del lenguaje de programaci�n en este proceso? Es muy importante, el lenguaje de programaci�n es el medio de comunicaci�n entre el hombre y la m�quina. El modelo general de las computadoras, desde que fue esbozado por von Neumann, no ha cambiado mucho, mientras que la invenci�n humana para proponerse nuevos problemas a resolver, usando la computadora, parece no tener l�mites.

 

En consecuencia, los lenguajes de programaci�n tienen que adaptarse a �stas crecientes necesidades y aumentar la expresividad para poder resolver problemas muy diversos y cada vez m�s complejos. Adem�s, tienen que ofrecer cierta eficiencia en la ejecuci�n. Es un logro dif�cil de alcanzar y por lo tanto, se requiere una b�squeda constante de nuevos lenguajes para ello.

 

Aqu� se expone un breve panorama de los m�s importantes tipos de lenguajes de

programaci�n.

 

Lenguajes Imperativos. En este tipo de lenguajes, cuyo origen est� ligado a la propia arquitectura de von Neumann, la arquitectura consta de una secuencia de celdas, llamadas memoria, en la cual se pueden guardar en forma codificada, lo mismo datos que instrucciones; y de un procesador, el cual es capaz de ejecutar de manera secuencial una serie de operaciones, principalmente aritm�ticas y booleanas, llamadas comandos. En general, un lenguaje imperativo ofrece al programador conceptos que se traducen de forma natural al modelo de la m�quina.

 

Los lenguajes imperativos m�s destacados de la historia han sido: FORTRAN, Algol, Pascal, C, Modula-2, Ada.

Lenguajes Funcionales.  Una funci�n convierte ciertos datos en resultados. Si supi�ramos c�mo evaluar una funci�n, usando la computadora, podr�amos resolver autom�ticamente muchos problemas. As� pensaron algunos matem�ticos, que no le ten�an miedo a la m�quina, e inventaron los lenguajes de programaci�n funcionales.

 

Aprovecharon la posibilidad que tienen las funciones para manipular datos simb�licos, y no solamente num�ricos, y la propiedad de las funciones que les permite componer, creando de esta manera, la oportunidad para resolver problemas complejos a partir de las soluciones a otros m�s sencillos. Tambi�n se incluy� la posibilidad de definir funciones recursivamente.

 

El lenguaje funcional m�s antiguo, y seguramente el m�s popular hasta la fecha, es LISP.  En la d�cada de los 80 hubo una nueva ola de inter�s por los lenguajes funcionales, a�adiendo la tipificaci�n y algunos conceptos modernos de modularizaci�n y polimorfismo, como es el caso del lenguaje ML.

 

Lenguajes L�gicos.  El conocimiento b�sico de las matem�ticas se puede representar en la l�gica en forma de axiomas, a los cuales se a�aden reglas formales para deducir cosas verdaderas (teoremas) a partir de los axiomas. Algunos matem�ticos, a finales de siglo XX y principios de XXI, encontraron la manera de automatizar computacionalment� el razonamiento l�gico que permiti� que diera origen a los lenguajes l�gicos.

 

Tambi�n se conoce a estos lenguajes, y a los funcionales, como lenguajes declarativos, porque el programador, parar solucionar un problema, todo lo que tiene que hacer es describirlo v�a axiomas y reglas de deducci�n en el caso de la programaci�n l�gica y v�a funciones en el caso de la programaci�n funcional.

En los lenguajes l�gicos se utiliza el formalismo de la l�gica para representar el conocimiento sobre un problema y para hacer preguntas que, si se demuestra que se pueden deducir a partir del conocimiento dado en forma de axiomas y de las reglas de deducci�n estipuladas, se vuelven teoremas. As� se encuentran soluciones a problemas formulados como preguntas.

 

El PROLOG es el primer lenguaje l�gico y el m�s conocido y utilizado. Tambi�n en este caso, las aplicaciones a la Inteligencia Artificial mantienen el lenguaje vivo y �til.

Lenguajes Orientados a Objetos.  A mediados de los a�os 60 se empez� a vislumbrar el uso de las computadoras para la simulaci�n de problemas del mundo real. Pero el mundo real est� lleno de objetos.

 

As� es que a dos noruegos, Dahl y Nygaard, se les ocurri� el concepto de objeto y sus colecciones, llamadas clases de objetos, que permitieron introducir abstracciones de datos a los lenguajes de programaci�n.  A ellos tambi�n les debemos el concepto de polimorfismo introducido v�a procedimientos virtuales.

Todos estos conceptos fueron presentados en el lenguaje Simula 67, desde el a�o 1967. En los a�os 80 hubo una verdadera ola de propuestas de lenguajes de programaci�n con conceptos de objetos encabezada por Smalltalk, C++, Modula-3, Ada 95 y terminando con Java.

 

Lenguajes Concurrentes, Paralelos y Distribuidos.  La necesidad de ofrecer concurrencia en el acceso a los recursos computacionales se remonta a los primeros sistemas operativos.  Por ejemplo, mientras un programa realizaba una operaci�n de entrada o salida otro podr�a gozar del tiempo del procesador para sumar dos n�meros.

 

Cuando los procesadores cambiaron de tama�o y de precio, se abri� la posibilidad de contar con varios procesadores en una m�quina y ofrecer el procesamiento en paralelo, es decir, procesar varios programas al mismo tiempo. Esto dio el impulso a la creaci�n de lenguajes que permit�an expresar el paralelismo. Finalmente, llegaron las redes de computadoras, que tambi�n ofrecen la posibilidad de ejecuci�n en paralelo, pero con procesadores distantes, lo cual conocemos como la programaci�n distribuida.

 

Hist�ricamente encontramos en la literatura soluciones conceptuales y mecanismos tales como: sem�foros, regiones cr�ticas, monitores, env�o de mensajes (CSP), llamadas a procedimientos remotos (RPC), que posteriormente se incluyeron como partes de los lenguajes de programaci�n en Concurrent Pascal, Modula, Ada, OCCAM, y �ltimamente en Java.

 

El dise�o de un lenguaje de programaci�n es siempre un compromiso, en el cual un buen dise�ador tiene que tomar en cuenta: el nivel de abstracciones deseado, la arquitectura del hardware, y el rango propuesto de las aplicaciones.

 

Si queremos construir sistemas a niveles cada vez m�s abstractos, con hardware cada vez m�s complicado y con aplicaciones cada vez m�s ambiciosas, el trabajo para los dise�adores de lenguajes existe para un buen rato.

 

Como se pudo apreciar en el texto anterior, los lenguajes se dividen en diferentes tipos pero,  en este trabajo no se analiza la evoluci�n de cada tipo, sino se tomo una muestra de los diferentes lenguajes que fueron surgiendo en el paso de la historia.

 

 

Antecedentes

 

Los primeros lenguajes de programaci�n surgieron de la idea de Charles Babagge a mediados del siglo XIX.  Consist�a en lo que el denominaba la maquina anal�tica, pero que por motivos t�cnicos no pudo construirse hasta mediados del siglo XX.

 

Con el colaboro Ada Lovelace, la cual es considerada como la primera programadora de la historia, pues realizo programas para aquella supuesta maquina de Babagge, en tarjetas perforadas. Como la maquina no llego nunca a construirse, los programas de Ada, l�gicamente, tampoco llegaron a ejecutarse, pero si suponen un punto de partida de la programaci�n.

 

En 1936, Turing y Post introdujeron un formalismo de manipulaci�n de s�mbolos (la denominada m�quina de Turing) con el que se puede realizar cualquier c�mputo que hasta ahora podemos imaginar.

 

 Esta fue una v�a de comunicaci�n entre los problemas formales de la computaci�n y de la matem�tica. La uni�n permiti� demostrar que no existe ninguna m�quina de Turing que pueda reconocer si una sentencia es o no un teorema de un sistema l�gico formal; pero tambi�n permiti� demostrar que si un c�lculo puede explicitarse sin ambig�edad en lenguaje natural, con ayuda de s�mbolos matem�ticos, es siempre posible programar un computadora digital capaz de realizar el c�lculo, siempre que la capacidad de almacenamiento de informaci�n sea la adecuada.

 

 Desde el punto de vista de la ingenier�a, los progresos en lenguajes de programaci�n han sido paralelos a los dise�os de las nuevas computadoras. Babbage ya escribi� programas para sus m�quinas, pero los desarrollos importantes tuvieron lugar, igual que en las computadoras, alrededor de la segunda guerra mundial.

 

 Cuando surgi� la primera computadora, el famoso Eniac, su programaci�n se basaba en componentes f�sicos, o sea, que se programaba, cambiando directamente el Hardware de la maquina, lo que se hacia era cambiar cables de sitio para conseguir as� la programaci�n binaria.

 

 Los "Lenguajes Maquina" y los "Lenguajes Ensambladores" (primera y segunda generaci�n)  son dependientes de la maquina. Cada tipo de maquina, tal como VAX de digital, tiene su propio lenguaje maquina distinto y su lenguaje ensamblador asociado. El lenguaje ensamblador es simplemente una representaci�n simb�lica del lenguaje maquina asociado, lo cual permite una programaci�n menos tediosa que con el anterior. Sin embargo, es necesario un conocimiento de la arquitectura mec�nica subyacente para realizar una programaci�n efectiva en cualquiera de estos niveles lenguajes.

 

 Los lenguajes de alto nivel son normalmente f�ciles de aprender porque est�n formados por elementos de lenguajes naturales, como el ingl�s.

A continuaci�n se muestra la evoluci�n de los distintos lenguajes en base a las influencias  que recibieron:

A�o

 Influencias y Nueva Tecnolog�a

 

1951-55

 Hardware: Computadoras de tubos de vac�o; memorias de l�nea aplazada de mercurio.

 M�todos: Lenguajes ensamblador; conceptos base: subprogramas, estructuras de datos.

 Lenguajes: Uso experimental de compiladores de expresi�n.

 

1956-60

 Hardware: Almacenamiento en cinta magn�tica; memorias de n�cleo; circuitos de transistores.

 M�todos: Tecnolog�a de compiladores inicial; gram�ticas BNF; optimizaci�n de c�digo; int�rpretes; m�todos de almacenamiento din�micos y procesamiento de listas.

 Lenguajes: FORTRAN, ALGOL 58, ALGOL 60, COBOL, LISP.

 

1961-65

 Hardware: Familias de arquitecturas compatibles, almacenamiento en discos magn�ticos

 M�todos: Sistemas operativos de multiprogramaci�n, compiladores de sintaxis-dirigida.

 Lenguajes: COBOL-61, ALGOL 60 (revisada), SNOBOL, JOVIAL, notaci�n APL

 

 

A�o

 Influencias y Nueva Tecnolog�a

 

1966-70

 Hardware: Aumento de tama�o y velocidad y reducci�n de los costes; mini computadoras, microprogramaci�n; circuitos integrados.

 M�todos:  Sistemas interactivos y tiempos-compartidos; compiladores optimizados; sistemas de escritura traductores.

 Lenguajes: APL, FORTRAN 66, COBOL 65, ALGOL 68, SNOBOL 4, BASIC, PL/I, SIMULA 67, ALGOL-W

 

1971-75

 Hardware: Microcomputadores; Edad de mini computadoras; sistemas de almacenamiento peque�os; declive de las memorias de n�cleo y crecimiento de memorias de semiconductores

 M�todos:  Verificaci�n de programas; programaci�n estructurada; inicio del crecimiento de ingenier�a de software como disciplina de estudio

 Lenguajes: Pascal, COBOL 74, PL/I (standar), C, Scheme, Prolog

 

1976-80

 Hardware: Microcomputadores de calidad comercial, sistemas de gran almacenamiento; computaci�n distribuida.

 M�todos: Abstracci�n de datos; sem�nticas formales; t�cnicas de programaci�n en tiempo real, concurrencia y fijos.

 Lenguajes: Smalltalk, Ada, FORTRAN 77, ML.

 

 

A�o

 Influencias y Nueva Tecnolog�a

 

1981-85

 Hardware: Computadores personales; primeras estaciones de trabajo; juegos de v�deo; redes de �rea local; Arpanet.

 M�todos: Programaci�n orientada a objetos; entornos interactivos; editores de sintaxis dirigida.

 Lenguajes: Turbo Pascal, Smalltalk-80, crecimiento de Prolog, Ada 83, Postscript.

 

1986-90

 Hardware: Edad de microcomputadores; crecimiento de estaciones de trabajo de ingenier�as; arquitectura RISC; redes globales; Internet.

 M�todos: computaci�n cliente/servidor.

 Lenguajes: FORTRAN 90, C++, SML (ML Standar).

 

1991-95

 Hardware: Estaciones de trabajo y microcomputadores mucho m�s econ�micos;  arquitectura paralelas  masivas; voz, v�deo, fax, multimedia.

 M�todos: Sistemas abiertos; entorno de ventanas; Infraestructura de Informaci�n Nacional ("autopistas de la informaci�n").

 Lenguajes: Ada 95, lenguajes de procesos (TCL, PERL).

 

 

 


Home
Archive index
1