# How Our Prolog Assignment Help Can Explain Prolog?

Prolog shares many similarities with SQL in that it is a declarative language, so you describe the problem rather than describing the solution. So for example a family tree, a person is a sister of someone if they are female, and they are not the same person as the someone we are checking, and if they have the same parents, a niece is a female whose parent is either the brother or the sister of the other person. We can define a whole series of rule like this, to cover cousins, aunts and uncles, grandparents and grandchildren and then we can check how someone is related to other people.

So you might write something like the following

male(william).
male(harry).
female(diana).
male(charles).

parent(charles,william).
parent(diana,william).
parent(charles,harry).
parent(diana,harry).

Those are the facts, then the rules would include

father(x,y) :- male(x), parent(x,y).
mother(x,y) :- female(x), parent(x,y).
brother(x,y) :- male(x), parent(Someone,x), parent(Someone,y), x \+ y.

So a father is a parent who is male, and a brother is someone who is male who has the same parents. Then we can query the facts with

?- brother(william, harry).
Yes

If we added more we could query all the brothers, or find cousins, etc. Prolog was used in expert systems, and they could not only solve a problem but explain it is as well, so if you asked is william a cousin of john, it could say yes but also explain that johns parent is fred who is a brother of charles. (Sorry not too familiar with the ins and outs of the royal family lineage, so those names are not correct).

Prolog is not used a lot outside of academia, but it was used for Watson which was IBMs program that won Jeopardy, as it deals well with multiple disparate data sets.

If you are looking at using Prolog, either standalone or embedded inside another program we can help you, including generating the facts from a scraped data source (which is how Watson was trained, rather than hand coding everything). Due  to the lack of use of Prolog in a commercial environment, the number of programmers who are able to help is lower and so the costs are proportionately higher than some of the other programming languages we support.

Our experts are located around the world, but since Prolog originated in France there are more programmers in Europe than elsewhere. Our customer service desk is open 24/7 but for quoting on a new assignment, the best time is between 8AM-11PM (PST), although it may still be available for a an hour or so each side.

You can rely on Programming Assignment Helper if you need some Prolog homework help.