Concepts inComplexity and expressive power of logic programming
Expressive power
In computer science, the expressive power or expressiveness of a language is the breadth of ideas that can be represented and communicated in that language. The more expressive a language is, the greater the variety and quantity of ideas it can be used to represent. For example, the Web Ontology Language expression language profile (OWL2 EL) lacks ideas (such as negation) which can be expressed in OWL2 RL (rule language). OWL2 EL may therefore be said to have less expressive power than OWL2 RL.
more from Wikipedia
Logic programming
Logic programming is, in its broadest sense, the use of mathematical logic for computer programming. In this view of logic programming, which can be traced at least as far back as Alonzo Church [1932 1932], logical inference can be used in programming. This view was further developed by John McCarthy's [1958 1958] advice-taker proposal to use forward chaining under the control of logical propositions.
more from Wikipedia
Functional predicate
In formal logic and related branches of mathematics, a functional predicate, or function symbol, is a logical symbol that may be applied to an object term to produce another object term. Functional predicates are also sometimes called mappings, but that term has other meanings as well. In a model, a function symbol will be modelled by a function.
more from Wikipedia
Constraint logic programming
Constraint logic programming is a form of constraint programming, in which logic programming is extended to include concepts from constraint satisfaction. A constraint logic program is a logic program that contains constraints in the body of clauses. An example of a clause including a constraint is . In this clause, is a constraint;,, and are literals as in regular logic programming. This clause states one condition under which the statement holds: is greater than zero and both and are true.
more from Wikipedia
Horn clause
In mathematical logic, a Horn clause is a clause with at most one positive literal. They are named after the logician Alfred Horn, who first pointed out the significance of such clauses in 1951. Horn clauses play a basic role in logic programming and are important for constructive logic. A Horn clause with exactly one positive literal is a definite clause; in universal algebra definite clauses appear as quasiidentities.
more from Wikipedia
In logic and mathematics, a two-place logical connective or, is a logical disjunction, also known as inclusive disjunction or alternation, that results in true whenever one or more of its operands are true. E.g. in this context, "A or B" is true if A is true, or if B is true, or if both A and B are true. In grammar, or is a coordinating conjunction. In ordinary language, i.e.
more from Wikipedia