Declarative programming languages:
We notice that declarative programming languages can have some better compensation over procedural ones. Actually, it is often said that a Java program written into to do the same as a Prolog program regularly takes about 10 times the number of lines of code. There many "AI" researchers try out an idea in Prolog just before implementing it more fully in other languages, means Prolog can be used to perform searches more easily (we see later this).
A recognized declarative language that is used a lot by "AI" researchers is Prolog, that is based on first-order logic. Further more for any declarative programming language, the two most important phases are: how information is represented, so the underlying search routine upon this language is based.
Robert Kowalski give this in a most succinct way:
"'Algorithm = Logic + Control'".