
related topics 
{math, number, function} 
{theory, work, human} 
{specie, animal, plant} 
{language, word, form} 
{system, computer, user} 
{work, book, publish} 

CycL in computer science and artificial intelligence is an ontology language used by Doug Lenat's Cyc artificial intelligence project. Ramanathan V. Guha was instrumental in the design of the language early versions of the language. There is a close variant of CycL known as MELD.
The original version of CycL was a frame language, but the modern version is not. Rather, it is a declarative language based on classical firstorder logic, with extensions for modal operators and higher order quantification.
CycL is used to represent the knowledge stored in the Cyc Knowledge Base, available from Cycorp. The source code written in CycL released with the OpenCyc system is licensed as open source, to increase its usefulness in supporting the semantic web.
Contents
Basic Ideas
CycL has some basic ideas:
 Naming the constants used to refer to information for represented concepts.
 Grouping the constants together in a generalization/specialization hierarchy (usually called categorization).
 Stating general rules that support inference about the concepts.
 The truth or falsity of a CycL sentence is contextrelative; these contexts are represented in CycL as Microtheories.
Constants
The concept names in Cyc are known as constants. Constants start with "#$" and are casesensitive. There are constants for:
 Individual items known as individuals, such as #$BillClinton or #$France.
 Collections, such as #$TreeThePlant (containing all trees) or #$EquivalenceRelation (containing all equivalence relations). A member of a collection is called an instance of that collection.
 Truth Functions which can be applied to one or more other concepts and return either true or false. For example #$siblings is the sibling relationship, true if the two arguments are siblings. By convention, truth function constants start with a lowercase letter. Truth functions may be broken down into logical connectives (such as #$and, #$or, #$not, #$implies), quantifiers (#$forAll, #$thereExists, etc.) and predicates.
 Functions, which produce new terms from given ones. For example, #$FruitFn, when provided with an argument describing a type (or collection) of plants, will return the collection of its fruits. By convention, function constants start with an uppercase letter and end with the string "Fn".
Full article ▸


related documents 
Distinct 
Discrete mathematics 
List of Fourierrelated transforms 
Z notation 
Linearity of integration 
Euler's theorem 
Hilbert's Nullstellensatz 
Contextfree language 
Product of group subsets 
Rectangle 
Surjective function 
Online algorithm 
Constant folding 
Group object 
The Third Manifesto 
De BruijnNewman constant 
Hurwitz polynomial 
Precondition 
Sigmoid function 
Derivative of a constant 
RC5 
Direct sum of groups 
Conjugate closure 
Dense set 
Essential singularity 
Greibach normal form 
Data element 
Recursive language 
Location parameter 
Landau's function 
