Articulo de referencia

CicloL

CycL, en informática e inteligencia artificial , es un lenguaje de ontologías utilizado por el proyecto de inteligencia artificial Cyc de Douglas Lenat . Ramanathan V. Guha dese...

CycL, en informática e inteligencia artificial , es un lenguaje de ontologías utilizado por el proyecto de inteligencia artificial Cyc de Douglas Lenat . Ramanathan V. Guha desempeñó un papel fundamental en el diseño de las primeras versiones del lenguaje. Existe una variante cercana de CycL llamada MELD . [ 1 ]

La versión original de CycL era un lenguaje de marcos , pero la versión moderna no lo es. En cambio, es un lenguaje declarativo basado en la lógica clásica de primer orden , con extensiones para operadores de lógica modal y cuantificación de lógica de orden superior .

CycL se utiliza para representar el conocimiento almacenado en la base de conocimiento Cyc, disponible en Cycorp . El código fuente escrito en CycL y publicado con el sistema OpenCyc tiene licencia de software libre y de código abierto , para aumentar su utilidad en el soporte de la web semántica .

Ideas básicas

Las ideas básicas de CycL incluyen:

  • Denominación de las constantes utilizadas para referirse a la información de los conceptos representados.
  • Agrupar las constantes en una jerarquía de generalización-especialización, generalmente llamada categorización.
  • Enunciar reglas generales que permitan inferir conceptos.
  • La veracidad o falsedad de una oración en CycL depende del contexto; estos contextos están representados en CycL como microteorías.

Constantes

En Cyc, los nombres de los conceptos se conocen como constantes . Las constantes comienzan con "#$" y distinguen entre mayúsculas y minúsculas. Existen constantes para:

  • Elementos individuales conocidos como individuos , como #$BillClinton o #$France.
  • Colecciones , como #$Tree-ThePlant (que contiene todos los árboles) o #$EquivalenceRelation (que contiene todas las relaciones de equivalencia ). Un miembro de una colección se denomina instancia de esa colección.
  • Las funciones de verdad se pueden aplicar a uno o más conceptos y devuelven verdadero o falso. Por ejemplo, #$siblings representa la relación de hermanos, siendo verdadero si los dos argumentos son hermanos. Por convención, las constantes de las funciones de verdad comienzan con una letra minúscula. Las funciones de verdad se pueden dividir en conectores lógicos (como #$and, #$or, #$not, #$implies), cuantificadores (#$ forAll , #$ thereExists , etc.) y predicados.
  • Las funciones generan nuevos términos a partir de otros dados. Por ejemplo, `#$FruitFn`, al recibir un argumento que describe un tipo (o colección) de plantas, devuelve la colección de sus frutos. Por convención, las constantes de función comienzan con una letra mayúscula y terminan con la cadena "Fn".

Especialización y generalización

Los predicados más importantes son #$ isa y #$ genls . El primero (#$isa) describe que un elemento es una instancia de alguna colección (es decir, especialización), el segundo (#$ genls ) que una colección es una subcolección de otra (es decir, generalización). Los hechos sobre los conceptos se afirman mediante ciertas oraciones de CycL . Los predicados se escriben antes de sus argumentos, entre paréntesis:

Por ejemplo:

(#$isa #$BillClinton #$PresidenteDeLosEstadosUnidos) \;

"Bill Clinton pertenece a la colección de presidentes de Estados Unidos" y

(#$genls #$Arbol-LaPlanta #$Planta) \;

"Todos los árboles son plantas".

(#$capitalCity #$France #$París) \;

"París es la capital de Francia."

Normas

Las oraciones también pueden contener variables, cadenas que comienzan con "?". Una regla importante que se afirma sobre el predicado #$isa dice:

(#$implica (#$y (#$isa ?OBJ ?SUBSET) (#$genls ?SUBSET ?SUPERSET)) (#$isa ?OBJ ?SUPERSET))

con la interpretación "si OBJ es una instancia de la colección SUBSET y SUBSET es una subcolección de SUPERSET, entonces OBJ es una instancia de la colección SUPERSET".

Otro ejemplo más complejo, que expresa una regla sobre un grupo o categoría en lugar de sobre un individuo en particular, es:

(#$relationAllExists #$ biologicalMother #$ChordataPhylum #$FemaleAnimal)

lo que significa que para cada instancia de la colección #$ChordataPhylum (es decir, para cada cordado ), existe un animal hembra (instancia de #$FemaleAnimal) que es su madre (descrita por el predicado #$ biologicalMother ).

(O, dicho de forma más sencilla, si un animal tiene columna vertebral, entonces existirá un vínculo que exprese el concepto de su "madre biológica". Aquello que "completa el espacio en blanco" para la madre biológica también debe poder clasificarse como un animal hembra).

Microteorías

La base de conocimiento se divide en microteorías (Mt), conjuntos de conceptos y hechos que generalmente pertenecen a un ámbito de conocimiento específico. A diferencia de la base de conocimiento en su conjunto, cada microteoría debe estar libre de contradicciones. Cada microteoría tiene un nombre que es una constante regular; por convención, las constantes de las microteorías contienen la cadena "Mt". Un ejemplo es #$MathMt, la microteoría que contiene conocimiento matemático. Las microteorías pueden heredar entre sí y se organizan jerárquicamente.

Una especialización de #$MathMt es #$GeometryGMt, la microteoría sobre geometría.

Véase también

Referencias

  1. Guha, RV ; Lenat, Douglas B. (Otoño de 1990). "Cyc: Un informe de mitad de período" . AI Magazine . 11 (3): 32– 59. doi : 10.1609/aimag.v11i3.842 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=CycL&oldid=1339803994 "